Home | History | Annotate | Download | only in AArch64
      1 ; RUN: llc -march aarch64 %s -o - | FileCheck %s
      2 
      3 @g0 = external global <3 x float>, align 16
      4 @g1 = external global <3 x float>, align 4
      5 
      6 ; CHECK: ldr s[[R0:[0-9]+]], {{\[}}[[R1:x[0-9]+]]{{\]}}, #4
      7 ; CHECK: ld1{{\.?s?}} { v[[R0]]{{\.?s?}} }[1], {{\[}}[[R1]]{{\]}}
      8 ; CHECK: str d[[R0]]
      9 
     10 define void @blam() {
     11   %tmp4 = getelementptr inbounds <3 x float>, <3 x float>* @g1, i64 0, i64 0
     12   %tmp5 = load <3 x float>, <3 x float>* @g0, align 16
     13   %tmp6 = extractelement <3 x float> %tmp5, i64 0
     14   store float %tmp6, float* %tmp4
     15   %tmp7 = getelementptr inbounds float, float* %tmp4, i64 1
     16   %tmp8 = load <3 x float>, <3 x float>* @g0, align 16
     17   %tmp9 = extractelement <3 x float> %tmp8, i64 1
     18   store float %tmp9, float* %tmp7
     19   ret void;
     20 }
     21