diff options
author | Craig Topper <craig.topper@intel.com> | 2017-09-17 06:09:32 +0000 |
---|---|---|
committer | Craig Topper <craig.topper@intel.com> | 2017-09-17 06:09:32 +0000 |
commit | bef5d24449f50015316371f502daefdb9dfc9d2f (patch) | |
tree | 8175ec9d4cb9ca3c74f3d95591668e04daa251b9 /llvm/lib/Target | |
parent | 7c0de0108275d0938405a2115ae7590f0f7f5610 (diff) | |
download | bcm5719-llvm-bef5d24449f50015316371f502daefdb9dfc9d2f.tar.gz bcm5719-llvm-bef5d24449f50015316371f502daefdb9dfc9d2f.zip |
[X86] Remove integer X86ISD::SHUFP patterns. Lowering doesn't emit these.
llvm-svn: 313477
Diffstat (limited to 'llvm/lib/Target')
-rw-r--r-- | llvm/lib/Target/X86/X86InstrSSE.td | 44 |
1 files changed, 0 insertions, 44 deletions
diff --git a/llvm/lib/Target/X86/X86InstrSSE.td b/llvm/lib/Target/X86/X86InstrSSE.td index 77a0c433841..7e4671fbe79 100644 --- a/llvm/lib/Target/X86/X86InstrSSE.td +++ b/llvm/lib/Target/X86/X86InstrSSE.td @@ -2416,50 +2416,6 @@ let Constraints = "$src1 = $dst" in { memopv2f64, SSEPackedDouble>, PD; } -let Predicates = [HasAVX, NoVLX] in { - def : Pat<(v4i32 (X86Shufp VR128:$src1, - (bc_v4i32 (loadv2i64 addr:$src2)), (i8 imm:$imm))), - (VSHUFPSrmi VR128:$src1, addr:$src2, imm:$imm)>; - def : Pat<(v4i32 (X86Shufp VR128:$src1, VR128:$src2, (i8 imm:$imm))), - (VSHUFPSrri VR128:$src1, VR128:$src2, imm:$imm)>; - - def : Pat<(v2i64 (X86Shufp VR128:$src1, - (loadv2i64 addr:$src2), (i8 imm:$imm))), - (VSHUFPDrmi VR128:$src1, addr:$src2, imm:$imm)>; - def : Pat<(v2i64 (X86Shufp VR128:$src1, VR128:$src2, (i8 imm:$imm))), - (VSHUFPDrri VR128:$src1, VR128:$src2, imm:$imm)>; - - // 256-bit patterns - def : Pat<(v8i32 (X86Shufp VR256:$src1, VR256:$src2, (i8 imm:$imm))), - (VSHUFPSYrri VR256:$src1, VR256:$src2, imm:$imm)>; - def : Pat<(v8i32 (X86Shufp VR256:$src1, - (bc_v8i32 (loadv4i64 addr:$src2)), (i8 imm:$imm))), - (VSHUFPSYrmi VR256:$src1, addr:$src2, imm:$imm)>; - - def : Pat<(v4i64 (X86Shufp VR256:$src1, VR256:$src2, (i8 imm:$imm))), - (VSHUFPDYrri VR256:$src1, VR256:$src2, imm:$imm)>; - def : Pat<(v4i64 (X86Shufp VR256:$src1, - (loadv4i64 addr:$src2), (i8 imm:$imm))), - (VSHUFPDYrmi VR256:$src1, addr:$src2, imm:$imm)>; -} - -let Predicates = [UseSSE1] in { - def : Pat<(v4i32 (X86Shufp VR128:$src1, - (bc_v4i32 (memopv2i64 addr:$src2)), (i8 imm:$imm))), - (SHUFPSrmi VR128:$src1, addr:$src2, imm:$imm)>; - def : Pat<(v4i32 (X86Shufp VR128:$src1, VR128:$src2, (i8 imm:$imm))), - (SHUFPSrri VR128:$src1, VR128:$src2, imm:$imm)>; -} - -let Predicates = [UseSSE2] in { - // Generic SHUFPD patterns - def : Pat<(v2i64 (X86Shufp VR128:$src1, - (memopv2i64 addr:$src2), (i8 imm:$imm))), - (SHUFPDrmi VR128:$src1, addr:$src2, imm:$imm)>; - def : Pat<(v2i64 (X86Shufp VR128:$src1, VR128:$src2, (i8 imm:$imm))), - (SHUFPDrri VR128:$src1, VR128:$src2, imm:$imm)>; -} - //===----------------------------------------------------------------------===// // SSE 1 & 2 - Unpack FP Instructions //===----------------------------------------------------------------------===// |