diff options
author | Matt Arsenault <Matthew.Arsenault@amd.com> | 2018-07-05 17:01:20 +0000 |
---|---|---|
committer | Matt Arsenault <Matthew.Arsenault@amd.com> | 2018-07-05 17:01:20 +0000 |
commit | 29f303799bf211f353f97982a11b8d1dd7f49656 (patch) | |
tree | a5d1596b6eadb948a21073277f423134af88095e /llvm/lib/Target/AMDGPU/AMDGPUCallLowering.h | |
parent | 5ba72667619935ab33f8021e6132b8c7c03aa143 (diff) | |
download | bcm5719-llvm-29f303799bf211f353f97982a11b8d1dd7f49656.tar.gz bcm5719-llvm-29f303799bf211f353f97982a11b8d1dd7f49656.zip |
AMDGPU/GlobalISel: Implement custom kernel arg lowering
Avoid using allocateKernArg / AssignFn. We do not want any
of the type splitting properties of normal calling convention
lowering.
For now at least this exists alongside the IR argument lowering
pass. This is necessary to handle struct padding correctly while
some arguments are still skipped by the IR argument lowering
pass.
llvm-svn: 336373
Diffstat (limited to 'llvm/lib/Target/AMDGPU/AMDGPUCallLowering.h')
-rw-r--r-- | llvm/lib/Target/AMDGPU/AMDGPUCallLowering.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/llvm/lib/Target/AMDGPU/AMDGPUCallLowering.h b/llvm/lib/Target/AMDGPU/AMDGPUCallLowering.h index 251cb7a2c44..f51cb6abbf6 100644 --- a/llvm/lib/Target/AMDGPU/AMDGPUCallLowering.h +++ b/llvm/lib/Target/AMDGPU/AMDGPUCallLowering.h @@ -26,10 +26,11 @@ class AMDGPUCallLowering: public CallLowering { AMDGPUAS AMDGPUASI; unsigned lowerParameterPtr(MachineIRBuilder &MIRBuilder, Type *ParamTy, - unsigned Offset) const; + uint64_t Offset) const; void lowerParameter(MachineIRBuilder &MIRBuilder, Type *ParamTy, - unsigned Offset, unsigned DstReg) const; + uint64_t Offset, unsigned Align, + unsigned DstReg) const; public: AMDGPUCallLowering(const AMDGPUTargetLowering &TLI); |