diff options
Diffstat (limited to 'llvm/test/CodeGen/ARM/call.ll')
-rw-r--r-- | llvm/test/CodeGen/ARM/call.ll | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/llvm/test/CodeGen/ARM/call.ll b/llvm/test/CodeGen/ARM/call.ll index a4b6b807d6b..d75814039f4 100644 --- a/llvm/test/CodeGen/ARM/call.ll +++ b/llvm/test/CodeGen/ARM/call.ll @@ -1,20 +1,17 @@ ; RUN: llvm-upgrade < %s | llvm-as | llc -march=arm && -; RUN: llvm-upgrade < %s | llvm-as | llc -march=arm | grep bl && -; RUN: llvm-upgrade < %s | llvm-as | llc -march=arm | grep blx +; RUN: llvm-upgrade < %s | llvm-as | llc -march=arm | grep 'mov lr, pc' && +; RUN: llvm-upgrade < %s | llvm-as | llc -march=arm -mattr=+v5t | grep 'blx' + +%t = weak global int ()* null +declare void %g(int, int, int, int) void %f() { -entry: call void %g( int 1, int 2, int 3, int 4 ) - call fastcc void %h() ret void } -declare void %g(int, int, int, int) -declare fastcc void %h() - -void %g(void (...)* %g) { -entry: - %g_c = cast void (...)* %g to void ()* - call void %g_c( ) +void %g() { + %tmp = load int ()** %t + %tmp = tail call int %tmp( ) ret void } |