
This results in smaller and likely more efficient code. It does require some architecture specific code for each architecture, but I've kept the amount of code as small as possible.
35 строки
836 Б
JSON
35 строки
836 Б
JSON
{
|
|
"llvm-target": "aarch64",
|
|
"build-tags": ["nintendoswitch", "arm64"],
|
|
"scheduler": "tasks",
|
|
"goos": "linux",
|
|
"goarch": "arm64",
|
|
"linker": "ld.lld",
|
|
"rtlib": "compiler-rt",
|
|
"libc": "picolibc",
|
|
"gc": "conservative",
|
|
"relocation-model": "pic",
|
|
"cpu": "cortex-a57",
|
|
"default-stack-size": 2048,
|
|
"cflags": [
|
|
"-target", "aarch64-unknown-none",
|
|
"-mcpu=cortex-a57",
|
|
"-fPIE",
|
|
"-Werror",
|
|
"-fshort-enums",
|
|
"-fomit-frame-pointer",
|
|
"-fno-exceptions", "-fno-unwind-tables",
|
|
"-ffunction-sections", "-fdata-sections"
|
|
],
|
|
"ldflags": [
|
|
"-pie",
|
|
"-z", "notext"
|
|
],
|
|
"linkerscript": "targets/nintendoswitch.ld",
|
|
"extra-files": [
|
|
"targets/nintendoswitch.s",
|
|
"src/internal/task/task_stack_arm64.S",
|
|
"src/runtime/gc_arm64.S",
|
|
"src/runtime/runtime_nintendoswitch.s"
|
|
]
|
|
}
|