Conversation
LLGo baseline benchmarks
Program measurements
Core language and compiler benchmarks
Compared with |
cpunion
force-pushed
the
codex/windows-r9-native-toolchain-20260827
branch
from
August 29, 2026 12:42
d813a25 to
0b66e0c
Compare
cpunion
force-pushed
the
codex/windows-r10-msvc-arch-20260829
branch
from
August 29, 2026 14:21
91ac3c4 to
83296dc
Compare
cpunion
changed the base branch from
codex/windows-r9-native-toolchain-20260827
to
main
August 29, 2026 14:21
cpunion
changed the base branch from
main
to
codex/windows-r9-native-toolchain-20260827
August 29, 2026 14:22
cpunion
force-pushed
the
codex/windows-r10-msvc-arch-20260829
branch
from
August 30, 2026 00:02
c0db0ee to
25e15b6
Compare
cpunion
changed the base branch from
codex/windows-r9-native-toolchain-20260827
to
main
August 30, 2026 00:02
cpunion
changed the base branch from
main
to
codex/windows-r9-main-base-20260829
August 30, 2026 00:05
cpunion
force-pushed
the
codex/windows-r10-msvc-arch-20260829
branch
from
August 30, 2026 02:50
3a0312b to
25e15b6
Compare
cpunion
changed the base branch from
codex/windows-r9-main-base-20260829
to
main
August 30, 2026 02:56
cpunion
force-pushed
the
codex/windows-r10-msvc-arch-20260829
branch
from
August 30, 2026 07:10
25e15b6 to
8f9cd1d
Compare
cpunion
force-pushed
the
codex/windows-r10-msvc-arch-20260829
branch
from
August 30, 2026 13:53
8f9cd1d to
416b083
Compare
Owner
Author
|
Replaced by xgo-dev#2454 after rebasing R10 onto current main and integrating the released plan9asm v0.5.1 x87 configuration. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Depends on xgo-dev/plan9asm#23.
Part of xgo-dev#2325.
This draft qualifies native Windows ARM64 and WoW64 386 MSVC targets while keeping the LLGo compiler, LLVM, LLDB, pkg-config, and other host tools on x64.
GOOS=windows GOARCH=...remains authoritative: LLGo selects the canonical target triple and the architecture-matched Visual Studio, vcpkg, compiler-rt, Python, runtime/FFI, language, demo, benchmark, and scheduled GOROOT coverage. Explicit compiler and linker commands remain architecture-checked.The implementation keeps three concerns separate:
GOARCHforamd64,arm64, and386;Windows/386 execution exposed and fixed target-specific compatibility gaps:
int64andfloat64; Go callers and callees now share the same physical LLVM layout.CONTEXTlayout while retaining the existing Goruntime/pprofAPI.Go 1.27 additionally moved the Windows ARM64 processor-feature query behind
internal/cpu.isProcessorFeaturePresent. LLGo now supplies the same runtime hook as the official implementation through a thin Win32IsProcessorFeaturePresentcall, without adding a C wrapper.The initial branch replaced five groups of Go 386 assembly with LLGo source patches. Those patches are no longer present. With plan9asm #23 (pinned to its current reviewed head), LLGo compiles the official Go
internal/bytealg,internal/chacha8rand,internal/runtime/atomic,internal/runtime/syscall/windows, andmathassembly. Only register-ABI metadata for two localinternal/bytealghelpers remains LLGo-specific.CI changes preserve main's current Go 1.20–1.27 coverage and add ARM64/386 rows to the existing Windows matrices. The compiler is always built with the current toolchain before activating a target architecture. Benchmark jobs compare base and head on the same runner; scheduled GOROOT reporting includes Windows MSVC amd64, ARM64, 386, and MinGW amd64 without multiplying old-toolchain Windows lanes.
Local validation on the rebased revision:
go test ./ssa ./internal/cabi,go test ./internal/plan9asmwith the plan9asm workspace, andgo test -timeout=20m ./cl(621.6 s)internal/buildtests; the workspace-discovery test was also rerun withGOWORKunset as required by that testtest/goexecution with Go 1.27 and plan9asm feat(coro): add runnable stackless scheduler and panic prototype #23 current headruntime/pprofCPU start/stop, duplicate-start, goroutine sampling, and fault-recovery testshash/crc32,math/bits,math/rand/v2, and fullruntime/pprofsuites before the final rebase; the affected profiling cases were rerun after itIMAGE_FILE_MACHINE_I386andIMAGE_FILE_MACHINE_ARM64and executed in the Windows 11 ARM64 VMThe fresh GitHub Actions matrix, Codecov result, and architecture-specific benchmark comparison are required before this PR is marked ready for review.