aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGravatar Jorge Aparicio <jorge@japaric.io> 2017-06-05 14:19:02 -0500
committerGravatar Jorge Aparicio <jorge@japaric.io> 2017-06-05 14:19:02 -0500
commit2e534ea4d85f321a4175a58fc77455380360ca9d (patch)
treea8c09fcde90796c6e9a7bb5ae9257a6f33323d12 /src
parentc4d897ec4bb47bc8f2768d2b33864ddf4c251da2 (diff)
downloadcortex-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')
-rw-r--r--src/asm.rs6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/asm.rs b/src/asm.rs
index cb4254e..daa7b55 100644
--- a/src/asm.rs
+++ b/src/asm.rs
@@ -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")]