mirror of
https://github.com/rtic-rs/rtic.git
synced 2024-12-24 02:49:34 +01:00
Merge #643
643: Fix clash with defmt r=AfoHT a=korken89 Fixes #642 Co-authored-by: Emil Fresk <emil.fresk@gmail.com>
This commit is contained in:
commit
5fe6350278
4 changed files with 12 additions and 6 deletions
|
@ -12,7 +12,7 @@ license = "MIT OR Apache-2.0"
|
|||
name = "cortex-m-rtic-macros"
|
||||
readme = "../README.md"
|
||||
repository = "https://github.com/rtic-rs/cortex-m-rtic"
|
||||
version = "1.1.2"
|
||||
version = "1.1.3"
|
||||
|
||||
[lib]
|
||||
proc-macro = true
|
||||
|
|
|
@ -28,7 +28,11 @@ pub fn codegen(app: &App, analysis: &Analysis, extra: &Extra) -> Vec<TokenStream
|
|||
.filter_map(|(_, task)| {
|
||||
if !util::is_exception(&task.args.binds) {
|
||||
let interrupt_name = &task.args.binds;
|
||||
Some(quote!(assert!((#device::Interrupt::#interrupt_name as u32) < 32);))
|
||||
Some(quote!(
|
||||
if (#device::Interrupt::#interrupt_name as u32) > 31 {
|
||||
::core::panic!("An interrupt above value 31 is used while in armv6");
|
||||
}
|
||||
))
|
||||
} else {
|
||||
None
|
||||
}
|
||||
|
|
|
@ -55,7 +55,7 @@ pub fn codegen(app: &App, analysis: &Analysis, extra: &Extra) -> Vec<TokenStream
|
|||
);
|
||||
// Compile time assert that this priority is supported by the device
|
||||
stmts.push(quote!(
|
||||
const _: () = assert!((1 << #nvic_prio_bits) >= #priority as usize, #es);
|
||||
const _: () = if (1 << #nvic_prio_bits) < #priority as usize { ::core::panic!(#es); };
|
||||
));
|
||||
|
||||
stmts.push(quote!(
|
||||
|
@ -84,7 +84,7 @@ pub fn codegen(app: &App, analysis: &Analysis, extra: &Extra) -> Vec<TokenStream
|
|||
);
|
||||
// Compile time assert that this priority is supported by the device
|
||||
stmts.push(quote!(
|
||||
const _: () = assert!((1 << #nvic_prio_bits) >= #priority as usize, #es);
|
||||
const _: () = if (1 << #nvic_prio_bits) < #priority as usize { ::core::panic!(#es); };
|
||||
));
|
||||
|
||||
stmts.push(quote!(core.SCB.set_priority(
|
||||
|
@ -109,7 +109,7 @@ pub fn codegen(app: &App, analysis: &Analysis, extra: &Extra) -> Vec<TokenStream
|
|||
);
|
||||
// Compile time assert that this priority is supported by the device
|
||||
stmts.push(quote!(
|
||||
const _: () = assert!((1 << #nvic_prio_bits) >= #priority as usize, #es);
|
||||
const _: () = if (1 << #nvic_prio_bits) < #priority as usize { ::core::panic!(#es); };
|
||||
));
|
||||
|
||||
let mono_type = &monotonic.ty;
|
||||
|
|
|
@ -66,7 +66,9 @@ impl Barrier {
|
|||
}
|
||||
|
||||
pub fn wait(&self) {
|
||||
while !self.inner.load(Ordering::Acquire) {}
|
||||
while !self.inner.load(Ordering::Acquire) {
|
||||
core::hint::spin_loop()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue