Seppo Takalo
0d6f760c16
Add minimal debug info to release and develop profiles.
...
This allows minimal debugging and allows tools like
mbed-os-linker-report to work properly.
Because debugging info is kept in .elf file and not flashed to device
there is no side effects to flash sizes.
2017-12-14 17:18:31 +02:00
Bartek Szatkowski
2ea01ac8a9
Enabled restrict keyword for IAR
2017-11-10 09:53:42 +00:00
Jimmy Brisson
8c54c4efa8
Display full paths in armlink output
2017-09-18 16:40:52 -05:00
Jimmy Brisson
bd7f320387
Emit dependency information with ARMC6
...
Which allows it to be parsed
2017-09-14 16:17:44 -05:00
Jimmy Brisson
23aafbfe6c
Optimize space usage on builds
...
by not creating gigantic exception nonsense
2017-09-11 14:45:21 -05:00
Jimmy Brisson
d72f6dbfe4
Disable MULADDC assembly
...
It's not supported in ARMC6
2017-09-11 13:20:33 -05:00
Jimmy Brisson
98b4768434
Initial toolchain class for ARMC6
...
While ARMC6 does use the same linker (armlink) as ARM Compiler 5, it
is not compatible.
The reason for this incompatibility are twofold:
* armlink may invoke the C preprocessor by adding a shebang
(`#!`) to the top of their input files.
* ARMC6 and ARMC5 differ in how you invoke the preprocessor:
* ARMC5: `#! armcc -E`
* ARMC6: `#! armclang -E`
This forces the tools to rewrite the shebang if it's wrong.
This does not yet handle dependencies properly
2017-09-11 13:17:54 -05:00
Niklas Hauser
8fb74f42d2
uVisor: Wrap _memalign_r and _calloc_r
2017-06-04 14:41:59 +01:00
Russ Butler
737c5a9cea
Trap on errors when building with debug profile
...
Define MBED_TRAP_ERRORS_ENABLED to 1 for the debug profile so errors
are obvious when building as debug.
2017-06-02 23:50:40 -05:00
Bartek Szatkowski
cc71f3f5d4
Introduce MBED_DEBUG macro for debug build profile
2017-04-10 11:40:04 +01:00
Seppe Stas
886713d290
Removed superfluous space
...
The extra space between "--no_wrap_diagnostics" and "-e" is inconsistent with the development and release targets.
It bugs people (like me) that have little OCD tics 😉 .
2017-03-30 10:19:36 +02:00
Tony Wu
72589dfef3
tools - turn off page alignment of sections
...
By default, ld sets page alignment of sections to 0x8000, which bloats
up elf file size. This behavior is unnecessary for MCU.
Example:
1. page alignment on
mbed.elf file size 144936
Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
LOAD 0x008000 0x00000000 0x00000000 0x00400 0x00400 R 0x8000
LOAD 0x008400 0x00000400 0x00000400 0x00010 0x00010 R 0x8000
LOAD 0x008410 0x00000410 0x00000410 0x0ab3c 0x0ab3c RWE 0x8000
LOAD 0x018000 0x20000000 0x0000af4c 0x008d0 0x008d0 RW 0x8000
LOAD 0x01b81c 0x0000b81c 0x0000b81c 0x00000 0x00004 RW 0x8000
LOAD 0x020000 0x1fff0000 0x1fff0000 0x00000 0x00400 RW 0x8000
LOAD 0x0188d0 0x200008d0 0x200008d0 0x00000 0x08860 RW 0x8000
2. page alignment off
mbed.elf file size 91792
Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
LOAD 0x000114 0x00000000 0x00000000 0x00400 0x00400 R 0x4
LOAD 0x000514 0x00000400 0x00000400 0x00010 0x00010 R 0x1
LOAD 0x000528 0x00000410 0x00000410 0x0ab3c 0x0ab3c RWE 0x8
LOAD 0x00b068 0x20000000 0x0000af4c 0x008d0 0x008d0 RW 0x8
LOAD 0x00b938 0x0000b81c 0x0000b81c 0x00000 0x00004 RW 0x1
LOAD 0x00b938 0x1fff0000 0x1fff0000 0x00000 0x00400 RW 0x1
LOAD 0x00b938 0x200008d0 0x200008d0 0x00000 0x08860 RW 0x8
Signed-off-by: Tony Wu <tonywu@realtek.com>
2017-03-29 05:48:30 +08:00
Bartek Szatkowski
40d3b22785
Build: Rework build profiles
...
Rename small.json to release.json, default.json to develop.json and make
it the default profile.
2017-02-07 11:41:16 +00:00
Christopher Haster
83e5f272f6
Added '-g3' flag to gcc debug flags
...
Includes extra information, such as all the macro definitions present
in the program
2016-11-18 14:45:59 -06:00
Russ Butler
23af2421f3
Remove non-code profiles
...
Remove profiles which are not suitable for building stand alone. This
leaves just the 3 core profiles.
2016-10-18 09:23:10 -05:00
Russ Butler
0d51f18f02
New build profile and docs
...
Add a small build profile and general docs for build profiles.
2016-10-18 09:23:01 -05:00
Michel Jaouen
144e97bf63
[IAR build] fix debug build
...
with option --profile ./tools/profiles/debug.json
2016-10-06 16:16:14 +02:00
Bartek Szatkowski
ea569e8342
Fix json syntax in debug.json profile file
2016-10-03 14:08:29 +01:00
Brian Daniels
64d09e1879
Adding uARM support default build profiles
2016-09-30 17:24:11 -05:00
Jimmy Brisson
d88852d150
Replace -o with profiles
2016-09-29 10:20:05 -05:00
Jimmy Brisson
df32effd8a
Add profiles for default, nanolib, and debug
2016-09-29 10:20:03 -05:00