forked from OSchip/llvm-project
parent
d367d0553e
commit
1853f284ed
|
@ -1,4 +1,4 @@
|
|||
; Test that we can invoke a simple function, turning the calls in it into invoke
|
||||
; Test that we can inline a simple function, turning the calls in it into invoke
|
||||
; instructions
|
||||
|
||||
; RUN: as < %s | opt -inline | dis | not grep 'call[^e]'
|
||||
|
|
|
@ -16,7 +16,7 @@ exc:
|
|||
ret int 1
|
||||
}
|
||||
|
||||
; caller returns true if might_throw throws an exception...
|
||||
; caller returns true if might_throw throws an exception... callee cannot throw.
|
||||
int %caller() {
|
||||
%X = invoke int %callee() to label %cont
|
||||
except label %UnreachableExceptionHandler
|
||||
|
|
|
@ -14,10 +14,11 @@ cont:
|
|||
ret int 0
|
||||
exc: ; This just rethrows the exception!
|
||||
call void %llvm.exc.rethrow()
|
||||
ret int 0
|
||||
ret int 123 ; DEAD!
|
||||
}
|
||||
|
||||
; caller returns true if might_throw throws an exception...
|
||||
; caller returns true if might_throw throws an exception... which gets
|
||||
; propagated by callee.
|
||||
int %caller() {
|
||||
%X = invoke int %callee() to label %cont
|
||||
except label %Handler
|
||||
|
@ -25,5 +26,5 @@ cont:
|
|||
ret int %X
|
||||
Handler:
|
||||
; This consumes an exception thrown by might_throw
|
||||
ret int -1
|
||||
ret int 1
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue