1*9880d681SAndroid Build Coastguard Worker; Test various forms of calls. 2*9880d681SAndroid Build Coastguard Worker 3*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -march=ppc32 | \ 4*9880d681SAndroid Build Coastguard Worker; RUN: grep "bl " | count 1 5*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -march=ppc32 | \ 6*9880d681SAndroid Build Coastguard Worker; RUN: grep "bctrl" | count 1 7*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -march=ppc32 | \ 8*9880d681SAndroid Build Coastguard Worker; RUN: grep "bla " | count 1 9*9880d681SAndroid Build Coastguard Worker 10*9880d681SAndroid Build Coastguard Workerdeclare void @foo() 11*9880d681SAndroid Build Coastguard Worker 12*9880d681SAndroid Build Coastguard Workerdefine void @test_direct() { 13*9880d681SAndroid Build Coastguard Worker call void @foo( ) 14*9880d681SAndroid Build Coastguard Worker ret void 15*9880d681SAndroid Build Coastguard Worker} 16*9880d681SAndroid Build Coastguard Worker 17*9880d681SAndroid Build Coastguard Workerdefine void @test_indirect(void ()* %fp) { 18*9880d681SAndroid Build Coastguard Worker call void %fp( ) 19*9880d681SAndroid Build Coastguard Worker ret void 20*9880d681SAndroid Build Coastguard Worker} 21*9880d681SAndroid Build Coastguard Worker 22*9880d681SAndroid Build Coastguard Workerdefine void @test_abs() { 23*9880d681SAndroid Build Coastguard Worker %fp = inttoptr i32 400 to void ()* ; <void ()*> [#uses=1] 24*9880d681SAndroid Build Coastguard Worker call void %fp( ) 25*9880d681SAndroid Build Coastguard Worker ret void 26*9880d681SAndroid Build Coastguard Worker} 27*9880d681SAndroid Build Coastguard Worker 28