Commit Graph

23 Commits (127eba40bd8bf03743a7d09da2d2738df579554f)

Author SHA1 Message Date
dinau a43ba4740a [STM32F407][LPC4088][GCC_ARM] Fixed compilation error.
This commit fix FPU error when compile with RTX OS.
2014-03-21 21:16:52 +09:00
Emilio Monti 90d56a0234 Fix "binary" function parameters 2014-02-07 12:10:39 +00:00
Bogdan Marinescu b5527ca74d [LPC4088] Switch to 'hard' FP ABI on GCC
This is consistent with the armcc compilation options.
2014-01-07 15:57:52 +02:00
Bogdan Marinescu 697acd34c0 Added command line hooking option
compiler, linker, assembler and binary command lines can now be modified
using the hooks mechanism. Also, '--any_placement=first_fit' linker option
is now used only on LPC4088 using this mechanism, in order to preserve
compatibility with the other targets.
2013-12-05 13:48:42 +02:00
0xc0170 ba7b4c300a Cortex-M4 split to M4 and M4F
- all current supported M4 cores will be M4F
2013-11-27 21:02:37 +01:00
hototogi 03b79b5920 support GCC_ARM for LPC4330_M4
- Linker script is based on LPC1768
     number of NVIC is 16 (CORE) + 53 (M4 in LPC43xx) = 69,
    therefor, reserve at the top of RAM0 (address:0x10000000)
    to relocate NVIC vector table
 - startup file is based on startup_ARMCM4.S in CMSIS V3.20
     change NVIC name for cortex-M4 of LPC43xx
 - add GCC_ARM for LPC4330_M4 in python scripts
 - add some descriptions for GCC_ARM
2013-11-20 17:03:59 +09:00
Bogdan Marinescu e69956aba2 Updated DSP library + build system changes
Updated CMSIS DSP to latest version (CMSIS-SP-00300-r3p2-00rel1.zip)
Build system changes to be able to preprocess assembler sources before compiling them:

- GCC: use gcc '-x assembler-with-cpp'
- ARM: preprocess first, then assemble (two separate commands)
- IAR: added macro definitions and include directories to the assembler command line

Removed CORTEX_ARM_SUPPORT restriction for the DSP libraries.
Tested: LPC1768 with ARM, GCC_ARM and IAR, LPC11U24 with ARM.
2013-11-08 15:38:23 +02:00
Andreas Rebert 83d4facb0e Added support for GCC_ARM 2013-10-31 13:25:58 +01:00
Bogdan Marinescu 1bb844c842 Added macro definition from command line
build_api.py now support macros defined at compile time, so build.py and
make.py can be used like this:

$ make.py/build.py <options> -DMACRO1 -DMACRO2=VALUE2 ...
2013-10-21 11:11:06 +03:00
Bogdan Marinescu 62f1ac097d Integrated support for Red Lizzard's "goanna" static analysis tool
Initial support (activate with "-o analyze"). Not working well with IAR
for now (partially because of a bug in goannac++ which was reported to
Red Lizzard).
2013-10-14 17:32:41 +03:00
Bogdan Marinescu f813bb9382 Fix GCC interpretation of dependency file
The dependency file generated by GCC might contain more than one
dependency listed on a single line, which wasn't taken into account by the
GCC dependency fille interpreter. This commit fixes this issue.
2013-09-05 15:29:13 +03:00
dinau 2b57e648a4 Fixed: [GCC_ARM : LPC1768] Issue ignored the linker option for _print_float and _scanf_float. 2013-08-31 11:34:53 +09:00
Adam Green 25a332d8f1 Updates to GCC warning level flags
In gcc4mbed, I have been running with "-Wall -Wextra" and then
disabling a couple of noisy warnings that result.  In particular, I
disable the unused-parameter and missing-field-initializers warnings.
The first commonly goes off for implementation of virtual methods or
other overridable functions where not all parameters are required for
every override.  I don't find the second warning to be all that useful
anyway since missing structure field initializers will be set to 0
according to the C language specification.  The RTOS code uses this
language feature and I see no reason that it shouldn't :)
2013-08-22 18:09:14 -07:00
Bogdan Marinescu a7628510f5 Added '-fno-delete-null-pointer-checks' to GCC compilation options
From Adam Green, regarding using -fno-delete-null-pointer-checks:

"I would argue that on Cortex-M processors, it is more dangerous to not
have it.  The compiler can actually generate incorrect code because it is
making an incorrect assumption (that reads from a NULL pointer will throw
an exception.)   The GCC for ARM developers should actually never enable
the delete-null-pointer-checks optimization for Cortex-M processors.
There is a comment in the GCC manual that indicates, "Some targets,
especially embedded ones, disable this option [delete-null-pointer-checks]
at all levels."  Not having this flag is pretty risky on the current
versions of GCC_ARM.  Just to clarify, this flag doesn't enable an
optimization...it disables an unsafe optimization."
2013-08-16 12:26:50 +03:00
Bogdan Marinescu 44c43e6e38 Restore C++98 compilation mode
Also, remove the line that required C++11 from UDPSocket.h
2013-08-15 14:09:20 +03:00
pbrier c0fdbede02 Compile network and RTOS with GCC_ARM 2013-08-14 22:34:33 +02:00
Bogdan Marinescu 7b9081b59c Add support for calling a function before main()
Also added a test for this feature (MBED_A22).
Fixes PRMBED-906.
2013-08-07 14:51:30 +03:00
Emilio Monti 3c6e2ab67a Add license to workspace_tools files 2013-08-06 14:38:00 +01:00
Joe Turner bd7554f6aa Add debug-info option 2013-07-03 13:20:08 +01:00
Emilio Monti df9e56f638 Fix option append 2013-07-02 17:04:40 +01:00
Emilio Monti cd669a943f Add build options
Implement "save-asm" option
2013-07-02 16:43:29 +01:00
Emilio Monti 1c98308182 Update default CodeWarrior paths 2013-06-25 10:23:28 +01:00
Emilio Monti 984ba4b113 Refactor the build system:
* add sets of TARGET and TOOLCHAIN "labels"
2013-06-24 14:32:08 +01:00