diff options
| author | Craig Topper <craig.topper@gmail.com> | 2016-05-21 05:47:25 +0000 |
|---|---|---|
| committer | Craig Topper <craig.topper@gmail.com> | 2016-05-21 05:47:25 +0000 |
| commit | 6be70deda32f97f7790929143af1a93e969f8c52 (patch) | |
| tree | 1247be004d36755fe6ed0a6fcf155ce7cf4027de /llvm/lib | |
| parent | 1a23a521bb4b1fb119eb682270f5eb14e0ff3ebb (diff) | |
| download | bcm5719-llvm-6be70deda32f97f7790929143af1a93e969f8c52.tar.gz bcm5719-llvm-6be70deda32f97f7790929143af1a93e969f8c52.zip | |
[AVX512] Disable AVX/AVX2 VBROADCASTSS/VBROADCASTSD patterns when AVX512VL is enabled.
llvm-svn: 270316
Diffstat (limited to 'llvm/lib')
| -rw-r--r-- | llvm/lib/Target/X86/X86InstrSSE.td | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/llvm/lib/Target/X86/X86InstrSSE.td b/llvm/lib/Target/X86/X86InstrSSE.td index 5ffc5c987b8..90930aa6453 100644 --- a/llvm/lib/Target/X86/X86InstrSSE.td +++ b/llvm/lib/Target/X86/X86InstrSSE.td @@ -7817,24 +7817,24 @@ class avx2_broadcast_rr<bits<8> opc, string OpcodeStr, RegisterClass RC, [(set RC:$dst, (ResVT (X86VBroadcast (OpVT VR128:$src))))]>, Sched<[Sched]>, VEX; -let ExeDomain = SSEPackedSingle in { +let ExeDomain = SSEPackedSingle, Predicates = [HasAVX, NoVLX] in { def VBROADCASTSSrm : avx_broadcast_rm<0x18, "vbroadcastss", VR128, f32mem, v4f32, loadf32, WriteLoad>; def VBROADCASTSSYrm : avx_broadcast_rm<0x18, "vbroadcastss", VR256, f32mem, v8f32, loadf32, WriteFShuffleLd>, VEX_L; } -let ExeDomain = SSEPackedDouble in +let ExeDomain = SSEPackedDouble, Predicates = [HasAVX, NoVLX] in def VBROADCASTSDYrm : avx_broadcast_rm<0x19, "vbroadcastsd", VR256, f64mem, v4f64, loadf64, WriteFShuffleLd>, VEX_L; -let ExeDomain = SSEPackedSingle in { +let ExeDomain = SSEPackedSingle, Predicates = [HasAVX, NoVLX] in { def VBROADCASTSSrr : avx2_broadcast_rr<0x18, "vbroadcastss", VR128, v4f32, v4f32, WriteFShuffle>; def VBROADCASTSSYrr : avx2_broadcast_rr<0x18, "vbroadcastss", VR256, v8f32, v4f32, WriteFShuffle256>, VEX_L; } -let ExeDomain = SSEPackedDouble in +let ExeDomain = SSEPackedDouble, Predicates = [HasAVX2, NoVLX] in def VBROADCASTSDYrr : avx2_broadcast_rr<0x19, "vbroadcastsd", VR256, v4f64, v2f64, WriteFShuffle256>, VEX_L; |

