AMDGPU/R600: Special case addrspacecast lowering for null
authorMatt Arsenault <Matthew.Arsenault@amd.com>
Sat, 17 Dec 2022 21:49:04 +0000 (16:49 -0500)
committerMatt Arsenault <Matthew.Arsenault@amd.com>
Sun, 18 Dec 2022 13:02:45 +0000 (08:02 -0500)
commit17069608940d22cd6266afb948443b11793f0a57
treeafc245dd11f70f60737ff10bfd989ee9034a0164
parent9d6003c764fc4754959e4d7380f7c9d2559299f4
AMDGPU/R600: Special case addrspacecast lowering for null

Due to poor support for non-0 null pointers, clang always emits
addrspacecast from a null flat constant for private/local null. We can
trivially handle this case for old hardware.

Should fix issue 55679.
llvm/lib/Target/AMDGPU/R600ISelLowering.cpp
llvm/lib/Target/AMDGPU/R600ISelLowering.h
llvm/test/CodeGen/AMDGPU/addrspacecast.r600.ll [new file with mode: 0644]