Commit Graph

1404 Commits (55b992f130b847d2851a978e55a53de7930d4be5)

Author SHA1 Message Date
Jimmy Brisson 570a29236b Remove prefix stuff from GCC memap parser
It's just not used anymore
2017-09-22 15:15:07 +01:00
Jimmy Brisson 371212a4b9 Test the module_add function 2017-09-22 15:15:07 +01:00
Jimmy Brisson 01475cf4c2 Test GCC memap parser 2017-09-22 15:15:07 +01:00
Jimmy Brisson 2b8f993612 Test memap parsing for ARMC6 and IAR 2017-09-22 15:15:07 +01:00
Jimmy Brisson 238596f658 Parse full paths from ARM map file
Now we don't have to scan!

This is a 20% speed improvement
2017-09-22 15:15:07 +01:00
Jimmy Brisson 86b441c5a4 Display full paths in armlink output 2017-09-22 15:15:07 +01:00
Jimmy Brisson 2dbe035d0b Remove warnings for Zero sized sections
We just don't care if we don't know where they go
2017-09-22 15:15:07 +01:00
Jimmy Brisson 2e2a45a663 Parse filenames from IAR map file
Instead of scanning.

Is a 8ms/15% speedup.
2017-09-22 15:15:07 +01:00
Jimmy Brisson 802cfcfbca Refactor memap for speed 2017-09-22 15:15:07 +01:00
Jimmy Brisson dacf0f4f28 Mock supported_toolchains values in tests 2017-09-19 11:36:38 +01:00
Deepika 76a0660ec6 Corrected check for ARM/ARMC6 toolchain
ARMC6 support required ARM compiler support as mandatory requirement which
should not be the case. Cortex-M23/M33 devices are not suuported by ARM compiler5

