Repository navigation
v2.3.1 — LLVM 20 Regression Test Suite Complete
What's Fixed
All 162 non-skipped regression tests now pass across all three import test suites (no_optimization, basic_optimization, aggressive_optimization). Previously 40+ tests were failing due to AR output differences between LLVM 14 and LLVM 20 that weren't caught locally because the system ikos-import was built against LLVM 14.
Fixed
no_optimization/— 37 files: concrete scalar alloca types (allocate opaque→allocate si32/float/etc.), bitcast elimination cascades, struct layout resolution, SSA renumberingbasic_optimization/— 3 files: bitfield signedness (ui16→si16), struct alloca types, PHI node renumberingaggressive_optimization/— 1 file: vtable bitcast chain
Added
script/regen_checks.py— auto-regenerates; CHECK:lines in.lltest files from actualikos-importoutput. Use this instead of hand-editing after any future LLVM upgrade.doc/LLVM20_AR_CHANGES.md— reference guide covering every AR output behavioral change between LLVM 14 and LLVM 20, with before/after examples and a troubleshooting checklist.- README — new "Working with the Test Suite" section linking to the above.
Full Changelog
See CHANGELOG.md for complete details.
Full diff: v2.3.0...v2.3.1