aboutsummaryrefslogtreecommitdiffhomepage
path: root/targets/pca10040.json
AgeCommit message (Collapse)Author
2018-11-19targets: let specific targets inherit more general targetsAyke van Laethem
This avoids a ton of duplication and makes it easier to change a generic target (for example, the "cortex-m" target) for all boards that use it. Also, by making it possible to inherit properties from a parent target specification, it is easier to support out-of-tree boards that don't have to be updated so often. A target specification for a special-purpose board can simply inherit the specification of a supported chip and override the properites it needs to override (like the programming interface).
2018-11-19targets: make compiler runtime selection more configurableAyke van Laethem
2018-11-09all: rename 'arm' to 'tinygo.arm' for Cortex-MAyke van Laethem
Let the standard library think that it is compiling for js/wasm. The most correct way of supporting bare metal Cortex-M targets would be using the 'arm' build tag and specifying no OS or an 'undefined' OS (perhaps GOOS=noos?). However, there is no build tag for specifying no OS at all, the closest possible is GOOS=js which makes very few assumptions. Sadly GOOS=js also makes some assumptions: it assumes to be running with GOARCH=wasm. This would not be such a problem, just add js, wasm and arm as build tags. However, having two GOARCH build tags leads to an error in internal/cpu: it defines variables for both architectures which then conflict. To work around these problems, the 'arm' target has been renamed to 'tinygo.arm', which should work around these problems. In the future, a GOOS=noos (or similar) should be added which can work with any architecture and doesn't implement OS-specific stuff.
2018-10-07all: use compiler-rt for builtinsAyke van Laethem
2018-10-03nrf: better formatting of pca10040.jsonAyke van Laethem
2018-10-03all: implement gdb sub-command for easy debuggingAyke van Laethem
2018-09-22targets: put board name in build tagsAyke van Laethem
2018-09-22all: move generic ARM bits into separate filesAyke van Laethem
2018-09-21all: generate interrupt vector from .svd fileAyke van Laethem
2018-09-18nrf: use correct ISA type for pca10040Ayke van Laethem
No change to code size.
2018-09-18nrf: use assembly for nrf52, not nrf51Ayke van Laethem
Slightly increase code size, but this is the more correct thing to do.
2018-09-14all: implement `tinygo flash` commandAyke van Laethem
This will now just work: tinygo flash -target=arduino examples/blinky1
2018-09-14compiler: produce .hex files directlyAyke van Laethem
2018-09-13targets: move target-specific files to this directoryAyke van Laethem
2018-09-12targets/pca10040: support linking from within the compilerAyke van Laethem
This is kind of dirty with that huge list of linker params, but it works and it produces smaller object files (probably because GCC is better optimized for size).
2018-09-12all: make targets configurable with a JSON fileAyke van Laethem
This is intentionally similar to the target specifications in Rust: https://doc.rust-lang.org/nightly/nightly-rustc/rustc_target/spec/struct.TargetOptions.html