[llvm] [DA] Add initial support for monotonicity check (PR #162280)

Nikita Popov via llvm-commits llvm-commits at lists.llvm.org
Fri Oct 17 12:24:21 PDT 2025


nikic wrote:

You are conflating the physical machine behavior with the abstract machine model. As far as LLVM is concerned, doing an access at address `p+(1<<58)` is UB, because you do not have provenance to access that address. The fact that, on the underlying hardware, this address maps to the same memory is irrelevant, in the same way that an out of bounds array access is UB even if another object just so happens to be allocated at that address and the access does not actually trap.

Using TBI in a way that is compatible with LLVM's memory model is actually quite tricky (*), but I don't think this is really relevant to what this PR is doing.

(*) One way to model this is to destroy the old provenance and allocate a fresh one whenever the TBI bits change. This effectively means that from an AM perspective, the object only ever lives at a single location at any given time.

https://github.com/llvm/llvm-project/pull/162280


More information about the llvm-commits mailing list