1*9880d681SAndroid Build Coastguard Worker // To generate the test file: 2*9880d681SAndroid Build Coastguard Worker // clang cross-cu-inlining.c -DA_C -g -emit-llvm -S -o a.ll 3*9880d681SAndroid Build Coastguard Worker // clang cross-cu-inlining.c -DB_C -g -emit-llvm -S -o b.ll 4*9880d681SAndroid Build Coastguard Worker // llvm-link a.ll b.ll -o ab.bc 5*9880d681SAndroid Build Coastguard Worker // opt -inline ab.bc -o cross-cu-inlining.bc 6*9880d681SAndroid Build Coastguard Worker // clang -c cross-cu-inlining.bc -o cross-cu-inlining.o 7*9880d681SAndroid Build Coastguard Worker #ifdef A_C 8*9880d681SAndroid Build Coastguard Worker int i; 9*9880d681SAndroid Build Coastguard Worker int func(int); main()10*9880d681SAndroid Build Coastguard Workerint main() { 11*9880d681SAndroid Build Coastguard Worker return func(i); 12*9880d681SAndroid Build Coastguard Worker } 13*9880d681SAndroid Build Coastguard Worker #endif 14*9880d681SAndroid Build Coastguard Worker #ifdef B_C func(int x)15*9880d681SAndroid Build Coastguard Workerint __attribute__((always_inline)) func(int x) { 16*9880d681SAndroid Build Coastguard Worker return x * 2; 17*9880d681SAndroid Build Coastguard Worker } 18*9880d681SAndroid Build Coastguard Worker #endif 19