aboutsummaryrefslogtreecommitdiffstats
path: root/test/Transforms/Inline/invoke_test-1.ll
blob: 9e690189d99b1b6b3bfce15f7f64681eef0fa86f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
; Test that we can inline a simple function, turning the calls in it into invoke
; instructions

; RUN: llvm-upgrade < %s | llvm-as | opt -inline | llvm-dis | \
; RUN:   not grep {call\[^e\]}

declare void %might_throw()

implementation

internal void %callee() {
	call void %might_throw()
	ret void
}

; caller returns true if might_throw throws an exception...
int %caller() {
	invoke void %callee() to label %cont except label %exc
cont:
	ret int 0
exc:
	ret int 1
}