diff --git a/builder/library.go b/builder/library.go index d85e4d36..7bb506c7 100644 --- a/builder/library.go +++ b/builder/library.go @@ -69,7 +69,7 @@ func (l *Library) Load(target string) (path string, err error) { // Precalculate the flags to the compiler invocation. args := append(l.cflags(), "-c", "-Oz", "-g", "-ffunction-sections", "-fdata-sections", "-Wno-macro-redefined", "--target="+target, "-fdebug-prefix-map="+dir+"="+remapDir) if strings.HasPrefix(target, "arm") || strings.HasPrefix(target, "thumb") { - args = append(args, "-fshort-enums", "-fomit-frame-pointer") + args = append(args, "-fshort-enums", "-fomit-frame-pointer", "-mfloat-abi=soft") } if strings.HasPrefix(target, "riscv32-") { args = append(args, "-march=rv32imac", "-mabi=ilp32", "-fforce-enable-int128") diff --git a/targets/atsamd51g19a.json b/targets/atsamd51g19a.json index 59e2cd58..c3ac8160 100644 --- a/targets/atsamd51g19a.json +++ b/targets/atsamd51g19a.json @@ -1,9 +1,7 @@ { - "inherits": ["cortex-m"], - "llvm-target": "armv7em-none-eabi", + "inherits": ["cortex-m4"], "build-tags": ["atsamd51g19", "atsamd51", "sam"], "cflags": [ - "--target=armv7em-none-eabi", "-Qunused-arguments" ], "linkerscript": "targets/atsamd51.ld", diff --git a/targets/atsamd51j19a.json b/targets/atsamd51j19a.json index 9ddde66f..1bd42a0a 100644 --- a/targets/atsamd51j19a.json +++ b/targets/atsamd51j19a.json @@ -1,9 +1,7 @@ { - "inherits": ["cortex-m"], - "llvm-target": "armv7em-none-eabi", + "inherits": ["cortex-m4"], "build-tags": ["atsamd51j19", "atsamd51", "sam"], "cflags": [ - "--target=armv7em-none-eabi", "-Qunused-arguments" ], "linkerscript": "targets/atsamd51.ld", diff --git a/targets/atsamd51j20a.json b/targets/atsamd51j20a.json index cd8b431c..2089b5d6 100644 --- a/targets/atsamd51j20a.json +++ b/targets/atsamd51j20a.json @@ -1,9 +1,7 @@ { - "inherits": ["cortex-m"], - "llvm-target": "armv7em-none-eabi", + "inherits": ["cortex-m4"], "build-tags": ["sam", "atsamd51", "atsamd51j20", "atsamd51j20a"], "cflags": [ - "--target=armv7em-none-eabi", "-Qunused-arguments" ], "linkerscript": "targets/atsamd51j20a.ld", diff --git a/targets/cortex-m4.json b/targets/cortex-m4.json new file mode 100644 index 00000000..1d5ce2b1 --- /dev/null +++ b/targets/cortex-m4.json @@ -0,0 +1,8 @@ +{ + "inherits": ["cortex-m"], + "llvm-target": "armv7em-none-eabi", + "cflags": [ + "--target=armv7em-none-eabi", + "-mfloat-abi=soft" + ] +} diff --git a/targets/nrf52.json b/targets/nrf52.json index d48c9d33..58f42c29 100644 --- a/targets/nrf52.json +++ b/targets/nrf52.json @@ -1,10 +1,7 @@ { - "inherits": ["cortex-m"], - "llvm-target": "armv7em-none-eabi", + "inherits": ["cortex-m4"], "build-tags": ["nrf52", "nrf"], "cflags": [ - "--target=armv7em-none-eabi", - "-mfloat-abi=soft", "-Qunused-arguments", "-DNRF52832_XXAA", "-I{root}/lib/CMSIS/CMSIS/Include", diff --git a/targets/nrf52840.json b/targets/nrf52840.json index 2c2eff7c..4ab30a20 100644 --- a/targets/nrf52840.json +++ b/targets/nrf52840.json @@ -1,10 +1,7 @@ { - "inherits": ["cortex-m"], - "llvm-target": "armv7em-none-eabi", + "inherits": ["cortex-m4"], "build-tags": ["nrf52840", "nrf"], "cflags": [ - "--target=armv7em-none-eabi", - "-mfloat-abi=soft", "-Qunused-arguments", "-DNRF52840_XXAA", "-I{root}/lib/CMSIS/CMSIS/Include", diff --git a/targets/stm32f4disco.json b/targets/stm32f4disco.json index c142ab23..889d7c51 100644 --- a/targets/stm32f4disco.json +++ b/targets/stm32f4disco.json @@ -1,9 +1,7 @@ { - "inherits": ["cortex-m"], - "llvm-target": "armv7em-none-eabi", + "inherits": ["cortex-m4"], "build-tags": ["stm32f4disco", "stm32f407", "stm32"], "cflags": [ - "--target=armv7em-none-eabi", "-Qunused-arguments" ], "linkerscript": "targets/stm32f407.ld",