summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target
diff options
context:
space:
mode:
authorSam Parker <sam.parker@arm.com>2019-12-11 16:12:58 +0000
committerSam Parker <sam.parker@arm.com>2019-12-13 15:01:08 +0000
commit84593f058b97d6470156e68841cfacee48af39a7 (patch)
tree2f08e07c49b6cab19388f9703901426f7894d895 /llvm/lib/Target
parentd5655c4d2e180b7eadb567ebf7e9a9393dec1355 (diff)
downloadbcm5719-llvm-84593f058b97d6470156e68841cfacee48af39a7.tar.gz
bcm5719-llvm-84593f058b97d6470156e68841cfacee48af39a7.zip
[ARM][MVE] Make VPT invalid for tail predication
We've been marking VPT incompatible instructions as invalid for tail predication too, though this may not strictly be true. VPT are incompatible and, unless its the first predicate def in a loop, they shouldn't be compatible for tail predication either. Differential Revision: https://reviews.llvm.org/D71410
Diffstat (limited to 'llvm/lib/Target')
-rw-r--r--llvm/lib/Target/ARM/ARMInstrMVE.td3
1 files changed, 0 insertions, 3 deletions
diff --git a/llvm/lib/Target/ARM/ARMInstrMVE.td b/llvm/lib/Target/ARM/ARMInstrMVE.td
index a40231c4aa1..82a622d799a 100644
--- a/llvm/lib/Target/ARM/ARMInstrMVE.td
+++ b/llvm/lib/Target/ARM/ARMInstrMVE.td
@@ -5394,7 +5394,6 @@ class MVE_VPT<string suffix, bits<2> size, dag iops, string asm, list<dag> patte
let Inst{4} = 0b0;
let Defs = [VPR];
- let validForTailPredication = 1;
}
class MVE_VPTt1<string suffix, bits<2> size, dag iops>
@@ -5406,7 +5405,6 @@ class MVE_VPTt1<string suffix, bits<2> size, dag iops>
let Inst{5} = Qm{3};
let Inst{3-1} = Qm{2-0};
let Inst{0} = fc{1};
- let validForTailPredication = 1;
}
class MVE_VPTt1i<string suffix, bits<2> size>
@@ -5508,7 +5506,6 @@ class MVE_VPTf<string suffix, bit size, dag iops, string asm, list<dag> pattern=
let Defs = [VPR];
let Predicates = [HasMVEFloat];
- let validForTailPredication = 1;
}
class MVE_VPTft1<string suffix, bit size>
OpenPOWER on IntegriCloud