Renamed `as' => `llvm-as', `dis' => `llvm-dis', `link' => `llvm-link'.
[oota-llvm.git] / test / Transforms / Inline / invoke_test-3.ll
index bc112042b2eba5dcb69c31af64c1493c00e33791..7ca3f6ad2975a0af1b3e0e14fd2fa8872088b7b0 100644 (file)
@@ -1,10 +1,10 @@
 ; Test that any rethrown exceptions in an inlined function are automatically
 ; turned into branches to the invoke destination.
 
-; RUN: as < %s | opt -inline | dis | not grep 'call void %llvm.exc.rethrow'
+; RUN: llvm-as < %s | opt -inline | llvm-dis | not grep 'call void %llvm.unwind'
 
 declare void %might_throw()
-declare void %llvm.exc.rethrow()
+declare void %llvm.unwind()
 
 implementation
 
@@ -13,11 +13,12 @@ internal int %callee() {
 cont:
        ret int 0
 exc:   ; This just rethrows the exception!
-       call void %llvm.exc.rethrow()
-       ret int 0
+       call void %llvm.unwind()
+       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
 }