Handle logical shift right (at least I hope so :) )
[llvm/msp430.git] / test / CodeGen / ARM / load.ll
blob05097328102c18b04908a4f32871f70c2b2292ec
1 ; RUN: llvm-as < %s | llc -march=arm > %t
2 ; RUN: grep ldrsb %t
3 ; RUN: grep ldrb %t
4 ; RUN: grep ldrsh %t
5 ; RUN: grep ldrh %t
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
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
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
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