summaryrefslogtreecommitdiff
path: root/test/CodeGen/ARM/load.ll
blob: 603a8b2780635b682169c86253ceddee8fe57f2b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
; RUN: llvm-as < %s | llc -march=arm &&
; RUN: llvm-as < %s | llc -march=arm | grep ldrsb &&
; RUN: llvm-as < %s | llc -march=arm | grep ldrb &&
; RUN: llvm-as < %s | llc -march=arm | grep ldrsh &&
; RUN: llvm-as < %s | llc -march=arm | grep ldrh

int %f1(sbyte* %p) {
entry:
	%tmp = load sbyte* %p		; <sbyte> [#uses=1]
	%tmp = cast sbyte %tmp to int		; <int> [#uses=1]
	ret int %tmp
}

int %f2(ubyte* %p) {
entry:
	%tmp = load ubyte* %p		; <sbyte> [#uses=1]
	%tmp = cast ubyte %tmp to int		; <int> [#uses=1]
	ret int %tmp
}

int %f3(short* %p) {
entry:
	%tmp = load short* %p		; <sbyte> [#uses=1]
	%tmp = cast short %tmp to int		; <int> [#uses=1]
	ret int %tmp
}

int %f4(ushort* %p) {
entry:
	%tmp = load ushort* %p		; <sbyte> [#uses=1]
	%tmp = cast ushort %tmp to int		; <int> [#uses=1]
	ret int %tmp
}