• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1; RUN: llc -mtriple=thumb-eabi -mcpu=arm1156t2-s -mattr=+thumb2 %s -o - | FileCheck %s
2
3define i32 @test1(i8* %v.pntr.s0.u1) {
4    %tmp.u = load i8, i8* %v.pntr.s0.u1
5    %tmp1.s = zext i8 %tmp.u to i32
6    ret i32 %tmp1.s
7}
8
9define i32 @test2(i16* %v.pntr.s0.u1) {
10    %tmp.u = load i16, i16* %v.pntr.s0.u1
11    %tmp1.s = zext i16 %tmp.u to i32
12    ret i32 %tmp1.s
13}
14
15define i32 @test3(i8* %v.pntr.s1.u0) {
16    %tmp.s = load i8, i8* %v.pntr.s1.u0
17    %tmp1.s = sext i8 %tmp.s to i32
18    ret i32 %tmp1.s
19}
20
21define i32 @test4() {
22    %tmp.s = load i16, i16* null
23    %tmp1.s = sext i16 %tmp.s to i32
24    ret i32 %tmp1.s
25}
26
27; CHECK: ldrb
28; CHECK-NOT: ldrb
29
30; CHECK: ldrh
31; CHECK-NOT: ldrh
32
33; CHECK: ldrsb
34; CHECK-NOT: ldrsb
35
36; CHECK: ldrsh
37; CHECK-NOT: ldrsh
38
39