aboutsummaryrefslogtreecommitdiffstats
path: root/test/CodeGen/ARM/call.ll
blob: d75814039f4baf24820244d626eb50ae0c88057c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
; RUN: llvm-upgrade < %s | llvm-as | llc -march=arm &&
; RUN: llvm-upgrade < %s | llvm-as | llc -march=arm | grep 'mov lr, pc' &&
; RUN: llvm-upgrade < %s | llvm-as | llc -march=arm -mattr=+v5t | grep 'blx'

%t = weak global int ()* null
declare void %g(int, int, int, int)

void %f() {
	call void %g( int 1, int 2, int 3, int 4 )
	ret void
}

void %g() {
	%tmp = load int ()** %t
	%tmp = tail call int %tmp( )
	ret void
}