1*9880d681SAndroid Build Coastguard Worker /* For compilation instructions see basic1.c. */ 2*9880d681SAndroid Build Coastguard Worker 3*9880d681SAndroid Build Coastguard Worker static int baz = 42; 4*9880d681SAndroid Build Coastguard Worker static int private_int; 5*9880d681SAndroid Build Coastguard Worker extern volatile int val; 6*9880d681SAndroid Build Coastguard Worker int unused_data = 1; 7*9880d681SAndroid Build Coastguard Worker 8*9880d681SAndroid Build Coastguard Worker int bar(int); 9*9880d681SAndroid Build Coastguard Worker unused1()10*9880d681SAndroid Build Coastguard Workervoid unused1() { 11*9880d681SAndroid Build Coastguard Worker bar(baz); 12*9880d681SAndroid Build Coastguard Worker } 13*9880d681SAndroid Build Coastguard Worker inc()14*9880d681SAndroid Build Coastguard Workerstatic int inc() { 15*9880d681SAndroid Build Coastguard Worker return ++private_int; 16*9880d681SAndroid Build Coastguard Worker } 17*9880d681SAndroid Build Coastguard Worker 18*9880d681SAndroid Build Coastguard Worker __attribute__((noinline)) foo(int arg)19*9880d681SAndroid Build Coastguard Workerint foo(int arg) { 20*9880d681SAndroid Build Coastguard Worker return bar(arg+val) + inc() + baz++; 21*9880d681SAndroid Build Coastguard Worker } 22*9880d681SAndroid Build Coastguard Worker 23*9880d681SAndroid Build Coastguard Worker /* This file was also used to create basic2-custom-linetable.macho.x86_64.o 24*9880d681SAndroid Build Coastguard Worker with a custom clang that had different settings for the linetable 25*9880d681SAndroid Build Coastguard Worker encoding constants: line_base == -1 and line_range == 4. 26*9880d681SAndroid Build Coastguard Worker 27*9880d681SAndroid Build Coastguard Worker clang -c -g basic2.c -o basic2-custom-linetable.macho.x86_64.o 28*9880d681SAndroid Build Coastguard Worker */ 29