mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-13 04:30:23 +00:00
Add one more pattern to fallback movddup
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113522 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
c8ddbdabb6
commit
ae4f7421c0
@ -5688,6 +5688,8 @@ def : Pat<(v2i64 (X86Movddup VR128:$src)),
|
|||||||
(MOVLHPSrr VR128:$src, VR128:$src)>;
|
(MOVLHPSrr VR128:$src, VR128:$src)>;
|
||||||
def : Pat<(v4f32 (X86Movddup VR128:$src)),
|
def : Pat<(v4f32 (X86Movddup VR128:$src)),
|
||||||
(MOVLHPSrr VR128:$src, VR128:$src)>;
|
(MOVLHPSrr VR128:$src, VR128:$src)>;
|
||||||
|
def : Pat<(v2f64 (X86Movddup VR128:$src)),
|
||||||
|
(UNPCKLPDrr VR128:$src, VR128:$src)>;
|
||||||
|
|
||||||
// Shuffle with MOVLHPD
|
// Shuffle with MOVLHPD
|
||||||
def : Pat<(v2f64 (X86Movlhpd VR128:$src1,
|
def : Pat<(v2f64 (X86Movlhpd VR128:$src1,
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
; RUN: llc < %s -march=x86-64 | FileCheck %s
|
; RUN: llc < %s -march=x86-64 | FileCheck %s
|
||||||
|
; RUN: llc -O0 < %s -march=x86 -mcpu=core2 | FileCheck %s --check-prefix=CHECK_O0
|
||||||
|
|
||||||
define <4 x i32> @t00(<4 x i32>* %a0) nounwind ssp {
|
define <4 x i32> @t00(<4 x i32>* %a0) nounwind ssp {
|
||||||
entry:
|
entry:
|
||||||
@ -12,3 +13,12 @@ entry:
|
|||||||
ret <4 x i32> %2
|
ret <4 x i32> %2
|
||||||
}
|
}
|
||||||
|
|
||||||
|
define void @t01(double* %a0) nounwind ssp {
|
||||||
|
entry:
|
||||||
|
; CHECK_O0: movsd (%eax), %xmm0
|
||||||
|
; CHECK_O0: unpcklpd %xmm0, %xmm0
|
||||||
|
%tmp93 = load double* %a0, align 8
|
||||||
|
%vecinit94 = insertelement <2 x double> undef, double %tmp93, i32 1
|
||||||
|
store <2 x double> %vecinit94, <2 x double>* undef
|
||||||
|
ret void
|
||||||
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user