This repository was archived by the owner on Jan 24, 2022. It is now read-only.
Releases: rust-embedded/cortex-m-rt
Releases · rust-embedded/cortex-m-rt
Release 0.7.1
Fixes
- Fix stack unwinding past
Resetfunction (#337)
Release v0.7.0
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
mainsymbol (#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 (
HardFaultTrampolineandFpuTrampoline) (#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
Backport Release v0.6.15
Backport Release v0.6.14
Backport Release v0.6.13
Fixed
- (ARMv6-M) Set LR value to a known value on reset (as the ARM spec requires)
- Added CFI and size info to external assembly subroutines (
HardFaultTrampoline)
Backport Release v0.6.12
Fixed
- Fixed lint warnings getting emitted on macro-generated code.
Release v0.6.11
Changed
- Macros now generate a second trampoline function instead of randomizing the function's symbol name. This makes the build deterministic.
- [breaking-change]
static mutresources no longer have'staticlifetime except in the#[entry]function (this is a soundness fix; see #212).
Release v0.6.10
Fixed
- Linker template now takes and discard
*(.ARM.exidx)
Release v0.6.9
Added
- Input
.uninit.*sections are now collected into an output.uninitsection. Uninitialized static variables are meant to be placed in these sections. The output.uninitsection is not initialized by the runtime.
Release v0.6.8
Fixed
- Correct stack-pointer is selected on
HardFault - Linker template now takes and discard
*(.ARM.extab.*) - Misc. documentation fixes
Changed
- Architecture added:
armv8-m.main - Cortex-M team added to
authors - The nightly build is allowed to fail in CI