Use toplevel function pass manager as OnTheFly manager.
[oota-llvm.git] / test / ExecutionEngine / test-call.ll
index 0b5d2817b81ec17fa89ae9b3dd1d2c0b32b2ab6a..23e4f14a5402aae10b5047a5e9eef3c3b31c7b84 100644 (file)
@@ -1,7 +1,22 @@
+; RUN: llvm-upgrade %s | llvm-as -f -o %t.bc
+; RUN: lli %t.bc > /dev/null
+
 
 declare void %exit(int)
 
-void %main() {
-       call void %exit(int 1)
+int %test(sbyte %C, short %S) {
+  %X = cast short %S to ubyte
+  %Y = cast ubyte %X to int
+  ret int %Y
+}
+
+void %FP(void(int) * %F) {
+       %X = call int %test(sbyte 123, short 1024)
+       call void %F(int %X)
        ret void
 }
+
+int %main() {
+       call void %FP(void(int)* %exit)
+       ret int 1
+}