Commit Graph

10 Commits

Author SHA1 Message Date
Ayke van Laethem ad8996c4ee arm: fix linker script
There were a few instances like `.text` and `.text*`. The first was
redundant with the second, but the intention was to write `.text.*`.

This doesn't change anything (tested with `make smoketest`) but should
avoid propagating this error in the future.
2020-03-16 07:18:39 -07:00
Ayke van Laethem c6255e4d0a targets: explicitly mark the stack as NOLOAD
This prevents it from being of type PROGBITS in lld 9, it should always
be NOBITS. It should fix the following error in lld 9:

    ROM segments are non-contiguous
2019-11-12 17:10:13 +01:00
Ayke van Laethem 2523772b5d arm: use the lld linker
LLD version 8 has added support for armv6m:
    https://reviews.llvm.org/D55555
This means we can use LLD instead of arm-none-eabi-ld, eliminating our
dependency on GNU binutils.

There are small differences in code size, but never more than a few
bytes.
2019-04-04 12:50:15 +02:00
Ayke van Laethem 62d74d8329 all: compile and link using clang, where possible 2018-11-22 16:20:10 +01:00
Ayke van Laethem 8402e84b6d runtime: implement a simple mark/sweep garbage collector 2018-11-18 19:18:39 +01:00
Ayke van Laethem bc9210b674 nrf: add micro:bit board 2018-10-06 13:04:14 +02:00
Ayke van Laethem 12298d23a7 all: move generic ARM bits into separate files 2018-09-22 01:44:47 +02:00
Ayke van Laethem 5b0aaf0d39 targets: clean up and unify linker scripts
Especially arm.ld needed some cleaning up. Other than that, I've made
sure the two linker scripts look similar where possible.
2018-09-21 15:38:55 +02:00
Ayke van Laethem 505b1f750d all: generate interrupt vector from .svd file 2018-09-21 15:38:28 +02:00
Ayke van Laethem 76e77917d8 targets: move target-specific files to this directory 2018-09-13 00:59:39 +02:00