
Now that we use LLVM 9, RISC-V support in LLVM has far fewer bugs and we can avoid the GNU toolchain. * replace GNU linker with lld * replace GCC with clang Additionally, RISC-V was promoted to stable so it can be enabled by default in CI.
26 строки
512 Б
JSON
26 строки
512 Б
JSON
{
|
|
"llvm-target": "riscv32--none",
|
|
"goos": "linux",
|
|
"goarch": "arm",
|
|
"build-tags": ["tinygo.riscv", "baremetal", "linux", "arm"],
|
|
"gc": "conservative",
|
|
"compiler": "clang",
|
|
"linker": "ld.lld",
|
|
"cflags": [
|
|
"--target=riscv32--none",
|
|
"-march=rv32imac",
|
|
"-mabi=ilp32",
|
|
"-Os",
|
|
"-Werror",
|
|
"-nostdinc",
|
|
"-fno-exceptions", "-fno-unwind-tables",
|
|
"-ffunction-sections", "-fdata-sections"
|
|
],
|
|
"ldflags": [
|
|
"-melf32lriscv",
|
|
"--gc-sections"
|
|
],
|
|
"extra-files": [
|
|
"src/device/riscv/start.S"
|
|
]
|
|
}
|