summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorTom Stellard <thomas.stellard@amd.com>2014-01-22 21:55:41 +0000
committerTom Stellard <thomas.stellard@amd.com>2014-01-22 21:55:41 +0000
commitafbb697e0b67209e15bb50a3bb737c3b71035c91 (patch)
tree13c930f29eb05d2ce27f726482aaa0de1d32f556 /llvm/lib
parent8c347b024ef2b91a6a4b7d48b1bea6e451ce37fe (diff)
downloadbcm5719-llvm-afbb697e0b67209e15bb50a3bb737c3b71035c91.tar.gz
bcm5719-llvm-afbb697e0b67209e15bb50a3bb737c3b71035c91.zip
R600: CF_PUSH is the same on Evergreen and Cayman
reviewed-by: Vincent Lejeune <vljn at ovi.com> llvm-svn: 199839
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/Target/R600/R600ControlFlowFinalizer.cpp2
-rw-r--r--llvm/lib/Target/R600/R600Instructions.td7
2 files changed, 5 insertions, 4 deletions
diff --git a/llvm/lib/Target/R600/R600ControlFlowFinalizer.cpp b/llvm/lib/Target/R600/R600ControlFlowFinalizer.cpp
index ec39e097ba9..56dc90eaa11 100644
--- a/llvm/lib/Target/R600/R600ControlFlowFinalizer.cpp
+++ b/llvm/lib/Target/R600/R600ControlFlowFinalizer.cpp
@@ -372,7 +372,7 @@ public:
MaxStack = std::max(MaxStack, CurrentStack);
HasPush = true;
if (ST.hasCaymanISA() && CurrentLoopDepth > 1) {
- BuildMI(MBB, MI, MBB.findDebugLoc(MI), TII->get(AMDGPU::CF_PUSH_CM))
+ BuildMI(MBB, MI, MBB.findDebugLoc(MI), TII->get(AMDGPU::CF_PUSH_EG))
.addImm(CfCount + 1)
.addImm(1);
MI->setDesc(TII->get(AMDGPU::CF_ALU));
diff --git a/llvm/lib/Target/R600/R600Instructions.td b/llvm/lib/Target/R600/R600Instructions.td
index c135d493296..65bc597c34a 100644
--- a/llvm/lib/Target/R600/R600Instructions.td
+++ b/llvm/lib/Target/R600/R600Instructions.td
@@ -1794,6 +1794,10 @@ def LDS_USHORT_READ_RET : R600_LDS_1A <0x39, "LDS_USHORT_READ_RET",
"JUMP @$ADDR POP:$POP_COUNT"> {
let COUNT = 0;
}
+ def CF_PUSH_EG : CF_CLAUSE_EG<11, (ins i32imm:$ADDR, i32imm:$POP_COUNT),
+ "PUSH @$ADDR POP:$POP_COUNT"> {
+ let COUNT = 0;
+ }
def CF_ELSE_EG : CF_CLAUSE_EG<13, (ins i32imm:$ADDR, i32imm:$POP_COUNT),
"ELSE @$ADDR POP:$POP_COUNT"> {
let COUNT = 0;
@@ -1870,9 +1874,6 @@ def : Pat <
let COUNT = 0;
}
- def CF_PUSH_CM : CF_CLAUSE_EG<11, (ins i32imm:$ADDR, i32imm:$POP_COUNT), "PUSH @$ADDR POP:$POP_COUNT"> {
- let COUNT = 0;
- }
def : Pat<(fsqrt f32:$src), (MUL R600_Reg32:$src, (RECIPSQRT_CLAMPED_cm $src))>;
OpenPOWER on IntegriCloud