MONOTONIC storage now RacyCell

This commit is contained in:
Per Lindgren 2021-03-11 18:16:00 +01:00
parent 1769a83fad
commit 1f8b4f651e
2 changed files with 1 additions and 2 deletions

View file

@ -40,7 +40,7 @@ pub fn codegen(app: &App, analysis: &Analysis) -> Vec<TokenStream2> {
// Store the monotonic // Store the monotonic
let name = util::monotonic_ident(&monotonic.to_string()); let name = util::monotonic_ident(&monotonic.to_string());
let name = util::mark_internal_ident(&name); let name = util::mark_internal_ident(&name);
stmts.push(quote!(#name = Some(monotonics.#idx);)); stmts.push(quote!(*#name.get_mut_unchecked() = Some(monotonics.#idx);));
} }
// Enable the interrupts -- this completes the `init`-ialization phase // Enable the interrupts -- this completes the `init`-ialization phase

View file

@ -126,7 +126,6 @@ pub fn codegen(app: &App, analysis: &Analysis, _extra: &Extra) -> Vec<TokenStrea
#[no_mangle] #[no_mangle]
#[allow(non_snake_case)] #[allow(non_snake_case)]
unsafe fn #bound_interrupt() { unsafe fn #bound_interrupt() {
while let Some((task, index)) = rtic::export::interrupt::free(|_| while let Some((task, index)) = rtic::export::interrupt::free(|_|
if let Some(mono) = #app_path::#m_ident.get_mut_unchecked().as_mut() { if let Some(mono) = #app_path::#m_ident.get_mut_unchecked().as_mut() {
#tq.get_mut_unchecked().dequeue(|| #disable_isr, mono) #tq.get_mut_unchecked().dequeue(|| #disable_isr, mono)