diff options
author | 2017-06-05 14:19:02 -0500 | |
---|---|---|
committer | 2017-06-05 14:19:02 -0500 | |
commit | 2e534ea4d85f321a4175a58fc77455380360ca9d (patch) | |
tree | a8c09fcde90796c6e9a7bb5ae9257a6f33323d12 /src/asm.rs | |
parent | c4d897ec4bb47bc8f2768d2b33864ddf4c251da2 (diff) | |
download | cortex-m-2e534ea4d85f321a4175a58fc77455380360ca9d.tar.gz cortex-m-2e534ea4d85f321a4175a58fc77455380360ca9d.tar.zst cortex-m-2e534ea4d85f321a4175a58fc77455380360ca9d.zip |
inline all the functions in the asm module
Diffstat (limited to 'src/asm.rs')
-rw-r--r-- | src/asm.rs | 6 |
1 files changed, 6 insertions, 0 deletions
@@ -18,6 +18,7 @@ pub fn bkpt() { } /// A no-operation. Useful to prevent delay loops from being optimized away. +#[inline(always)] pub fn nop() { unsafe { asm!("nop" @@ -28,6 +29,7 @@ pub fn nop() { } } /// Wait For Event +#[inline(always)] pub fn wfe() { match () { #[cfg(target_arch = "arm")] @@ -44,6 +46,7 @@ pub fn wfe() { } /// Wait For Interrupt +#[inline(always)] pub fn wfi() { match () { #[cfg(target_arch = "arm")] @@ -63,6 +66,7 @@ pub fn wfi() { /// /// Flushes the pipeline in the processor, so that all instructions following the `ISB` are fetched /// from cache or memory, after the instruction has been completed. +#[inline(always)] pub fn isb() { match () { #[cfg(target_arch = "arm")] @@ -82,6 +86,7 @@ pub fn isb() { /// /// * any explicit memory access made before this instruction is complete /// * all cache and branch predictor maintenance operations before this instruction complete +#[inline(always)] pub fn dsb() { match () { #[cfg(target_arch = "arm")] @@ -98,6 +103,7 @@ pub fn dsb() { /// Ensures that all explicit memory accesses that appear in program order before the `DMB` /// instruction are observed before any explicit memory accesses that appear in program order /// after the `DMB` instruction. +#[inline(always)] pub fn dmb() { match () { #[cfg(target_arch = "arm")] |