aboutsummaryrefslogtreecommitdiff
path: root/macros/src/codegen/post_init.rs
diff options
context:
space:
mode:
Diffstat (limited to 'macros/src/codegen/post_init.rs')
-rw-r--r--macros/src/codegen/post_init.rs18
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();
));