1 ; RUN: llc < %s -march=arm > %t 2 ; RUN: grep ldrsb %t 3 ; RUN: grep ldrb %t 4 ; RUN: grep ldrsh %t 5 ; RUN: grep ldrh %t 6 7 8 define i32 @f1(i8* %p) { 9 entry: 10 %tmp = load i8* %p ; <i8> [#uses=1] 11 %tmp1 = sext i8 %tmp to i32 ; <i32> [#uses=1] 12 ret i32 %tmp1 13 } 14 15 define i32 @f2(i8* %p) { 16 entry: 17 %tmp = load i8* %p ; <i8> [#uses=1] 18 %tmp2 = zext i8 %tmp to i32 ; <i32> [#uses=1] 19 ret i32 %tmp2 20 } 21 22 define i32 @f3(i16* %p) { 23 entry: 24 %tmp = load i16* %p ; <i16> [#uses=1] 25 %tmp3 = sext i16 %tmp to i32 ; <i32> [#uses=1] 26 ret i32 %tmp3 27 } 28 29 define i32 @f4(i16* %p) { 30 entry: 31 %tmp = load i16* %p ; <i16> [#uses=1] 32 %tmp4 = zext i16 %tmp to i32 ; <i32> [#uses=1] 33 ret i32 %tmp4 34 } 35