Home | History | Annotate | Download | only in ARM
      1 ; RUN: llc -mtriple=arm-eabi -mattr=+v4t %s -o - | FileCheck %s
      2 
      3 ; CHECK-LABEL: f1
      4 ; CHECK-NOT: mov
      5 define i32 @f1() {
      6 	%buf = alloca [32 x i32], align 4
      7 	%tmp = getelementptr [32 x i32], [32 x i32]* %buf, i32 0, i32 0
      8 	%tmp1 = load i32, i32* %tmp
      9 	ret i32 %tmp1
     10 }
     11 
     12 ; CHECK-LABEL: f2
     13 ; CHECK-NOT: mov
     14 define i32 @f2() {
     15 	%buf = alloca [32 x i8], align 4
     16 	%tmp = getelementptr [32 x i8], [32 x i8]* %buf, i32 0, i32 0
     17 	%tmp1 = load i8, i8* %tmp
     18         %tmp2 = zext i8 %tmp1 to i32
     19 	ret i32 %tmp2
     20 }
     21 
     22 ; CHECK-LABEL: f3
     23 ; CHECK-NOT: mov
     24 define i32 @f3() {
     25 	%buf = alloca [32 x i32], align 4
     26 	%tmp = getelementptr [32 x i32], [32 x i32]* %buf, i32 0, i32 32
     27 	%tmp1 = load i32, i32* %tmp
     28 	ret i32 %tmp1
     29 }
     30 
     31 ; CHECK-LABEL: f4
     32 ; CHECK-NOT: mov
     33 define i32 @f4() {
     34 	%buf = alloca [32 x i8], align 4
     35 	%tmp = getelementptr [32 x i8], [32 x i8]* %buf, i32 0, i32 2
     36 	%tmp1 = load i8, i8* %tmp
     37         %tmp2 = zext i8 %tmp1 to i32
     38 	ret i32 %tmp2
     39 }
     40