Home | History | Annotate | Download | only in X86
      1 ; RUN: llc < %s -march=x86 -mcpu=corei7 -mtriple=i686-pc-win32 | FileCheck %s
      2 
      3 ; CHECK: load_store
      4 define void @load_store(<4 x i16>* %in) {
      5 entry:
      6 ; CHECK: pmovzxwd
      7   %A27 = load <4 x i16>* %in, align 4
      8   %A28 = add <4 x i16> %A27, %A27
      9 ; CHECK: movlpd
     10   store <4 x i16> %A28, <4 x i16>* %in, align 4
     11   ret void
     12 ; CHECK: ret
     13 }
     14 
     15 ; Make sure that we store a 64bit value, even on 32bit systems.
     16 ;CHECK-LABEL: store_64:
     17 define void @store_64(<2 x i32>* %ptr) {
     18 BB:
     19   store <2 x i32> zeroinitializer, <2 x i32>* %ptr
     20   ret void
     21 ;CHECK: movlpd
     22 ;CHECK: ret
     23 }
     24 
     25 ;CHECK-LABEL: load_64:
     26 define <2 x i32> @load_64(<2 x i32>* %ptr) {
     27 BB:
     28   %t = load <2 x i32>* %ptr
     29   ret <2 x i32> %t
     30 ;CHECK: pmovzxdq
     31 ;CHECK: ret
     32 }
     33