; Test various forms of calls.
-; RUN: llvm-as < %s | llc -march=ppc32 | grep 'bl ' | wc -l | grep 1 &&
-; RUN: llvm-as < %s | llc -march=ppc32 | grep 'bctrl' | wc -l | grep 1 &&
-; RUN: llvm-as < %s | llc -march=ppc32 | grep 'bla ' | wc -l | grep 1
+; RUN: llvm-as < %s | llc -march=ppc32 | \
+; RUN: grep {bl } | count 2
+; RUN: llvm-as < %s | llc -march=ppc32 | \
+; RUN: grep {bctrl} | count 1
+; RUN: llvm-as < %s | llc -march=ppc32 | \
+; RUN: grep {bla } | count 1
-declare void %foo()
+declare void @foo()
-void %test_direct() {
- call void %foo()
- ret void
+define void @test_direct() {
+ call void @foo( )
+ ret void
}
-void %test_indirect(void()* %fp) {
- call void %fp()
- ret void
+define void @test_extsym(i8* %P) {
+ free i8* %P
+ ret void
}
-void %test_abs() {
- %fp = cast int 400 to void()*
- call void %fp()
- ret void
+define void @test_indirect(void ()* %fp) {
+ call void %fp( )
+ ret void
}
+
+define void @test_abs() {
+ %fp = inttoptr i32 400 to void ()* ; <void ()*> [#uses=1]
+ call void %fp( )
+ ret void
+}
+