aboutsummaryrefslogtreecommitdiff
path: root/macros/src (follow)
AgeCommit message (Collapse)AuthorFilesLines
2019-10-28WIP generators tasksgenerator-tasksGravatar Jorge Aparicio 9-11/+263
2019-10-21do not zero late resource memory on bootGravatar Jorge Aparicio 1-2/+10
2019-09-15fix gh-pages buildGravatar Jorge Aparicio 1-2/+2
2019-09-15don't use deprecated APIGravatar Jorge Aparicio 1-1/+1
2019-08-21doc tweaksGravatar Jorge Aparicio 1-2/+2
2019-08-21document #[app]Gravatar Jorge Aparicio 1-0/+188
2019-08-20adapt to changes in rtfm-syntaxGravatar Jorge Aparicio 8-8/+14
2019-07-11implement the #[shared] attribute as specified in RFC #211Gravatar Jorge Aparicio 1-1/+5
2019-07-10implement RFC #212Gravatar Jorge Aparicio 2-42/+45
2019-07-03fix (cross-core) initialization barriersGravatar Jorge Aparicio 1-9/+11
2019-06-29WIPGravatar Jorge Aparicio 12-22/+111
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 2-3/+10
2019-06-20RFC #207Gravatar Jorge Aparicio 7-45/+44
2019-06-18add homogeneous multi-core supportGravatar Jorge Aparicio 12-19/+111
2019-06-13rtfm-syntax refactor + heterogeneous multi-core supportGravatar Jorge Aparicio 26-4405/+2910
2019-05-21Merge #194Gravatar bors[bot] 1-97/+30
194: bump heapless dependency to v0.5.0; remove "nightly" feature r=japaric a=japaric 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 Co-authored-by: Jorge Aparicio <jorge@japaric.io>
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-21remove unused checkGravatar Jorge Aparicio 1-260/+17
that was added in #140 but it's no longer required
2019-05-21removes the maybe_uninit feature gateGravatar Jorge Aparicio 1-20/+21
and stop newtyping `core::mem::MaybeUninit`
2019-05-09Merge #189Gravatar bors[bot] 1-1/+10
189: write generated code to disk for easier inspection r=japaric a=japaric now that the generated code is actually readable let's make it easier to access this commit also documents how to inspect the generated code via `rtfm-expansion.rs` and `cargo-expand` Co-authored-by: Jorge Aparicio <jorge@japaric.io>
2019-05-09generate resource proxies only when neededGravatar Jorge Aparicio 1-29/+32
only `static mut` resources need proxies
2019-05-08write generated code to disk for easier inspectionGravatar Jorge Aparicio 1-1/+10
now that the generated code is actually readable let's make it easier to access this commit also documents how to inspect the generated code via `rtfm-expansion.rs` and `cargo-expand`
2019-05-01rtfm::app: update error messageGravatar Jorge Aparicio 1-1/+1
2019-05-01implement RFCs 147 and 155, etc.Gravatar Jorge Aparicio 5-2092/+2303
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] 2-6/+4
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 2-6/+4
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 3-21/+16
2019-02-26`binds` can only appear once in the argument listGravatar Jorge Aparicio 1-0/+7
2019-02-26add `binds` example and make it workGravatar Jorge Aparicio 1-2/+2
2019-02-26make cfail test actually failGravatar Jorge Aparicio 1-3/+9
2019-02-26add `binds` argument to the `interrupt` and `exception` attributesGravatar Jorge Aparicio 2-30/+85
2019-02-23reject duplicate arguments in #[interrupt] and #[exception]Gravatar Jorge Aparicio 1-0/+14
This program was being accepted: ``` rust #[task( capacity = 1, capacity = 2, priority = 1, priority = 2, )] fn foo() {} ``` now it will trigger a compiler error
2019-02-19add "nightly" featureGravatar Jorge Aparicio 1-80/+181
2019-02-16rebase fixGravatar Jorge Aparicio 1-1/+1
2019-02-16cargo fmtGravatar Jorge Aparicio 1-4/+4
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 3-27/+27
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 3-35/+175
2019-02-12forbid early returns in initGravatar Jorge Aparicio 1-1/+246
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 5-22/+20