]> granicus.if.org Git - llvm/commit
AMDGPU/GlobalISel: Handle most function return types
authorMatt Arsenault <Matthew.Arsenault@amd.com>
Fri, 26 Jul 2019 02:36:05 +0000 (02:36 +0000)
committerMatt Arsenault <Matthew.Arsenault@amd.com>
Fri, 26 Jul 2019 02:36:05 +0000 (02:36 +0000)
commit2fa8d95cee08b66efe5cb20784f9de2e468eaf8f
treed189edb09d4713a958e00e238b440a3ca64e02c0
parentec343b53aa01d476140db6f7a36aadbeb4e5a176
AMDGPU/GlobalISel: Handle most function return types

handleAssignments gives up pretty easily on structs, and i8 values for
some reason. The other case that doesn't work is when an implicit sret
needs to be inserted if the return size exceeds the number of return
registers.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@367082 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/AMDGPU/AMDGPUCallLowering.cpp
lib/Target/AMDGPU/AMDGPUCallLowering.h
test/CodeGen/AMDGPU/GlobalISel/function-returns.ll [new file with mode: 0644]
test/CodeGen/AMDGPU/GlobalISel/irtranslator-amdgpu_vs.ll
test/CodeGen/AMDGPU/GlobalISel/irtranslator-function-args.ll
test/CodeGen/AMDGPU/GlobalISel/ret.ll [new file with mode: 0644]
test/CodeGen/AMDGPU/ret.ll