Commit Graph

431 Commits (cf8f3725f99729e1716ff04be072d6f28e67a8e1)

Author SHA1 Message Date
Jimmy Brisson 1f4c2710b1 Add SPDX identifier to liscense in "new" file 2019-03-04 11:36:36 -06:00
Jimmy Brisson c9674dc7f8 Fix pylint in iar.py except for the long regex 2019-03-04 11:36:36 -06:00
Jimmy Brisson 1712506de2 Fix pylint warnings in gcc.py except for the long regex 2019-03-04 11:36:36 -06:00
Jimmy Brisson 5dd149cb13 Fix formatting erros in arm.py
except for the extremely long regex
2019-03-04 11:36:36 -06:00
Jimmy Brisson a2fcdba040 Move toolchain base class into another file 2019-03-04 11:32:16 -06:00
Jimmy Brisson b0b43c27bf Correct all pylint warnings and errors except 4
The 4 remaining are related to the fact that __init__.py defines a base class.
They'll be removed next commit
2019-03-04 11:32:16 -06:00
Jimmy Brisson 7a55bc7b0c Prevent "Image: None" in log 2019-03-04 11:32:16 -06:00
Jimmy Brisson 98a7bfcdcc Define filename when OUTPUT_EXT is elf 2019-03-04 11:32:16 -06:00
Jimmy Brisson cd20c37cdc Drop unused variable from link_program 2019-03-04 11:32:15 -06:00
Jimmy Brisson 3353722d36 Correct use before definition bug in ARM 2019-03-04 11:32:15 -06:00
Jimmy Brisson a007212602 Remove use of hooks from IAR
Aparantely I missed this previously
2019-03-04 11:32:15 -06:00
Jimmy Brisson 4cac89c22b Reorder post-build and managed bootloader mode merging
Priously, post-bulid was run before the merge from managed bootloader mode.
This renders many post-build scripts less than useful, as most of them
compute a digest of the ROM image generated in a build.

This reorders the post-build scripts to come after the managed bootloader
mode so that post-build script digests are useful again.
2019-03-04 11:30:49 -06:00
Jimmy Brisson aeeb43fb3c Simplify hook tool implementation
The "hook tools" were capable of hooking into many commands run by the build system.
To my knowlage, the only hook is the "post-build-hook". The post build hook could be
easier to reason about if the implementation is specialized for just post-build
hooking.

This commit make it much easier to point out where post build hooks are called by
making the call explicit.
2019-03-04 11:30:49 -06:00
Senthil Ramakrishnan 96c74d4dce Changes to use response files(pass includes in a file) 2019-02-28 12:03:14 -06:00
Senthil Ramakrishnan 654f4d93a4 Modify ARM_STD,ARM_MICRO,ARMC6 constructors to be compatible with older versions of build tools 2019-02-28 12:00:11 -06:00
Senthil Ramakrishnan 4e7d34bbb6 Review fixes for uvision exporter,build_api and arm.py 2019-02-28 12:00:11 -06:00
Senthil Ramakrishnan e2646407de Adding ARMC6 label for ARMC6 toolchain class 2019-02-28 12:00:11 -06:00
Senthil Ramakrishnan 7490b1c87f Api tests modification and uLib related fixes 2019-02-28 11:55:21 -06:00
Senthil Ramakrishnan 50eb4f9da8 Build tools changes to support AC6 and AC5 2019-02-28 11:55:21 -06:00
Cruz Monrreal e77f03cfbc
Merge pull request #9317 from naveenkaje/tools_bootloader_script
tools: support cases where bootloader is in chunks
2019-02-26 22:49:42 -06:00
deepikabhavnani f33fc3ae7b Set IAR version as 8.32 in tools 2019-02-26 12:53:30 +00:00
Naveen Kaje 4cc21820bb tools: support cases where bootloader is in chunks
Support the requirement where bootloader can be in chunks and enable
placing the application at a particular offset specified by config.
With FEATURE_BOOTLOADER support, the bootloader can be placed at a
high address. Add support to the tools so that application can be
placed in the available space before the beginning of the bootloader.
2019-02-21 15:11:44 -06:00
Oren Cohen 156bdc4b95
Add config header to assembly compilation
ARMC6 was not including mbed_config.h when compiling assembly files
2019-02-20 01:15:23 +02:00
Cruz Monrreal II b59bb465ba Removed decode since deeper tools always return strings 2019-02-12 12:05:28 -06:00
Nir Sonnenschein 5ef9499296
Merge pull request #9619 from deepikabhavnani/typo_correct
Correct the dsp flag from no_dsp to nodsp
2019-02-07 18:13:24 +02:00
Martin Kojtal 09db995c73
Merge pull request #9625 from kfnta/tools_arm_fix
Fix cortex-m33 armlink error
2019-02-07 09:24:42 +01:00
Martin Kojtal 9bda4494ca
Merge pull request #9614 from kfnta/tools_gcc_fix
Fix cortex-m33-S gcc compilation error
2019-02-07 09:24:00 +01:00
Michael Schwarcz 965410bef0
Fix cortex-m33-S armlink error
Add "-mfpu=none" compilation flag
2019-02-06 10:28:28 +02:00
Martin Kojtal 4ce6ed0f47
Merge pull request #9606 from deepikabhavnani/core_arch_v8m
Correct typo no_dsp - nodsp
2019-02-05 16:59:13 +01:00
deepikabhavnani 07ccd82719 Correct the dsp flag from no_dsp to nodsp 2019-02-05 09:35:46 -06:00
Michael Schwarcz 0e7d172d0f
Fix cortex-m33-S compile error
Compilation error was due to due to bug in gcc.py
2019-02-05 14:48:29 +02:00
Deepika b49a6b2ad8 Correct typo no_dsp - nodsp
armclang - nodsp
armlink - no_dsp

