Skip to content

Commit 3e28c35

Browse files
committed
Merge from mainline.
llvm-svn: 51416
1 parent 9c108f4 commit 3e28c35

File tree

1 file changed

+10
-4
lines changed

1 file changed

+10
-4
lines changed

llvm/lib/Target/X86/X86InstrSSE.td

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1015,7 +1015,7 @@ def MOVZSS2PSrm : SSI<0x10, MRMSrcMem, (outs VR128:$dst), (ins f32mem:$src),
10151015
[(set VR128:$dst, (v4f32 (X86vzmovl (v4f32 (scalar_to_vector
10161016
(loadf32 addr:$src))))))]>;
10171017

1018-
def : Pat<(v4f32 (X86vzmovl (memopv4f32 addr:$src))),
1018+
def : Pat<(v4f32 (X86vzmovl (loadv4f32 addr:$src))),
10191019
(MOVZSS2PSrm addr:$src)>;
10201020

10211021
//===----------------------------------------------------------------------===//
@@ -2273,7 +2273,9 @@ def MOVZSD2PDrm : SDI<0x10, MRMSrcMem, (outs VR128:$dst), (ins f64mem:$src),
22732273
(v2f64 (X86vzmovl (v2f64 (scalar_to_vector
22742274
(loadf64 addr:$src))))))]>;
22752275

2276-
def : Pat<(v2f64 (X86vzmovl (memopv2f64 addr:$src))),
2276+
def : Pat<(v2f64 (X86vzmovl (loadv2f64 addr:$src))),
2277+
(MOVZSD2PDrm addr:$src)>;
2278+
def : Pat<(v2f64 (X86vzmovl (bc_v2f64 (loadv4f32 addr:$src)))),
22772279
(MOVZSD2PDrm addr:$src)>;
22782280
def : Pat<(v2f64 (X86vzload addr:$src)), (MOVZSD2PDrm addr:$src)>;
22792281
}
@@ -2315,13 +2317,17 @@ def MOVZPQILo2PQIrr : I<0x7E, MRMSrcReg, (outs VR128:$dst), (ins VR128:$src),
23152317
[(set VR128:$dst, (v2i64 (X86vzmovl (v2i64 VR128:$src))))]>,
23162318
XS, Requires<[HasSSE2]>;
23172319

2318-
let AddedComplexity = 20 in
2320+
let AddedComplexity = 20 in {
23192321
def MOVZPQILo2PQIrm : I<0x7E, MRMSrcMem, (outs VR128:$dst), (ins i128mem:$src),
23202322
"movq\t{$src, $dst|$dst, $src}",
23212323
[(set VR128:$dst, (v2i64 (X86vzmovl
2322-
(memopv2i64 addr:$src))))]>,
2324+
(loadv2i64 addr:$src))))]>,
23232325
XS, Requires<[HasSSE2]>;
23242326

2327+
def : Pat<(v2i64 (X86vzmovl (bc_v2i64 (loadv4i32 addr:$src)))),
2328+
(MOVZPQILo2PQIrm addr:$src)>;
2329+
}
2330+
23252331
//===----------------------------------------------------------------------===//
23262332
// SSE3 Instructions
23272333
//===----------------------------------------------------------------------===//

0 commit comments

Comments
 (0)