diff options
Diffstat (limited to 'macros/src/codegen/post_init.rs')
-rw-r--r-- | macros/src/codegen/post_init.rs | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/macros/src/codegen/post_init.rs b/macros/src/codegen/post_init.rs index f492d31d..3f1e4451 100644 --- a/macros/src/codegen/post_init.rs +++ b/macros/src/codegen/post_init.rs @@ -27,9 +27,16 @@ pub fn codegen( // initialized if analysis.initialization_barriers.contains_key(&core) { let ib = util::init_barrier(core); + let shared = if cfg!(feature = "heterogeneous") { + Some(quote!( + #[rtfm::export::shared] + )) + } else { + None + }; const_app.push(quote!( - #[rtfm::export::shared] + #shared static #ib: rtfm::export::Barrier = rtfm::export::Barrier::new(); )); @@ -84,9 +91,16 @@ pub fn codegen( if core == FIRST { for &i in analysis.timer_queues.keys() { let rv = util::rendezvous_ident(i); + let shared = if cfg!(feature = "heterogeneous") { + Some(quote!( + #[rtfm::export::shared] + )) + } else { + None + }; const_app.push(quote!( - #[rtfm::export::shared] + #shared static #rv: rtfm::export::Barrier = rtfm::export::Barrier::new(); )); |