
This makes sure that the LLVM target features match the one generated by Clang: - This fixes a bug introduced when setting the target CPU for all targets: Cortex-M4 would now start using floating point operations while they were disabled in C. - This will make it possible in the future to inline C functions in Go and vice versa. This will need some more work though. There is a code size impact. Cortex-M4 targets are increased slightly in binary size while Cortex-M0 targets tend to be reduced a little bit. Other than that, there is little impact.
23 строки
598 Б
JSON
23 строки
598 Б
JSON
{
|
|
"inherits": ["riscv32"],
|
|
"features": "+c,+m,-relax,-save-restore",
|
|
"build-tags": ["esp32c3", "esp"],
|
|
"serial": "uart",
|
|
"rtlib": "compiler-rt",
|
|
"libc": "picolibc",
|
|
"cflags": [
|
|
"-march=rv32imc"
|
|
],
|
|
"linkerscript": "targets/esp32c3.ld",
|
|
"extra-files": [
|
|
"src/device/esp/esp32c3.S"
|
|
],
|
|
"binary-format": "esp32c3",
|
|
"flash-command": "esptool.py --chip=esp32c3 --port {port} write_flash 0x0 {bin}",
|
|
"serial-port": ["acm:303a:1001"],
|
|
"openocd-interface": "esp_usb_jtag",
|
|
"openocd-target": "esp32c3",
|
|
"openocd-commands": ["gdb_memory_map disable"],
|
|
"gdb": ["riscv32-esp-elf-gdb"]
|
|
}
|
|
|