[llvm] [LangRef] Do not make align imply dereferenceability (PR #158062)
Nikita Popov via llvm-commits
llvm-commits at lists.llvm.org
Sun Sep 14 09:53:52 PDT 2025
nikic wrote:
I think that specific example if compatible with single provenance (with angelic non-determinism). But a variant that executes both branches would not be able to CSE the inttoptrs in a single provenance model.
But anyway, I think that my main point still stands: If you allow a pointer to have multiple provenances, you also need to allow multiple provenances during memory accesses. As long as you do that, the LoopVectorize example would not be affected by this change.
See https://llvm.godbolt.org/z/ej7bvoPY8 for an example transform that merges multiple adjacent stores into a wide unaligned store.
https://github.com/llvm/llvm-project/pull/158062
More information about the llvm-commits
mailing list