diff options
Diffstat (limited to 'test/CodeGen/PowerPC/calls.ll')
| -rw-r--r-- | test/CodeGen/PowerPC/calls.ll | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/test/CodeGen/PowerPC/calls.ll b/test/CodeGen/PowerPC/calls.ll new file mode 100644 index 000000000000..034c14147a29 --- /dev/null +++ b/test/CodeGen/PowerPC/calls.ll @@ -0,0 +1,32 @@ +; Test various forms of calls. + +; 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() + +define void @test_direct() { + call void @foo( ) + ret void +} + +define void @test_extsym(i8* %P) { + free i8* %P + 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 +} + |
