Files
tinygo/targets/uefi-amd64.json
T
Matthew Hiles f6e502e121 UEFI: add support for tasks scheduler and make it default (#5553)
* add support for UEFI time and UEFI events; fix STOP \n -> \r\n conversion

* make it so both scheduler=none and scheduler=tasks works

* address pr comments
  - Renamed/shared the amd64 Win64 ABI task stack Go file for both Windows and UEFI.
  - Deleted the duplicate UEFI task stack Go file and old Windows-suffixed Go file.
  - Added task_stack_amd64_windows.S unconditionally to targets/uefi-amd64.json.
  - Removed the UEFI ExtraFiles() special case from compileopts/config.go.
  - Added a scheduler.none tinygo_task_exit stub.
  - Removed the custom UEFI sleep override so normal scheduler sleep queue is used.

* revert back to simpler return value for ExtraFiles()

* create uefi specific tasks_none file

* remove unused sleepSchedulerCustom stuff

* add back the uefi tag

* lib: restore macos-minimal-sdk pointer
2026-08-28 19:48:48 +02:00

43 lines
1.1 KiB
JSON

{
"build-tags": ["uefi", "baremetal", "linux", "amd64"],
"llvm-target": "x86_64-unknown-windows-gnu",
"cpu": "x86-64",
"features": "+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87",
"goos": "linux",
"goarch": "amd64",
"gc": "leaking",
"scheduler": "tasks",
"linker": "ld.lld",
"linker-flavor": "coff",
"libc": "picolibc",
"automatic-stack-size": false,
"default-stack-size": 65536,
"cflags": [
"-Werror",
"-fshort-enums",
"-fomit-frame-pointer",
"-fno-exceptions", "-fno-unwind-tables", "-fno-asynchronous-unwind-tables",
"-ffunction-sections", "-fdata-sections",
"-ffreestanding",
"-fshort-wchar",
"-mno-red-zone"
],
"ldflags": [
"-m", "i386pep",
"--image-base", "0x400000",
"--entry", "efi_main",
"--subsystem", "efi_application",
"-Bdynamic",
"--gc-sections",
"--no-insert-timestamp",
"--no-dynamicbase"
],
"extra-files": [
"src/device/amd64/cpu_amd64.S",
"src/device/uefi/asm_amd64.S",
"src/runtime/asm_amd64_windows.S",
"src/internal/task/task_stack_amd64_windows.S"
],
"gdb": ["gdb-multiarch", "gdb"]
}