diff options
author | 2021-01-07 17:17:08 +0000 | |
---|---|---|
committer | 2021-01-07 17:17:08 +0000 | |
commit | 126165331e14f92809656a76dfa351e42dfa1a68 (patch) | |
tree | 17f95edcff7bec632886241169d8c7cd67711a19 | |
parent | dafbc4ebdc1ca44653e2bfb35b1512373fbcaccb (diff) | |
parent | 5bed907740253386c619285ab5e549572b150946 (diff) | |
download | cortex-m-126165331e14f92809656a76dfa351e42dfa1a68.tar.gz cortex-m-126165331e14f92809656a76dfa351e42dfa1a68.tar.zst cortex-m-126165331e14f92809656a76dfa351e42dfa1a68.zip |
Merge #311
311: Duplicate compiler fences around barrier instrs r=adamgreig a=jonas-schievink
This should fix https://github.com/rust-embedded/cortex-m/issues/308
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
-rw-r--r-- | asm/inline.rs | 3 | ||||
-rw-r--r-- | bin/thumbv6m-none-eabi-lto.a | bin | 15860 -> 16012 bytes | |||
-rw-r--r-- | bin/thumbv6m-none-eabi.a | bin | 18580 -> 18848 bytes | |||
-rw-r--r-- | bin/thumbv7em-none-eabi-lto.a | bin | 20004 -> 20120 bytes | |||
-rw-r--r-- | bin/thumbv7em-none-eabi.a | bin | 23008 -> 23280 bytes | |||
-rw-r--r-- | bin/thumbv7em-none-eabihf-lto.a | bin | 20868 -> 20988 bytes | |||
-rw-r--r-- | bin/thumbv7em-none-eabihf.a | bin | 24096 -> 24368 bytes | |||
-rw-r--r-- | bin/thumbv7m-none-eabi-lto.a | bin | 18796 -> 18916 bytes | |||
-rw-r--r-- | bin/thumbv7m-none-eabi.a | bin | 21840 -> 22112 bytes | |||
-rw-r--r-- | bin/thumbv8m.base-none-eabi-lto.a | bin | 19136 -> 19296 bytes | |||
-rw-r--r-- | bin/thumbv8m.base-none-eabi.a | bin | 22280 -> 22548 bytes | |||
-rw-r--r-- | bin/thumbv8m.main-none-eabi-lto.a | bin | 23504 -> 23624 bytes | |||
-rw-r--r-- | bin/thumbv8m.main-none-eabi.a | bin | 27664 -> 27936 bytes | |||
-rw-r--r-- | bin/thumbv8m.main-none-eabihf-lto.a | bin | 24388 -> 24520 bytes | |||
-rw-r--r-- | bin/thumbv8m.main-none-eabihf.a | bin | 28712 -> 28984 bytes |
15 files changed, 3 insertions, 0 deletions
diff --git a/asm/inline.rs b/asm/inline.rs index f2014f8..9150c9c 100644 --- a/asm/inline.rs +++ b/asm/inline.rs @@ -64,18 +64,21 @@ pub unsafe fn __delay(cyc: u32) { #[inline(always)] pub unsafe fn __dmb() { + compiler_fence(Ordering::SeqCst); asm!("dmb"); compiler_fence(Ordering::SeqCst); } #[inline(always)] pub unsafe fn __dsb() { + compiler_fence(Ordering::SeqCst); asm!("dsb"); compiler_fence(Ordering::SeqCst); } #[inline(always)] pub unsafe fn __isb() { + compiler_fence(Ordering::SeqCst); asm!("isb"); compiler_fence(Ordering::SeqCst); } diff --git a/bin/thumbv6m-none-eabi-lto.a b/bin/thumbv6m-none-eabi-lto.a Binary files differindex f3858a0..1b0e77a 100644 --- a/bin/thumbv6m-none-eabi-lto.a +++ b/bin/thumbv6m-none-eabi-lto.a diff --git a/bin/thumbv6m-none-eabi.a b/bin/thumbv6m-none-eabi.a Binary files differindex 571396b..6835c5b 100644 --- a/bin/thumbv6m-none-eabi.a +++ b/bin/thumbv6m-none-eabi.a diff --git a/bin/thumbv7em-none-eabi-lto.a b/bin/thumbv7em-none-eabi-lto.a Binary files differindex 51e02c6..0a42c47 100644 --- a/bin/thumbv7em-none-eabi-lto.a +++ b/bin/thumbv7em-none-eabi-lto.a diff --git a/bin/thumbv7em-none-eabi.a b/bin/thumbv7em-none-eabi.a Binary files differindex d6ccf53..aeef3ab 100644 --- a/bin/thumbv7em-none-eabi.a +++ b/bin/thumbv7em-none-eabi.a diff --git a/bin/thumbv7em-none-eabihf-lto.a b/bin/thumbv7em-none-eabihf-lto.a Binary files differindex cc52e63..6d5e7cf 100644 --- a/bin/thumbv7em-none-eabihf-lto.a +++ b/bin/thumbv7em-none-eabihf-lto.a diff --git a/bin/thumbv7em-none-eabihf.a b/bin/thumbv7em-none-eabihf.a Binary files differindex aea284d..dd4f80d 100644 --- a/bin/thumbv7em-none-eabihf.a +++ b/bin/thumbv7em-none-eabihf.a diff --git a/bin/thumbv7m-none-eabi-lto.a b/bin/thumbv7m-none-eabi-lto.a Binary files differindex 85720da..66b6be3 100644 --- a/bin/thumbv7m-none-eabi-lto.a +++ b/bin/thumbv7m-none-eabi-lto.a diff --git a/bin/thumbv7m-none-eabi.a b/bin/thumbv7m-none-eabi.a Binary files differindex d9cf989..cdae52f 100644 --- a/bin/thumbv7m-none-eabi.a +++ b/bin/thumbv7m-none-eabi.a diff --git a/bin/thumbv8m.base-none-eabi-lto.a b/bin/thumbv8m.base-none-eabi-lto.a Binary files differindex 37e74a9..59c6510 100644 --- a/bin/thumbv8m.base-none-eabi-lto.a +++ b/bin/thumbv8m.base-none-eabi-lto.a diff --git a/bin/thumbv8m.base-none-eabi.a b/bin/thumbv8m.base-none-eabi.a Binary files differindex 0660245..a300490 100644 --- a/bin/thumbv8m.base-none-eabi.a +++ b/bin/thumbv8m.base-none-eabi.a diff --git a/bin/thumbv8m.main-none-eabi-lto.a b/bin/thumbv8m.main-none-eabi-lto.a Binary files differindex 4312c64..4306526 100644 --- a/bin/thumbv8m.main-none-eabi-lto.a +++ b/bin/thumbv8m.main-none-eabi-lto.a diff --git a/bin/thumbv8m.main-none-eabi.a b/bin/thumbv8m.main-none-eabi.a Binary files differindex 59affcc..5f0b282 100644 --- a/bin/thumbv8m.main-none-eabi.a +++ b/bin/thumbv8m.main-none-eabi.a diff --git a/bin/thumbv8m.main-none-eabihf-lto.a b/bin/thumbv8m.main-none-eabihf-lto.a Binary files differindex 62fcad3..cc62761 100644 --- a/bin/thumbv8m.main-none-eabihf-lto.a +++ b/bin/thumbv8m.main-none-eabihf-lto.a diff --git a/bin/thumbv8m.main-none-eabihf.a b/bin/thumbv8m.main-none-eabihf.a Binary files differindex f7795d1..cd688ac 100644 --- a/bin/thumbv8m.main-none-eabihf.a +++ b/bin/thumbv8m.main-none-eabihf.a |