aboutsummaryrefslogtreecommitdiff
path: root/macros/src/syntax/optimize.rs
diff options
context:
space:
mode:
authorGravatar Emil Fresk <emil.fresk@gmail.com> 2023-01-23 20:05:47 +0100
committerGravatar Henrik Tjäder <henrik@tjaders.com> 2023-03-01 00:33:31 +0100
commit306aa47170fd59369b7a184924e287dc3706d64d (patch)
tree75a331a63a4021f078e330bf2ce4edb1228e2ecf /macros/src/syntax/optimize.rs
parentb8b881f446a226d6f3c4a7db7c9174590b47dbf6 (diff)
downloadrtic-306aa47170fd59369b7a184924e287dc3706d64d.tar.gz
rtic-306aa47170fd59369b7a184924e287dc3706d64d.tar.zst
rtic-306aa47170fd59369b7a184924e287dc3706d64d.zip
Add rtic-timer (timerqueue + monotonic) and rtic-monotonics (systick-monotonic)
Diffstat (limited to 'macros/src/syntax/optimize.rs')
-rw-r--r--macros/src/syntax/optimize.rs36
1 files changed, 0 insertions, 36 deletions
diff --git a/macros/src/syntax/optimize.rs b/macros/src/syntax/optimize.rs
deleted file mode 100644
index e83ba31b..00000000
--- a/macros/src/syntax/optimize.rs
+++ /dev/null
@@ -1,36 +0,0 @@
-use std::collections::{BTreeSet, HashMap};
-
-use crate::syntax::ast::App;
-
-pub fn app(app: &mut App, settings: &Settings) {
- // "compress" priorities
- // If the user specified, for example, task priorities of "1, 3, 6",
- // compress them into "1, 2, 3" as to leave no gaps
- if settings.optimize_priorities {
- // all task priorities ordered in ascending order
- let priorities = app
- .hardware_tasks
- .values()
- .map(|task| Some(task.args.priority))
- .chain(
- app.software_tasks
- .values()
- .map(|task| Some(task.args.priority)),
- )
- .collect::<BTreeSet<_>>();
-
- let map = priorities
- .iter()
- .cloned()
- .zip(1..)
- .collect::<HashMap<_, _>>();
-
- for task in app.hardware_tasks.values_mut() {
- task.args.priority = map[&Some(task.args.priority)];
- }
-
- for task in app.software_tasks.values_mut() {
- task.args.priority = map[&Some(task.args.priority)];
- }
- }
-}