aboutsummaryrefslogtreecommitdiff
path: root/test/Transforms/SimplifyCFG/InvokeEliminate.ll
blob: 0f14ec82eb25ff926873b4b26c50df477dc7d776 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
; This testcase checks to see if the simplifycfg pass is converting invoke
; instructions to call instructions if the handler just rethrows the exception.

; If this test is successful, the function should be reduced to 'call; ret'

; RUN: llvm-as < %s | opt -simplifycfg | llvm-dis | not egrep 'invoke|br'

declare void %bar()
declare void %llvm.unwind()

int %test() {
	invoke void %bar() to label %Ok except label %Rethrow
Ok:
	ret int 0
Rethrow:
	call void %llvm.unwind()
	br label %Ok
}