
This is for consistency with Clang, which always adds a CPU flag even if it's not specified in CFLAGS. This commit also adds some tests to make sure the Clang target-cpu matches the CPU property in the JSON files. This does have an effect on the generated binaries. The effect is very small though: on average just 0.2% increase in binary size, apparently because Cortex-M3 and Cortex-M4 are compiled a bit differently. However, when rebased on top of https://github.com/tinygo-org/tinygo/pull/2218 (minsize), the difference drops to -0.1% (a slight decrease on average).
17 строки
472 Б
JSON
17 строки
472 Б
JSON
{
|
|
"inherits": ["xtensa"],
|
|
"cpu": "esp8266",
|
|
"build-tags": ["esp8266", "esp"],
|
|
"scheduler": "tasks",
|
|
"linker": "xtensa-esp32-elf-ld",
|
|
"default-stack-size": 2048,
|
|
"rtlib": "compiler-rt",
|
|
"libc": "picolibc",
|
|
"linkerscript": "targets/esp8266.ld",
|
|
"extra-files": [
|
|
"src/device/esp/esp8266.S",
|
|
"src/internal/task/task_stack_esp8266.S"
|
|
],
|
|
"binary-format": "esp8266",
|
|
"flash-command": "esptool.py --chip=esp8266 --port {port} write_flash 0x00000 {bin} -fm qio"
|
|
}
|