• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<abi-corpus version='2.1'>
2  <elf-needed>
3    <dependency name='libstdc++.so.6'/>
4    <dependency name='libm.so.6'/>
5    <dependency name='libgcc_s.so.1'/>
6    <dependency name='libc.so.6'/>
7  </elf-needed>
8  <elf-function-symbols>
9    <!-- foo(s0&) -->
10    <elf-symbol name='_Z3fooR2s0' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
11    <!-- b0::b0() -->
12    <elf-symbol name='_ZN2b0C1Ev' type='func-type' binding='weak-binding' visibility='default-visibility' is-defined='yes'/>
13    <!-- b0::b0() -->
14    <elf-symbol name='_ZN2b0C2Ev' type='func-type' binding='weak-binding' visibility='default-visibility' alias='_ZN2b0C1Ev' is-defined='yes'/>
15    <!-- b1::b1() -->
16    <elf-symbol name='_ZN2b1C1Ev' type='func-type' binding='weak-binding' visibility='default-visibility' alias='_ZN2b1C2Ev' is-defined='yes'/>
17    <!-- b1::b1() -->
18    <elf-symbol name='_ZN2b1C2Ev' type='func-type' binding='weak-binding' visibility='default-visibility' is-defined='yes'/>
19    <!-- s0::mem_fun() -->
20    <elf-symbol name='_ZN2s07mem_funEv' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
21    <!-- s0::s0() -->
22    <elf-symbol name='_ZN2s0C1Ev' type='func-type' binding='weak-binding' visibility='default-visibility' is-defined='yes'/>
23    <!-- s0::~s0() -->
24    <elf-symbol name='_ZN2s0D1Ev' type='func-type' binding='weak-binding' visibility='default-visibility' is-defined='yes'/>
25    <!-- __libc_csu_fini -->
26    <elf-symbol name='__libc_csu_fini' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
27    <!-- __libc_csu_init -->
28    <elf-symbol name='__libc_csu_init' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
29    <!-- _fini -->
30    <elf-symbol name='_fini' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
31    <!-- _init -->
32    <elf-symbol name='_init' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
33    <!-- _start -->
34    <elf-symbol name='_start' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
35    <!-- main -->
36    <elf-symbol name='main' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
37  </elf-function-symbols>
38  <elf-variable-symbols>
39    <!-- _IO_stdin_used -->
40    <elf-symbol name='_IO_stdin_used' size='4' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
41    <!-- typeinfo for b0 -->
42    <elf-symbol name='_ZTI2b0' size='16' type='object-type' binding='weak-binding' visibility='default-visibility' is-defined='yes'/>
43    <!-- typeinfo for b1 -->
44    <elf-symbol name='_ZTI2b1' size='16' type='object-type' binding='weak-binding' visibility='default-visibility' is-defined='yes'/>
45    <!-- typeinfo for s0 -->
46    <elf-symbol name='_ZTI2s0' size='56' type='object-type' binding='weak-binding' visibility='default-visibility' is-defined='yes'/>
47    <!-- typeinfo name for b0 -->
48    <elf-symbol name='_ZTS2b0' size='4' type='object-type' binding='weak-binding' visibility='default-visibility' is-defined='yes'/>
49    <!-- typeinfo name for b1 -->
50    <elf-symbol name='_ZTS2b1' size='4' type='object-type' binding='weak-binding' visibility='default-visibility' is-defined='yes'/>
51    <!-- typeinfo name for s0 -->
52    <elf-symbol name='_ZTS2s0' size='4' type='object-type' binding='weak-binding' visibility='default-visibility' is-defined='yes'/>
53    <!-- VTT for s0 -->
54    <elf-symbol name='_ZTT2s0' size='8' type='object-type' binding='weak-binding' visibility='default-visibility' is-defined='yes'/>
55    <!-- vtable for s0 -->
56    <elf-symbol name='_ZTV2s0' size='32' type='object-type' binding='weak-binding' visibility='default-visibility' is-defined='yes'/>
57    <!-- _ZTVN10__cxxabiv117__class_type_infoE@@CXXABI_1.3 -->
58    <elf-symbol name='_ZTVN10__cxxabiv117__class_type_infoE@@CXXABI_1.3' size='88' type='object-type' binding='weak-binding' visibility='default-visibility' is-defined='yes'/>
59    <!-- _ZTVN10__cxxabiv121__vmi_class_type_infoE@@CXXABI_1.3 -->
60    <elf-symbol name='_ZTVN10__cxxabiv121__vmi_class_type_infoE@@CXXABI_1.3' size='88' type='object-type' binding='weak-binding' visibility='default-visibility' is-defined='yes'/>
61  </elf-variable-symbols>
62  <abi-instr address-size='64' path='test1.cc' comp-dir-path='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf' language='LANG_C_plus_plus'>
63    <!-- char -->
64    <type-decl name='char' size-in-bits='8' id='type-id-1'/>
65    <!-- double -->
66    <type-decl name='double' size-in-bits='64' id='type-id-2'/>
67    <!-- int -->
68    <type-decl name='int' size-in-bits='32' id='type-id-3'/>
69    <!-- long long int -->
70    <type-decl name='long long int' size-in-bits='64' id='type-id-4'/>
71    <!-- struct b0 -->
72    <class-decl name='b0' size-in-bits='128' is-struct='yes' visibility='default' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='1' column='1' id='type-id-5'>
73      <data-member access='public' layout-offset-in-bits='0'>
74        <!-- long long int b0::m0 -->
75        <var-decl name='m0' type-id='type-id-4' visibility='default' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='3' column='1'/>
76      </data-member>
77      <data-member access='public' layout-offset-in-bits='64'>
78        <!-- char b0::m1 -->
79        <var-decl name='m1' type-id='type-id-1' visibility='default' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='4' column='1'/>
80      </data-member>
81    </class-decl>
82    <!-- struct b1 -->
83    <class-decl name='b1' size-in-bits='128' is-struct='yes' visibility='default' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='7' column='1' id='type-id-6'>
84      <data-member access='public' layout-offset-in-bits='0'>
85        <!-- double b1::m0 -->
86        <var-decl name='m0' type-id='type-id-2' visibility='default' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='9' column='1'/>
87      </data-member>
88      <data-member access='public' layout-offset-in-bits='64'>
89        <!-- char b1::m1 -->
90        <var-decl name='m1' type-id='type-id-1' visibility='default' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='10' column='1'/>
91      </data-member>
92    </class-decl>
93    <!-- struct s0 -->
94    <class-decl name='s0' size-in-bits='384' is-struct='yes' visibility='default' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='13' column='1' id='type-id-7'>
95      <!-- struct b0 -->
96      <base-class access='public' layout-offset-in-bits='192' is-virtual='yes' type-id='type-id-5'/>
97      <!-- struct b1 -->
98      <base-class access='public' layout-offset-in-bits='256' is-virtual='yes' type-id='type-id-6'/>
99      <member-type access='public'>
100        <!-- typedef unsigned char s0::byte -->
101        <typedef-decl name='byte' type-id='type-id-9' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='16' column='1' id='type-id-8'/>
102      </member-type>
103      <member-type access='public'>
104        <!-- typedef int s0::integer -->
105        <typedef-decl name='integer' type-id='type-id-3' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='15' column='1' id='type-id-10'/>
106      </member-type>
107      <data-member access='public' layout-offset-in-bits='64'>
108        <!-- s0::integer s0::m0 -->
109        <var-decl name='m0' type-id='type-id-10' visibility='default' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='18' column='1'/>
110      </data-member>
111      <data-member access='public' layout-offset-in-bits='96'>
112        <!-- s0::byte s0::m1 -->
113        <var-decl name='m1' type-id='type-id-8' visibility='default' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='19' column='1'/>
114      </data-member>
115      <member-function access='public' constructor='yes'>
116        <!-- s0::s0(int, void**) -->
117        <function-decl name='s0' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='21' column='1' visibility='default' binding='global' size-in-bits='64'>
118          <!-- implicit parameter of type 's0*' -->
119          <parameter type-id='type-id-11' is-artificial='yes'/>
120          <!-- artificial parameter of type 'int' -->
121          <parameter type-id='type-id-3' is-artificial='yes'/>
122          <!-- artificial parameter of type 'void**' -->
123          <parameter type-id='type-id-12' is-artificial='yes'/>
124          <!-- void -->
125          <return type-id='type-id-13'/>
126        </function-decl>
127      </member-function>
128      <member-function access='public' destructor='yes'>
129        <!-- s0::~s0(int, void**) -->
130        <function-decl name='~s0' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='27' column='1' visibility='default' binding='global' size-in-bits='64'>
131          <!-- implicit parameter of type 's0*' -->
132          <parameter type-id='type-id-11' is-artificial='yes'/>
133          <!-- artificial parameter of type 'int' -->
134          <parameter type-id='type-id-3' is-artificial='yes'/>
135          <!-- artificial parameter of type 'void**' -->
136          <parameter type-id='type-id-12' is-artificial='yes'/>
137          <!-- void -->
138          <return type-id='type-id-13'/>
139        </function-decl>
140      </member-function>
141      <member-function access='public' constructor='yes'>
142        <!-- s0::s0(int, void**) -->
143        <function-decl name='s0' mangled-name='_ZN2s0C1Ev' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='21' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='_ZN2s0C1Ev'>
144          <!-- implicit parameter of type 's0*' -->
145          <parameter type-id='type-id-11' is-artificial='yes'/>
146          <!-- artificial parameter of type 'int' -->
147          <parameter type-id='type-id-3' is-artificial='yes'/>
148          <!-- artificial parameter of type 'void**' -->
149          <parameter type-id='type-id-12' is-artificial='yes'/>
150          <!-- void -->
151          <return type-id='type-id-13'/>
152        </function-decl>
153      </member-function>
154      <member-function access='public' destructor='yes'>
155        <!-- s0::~s0(int, void**) -->
156        <function-decl name='~s0' mangled-name='_ZN2s0D1Ev' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='27' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='_ZN2s0D1Ev'>
157          <!-- implicit parameter of type 's0*' -->
158          <parameter type-id='type-id-11' is-artificial='yes'/>
159          <!-- artificial parameter of type 'int' -->
160          <parameter type-id='type-id-3' is-artificial='yes'/>
161          <!-- artificial parameter of type 'void**' -->
162          <parameter type-id='type-id-12' is-artificial='yes'/>
163          <!-- void -->
164          <return type-id='type-id-13'/>
165        </function-decl>
166      </member-function>
167      <member-function access='public'>
168        <!-- s0::integer s0::mem_fun() -->
169        <function-decl name='mem_fun' mangled-name='_ZN2s07mem_funEv' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='36' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='_ZN2s07mem_funEv'>
170          <!-- implicit parameter of type 's0*' -->
171          <parameter type-id='type-id-11' is-artificial='yes'/>
172          <!-- typedef s0::integer -->
173          <return type-id='type-id-10'/>
174        </function-decl>
175      </member-function>
176    </class-decl>
177    <!-- unsigned char -->
178    <type-decl name='unsigned char' size-in-bits='8' id='type-id-9'/>
179    <!-- s0& -->
180    <reference-type-def kind='lvalue' type-id='type-id-7' size-in-bits='64' id='type-id-14'/>
181    <!-- s0* -->
182    <pointer-type-def type-id='type-id-7' size-in-bits='64' id='type-id-11'/>
183    <!-- void* -->
184    <pointer-type-def type-id='type-id-13' size-in-bits='64' id='type-id-15'/>
185    <!-- void** -->
186    <pointer-type-def type-id='type-id-15' size-in-bits='64' id='type-id-12'/>
187    <!-- void -->
188    <type-decl name='void' id='type-id-13'/>
189    <!-- void foo(s0&) -->
190    <function-decl name='foo' mangled-name='_Z3fooR2s0' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='42' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='_Z3fooR2s0'>
191      <!-- parameter of type 's0&' -->
192      <parameter type-id='type-id-14' name='s' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='42' column='1'/>
193      <!-- void -->
194      <return type-id='type-id-13'/>
195    </function-decl>
196    <!-- int main() -->
197    <function-decl name='main' mangled-name='main' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='48' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='main'>
198      <!-- int -->
199      <return type-id='type-id-3'/>
200    </function-decl>
201  </abi-instr>
202</abi-corpus>
203