Add serialized ABI definition files
[urcu.git] / extras / abi / 0.9 / x86_64-pc-linux-gnu / liburcu-bp.so.4.xml
diff --git a/extras/abi/0.9/x86_64-pc-linux-gnu/liburcu-bp.so.4.xml b/extras/abi/0.9/x86_64-pc-linux-gnu/liburcu-bp.so.4.xml
new file mode 100644 (file)
index 0000000..bb66e83
--- /dev/null
@@ -0,0 +1,836 @@
+<abi-corpus architecture='elf-amd-x86_64' soname='liburcu-bp.so.4'>
+  <elf-needed>
+    <dependency name='liburcu-common.so.4'/>
+    <dependency name='libpthread.so.0'/>
+    <dependency name='libc.so.6'/>
+    <dependency name='ld-linux-x86-64.so.2'/>
+  </elf-needed>
+  <elf-function-symbols>
+    <!-- call_rcu_after_fork_child_bp -->
+    <elf-symbol name='call_rcu_after_fork_child_bp' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- call_rcu_after_fork_parent_bp -->
+    <elf-symbol name='call_rcu_after_fork_parent_bp' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- call_rcu_before_fork_bp -->
+    <elf-symbol name='call_rcu_before_fork_bp' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- call_rcu_bp -->
+    <elf-symbol name='call_rcu_bp' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- call_rcu_data_free_bp -->
+    <elf-symbol name='call_rcu_data_free_bp' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- compat_futex_async -->
+    <elf-symbol name='compat_futex_async' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- compat_futex_noasync -->
+    <elf-symbol name='compat_futex_noasync' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- create_all_cpu_call_rcu_data_bp -->
+    <elf-symbol name='create_all_cpu_call_rcu_data_bp' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- create_call_rcu_data_bp -->
+    <elf-symbol name='create_call_rcu_data_bp' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- defer_rcu_bp -->
+    <elf-symbol name='defer_rcu_bp' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- free_all_cpu_call_rcu_data_bp -->
+    <elf-symbol name='free_all_cpu_call_rcu_data_bp' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- get_call_rcu_data_bp -->
+    <elf-symbol name='get_call_rcu_data_bp' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- get_call_rcu_thread_bp -->
+    <elf-symbol name='get_call_rcu_thread_bp' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- get_cpu_call_rcu_data_bp -->
+    <elf-symbol name='get_cpu_call_rcu_data_bp' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- get_default_call_rcu_data_bp -->
+    <elf-symbol name='get_default_call_rcu_data_bp' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- get_thread_call_rcu_data_bp -->
+    <elf-symbol name='get_thread_call_rcu_data_bp' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- rcu_barrier_bp -->
+    <elf-symbol name='rcu_barrier_bp' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- rcu_bp_after_fork_child -->
+    <elf-symbol name='rcu_bp_after_fork_child' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- rcu_bp_after_fork_parent -->
+    <elf-symbol name='rcu_bp_after_fork_parent' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- rcu_bp_before_fork -->
+    <elf-symbol name='rcu_bp_before_fork' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- rcu_bp_register -->
+    <elf-symbol name='rcu_bp_register' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- rcu_cmpxchg_pointer_sym -->
+    <elf-symbol name='rcu_cmpxchg_pointer_sym' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- rcu_cmpxchg_pointer_sym_bp -->
+    <elf-symbol name='rcu_cmpxchg_pointer_sym_bp' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- rcu_defer_barrier_bp -->
+    <elf-symbol name='rcu_defer_barrier_bp' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- rcu_defer_barrier_thread_bp -->
+    <elf-symbol name='rcu_defer_barrier_thread_bp' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- rcu_defer_exit_bp -->
+    <elf-symbol name='rcu_defer_exit_bp' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- rcu_defer_register_thread_bp -->
+    <elf-symbol name='rcu_defer_register_thread_bp' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- rcu_defer_unregister_thread_bp -->
+    <elf-symbol name='rcu_defer_unregister_thread_bp' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- rcu_dereference_sym -->
+    <elf-symbol name='rcu_dereference_sym' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- rcu_dereference_sym_bp -->
+    <elf-symbol name='rcu_dereference_sym_bp' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- rcu_read_lock_bp -->
+    <elf-symbol name='rcu_read_lock_bp' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- rcu_read_ongoing_bp -->
+    <elf-symbol name='rcu_read_ongoing_bp' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- rcu_read_unlock_bp -->
+    <elf-symbol name='rcu_read_unlock_bp' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- rcu_set_pointer_sym -->
+    <elf-symbol name='rcu_set_pointer_sym' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- rcu_set_pointer_sym_bp -->
+    <elf-symbol name='rcu_set_pointer_sym_bp' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- rcu_xchg_pointer_sym -->
+    <elf-symbol name='rcu_xchg_pointer_sym' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- rcu_xchg_pointer_sym_bp -->
+    <elf-symbol name='rcu_xchg_pointer_sym_bp' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- set_cpu_call_rcu_data_bp -->
+    <elf-symbol name='set_cpu_call_rcu_data_bp' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- set_thread_call_rcu_data_bp -->
+    <elf-symbol name='set_thread_call_rcu_data_bp' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- synchronize_rcu_bp -->
+    <elf-symbol name='synchronize_rcu_bp' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+  </elf-function-symbols>
+  <elf-variable-symbols>
+    <!-- __urcu_compat_futex_cond -->
+    <elf-symbol name='__urcu_compat_futex_cond' size='48' type='object-type' binding='weak-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- __urcu_compat_futex_lock -->
+    <elf-symbol name='__urcu_compat_futex_lock' size='40' type='object-type' binding='weak-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- rcu_flavor_bp -->
+    <elf-symbol name='rcu_flavor_bp' size='96' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- rcu_gp_bp -->
+    <elf-symbol name='rcu_gp_bp' size='128' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- rcu_reader_bp -->
+    <elf-symbol name='rcu_reader_bp' size='8' type='tls-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- urcu_bp_has_sys_membarrier -->
+    <elf-symbol name='urcu_bp_has_sys_membarrier' size='4' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+  </elf-variable-symbols>
+  <abi-instr version='1.0' address-size='64' path='urcu-bp.c' comp-dir-path='/home/mjeanson/Git/lttng/userspace-rcu/stable-0.9' language='LANG_C99'>
+
+    <!-- char -->
+    <type-decl name='char' size-in-bits='8' id='type-id-1'/>
+    <!-- char[40] -->
+    <array-type-def dimensions='1' type-id='type-id-1' size-in-bits='320' id='type-id-2'>
+      <!-- <anonymous range>[40] -->
+      <subrange length='40' type-id='type-id-3' id='type-id-4'/>
+
+    </array-type-def>
+    <!-- int -->
+    <type-decl name='int' size-in-bits='32' id='type-id-5'/>
+    <!-- long int -->
+    <type-decl name='long int' size-in-bits='64' id='type-id-6'/>
+    <!-- short int -->
+    <type-decl name='short int' size-in-bits='16' id='type-id-7'/>
+    <!-- unsigned int -->
+    <type-decl name='unsigned int' size-in-bits='32' id='type-id-8'/>
+    <!-- unsigned long int -->
+    <type-decl name='unsigned long int' size-in-bits='64' id='type-id-3'/>
+    <!-- void -->
+    <type-decl name='void' id='type-id-9'/>
+    <!-- struct rcu_gp_bp -->
+    <class-decl name='rcu_gp_bp' size-in-bits='1024' is-struct='yes' visibility='default' filepath='urcu/static/urcu-bp.h' line='76' column='1' id='type-id-10'>
+      <data-member access='public' layout-offset-in-bits='0'>
+        <!-- unsigned long int rcu_gp_bp::ctr -->
+        <var-decl name='ctr' type-id='type-id-3' visibility='default' filepath='urcu/static/urcu-bp.h' line='84' column='1'/>
+      </data-member>
+    </class-decl>
+    <!-- struct rcu_reader_bp -->
+    <class-decl name='rcu_reader_bp' size-in-bits='2048' is-struct='yes' visibility='default' filepath='urcu/static/urcu-bp.h' line='89' column='1' id='type-id-11'>
+      <data-member access='public' layout-offset-in-bits='0'>
+        <!-- unsigned long int rcu_reader_bp::ctr -->
+        <var-decl name='ctr' type-id='type-id-3' visibility='default' filepath='urcu/static/urcu-bp.h' line='91' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='1024'>
+        <!-- cds_list_head rcu_reader_bp::node -->
+        <var-decl name='node' type-id='type-id-12' visibility='default' filepath='urcu/static/urcu-bp.h' line='93' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='1152'>
+        <!-- pthread_t rcu_reader_bp::tid -->
+        <var-decl name='tid' type-id='type-id-13' visibility='default' filepath='urcu/static/urcu-bp.h' line='94' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='1216'>
+        <!-- int rcu_reader_bp::alloc -->
+        <var-decl name='alloc' type-id='type-id-5' visibility='default' filepath='urcu/static/urcu-bp.h' line='95' column='1'/>
+      </data-member>
+    </class-decl>
+    <!-- struct cds_list_head -->
+    <class-decl name='cds_list_head' size-in-bits='128' is-struct='yes' visibility='default' filepath='./urcu/list.h' line='35' column='1' id='type-id-12'>
+      <data-member access='public' layout-offset-in-bits='0'>
+        <!-- cds_list_head* cds_list_head::next -->
+        <var-decl name='next' type-id='type-id-14' visibility='default' filepath='./urcu/list.h' line='36' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='64'>
+        <!-- cds_list_head* cds_list_head::prev -->
+        <var-decl name='prev' type-id='type-id-14' visibility='default' filepath='./urcu/list.h' line='36' column='1'/>
+      </data-member>
+    </class-decl>
+    <!-- typedef unsigned long int pthread_t -->
+    <typedef-decl name='pthread_t' type-id='type-id-3' filepath='/usr/include/bits/pthreadtypes.h' line='27' column='1' id='type-id-13'/>
+    <!-- struct rcu_flavor_struct -->
+    <class-decl name='rcu_flavor_struct' size-in-bits='768' is-struct='yes' visibility='default' filepath='./urcu-flavor.h' line='30' column='1' id='type-id-15'>
+      <data-member access='public' layout-offset-in-bits='0'>
+        <!-- void ()* rcu_flavor_struct::read_lock -->
+        <var-decl name='read_lock' type-id='type-id-16' visibility='default' filepath='./urcu-flavor.h' line='31' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='64'>
+        <!-- void ()* rcu_flavor_struct::read_unlock -->
+        <var-decl name='read_unlock' type-id='type-id-16' visibility='default' filepath='./urcu-flavor.h' line='32' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='128'>
+        <!-- int ()* rcu_flavor_struct::read_ongoing -->
+        <var-decl name='read_ongoing' type-id='type-id-17' visibility='default' filepath='./urcu-flavor.h' line='33' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='192'>
+        <!-- void ()* rcu_flavor_struct::read_quiescent_state -->
+        <var-decl name='read_quiescent_state' type-id='type-id-16' visibility='default' filepath='./urcu-flavor.h' line='34' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='256'>
+        <!-- void (rcu_head*, void (rcu_head*)*)* rcu_flavor_struct::update_call_rcu -->
+        <var-decl name='update_call_rcu' type-id='type-id-18' visibility='default' filepath='./urcu-flavor.h' line='35' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='320'>
+        <!-- void ()* rcu_flavor_struct::update_synchronize_rcu -->
+        <var-decl name='update_synchronize_rcu' type-id='type-id-16' visibility='default' filepath='./urcu-flavor.h' line='37' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='384'>
+        <!-- void (void (void*)*, void*)* rcu_flavor_struct::update_defer_rcu -->
+        <var-decl name='update_defer_rcu' type-id='type-id-19' visibility='default' filepath='./urcu-flavor.h' line='38' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='448'>
+        <!-- void ()* rcu_flavor_struct::thread_offline -->
+        <var-decl name='thread_offline' type-id='type-id-16' visibility='default' filepath='./urcu-flavor.h' line='40' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='512'>
+        <!-- void ()* rcu_flavor_struct::thread_online -->
+        <var-decl name='thread_online' type-id='type-id-16' visibility='default' filepath='./urcu-flavor.h' line='41' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='576'>
+        <!-- void ()* rcu_flavor_struct::register_thread -->
+        <var-decl name='register_thread' type-id='type-id-16' visibility='default' filepath='./urcu-flavor.h' line='42' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='640'>
+        <!-- void ()* rcu_flavor_struct::unregister_thread -->
+        <var-decl name='unregister_thread' type-id='type-id-16' visibility='default' filepath='./urcu-flavor.h' line='43' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='704'>
+        <!-- void ()* rcu_flavor_struct::barrier -->
+        <var-decl name='barrier' type-id='type-id-16' visibility='default' filepath='./urcu-flavor.h' line='45' column='1'/>
+      </data-member>
+    </class-decl>
+    <!-- struct rcu_head -->
+    <class-decl name='rcu_head' size-in-bits='128' is-struct='yes' visibility='default' filepath='./urcu-call-rcu.h' line='59' column='1' id='type-id-20'>
+      <data-member access='public' layout-offset-in-bits='0'>
+        <!-- cds_wfcq_node rcu_head::next -->
+        <var-decl name='next' type-id='type-id-21' visibility='default' filepath='./urcu-call-rcu.h' line='60' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='64'>
+        <!-- void (rcu_head*)* rcu_head::func -->
+        <var-decl name='func' type-id='type-id-22' visibility='default' filepath='./urcu-call-rcu.h' line='61' column='1'/>
+      </data-member>
+    </class-decl>
+    <!-- struct cds_wfcq_node -->
+    <class-decl name='cds_wfcq_node' size-in-bits='64' is-struct='yes' visibility='default' filepath='urcu/wfcqueue.h' line='59' column='1' id='type-id-21'>
+      <data-member access='public' layout-offset-in-bits='0'>
+        <!-- cds_wfcq_node* cds_wfcq_node::next -->
+        <var-decl name='next' type-id='type-id-23' visibility='default' filepath='urcu/wfcqueue.h' line='60' column='1'/>
+      </data-member>
+    </class-decl>
+    <!-- struct call_rcu_data -->
+    <class-decl name='call_rcu_data' size-in-bits='1024' is-struct='yes' visibility='default' filepath='urcu-call-rcu-impl.h' line='54' column='1' id='type-id-24'>
+      <data-member access='public' layout-offset-in-bits='0'>
+        <!-- cds_wfcq_tail call_rcu_data::cbs_tail -->
+        <var-decl name='cbs_tail' type-id='type-id-25' visibility='default' filepath='urcu-call-rcu-impl.h' line='62' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='64'>
+        <!-- cds_wfcq_head call_rcu_data::cbs_head -->
+        <var-decl name='cbs_head' type-id='type-id-26' visibility='default' filepath='urcu-call-rcu-impl.h' line='63' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='448'>
+        <!-- unsigned long int call_rcu_data::flags -->
+        <var-decl name='flags' type-id='type-id-3' visibility='default' filepath='urcu-call-rcu-impl.h' line='64' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='512'>
+        <!-- int32_t call_rcu_data::futex -->
+        <var-decl name='futex' type-id='type-id-27' visibility='default' filepath='urcu-call-rcu-impl.h' line='65' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='576'>
+        <!-- unsigned long int call_rcu_data::qlen -->
+        <var-decl name='qlen' type-id='type-id-3' visibility='default' filepath='urcu-call-rcu-impl.h' line='66' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='640'>
+        <!-- pthread_t call_rcu_data::tid -->
+        <var-decl name='tid' type-id='type-id-13' visibility='default' filepath='urcu-call-rcu-impl.h' line='67' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='704'>
+        <!-- int call_rcu_data::cpu_affinity -->
+        <var-decl name='cpu_affinity' type-id='type-id-5' visibility='default' filepath='urcu-call-rcu-impl.h' line='68' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='768'>
+        <!-- unsigned long int call_rcu_data::gp_count -->
+        <var-decl name='gp_count' type-id='type-id-3' visibility='default' filepath='urcu-call-rcu-impl.h' line='69' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='832'>
+        <!-- cds_list_head call_rcu_data::list -->
+        <var-decl name='list' type-id='type-id-12' visibility='default' filepath='urcu-call-rcu-impl.h' line='70' column='1'/>
+      </data-member>
+    </class-decl>
+    <!-- struct cds_wfcq_tail -->
+    <class-decl name='cds_wfcq_tail' size-in-bits='64' is-struct='yes' visibility='default' filepath='urcu/wfcqueue.h' line='127' column='1' id='type-id-25'>
+      <data-member access='public' layout-offset-in-bits='0'>
+        <!-- cds_wfcq_node* cds_wfcq_tail::p -->
+        <var-decl name='p' type-id='type-id-23' visibility='default' filepath='urcu/wfcqueue.h' line='128' column='1'/>
+      </data-member>
+    </class-decl>
+    <!-- struct cds_wfcq_head -->
+    <class-decl name='cds_wfcq_head' size-in-bits='384' is-struct='yes' visibility='default' filepath='urcu/wfcqueue.h' line='72' column='1' id='type-id-26'>
+      <data-member access='public' layout-offset-in-bits='0'>
+        <!-- cds_wfcq_node cds_wfcq_head::node -->
+        <var-decl name='node' type-id='type-id-21' visibility='default' filepath='urcu/wfcqueue.h' line='73' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='64'>
+        <!-- pthread_mutex_t cds_wfcq_head::lock -->
+        <var-decl name='lock' type-id='type-id-28' visibility='default' filepath='urcu/wfcqueue.h' line='74' column='1'/>
+      </data-member>
+    </class-decl>
+    <!-- typedef __anonymous_union__ pthread_mutex_t -->
+    <typedef-decl name='pthread_mutex_t' type-id='type-id-29' filepath='/usr/include/bits/pthreadtypes.h' line='72' column='1' id='type-id-28'/>
+    <!-- union {__pthread_mutex_s __data; char __size[40]; long int __align;} -->
+    <union-decl name='__anonymous_union__' size-in-bits='320' is-anonymous='yes' visibility='default' filepath='/usr/include/bits/pthreadtypes.h' line='67' column='1' id='type-id-29'>
+      <data-member access='private'>
+        <!-- __pthread_mutex_s __data -->
+        <var-decl name='__data' type-id='type-id-30' visibility='default' filepath='/usr/include/bits/pthreadtypes.h' line='69' column='1'/>
+      </data-member>
+      <data-member access='private'>
+        <!-- char __size[40] -->
+        <var-decl name='__size' type-id='type-id-2' visibility='default' filepath='/usr/include/bits/pthreadtypes.h' line='70' column='1'/>
+      </data-member>
+      <data-member access='private'>
+        <!-- long int __align -->
+        <var-decl name='__align' type-id='type-id-6' visibility='default' filepath='/usr/include/bits/pthreadtypes.h' line='71' column='1'/>
+      </data-member>
+    </union-decl>
+    <!-- struct __pthread_mutex_s -->
+    <class-decl name='__pthread_mutex_s' size-in-bits='320' is-struct='yes' visibility='default' filepath='/usr/include/bits/struct_mutex.h' line='22' column='1' id='type-id-30'>
+      <data-member access='public' layout-offset-in-bits='0'>
+        <!-- int __pthread_mutex_s::__lock -->
+        <var-decl name='__lock' type-id='type-id-5' visibility='default' filepath='/usr/include/bits/struct_mutex.h' line='24' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='32'>
+        <!-- unsigned int __pthread_mutex_s::__count -->
+        <var-decl name='__count' type-id='type-id-8' visibility='default' filepath='/usr/include/bits/struct_mutex.h' line='25' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='64'>
+        <!-- int __pthread_mutex_s::__owner -->
+        <var-decl name='__owner' type-id='type-id-5' visibility='default' filepath='/usr/include/bits/struct_mutex.h' line='26' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='96'>
+        <!-- unsigned int __pthread_mutex_s::__nusers -->
+        <var-decl name='__nusers' type-id='type-id-8' visibility='default' filepath='/usr/include/bits/struct_mutex.h' line='28' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='128'>
+        <!-- int __pthread_mutex_s::__kind -->
+        <var-decl name='__kind' type-id='type-id-5' visibility='default' filepath='/usr/include/bits/struct_mutex.h' line='32' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='160'>
+        <!-- short int __pthread_mutex_s::__spins -->
+        <var-decl name='__spins' type-id='type-id-7' visibility='default' filepath='/usr/include/bits/struct_mutex.h' line='34' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='176'>
+        <!-- short int __pthread_mutex_s::__elision -->
+        <var-decl name='__elision' type-id='type-id-7' visibility='default' filepath='/usr/include/bits/struct_mutex.h' line='35' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='192'>
+        <!-- __pthread_list_t __pthread_mutex_s::__list -->
+        <var-decl name='__list' type-id='type-id-31' visibility='default' filepath='/usr/include/bits/struct_mutex.h' line='36' column='1'/>
+      </data-member>
+    </class-decl>
+    <!-- typedef __pthread_internal_list __pthread_list_t -->
+    <typedef-decl name='__pthread_list_t' type-id='type-id-32' filepath='/usr/include/bits/thread-shared-types.h' line='53' column='1' id='type-id-31'/>
+    <!-- struct __pthread_internal_list -->
+    <class-decl name='__pthread_internal_list' size-in-bits='128' is-struct='yes' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='49' column='1' id='type-id-32'>
+      <data-member access='public' layout-offset-in-bits='0'>
+        <!-- __pthread_internal_list* __pthread_internal_list::__prev -->
+        <var-decl name='__prev' type-id='type-id-33' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='51' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='64'>
+        <!-- __pthread_internal_list* __pthread_internal_list::__next -->
+        <var-decl name='__next' type-id='type-id-33' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='52' column='1'/>
+      </data-member>
+    </class-decl>
+    <!-- typedef __int32_t int32_t -->
+    <typedef-decl name='int32_t' type-id='type-id-34' filepath='/usr/include/bits/stdint-intn.h' line='26' column='1' id='type-id-27'/>
+    <!-- typedef int __int32_t -->
+    <typedef-decl name='__int32_t' type-id='type-id-5' filepath='/usr/include/bits/types.h' line='41' column='1' id='type-id-34'/>
+    <!-- __pthread_internal_list* -->
+    <pointer-type-def type-id='type-id-32' size-in-bits='64' id='type-id-33'/>
+    <!-- call_rcu_data* -->
+    <pointer-type-def type-id='type-id-24' size-in-bits='64' id='type-id-35'/>
+    <!-- cds_list_head* -->
+    <pointer-type-def type-id='type-id-12' size-in-bits='64' id='type-id-14'/>
+    <!-- cds_wfcq_node* -->
+    <pointer-type-def type-id='type-id-21' size-in-bits='64' id='type-id-23'/>
+    <!-- const rcu_flavor_struct -->
+    <qualified-type-def type-id='type-id-15' const='yes' id='type-id-36'/>
+    <!-- int ()* -->
+    <pointer-type-def type-id='type-id-37' size-in-bits='64' id='type-id-17'/>
+    <!-- rcu_head* -->
+    <pointer-type-def type-id='type-id-20' size-in-bits='64' id='type-id-38'/>
+    <!-- rcu_reader_bp* -->
+    <pointer-type-def type-id='type-id-11' size-in-bits='64' id='type-id-39'/>
+    <!-- void ()* -->
+    <pointer-type-def type-id='type-id-40' size-in-bits='64' id='type-id-16'/>
+    <!-- void (rcu_head*)* -->
+    <pointer-type-def type-id='type-id-41' size-in-bits='64' id='type-id-22'/>
+    <!-- void (rcu_head*, void (rcu_head*)*)* -->
+    <pointer-type-def type-id='type-id-42' size-in-bits='64' id='type-id-18'/>
+    <!-- void (void (void*)*, void*)* -->
+    <pointer-type-def type-id='type-id-43' size-in-bits='64' id='type-id-19'/>
+    <!-- void (void*)* -->
+    <pointer-type-def type-id='type-id-44' size-in-bits='64' id='type-id-45'/>
+    <!-- void* -->
+    <pointer-type-def type-id='type-id-9' size-in-bits='64' id='type-id-46'/>
+    <!-- void** -->
+    <pointer-type-def type-id='type-id-46' size-in-bits='64' id='type-id-47'/>
+    <!-- int urcu_bp_has_sys_membarrier -->
+    <var-decl name='urcu_bp_has_sys_membarrier' type-id='type-id-5' mangled-name='urcu_bp_has_sys_membarrier' visibility='default' filepath='urcu/static/urcu-bp.h' line='105' column='1' elf-symbol-id='urcu_bp_has_sys_membarrier'/>
+    <!-- rcu_gp_bp rcu_gp_bp -->
+    <var-decl name='rcu_gp_bp' type-id='type-id-10' mangled-name='rcu_gp_bp' visibility='default' filepath='urcu/static/urcu-bp.h' line='87' column='1' elf-symbol-id='rcu_gp_bp'/>
+    <!-- rcu_reader_bp* rcu_reader_bp -->
+    <var-decl name='rcu_reader_bp' type-id='type-id-39' mangled-name='rcu_reader_bp' visibility='default' filepath='urcu/static/urcu-bp.h' line='103' column='1' elf-symbol-id='rcu_reader_bp'/>
+    <!-- const rcu_flavor_struct rcu_flavor_bp -->
+    <var-decl name='rcu_flavor_bp' type-id='type-id-36' mangled-name='rcu_flavor_bp' visibility='default' filepath='./urcu-flavor.h' line='64' column='1' elf-symbol-id='rcu_flavor_bp'/>
+    <!-- void rcu_defer_exit_bp() -->
+    <function-decl name='rcu_defer_exit_bp' mangled-name='rcu_defer_exit_bp' filepath='urcu-defer-impl.h' line='466' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_defer_exit_bp'>
+      <!-- void -->
+      <return type-id='type-id-9'/>
+    </function-decl>
+    <!-- void rcu_defer_unregister_thread_bp() -->
+    <function-decl name='rcu_defer_unregister_thread_bp' mangled-name='rcu_defer_unregister_thread_bp' filepath='urcu-defer-impl.h' line='448' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_defer_unregister_thread_bp'>
+      <!-- void -->
+      <return type-id='type-id-9'/>
+    </function-decl>
+    <!-- int rcu_defer_register_thread_bp() -->
+    <function-decl name='rcu_defer_register_thread_bp' mangled-name='rcu_defer_register_thread_bp' filepath='urcu-defer-impl.h' line='426' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_defer_register_thread_bp'>
+      <!-- int -->
+      <return type-id='type-id-5'/>
+    </function-decl>
+    <!-- void defer_rcu_bp(void (void*)*, void*) -->
+    <function-decl name='defer_rcu_bp' mangled-name='defer_rcu_bp' filepath='urcu-defer-impl.h' line='395' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='defer_rcu_bp'>
+      <!-- parameter of type 'void (void*)*' -->
+      <parameter type-id='type-id-45' name='fct' filepath='urcu-defer-impl.h' line='395' column='1'/>
+      <!-- parameter of type 'void*' -->
+      <parameter type-id='type-id-46' name='p' filepath='urcu-defer-impl.h' line='395' column='1'/>
+      <!-- void -->
+      <return type-id='type-id-9'/>
+    </function-decl>
+    <!-- void rcu_defer_barrier_bp() -->
+    <function-decl name='rcu_defer_barrier_bp' mangled-name='rcu_defer_barrier_bp' filepath='urcu-defer-impl.h' line='281' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_defer_barrier_bp'>
+      <!-- void -->
+      <return type-id='type-id-9'/>
+    </function-decl>
+    <!-- void rcu_defer_barrier_thread_bp() -->
+    <function-decl name='rcu_defer_barrier_thread_bp' mangled-name='rcu_defer_barrier_thread_bp' filepath='urcu-defer-impl.h' line='261' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_defer_barrier_thread_bp'>
+      <!-- void -->
+      <return type-id='type-id-9'/>
+    </function-decl>
+    <!-- void call_rcu_after_fork_child_bp() -->
+    <function-decl name='call_rcu_after_fork_child_bp' mangled-name='call_rcu_after_fork_child_bp' filepath='urcu-call-rcu-impl.h' line='949' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='call_rcu_after_fork_child_bp'>
+      <!-- void -->
+      <return type-id='type-id-9'/>
+    </function-decl>
+    <!-- void call_rcu_after_fork_parent_bp() -->
+    <function-decl name='call_rcu_after_fork_parent_bp' mangled-name='call_rcu_after_fork_parent_bp' filepath='urcu-call-rcu-impl.h' line='931' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='call_rcu_after_fork_parent_bp'>
+      <!-- void -->
+      <return type-id='type-id-9'/>
+    </function-decl>
+    <!-- void call_rcu_before_fork_bp() -->
+    <function-decl name='call_rcu_before_fork_bp' mangled-name='call_rcu_before_fork_bp' filepath='urcu-call-rcu-impl.h' line='909' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='call_rcu_before_fork_bp'>
+      <!-- void -->
+      <return type-id='type-id-9'/>
+    </function-decl>
+    <!-- void rcu_barrier_bp() -->
+    <function-decl name='rcu_barrier_bp' mangled-name='rcu_barrier_bp' filepath='urcu-call-rcu-impl.h' line='838' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_barrier_bp'>
+      <!-- void -->
+      <return type-id='type-id-9'/>
+    </function-decl>
+    <!-- void free_all_cpu_call_rcu_data_bp() -->
+    <function-decl name='free_all_cpu_call_rcu_data_bp' mangled-name='free_all_cpu_call_rcu_data_bp' filepath='urcu-call-rcu-impl.h' line='775' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='free_all_cpu_call_rcu_data_bp'>
+      <!-- void -->
+      <return type-id='type-id-9'/>
+    </function-decl>
+    <!-- void call_rcu_data_free_bp(call_rcu_data*) -->
+    <function-decl name='call_rcu_data_free_bp' mangled-name='call_rcu_data_free_bp' filepath='urcu-call-rcu-impl.h' line='743' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='call_rcu_data_free_bp'>
+      <!-- parameter of type 'call_rcu_data*' -->
+      <parameter type-id='type-id-35' name='crdp' filepath='urcu-call-rcu-impl.h' line='743' column='1'/>
+      <!-- void -->
+      <return type-id='type-id-9'/>
+    </function-decl>
+    <!-- void call_rcu_bp(rcu_head*, void (rcu_head*)*) -->
+    <function-decl name='call_rcu_bp' mangled-name='call_rcu_bp' filepath='urcu-call-rcu-impl.h' line='705' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='call_rcu_bp'>
+      <!-- parameter of type 'rcu_head*' -->
+      <parameter type-id='type-id-38' name='head' filepath='urcu-call-rcu-impl.h' line='705' column='1'/>
+      <!-- parameter of type 'void (rcu_head*)*' -->
+      <parameter type-id='type-id-22' name='func' filepath='urcu-call-rcu-impl.h' line='706' column='1'/>
+      <!-- void -->
+      <return type-id='type-id-9'/>
+    </function-decl>
+    <!-- int create_all_cpu_call_rcu_data_bp(unsigned long int) -->
+    <function-decl name='create_all_cpu_call_rcu_data_bp' mangled-name='create_all_cpu_call_rcu_data_bp' filepath='urcu-call-rcu-impl.h' line='627' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='create_all_cpu_call_rcu_data_bp'>
+      <!-- parameter of type 'unsigned long int' -->
+      <parameter type-id='type-id-3' name='flags' filepath='urcu-call-rcu-impl.h' line='627' column='1'/>
+      <!-- int -->
+      <return type-id='type-id-5'/>
+    </function-decl>
+    <!-- void set_thread_call_rcu_data_bp(call_rcu_data*) -->
+    <function-decl name='set_thread_call_rcu_data_bp' mangled-name='set_thread_call_rcu_data_bp' filepath='urcu-call-rcu-impl.h' line='614' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='set_thread_call_rcu_data_bp'>
+      <!-- parameter of type 'call_rcu_data*' -->
+      <parameter type-id='type-id-35' name='crdp' filepath='urcu-call-rcu-impl.h' line='614' column='1'/>
+      <!-- void -->
+      <return type-id='type-id-9'/>
+    </function-decl>
+    <!-- call_rcu_data* get_thread_call_rcu_data_bp() -->
+    <function-decl name='get_thread_call_rcu_data_bp' mangled-name='get_thread_call_rcu_data_bp' filepath='urcu-call-rcu-impl.h' line='598' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='get_thread_call_rcu_data_bp'>
+      <!-- call_rcu_data* -->
+      <return type-id='type-id-35'/>
+    </function-decl>
+    <!-- call_rcu_data* get_call_rcu_data_bp() -->
+    <function-decl name='get_call_rcu_data_bp' mangled-name='get_call_rcu_data_bp' filepath='urcu-call-rcu-impl.h' line='578' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='get_call_rcu_data_bp'>
+      <!-- call_rcu_data* -->
+      <return type-id='type-id-35'/>
+    </function-decl>
+    <!-- call_rcu_data* get_default_call_rcu_data_bp() -->
+    <function-decl name='get_default_call_rcu_data_bp' mangled-name='get_default_call_rcu_data_bp' filepath='urcu-call-rcu-impl.h' line='553' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='get_default_call_rcu_data_bp'>
+      <!-- call_rcu_data* -->
+      <return type-id='type-id-35'/>
+    </function-decl>
+    <!-- int set_cpu_call_rcu_data_bp(int, call_rcu_data*) -->
+    <function-decl name='set_cpu_call_rcu_data_bp' mangled-name='set_cpu_call_rcu_data_bp' filepath='urcu-call-rcu-impl.h' line='514' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='set_cpu_call_rcu_data_bp'>
+      <!-- parameter of type 'int' -->
+      <parameter type-id='type-id-5' name='cpu' filepath='urcu-call-rcu-impl.h' line='514' column='1'/>
+      <!-- parameter of type 'call_rcu_data*' -->
+      <parameter type-id='type-id-35' name='crdp' filepath='urcu-call-rcu-impl.h' line='514' column='1'/>
+      <!-- int -->
+      <return type-id='type-id-5'/>
+    </function-decl>
+    <!-- call_rcu_data* create_call_rcu_data_bp(unsigned long int, int) -->
+    <function-decl name='create_call_rcu_data_bp' mangled-name='create_call_rcu_data_bp' filepath='urcu-call-rcu-impl.h' line='490' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='create_call_rcu_data_bp'>
+      <!-- parameter of type 'unsigned long int' -->
+      <parameter type-id='type-id-3' name='flags' filepath='urcu-call-rcu-impl.h' line='490' column='1'/>
+      <!-- parameter of type 'int' -->
+      <parameter type-id='type-id-5' name='cpu_affinity' filepath='urcu-call-rcu-impl.h' line='491' column='1'/>
+      <!-- call_rcu_data* -->
+      <return type-id='type-id-35'/>
+    </function-decl>
+    <!-- pthread_t get_call_rcu_thread_bp(call_rcu_data*) -->
+    <function-decl name='get_call_rcu_thread_bp' mangled-name='get_call_rcu_thread_bp' filepath='urcu-call-rcu-impl.h' line='472' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='get_call_rcu_thread_bp'>
+      <!-- parameter of type 'call_rcu_data*' -->
+      <parameter type-id='type-id-35' name='crdp' filepath='urcu-call-rcu-impl.h' line='472' column='1'/>
+      <!-- typedef pthread_t -->
+      <return type-id='type-id-13'/>
+    </function-decl>
+    <!-- call_rcu_data* get_cpu_call_rcu_data_bp(int) -->
+    <function-decl name='get_cpu_call_rcu_data_bp' mangled-name='get_cpu_call_rcu_data_bp' filepath='urcu-call-rcu-impl.h' line='450' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='get_cpu_call_rcu_data_bp'>
+      <!-- parameter of type 'int' -->
+      <parameter type-id='type-id-5' name='cpu' filepath='urcu-call-rcu-impl.h' line='450' column='1'/>
+      <!-- call_rcu_data* -->
+      <return type-id='type-id-35'/>
+    </function-decl>
+    <!-- void* rcu_cmpxchg_pointer_sym_bp(void**, void*, void*) -->
+    <function-decl name='rcu_cmpxchg_pointer_sym_bp' mangled-name='rcu_cmpxchg_pointer_sym_bp' filepath='urcu-bp.c' line='721' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_cmpxchg_pointer_sym_bp'>
+      <!-- parameter of type 'void**' -->
+      <parameter type-id='type-id-47' name='p' filepath='urcu-bp.c' line='721' column='1'/>
+      <!-- parameter of type 'void*' -->
+      <parameter type-id='type-id-46' name='old' filepath='urcu-bp.c' line='721' column='1'/>
+      <!-- parameter of type 'void*' -->
+      <parameter type-id='type-id-46' name='_new' filepath='urcu-bp.c' line='721' column='1'/>
+      <!-- void* -->
+      <return type-id='type-id-46'/>
+    </function-decl>
+    <!-- void* rcu_xchg_pointer_sym_bp(void**, void*) -->
+    <function-decl name='rcu_xchg_pointer_sym_bp' mangled-name='rcu_xchg_pointer_sym_bp' filepath='urcu-bp.c' line='715' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_xchg_pointer_sym_bp'>
+      <!-- parameter of type 'void**' -->
+      <parameter type-id='type-id-47' name='p' filepath='urcu-bp.c' line='715' column='1'/>
+      <!-- parameter of type 'void*' -->
+      <parameter type-id='type-id-46' name='v' filepath='urcu-bp.c' line='715' column='1'/>
+      <!-- void* -->
+      <return type-id='type-id-46'/>
+    </function-decl>
+    <!-- void* rcu_set_pointer_sym_bp(void**, void*) -->
+    <function-decl name='rcu_set_pointer_sym_bp' mangled-name='rcu_set_pointer_sym_bp' filepath='urcu-bp.c' line='708' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_set_pointer_sym_bp'>
+      <!-- parameter of type 'void**' -->
+      <parameter type-id='type-id-47' name='p' filepath='urcu-bp.c' line='708' column='1'/>
+      <!-- parameter of type 'void*' -->
+      <parameter type-id='type-id-46' name='v' filepath='urcu-bp.c' line='708' column='1'/>
+      <!-- void* -->
+      <return type-id='type-id-46'/>
+    </function-decl>
+    <!-- void* rcu_dereference_sym_bp(void*) -->
+    <function-decl name='rcu_dereference_sym_bp' mangled-name='rcu_dereference_sym_bp' filepath='urcu-bp.c' line='703' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_dereference_sym_bp'>
+      <!-- parameter of type 'void*' -->
+      <parameter type-id='type-id-46' name='p' filepath='urcu-bp.c' line='703' column='1'/>
+      <!-- void* -->
+      <return type-id='type-id-46'/>
+    </function-decl>
+    <!-- void rcu_bp_after_fork_child() -->
+    <function-decl name='rcu_bp_after_fork_child' mangled-name='rcu_bp_after_fork_child' filepath='urcu-bp.c' line='690' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_bp_after_fork_child'>
+      <!-- void -->
+      <return type-id='type-id-9'/>
+    </function-decl>
+    <!-- void rcu_bp_after_fork_parent() -->
+    <function-decl name='rcu_bp_after_fork_parent' mangled-name='rcu_bp_after_fork_parent' filepath='urcu-bp.c' line='655' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_bp_after_fork_parent'>
+      <!-- void -->
+      <return type-id='type-id-9'/>
+    </function-decl>
+    <!-- void rcu_bp_before_fork() -->
+    <function-decl name='rcu_bp_before_fork' mangled-name='rcu_bp_before_fork' filepath='urcu-bp.c' line='641' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_bp_before_fork'>
+      <!-- void -->
+      <return type-id='type-id-9'/>
+    </function-decl>
+    <!-- void rcu_bp_register() -->
+    <function-decl name='rcu_bp_register' mangled-name='rcu_bp_register' filepath='urcu-bp.c' line='518' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_bp_register'>
+      <!-- void -->
+      <return type-id='type-id-9'/>
+    </function-decl>
+    <!-- int rcu_read_ongoing_bp() -->
+    <function-decl name='rcu_read_ongoing_bp' mangled-name='rcu_read_ongoing_bp' filepath='urcu-bp.c' line='351' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_read_ongoing_bp'>
+      <!-- int -->
+      <return type-id='type-id-5'/>
+    </function-decl>
+    <!-- void rcu_read_unlock_bp() -->
+    <function-decl name='rcu_read_unlock_bp' mangled-name='rcu_read_unlock_bp' filepath='urcu-bp.c' line='346' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_read_unlock_bp'>
+      <!-- void -->
+      <return type-id='type-id-9'/>
+    </function-decl>
+    <!-- void rcu_read_lock_bp() -->
+    <function-decl name='rcu_read_lock_bp' mangled-name='rcu_read_lock_bp' filepath='urcu-bp.c' line='341' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_read_lock_bp'>
+      <!-- void -->
+      <return type-id='type-id-9'/>
+    </function-decl>
+    <!-- void synchronize_rcu_bp() -->
+    <function-decl name='synchronize_rcu_bp' mangled-name='synchronize_rcu_bp' filepath='urcu-bp.c' line='258' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='synchronize_rcu_bp'>
+      <!-- void -->
+      <return type-id='type-id-9'/>
+    </function-decl>
+    <!-- int () -->
+    <function-type size-in-bits='64' id='type-id-37'>
+      <!-- int -->
+      <return type-id='type-id-5'/>
+    </function-type>
+    <!-- void () -->
+    <function-type size-in-bits='64' id='type-id-40'>
+      <!-- void -->
+      <return type-id='type-id-9'/>
+    </function-type>
+    <!-- void (rcu_head*) -->
+    <function-type size-in-bits='64' id='type-id-41'>
+      <!-- parameter of type 'rcu_head*' -->
+      <parameter type-id='type-id-38'/>
+      <!-- void -->
+      <return type-id='type-id-9'/>
+    </function-type>
+    <!-- void (rcu_head*, void (rcu_head*)*) -->
+    <function-type size-in-bits='64' id='type-id-42'>
+      <!-- parameter of type 'rcu_head*' -->
+      <parameter type-id='type-id-38'/>
+      <!-- parameter of type 'void (rcu_head*)*' -->
+      <parameter type-id='type-id-22'/>
+      <!-- void -->
+      <return type-id='type-id-9'/>
+    </function-type>
+    <!-- void (void (void*)*, void*) -->
+    <function-type size-in-bits='64' id='type-id-43'>
+      <!-- parameter of type 'void (void*)*' -->
+      <parameter type-id='type-id-45'/>
+      <!-- parameter of type 'void*' -->
+      <parameter type-id='type-id-46'/>
+      <!-- void -->
+      <return type-id='type-id-9'/>
+    </function-type>
+    <!-- void (void*) -->
+    <function-type size-in-bits='64' id='type-id-44'>
+      <!-- parameter of type 'void*' -->
+      <parameter type-id='type-id-46'/>
+      <!-- void -->
+      <return type-id='type-id-9'/>
+    </function-type>
+  </abi-instr>
+  <abi-instr version='1.0' address-size='64' path='urcu-pointer.c' comp-dir-path='/home/mjeanson/Git/lttng/userspace-rcu/stable-0.9' language='LANG_C99'>
+    <!-- void* rcu_cmpxchg_pointer_sym(void**, void*, void*) -->
+    <function-decl name='rcu_cmpxchg_pointer_sym' mangled-name='rcu_cmpxchg_pointer_sym' filepath='urcu-pointer.c' line='53' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_cmpxchg_pointer_sym'>
+      <!-- parameter of type 'void**' -->
+      <parameter type-id='type-id-47' name='p' filepath='urcu-pointer.c' line='53' column='1'/>
+      <!-- parameter of type 'void*' -->
+      <parameter type-id='type-id-46' name='old' filepath='urcu-pointer.c' line='53' column='1'/>
+      <!-- parameter of type 'void*' -->
+      <parameter type-id='type-id-46' name='_new' filepath='urcu-pointer.c' line='53' column='1'/>
+      <!-- void* -->
+      <return type-id='type-id-46'/>
+    </function-decl>
+    <!-- void* rcu_xchg_pointer_sym(void**, void*) -->
+    <function-decl name='rcu_xchg_pointer_sym' mangled-name='rcu_xchg_pointer_sym' filepath='urcu-pointer.c' line='47' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_xchg_pointer_sym'>
+      <!-- parameter of type 'void**' -->
+      <parameter type-id='type-id-47' name='p' filepath='urcu-pointer.c' line='47' column='1'/>
+      <!-- parameter of type 'void*' -->
+      <parameter type-id='type-id-46' name='v' filepath='urcu-pointer.c' line='47' column='1'/>
+      <!-- void* -->
+      <return type-id='type-id-46'/>
+    </function-decl>
+    <!-- void* rcu_set_pointer_sym(void**, void*) -->
+    <function-decl name='rcu_set_pointer_sym' mangled-name='rcu_set_pointer_sym' filepath='urcu-pointer.c' line='40' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_set_pointer_sym'>
+      <!-- parameter of type 'void**' -->
+      <parameter type-id='type-id-47' name='p' filepath='urcu-pointer.c' line='40' column='1'/>
+      <!-- parameter of type 'void*' -->
+      <parameter type-id='type-id-46' name='v' filepath='urcu-pointer.c' line='40' column='1'/>
+      <!-- void* -->
+      <return type-id='type-id-46'/>
+    </function-decl>
+    <!-- void* rcu_dereference_sym(void*) -->
+    <function-decl name='rcu_dereference_sym' mangled-name='rcu_dereference_sym' filepath='urcu-pointer.c' line='35' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_dereference_sym'>
+      <!-- parameter of type 'void*' -->
+      <parameter type-id='type-id-46' name='p' filepath='urcu-pointer.c' line='35' column='1'/>
+      <!-- void* -->
+      <return type-id='type-id-46'/>
+    </function-decl>
+  </abi-instr>
+  <abi-instr version='1.0' address-size='64' path='compat_futex.c' comp-dir-path='/home/mjeanson/Git/lttng/userspace-rcu/stable-0.9' language='LANG_C99'>
+
+
+    <!-- char[48] -->
+    <array-type-def dimensions='1' type-id='type-id-1' size-in-bits='384' id='type-id-48'>
+      <!-- <anonymous range>[48] -->
+      <subrange length='48' type-id='type-id-3' id='type-id-49'/>
+
+    </array-type-def>
+    <!-- long long int -->
+    <type-decl name='long long int' size-in-bits='64' id='type-id-50'/>
+    <!-- long long unsigned int -->
+    <type-decl name='long long unsigned int' size-in-bits='64' id='type-id-51'/>
+    <!-- unsigned int[2] -->
+    <array-type-def dimensions='1' type-id='type-id-8' size-in-bits='64' id='type-id-52'>
+      <!-- <anonymous range>[2] -->
+      <subrange length='2' type-id='type-id-3' id='type-id-53'/>
+
+    </array-type-def>
+    <!-- typedef __anonymous_union__ pthread_cond_t -->
+    <typedef-decl name='pthread_cond_t' type-id='type-id-54' filepath='/usr/include/bits/pthreadtypes.h' line='80' column='1' id='type-id-55'/>
+    <!-- union {__pthread_cond_s __data; char __size[48]; long long int __align;} -->
+    <union-decl name='__anonymous_union__' size-in-bits='384' is-anonymous='yes' visibility='default' filepath='/usr/include/bits/pthreadtypes.h' line='75' column='1' id='type-id-54'>
+      <data-member access='private'>
+        <!-- __pthread_cond_s __data -->
+        <var-decl name='__data' type-id='type-id-56' visibility='default' filepath='/usr/include/bits/pthreadtypes.h' line='77' column='1'/>
+      </data-member>
+      <data-member access='private'>
+        <!-- char __size[48] -->
+        <var-decl name='__size' type-id='type-id-48' visibility='default' filepath='/usr/include/bits/pthreadtypes.h' line='78' column='1'/>
+      </data-member>
+      <data-member access='private'>
+        <!-- long long int __align -->
+        <var-decl name='__align' type-id='type-id-50' visibility='default' filepath='/usr/include/bits/pthreadtypes.h' line='79' column='1'/>
+      </data-member>
+    </union-decl>
+    <!-- struct __pthread_cond_s -->
+    <class-decl name='__pthread_cond_s' size-in-bits='384' is-struct='yes' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='92' column='1' id='type-id-56'>
+      <data-member access='public' layout-offset-in-bits='0'>
+        <!-- union {long long unsigned int __wseq; struct {unsigned int __low; unsigned int __high;} __wseq32;} -->
+        <var-decl name='' type-id='type-id-57' visibility='default'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='128'>
+        <!-- unsigned int __pthread_cond_s::__g_refs[2] -->
+        <var-decl name='__g_refs' type-id='type-id-52' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='112' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='192'>
+        <!-- unsigned int __pthread_cond_s::__g_size[2] -->
+        <var-decl name='__g_size' type-id='type-id-52' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='113' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='256'>
+        <!-- unsigned int __pthread_cond_s::__g1_orig_size -->
+        <var-decl name='__g1_orig_size' type-id='type-id-8' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='114' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='288'>
+        <!-- unsigned int __pthread_cond_s::__wrefs -->
+        <var-decl name='__wrefs' type-id='type-id-8' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='115' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='320'>
+        <!-- unsigned int __pthread_cond_s::__g_signals[2] -->
+        <var-decl name='__g_signals' type-id='type-id-52' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='116' column='1'/>
+      </data-member>
+    </class-decl>
+    <!-- union {long long unsigned int __wseq; struct {unsigned int __low; unsigned int __high;} __wseq32;} -->
+    <union-decl name='__anonymous_union__1' size-in-bits='64' is-anonymous='yes' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='94' column='1' id='type-id-57'>
+      <data-member access='private'>
+        <!-- long long unsigned int __wseq -->
+        <var-decl name='__wseq' type-id='type-id-51' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='96' column='1'/>
+      </data-member>
+      <data-member access='private'>
+        <!-- struct {unsigned int __low; unsigned int __high;} __wseq32 -->
+        <var-decl name='__wseq32' type-id='type-id-58' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='101' column='1'/>
+      </data-member>
+    </union-decl>
+    <!-- struct {unsigned int __low; unsigned int __high;} -->
+    <class-decl name='__anonymous_struct__' size-in-bits='64' is-struct='yes' is-anonymous='yes' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='97' column='1' id='type-id-58'>
+      <data-member access='public' layout-offset-in-bits='0'>
+        <!-- unsigned int __low -->
+        <var-decl name='__low' type-id='type-id-8' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='99' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='32'>
+        <!-- unsigned int __high -->
+        <var-decl name='__high' type-id='type-id-8' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='100' column='1'/>
+      </data-member>
+    </class-decl>
+    <!-- struct timespec -->
+    <class-decl name='timespec' size-in-bits='128' is-struct='yes' visibility='default' filepath='/usr/include/bits/types/struct_timespec.h' line='10' column='1' id='type-id-59'>
+      <data-member access='public' layout-offset-in-bits='0'>
+        <!-- __time_t timespec::tv_sec -->
+        <var-decl name='tv_sec' type-id='type-id-60' visibility='default' filepath='/usr/include/bits/types/struct_timespec.h' line='12' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='64'>
+        <!-- __syscall_slong_t timespec::tv_nsec -->
+        <var-decl name='tv_nsec' type-id='type-id-61' visibility='default' filepath='/usr/include/bits/types/struct_timespec.h' line='16' column='1'/>
+      </data-member>
+    </class-decl>
+    <!-- typedef long int __time_t -->
+    <typedef-decl name='__time_t' type-id='type-id-6' filepath='/usr/include/bits/types.h' line='160' column='1' id='type-id-60'/>
+    <!-- typedef long int __syscall_slong_t -->
+    <typedef-decl name='__syscall_slong_t' type-id='type-id-6' filepath='/usr/include/bits/types.h' line='197' column='1' id='type-id-61'/>
+    <!-- const timespec -->
+    <qualified-type-def type-id='type-id-59' const='yes' id='type-id-62'/>
+    <!-- const timespec* -->
+    <pointer-type-def type-id='type-id-62' size-in-bits='64' id='type-id-63'/>
+    <!-- int32_t* -->
+    <pointer-type-def type-id='type-id-27' size-in-bits='64' id='type-id-64'/>
+    <!-- pthread_mutex_t __urcu_compat_futex_lock -->
+    <var-decl name='__urcu_compat_futex_lock' type-id='type-id-28' mangled-name='__urcu_compat_futex_lock' visibility='default' filepath='compat_futex.c' line='44' column='1' elf-symbol-id='__urcu_compat_futex_lock'/>
+    <!-- pthread_cond_t __urcu_compat_futex_cond -->
+    <var-decl name='__urcu_compat_futex_cond' type-id='type-id-55' mangled-name='__urcu_compat_futex_cond' visibility='default' filepath='compat_futex.c' line='46' column='1' elf-symbol-id='__urcu_compat_futex_cond'/>
+    <!-- int compat_futex_async(int32_t*, int, int32_t, const timespec*, int32_t*, int32_t) -->
+    <function-decl name='compat_futex_async' mangled-name='compat_futex_async' filepath='compat_futex.c' line='118' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='compat_futex_async'>
+      <!-- parameter of type 'int32_t*' -->
+      <parameter type-id='type-id-64' name='uaddr' filepath='compat_futex.c' line='118' column='1'/>
+      <!-- parameter of type 'int' -->
+      <parameter type-id='type-id-5' name='op' filepath='compat_futex.c' line='118' column='1'/>
+      <!-- parameter of type 'typedef int32_t' -->
+      <parameter type-id='type-id-27' name='val' filepath='compat_futex.c' line='118' column='1'/>
+      <!-- parameter of type 'const timespec*' -->
+      <parameter type-id='type-id-63' name='timeout' filepath='compat_futex.c' line='119' column='1'/>
+      <!-- parameter of type 'int32_t*' -->
+      <parameter type-id='type-id-64' name='uaddr2' filepath='compat_futex.c' line='119' column='1'/>
+      <!-- parameter of type 'typedef int32_t' -->
+      <parameter type-id='type-id-27' name='val3' filepath='compat_futex.c' line='119' column='1'/>
+      <!-- int -->
+      <return type-id='type-id-5'/>
+    </function-decl>
+    <!-- int compat_futex_noasync(int32_t*, int, int32_t, const timespec*, int32_t*, int32_t) -->
+    <function-decl name='compat_futex_noasync' mangled-name='compat_futex_noasync' filepath='compat_futex.c' line='54' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='compat_futex_noasync'>
+      <!-- parameter of type 'int32_t*' -->
+      <parameter type-id='type-id-64' name='uaddr' filepath='compat_futex.c' line='54' column='1'/>
+      <!-- parameter of type 'int' -->
+      <parameter type-id='type-id-5' name='op' filepath='compat_futex.c' line='54' column='1'/>
+      <!-- parameter of type 'typedef int32_t' -->
+      <parameter type-id='type-id-27' name='val' filepath='compat_futex.c' line='54' column='1'/>
+      <!-- parameter of type 'const timespec*' -->
+      <parameter type-id='type-id-63' name='timeout' filepath='compat_futex.c' line='55' column='1'/>
+      <!-- parameter of type 'int32_t*' -->
+      <parameter type-id='type-id-64' name='uaddr2' filepath='compat_futex.c' line='55' column='1'/>
+      <!-- parameter of type 'typedef int32_t' -->
+      <parameter type-id='type-id-27' name='val3' filepath='compat_futex.c' line='55' column='1'/>
+      <!-- int -->
+      <return type-id='type-id-5'/>
+    </function-decl>
+  </abi-instr>
+</abi-corpus>
This page took 0.031811 seconds and 4 git commands to generate.