Fix fences

This commit is contained in:
Emil Fresk 2023-01-04 20:29:16 +01:00 committed by Henrik Tjäder
parent d27d0fe33f
commit 5c3cedf69a
2 changed files with 7 additions and 8 deletions

View file

@ -101,7 +101,12 @@ pub fn codegen(app: &App, analysis: &Analysis) -> Vec<TokenStream2> {
const PRIORITY: u8 = #level;
rtic::export::run(PRIORITY, || {
// Have the acquire/release semantics outside the checks to no overdo it
core::sync::atomic::fence(core::sync::atomic::Ordering::Acquire);
#(#stmts)*
core::sync::atomic::fence(core::sync::atomic::Ordering::Release);
});
}
));

View file

@ -111,14 +111,8 @@ pub fn codegen(
let v = Vec::new();
let cfgs = match ctxt {
Context::HardwareTask(t) => {
&app.hardware_tasks[t].cfgs
// ...
}
Context::SoftwareTask(t) => {
&app.software_tasks[t].cfgs
// ...
}
Context::HardwareTask(t) => &app.hardware_tasks[t].cfgs,
Context::SoftwareTask(t) => &app.software_tasks[t].cfgs,
_ => &v,
};