Adding ARMC6 without ARM in target.json should work now.
2017-09-19 11:36:38 +01:00
Deepika 1f48da98e4 ARMC6 support for Cortex-M23 2017-09-19 11:36:38 +01:00
Jimmy Brisson 318419a705 Allow ARMC6 to run post-binary-hooks marked for ARM 2017-09-19 11:36:38 +01:00
Jimmy Brisson 80ae6acd2b Parse libraries with memap-arm 2017-09-19 11:36:37 +01:00
Jimmy Brisson 088fa1dd77 Emit dependency information with ARMC6
Which allows it to be parsed
2017-09-19 11:36:37 +01:00
Jimmy Brisson 8579eedad7 Correct uvision template to correctly pass include paths 2017-09-19 11:36:37 +01:00
Jimmy Brisson 374ce26759 Correct rename mistake in make arm compiler exporters 2017-09-19 11:36:37 +01:00
Jimmy Brisson c40368113a Disable response files on export
None of the exporters can handle them, so just don't do it
2017-09-19 11:36:37 +01:00
Anna Bridge 7b428916f5 Merge pull request #4949 from theotherjimmy/feature-armc5+armc6
NEW TOOLCHAIN: Add the ARMC6 Compiler
2017-09-13 10:39:15 +01:00
Shrikant Tudavekar fec2346627 add ARMC6 in supported compiler 2017-09-12 15:31:50 -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 8a9d79bcbd Add ARMC6 to supported matrix 2017-09-11 13:20:33 -05:00
Jimmy Brisson d56c19f253 Detect test skips with armc6 2017-09-11 13:20:33 -05:00
Jimmy Brisson 887d29372b Check for support in ARMC6 2017-09-11 13:20:33 -05:00
Jimmy Brisson d72f6dbfe4 Disable MULADDC assembly
It's not supported in ARMC6
2017-09-11 13:20:33 -05:00
Jimmy Brisson f4b7d8ba77 Avoid forcing preprocessing
We avoid forcing preprocessing by not replacing the first line when it's
not a shebang (#!). Should work pretty darn well.
2017-09-11 13:20:32 -05:00
Jimmy Brisson 06b00683c3 Genericify arm compiler exporter to versions 5 + 6 2017-09-11 13:20:32 -05:00
Jimmy Brisson e9d3166a5e Expose present get_compile_options API in Toolcahins 2017-09-11 13:20:32 -05:00
Jimmy Brisson 15a9a0382b Enable Compiling with ARMC6 across all targets
remove duplicate sys.cpp
2017-09-11 13:20:32 -05:00
Jimmy Brisson 1fef5553b4 Parse deps the same for GCC_ARM and ARMC6 2017-09-11 13:17:54 -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
Deepika ca1f24cc0e Add -mcmse flag for GCC and improved logic for cpu core 2017-09-11 11:49:28 -05:00
Deepika 9422c351e4 Initial RTX and tools support for Cortex M-23/M-33 devices 2017-09-11 11:43:26 -05:00
Jimmy Brisson a108adf396 Merge pull request #4916 from JojoS62/add_MCUXpresso_exporter
Add mcuxpresso exporter
2017-09-08 09:44:25 -05:00
Martin Kojtal 814eaa99fe Merge pull request #5030 from chrissnow/uVision-LDFlags
Export uVision linker flags so that bootloader projects build correctly
2017-09-07 12:46:35 +01:00
Jimmy Brisson a3bb8e370b Allow eclipse to fail for mysteriously in build 2017-09-06 17:38:58 -05:00
Jimmy Brisson 9d51b1afa8 Add imports for build 2017-09-06 16:58:40 -05:00
Jimmy Brisson 7457bbbc5c Merge pull request #4665 from Archcady/enable_sdram
Enable sdram usage of REALTEK_RTL8195AM
2017-09-06 14:26:34 -05:00
Jimmy Brisson 5bcd97a2bc Merge pull request #4984 from theotherjimmy/unify-unit-tests
Unify mbed OS tools testing style with what's used in mbed-ls, htrun, greentea
2017-09-06 14:26:14 -05:00
Chris Snow e783e98066 Export linker flags so that bootloader projects build correctly 2017-09-05 22:03:29 +01:00
Jimmy Brisson 9d0e8abb11 Rename and simplify config test target names 2017-09-05 15:21:08 -05:00
Jimmy Brisson 399b6acfb1 Clean up json
Wipe out all blank lines in json:
  find tools/test -name 'test_data.json' | xargs sed -i -e '/^$/d'
Move all start braces back a space:
  find tools/test -name 'test_data.json' | xargs sed -i -e "s/^ {/{/"
2017-09-05 14:39:48 -05:00
Jimmy Brisson 4a937fe15e Linting and correcting comments 2017-09-05 13:30:16 -05:00
Martin Kojtal c291973f49 Merge pull request #4933 from 0xc0170/fix_stats_depth
test: fix stats depth variable scope
2017-09-04 16:48:53 +01:00
JojoS 32c56b2743 added support for targets with extra SDK
some targets need an additional SDK.
2017-09-01 09:45:42 +02:00
JojoS d00d6f412a add support for K64F target
added template for K64F
2017-09-01 09:43:36 +02:00
JojoS 2615982b3a applied patch from mmahadevan108
- fixes invalid char '#' in linker script
- added 'mbedclean'
2017-09-01 09:41:12 +02:00
Russ Butler ac22225ad9 Move Cortex specific RTX behind TARGET_CORTEX
Update directory structure to include RTX for only cortex targets, and
for all cortex targets. This patch accomplishes this by moving mbed-os
specific RTX files and RTX itself into rtos/TARGET_CORTEX along with
removing TARGET_CORTEX_M from the RTX5 directory.

The old directory structure:

rtos/rtx5/<mbed-os specific RTX files>
rtos/rtx5/TARGET_CORTEX_M/*
rtos/rtx4/*
rtos/<mbed-os specific RTX files>

Is re-arranged to:

rtos/TARGET_CORTEX/rtx5/*
rtos/TARGET_CORTEX/rtx4/*
rtos/TARGET_CORTEX/<mbed-os specific rtx files>

This both encapsulates RTX code more cleanly and makes it easier to
experiment with non-cortex cmsis-os2 backends, such as a posix
based cmsis-os2 backend.

Note - A potentially better name for the CORTEX_M directory would be
something like FEATURE_RTX5 since this directory only contains RTX5
related files. This cannot be done because there is not an easy way
to turn this feature on, since it cannot be done from mbed_lib.json.
2017-08-31 19:55:54 -05:00
Martin Kojtal b99e6b5f7a Pass stats depth to singletest correctly
Fixes #4930
2017-08-31 10:41:20 -05:00
Jimmy Brisson 318e92c028 Merge pull request #4950 from OpenNuvoton/nuvoton_usb
M487: Support USB device/host
2017-08-29 13:45:55 -05:00