diff --git a/tools/t
2019-02-04 15:40:53 -06:00
Brian Daniels 811152da65
Add missing space - coding style nit
Co-Authored-By: deepikabhavnani <deepika.bhavnani@arm.com>
2019-02-01 10:38:37 -06:00
deepikabhavnani 6097095de4 Set the DSP option as `E` for Cortex-M33 2019-01-31 16:19:24 -06:00
deepikabhavnani fdbcae3830 Correct the floating+dsp options for Cortex-M processors
As per the IAR Development guide, below options for CPU are valid

1. Cortex-M33
2. Cortex-M33.no_dsp (core without integer DSP extension)
3. Cortex-M33.fp (floating-point unit with support for single precision)
4. Cortex-M33.no_se (core without support for TrustZone)
5. Cortex-M4
6. Cortex-M4F
7. Cortex-M7
8. Cortex-M7.fp.dp (floating-point unit with support for double precision)
9. Cortex-M7.fp.sp (floating-point unit with support for single precision)
2019-01-31 16:19:24 -06:00
deepikabhavnani 0082474ef2 Update `cmse` flag based on core_arch instead of different cores 2019-01-31 16:19:24 -06:00
deepikabhavnani f760f72757 Update IAR flags for Armv8M devices.
Cortex-M23 / Cortex-M33 CPU settings for baseline and mainline
profile (with optional floating and dsp options) updated.
2019-01-31 16:19:24 -06:00
Cruz Monrreal c9e00cf781
Merge pull request #9480 from deepikabhavnani/core_arch_v8m
Refactor core optional parameters (FPU + DSP + Security extensions)
2019-01-31 10:22:09 -06:00
Cruz Monrreal II 149d280e7a Added encoding to version check for Py3 compat 2019-01-28 12:59:43 -06:00
deepikabhavnani febbeffff6 Change if statements to lookup tables 2019-01-25 09:43:03 -06:00
deepikabhavnani f7d49fdc82 Change DSP variant symbol to `E` from `D`(d-double floating point) 2019-01-25 09:31:44 -06:00
deepikabhavnani c472005cfa GCC_ARM: Strip the -NS from core option before setting floating point options 2019-01-25 09:28:36 -06:00
deepikabhavnani c0750de318 Armc6 - Set floating point and CPU options for all core variants explicitly
Below are the options read from the toolchains/arm
armclang --target=arm-arm-none-eabi -mcpu=list
The following arguments to option 'mcpu' can be selected:
  -mcpu=cortex-m0
  -mcpu=cortex-m0plus
  -mcpu=cortex-m1
  -mcpu=cortex-m3
  -mcpu=cortex-m4
  -mcpu=cortex-m7
  -mcpu=cortex-m23
  -mcpu=cortex-m33
  ...

armlink --cpu=list
The following arguments to option 'cpu' can be selected:
 --cpu=Cortex-M0
 --cpu=Cortex-M0plus
 --cpu=Cortex-M1
 --cpu=Cortex-M1.os_extension
 --cpu=Cortex-M1.no_os_extension
 --cpu=Cortex-M4
 --cpu=Cortex-M4.no_fp
 --cpu=Cortex-M7
 --cpu=Cortex-M7.fp.sp
 --cpu=Cortex-M7.no_fp
 --cpu=Cortex-M23
 --cpu=Cortex-M33
 --cpu=Cortex-M33.no_fp
 --cpu=Cortex-M33.no_dsp
 --cpu=Cortex-M33.no_dsp.no_fp
...

armclang --target=arm-arm-none-eabi -mfpu=list
The following arguments to option 'mfpu' can be selected:
  -mfpu=fpv4-sp-d16
  -mfpu=fpv5-sp-d16
  -mfpu=fpv5-d16
...
2019-01-25 09:28:36 -06:00
deepikabhavnani 907c517473 Use core arch for setting secure/non-secure flags 2019-01-25 09:28:36 -06:00
Martin Kojtal 129889bf52
Merge pull request #9404 from deepikabhavnani/dsp_flag
DSP_PRESENT flag is needed for Armv8m devices having DSP enabled
2019-01-23 14:21:23 +01:00
Martin Kojtal af52c30234
Merge pull request #9433 from deepikabhavnani/asm_v8m_flags
Set DSP and floating point flags for ASM files
2019-01-23 09:18:18 +01:00
Deepika ddc762776f Set DSP and floating point flags for ASM files 2019-01-18 14:13:31 -06:00
Deepika ed8b53877c DSP_PRESENT flag is needed for Armv8m devices having DSP enabled 2019-01-18 13:34:15 -06:00
Kevin Bracey d17d43bdfa Revert "Warn with ARMC6 and not v8m"
This reverts commit 3f684113b0.
2019-01-17 10:59:27 -06:00
Senthil Ramakrishnan 3e6dafa71a Removed extra space 2019-01-04 09:33:33 -06:00