Repository navigation
Conversation
Contributor
There was a problem hiding this comment.
Review summary
This PR only adds tests. The runtime fixture in test/go/static_itab_test.go looks correct. Both checksums are right: 45000 in the test, and the closed form in checkStaticItabBenchmark. The typed-nil case is a good addition.
The main problem is in internal/build/static_itab_test.go. The IR assertions run on the per-package IR before O3 or LTO runs, so only the runBinary step actually covers the full-LTO build. I also left a few smaller notes inline.
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
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.
Protect the existing #2704 fix for #3020 in the ordinary
-O3 -lto=fullrelease profile:Build the shared
test/gocase with full LTO, check frontend conversion IR before optimization, and execute checksum, identity and typed-nil assertions. Add conversion and preconstructed-interface benchmarks. The IR assertion guards frontend lowering; executing the final binary checks full-LTO semantics. No compiler/runtime implementation change is needed on current main.Validation: the new regression fails on reported commit
3571c25with aNewItabcall and passes on main96331c1. Regular and dev-tag host tests, standard Go, native LLGo and WASI checks pass; the dev-tag test explicitly uses ordinary release settings.Fixes #3020.