X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=lib%2FTarget%2FR600%2FAMDGPUCallingConv.td;h=6ffa7a08358333e57a96f82a4f0dea1c314ca670;hb=344593ce6c914b3576328cf6bdf790cd2ea083af;hp=3865c621b5b41e70a71d1fb2e5ed21dfe3678e34;hpb=98b357e1cd0d41108e6011725dad6a6dbf208a38;p=oota-llvm.git diff --git a/lib/Target/R600/AMDGPUCallingConv.td b/lib/Target/R600/AMDGPUCallingConv.td index 3865c621b5b..6ffa7a08358 100644 --- a/lib/Target/R600/AMDGPUCallingConv.td +++ b/lib/Target/R600/AMDGPUCallingConv.td @@ -19,12 +19,13 @@ def CC_SI : CallingConv<[ CCIfInReg>>, CCIfInReg>>, CCIfNotInReg>> + ]>>>, + + CCIfByVal>> ]>; +// Calling convention for R600 +def CC_R600 : CallingConv<[ + CCIfInReg>> +]>; + // Calling convention for compute kernels def CC_AMDGPU_Kernel : CallingConv<[ - CCIfType<[v4i32, v4f32], CCAssignToStack <16, 16>>, - CCIfType<[i64, f64], CCAssignToStack < 8, 8>>, - CCIfType<[i32, f32], CCAssignToStack < 4, 4>>, - CCIfType<[i16], CCAssignToStack < 2, 4>>, - CCIfType<[i8], CCAssignToStack < 1, 4>> + CCCustom<"allocateStack"> ]>; def CC_AMDGPU : CallingConv<[ - CCIf<"State.getTarget().getSubtarget().getGeneration() == " - "AMDGPUSubtarget::SOUTHERN_ISLANDS && " - "State.getMachineFunction().getInfo()->"# - "ShaderType == ShaderType::COMPUTE", CCDelegateTo>, - CCIf<"State.getTarget().getSubtarget().getGeneration() < " - "AMDGPUSubtarget::SOUTHERN_ISLANDS && " - "State.getMachineFunction().getInfo()->" - "ShaderType == ShaderType::COMPUTE", CCDelegateTo>, - CCIf<"State.getTarget().getSubtarget()"# - ".getGeneration() == AMDGPUSubtarget::SOUTHERN_ISLANDS", CCDelegateTo> + CCIf<"static_cast" + "(State.getMachineFunction().getSubtarget()).getGeneration() >=" + "AMDGPUSubtarget::SOUTHERN_ISLANDS && " + "State.getMachineFunction().getInfo()" + "->getShaderType() == ShaderType::COMPUTE", + CCDelegateTo>, + CCIf<"static_cast" + "(State.getMachineFunction().getSubtarget()).getGeneration() < " + "AMDGPUSubtarget::SOUTHERN_ISLANDS && " + "State.getMachineFunction().getInfo()" + "->getShaderType() == ShaderType::COMPUTE", + CCDelegateTo>, + CCIf<"static_cast" + "(State.getMachineFunction().getSubtarget()).getGeneration() >= " + "AMDGPUSubtarget::SOUTHERN_ISLANDS", + CCDelegateTo>, + CCIf<"static_cast" + "(State.getMachineFunction().getSubtarget()).getGeneration() < " + "AMDGPUSubtarget::SOUTHERN_ISLANDS", + CCDelegateTo> ]>;