[llvm] [llvm] Implement address sanitizer on AIX (2/n) (PR #129926)
Sean Fertile via llvm-commits
llvm-commits at lists.llvm.org
Wed May 7 12:05:26 PDT 2025
================
@@ -1326,7 +1340,11 @@ static bool isUnsupportedAMDGPUAddrspace(Value *Addr) {
Value *AddressSanitizer::memToShadow(Value *Shadow, IRBuilder<> &IRB) {
// Shadow >> scale
- Shadow = IRB.CreateLShr(Shadow, Mapping.Scale);
+ if (TargetTriple.isOSAIX() && TargetTriple.getArch() == Triple::ppc64)
+ Shadow = IRB.CreateLShr(IRB.CreateShl(Shadow, Mapping.HighBits),
----------------
mandlebug wrote:
A large part of the address space is reserved by the OS and not available to the compiler/runtime. The mapping scheme Jake is using is because we have to map the shadow memory into the mmap range from `0x0a00 0000 0000 0000` to `0x0aff ffff ffff ffff`.
https://github.com/llvm/llvm-project/pull/129926
More information about the llvm-commits
mailing list