AMDGPU: Fix DAG divergence for implicit function arguments
authorMatt Arsenault <Matthew.Arsenault@amd.com>
Wed, 13 May 2020 17:24:32 +0000 (13:24 -0400)
committerMatt Arsenault <Matthew.Arsenault@amd.com>
Tue, 19 May 2020 22:11:34 +0000 (18:11 -0400)
commit074b802654f060be71b210b70f0095d2d2fb8b45
treeb55a64c4d4976899f158844ef105a9b5f44a96e1
parent61813b8069c638079d3f6e91144a197d633a7f18
AMDGPU: Fix DAG divergence for implicit function arguments

This should be directly implied from the register class, and there's
no need to special case live ins here. This was getting the wrong
answer for the queue ptr argument in callable functions, since it's
not an explicit IR argument and is always uniform.

Fixes not using scalar loads for the aperture in addrspacecast
lowering, and any other places that use implicit SGPR arguments.
llvm/lib/Target/AMDGPU/SIISelLowering.cpp
llvm/test/CodeGen/AMDGPU/addrspacecast.ll
llvm/test/CodeGen/AMDGPU/callee-special-input-sgprs-fixed-abi.ll
llvm/test/CodeGen/AMDGPU/callee-special-input-sgprs.ll
llvm/test/CodeGen/AMDGPU/llvm.amdgcn.implicitarg.ptr.ll