summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/AMDGPU/AMDGPUCallingConv.td
diff options
context:
space:
mode:
authorMatt Arsenault <Matthew.Arsenault@amd.com>2017-08-01 19:54:18 +0000
committerMatt Arsenault <Matthew.Arsenault@amd.com>2017-08-01 19:54:18 +0000
commitb62a4eb5241969e79ca244295611fb8e9a2f3426 (patch)
treeb92db3327c2abd411a7e6af2a627bea1c0c9aa83 /llvm/lib/Target/AMDGPU/AMDGPUCallingConv.td
parent253be33610119a7145826e0b192f7d0b6cfe198b (diff)
downloadbcm5719-llvm-b62a4eb5241969e79ca244295611fb8e9a2f3426.tar.gz
bcm5719-llvm-b62a4eb5241969e79ca244295611fb8e9a2f3426.zip
AMDGPU: Initial implementation of calls
Includes a hack to fix the type selected for the GlobalAddress of the function, which will be fixed by changing the default datalayout to use generic pointers for 0. llvm-svn: 309732
Diffstat (limited to 'llvm/lib/Target/AMDGPU/AMDGPUCallingConv.td')
-rw-r--r--llvm/lib/Target/AMDGPU/AMDGPUCallingConv.td4
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/Target/AMDGPU/AMDGPUCallingConv.td b/llvm/lib/Target/AMDGPU/AMDGPUCallingConv.td
index 4bef7a89bfe..c1c066fd140 100644
--- a/llvm/lib/Target/AMDGPU/AMDGPUCallingConv.td
+++ b/llvm/lib/Target/AMDGPU/AMDGPUCallingConv.td
@@ -163,6 +163,10 @@ def CC_AMDGPU : CallingConv<[
"AMDGPUSubtarget::SOUTHERN_ISLANDS",
CCDelegateTo<CC_SI>>,
CCIf<"static_cast<const AMDGPUSubtarget&>"
+ "(State.getMachineFunction().getSubtarget()).getGeneration() >= "
+ "AMDGPUSubtarget::SOUTHERN_ISLANDS && State.getCallingConv() == CallingConv::C",
+ CCDelegateTo<CC_AMDGPU_Func>>,
+ CCIf<"static_cast<const AMDGPUSubtarget&>"
"(State.getMachineFunction().getSubtarget()).getGeneration() < "
"AMDGPUSubtarget::SOUTHERN_ISLANDS",
CCDelegateTo<CC_R600>>
OpenPOWER on IntegriCloud