llvm
44f1fa90 - [compiler-rt][msan] Add MSan support for Hexagon (Linux) (#189124)

Commit
1 day ago
[compiler-rt][msan] Add MSan support for Hexagon (Linux) (#189124) Add the runtime infrastructure for MemorySanitizer on Hexagon Linux. Hexagon is 32-bit, so the shadow memory layout uses a compact XOR-based mapping that fits within the lower 3GB of address space: 0x00000000 - 0x10000000 APP-1 (256MB, program text/data/heap) 0x10000000 - 0x20000000 ALLOCATOR (256MB) 0x20000000 - 0x40000000 SHADOW-1 (512MB, covers APP-1 + ALLOCATOR) 0x40000000 - 0x50000000 APP-2 (256MB, shared libs + stack) 0x60000000 - 0x70000000 SHADOW-2 (256MB, covers APP-2) 0x70000000 - 0x90000000 ORIGIN-1 (512MB) 0xB0000000 - 0xC0000000 ORIGIN-2 (256MB) MEM_TO_SHADOW uses XOR 0x20000000, and SHADOW_TO_ORIGIN adds 0x50000000. The dual-APP layout accommodates QEMU user-mode, which places shared libraries and the stack at 0x40000000. The allocator uses SizeClassAllocator32 with a 256MB region at 0x10000000, and kMaxAllowedMallocSize is set to 1GB consistent with other 32-bit targets.
Author
Parents
Loading