summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target
diff options
context:
space:
mode:
authorMatt Arsenault <Matthew.Arsenault@amd.com>2016-07-12 18:41:03 +0000
committerMatt Arsenault <Matthew.Arsenault@amd.com>2016-07-12 18:41:03 +0000
commit10531d1020b912f079487f897bfdc9cea46a099b (patch)
treef583036bd1e259fc96b28a7aa0cb7715388810e9 /llvm/lib/Target
parent7031867b9b59786ebd23d6defec404c4f8cfe19f (diff)
downloadbcm5719-llvm-10531d1020b912f079487f897bfdc9cea46a099b.tar.gz
bcm5719-llvm-10531d1020b912f079487f897bfdc9cea46a099b.zip
AMDGPU: Set isConvergent on v_cmpx* instructions
No test since these aren't used now, except for one place in a pre-emit pass. llvm-svn: 275200
Diffstat (limited to 'llvm/lib/Target')
-rw-r--r--llvm/lib/Target/AMDGPU/SIInstrInfo.td5
1 files changed, 3 insertions, 2 deletions
diff --git a/llvm/lib/Target/AMDGPU/SIInstrInfo.td b/llvm/lib/Target/AMDGPU/SIInstrInfo.td
index f133eb3270a..253cc32b27e 100644
--- a/llvm/lib/Target/AMDGPU/SIInstrInfo.td
+++ b/llvm/lib/Target/AMDGPU/SIInstrInfo.td
@@ -2303,13 +2303,14 @@ multiclass VOPC_m <vopc op, dag ins, string op_asm, list<dag> pattern,
VOP2_REV<revOpName#"_e32", !eq(revOpName, opName)> {
let Defs = !if(DefExec, [VCC, EXEC], [VCC]);
let SchedRW = sched;
+ let isConvergent = DefExec;
}
let AssemblerPredicates = [isSICI] in {
def _si : VOPC<op.SI, ins, asm, []>,
SIMCInstr <opName#"_e32", SIEncodingFamily.SI> {
let Defs = !if(DefExec, [VCC, EXEC], [VCC]);
- let hasSideEffects = DefExec;
+ let isConvergent = DefExec;
let SchedRW = sched;
let DecoderNamespace = "SICI";
let DisableDecoder = DisableSIDecoder;
@@ -2321,7 +2322,7 @@ multiclass VOPC_m <vopc op, dag ins, string op_asm, list<dag> pattern,
def _vi : VOPC<op.VI, ins, asm, []>,
SIMCInstr <opName#"_e32", SIEncodingFamily.VI> {
let Defs = !if(DefExec, [VCC, EXEC], [VCC]);
- let hasSideEffects = DefExec;
+ let isConvergent = DefExec;
let SchedRW = sched;
let DecoderNamespace = "VI";
let DisableDecoder = DisableVIDecoder;
OpenPOWER on IntegriCloud