; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
; RUN: llc < %s -relocation-model=static -mtriple=i686-unknown -mattr=+mmx,+sse3   | FileCheck %s --check-prefix=X32
; RUN: llc < %s -relocation-model=static -mtriple=x86_64-unknown -mattr=+mmx,+sse3 | FileCheck %s --check-prefix=X64

; 64-bit stores here do not use MMX.

@M1 = external global <1 x i64>
@M2 = external global <2 x i32>

@S1 = external global <2 x i64>
@S2 = external global <4 x i32>

define void @test1() {
; X32-LABEL: test1:
; X32:       # %bb.0:
; X32-NEXT:    movl $0, M1+4
; X32-NEXT:    movl $0, M1
; X32-NEXT:    xorps %xmm0, %xmm0
; X32-NEXT:    movlps %xmm0, M2
; X32-NEXT:    retl
;
; X64-LABEL: test1:
; X64:       # %bb.0:
; X64-NEXT:    movq $0, {{.*}}(%rip)
; X64-NEXT:    movq $0, {{.*}}(%rip)
; X64-NEXT:    retq
  store <1 x i64> zeroinitializer, <1 x i64>* @M1
  store <2 x i32> zeroinitializer, <2 x i32>* @M2
  ret void
}

define void @test2() {
; X32-LABEL: test2:
; X32:       # %bb.0:
; X32-NEXT:    movl $-1, M1+4
; X32-NEXT:    movl $-1, M1
; X32-NEXT:    pcmpeqd %xmm0, %xmm0
; X32-NEXT:    movq %xmm0, M2
; X32-NEXT:    retl
;
; X64-LABEL: test2:
; X64:       # %bb.0:
; X64-NEXT:    movq $-1, {{.*}}(%rip)
; X64-NEXT:    movq {{.*}}(%rip), %rax
; X64-NEXT:    movq %rax, {{.*}}(%rip)
; X64-NEXT:    retq
  store <1 x i64> < i64 -1 >, <1 x i64>* @M1
  store <2 x i32> < i32 -1, i32 -1 >, <2 x i32>* @M2
  ret void
}

define void @test3() {
; X32-LABEL: test3:
; X32:       # %bb.0:
; X32-NEXT:    xorps %xmm0, %xmm0
; X32-NEXT:    movaps %xmm0, S1
; X32-NEXT:    movaps %xmm0, S2
; X32-NEXT:    retl
;
; X64-LABEL: test3:
; X64:       # %bb.0:
; X64-NEXT:    xorps %xmm0, %xmm0
; X64-NEXT:    movaps %xmm0, {{.*}}(%rip)
; X64-NEXT:    movaps %xmm0, {{.*}}(%rip)
; X64-NEXT:    retq
  store <2 x i64> zeroinitializer, <2 x i64>* @S1
  store <4 x i32> zeroinitializer, <4 x i32>* @S2
  ret void
}

define void @test4() {
; X32-LABEL: test4:
; X32:       # %bb.0:
; X32-NEXT:    pcmpeqd %xmm0, %xmm0
; X32-NEXT:    movdqa %xmm0, S1
; X32-NEXT:    movdqa %xmm0, S2
; X32-NEXT:    retl
;
; X64-LABEL: test4:
; X64:       # %bb.0:
; X64-NEXT:    pcmpeqd %xmm0, %xmm0
; X64-NEXT:    movdqa %xmm0, {{.*}}(%rip)
; X64-NEXT:    movdqa %xmm0, {{.*}}(%rip)
; X64-NEXT:    retq
  store <2 x i64> < i64 -1, i64 -1>, <2 x i64>* @S1
  store <4 x i32> < i32 -1, i32 -1, i32 -1, i32 -1 >, <4 x i32>* @S2
  ret void
}
