AMDGPU: Don't use struct type for argument layout
authorMatt Arsenault <Matthew.Arsenault@amd.com>
Fri, 29 Jun 2018 17:31:42 +0000 (17:31 +0000)
committerMatt Arsenault <Matthew.Arsenault@amd.com>
Fri, 29 Jun 2018 17:31:42 +0000 (17:31 +0000)
commitf5be3ad7f86c31a0e185250581f53f50c220a524
tree7230382f6d0df405f5e551b1396b1c956a986a09
parent87b107dd698fcf0678e65208d670c04cfa570355
AMDGPU: Don't use struct type for argument layout

This was introducing unnecessary padding after the explicit
arguments, depending on the alignment of the total struct type.
Also has the side effect of avoiding creating an extra GEP for
the offset from the base kernel argument to the explicit kernel
argument offset.

llvm-svn: 335999
llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp
llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
llvm/test/CodeGen/AMDGPU/ctpop.ll
llvm/test/CodeGen/AMDGPU/llvm.amdgcn.implicitarg.ptr.ll
llvm/test/CodeGen/AMDGPU/lower-kernargs.ll
llvm/test/CodeGen/AMDGPU/multi-divergent-exit-region.ll
llvm/test/CodeGen/AMDGPU/sgpr-control-flow.ll
llvm/test/CodeGen/AMDGPU/valu-i1.ll