mirror of
https://github.com/tinygo-org/tinygo.git
synced 2026-08-10 22:13:39 +00:00
targets: minimal uefi target support (#5452)
* runtime: split baremetal memory setup * runtime: extract Windows PE globals scan helper * compileopts,builder: add target linker flavor override * machine,runtime,targets: add minimal uefi-amd64 target * runtime,examples: add clean UEFI exit path test * machine,x86: fix amd64 ABI stack handling * machine/uefi: add CHAR16 conversion helpers * machine/uefi: add loaded image protocol support * runtime: add UEFI PE globals support * machine,runtime,x86: add UEFI time and text output support * machine,runtime,x86: add UEFI text and time support * machine,runtime,examples: add UEFI text input support * machine,examples: add UEFI graphics output support * add rest of STOP methods (direct UEFI ABI only) * runtime: fix UEFI sleep tick conversion * machine/uefi: make text input waits cooperative * address TestClangAttributes/uefi-amd64 failure * address TestConfigLinkerFlavor bug * uefi: move raw bindings to device package * strip down implementation to bare minimum * amd64: rename x86 package * do git restore upstream/dev for src/net * add smoketest for uefi-amd64; add required zeroSizeAllocPtr constant * address PR issues: remove unused files; make putchar() insert '\r' before '\n' * swap lines around
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
{
|
||||
"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": "none",
|
||||
"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"
|
||||
],
|
||||
"gdb": ["gdb-multiarch", "gdb"]
|
||||
}
|
||||
Reference in New Issue
Block a user