aboutsummaryrefslogtreecommitdiff
path: root/cortex-m-rt/examples/state.rs
diff options
context:
space:
mode:
authorGravatar bors[bot] <bors[bot]@users.noreply.github.com> 2018-08-25 18:57:46 +0000
committerGravatar bors[bot] <bors[bot]@users.noreply.github.com> 2018-08-25 18:57:46 +0000
commite790d9b8d9785502e05d70b1ddf0ed024cbf71d5 (patch)
tree40335a6b6b7000f7135a8e1328c642771c33306a /cortex-m-rt/examples/state.rs
parent8c4a9d27361de5f461e945c76f42f2aabf8af4ef (diff)
parent4c7169fa65f0c34c5461379e10f38f32c723507b (diff)
downloadcortex-m-e790d9b8d9785502e05d70b1ddf0ed024cbf71d5.tar.gz
cortex-m-e790d9b8d9785502e05d70b1ddf0ed024cbf71d5.tar.zst
cortex-m-e790d9b8d9785502e05d70b1ddf0ed024cbf71d5.zip
Merge #96
96: reduce the size of default handlers r=adamgreig a=japaric this commit replaces the two default handler (DefaultDefaultHandler and DefaultUserHardFault) by a single handler named `EndlessLoop`. This results in one less symbol being generated. Also this new handler uses `compiler_fence` to avoid the "infinite loops w/o side effects are undef values" bug in LLVM. `compiler_fence` is guaranteed to generate no code so this reduces the size of the handler (when compiler in release). --- As far as I could test this new handler doesn't generate abort instructions when optimized so it seems like a safe replacement. If we are feeling paranoid then once #95 we could implement EndlessLoop in assembly. r? @rust-embedded/cortex-m (anyone) Co-authored-by: Jorge Aparicio <jorge@japaric.io>
Diffstat (limited to 'cortex-m-rt/examples/state.rs')
0 files changed, 0 insertions, 0 deletions