fix: restore GC root dominance scheduled gate - #9929
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Team Run ID: 📒 Files selected for processing (7)
Included review availability: Your plan provides up to 8 included reviews per hour; 7 remain after this review. 📝 WalkthroughWalkthroughThe change improves GC root dominance tooling for quoted LLVM labels, centralizes statepoint pass pipeline discovery, and updates dependency-scale corpus validation for current compiler output and emitted module names. ChangesGC Root Dominance Validation
Estimated code review effort: 3 (Moderate) | ~20 minutes Merge Risk: ⚪ Minimal · up to This restores scheduled GC root-dominance checks by handling quoted LLVM labels, reading the production statepoint pipeline consistently, and updating corpus expectations for current compiler output. No concrete merge-blocking risk remains. Suggested reviewers: 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
Full details: Docstring CoverageExplanation Docstring coverage is 38.46% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 13 functions across 5 files. (2 skipped: 2 unsupported.)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Landed on |
The scheduled GC root-dominance workflow stopped before it could analyze current compiler output: the dependency corpus retained all 81 modules and about 14,000 root stores after compiler pruning reduced its function population to 5,615-5,920, while both native corpus producers still scraped
STATEPOINT_REWRITE_PASSESfrom the pre-splitinprocess.rs. Once native emission was restored, LLVM 22 also exposed quoted inlined block labels that the checker refused to parse.This change:
perry-codegen/src, and makes both native corpus producers use it;LLVM_SYS_221_PREFIXbefore an unversioned Homebrew LLVM in the dependency-native producer;Validation:
scripts/run_lint_gates.sh: all 66 local gates passed, 2 CI-expression rows skipped; workspace warnings check and Clippy passed.Closes #9925
Summary by CodeRabbit
Bug Fixes
Tests
Chores