aboutsummaryrefslogtreecommitdiff
path: root/macros/src/codegen.rs (follow)
AgeCommit message (Collapse)AuthorFilesLines
2020-10-11Now with spawn/schedule from anywhereGravatar Emil Fresk 1-8/+8
2020-10-05spawn POC works, likely unsound, cleanupGravatar Per Lindgren 1-1/+0
2020-10-05spawn POC works, likely unsoundGravatar Per Lindgren 1-0/+1
2020-10-01Rename const_app to mod_appGravatar Henrik Tjäder 1-25/+25
2020-09-29Remove stale commentGravatar Henrik Tjäder 1-1/+0
2020-09-29Keep user code as-is within the module, add exampleGravatar Henrik Tjäder 1-0/+6
2020-09-25cfg_core is gone, cargo fmtGravatar Henrik Tjäder 1-8/+18
2020-09-25Compose the use-statements, reduce debug-printoutsGravatar Henrik Tjäder 1-18/+12
2020-09-25Handle user hardware and software tasks and some resourcesGravatar Henrik Tjäder 1-3/+25
2020-09-25Generate mod instead of const, handle import of idle and initGravatar Henrik Tjäder 1-3/+16
2020-09-01Remove stale code, fix comment stylingGravatar Henrik Tjäder 1-7/+3
2020-09-01Cargo fmtGravatar Henrik Tjäder 1-7/+3
2020-09-01Brutally yank out multicoreGravatar Henrik Tjäder 1-55/+36
2020-06-11Rename RTFM to RTICGravatar Henrik Tjäder 1-2/+2
2020-06-11Merge #314Gravatar bors[bot] 1-0/+2
314: do not optimize build deps r=korken89 a=japaric this may make CI faster Co-authored-by: Jorge Aparicio <jorge@japaric.io>
2020-06-03Run cargo fmtGravatar Henrik Tjäder 1-1/+2
2020-05-26TODO(remove) codegen no-opGravatar Jorge Aparicio 1-0/+2
2020-04-22Retain cfg-attributes on resourcesGravatar Henrik Tjäder 1-1/+1
2019-08-20adapt to changes in rtfm-syntaxGravatar Jorge Aparicio 1-1/+1
2019-06-29WIPGravatar Jorge Aparicio 1-0/+2
2019-06-24check that the app is not compiled for more cores than were specifiedGravatar Jorge Aparicio 1-0/+14
2019-06-24Monotonic trait is safe; add MultiCore traitGravatar Jorge Aparicio 1-1/+1
2019-06-18add homogeneous multi-core supportGravatar Jorge Aparicio 1-1/+2
2019-06-13rtfm-syntax refactor + heterogeneous multi-core supportGravatar Jorge Aparicio 1-2380/+87
2019-05-21bump heapless dependency to v0.5.0; remove "nightly" featureGravatar Jorge Aparicio 1-97/+30
with the upcoming version of heapless we are able to initialize all internal queues in const context removing the need for late initialization this commit also removes the "nightly" feature because all the optimization provided by it are now enabled by default
2019-05-21removes the maybe_uninit feature gateGravatar Jorge Aparicio 1-20/+21
and stop newtyping `core::mem::MaybeUninit`
2019-05-09generate resource proxies only when neededGravatar Jorge Aparicio 1-29/+32
only `static mut` resources need proxies
2019-05-01implement RFCs 147 and 155, etc.Gravatar Jorge Aparicio 1-1826/+2050
This commit: - Implements RFC 147: "all functions must be safe" - Implements RFC 155: "explicit Context parameter" - Implements the pending breaking change #141: reject assign syntax in `init` (which was used to initialize late resources) - Refactors code generation to make it more readable -- there are no more random identifiers in the output -- and align it with the book description of RTFM internals. - Makes the framework hard depend on `core::mem::MaybeUninit` and thus will require nightly until that API is stabilized. - Fixes a ceiling analysis bug where the priority of the system timer was not considered in the analysis. - Shrinks the size of all the internal queues by turning `AtomicUsize` indices into `AtomicU8`s. - Removes the integration with `owned_singleton`.
2019-04-21v0.4.3Gravatar Jorge Aparicio 1-4/+14
2019-04-16Merge #170Gravatar bors[bot] 1-4/+2
170: check task priority at compile time r=TeXitoi a=japaric before we were checking the priority at runtime. The compile time error message when the priority is too high is kind of awful though. Co-authored-by: Jorge Aparicio <jorge@japaric.io>
2019-04-17now fix the fixGravatar Jorge Aparicio 1-2/+2
2019-04-16more nightly fixesGravatar Jorge Aparicio 1-11/+11
2019-04-16[NFC] fix nightly ciGravatar Jorge Aparicio 1-7/+7
2019-04-16check task priority at compile timeGravatar Jorge Aparicio 1-4/+2
before we were checking the priority at runtime. The compile time error message when the priority is too high is kind of awful though.
2019-02-26refactor: make `binds` harder to misuseGravatar Jorge Aparicio 1-14/+6
2019-02-26add `binds` example and make it workGravatar Jorge Aparicio 1-2/+2
2019-02-26add `binds` argument to the `interrupt` and `exception` attributesGravatar Jorge Aparicio 1-8/+16
2019-02-19add "nightly" featureGravatar Jorge Aparicio 1-80/+181
2019-02-16rebase fixGravatar Jorge Aparicio 1-1/+1
2019-02-16make debug builds reproducibleGravatar Jorge Aparicio 1-101/+132
2019-02-16Make generated names stable when sorting.Gravatar Hugo van der Wijst 1-7/+28
2019-02-16Seed RNG with package name and prepend string to full random name.Gravatar Hugo van der Wijst 1-2/+8
2019-02-16Make identifiers deterministic.Gravatar Hugo van der Wijst 1-64/+54
2019-02-16Make builds reproducibleGravatar Hugo van der Wijst 1-7/+7
This is done by using `BTreeMap`s and `BTreeSet`s to get deterministic ordering. Also updated the CI job to check reproducibility of all examples.
2019-02-13fix non_camel_case_types warningsGravatar Jorge Aparicio 1-0/+1
2019-02-12accept `init: fn() -> init::LateResources`Gravatar Jorge Aparicio 1-16/+91
2019-01-17Fix build on recent nightlies.Gravatar Hugo van der Wijst 1-0/+1
2018-12-16move macros crate to the 2018 editionGravatar Jorge Aparicio 1-2/+4
2018-12-16properly handle `#[cfg]` (conditional compilation) on tasksGravatar Jorge Aparicio 1-16/+60
2018-12-16properly handle #[cfg] (conditional compilation) on resourcesGravatar Jorge Aparicio 1-55/+165