mirror of
https://github.com/tinygo-org/tinygo.git
synced 2026-09-11 23:19:30 +00:00
9c2eafce6f
* 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
16 lines
556 B
Go
16 lines
556 B
Go
//go:build (baremetal || tinygo.wasm) && !uefi
|
|
|
|
package runtime
|
|
|
|
// This file implements findGlobals for all systems where the start and end of
|
|
// the globals section can be found through linker-defined symbols.
|
|
|
|
// findGlobals finds all globals (which are reachable by definition) and calls
|
|
// the callback for them.
|
|
//
|
|
// This implementation marks all globals conservatively and assumes it can use
|
|
// linker-defined symbols for the start and end of the .data section.
|
|
func findGlobals(found func(start, end uintptr)) {
|
|
found(globalsStart, globalsEnd)
|
|
}
|