Skip to content

Update C++ IR fixtures for LLVM 21 parser#184

Closed
cjsrxzdyzds wants to merge 3 commits intoSVF-tools:masterfrom
cjsrxzdyzds:llvm21-parser-fixtures
Closed

Update C++ IR fixtures for LLVM 21 parser#184
cjsrxzdyzds wants to merge 3 commits intoSVF-tools:masterfrom
cjsrxzdyzds:llvm21-parser-fixtures

Conversation

@cjsrxzdyzds
Copy link
Copy Markdown

@cjsrxzdyzds cjsrxzdyzds commented Apr 21, 2026

Summary

LLVM 21 rejects several older textual IR forms used by the checked-in C++ .bc fixtures in the SVF Test-Suite.

This PR updates those fixtures to LLVM 21-compatible textual IR so the suite runs cleanly on a clean LLVM 21 host.

What changed

  • rewrite stale textual GEP forms in test_cases_bc/basic_cpp_tests/*.bc
  • remove obsolete inrange operand forms rejected by LLVM 21's IR parser

These are mechanical fixture updates only. No semantic change to the tests is intended.

Validation

Validated together with the corresponding SVF LLVM 21 changes:

  • clean-host standalone Test-Suite run: 1528 / 1528 passed

Commit

  • e24103a Update C++ IR fixtures for LLVM 21 parser

@cjsrxzdyzds cjsrxzdyzds marked this pull request as ready for review April 21, 2026 04:44
@yuleisui
Copy link
Copy Markdown
Collaborator

Thanks for the contribution.

It is suggested that we generated bc instead of uploading them. Could you change this part in github action, so bc can be genreated under the corresponding llvm-21 version.

Once the test-suite is updated, I could review and merge your pull request at SVF. We may not need an additional llvm21-ci.yml if this test-suite generates the correct bc under llvm-21.

@cjsrxzdyzds
Copy link
Copy Markdown
Author

I updated this PR based on your suggestion.

the workflow on this branch now installs LLVM 21.1.0 and generates the .bc files in CI under that toolchain, instead of relying on the old LLVM 16 setup. I also enabled the workflow to run on pull requests so this branch can show CI directly.

relevant commits:

  • 659e299: switch CI bitcode generation to LLVM 21.1.0
  • 58f95cb: run Test-Suite CI on pull requests

this should allow SVF PR #1813 to be verified against the updated Test-Suite branch

@yuleisui
Copy link
Copy Markdown
Collaborator

It

I updated this PR based on your suggestion.

the workflow on this branch now installs LLVM 21.1.0 and generates the .bc files in CI under that toolchain, instead of relying on the old LLVM 16 setup. I also enabled the workflow to run on pull requests so this branch can show CI directly.

relevant commits:

  • 659e299: switch CI bitcode generation to LLVM 21.1.0
  • 58f95cb: run Test-Suite CI on pull requests

this should allow SVF PR #1813 to be verified against the updated Test-Suite branch

Thanks and @bjjwwang has done this change here 91519b7. It looks to me settled.

It would be good to test and update your SVF's llvm-21 pull request so I could merge later

@cjsrxzdyzds
Copy link
Copy Markdown
Author

Closing this PR.
the needed work was handled from the SVF side while validating against the latest upstream Test-Suite, so this Test-Suite PR is no longer the right path forward. the related SVF changes are now carried in the updated SVF PR instead.

@cjsrxzdyzds cjsrxzdyzds deleted the llvm21-parser-fixtures branch April 27, 2026 03:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants