Skip to content
This repository was archived by the owner on Jan 24, 2022. It is now read-only.

Release v0.7.0

Compare
Choose a tag to compare
@jonathanpallant jonathanpallant released this 25 Nov 09:47
· 14 commits to master since this release
4998bf6

New Features

  • Add support for CMSE secure gateway veneers (#297).
  • Allow using the crate with custom target JSON specs (#304).
  • Export Exception enum for other crates to use (#224).

Fixes

  • Various fixes to the linker script (#265, #286, #287, #323).
  • Use the correct ABI for the main symbol (#278).
  • Add barriers after FPU enabling (#279).
  • (ARMv6-M) Set LR value to a known value on reset (#293).
  • Added CFI and size info to external assembly subroutines (HardFaultTrampoline and FpuTrampoline) (#294).
  • Allow building the crate for macOS targets (#306, #310).
  • Perform RAM initialization in assembly, to avoid potential UB in Rust (#301).
  • Perform volatile reads of ICSR in DefaultHandler (#315).

Breaking Changes

  • Make ExceptionFrames fields private, adding setters and getters instead (#239).
  • Only allow certain attributes on handlers, and apply them to the trampoline too (#228).
  • Make it unsafe to define exception handlers for NMIs (#289).
  • Check that exceptions exist on the target chip when registering a handler for them (#308).

Other

  • Change macros crate to use same version number as cortex-m-rt crate (#245).
  • Discourage use of pre_init in documentation (#248).
  • Backport: Use links in Cargo.toml to prevent multiple linking of cortex-m-rt (#276).