llvm-project
9e22a595 - [llvm] Support invariant.load on readonly intrinsics (#205916)

Commit
15 days ago
[llvm] Support invariant.load on readonly intrinsics (#205916) Update passes and analyses that look at invariant.load (ex. MemorySSA) to also consider the possibility that `!invariant.load` may be present on intrinsic calls. Updates the verifier to indicate that `!invariant.load` is only legal for loads and readonly intrinsics (and moves the definition of the metadata out of the definition of `load`). This has not been extended to arbitrary function calls since it's less clear what the semantics of !invariant.load on them would be. Furthermore, extension to read/write intrinsics like memcpy() is planned as a followup. This PR also deletes tests that were pre-committed in https://github.com/llvm/llvm-project/pull/205894 but that become invalid with the verifier changes in this PR AI disclosure: I've reviewed the code but all the actual generation was done by AI. --------- Co-authored-by: Codex <codex@openai.com>
Author
Parents
Loading