From 3f85cb5caf1ae930e6551e139978ceec859a2348 Mon Sep 17 00:00:00 2001 From: Emil Fresk Date: Mon, 5 Jul 2021 21:40:01 +0200 Subject: Started work --- macros/src/codegen.rs | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'macros/src/codegen.rs') diff --git a/macros/src/codegen.rs b/macros/src/codegen.rs index 113d17f..f6fdf02 100644 --- a/macros/src/codegen.rs +++ b/macros/src/codegen.rs @@ -9,12 +9,13 @@ mod dispatchers; mod hardware_tasks; mod idle; mod init; -mod locals; +mod local_resources; +mod shared_resources; +mod local_resources_struct; +mod shared_resources_struct; mod module; mod post_init; mod pre_init; -mod resources; -mod resources_struct; mod software_tasks; mod timer_queue; mod util; -- cgit v1.2.3 From ef5307d83a1d62df0569d78db75d4006147c927d Mon Sep 17 00:00:00 2001 From: Emil Fresk Date: Tue, 6 Jul 2021 22:47:48 +0200 Subject: Minimal app now compiles --- macros/src/codegen.rs | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'macros/src/codegen.rs') diff --git a/macros/src/codegen.rs b/macros/src/codegen.rs index f6fdf02..081c37f 100644 --- a/macros/src/codegen.rs +++ b/macros/src/codegen.rs @@ -84,7 +84,8 @@ pub fn app(app: &App, analysis: &Analysis, extra: &Extra) -> TokenStream2 { } )); - let (mod_app_resources, mod_resources) = resources::codegen(app, analysis, extra); + let (mod_app_shared_resources, mod_shared_resources) = shared_resources::codegen(app, analysis, extra); + let (mod_app_local_resources, mod_local_resources) = local_resources::codegen(app, analysis, extra); let (mod_app_hardware_tasks, root_hardware_tasks, user_hardware_tasks) = hardware_tasks::codegen(app, analysis, extra); @@ -186,7 +187,9 @@ pub fn app(app: &App, analysis: &Analysis, extra: &Extra) -> TokenStream2 { #(#root)* - #mod_resources + #mod_shared_resources + + #mod_local_resources #(#root_hardware_tasks)* @@ -195,7 +198,9 @@ pub fn app(app: &App, analysis: &Analysis, extra: &Extra) -> TokenStream2 { /// app module #(#mod_app)* - #(#mod_app_resources)* + #(#mod_app_shared_resources)* + + #(#mod_app_local_resources)* #(#mod_app_hardware_tasks)* -- cgit v1.2.3 From d7393c5b27fc95f3569d12137ee0c4d03ff7e2ba Mon Sep 17 00:00:00 2001 From: Emil Fresk Date: Wed, 7 Jul 2021 21:03:56 +0200 Subject: Full local resource syntax working --- macros/src/codegen.rs | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'macros/src/codegen.rs') diff --git a/macros/src/codegen.rs b/macros/src/codegen.rs index 081c37f..9c1ae88 100644 --- a/macros/src/codegen.rs +++ b/macros/src/codegen.rs @@ -10,12 +10,12 @@ mod hardware_tasks; mod idle; mod init; mod local_resources; -mod shared_resources; mod local_resources_struct; -mod shared_resources_struct; mod module; mod post_init; mod pre_init; +mod shared_resources; +mod shared_resources_struct; mod software_tasks; mod timer_queue; mod util; @@ -53,7 +53,7 @@ pub fn app(app: &App, analysis: &Analysis, extra: &Extra) -> TokenStream2 { mod_app.push(quote!( #mod_app_init - #mod_app_idle + #(#mod_app_idle)* )); let main = util::suffixed("main"); @@ -84,8 +84,10 @@ pub fn app(app: &App, analysis: &Analysis, extra: &Extra) -> TokenStream2 { } )); - let (mod_app_shared_resources, mod_shared_resources) = shared_resources::codegen(app, analysis, extra); - let (mod_app_local_resources, mod_local_resources) = local_resources::codegen(app, analysis, extra); + let (mod_app_shared_resources, mod_shared_resources) = + shared_resources::codegen(app, analysis, extra); + let (mod_app_local_resources, mod_local_resources) = + local_resources::codegen(app, analysis, extra); let (mod_app_hardware_tasks, root_hardware_tasks, user_hardware_tasks) = hardware_tasks::codegen(app, analysis, extra); -- cgit v1.2.3 From 98d2af9d73da56910c8bb6cb662fbc4d609a704a Mon Sep 17 00:00:00 2001 From: Emil Fresk Date: Wed, 7 Jul 2021 22:50:59 +0200 Subject: Fixing tests --- macros/src/codegen.rs | 1 - 1 file changed, 1 deletion(-) (limited to 'macros/src/codegen.rs') diff --git a/macros/src/codegen.rs b/macros/src/codegen.rs index 9c1ae88..6920031 100644 --- a/macros/src/codegen.rs +++ b/macros/src/codegen.rs @@ -20,7 +20,6 @@ mod software_tasks; mod timer_queue; mod util; -// TODO document the syntax here or in `rtic-syntax` pub fn app(app: &App, analysis: &Analysis, extra: &Extra) -> TokenStream2 { let mut mod_app = vec![]; let mut mains = vec![]; -- cgit v1.2.3