[llvm] AtomicExpand: Fix creating invalid ptrmask for fat pointers (PR #94955)

Krzysztof Drewniak via llvm-commits llvm-commits at lists.llvm.org
Mon Jun 10 08:28:39 PDT 2024


krzysz00 wrote:

Right, but `ptr addrspace(7)` isn't a fat pointer in the CHERI `[context] (+) [address]` style. The point is to track the offset to a `ptr addrspace(8)` (aka `V#`), which has a base address in its lower 48 bits ... but the hardware doesn't want you operating on that address. You're supposed to construct a 32-bit offset instead, which is entirely separate (for one thing, a V# must be wave-uniform, the offst doesn't need to be).

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


More information about the llvm-commits mailing list