xref: /aosp_15_r20/external/llvm/test/DebugInfo/Inputs/dwarfdump-test-zlib.cc (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker class DummyClass {
2*9880d681SAndroid Build Coastguard Worker   int a_;
3*9880d681SAndroid Build Coastguard Worker  public:
DummyClass(int a)4*9880d681SAndroid Build Coastguard Worker   DummyClass(int a) : a_(a) {}
add(int b)5*9880d681SAndroid Build Coastguard Worker   int add(int b) {
6*9880d681SAndroid Build Coastguard Worker     return a_ + b;
7*9880d681SAndroid Build Coastguard Worker   }
8*9880d681SAndroid Build Coastguard Worker };
9*9880d681SAndroid Build Coastguard Worker 
f(int a,int b)10*9880d681SAndroid Build Coastguard Worker int f(int a, int b) {
11*9880d681SAndroid Build Coastguard Worker   DummyClass c(a);
12*9880d681SAndroid Build Coastguard Worker   return c.add(b);
13*9880d681SAndroid Build Coastguard Worker }
14*9880d681SAndroid Build Coastguard Worker 
main()15*9880d681SAndroid Build Coastguard Worker int main() {
16*9880d681SAndroid Build Coastguard Worker   return f(2, 3);
17*9880d681SAndroid Build Coastguard Worker }
18*9880d681SAndroid Build Coastguard Worker 
19*9880d681SAndroid Build Coastguard Worker // Built with Clang 3.9 and GNU gold (GNU Binutils for Ubuntu 2.26) 1.11:
20*9880d681SAndroid Build Coastguard Worker // Note: llvm-symbolizer-zlib.test relies on the path and filename used !
21*9880d681SAndroid Build Coastguard Worker // $ mkdir -p /tmp/dbginfo
22*9880d681SAndroid Build Coastguard Worker // $ cp dwarfdump-test-zlib.cc /tmp/dbginfo
23*9880d681SAndroid Build Coastguard Worker // $ cd /tmp/dbginfo
24*9880d681SAndroid Build Coastguard Worker // $ clang++ -g dwarfdump-test-zlib.cc -Wl,--compress-debug-sections=zlib -o dwarfdump-test-zlib.elf-x86-64
25*9880d681SAndroid Build Coastguard Worker // $ clang++ -g dwarfdump-test-zlib.cc -Wl,--compress-debug-sections=zlib-gnu -o dwarfdump-test-zlibgnu.elf-x86-64
26*9880d681SAndroid Build Coastguard Worker // llvm-readobj -sections can be used to see that outputs really contain the compressed sections, also output in both
27*9880d681SAndroid Build Coastguard Worker //   cases is slightly smaller, that is because of compression.