summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Trick <atrick@apple.com>2013-10-09 05:11:10 +0000
committerAndrew Trick <atrick@apple.com>2013-10-09 05:11:10 +0000
commit036c6e877b57672e6a1b93a05933590523b67e57 (patch)
treeaf22e99715608b91bf372c5f08d113c03dcf3293
parent10c7925d69437e2bd182eb4cc47eb4bdfb3af900 (diff)
downloadllvm-036c6e877b57672e6a1b93a05933590523b67e57.tar.gz
llvm-036c6e877b57672e6a1b93a05933590523b67e57.tar.bz2
llvm-036c6e877b57672e6a1b93a05933590523b67e57.tar.xz
Add missing HasAVX512 predicate.
This was only working because AVX had cheaper rules in all cases. I'm sure there are other places in this file where predicates are missing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192276 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/Target/X86/X86InstrAVX512.td4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/Target/X86/X86InstrAVX512.td b/lib/Target/X86/X86InstrAVX512.td
index a09160061f..47480b3a14 100644
--- a/lib/Target/X86/X86InstrAVX512.td
+++ b/lib/Target/X86/X86InstrAVX512.td
@@ -2224,7 +2224,7 @@ let neverHasSideEffects = 1 in {
EVEX_4V;
} // neverHasSideEffects = 1
}
-
+let Predicates = [HasAVX512] in {
defm VCVTSI2SSZ : avx512_vcvtsi<0x2A, GR32, FR32X, i32mem, "cvtsi2ss{l}{z}">,
XS, VEX_LIG, EVEX_CD8<32, CD8VT1>;
defm VCVTSI642SSZ : avx512_vcvtsi<0x2A, GR64, FR32X, i64mem, "cvtsi2ss{q}{z}">,
@@ -2278,7 +2278,7 @@ def : Pat<(f64 (uint_to_fp GR32:$src)),
(VCVTUSI2SDZrr (f64 (IMPLICIT_DEF)), GR32:$src)>;
def : Pat<(f64 (uint_to_fp GR64:$src)),
(VCVTUSI642SDZrr (f64 (IMPLICIT_DEF)), GR64:$src)>;
-
+}
//===----------------------------------------------------------------------===//
// AVX-512 Scalar convert from float/double to integer