• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<abi-corpus version='2.1' architecture='elf-amd-x86_64'>
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    <!-- unsigned char -->
72    <type-decl name='unsigned char' size-in-bits='8' id='type-id-5'/>
73    <!-- struct b0 -->
74    <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-6'>
75      <data-member access='public' layout-offset-in-bits='0'>
76        <!-- long long int b0::m0 -->
77        <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'/>
78      </data-member>
79      <data-member access='public' layout-offset-in-bits='64'>
80        <!-- char b0::m1 -->
81        <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'/>
82      </data-member>
83    </class-decl>
84    <!-- struct b1 -->
85    <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-7'>
86      <data-member access='public' layout-offset-in-bits='0'>
87        <!-- double b1::m0 -->
88        <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'/>
89      </data-member>
90      <data-member access='public' layout-offset-in-bits='64'>
91        <!-- char b1::m1 -->
92        <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'/>
93      </data-member>
94    </class-decl>
95    <!-- struct s0 -->
96    <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-8'>
97      <!-- struct b0 -->
98      <base-class access='public' layout-offset-in-bits='192' is-virtual='yes' type-id='type-id-6'/>
99      <!-- struct b1 -->
100      <base-class access='public' layout-offset-in-bits='256' is-virtual='yes' type-id='type-id-7'/>
101      <member-type access='public'>
102        <!-- typedef int s0::integer -->
103        <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-9'/>
104      </member-type>
105      <member-type access='public'>
106        <!-- typedef unsigned char s0::byte -->
107        <typedef-decl name='byte' type-id='type-id-5' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='16' column='1' id='type-id-10'/>
108      </member-type>
109      <data-member access='public' layout-offset-in-bits='64'>
110        <!-- s0::integer s0::m0 -->
111        <var-decl name='m0' type-id='type-id-9' visibility='default' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='18' column='1'/>
112      </data-member>
113      <data-member access='public' layout-offset-in-bits='96'>
114        <!-- s0::byte s0::m1 -->
115        <var-decl name='m1' type-id='type-id-10' visibility='default' filepath='/home/dodji/git/libabigail/dwarf/tests/data/test-read-dwarf/test1.cc' line='19' column='1'/>
116      </data-member>
117      <member-function access='public' constructor='yes'>
118        <!-- s0::s0(int, void**) -->
119        <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'>
120          <!-- implicit parameter of type 's0*' -->
121          <parameter type-id='type-id-11' is-artificial='yes'/>
122          <!-- artificial parameter of type 'int' -->
123          <parameter type-id='type-id-3' is-artificial='yes'/>
124          <!-- artificial parameter of type 'void**' -->
125          <parameter type-id='type-id-12' is-artificial='yes'/>
126          <!-- void -->
127          <return type-id='type-id-13'/>
128        </function-decl>
129      </member-function>
130      <member-function access='public' destructor='yes'>
131        <!-- s0::~s0(int, void**) -->
132        <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'>
133          <!-- implicit parameter of type 's0*' -->
134          <parameter type-id='type-id-11' is-artificial='yes'/>
135          <!-- artificial parameter of type 'int' -->
136          <parameter type-id='type-id-3' is-artificial='yes'/>
137          <!-- artificial parameter of type 'void**' -->
138          <parameter type-id='type-id-12' is-artificial='yes'/>
139          <!-- void -->
140          <return type-id='type-id-13'/>
141        </function-decl>
142      </member-function>
143      <member-function access='public' constructor='yes'>
144        <!-- s0::s0(int, void**) -->
145        <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'>
146          <!-- implicit parameter of type 's0*' -->
147          <parameter type-id='type-id-11' is-artificial='yes'/>
148          <!-- artificial parameter of type 'int' -->
149          <parameter type-id='type-id-3' is-artificial='yes'/>
150          <!-- artificial parameter of type 'void**' -->
151          <parameter type-id='type-id-12' is-artificial='yes'/>
152          <!-- void -->
153          <return type-id='type-id-13'/>
154        </function-decl>
155      </member-function>
156      <member-function access='public' destructor='yes'>
157        <!-- s0::~s0(int, void**) -->
158        <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'>
159          <!-- implicit parameter of type 's0*' -->
160          <parameter type-id='type-id-11' is-artificial='yes'/>
161          <!-- artificial parameter of type 'int' -->
162          <parameter type-id='type-id-3' is-artificial='yes'/>
163          <!-- artificial parameter of type 'void**' -->
164          <parameter type-id='type-id-12' is-artificial='yes'/>
165          <!-- void -->
166          <return type-id='type-id-13'/>
167        </function-decl>
168      </member-function>
169      <member-function access='public'>
170        <!-- s0::integer s0::mem_fun() -->
171        <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'>
172          <!-- implicit parameter of type 's0*' -->
173          <parameter type-id='type-id-11' is-artificial='yes'/>
174          <!-- typedef s0::integer -->
175          <return type-id='type-id-9'/>
176        </function-decl>
177      </member-function>
178    </class-decl>
179    <!-- s0& -->
180    <reference-type-def kind='lvalue' type-id='type-id-8' size-in-bits='64' id='type-id-14'/>
181    <!-- s0* -->
182    <pointer-type-def type-id='type-id-8' 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 foo(s0&) -->
188    <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'>
189      <!-- parameter of type 's0&' -->
190      <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'/>
191      <!-- void -->
192      <return type-id='type-id-13'/>
193    </function-decl>
194    <!-- int main() -->
195    <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'>
196      <!-- int -->
197      <return type-id='type-id-3'/>
198    </function-decl>
199    <!-- void -->
200    <type-decl name='void' id='type-id-13'/>
201  </abi-instr>
202</abi-corpus>
203