Update ABI definition files master
authorMichael Jeanson <mjeanson@efficios.com>
Tue, 12 Apr 2022 20:32:18 +0000 (16:32 -0400)
committerMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Fri, 22 Apr 2022 20:16:08 +0000 (16:16 -0400)
Update all ABI definition files with artefacts built on an Ubuntu 18.04
x86_64 to allow straightforward comparision with artefacts from our CI
system.

Change-Id: I916db6fb3e8a44e36047186ec4519e94acbb5939
Signed-off-by: Michael Jeanson <mjeanson@efficios.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
40 files changed:
extras/abi/0.10/x86_64-pc-linux-gnu/liburcu-bp.so.6.xml
extras/abi/0.10/x86_64-pc-linux-gnu/liburcu-cds.so.6.xml
extras/abi/0.10/x86_64-pc-linux-gnu/liburcu-common.so.6.xml
extras/abi/0.10/x86_64-pc-linux-gnu/liburcu-mb.so.6.xml
extras/abi/0.10/x86_64-pc-linux-gnu/liburcu-qsbr.so.6.xml
extras/abi/0.10/x86_64-pc-linux-gnu/liburcu-signal.so.6.xml
extras/abi/0.10/x86_64-pc-linux-gnu/liburcu.so.6.xml
extras/abi/0.11/x86_64-pc-linux-gnu/liburcu-bp.so.6.xml
extras/abi/0.11/x86_64-pc-linux-gnu/liburcu-cds.so.6.xml
extras/abi/0.11/x86_64-pc-linux-gnu/liburcu-common.so.6.xml
extras/abi/0.11/x86_64-pc-linux-gnu/liburcu-mb.so.6.xml
extras/abi/0.11/x86_64-pc-linux-gnu/liburcu-memb.so.6.xml
extras/abi/0.11/x86_64-pc-linux-gnu/liburcu-qsbr.so.6.xml
extras/abi/0.11/x86_64-pc-linux-gnu/liburcu-signal.so.6.xml
extras/abi/0.11/x86_64-pc-linux-gnu/liburcu.so.6.xml
extras/abi/0.12/x86_64-pc-linux-gnu/liburcu-bp.so.6.xml
extras/abi/0.12/x86_64-pc-linux-gnu/liburcu-cds.so.6.xml
extras/abi/0.12/x86_64-pc-linux-gnu/liburcu-common.so.6.xml
extras/abi/0.12/x86_64-pc-linux-gnu/liburcu-mb.so.6.xml
extras/abi/0.12/x86_64-pc-linux-gnu/liburcu-memb.so.6.xml
extras/abi/0.12/x86_64-pc-linux-gnu/liburcu-qsbr.so.6.xml
extras/abi/0.12/x86_64-pc-linux-gnu/liburcu-signal.so.6.xml
extras/abi/0.12/x86_64-pc-linux-gnu/liburcu.so.6.xml
extras/abi/0.13/x86_64-pc-linux-gnu/liburcu-bp.so.8.xml
extras/abi/0.13/x86_64-pc-linux-gnu/liburcu-cds.so.8.xml
extras/abi/0.13/x86_64-pc-linux-gnu/liburcu-common.so.8.xml
extras/abi/0.13/x86_64-pc-linux-gnu/liburcu-mb.so.8.xml
extras/abi/0.13/x86_64-pc-linux-gnu/liburcu-memb.so.8.xml
extras/abi/0.13/x86_64-pc-linux-gnu/liburcu-qsbr.so.8.xml
extras/abi/0.13/x86_64-pc-linux-gnu/liburcu-signal.so.8.xml
extras/abi/0.13/x86_64-pc-linux-gnu/liburcu.so.8.xml
extras/abi/0.14/x86_64-pc-linux-gnu/liburcu-bp.so.8.xml [new file with mode: 0644]
extras/abi/0.14/x86_64-pc-linux-gnu/liburcu-cds.so.8.xml [new file with mode: 0644]
extras/abi/0.14/x86_64-pc-linux-gnu/liburcu-common.so.8.xml [new file with mode: 0644]
extras/abi/0.14/x86_64-pc-linux-gnu/liburcu-mb.so.8.xml [new file with mode: 0644]
extras/abi/0.14/x86_64-pc-linux-gnu/liburcu-memb.so.8.xml [new file with mode: 0644]
extras/abi/0.14/x86_64-pc-linux-gnu/liburcu-qsbr.so.8.xml [new file with mode: 0644]
extras/abi/0.14/x86_64-pc-linux-gnu/liburcu-signal.so.8.xml [new file with mode: 0644]
extras/abi/0.14/x86_64-pc-linux-gnu/liburcu.so.8.xml [new file with mode: 0644]
extras/abi/README

index 311c49f1bc8b75611c7d3e58eb3eefdbfb04025a..3cc0c5d7b7e3835b8a692dcf170f3fde5accf986 100644 (file)
@@ -1,11 +1,14 @@
 <abi-corpus architecture='elf-amd-x86_64' soname='liburcu-bp.so.6'>
   <elf-needed>
-    <dependency name='liburcu-common.so.6'/>
     <dependency name='libpthread.so.0'/>
     <dependency name='libc.so.6'/>
     <dependency name='ld-linux-x86-64.so.2'/>
   </elf-needed>
   <elf-function-symbols>
+    <!-- _fini -->
+    <elf-symbol name='_fini' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- _init -->
+    <elf-symbol name='_init' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
     <!-- 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='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='src' 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'/>
+    <type-decl name='int' size-in-bits='32' id='type-id-1'/>
+    <!-- int urcu_bp_has_sys_membarrier -->
+    <var-decl name='urcu_bp_has_sys_membarrier' type-id='type-id-1' mangled-name='urcu_bp_has_sys_membarrier' visibility='default' filepath='../include/urcu/static/urcu-bp.h' line='109' column='1' elf-symbol-id='urcu_bp_has_sys_membarrier'/>
     <!-- struct rcu_gp_bp -->
-    <class-decl name='rcu_gp_bp' size-in-bits='1024' is-struct='yes' visibility='default' filepath='../include/urcu/static/urcu-bp.h' line='77' column='1' id='type-id-10'>
+    <class-decl name='rcu_gp_bp' size-in-bits='1024' is-struct='yes' visibility='default' filepath='../include/urcu/static/urcu-bp.h' line='77' column='1' id='type-id-2'>
       <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='../include/urcu/static/urcu-bp.h' line='85' column='1'/>
       </data-member>
     </class-decl>
+    <!-- unsigned long int -->
+    <type-decl name='unsigned long int' size-in-bits='64' id='type-id-3'/>
+    <!-- rcu_gp_bp rcu_gp_bp -->
+    <var-decl name='rcu_gp_bp' type-id='type-id-2' mangled-name='rcu_gp_bp' visibility='default' filepath='../include/urcu/static/urcu-bp.h' line='88' column='1' elf-symbol-id='rcu_gp_bp'/>
     <!-- struct rcu_reader_bp -->
-    <class-decl name='rcu_reader_bp' size-in-bits='2048' is-struct='yes' visibility='default' filepath='../include/urcu/static/urcu-bp.h' line='90' column='1' id='type-id-11'>
+    <class-decl name='rcu_reader_bp' size-in-bits='2048' is-struct='yes' visibility='default' filepath='../include/urcu/static/urcu-bp.h' line='90' column='1' id='type-id-4'>
       <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='../include/urcu/static/urcu-bp.h' line='92' 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='../include/urcu/static/urcu-bp.h' line='94' column='1'/>
+        <var-decl name='node' type-id='type-id-5' visibility='default' filepath='../include/urcu/static/urcu-bp.h' line='94' 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='../include/urcu/static/urcu-bp.h' line='95' column='1'/>
+        <var-decl name='tid' type-id='type-id-6' visibility='default' filepath='../include/urcu/static/urcu-bp.h' line='95' 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='../include/urcu/static/urcu-bp.h' line='96' column='1'/>
+        <var-decl name='alloc' type-id='type-id-1' visibility='default' filepath='../include/urcu/static/urcu-bp.h' line='96' 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='../include/urcu/list.h' line='35' column='1' id='type-id-12'>
+    <class-decl name='cds_list_head' size-in-bits='128' is-struct='yes' visibility='default' filepath='../include/urcu/list.h' line='35' column='1' id='type-id-5'>
       <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='../include/urcu/list.h' line='36' column='1'/>
+        <var-decl name='next' type-id='type-id-7' visibility='default' filepath='../include/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='../include/urcu/list.h' line='36' column='1'/>
+        <var-decl name='prev' type-id='type-id-7' visibility='default' filepath='../include/urcu/list.h' line='36' column='1'/>
       </data-member>
     </class-decl>
+    <!-- cds_list_head* -->
+    <pointer-type-def type-id='type-id-5' size-in-bits='64' id='type-id-7'/>
     <!-- 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'/>
+    <typedef-decl name='pthread_t' type-id='type-id-3' filepath='/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h' line='27' column='1' id='type-id-6'/>
+    <!-- rcu_reader_bp* -->
+    <pointer-type-def type-id='type-id-4' size-in-bits='64' id='type-id-8'/>
+    <!-- rcu_reader_bp* rcu_reader_bp -->
+    <var-decl name='rcu_reader_bp' type-id='type-id-8' mangled-name='rcu_reader_bp' visibility='default' filepath='../include/urcu/static/urcu-bp.h' line='104' column='1' elf-symbol-id='rcu_reader_bp'/>
     <!-- struct rcu_flavor_struct -->
-    <class-decl name='rcu_flavor_struct' size-in-bits='896' is-struct='yes' visibility='default' filepath='../src/urcu-flavor.h' line='40' column='1' id='type-id-15'>
+    <class-decl name='rcu_flavor_struct' size-in-bits='896' is-struct='yes' visibility='default' filepath='../src/urcu-flavor.h' line='40' column='1' id='type-id-9'>
       <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='../src/urcu-flavor.h' line='41' column='1'/>
+        <var-decl name='read_lock' type-id='type-id-10' visibility='default' filepath='../src/urcu-flavor.h' line='41' 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='../src/urcu-flavor.h' line='42' column='1'/>
+        <var-decl name='read_unlock' type-id='type-id-10' visibility='default' filepath='../src/urcu-flavor.h' line='42' 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='../src/urcu-flavor.h' line='43' column='1'/>
+        <var-decl name='read_ongoing' type-id='type-id-11' visibility='default' filepath='../src/urcu-flavor.h' line='43' 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='../src/urcu-flavor.h' line='44' column='1'/>
+        <var-decl name='read_quiescent_state' type-id='type-id-10' visibility='default' filepath='../src/urcu-flavor.h' line='44' 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='../src/urcu-flavor.h' line='45' column='1'/>
+        <var-decl name='update_call_rcu' type-id='type-id-12' visibility='default' filepath='../src/urcu-flavor.h' line='45' 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='../src/urcu-flavor.h' line='47' column='1'/>
+        <var-decl name='update_synchronize_rcu' type-id='type-id-10' visibility='default' filepath='../src/urcu-flavor.h' line='47' 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='../src/urcu-flavor.h' line='48' column='1'/>
+        <var-decl name='update_defer_rcu' type-id='type-id-13' visibility='default' filepath='../src/urcu-flavor.h' line='48' 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='../src/urcu-flavor.h' line='50' column='1'/>
+        <var-decl name='thread_offline' type-id='type-id-10' visibility='default' filepath='../src/urcu-flavor.h' line='50' 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='../src/urcu-flavor.h' line='51' column='1'/>
+        <var-decl name='thread_online' type-id='type-id-10' visibility='default' filepath='../src/urcu-flavor.h' line='51' 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='../src/urcu-flavor.h' line='52' column='1'/>
+        <var-decl name='register_thread' type-id='type-id-10' visibility='default' filepath='../src/urcu-flavor.h' line='52' 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='../src/urcu-flavor.h' line='53' column='1'/>
+        <var-decl name='unregister_thread' type-id='type-id-10' visibility='default' filepath='../src/urcu-flavor.h' line='53' 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='../src/urcu-flavor.h' line='55' column='1'/>
+        <var-decl name='barrier' type-id='type-id-10' visibility='default' filepath='../src/urcu-flavor.h' line='55' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='768'>
         <!-- void (urcu_atfork*)* rcu_flavor_struct::register_rculfhash_atfork -->
-        <var-decl name='register_rculfhash_atfork' type-id='type-id-20' visibility='default' filepath='../src/urcu-flavor.h' line='57' column='1'/>
+        <var-decl name='register_rculfhash_atfork' type-id='type-id-14' visibility='default' filepath='../src/urcu-flavor.h' line='57' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='832'>
         <!-- void (urcu_atfork*)* rcu_flavor_struct::unregister_rculfhash_atfork -->
-        <var-decl name='unregister_rculfhash_atfork' type-id='type-id-20' visibility='default' filepath='../src/urcu-flavor.h' line='58' column='1'/>
+        <var-decl name='unregister_rculfhash_atfork' type-id='type-id-14' visibility='default' filepath='../src/urcu-flavor.h' line='58' column='1'/>
       </data-member>
     </class-decl>
+    <!-- void -->
+    <type-decl name='void' id='type-id-15'/>
+    <!-- void ()* -->
+    <pointer-type-def type-id='type-id-16' size-in-bits='64' id='type-id-10'/>
+    <!-- int ()* -->
+    <pointer-type-def type-id='type-id-17' size-in-bits='64' id='type-id-11'/>
     <!-- struct rcu_head -->
-    <class-decl name='rcu_head' size-in-bits='128' is-struct='yes' visibility='default' filepath='../src/urcu-call-rcu.h' line='59' column='1' id='type-id-21'>
+    <class-decl name='rcu_head' size-in-bits='128' is-struct='yes' visibility='default' filepath='../src/urcu-call-rcu.h' line='59' column='1' id='type-id-18'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- cds_wfcq_node rcu_head::next -->
-        <var-decl name='next' type-id='type-id-22' visibility='default' filepath='../src/urcu-call-rcu.h' line='60' column='1'/>
+        <var-decl name='next' type-id='type-id-19' visibility='default' filepath='../src/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-23' visibility='default' filepath='../src/urcu-call-rcu.h' line='61' column='1'/>
+        <var-decl name='func' type-id='type-id-20' visibility='default' filepath='../src/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='../include/urcu/wfcqueue.h' line='59' column='1' id='type-id-22'>
+    <class-decl name='cds_wfcq_node' size-in-bits='64' is-struct='yes' visibility='default' filepath='../include/urcu/wfcqueue.h' line='59' column='1' id='type-id-19'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- cds_wfcq_node* cds_wfcq_node::next -->
-        <var-decl name='next' type-id='type-id-24' visibility='default' filepath='../include/urcu/wfcqueue.h' line='60' column='1'/>
+        <var-decl name='next' type-id='type-id-21' visibility='default' filepath='../include/urcu/wfcqueue.h' line='60' column='1'/>
       </data-member>
     </class-decl>
+    <!-- cds_wfcq_node* -->
+    <pointer-type-def type-id='type-id-19' size-in-bits='64' id='type-id-21'/>
+    <!-- rcu_head* -->
+    <pointer-type-def type-id='type-id-18' size-in-bits='64' id='type-id-22'/>
+    <!-- void (rcu_head*)* -->
+    <pointer-type-def type-id='type-id-23' size-in-bits='64' id='type-id-20'/>
+    <!-- void (rcu_head*, void (rcu_head*)*)* -->
+    <pointer-type-def type-id='type-id-24' size-in-bits='64' id='type-id-12'/>
+    <!-- void* -->
+    <pointer-type-def type-id='type-id-15' size-in-bits='64' id='type-id-25'/>
+    <!-- void (void*)* -->
+    <pointer-type-def type-id='type-id-26' size-in-bits='64' id='type-id-27'/>
+    <!-- void (void (void*)*, void*)* -->
+    <pointer-type-def type-id='type-id-28' size-in-bits='64' id='type-id-13'/>
     <!-- struct urcu_atfork -->
-    <class-decl name='urcu_atfork' size-in-bits='256' is-struct='yes' visibility='default' filepath='../src/urcu-flavor.h' line='30' column='1' id='type-id-25'>
+    <class-decl name='urcu_atfork' size-in-bits='256' is-struct='yes' visibility='default' filepath='../src/urcu-flavor.h' line='30' column='1' id='type-id-29'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- void (void*)* urcu_atfork::before_fork -->
-        <var-decl name='before_fork' type-id='type-id-26' visibility='default' filepath='../src/urcu-flavor.h' line='31' column='1'/>
+        <var-decl name='before_fork' type-id='type-id-27' visibility='default' filepath='../src/urcu-flavor.h' line='31' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='64'>
         <!-- void (void*)* urcu_atfork::after_fork_parent -->
-        <var-decl name='after_fork_parent' type-id='type-id-26' visibility='default' filepath='../src/urcu-flavor.h' line='32' column='1'/>
+        <var-decl name='after_fork_parent' type-id='type-id-27' visibility='default' filepath='../src/urcu-flavor.h' line='32' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='128'>
         <!-- void (void*)* urcu_atfork::after_fork_child -->
-        <var-decl name='after_fork_child' type-id='type-id-26' visibility='default' filepath='../src/urcu-flavor.h' line='33' column='1'/>
+        <var-decl name='after_fork_child' type-id='type-id-27' visibility='default' filepath='../src/urcu-flavor.h' line='33' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='192'>
         <!-- void* urcu_atfork::priv -->
-        <var-decl name='priv' type-id='type-id-27' visibility='default' filepath='../src/urcu-flavor.h' line='34' column='1'/>
+        <var-decl name='priv' type-id='type-id-25' visibility='default' filepath='../src/urcu-flavor.h' line='34' column='1'/>
       </data-member>
     </class-decl>
+    <!-- urcu_atfork* -->
+    <pointer-type-def type-id='type-id-29' size-in-bits='64' id='type-id-30'/>
+    <!-- void (urcu_atfork*)* -->
+    <pointer-type-def type-id='type-id-31' size-in-bits='64' id='type-id-14'/>
+    <!-- const rcu_flavor_struct -->
+    <qualified-type-def type-id='type-id-9' const='yes' id='type-id-32'/>
+    <!-- const rcu_flavor_struct rcu_flavor_bp -->
+    <var-decl name='rcu_flavor_bp' type-id='type-id-32' mangled-name='rcu_flavor_bp' visibility='default' filepath='../src/urcu-flavor.h' line='79' 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='src/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-15'/>
+    </function-decl>
+    <!-- void rcu_defer_unregister_thread_bp() -->
+    <function-decl name='rcu_defer_unregister_thread_bp' mangled-name='rcu_defer_unregister_thread_bp' filepath='src/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-15'/>
+    </function-decl>
+    <!-- int rcu_defer_register_thread_bp() -->
+    <function-decl name='rcu_defer_register_thread_bp' mangled-name='rcu_defer_register_thread_bp' filepath='src/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-1'/>
+    </function-decl>
+    <!-- void defer_rcu_bp(void (void*)*, void*) -->
+    <function-decl name='defer_rcu_bp' mangled-name='defer_rcu_bp' filepath='src/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-27' name='fct' filepath='src/urcu-defer-impl.h' line='395' column='1'/>
+      <!-- parameter of type 'void*' -->
+      <parameter type-id='type-id-25' name='p' filepath='src/urcu-defer-impl.h' line='395' column='1'/>
+      <!-- void -->
+      <return type-id='type-id-15'/>
+    </function-decl>
+    <!-- void rcu_defer_barrier_bp() -->
+    <function-decl name='rcu_defer_barrier_bp' mangled-name='rcu_defer_barrier_bp' filepath='src/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-15'/>
+    </function-decl>
+    <!-- void rcu_defer_barrier_thread_bp() -->
+    <function-decl name='rcu_defer_barrier_thread_bp' mangled-name='rcu_defer_barrier_thread_bp' filepath='src/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-15'/>
+    </function-decl>
+    <!-- void urcu_unregister_rculfhash_atfork_bp(urcu_atfork*) -->
+    <function-decl name='urcu_unregister_rculfhash_atfork_bp' mangled-name='urcu_unregister_rculfhash_atfork_bp' filepath='src/urcu-call-rcu-impl.h' line='1011' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='urcu_unregister_rculfhash_atfork_bp'>
+      <!-- parameter of type 'urcu_atfork*' -->
+      <parameter type-id='type-id-30' name='atfork' filepath='src/urcu-call-rcu-impl.h' line='1011' column='1'/>
+      <!-- void -->
+      <return type-id='type-id-15'/>
+    </function-decl>
+    <!-- void urcu_register_rculfhash_atfork_bp(urcu_atfork*) -->
+    <function-decl name='urcu_register_rculfhash_atfork_bp' mangled-name='urcu_register_rculfhash_atfork_bp' filepath='src/urcu-call-rcu-impl.h' line='1001' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='urcu_register_rculfhash_atfork_bp'>
+      <!-- parameter of type 'urcu_atfork*' -->
+      <parameter type-id='type-id-30' name='atfork' filepath='src/urcu-call-rcu-impl.h' line='1011' column='1'/>
+      <!-- void -->
+      <return type-id='type-id-15'/>
+    </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='src/urcu-call-rcu-impl.h' line='959' 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-15'/>
+    </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='src/urcu-call-rcu-impl.h' line='937' 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-15'/>
+    </function-decl>
+    <!-- void call_rcu_before_fork_bp() -->
+    <function-decl name='call_rcu_before_fork_bp' mangled-name='call_rcu_before_fork_bp' filepath='src/urcu-call-rcu-impl.h' line='910' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='call_rcu_before_fork_bp'>
+      <!-- void -->
+      <return type-id='type-id-15'/>
+    </function-decl>
+    <!-- void rcu_barrier_bp() -->
+    <function-decl name='rcu_barrier_bp' mangled-name='rcu_barrier_bp' filepath='src/urcu-call-rcu-impl.h' line='839' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_barrier_bp'>
+      <!-- void -->
+      <return type-id='type-id-15'/>
+    </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='src/urcu-call-rcu-impl.h' line='776' 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-15'/>
+    </function-decl>
     <!-- struct call_rcu_data -->
-    <class-decl name='call_rcu_data' size-in-bits='1024' is-struct='yes' visibility='default' filepath='src/urcu-call-rcu-impl.h' line='52' column='1' id='type-id-28'>
+    <class-decl name='call_rcu_data' size-in-bits='1024' is-struct='yes' visibility='default' filepath='src/urcu-call-rcu-impl.h' line='52' column='1' id='type-id-33'>
       <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-29' visibility='default' filepath='src/urcu-call-rcu-impl.h' line='60' column='1'/>
+        <var-decl name='cbs_tail' type-id='type-id-34' visibility='default' filepath='src/urcu-call-rcu-impl.h' line='60' 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-30' visibility='default' filepath='src/urcu-call-rcu-impl.h' line='61' column='1'/>
+        <var-decl name='cbs_head' type-id='type-id-35' visibility='default' filepath='src/urcu-call-rcu-impl.h' line='61' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='448'>
         <!-- unsigned long int call_rcu_data::flags -->
       </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-31' visibility='default' filepath='src/urcu-call-rcu-impl.h' line='63' column='1'/>
+        <var-decl name='futex' type-id='type-id-36' visibility='default' filepath='src/urcu-call-rcu-impl.h' line='63' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='576'>
         <!-- unsigned long int call_rcu_data::qlen -->
       </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='src/urcu-call-rcu-impl.h' line='65' column='1'/>
+        <var-decl name='tid' type-id='type-id-6' visibility='default' filepath='src/urcu-call-rcu-impl.h' line='65' 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='src/urcu-call-rcu-impl.h' line='66' column='1'/>
+        <var-decl name='cpu_affinity' type-id='type-id-1' visibility='default' filepath='src/urcu-call-rcu-impl.h' line='66' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='768'>
         <!-- unsigned long int call_rcu_data::gp_count -->
       </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='src/urcu-call-rcu-impl.h' line='68' column='1'/>
+        <var-decl name='list' type-id='type-id-5' visibility='default' filepath='src/urcu-call-rcu-impl.h' line='68' 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='../include/urcu/wfcqueue.h' line='127' column='1' id='type-id-29'>
+    <class-decl name='cds_wfcq_tail' size-in-bits='64' is-struct='yes' visibility='default' filepath='../include/urcu/wfcqueue.h' line='127' column='1' id='type-id-34'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- cds_wfcq_node* cds_wfcq_tail::p -->
-        <var-decl name='p' type-id='type-id-24' visibility='default' filepath='../include/urcu/wfcqueue.h' line='128' column='1'/>
+        <var-decl name='p' type-id='type-id-21' visibility='default' filepath='../include/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='../include/urcu/wfcqueue.h' line='72' column='1' id='type-id-30'>
+    <class-decl name='cds_wfcq_head' size-in-bits='384' is-struct='yes' visibility='default' filepath='../include/urcu/wfcqueue.h' line='72' column='1' id='type-id-35'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- cds_wfcq_node cds_wfcq_head::node -->
-        <var-decl name='node' type-id='type-id-22' visibility='default' filepath='../include/urcu/wfcqueue.h' line='73' column='1'/>
+        <var-decl name='node' type-id='type-id-19' visibility='default' filepath='../include/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-32' visibility='default' filepath='../include/urcu/wfcqueue.h' line='74' column='1'/>
+        <var-decl name='lock' type-id='type-id-37' visibility='default' filepath='../include/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-33' filepath='/usr/include/bits/pthreadtypes.h' line='72' column='1' id='type-id-32'/>
-    <!-- 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-33'>
+    <!-- union __anonymous_union__ -->
+    <union-decl name='__anonymous_union__' size-in-bits='320' is-anonymous='yes' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h' line='67' column='1' id='type-id-38'>
       <data-member access='private'>
-        <!-- __pthread_mutex_s __data -->
-        <var-decl name='__data' type-id='type-id-34' visibility='default' filepath='/usr/include/bits/pthreadtypes.h' line='69' column='1'/>
+        <!-- __pthread_mutex_s __anonymous_union__::__data -->
+        <var-decl name='__data' type-id='type-id-39' visibility='default' filepath='/usr/include/x86_64-linux-gnu/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'/>
+        <!-- char __anonymous_union__::__size[40] -->
+        <var-decl name='__size' type-id='type-id-40' visibility='default' filepath='/usr/include/x86_64-linux-gnu/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'/>
+        <!-- long int __anonymous_union__::__align -->
+        <var-decl name='__align' type-id='type-id-41' visibility='default' filepath='/usr/include/x86_64-linux-gnu/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-34'>
+    <class-decl name='__pthread_mutex_s' size-in-bits='320' is-struct='yes' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='118' column='1' id='type-id-39'>
       <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'/>
+        <var-decl name='__lock' type-id='type-id-1' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='120' 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'/>
+        <var-decl name='__count' type-id='type-id-42' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='121' 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'/>
+        <var-decl name='__owner' type-id='type-id-1' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='122' 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'/>
+        <var-decl name='__nusers' type-id='type-id-42' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='124' 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'/>
+        <var-decl name='__kind' type-id='type-id-1' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='148' 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'/>
+        <var-decl name='__spins' type-id='type-id-43' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='154' 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'/>
+        <var-decl name='__elision' type-id='type-id-43' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='154' 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-35' visibility='default' filepath='/usr/include/bits/struct_mutex.h' line='36' column='1'/>
+        <var-decl name='__list' type-id='type-id-44' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='155' column='1'/>
       </data-member>
     </class-decl>
-    <!-- typedef __pthread_internal_list __pthread_list_t -->
-    <typedef-decl name='__pthread_list_t' type-id='type-id-36' filepath='/usr/include/bits/thread-shared-types.h' line='53' column='1' id='type-id-35'/>
+    <!-- unsigned int -->
+    <type-decl name='unsigned int' size-in-bits='32' id='type-id-42'/>
+    <!-- short int -->
+    <type-decl name='short int' size-in-bits='16' id='type-id-43'/>
     <!-- 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-36'>
+    <class-decl name='__pthread_internal_list' size-in-bits='128' is-struct='yes' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='82' column='1' id='type-id-45'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- __pthread_internal_list* __pthread_internal_list::__prev -->
-        <var-decl name='__prev' type-id='type-id-37' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='51' column='1'/>
+        <var-decl name='__prev' type-id='type-id-46' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='84' 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-37' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='52' column='1'/>
+        <var-decl name='__next' type-id='type-id-46' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='85' column='1'/>
       </data-member>
     </class-decl>
-    <!-- typedef __int32_t int32_t -->
-    <typedef-decl name='int32_t' type-id='type-id-38' filepath='/usr/include/bits/stdint-intn.h' line='26' column='1' id='type-id-31'/>
-    <!-- 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-38'/>
     <!-- __pthread_internal_list* -->
-    <pointer-type-def type-id='type-id-36' size-in-bits='64' id='type-id-37'/>
+    <pointer-type-def type-id='type-id-45' size-in-bits='64' id='type-id-46'/>
+    <!-- typedef __pthread_internal_list __pthread_list_t -->
+    <typedef-decl name='__pthread_list_t' type-id='type-id-45' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='86' column='1' id='type-id-44'/>
+    <!-- char -->
+    <type-decl name='char' size-in-bits='8' id='type-id-47'/>
+
+    <!-- char[40] -->
+    <array-type-def dimensions='1' type-id='type-id-47' size-in-bits='320' id='type-id-40'>
+      <!-- <anonymous range>[40] -->
+      <subrange length='40' type-id='type-id-3' id='type-id-48'/>
+
+    </array-type-def>
+    <!-- long int -->
+    <type-decl name='long int' size-in-bits='64' id='type-id-41'/>
+    <!-- typedef __anonymous_union__ pthread_mutex_t -->
+    <typedef-decl name='pthread_mutex_t' type-id='type-id-38' filepath='/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h' line='72' column='1' id='type-id-37'/>
+    <!-- typedef int __int32_t -->
+    <typedef-decl name='__int32_t' type-id='type-id-1' filepath='/usr/include/x86_64-linux-gnu/bits/types.h' line='40' column='1' id='type-id-49'/>
+    <!-- typedef __int32_t int32_t -->
+    <typedef-decl name='int32_t' type-id='type-id-49' filepath='/usr/include/x86_64-linux-gnu/bits/stdint-intn.h' line='26' column='1' id='type-id-36'/>
     <!-- call_rcu_data* -->
-    <pointer-type-def type-id='type-id-28' size-in-bits='64' id='type-id-39'/>
-    <!-- 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-22' size-in-bits='64' id='type-id-24'/>
-    <!-- const rcu_flavor_struct -->
-    <qualified-type-def type-id='type-id-15' const='yes' id='type-id-40'/>
-    <!-- int ()* -->
-    <pointer-type-def type-id='type-id-41' size-in-bits='64' id='type-id-17'/>
-    <!-- rcu_head* -->
-    <pointer-type-def type-id='type-id-21' size-in-bits='64' id='type-id-42'/>
-    <!-- rcu_reader_bp* -->
-    <pointer-type-def type-id='type-id-11' size-in-bits='64' id='type-id-43'/>
-    <!-- urcu_atfork* -->
-    <pointer-type-def type-id='type-id-25' size-in-bits='64' id='type-id-44'/>
-    <!-- void ()* -->
-    <pointer-type-def type-id='type-id-45' size-in-bits='64' id='type-id-16'/>
-    <!-- void (rcu_head*)* -->
-    <pointer-type-def type-id='type-id-46' size-in-bits='64' id='type-id-23'/>
-    <!-- void (rcu_head*, void (rcu_head*)*)* -->
-    <pointer-type-def type-id='type-id-47' size-in-bits='64' id='type-id-18'/>
-    <!-- void (urcu_atfork*)* -->
-    <pointer-type-def type-id='type-id-48' size-in-bits='64' id='type-id-20'/>
-    <!-- void (void (void*)*, void*)* -->
-    <pointer-type-def type-id='type-id-49' size-in-bits='64' id='type-id-19'/>
-    <!-- void (void*)* -->
-    <pointer-type-def type-id='type-id-50' size-in-bits='64' id='type-id-26'/>
-    <!-- void* -->
-    <pointer-type-def type-id='type-id-9' size-in-bits='64' id='type-id-27'/>
-    <!-- void** -->
-    <pointer-type-def type-id='type-id-27' size-in-bits='64' id='type-id-51'/>
-    <!-- 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='../include/urcu/static/urcu-bp.h' line='109' 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='../include/urcu/static/urcu-bp.h' line='88' column='1' elf-symbol-id='rcu_gp_bp'/>
-    <!-- rcu_reader_bp* rcu_reader_bp -->
-    <var-decl name='rcu_reader_bp' type-id='type-id-43' mangled-name='rcu_reader_bp' visibility='default' filepath='../include/urcu/static/urcu-bp.h' line='104' 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-40' mangled-name='rcu_flavor_bp' visibility='default' filepath='../src/urcu-flavor.h' line='79' 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='src/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='src/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='src/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='src/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-26' name='fct' filepath='src/urcu-defer-impl.h' line='395' column='1'/>
-      <!-- parameter of type 'void*' -->
-      <parameter type-id='type-id-27' name='p' filepath='src/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='src/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='src/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 urcu_unregister_rculfhash_atfork_bp(urcu_atfork*) -->
-    <function-decl name='urcu_unregister_rculfhash_atfork_bp' mangled-name='urcu_unregister_rculfhash_atfork_bp' filepath='src/urcu-call-rcu-impl.h' line='1011' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='urcu_unregister_rculfhash_atfork_bp'>
-      <!-- parameter of type 'urcu_atfork*' -->
-      <parameter type-id='type-id-44' name='atfork' filepath='src/urcu-call-rcu-impl.h' line='1011' column='1'/>
-      <!-- void -->
-      <return type-id='type-id-9'/>
-    </function-decl>
-    <!-- void urcu_register_rculfhash_atfork_bp(urcu_atfork*) -->
-    <function-decl name='urcu_register_rculfhash_atfork_bp' mangled-name='urcu_register_rculfhash_atfork_bp' filepath='src/urcu-call-rcu-impl.h' line='1001' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='urcu_register_rculfhash_atfork_bp'>
-      <!-- parameter of type 'urcu_atfork*' -->
-      <parameter type-id='type-id-44' name='atfork' filepath='src/urcu-call-rcu-impl.h' line='1001' column='1'/>
-      <!-- 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='src/urcu-call-rcu-impl.h' line='959' 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='src/urcu-call-rcu-impl.h' line='937' 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='src/urcu-call-rcu-impl.h' line='910' 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='src/urcu-call-rcu-impl.h' line='839' 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='src/urcu-call-rcu-impl.h' line='776' 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>
+    <pointer-type-def type-id='type-id-33' size-in-bits='64' id='type-id-50'/>
     <!-- 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='src/urcu-call-rcu-impl.h' line='744' 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-39' name='crdp' filepath='src/urcu-call-rcu-impl.h' line='744' column='1'/>
+      <parameter type-id='type-id-50' name='crdp' filepath='src/urcu-call-rcu-impl.h' line='744' column='1'/>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-15'/>
     </function-decl>
     <!-- void call_rcu_bp(rcu_head*, void (rcu_head*)*) -->
     <function-decl name='call_rcu_bp' mangled-name='call_rcu_bp' filepath='src/urcu-call-rcu-impl.h' line='706' 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-42' name='head' filepath='src/urcu-call-rcu-impl.h' line='706' column='1'/>
+      <parameter type-id='type-id-22' name='head' filepath='src/urcu-call-rcu-impl.h' line='706' column='1'/>
       <!-- parameter of type 'void (rcu_head*)*' -->
-      <parameter type-id='type-id-23' name='func' filepath='src/urcu-call-rcu-impl.h' line='707' column='1'/>
+      <parameter type-id='type-id-20' name='func' filepath='src/urcu-call-rcu-impl.h' line='707' column='1'/>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-15'/>
     </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='src/urcu-call-rcu-impl.h' line='628' 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='src/urcu-call-rcu-impl.h' line='628' column='1'/>
       <!-- int -->
-      <return type-id='type-id-5'/>
+      <return type-id='type-id-1'/>
     </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='src/urcu-call-rcu-impl.h' line='615' 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-39' name='crdp' filepath='src/urcu-call-rcu-impl.h' line='615' column='1'/>
+      <parameter type-id='type-id-50' name='crdp' filepath='src/urcu-call-rcu-impl.h' line='615' column='1'/>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-15'/>
     </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='src/urcu-call-rcu-impl.h' line='599' 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-39'/>
+      <return type-id='type-id-50'/>
     </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='src/urcu-call-rcu-impl.h' line='579' 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-39'/>
+      <return type-id='type-id-50'/>
     </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='src/urcu-call-rcu-impl.h' line='554' 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-39'/>
+      <return type-id='type-id-50'/>
     </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='src/urcu-call-rcu-impl.h' line='515' 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='src/urcu-call-rcu-impl.h' line='515' column='1'/>
+      <parameter type-id='type-id-1' name='cpu' filepath='src/urcu-call-rcu-impl.h' line='515' column='1'/>
       <!-- parameter of type 'call_rcu_data*' -->
-      <parameter type-id='type-id-39' name='crdp' filepath='src/urcu-call-rcu-impl.h' line='515' column='1'/>
+      <parameter type-id='type-id-50' name='crdp' filepath='src/urcu-call-rcu-impl.h' line='515' column='1'/>
       <!-- int -->
-      <return type-id='type-id-5'/>
+      <return type-id='type-id-1'/>
     </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='src/urcu-call-rcu-impl.h' line='491' 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='src/urcu-call-rcu-impl.h' line='491' column='1'/>
       <!-- parameter of type 'int' -->
-      <parameter type-id='type-id-5' name='cpu_affinity' filepath='src/urcu-call-rcu-impl.h' line='492' column='1'/>
+      <parameter type-id='type-id-1' name='cpu_affinity' filepath='src/urcu-call-rcu-impl.h' line='492' column='1'/>
       <!-- call_rcu_data* -->
-      <return type-id='type-id-39'/>
+      <return type-id='type-id-50'/>
     </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='src/urcu-call-rcu-impl.h' line='473' 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-39' name='crdp' filepath='src/urcu-call-rcu-impl.h' line='473' column='1'/>
+      <parameter type-id='type-id-50' name='crdp' filepath='src/urcu-call-rcu-impl.h' line='473' column='1'/>
       <!-- typedef pthread_t -->
-      <return type-id='type-id-13'/>
+      <return type-id='type-id-6'/>
     </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='src/urcu-call-rcu-impl.h' line='451' 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='src/urcu-call-rcu-impl.h' line='451' column='1'/>
+      <parameter type-id='type-id-1' name='cpu' filepath='src/urcu-call-rcu-impl.h' line='451' column='1'/>
       <!-- call_rcu_data* -->
-      <return type-id='type-id-39'/>
+      <return type-id='type-id-50'/>
     </function-decl>
+    <!-- void** -->
+    <pointer-type-def type-id='type-id-25' size-in-bits='64' id='type-id-51'/>
     <!-- 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='src/urcu-bp.c' line='732' 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-51' name='p' filepath='src/urcu-bp.c' line='732' column='1'/>
       <!-- parameter of type 'void*' -->
-      <parameter type-id='type-id-27' name='old' filepath='src/urcu-bp.c' line='732' column='1'/>
+      <parameter type-id='type-id-25' name='old' filepath='src/urcu-bp.c' line='732' column='1'/>
       <!-- parameter of type 'void*' -->
-      <parameter type-id='type-id-27' name='_new' filepath='src/urcu-bp.c' line='732' column='1'/>
+      <parameter type-id='type-id-25' name='_new' filepath='src/urcu-bp.c' line='732' column='1'/>
       <!-- void* -->
-      <return type-id='type-id-27'/>
+      <return type-id='type-id-25'/>
     </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='src/urcu-bp.c' line='726' 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-51' name='p' filepath='src/urcu-bp.c' line='726' column='1'/>
       <!-- parameter of type 'void*' -->
-      <parameter type-id='type-id-27' name='v' filepath='src/urcu-bp.c' line='726' column='1'/>
+      <parameter type-id='type-id-25' name='v' filepath='src/urcu-bp.c' line='726' column='1'/>
       <!-- void* -->
-      <return type-id='type-id-27'/>
+      <return type-id='type-id-25'/>
     </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='src/urcu-bp.c' line='719' 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-51' name='p' filepath='src/urcu-bp.c' line='719' column='1'/>
       <!-- parameter of type 'void*' -->
-      <parameter type-id='type-id-27' name='v' filepath='src/urcu-bp.c' line='719' column='1'/>
+      <parameter type-id='type-id-25' name='v' filepath='src/urcu-bp.c' line='719' column='1'/>
       <!-- void* -->
-      <return type-id='type-id-27'/>
+      <return type-id='type-id-25'/>
     </function-decl>
     <!-- void* rcu_dereference_sym_bp(void*) -->
     <function-decl name='rcu_dereference_sym_bp' mangled-name='rcu_dereference_sym_bp' filepath='src/urcu-bp.c' line='714' 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-27' name='p' filepath='src/urcu-bp.c' line='714' column='1'/>
+      <parameter type-id='type-id-25' name='p' filepath='src/urcu-bp.c' line='714' column='1'/>
       <!-- void* -->
-      <return type-id='type-id-27'/>
+      <return type-id='type-id-25'/>
     </function-decl>
     <!-- void rcu_bp_after_fork_child() -->
     <function-decl name='rcu_bp_after_fork_child' mangled-name='rcu_bp_after_fork_child' filepath='src/urcu-bp.c' line='701' 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'/>
+      <return type-id='type-id-15'/>
     </function-decl>
     <!-- void rcu_bp_after_fork_parent() -->
     <function-decl name='rcu_bp_after_fork_parent' mangled-name='rcu_bp_after_fork_parent' filepath='src/urcu-bp.c' line='666' 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'/>
+      <return type-id='type-id-15'/>
     </function-decl>
     <!-- void rcu_bp_before_fork() -->
     <function-decl name='rcu_bp_before_fork' mangled-name='rcu_bp_before_fork' filepath='src/urcu-bp.c' line='652' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_bp_before_fork'>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-15'/>
     </function-decl>
     <!-- void rcu_bp_register() -->
     <function-decl name='rcu_bp_register' mangled-name='rcu_bp_register' filepath='src/urcu-bp.c' line='519' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_bp_register'>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-15'/>
     </function-decl>
     <!-- int rcu_read_ongoing_bp() -->
     <function-decl name='rcu_read_ongoing_bp' mangled-name='rcu_read_ongoing_bp' filepath='src/urcu-bp.c' line='352' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_read_ongoing_bp'>
       <!-- int -->
-      <return type-id='type-id-5'/>
+      <return type-id='type-id-1'/>
     </function-decl>
     <!-- void rcu_read_unlock_bp() -->
     <function-decl name='rcu_read_unlock_bp' mangled-name='rcu_read_unlock_bp' filepath='src/urcu-bp.c' line='347' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_read_unlock_bp'>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-15'/>
     </function-decl>
     <!-- void rcu_read_lock_bp() -->
     <function-decl name='rcu_read_lock_bp' mangled-name='rcu_read_lock_bp' filepath='src/urcu-bp.c' line='342' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_read_lock_bp'>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-15'/>
     </function-decl>
     <!-- void synchronize_rcu_bp() -->
     <function-decl name='synchronize_rcu_bp' mangled-name='synchronize_rcu_bp' filepath='src/urcu-bp.c' line='259' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='synchronize_rcu_bp'>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-15'/>
     </function-decl>
     <!-- int () -->
-    <function-type size-in-bits='64' id='type-id-41'>
+    <function-type size-in-bits='64' id='type-id-17'>
       <!-- int -->
-      <return type-id='type-id-5'/>
+      <return type-id='type-id-1'/>
     </function-type>
     <!-- void () -->
-    <function-type size-in-bits='64' id='type-id-45'>
+    <function-type size-in-bits='64' id='type-id-16'>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-15'/>
     </function-type>
     <!-- void (rcu_head*) -->
-    <function-type size-in-bits='64' id='type-id-46'>
+    <function-type size-in-bits='64' id='type-id-23'>
       <!-- parameter of type 'rcu_head*' -->
-      <parameter type-id='type-id-42'/>
+      <parameter type-id='type-id-22'/>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-15'/>
     </function-type>
     <!-- void (rcu_head*, void (rcu_head*)*) -->
-    <function-type size-in-bits='64' id='type-id-47'>
+    <function-type size-in-bits='64' id='type-id-24'>
       <!-- parameter of type 'rcu_head*' -->
-      <parameter type-id='type-id-42'/>
+      <parameter type-id='type-id-22'/>
       <!-- parameter of type 'void (rcu_head*)*' -->
-      <parameter type-id='type-id-23'/>
+      <parameter type-id='type-id-20'/>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-15'/>
     </function-type>
     <!-- void (urcu_atfork*) -->
-    <function-type size-in-bits='64' id='type-id-48'>
+    <function-type size-in-bits='64' id='type-id-31'>
       <!-- parameter of type 'urcu_atfork*' -->
-      <parameter type-id='type-id-44'/>
+      <parameter type-id='type-id-30'/>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-15'/>
     </function-type>
     <!-- void (void (void*)*, void*) -->
-    <function-type size-in-bits='64' id='type-id-49'>
+    <function-type size-in-bits='64' id='type-id-28'>
       <!-- parameter of type 'void (void*)*' -->
-      <parameter type-id='type-id-26'/>
-      <!-- parameter of type 'void*' -->
       <parameter type-id='type-id-27'/>
+      <!-- parameter of type 'void*' -->
+      <parameter type-id='type-id-25'/>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-15'/>
     </function-type>
     <!-- void (void*) -->
-    <function-type size-in-bits='64' id='type-id-50'>
+    <function-type size-in-bits='64' id='type-id-26'>
       <!-- parameter of type 'void*' -->
-      <parameter type-id='type-id-27'/>
+      <parameter type-id='type-id-25'/>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-15'/>
     </function-type>
   </abi-instr>
   <abi-instr version='1.0' address-size='64' path='urcu-pointer.c' comp-dir-path='src' 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='src/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-51' name='p' filepath='src/urcu-pointer.c' line='53' column='1'/>
+      <parameter type-id='type-id-51' name='p' filepath='src/urcu-bp.c' line='732' column='1'/>
       <!-- parameter of type 'void*' -->
-      <parameter type-id='type-id-27' name='old' filepath='src/urcu-pointer.c' line='53' column='1'/>
+      <parameter type-id='type-id-25' name='old' filepath='src/urcu-bp.c' line='732' column='1'/>
       <!-- parameter of type 'void*' -->
-      <parameter type-id='type-id-27' name='_new' filepath='src/urcu-pointer.c' line='53' column='1'/>
+      <parameter type-id='type-id-25' name='_new' filepath='src/urcu-bp.c' line='732' column='1'/>
       <!-- void* -->
-      <return type-id='type-id-27'/>
+      <return type-id='type-id-25'/>
     </function-decl>
     <!-- void* rcu_xchg_pointer_sym(void**, void*) -->
     <function-decl name='rcu_xchg_pointer_sym' mangled-name='rcu_xchg_pointer_sym' filepath='src/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-51' name='p' filepath='src/urcu-pointer.c' line='47' column='1'/>
+      <parameter type-id='type-id-51' name='p' filepath='src/urcu-bp.c' line='726' column='1'/>
       <!-- parameter of type 'void*' -->
-      <parameter type-id='type-id-27' name='v' filepath='src/urcu-pointer.c' line='47' column='1'/>
+      <parameter type-id='type-id-25' name='v' filepath='src/urcu-bp.c' line='726' column='1'/>
       <!-- void* -->
-      <return type-id='type-id-27'/>
+      <return type-id='type-id-25'/>
     </function-decl>
     <!-- void* rcu_set_pointer_sym(void**, void*) -->
     <function-decl name='rcu_set_pointer_sym' mangled-name='rcu_set_pointer_sym' filepath='src/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-51' name='p' filepath='src/urcu-pointer.c' line='40' column='1'/>
+      <parameter type-id='type-id-51' name='p' filepath='src/urcu-bp.c' line='719' column='1'/>
       <!-- parameter of type 'void*' -->
-      <parameter type-id='type-id-27' name='v' filepath='src/urcu-pointer.c' line='40' column='1'/>
+      <parameter type-id='type-id-25' name='v' filepath='src/urcu-bp.c' line='719' column='1'/>
       <!-- void* -->
-      <return type-id='type-id-27'/>
+      <return type-id='type-id-25'/>
     </function-decl>
     <!-- void* rcu_dereference_sym(void*) -->
     <function-decl name='rcu_dereference_sym' mangled-name='rcu_dereference_sym' filepath='src/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-27' name='p' filepath='src/urcu-pointer.c' line='35' column='1'/>
+      <parameter type-id='type-id-25' name='p' filepath='src/urcu-bp.c' line='714' column='1'/>
       <!-- void* -->
-      <return type-id='type-id-27'/>
+      <return type-id='type-id-25'/>
     </function-decl>
   </abi-instr>
   <abi-instr version='1.0' address-size='64' path='compat_futex.c' comp-dir-path='src' language='LANG_C99'>
-
-
-    <!-- char[48] -->
-    <array-type-def dimensions='1' type-id='type-id-1' size-in-bits='384' id='type-id-52'>
-      <!-- <anonymous range>[48] -->
-      <subrange length='48' type-id='type-id-3' id='type-id-53'/>
-
-    </array-type-def>
-    <!-- long long int -->
-    <type-decl name='long long int' size-in-bits='64' id='type-id-54'/>
-    <!-- long long unsigned int -->
-    <type-decl name='long long unsigned int' size-in-bits='64' id='type-id-55'/>
-    <!-- unsigned int[2] -->
-    <array-type-def dimensions='1' type-id='type-id-8' size-in-bits='64' id='type-id-56'>
-      <!-- <anonymous range>[2] -->
-      <subrange length='2' type-id='type-id-3' id='type-id-57'/>
-
-    </array-type-def>
-    <!-- typedef __anonymous_union__ pthread_cond_t -->
-    <typedef-decl name='pthread_cond_t' type-id='type-id-58' filepath='/usr/include/bits/pthreadtypes.h' line='80' column='1' id='type-id-59'/>
-    <!-- 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-58'>
+    <!-- pthread_mutex_t __urcu_compat_futex_lock -->
+    <var-decl name='__urcu_compat_futex_lock' type-id='type-id-37' mangled-name='__urcu_compat_futex_lock' visibility='default' filepath='src/compat_futex.c' line='44' column='1' elf-symbol-id='__urcu_compat_futex_lock'/>
+    <!-- union __anonymous_union__ -->
+    <union-decl name='__anonymous_union__' size-in-bits='384' is-anonymous='yes' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h' line='75' column='1' id='type-id-52'>
       <data-member access='private'>
-        <!-- __pthread_cond_s __data -->
-        <var-decl name='__data' type-id='type-id-60' visibility='default' filepath='/usr/include/bits/pthreadtypes.h' line='77' column='1'/>
+        <!-- __pthread_cond_s __anonymous_union__::__data -->
+        <var-decl name='__data' type-id='type-id-53' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h' line='77' column='1'/>
       </data-member>
       <data-member access='private'>
-        <!-- char __size[48] -->
-        <var-decl name='__size' type-id='type-id-52' visibility='default' filepath='/usr/include/bits/pthreadtypes.h' line='78' column='1'/>
+        <!-- char __anonymous_union__::__size[48] -->
+        <var-decl name='__size' type-id='type-id-54' visibility='default' filepath='/usr/include/x86_64-linux-gnu/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-54' visibility='default' filepath='/usr/include/bits/pthreadtypes.h' line='79' column='1'/>
+        <!-- long long int __anonymous_union__::__align -->
+        <var-decl name='__align' type-id='type-id-55' visibility='default' filepath='/usr/include/x86_64-linux-gnu/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-60'>
+    <class-decl name='__pthread_cond_s' size-in-bits='384' is-struct='yes' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='171' column='1' id='type-id-53'>
       <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-61' visibility='default'/>
+        <!-- __anonymous_union__  -->
+        <var-decl name='' type-id='type-id-56' 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-56' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='112' column='1'/>
+        <var-decl name='__g_refs' type-id='type-id-57' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='191' 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-56' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='113' column='1'/>
+        <var-decl name='__g_size' type-id='type-id-57' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='192' 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'/>
+        <var-decl name='__g1_orig_size' type-id='type-id-42' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='193' 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'/>
+        <var-decl name='__wrefs' type-id='type-id-42' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='194' 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-56' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='116' column='1'/>
+        <var-decl name='__g_signals' type-id='type-id-57' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='195' 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-61'>
+    <!-- union __anonymous_union__ -->
+    <union-decl name='__anonymous_union__' size-in-bits='64' is-anonymous='yes' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='173' column='1' id='type-id-56'>
       <data-member access='private'>
-        <!-- long long unsigned int __wseq -->
-        <var-decl name='__wseq' type-id='type-id-55' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='96' column='1'/>
+        <!-- long long unsigned int __anonymous_union__::__wseq -->
+        <var-decl name='__wseq' type-id='type-id-58' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='175' column='1'/>
       </data-member>
       <data-member access='private'>
-        <!-- struct {unsigned int __low; unsigned int __high;} __wseq32 -->
-        <var-decl name='__wseq32' type-id='type-id-62' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='101' column='1'/>
+        <!-- __anonymous_struct__ __anonymous_union__::__wseq32 -->
+        <var-decl name='__wseq32' type-id='type-id-59' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='180' 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-62'>
+    <!-- long long unsigned int -->
+    <type-decl name='long long unsigned int' size-in-bits='64' id='type-id-58'/>
+    <!-- struct __anonymous_struct__ -->
+    <class-decl name='__anonymous_struct__' size-in-bits='64' is-struct='yes' is-anonymous='yes' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='176' column='1' id='type-id-59'>
       <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'/>
+        <!-- unsigned int __anonymous_struct__::__low -->
+        <var-decl name='__low' type-id='type-id-42' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='178' 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'/>
+        <!-- unsigned int __anonymous_struct__::__high -->
+        <var-decl name='__high' type-id='type-id-42' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='179' column='1'/>
       </data-member>
     </class-decl>
+
+    <!-- unsigned int[2] -->
+    <array-type-def dimensions='1' type-id='type-id-42' size-in-bits='64' id='type-id-57'>
+      <!-- <anonymous range>[2] -->
+      <subrange length='2' type-id='type-id-3' id='type-id-60'/>
+
+    </array-type-def>
+
+    <!-- char[48] -->
+    <array-type-def dimensions='1' type-id='type-id-47' size-in-bits='384' id='type-id-54'>
+      <!-- <anonymous range>[48] -->
+      <subrange length='48' type-id='type-id-3' id='type-id-61'/>
+
+    </array-type-def>
+    <!-- long long int -->
+    <type-decl name='long long int' size-in-bits='64' id='type-id-55'/>
+    <!-- typedef __anonymous_union__ pthread_cond_t -->
+    <typedef-decl name='pthread_cond_t' type-id='type-id-52' filepath='/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h' line='80' column='1' id='type-id-62'/>
+    <!-- pthread_cond_t __urcu_compat_futex_cond -->
+    <var-decl name='__urcu_compat_futex_cond' type-id='type-id-62' mangled-name='__urcu_compat_futex_cond' visibility='default' filepath='src/compat_futex.c' line='46' column='1' elf-symbol-id='__urcu_compat_futex_cond'/>
+    <!-- int32_t* -->
+    <pointer-type-def type-id='type-id-36' size-in-bits='64' id='type-id-63'/>
     <!-- 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-63'>
+    <class-decl name='timespec' size-in-bits='128' is-struct='yes' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h' line='9' column='1' id='type-id-64'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- __time_t timespec::tv_sec -->
-        <var-decl name='tv_sec' type-id='type-id-64' visibility='default' filepath='/usr/include/bits/types/struct_timespec.h' line='12' column='1'/>
+        <var-decl name='tv_sec' type-id='type-id-65' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h' line='11' 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-65' visibility='default' filepath='/usr/include/bits/types/struct_timespec.h' line='16' column='1'/>
+        <var-decl name='tv_nsec' type-id='type-id-66' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h' line='12' 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-64'/>
+    <typedef-decl name='__time_t' type-id='type-id-41' filepath='/usr/include/x86_64-linux-gnu/bits/types.h' line='148' column='1' id='type-id-65'/>
     <!-- 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-65'/>
+    <typedef-decl name='__syscall_slong_t' type-id='type-id-41' filepath='/usr/include/x86_64-linux-gnu/bits/types.h' line='184' column='1' id='type-id-66'/>
     <!-- const timespec -->
-    <qualified-type-def type-id='type-id-63' const='yes' id='type-id-66'/>
+    <qualified-type-def type-id='type-id-64' const='yes' id='type-id-67'/>
     <!-- const timespec* -->
-    <pointer-type-def type-id='type-id-66' size-in-bits='64' id='type-id-67'/>
-    <!-- int32_t* -->
-    <pointer-type-def type-id='type-id-31' size-in-bits='64' id='type-id-68'/>
-    <!-- pthread_mutex_t __urcu_compat_futex_lock -->
-    <var-decl name='__urcu_compat_futex_lock' type-id='type-id-32' mangled-name='__urcu_compat_futex_lock' visibility='default' filepath='src/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-59' mangled-name='__urcu_compat_futex_cond' visibility='default' filepath='src/compat_futex.c' line='46' column='1' elf-symbol-id='__urcu_compat_futex_cond'/>
+    <pointer-type-def type-id='type-id-67' size-in-bits='64' id='type-id-68'/>
     <!-- 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='src/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-68' name='uaddr' filepath='src/compat_futex.c' line='118' column='1'/>
+      <parameter type-id='type-id-63' name='uaddr' filepath='src/compat_futex.c' line='118' column='1'/>
       <!-- parameter of type 'int' -->
-      <parameter type-id='type-id-5' name='op' filepath='src/compat_futex.c' line='118' column='1'/>
+      <parameter type-id='type-id-1' name='op' filepath='src/compat_futex.c' line='118' column='1'/>
       <!-- parameter of type 'typedef int32_t' -->
-      <parameter type-id='type-id-31' name='val' filepath='src/compat_futex.c' line='118' column='1'/>
+      <parameter type-id='type-id-36' name='val' filepath='src/compat_futex.c' line='118' column='1'/>
       <!-- parameter of type 'const timespec*' -->
-      <parameter type-id='type-id-67' name='timeout' filepath='src/compat_futex.c' line='119' column='1'/>
+      <parameter type-id='type-id-68' name='timeout' filepath='src/compat_futex.c' line='119' column='1'/>
       <!-- parameter of type 'int32_t*' -->
-      <parameter type-id='type-id-68' name='uaddr2' filepath='src/compat_futex.c' line='119' column='1'/>
+      <parameter type-id='type-id-63' name='uaddr2' filepath='src/compat_futex.c' line='119' column='1'/>
       <!-- parameter of type 'typedef int32_t' -->
-      <parameter type-id='type-id-31' name='val3' filepath='src/compat_futex.c' line='119' column='1'/>
+      <parameter type-id='type-id-36' name='val3' filepath='src/compat_futex.c' line='119' column='1'/>
       <!-- int -->
-      <return type-id='type-id-5'/>
+      <return type-id='type-id-1'/>
     </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='src/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-68' name='uaddr' filepath='src/compat_futex.c' line='54' column='1'/>
+      <parameter type-id='type-id-63' name='uaddr' filepath='src/compat_futex.c' line='54' column='1'/>
       <!-- parameter of type 'int' -->
-      <parameter type-id='type-id-5' name='op' filepath='src/compat_futex.c' line='54' column='1'/>
+      <parameter type-id='type-id-1' name='op' filepath='src/compat_futex.c' line='54' column='1'/>
       <!-- parameter of type 'typedef int32_t' -->
-      <parameter type-id='type-id-31' name='val' filepath='src/compat_futex.c' line='54' column='1'/>
+      <parameter type-id='type-id-36' name='val' filepath='src/compat_futex.c' line='54' column='1'/>
       <!-- parameter of type 'const timespec*' -->
-      <parameter type-id='type-id-67' name='timeout' filepath='src/compat_futex.c' line='55' column='1'/>
+      <parameter type-id='type-id-68' name='timeout' filepath='src/compat_futex.c' line='55' column='1'/>
       <!-- parameter of type 'int32_t*' -->
-      <parameter type-id='type-id-68' name='uaddr2' filepath='src/compat_futex.c' line='55' column='1'/>
+      <parameter type-id='type-id-63' name='uaddr2' filepath='src/compat_futex.c' line='55' column='1'/>
       <!-- parameter of type 'typedef int32_t' -->
-      <parameter type-id='type-id-31' name='val3' filepath='src/compat_futex.c' line='55' column='1'/>
+      <parameter type-id='type-id-36' name='val3' filepath='src/compat_futex.c' line='55' column='1'/>
       <!-- int -->
-      <return type-id='type-id-5'/>
+      <return type-id='type-id-1'/>
     </function-decl>
   </abi-instr>
 </abi-corpus>
index 681e7e642aa8664cf9b12ac9c2704e449eb2af1d..fa9cb0079e1ffa91086947d27502a83d63524806 100644 (file)
@@ -1,6 +1,5 @@
 <abi-corpus architecture='elf-amd-x86_64' soname='liburcu-cds.so.6'>
   <elf-needed>
-    <dependency name='liburcu-common.so.6'/>
     <dependency name='libpthread.so.0'/>
     <dependency name='libc.so.6'/>
   </elf-needed>
     <elf-symbol name='__cds_lfs_pop_all' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
     <!-- _cds_lfht_new -->
     <elf-symbol name='_cds_lfht_new' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- _fini -->
+    <elf-symbol name='_fini' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- _init -->
+    <elf-symbol name='_init' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
     <!-- cds_lfht_add -->
     <elf-symbol name='cds_lfht_add' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
     <!-- cds_lfht_add_replace -->
     <elf-symbol name='cds_lfht_mm_order' size='32' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
   </elf-variable-symbols>
   <abi-instr version='1.0' address-size='64' path='rculfqueue.c' comp-dir-path='src' language='LANG_C99'>
-    <!-- int -->
-    <type-decl name='int' size-in-bits='32' id='type-id-1'/>
-    <!-- void -->
-    <type-decl name='void' id='type-id-2'/>
     <!-- struct cds_lfq_node_rcu -->
-    <class-decl name='cds_lfq_node_rcu' size-in-bits='128' is-struct='yes' visibility='default' filepath='../include/urcu/rculfqueue.h' line='35' column='1' id='type-id-3'>
+    <class-decl name='cds_lfq_node_rcu' size-in-bits='128' is-struct='yes' visibility='default' filepath='../include/urcu/rculfqueue.h' line='35' column='1' id='type-id-1'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- cds_lfq_node_rcu* cds_lfq_node_rcu::next -->
-        <var-decl name='next' type-id='type-id-4' visibility='default' filepath='../include/urcu/rculfqueue.h' line='36' column='1'/>
+        <var-decl name='next' type-id='type-id-2' visibility='default' filepath='../include/urcu/rculfqueue.h' line='36' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='64'>
         <!-- int cds_lfq_node_rcu::dummy -->
-        <var-decl name='dummy' type-id='type-id-1' visibility='default' filepath='../include/urcu/rculfqueue.h' line='37' column='1'/>
+        <var-decl name='dummy' type-id='type-id-3' visibility='default' filepath='../include/urcu/rculfqueue.h' line='37' column='1'/>
       </data-member>
     </class-decl>
+    <!-- cds_lfq_node_rcu* -->
+    <pointer-type-def type-id='type-id-1' size-in-bits='64' id='type-id-2'/>
+    <!-- int -->
+    <type-decl name='int' size-in-bits='32' id='type-id-3'/>
     <!-- struct cds_lfq_queue_rcu -->
-    <class-decl name='cds_lfq_queue_rcu' size-in-bits='192' is-struct='yes' visibility='default' filepath='../include/urcu/rculfqueue.h' line='40' column='1' id='type-id-5'>
+    <class-decl name='cds_lfq_queue_rcu' size-in-bits='192' is-struct='yes' visibility='default' filepath='../include/urcu/rculfqueue.h' line='40' column='1' id='type-id-4'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- cds_lfq_node_rcu* cds_lfq_queue_rcu::head -->
-        <var-decl name='head' type-id='type-id-4' visibility='default' filepath='../include/urcu/rculfqueue.h' line='41' column='1'/>
+        <var-decl name='head' type-id='type-id-2' visibility='default' filepath='../include/urcu/rculfqueue.h' line='41' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='64'>
         <!-- cds_lfq_node_rcu* cds_lfq_queue_rcu::tail -->
-        <var-decl name='tail' type-id='type-id-4' visibility='default' filepath='../include/urcu/rculfqueue.h' line='41' column='1'/>
+        <var-decl name='tail' type-id='type-id-2' visibility='default' filepath='../include/urcu/rculfqueue.h' line='41' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='128'>
         <!-- void (rcu_head*, void (rcu_head*)*)* cds_lfq_queue_rcu::queue_call_rcu -->
-        <var-decl name='queue_call_rcu' type-id='type-id-6' visibility='default' filepath='../include/urcu/rculfqueue.h' line='42' column='1'/>
+        <var-decl name='queue_call_rcu' type-id='type-id-5' visibility='default' filepath='../include/urcu/rculfqueue.h' line='42' column='1'/>
       </data-member>
     </class-decl>
+    <!-- void -->
+    <type-decl name='void' id='type-id-6'/>
     <!-- struct rcu_head -->
     <class-decl name='rcu_head' size-in-bits='128' is-struct='yes' visibility='default' filepath='../src/urcu-call-rcu.h' line='59' column='1' id='type-id-7'>
       <data-member access='public' layout-offset-in-bits='0'>
         <var-decl name='next' type-id='type-id-10' visibility='default' filepath='../include/urcu/wfcqueue.h' line='60' column='1'/>
       </data-member>
     </class-decl>
-    <!-- cds_lfq_node_rcu* -->
-    <pointer-type-def type-id='type-id-3' size-in-bits='64' id='type-id-4'/>
-    <!-- cds_lfq_queue_rcu* -->
-    <pointer-type-def type-id='type-id-5' size-in-bits='64' id='type-id-11'/>
     <!-- cds_wfcq_node* -->
     <pointer-type-def type-id='type-id-8' size-in-bits='64' id='type-id-10'/>
     <!-- rcu_head* -->
-    <pointer-type-def type-id='type-id-7' size-in-bits='64' id='type-id-12'/>
+    <pointer-type-def type-id='type-id-7' size-in-bits='64' id='type-id-11'/>
     <!-- void (rcu_head*)* -->
-    <pointer-type-def type-id='type-id-13' size-in-bits='64' id='type-id-9'/>
+    <pointer-type-def type-id='type-id-12' size-in-bits='64' id='type-id-9'/>
     <!-- void (rcu_head*, void (rcu_head*)*)* -->
-    <pointer-type-def type-id='type-id-14' size-in-bits='64' id='type-id-6'/>
+    <pointer-type-def type-id='type-id-13' size-in-bits='64' id='type-id-5'/>
+    <!-- cds_lfq_queue_rcu* -->
+    <pointer-type-def type-id='type-id-4' size-in-bits='64' id='type-id-14'/>
     <!-- cds_lfq_node_rcu* cds_lfq_dequeue_rcu(cds_lfq_queue_rcu*) -->
     <function-decl name='cds_lfq_dequeue_rcu' mangled-name='cds_lfq_dequeue_rcu' filepath='src/rculfqueue.c' line='56' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_lfq_dequeue_rcu'>
       <!-- parameter of type 'cds_lfq_queue_rcu*' -->
-      <parameter type-id='type-id-11' name='q' filepath='src/rculfqueue.c' line='56' column='1'/>
+      <parameter type-id='type-id-14' name='q' filepath='src/rculfqueue.c' line='56' column='1'/>
       <!-- cds_lfq_node_rcu* -->
-      <return type-id='type-id-4'/>
+      <return type-id='type-id-2'/>
     </function-decl>
     <!-- void cds_lfq_enqueue_rcu(cds_lfq_queue_rcu*, cds_lfq_node_rcu*) -->
     <function-decl name='cds_lfq_enqueue_rcu' mangled-name='cds_lfq_enqueue_rcu' filepath='src/rculfqueue.c' line='50' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_lfq_enqueue_rcu'>
       <!-- parameter of type 'cds_lfq_queue_rcu*' -->
-      <parameter type-id='type-id-11' name='q' filepath='src/rculfqueue.c' line='50' column='1'/>
+      <parameter type-id='type-id-14' name='q' filepath='src/rculfqueue.c' line='50' column='1'/>
       <!-- parameter of type 'cds_lfq_node_rcu*' -->
-      <parameter type-id='type-id-4' name='node' filepath='src/rculfqueue.c' line='50' column='1'/>
+      <parameter type-id='type-id-2' name='node' filepath='src/rculfqueue.c' line='50' column='1'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-decl>
     <!-- int cds_lfq_destroy_rcu(cds_lfq_queue_rcu*) -->
     <function-decl name='cds_lfq_destroy_rcu' mangled-name='cds_lfq_destroy_rcu' filepath='src/rculfqueue.c' line='45' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_lfq_destroy_rcu'>
       <!-- parameter of type 'cds_lfq_queue_rcu*' -->
-      <parameter type-id='type-id-11' name='q' filepath='src/rculfqueue.c' line='45' column='1'/>
+      <parameter type-id='type-id-14' name='q' filepath='src/rculfqueue.c' line='45' column='1'/>
       <!-- int -->
-      <return type-id='type-id-1'/>
+      <return type-id='type-id-3'/>
     </function-decl>
     <!-- void cds_lfq_init_rcu(cds_lfq_queue_rcu*, void (rcu_head*, void (rcu_head*)*)*) -->
     <function-decl name='cds_lfq_init_rcu' mangled-name='cds_lfq_init_rcu' filepath='src/rculfqueue.c' line='38' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_lfq_init_rcu'>
       <!-- parameter of type 'cds_lfq_queue_rcu*' -->
-      <parameter type-id='type-id-11' name='q' filepath='src/rculfqueue.c' line='38' column='1'/>
+      <parameter type-id='type-id-14' name='q' filepath='src/rculfqueue.c' line='38' column='1'/>
       <!-- parameter of type 'void (rcu_head*, void (rcu_head*)*)*' -->
-      <parameter type-id='type-id-6' name='queue_call_rcu' filepath='src/rculfqueue.c' line='39' column='1'/>
+      <parameter type-id='type-id-5' name='queue_call_rcu' filepath='src/rculfqueue.c' line='39' column='1'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-decl>
     <!-- void cds_lfq_node_init_rcu(cds_lfq_node_rcu*) -->
     <function-decl name='cds_lfq_node_init_rcu' mangled-name='cds_lfq_node_init_rcu' filepath='src/rculfqueue.c' line='33' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_lfq_node_init_rcu'>
       <!-- parameter of type 'cds_lfq_node_rcu*' -->
-      <parameter type-id='type-id-4' name='node' filepath='src/rculfqueue.c' line='33' column='1'/>
+      <parameter type-id='type-id-2' name='node' filepath='src/rculfqueue.c' line='33' column='1'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-decl>
     <!-- void (rcu_head*) -->
-    <function-type size-in-bits='64' id='type-id-13'>
+    <function-type size-in-bits='64' id='type-id-12'>
       <!-- parameter of type 'rcu_head*' -->
-      <parameter type-id='type-id-12'/>
+      <parameter type-id='type-id-11'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-type>
     <!-- void (rcu_head*, void (rcu_head*)*) -->
-    <function-type size-in-bits='64' id='type-id-14'>
+    <function-type size-in-bits='64' id='type-id-13'>
       <!-- parameter of type 'rcu_head*' -->
-      <parameter type-id='type-id-12'/>
+      <parameter type-id='type-id-11'/>
       <!-- parameter of type 'void (rcu_head*)*' -->
       <parameter type-id='type-id-9'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-type>
   </abi-instr>
   <abi-instr version='1.0' address-size='64' path='rculfstack.c' comp-dir-path='src' language='LANG_C99'>
         <var-decl name='next' type-id='type-id-16' visibility='default' filepath='../include/urcu/rculfstack.h' line='38' column='1'/>
       </data-member>
     </class-decl>
+    <!-- cds_lfs_node_rcu* -->
+    <pointer-type-def type-id='type-id-15' size-in-bits='64' id='type-id-16'/>
     <!-- struct cds_lfs_stack_rcu -->
     <class-decl name='cds_lfs_stack_rcu' size-in-bits='64' is-struct='yes' visibility='default' filepath='../include/urcu/rculfstack.h' line='41' column='1' id='type-id-17'>
       <data-member access='public' layout-offset-in-bits='0'>
         <var-decl name='head' type-id='type-id-16' visibility='default' filepath='../include/urcu/rculfstack.h' line='42' column='1'/>
       </data-member>
     </class-decl>
-    <!-- cds_lfs_node_rcu* -->
-    <pointer-type-def type-id='type-id-15' size-in-bits='64' id='type-id-16'/>
     <!-- cds_lfs_stack_rcu* -->
     <pointer-type-def type-id='type-id-17' size-in-bits='64' id='type-id-18'/>
     <!-- cds_lfs_node_rcu* cds_lfs_pop_rcu(cds_lfs_stack_rcu*) -->
       <!-- parameter of type 'cds_lfs_node_rcu*' -->
       <parameter type-id='type-id-16' name='node' filepath='src/rculfstack.c' line='48' column='1'/>
       <!-- int -->
-      <return type-id='type-id-1'/>
+      <return type-id='type-id-3'/>
     </function-decl>
     <!-- void cds_lfs_init_rcu(cds_lfs_stack_rcu*) -->
     <function-decl name='cds_lfs_init_rcu' mangled-name='cds_lfs_init_rcu' filepath='src/rculfstack.c' line='42' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_lfs_init_rcu'>
       <!-- parameter of type 'cds_lfs_stack_rcu*' -->
       <parameter type-id='type-id-18' name='s' filepath='src/rculfstack.c' line='42' column='1'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-decl>
     <!-- void cds_lfs_node_init_rcu(cds_lfs_node_rcu*) -->
     <function-decl name='cds_lfs_node_init_rcu' mangled-name='cds_lfs_node_init_rcu' filepath='src/rculfstack.c' line='37' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_lfs_node_init_rcu'>
       <!-- parameter of type 'cds_lfs_node_rcu*' -->
       <parameter type-id='type-id-16' name='node' filepath='src/rculfstack.c' line='37' column='1'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-decl>
   </abi-instr>
   <abi-instr version='1.0' address-size='64' path='lfstack.c' comp-dir-path='src' language='LANG_C99'>
-
-    <!-- bool -->
-    <type-decl name='bool' size-in-bits='8' id='type-id-19'/>
-    <!-- char -->
-    <type-decl name='char' size-in-bits='8' id='type-id-20'/>
-    <!-- char[40] -->
-    <array-type-def dimensions='1' type-id='type-id-20' size-in-bits='320' id='type-id-21'>
-      <!-- <anonymous range>[40] -->
-      <subrange length='40' type-id='type-id-22' id='type-id-23'/>
-
-    </array-type-def>
-    <!-- long int -->
-    <type-decl name='long int' size-in-bits='64' id='type-id-24'/>
-    <!-- short int -->
-    <type-decl name='short int' size-in-bits='16' id='type-id-25'/>
-    <!-- unsigned int -->
-    <type-decl name='unsigned int' size-in-bits='32' id='type-id-26'/>
-    <!-- unsigned long int -->
-    <type-decl name='unsigned long int' size-in-bits='64' id='type-id-22'/>
     <!-- struct cds_lfs_head -->
-    <class-decl name='cds_lfs_head' size-in-bits='64' is-struct='yes' visibility='default' filepath='../include/urcu/lfstack.h' line='69' column='1' id='type-id-27'>
+    <class-decl name='cds_lfs_head' size-in-bits='64' is-struct='yes' visibility='default' filepath='../include/urcu/lfstack.h' line='69' column='1' id='type-id-19'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- cds_lfs_node cds_lfs_head::node -->
-        <var-decl name='node' type-id='type-id-28' visibility='default' filepath='../include/urcu/lfstack.h' line='70' column='1'/>
+        <var-decl name='node' type-id='type-id-20' visibility='default' filepath='../include/urcu/lfstack.h' line='70' column='1'/>
       </data-member>
     </class-decl>
     <!-- struct cds_lfs_node -->
-    <class-decl name='cds_lfs_node' size-in-bits='64' is-struct='yes' visibility='default' filepath='../include/urcu/lfstack.h' line='59' column='1' id='type-id-28'>
+    <class-decl name='cds_lfs_node' size-in-bits='64' is-struct='yes' visibility='default' filepath='../include/urcu/lfstack.h' line='59' column='1' id='type-id-20'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- cds_lfs_node* cds_lfs_node::next -->
-        <var-decl name='next' type-id='type-id-29' visibility='default' filepath='../include/urcu/lfstack.h' line='60' column='1'/>
+        <var-decl name='next' type-id='type-id-21' visibility='default' filepath='../include/urcu/lfstack.h' line='60' column='1'/>
       </data-member>
     </class-decl>
-    <!-- typedef __anonymous_union__ cds_lfs_stack_ptr_t -->
-    <typedef-decl name='cds_lfs_stack_ptr_t' type-id='type-id-30' filepath='../include/urcu/lfstack.h' line='90' column='1' id='type-id-31'/>
-    <!-- union {__cds_lfs_stack* _s; cds_lfs_stack* s;} -->
-    <union-decl name='__anonymous_union__' size-in-bits='64' is-anonymous='yes' visibility='default' filepath='../include/urcu/lfstack.h' line='87' column='1' id='type-id-30'>
+    <!-- cds_lfs_node* -->
+    <pointer-type-def type-id='type-id-20' size-in-bits='64' id='type-id-21'/>
+    <!-- cds_lfs_head* -->
+    <pointer-type-def type-id='type-id-19' size-in-bits='64' id='type-id-22'/>
+    <!-- union __anonymous_union__ -->
+    <union-decl name='__anonymous_union__' size-in-bits='64' is-anonymous='yes' visibility='default' filepath='../include/urcu/lfstack.h' line='87' column='1' id='type-id-23'>
       <data-member access='private'>
-        <!-- __cds_lfs_stack* _s -->
-        <var-decl name='_s' type-id='type-id-32' visibility='default' filepath='../include/urcu/lfstack.h' line='88' column='1'/>
+        <!-- __cds_lfs_stack* __anonymous_union__::_s -->
+        <var-decl name='_s' type-id='type-id-24' visibility='default' filepath='../include/urcu/lfstack.h' line='88' column='1'/>
       </data-member>
       <data-member access='private'>
-        <!-- cds_lfs_stack* s -->
-        <var-decl name='s' type-id='type-id-33' visibility='default' filepath='../include/urcu/lfstack.h' line='89' column='1'/>
+        <!-- cds_lfs_stack* __anonymous_union__::s -->
+        <var-decl name='s' type-id='type-id-25' visibility='default' filepath='../include/urcu/lfstack.h' line='89' column='1'/>
       </data-member>
     </union-decl>
     <!-- struct __cds_lfs_stack -->
-    <class-decl name='__cds_lfs_stack' size-in-bits='64' is-struct='yes' visibility='default' filepath='../include/urcu/lfstack.h' line='73' column='1' id='type-id-34'>
+    <class-decl name='__cds_lfs_stack' size-in-bits='64' is-struct='yes' visibility='default' filepath='../include/urcu/lfstack.h' line='73' column='1' id='type-id-26'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- cds_lfs_head* __cds_lfs_stack::head -->
-        <var-decl name='head' type-id='type-id-35' visibility='default' filepath='../include/urcu/lfstack.h' line='74' column='1'/>
+        <var-decl name='head' type-id='type-id-22' visibility='default' filepath='../include/urcu/lfstack.h' line='74' column='1'/>
       </data-member>
     </class-decl>
+    <!-- __cds_lfs_stack* -->
+    <pointer-type-def type-id='type-id-26' size-in-bits='64' id='type-id-24'/>
     <!-- struct cds_lfs_stack -->
-    <class-decl name='cds_lfs_stack' size-in-bits='384' is-struct='yes' visibility='default' filepath='../include/urcu/lfstack.h' line='77' column='1' id='type-id-36'>
+    <class-decl name='cds_lfs_stack' size-in-bits='384' is-struct='yes' visibility='default' filepath='../include/urcu/lfstack.h' line='77' column='1' id='type-id-27'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- cds_lfs_head* cds_lfs_stack::head -->
-        <var-decl name='head' type-id='type-id-35' visibility='default' filepath='../include/urcu/lfstack.h' line='78' column='1'/>
+        <var-decl name='head' type-id='type-id-22' visibility='default' filepath='../include/urcu/lfstack.h' line='78' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='64'>
         <!-- pthread_mutex_t cds_lfs_stack::lock -->
-        <var-decl name='lock' type-id='type-id-37' visibility='default' filepath='../include/urcu/lfstack.h' line='79' column='1'/>
+        <var-decl name='lock' type-id='type-id-28' visibility='default' filepath='../include/urcu/lfstack.h' line='79' column='1'/>
       </data-member>
     </class-decl>
-    <!-- typedef __anonymous_union__1 pthread_mutex_t -->
-    <typedef-decl name='pthread_mutex_t' type-id='type-id-38' filepath='/usr/include/bits/pthreadtypes.h' line='72' column='1' id='type-id-37'/>
-    <!-- union {__pthread_mutex_s __data; char __size[40]; long int __align;} -->
-    <union-decl name='__anonymous_union__1' size-in-bits='320' is-anonymous='yes' visibility='default' filepath='/usr/include/bits/pthreadtypes.h' line='67' column='1' id='type-id-38'>
+    <!-- union __anonymous_union__ -->
+    <union-decl name='__anonymous_union__' size-in-bits='320' is-anonymous='yes' visibility='default' filepath='/usr/include/x86_64-linux-gnu/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-39' visibility='default' filepath='/usr/include/bits/pthreadtypes.h' line='69' column='1'/>
+        <!-- __pthread_mutex_s __anonymous_union__::__data -->
+        <var-decl name='__data' type-id='type-id-30' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h' line='69' column='1'/>
       </data-member>
       <data-member access='private'>
-        <!-- char __size[40] -->
-        <var-decl name='__size' type-id='type-id-21' visibility='default' filepath='/usr/include/bits/pthreadtypes.h' line='70' column='1'/>
+        <!-- char __anonymous_union__::__size[40] -->
+        <var-decl name='__size' type-id='type-id-31' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h' line='70' column='1'/>
       </data-member>
       <data-member access='private'>
-        <!-- long int __align -->
-        <var-decl name='__align' type-id='type-id-24' visibility='default' filepath='/usr/include/bits/pthreadtypes.h' line='71' column='1'/>
+        <!-- long int __anonymous_union__::__align -->
+        <var-decl name='__align' type-id='type-id-32' visibility='default' filepath='/usr/include/x86_64-linux-gnu/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-39'>
+    <class-decl name='__pthread_mutex_s' size-in-bits='320' is-struct='yes' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='118' 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-1' visibility='default' filepath='/usr/include/bits/struct_mutex.h' line='24' column='1'/>
+        <var-decl name='__lock' type-id='type-id-3' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='120' 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-26' visibility='default' filepath='/usr/include/bits/struct_mutex.h' line='25' column='1'/>
+        <var-decl name='__count' type-id='type-id-33' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='121' 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-1' visibility='default' filepath='/usr/include/bits/struct_mutex.h' line='26' column='1'/>
+        <var-decl name='__owner' type-id='type-id-3' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='122' 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-26' visibility='default' filepath='/usr/include/bits/struct_mutex.h' line='28' column='1'/>
+        <var-decl name='__nusers' type-id='type-id-33' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='124' 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-1' visibility='default' filepath='/usr/include/bits/struct_mutex.h' line='32' column='1'/>
+        <var-decl name='__kind' type-id='type-id-3' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='148' 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-25' visibility='default' filepath='/usr/include/bits/struct_mutex.h' line='34' column='1'/>
+        <var-decl name='__spins' type-id='type-id-34' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='154' 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-25' visibility='default' filepath='/usr/include/bits/struct_mutex.h' line='35' column='1'/>
+        <var-decl name='__elision' type-id='type-id-34' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='154' 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-40' visibility='default' filepath='/usr/include/bits/struct_mutex.h' line='36' column='1'/>
+        <var-decl name='__list' type-id='type-id-35' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='155' column='1'/>
       </data-member>
     </class-decl>
-    <!-- typedef __pthread_internal_list __pthread_list_t -->
-    <typedef-decl name='__pthread_list_t' type-id='type-id-41' filepath='/usr/include/bits/thread-shared-types.h' line='53' column='1' id='type-id-40'/>
+    <!-- unsigned int -->
+    <type-decl name='unsigned int' size-in-bits='32' id='type-id-33'/>
+    <!-- short int -->
+    <type-decl name='short int' size-in-bits='16' id='type-id-34'/>
     <!-- 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-41'>
+    <class-decl name='__pthread_internal_list' size-in-bits='128' is-struct='yes' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='82' column='1' id='type-id-36'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- __pthread_internal_list* __pthread_internal_list::__prev -->
-        <var-decl name='__prev' type-id='type-id-42' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='51' column='1'/>
+        <var-decl name='__prev' type-id='type-id-37' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='84' 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-42' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='52' column='1'/>
+        <var-decl name='__next' type-id='type-id-37' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='85' column='1'/>
       </data-member>
     </class-decl>
-    <!-- __cds_lfs_stack* -->
-    <pointer-type-def type-id='type-id-34' size-in-bits='64' id='type-id-32'/>
     <!-- __pthread_internal_list* -->
-    <pointer-type-def type-id='type-id-41' size-in-bits='64' id='type-id-42'/>
-    <!-- cds_lfs_head* -->
-    <pointer-type-def type-id='type-id-27' size-in-bits='64' id='type-id-35'/>
-    <!-- cds_lfs_node* -->
-    <pointer-type-def type-id='type-id-28' size-in-bits='64' id='type-id-29'/>
+    <pointer-type-def type-id='type-id-36' size-in-bits='64' id='type-id-37'/>
+    <!-- typedef __pthread_internal_list __pthread_list_t -->
+    <typedef-decl name='__pthread_list_t' type-id='type-id-36' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='86' column='1' id='type-id-35'/>
+    <!-- char -->
+    <type-decl name='char' size-in-bits='8' id='type-id-38'/>
+    <!-- unsigned long int -->
+    <type-decl name='unsigned long int' size-in-bits='64' id='type-id-39'/>
+
+    <!-- char[40] -->
+    <array-type-def dimensions='1' type-id='type-id-38' size-in-bits='320' id='type-id-31'>
+      <!-- <anonymous range>[40] -->
+      <subrange length='40' type-id='type-id-39' id='type-id-40'/>
+
+    </array-type-def>
+    <!-- long int -->
+    <type-decl name='long int' size-in-bits='64' id='type-id-32'/>
+    <!-- typedef __anonymous_union__ pthread_mutex_t -->
+    <typedef-decl name='pthread_mutex_t' type-id='type-id-29' filepath='/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h' line='72' column='1' id='type-id-28'/>
     <!-- cds_lfs_stack* -->
-    <pointer-type-def type-id='type-id-36' size-in-bits='64' id='type-id-33'/>
+    <pointer-type-def type-id='type-id-27' size-in-bits='64' id='type-id-25'/>
+    <!-- typedef __anonymous_union__ cds_lfs_stack_ptr_t -->
+    <typedef-decl name='cds_lfs_stack_ptr_t' type-id='type-id-23' filepath='../include/urcu/lfstack.h' line='90' column='1' id='type-id-41'/>
     <!-- cds_lfs_head* __cds_lfs_pop_all(cds_lfs_stack_ptr_t) -->
     <function-decl name='__cds_lfs_pop_all' mangled-name='__cds_lfs_pop_all' filepath='src/lfstack.c' line='88' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='__cds_lfs_pop_all'>
       <!-- parameter of type 'typedef cds_lfs_stack_ptr_t' -->
-      <parameter type-id='type-id-31' name='s' filepath='src/lfstack.c' line='88' column='1'/>
+      <parameter type-id='type-id-41' name='s' filepath='src/lfstack.c' line='88' column='1'/>
       <!-- cds_lfs_head* -->
-      <return type-id='type-id-35'/>
+      <return type-id='type-id-22'/>
     </function-decl>
     <!-- cds_lfs_node* __cds_lfs_pop(cds_lfs_stack_ptr_t) -->
     <function-decl name='__cds_lfs_pop' mangled-name='__cds_lfs_pop' filepath='src/lfstack.c' line='83' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='__cds_lfs_pop'>
       <!-- parameter of type 'typedef cds_lfs_stack_ptr_t' -->
-      <parameter type-id='type-id-31' name='s' filepath='src/lfstack.c' line='83' column='1'/>
+      <parameter type-id='type-id-41' name='s' filepath='src/lfstack.c' line='83' column='1'/>
       <!-- cds_lfs_node* -->
-      <return type-id='type-id-29'/>
+      <return type-id='type-id-21'/>
     </function-decl>
     <!-- void cds_lfs_pop_unlock(cds_lfs_stack*) -->
     <function-decl name='cds_lfs_pop_unlock' mangled-name='cds_lfs_pop_unlock' filepath='src/lfstack.c' line='78' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_lfs_pop_unlock'>
       <!-- parameter of type 'cds_lfs_stack*' -->
-      <parameter type-id='type-id-33' name='s' filepath='src/lfstack.c' line='78' column='1'/>
+      <parameter type-id='type-id-25' name='s' filepath='src/lfstack.c' line='78' column='1'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-decl>
     <!-- void cds_lfs_pop_lock(cds_lfs_stack*) -->
     <function-decl name='cds_lfs_pop_lock' mangled-name='cds_lfs_pop_lock' filepath='src/lfstack.c' line='73' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_lfs_pop_lock'>
       <!-- parameter of type 'cds_lfs_stack*' -->
-      <parameter type-id='type-id-33' name='s' filepath='src/lfstack.c' line='73' column='1'/>
+      <parameter type-id='type-id-25' name='s' filepath='src/lfstack.c' line='78' column='1'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-decl>
     <!-- cds_lfs_head* cds_lfs_pop_all_blocking(cds_lfs_stack*) -->
     <function-decl name='cds_lfs_pop_all_blocking' mangled-name='cds_lfs_pop_all_blocking' filepath='src/lfstack.c' line='68' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_lfs_pop_all_blocking'>
       <!-- parameter of type 'cds_lfs_stack*' -->
-      <parameter type-id='type-id-33' name='s' filepath='src/lfstack.c' line='68' column='1'/>
+      <parameter type-id='type-id-25' name='s' filepath='src/lfstack.c' line='68' column='1'/>
       <!-- cds_lfs_head* -->
-      <return type-id='type-id-35'/>
+      <return type-id='type-id-22'/>
     </function-decl>
     <!-- cds_lfs_node* cds_lfs_pop_blocking(cds_lfs_stack*) -->
     <function-decl name='cds_lfs_pop_blocking' mangled-name='cds_lfs_pop_blocking' filepath='src/lfstack.c' line='63' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_lfs_pop_blocking'>
       <!-- parameter of type 'cds_lfs_stack*' -->
-      <parameter type-id='type-id-33' name='s' filepath='src/lfstack.c' line='63' column='1'/>
+      <parameter type-id='type-id-25' name='s' filepath='src/lfstack.c' line='63' column='1'/>
       <!-- cds_lfs_node* -->
-      <return type-id='type-id-29'/>
+      <return type-id='type-id-21'/>
     </function-decl>
+    <!-- bool -->
+    <type-decl name='bool' size-in-bits='8' id='type-id-42'/>
     <!-- bool cds_lfs_push(cds_lfs_stack_ptr_t, cds_lfs_node*) -->
     <function-decl name='cds_lfs_push' mangled-name='cds_lfs_push' filepath='src/lfstack.c' line='58' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_lfs_push'>
       <!-- parameter of type 'typedef cds_lfs_stack_ptr_t' -->
-      <parameter type-id='type-id-31' name='s' filepath='src/lfstack.c' line='58' column='1'/>
+      <parameter type-id='type-id-41' name='s' filepath='src/lfstack.c' line='58' column='1'/>
       <!-- parameter of type 'cds_lfs_node*' -->
-      <parameter type-id='type-id-29' name='node' filepath='src/lfstack.c' line='58' column='1'/>
+      <parameter type-id='type-id-21' name='node' filepath='src/lfstack.c' line='58' column='1'/>
       <!-- bool -->
-      <return type-id='type-id-19'/>
+      <return type-id='type-id-42'/>
     </function-decl>
     <!-- bool cds_lfs_empty(cds_lfs_stack_ptr_t) -->
     <function-decl name='cds_lfs_empty' mangled-name='cds_lfs_empty' filepath='src/lfstack.c' line='53' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_lfs_empty'>
       <!-- parameter of type 'typedef cds_lfs_stack_ptr_t' -->
-      <parameter type-id='type-id-31' name='s' filepath='src/lfstack.c' line='53' column='1'/>
+      <parameter type-id='type-id-41' name='s' filepath='src/lfstack.c' line='53' column='1'/>
       <!-- bool -->
-      <return type-id='type-id-19'/>
+      <return type-id='type-id-42'/>
     </function-decl>
     <!-- void __cds_lfs_init(__cds_lfs_stack*) -->
     <function-decl name='__cds_lfs_init' mangled-name='__cds_lfs_init' filepath='src/lfstack.c' line='48' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='__cds_lfs_init'>
       <!-- parameter of type '__cds_lfs_stack*' -->
-      <parameter type-id='type-id-32' name='s' filepath='src/lfstack.c' line='48' column='1'/>
+      <parameter type-id='type-id-24' name='s' filepath='src/lfstack.c' line='48' column='1'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-decl>
     <!-- void cds_lfs_destroy(cds_lfs_stack*) -->
     <function-decl name='cds_lfs_destroy' mangled-name='cds_lfs_destroy' filepath='src/lfstack.c' line='43' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_lfs_destroy'>
       <!-- parameter of type 'cds_lfs_stack*' -->
-      <parameter type-id='type-id-33' name='s' filepath='src/lfstack.c' line='43' column='1'/>
+      <parameter type-id='type-id-25' name='s' filepath='src/lfstack.c' line='78' column='1'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-decl>
     <!-- void cds_lfs_init(cds_lfs_stack*) -->
     <function-decl name='cds_lfs_init' mangled-name='cds_lfs_init' filepath='src/lfstack.c' line='38' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_lfs_init'>
       <!-- parameter of type 'cds_lfs_stack*' -->
-      <parameter type-id='type-id-33' name='s' filepath='src/lfstack.c' line='38' column='1'/>
+      <parameter type-id='type-id-25' name='s' filepath='src/lfstack.c' line='78' column='1'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-decl>
     <!-- void cds_lfs_node_init(cds_lfs_node*) -->
     <function-decl name='cds_lfs_node_init' mangled-name='cds_lfs_node_init' filepath='src/lfstack.c' line='33' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_lfs_node_init'>
       <!-- parameter of type 'cds_lfs_node*' -->
-      <parameter type-id='type-id-29' name='node' filepath='src/lfstack.c' line='33' column='1'/>
+      <parameter type-id='type-id-21' name='node' filepath='src/lfstack.c' line='33' column='1'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-decl>
   </abi-instr>
   <abi-instr version='1.0' address-size='64' path='workqueue.c' comp-dir-path='src' language='LANG_C99'>
       </data-member>
       <data-member access='public' layout-offset-in-bits='448'>
         <!-- unsigned long int urcu_workqueue::flags -->
-        <var-decl name='flags' type-id='type-id-22' visibility='default' filepath='src/workqueue.c' line='63' column='1'/>
+        <var-decl name='flags' type-id='type-id-39' visibility='default' filepath='src/workqueue.c' line='63' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='512'>
         <!-- int32_t urcu_workqueue::futex -->
       </data-member>
       <data-member access='public' layout-offset-in-bits='576'>
         <!-- unsigned long int urcu_workqueue::qlen -->
-        <var-decl name='qlen' type-id='type-id-22' visibility='default' filepath='src/workqueue.c' line='65' column='1'/>
+        <var-decl name='qlen' type-id='type-id-39' visibility='default' filepath='src/workqueue.c' line='65' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='640'>
         <!-- pthread_t urcu_workqueue::tid -->
       </data-member>
       <data-member access='public' layout-offset-in-bits='704'>
         <!-- int urcu_workqueue::cpu_affinity -->
-        <var-decl name='cpu_affinity' type-id='type-id-1' visibility='default' filepath='src/workqueue.c' line='67' column='1'/>
+        <var-decl name='cpu_affinity' type-id='type-id-3' visibility='default' filepath='src/workqueue.c' line='67' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='768'>
         <!-- unsigned long int urcu_workqueue::loop_count -->
-        <var-decl name='loop_count' type-id='type-id-22' visibility='default' filepath='src/workqueue.c' line='68' column='1'/>
+        <var-decl name='loop_count' type-id='type-id-39' visibility='default' filepath='src/workqueue.c' line='68' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='832'>
         <!-- void* urcu_workqueue::priv -->
       </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-37' visibility='default' filepath='../include/urcu/wfcqueue.h' line='74' column='1'/>
+        <var-decl name='lock' type-id='type-id-28' visibility='default' filepath='../include/urcu/wfcqueue.h' line='74' column='1'/>
       </data-member>
     </class-decl>
-    <!-- typedef __int32_t int32_t -->
-    <typedef-decl name='int32_t' type-id='type-id-50' filepath='/usr/include/bits/stdint-intn.h' line='26' column='1' id='type-id-46'/>
     <!-- typedef int __int32_t -->
-    <typedef-decl name='__int32_t' type-id='type-id-1' filepath='/usr/include/bits/types.h' line='41' column='1' id='type-id-50'/>
+    <typedef-decl name='__int32_t' type-id='type-id-3' filepath='/usr/include/x86_64-linux-gnu/bits/types.h' line='40' column='1' id='type-id-50'/>
+    <!-- typedef __int32_t int32_t -->
+    <typedef-decl name='int32_t' type-id='type-id-50' filepath='/usr/include/x86_64-linux-gnu/bits/stdint-intn.h' line='26' column='1' id='type-id-46'/>
     <!-- typedef unsigned long int pthread_t -->
-    <typedef-decl name='pthread_t' type-id='type-id-22' filepath='/usr/include/bits/pthreadtypes.h' line='27' column='1' id='type-id-47'/>
-    <!-- struct urcu_workqueue_completion -->
-    <class-decl name='urcu_workqueue_completion' size-in-bits='128' is-struct='yes' visibility='default' filepath='src/workqueue.c' line='79' column='1' id='type-id-51'>
-      <data-member access='public' layout-offset-in-bits='0'>
-        <!-- int urcu_workqueue_completion::barrier_count -->
-        <var-decl name='barrier_count' type-id='type-id-1' visibility='default' filepath='src/workqueue.c' line='80' column='1'/>
-      </data-member>
-      <data-member access='public' layout-offset-in-bits='32'>
-        <!-- int32_t urcu_workqueue_completion::futex -->
-        <var-decl name='futex' type-id='type-id-46' visibility='default' filepath='src/workqueue.c' line='81' column='1'/>
-      </data-member>
-      <data-member access='public' layout-offset-in-bits='64'>
-        <!-- urcu_ref urcu_workqueue_completion::ref -->
-        <var-decl name='ref' type-id='type-id-52' visibility='default' filepath='src/workqueue.c' line='82' column='1'/>
-      </data-member>
-    </class-decl>
-    <!-- struct urcu_ref -->
-    <class-decl name='urcu_ref' size-in-bits='64' is-struct='yes' visibility='default' filepath='../include/urcu/ref.h' line='23' column='1' id='type-id-52'>
-      <data-member access='public' layout-offset-in-bits='0'>
-        <!-- long int urcu_ref::refcount -->
-        <var-decl name='refcount' type-id='type-id-24' visibility='default' filepath='../include/urcu/ref.h' line='24' column='1'/>
-      </data-member>
-    </class-decl>
-    <!-- struct urcu_work -->
-    <class-decl name='urcu_work' size-in-bits='128' is-struct='yes' visibility='default' filepath='src/workqueue.h' line='53' column='1' id='type-id-53'>
-      <data-member access='public' layout-offset-in-bits='0'>
-        <!-- cds_wfcq_node urcu_work::next -->
-        <var-decl name='next' type-id='type-id-8' visibility='default' filepath='src/workqueue.h' line='54' column='1'/>
-      </data-member>
-      <data-member access='public' layout-offset-in-bits='64'>
-        <!-- void (urcu_work*)* urcu_work::func -->
-        <var-decl name='func' type-id='type-id-54' visibility='default' filepath='src/workqueue.h' line='55' column='1'/>
-      </data-member>
-    </class-decl>
-    <!-- urcu_work* -->
-    <pointer-type-def type-id='type-id-53' size-in-bits='64' id='type-id-55'/>
+    <typedef-decl name='pthread_t' type-id='type-id-39' filepath='/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h' line='27' column='1' id='type-id-47'/>
+    <!-- void* -->
+    <pointer-type-def type-id='type-id-6' size-in-bits='64' id='type-id-48'/>
     <!-- urcu_workqueue* -->
-    <pointer-type-def type-id='type-id-43' size-in-bits='64' id='type-id-56'/>
-    <!-- urcu_workqueue_completion* -->
-    <pointer-type-def type-id='type-id-51' size-in-bits='64' id='type-id-57'/>
-    <!-- void (urcu_work*)* -->
-    <pointer-type-def type-id='type-id-58' size-in-bits='64' id='type-id-54'/>
+    <pointer-type-def type-id='type-id-43' size-in-bits='64' id='type-id-51'/>
     <!-- void (urcu_workqueue*, void*)* -->
-    <pointer-type-def type-id='type-id-59' size-in-bits='64' id='type-id-49'/>
-    <!-- void* -->
-    <pointer-type-def type-id='type-id-2' size-in-bits='64' id='type-id-48'/>
+    <pointer-type-def type-id='type-id-52' size-in-bits='64' id='type-id-49'/>
     <!-- void urcu_workqueue_create_worker(urcu_workqueue*) -->
     <function-decl name='urcu_workqueue_create_worker' mangled-name='urcu_workqueue_create_worker' filepath='src/workqueue.c' line='458' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='urcu_workqueue_create_worker'>
       <!-- parameter of type 'urcu_workqueue*' -->
-      <parameter type-id='type-id-56' name='workqueue' filepath='src/workqueue.c' line='458' column='1'/>
+      <parameter type-id='type-id-51' name='workqueue' filepath='src/workqueue.c' line='458' column='1'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-decl>
     <!-- void urcu_workqueue_resume_worker(urcu_workqueue*) -->
     <function-decl name='urcu_workqueue_resume_worker' mangled-name='urcu_workqueue_resume_worker' filepath='src/workqueue.c' line='451' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='urcu_workqueue_resume_worker'>
       <!-- parameter of type 'urcu_workqueue*' -->
-      <parameter type-id='type-id-56' name='workqueue' filepath='src/workqueue.c' line='451' column='1'/>
+      <parameter type-id='type-id-51' name='workqueue' filepath='src/workqueue.c' line='451' column='1'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-decl>
     <!-- void urcu_workqueue_pause_worker(urcu_workqueue*) -->
     <function-decl name='urcu_workqueue_pause_worker' mangled-name='urcu_workqueue_pause_worker' filepath='src/workqueue.c' line='440' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='urcu_workqueue_pause_worker'>
       <!-- parameter of type 'urcu_workqueue*' -->
-      <parameter type-id='type-id-56' name='workqueue' filepath='src/workqueue.c' line='440' column='1'/>
+      <parameter type-id='type-id-51' name='workqueue' filepath='src/workqueue.c' line='451' column='1'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-decl>
     <!-- void urcu_workqueue_flush_queued_work(urcu_workqueue*) -->
     <function-decl name='urcu_workqueue_flush_queued_work' mangled-name='urcu_workqueue_flush_queued_work' filepath='src/workqueue.c' line='427' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='urcu_workqueue_flush_queued_work'>
       <!-- parameter of type 'urcu_workqueue*' -->
-      <parameter type-id='type-id-56' name='workqueue' filepath='src/workqueue.c' line='427' column='1'/>
+      <parameter type-id='type-id-51' name='workqueue' filepath='src/workqueue.c' line='458' column='1'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-decl>
+    <!-- struct urcu_workqueue_completion -->
+    <class-decl name='urcu_workqueue_completion' size-in-bits='128' is-struct='yes' visibility='default' filepath='src/workqueue.c' line='79' column='1' id='type-id-53'>
+      <data-member access='public' layout-offset-in-bits='0'>
+        <!-- int urcu_workqueue_completion::barrier_count -->
+        <var-decl name='barrier_count' type-id='type-id-3' visibility='default' filepath='src/workqueue.c' line='80' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='32'>
+        <!-- int32_t urcu_workqueue_completion::futex -->
+        <var-decl name='futex' type-id='type-id-46' visibility='default' filepath='src/workqueue.c' line='81' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='64'>
+        <!-- urcu_ref urcu_workqueue_completion::ref -->
+        <var-decl name='ref' type-id='type-id-54' visibility='default' filepath='src/workqueue.c' line='82' column='1'/>
+      </data-member>
+    </class-decl>
+    <!-- struct urcu_ref -->
+    <class-decl name='urcu_ref' size-in-bits='64' is-struct='yes' visibility='default' filepath='../include/urcu/ref.h' line='23' column='1' id='type-id-54'>
+      <data-member access='public' layout-offset-in-bits='0'>
+        <!-- long int urcu_ref::refcount -->
+        <var-decl name='refcount' type-id='type-id-32' visibility='default' filepath='../include/urcu/ref.h' line='24' column='1'/>
+      </data-member>
+    </class-decl>
+    <!-- urcu_workqueue_completion* -->
+    <pointer-type-def type-id='type-id-53' size-in-bits='64' id='type-id-55'/>
     <!-- void urcu_workqueue_queue_completion(urcu_workqueue*, urcu_workqueue_completion*) -->
     <function-decl name='urcu_workqueue_queue_completion' mangled-name='urcu_workqueue_queue_completion' filepath='src/workqueue.c' line='410' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='urcu_workqueue_queue_completion'>
       <!-- parameter of type 'urcu_workqueue*' -->
-      <parameter type-id='type-id-56' name='workqueue' filepath='src/workqueue.c' line='410' column='1'/>
+      <parameter type-id='type-id-51' name='workqueue' filepath='src/workqueue.c' line='410' column='1'/>
       <!-- parameter of type 'urcu_workqueue_completion*' -->
-      <parameter type-id='type-id-57' name='completion' filepath='src/workqueue.c' line='411' column='1'/>
+      <parameter type-id='type-id-55' name='completion' filepath='src/workqueue.c' line='411' column='1'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-decl>
     <!-- void urcu_workqueue_wait_completion(urcu_workqueue_completion*) -->
     <function-decl name='urcu_workqueue_wait_completion' mangled-name='urcu_workqueue_wait_completion' filepath='src/workqueue.c' line='397' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='urcu_workqueue_wait_completion'>
       <!-- parameter of type 'urcu_workqueue_completion*' -->
-      <parameter type-id='type-id-57' name='completion' filepath='src/workqueue.c' line='397' column='1'/>
+      <parameter type-id='type-id-55' name='completion' filepath='src/workqueue.c' line='397' column='1'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-decl>
     <!-- void urcu_workqueue_destroy_completion(urcu_workqueue_completion*) -->
     <function-decl name='urcu_workqueue_destroy_completion' mangled-name='urcu_workqueue_destroy_completion' filepath='src/workqueue.c' line='392' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='urcu_workqueue_destroy_completion'>
       <!-- parameter of type 'urcu_workqueue_completion*' -->
-      <parameter type-id='type-id-57' name='completion' filepath='src/workqueue.c' line='392' column='1'/>
+      <parameter type-id='type-id-55' name='completion' filepath='src/workqueue.c' line='392' column='1'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-decl>
     <!-- urcu_workqueue_completion* urcu_workqueue_create_completion() -->
     <function-decl name='urcu_workqueue_create_completion' mangled-name='urcu_workqueue_create_completion' filepath='src/workqueue.c' line='380' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='urcu_workqueue_create_completion'>
       <!-- urcu_workqueue_completion* -->
-      <return type-id='type-id-57'/>
+      <return type-id='type-id-55'/>
     </function-decl>
+    <!-- struct urcu_work -->
+    <class-decl name='urcu_work' size-in-bits='128' is-struct='yes' visibility='default' filepath='src/workqueue.h' line='53' column='1' id='type-id-56'>
+      <data-member access='public' layout-offset-in-bits='0'>
+        <!-- cds_wfcq_node urcu_work::next -->
+        <var-decl name='next' type-id='type-id-8' visibility='default' filepath='src/workqueue.h' line='54' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='64'>
+        <!-- void (urcu_work*)* urcu_work::func -->
+        <var-decl name='func' type-id='type-id-57' visibility='default' filepath='src/workqueue.h' line='55' column='1'/>
+      </data-member>
+    </class-decl>
+    <!-- urcu_work* -->
+    <pointer-type-def type-id='type-id-56' size-in-bits='64' id='type-id-58'/>
+    <!-- void (urcu_work*)* -->
+    <pointer-type-def type-id='type-id-59' size-in-bits='64' id='type-id-57'/>
     <!-- void urcu_workqueue_queue_work(urcu_workqueue*, urcu_work*, void (urcu_work*)*) -->
     <function-decl name='urcu_workqueue_queue_work' mangled-name='urcu_workqueue_queue_work' filepath='src/workqueue.c' line='346' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='urcu_workqueue_queue_work'>
       <!-- parameter of type 'urcu_workqueue*' -->
-      <parameter type-id='type-id-56' name='workqueue' filepath='src/workqueue.c' line='346' column='1'/>
+      <parameter type-id='type-id-51' name='workqueue' filepath='src/workqueue.c' line='346' column='1'/>
       <!-- parameter of type 'urcu_work*' -->
-      <parameter type-id='type-id-55' name='work' filepath='src/workqueue.c' line='347' column='1'/>
+      <parameter type-id='type-id-58' name='work' filepath='src/workqueue.c' line='347' column='1'/>
       <!-- parameter of type 'void (urcu_work*)*' -->
-      <parameter type-id='type-id-54' name='func' filepath='src/workqueue.c' line='348' column='1'/>
+      <parameter type-id='type-id-57' name='func' filepath='src/workqueue.c' line='348' column='1'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-decl>
     <!-- void urcu_workqueue_destroy(urcu_workqueue*) -->
     <function-decl name='urcu_workqueue_destroy' mangled-name='urcu_workqueue_destroy' filepath='src/workqueue.c' line='334' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='urcu_workqueue_destroy'>
       <!-- parameter of type 'urcu_workqueue*' -->
-      <parameter type-id='type-id-56' name='workqueue' filepath='src/workqueue.c' line='334' column='1'/>
+      <parameter type-id='type-id-51' name='workqueue' filepath='src/workqueue.c' line='458' column='1'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-decl>
     <!-- urcu_workqueue* urcu_workqueue_create(unsigned long int, int, void*, void (urcu_workqueue*, void*)*, void (urcu_workqueue*, void*)*, void (urcu_workqueue*, void*)*, void (urcu_workqueue*, void*)*, void (urcu_workqueue*, void*)*, void (urcu_workqueue*, void*)*, void (urcu_workqueue*, void*)*) -->
     <function-decl name='urcu_workqueue_create' mangled-name='urcu_workqueue_create' filepath='src/workqueue.c' line='269' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='urcu_workqueue_create'>
       <!-- parameter of type 'unsigned long int' -->
-      <parameter type-id='type-id-22' name='flags' filepath='src/workqueue.c' line='269' column='1'/>
+      <parameter type-id='type-id-39' name='flags' filepath='src/workqueue.c' line='269' column='1'/>
       <!-- parameter of type 'int' -->
-      <parameter type-id='type-id-1' name='cpu_affinity' filepath='src/workqueue.c' line='270' column='1'/>
+      <parameter type-id='type-id-3' name='cpu_affinity' filepath='src/workqueue.c' line='270' column='1'/>
       <!-- parameter of type 'void*' -->
       <parameter type-id='type-id-48' name='priv' filepath='src/workqueue.c' line='270' column='1'/>
       <!-- parameter of type 'void (urcu_workqueue*, void*)*' -->
       <!-- parameter of type 'void (urcu_workqueue*, void*)*' -->
       <parameter type-id='type-id-49' name='worker_after_resume_fct' filepath='src/workqueue.c' line='277' column='1'/>
       <!-- urcu_workqueue* -->
-      <return type-id='type-id-56'/>
+      <return type-id='type-id-51'/>
     </function-decl>
     <!-- void (urcu_work*) -->
-    <function-type size-in-bits='64' id='type-id-58'>
+    <function-type size-in-bits='64' id='type-id-59'>
       <!-- parameter of type 'urcu_work*' -->
-      <parameter type-id='type-id-55'/>
+      <parameter type-id='type-id-58'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-type>
     <!-- void (urcu_workqueue*, void*) -->
-    <function-type size-in-bits='64' id='type-id-59'>
+    <function-type size-in-bits='64' id='type-id-52'>
       <!-- parameter of type 'urcu_workqueue*' -->
-      <parameter type-id='type-id-56'/>
+      <parameter type-id='type-id-51'/>
       <!-- parameter of type 'void*' -->
       <parameter type-id='type-id-48'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-type>
   </abi-instr>
   <abi-instr version='1.0' address-size='64' path='rculfhash.c' comp-dir-path='src' language='LANG_C99'>
-
-
-
-    <!-- cds_lfht_node*[64] -->
-    <array-type-def dimensions='1' type-id='type-id-60' size-in-bits='4096' id='type-id-61'>
-      <!-- <anonymous range>[64] -->
-      <subrange length='64' type-id='type-id-22' id='type-id-62'/>
-
-    </array-type-def>
-    <!-- cds_lfht_node*[] -->
-    <array-type-def dimensions='1' type-id='type-id-60' size-in-bits='infinite' id='type-id-63'>
-      <!-- <anonymous range>[] -->
-      <subrange length='infinite' type-id='type-id-22' id='type-id-64'/>
-
-    </array-type-def>
-    <!-- char[56] -->
-    <array-type-def dimensions='1' type-id='type-id-20' size-in-bits='448' id='type-id-65'>
-      <!-- <anonymous range>[56] -->
-      <subrange length='56' type-id='type-id-22' id='type-id-66'/>
-
-    </array-type-def>
     <!-- struct cds_lfht -->
-    <class-decl name='cds_lfht' size-in-bits='5248' is-struct='yes' visibility='default' filepath='../src/rculfhash-internal.h' line='68' column='1' id='type-id-67'>
+    <class-decl name='cds_lfht' size-in-bits='5248' is-struct='yes' visibility='default' filepath='../src/rculfhash-internal.h' line='68' column='1' id='type-id-60'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- unsigned long int cds_lfht::max_nr_buckets -->
-        <var-decl name='max_nr_buckets' type-id='type-id-22' visibility='default' filepath='../src/rculfhash-internal.h' line='70' column='1'/>
+        <var-decl name='max_nr_buckets' type-id='type-id-39' visibility='default' filepath='../src/rculfhash-internal.h' line='70' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='64'>
         <!-- const cds_lfht_mm_type* cds_lfht::mm -->
-        <var-decl name='mm' type-id='type-id-68' visibility='default' filepath='../src/rculfhash-internal.h' line='71' column='1'/>
+        <var-decl name='mm' type-id='type-id-61' visibility='default' filepath='../src/rculfhash-internal.h' line='71' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='128'>
         <!-- const rcu_flavor_struct* cds_lfht::flavor -->
-        <var-decl name='flavor' type-id='type-id-69' visibility='default' filepath='../src/rculfhash-internal.h' line='72' column='1'/>
+        <var-decl name='flavor' type-id='type-id-62' visibility='default' filepath='../src/rculfhash-internal.h' line='72' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='192'>
         <!-- long int cds_lfht::count -->
-        <var-decl name='count' type-id='type-id-24' visibility='default' filepath='../src/rculfhash-internal.h' line='74' column='1'/>
+        <var-decl name='count' type-id='type-id-32' visibility='default' filepath='../src/rculfhash-internal.h' line='74' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='256'>
         <!-- pthread_mutex_t cds_lfht::resize_mutex -->
-        <var-decl name='resize_mutex' type-id='type-id-37' visibility='default' filepath='../src/rculfhash-internal.h' line='83' column='1'/>
+        <var-decl name='resize_mutex' type-id='type-id-28' visibility='default' filepath='../src/rculfhash-internal.h' line='83' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='576'>
         <!-- pthread_attr_t* cds_lfht::resize_attr -->
-        <var-decl name='resize_attr' type-id='type-id-70' visibility='default' filepath='../src/rculfhash-internal.h' line='84' column='1'/>
+        <var-decl name='resize_attr' type-id='type-id-63' visibility='default' filepath='../src/rculfhash-internal.h' line='84' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='640'>
         <!-- unsigned int cds_lfht::in_progress_destroy -->
-        <var-decl name='in_progress_destroy' type-id='type-id-26' visibility='default' filepath='../src/rculfhash-internal.h' line='85' column='1'/>
+        <var-decl name='in_progress_destroy' type-id='type-id-33' visibility='default' filepath='../src/rculfhash-internal.h' line='85' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='704'>
         <!-- unsigned long int cds_lfht::resize_target -->
-        <var-decl name='resize_target' type-id='type-id-22' visibility='default' filepath='../src/rculfhash-internal.h' line='86' column='1'/>
+        <var-decl name='resize_target' type-id='type-id-39' visibility='default' filepath='../src/rculfhash-internal.h' line='86' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='768'>
         <!-- int cds_lfht::resize_initiated -->
-        <var-decl name='resize_initiated' type-id='type-id-1' visibility='default' filepath='../src/rculfhash-internal.h' line='87' column='1'/>
+        <var-decl name='resize_initiated' type-id='type-id-3' visibility='default' filepath='../src/rculfhash-internal.h' line='87' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='800'>
         <!-- int cds_lfht::flags -->
-        <var-decl name='flags' type-id='type-id-1' visibility='default' filepath='../src/rculfhash-internal.h' line='92' column='1'/>
+        <var-decl name='flags' type-id='type-id-3' visibility='default' filepath='../src/rculfhash-internal.h' line='92' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='832'>
         <!-- unsigned long int cds_lfht::min_alloc_buckets_order -->
-        <var-decl name='min_alloc_buckets_order' type-id='type-id-22' visibility='default' filepath='../src/rculfhash-internal.h' line='93' column='1'/>
+        <var-decl name='min_alloc_buckets_order' type-id='type-id-39' visibility='default' filepath='../src/rculfhash-internal.h' line='93' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='896'>
         <!-- unsigned long int cds_lfht::min_nr_alloc_buckets -->
-        <var-decl name='min_nr_alloc_buckets' type-id='type-id-22' visibility='default' filepath='../src/rculfhash-internal.h' line='94' column='1'/>
+        <var-decl name='min_nr_alloc_buckets' type-id='type-id-39' visibility='default' filepath='../src/rculfhash-internal.h' line='94' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='960'>
         <!-- ht_items_count* cds_lfht::split_count -->
-        <var-decl name='split_count' type-id='type-id-71' visibility='default' filepath='../src/rculfhash-internal.h' line='95' column='1'/>
+        <var-decl name='split_count' type-id='type-id-64' visibility='default' filepath='../src/rculfhash-internal.h' line='95' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='1024'>
         <!-- unsigned long int cds_lfht::size -->
-        <var-decl name='size' type-id='type-id-22' visibility='default' filepath='../src/rculfhash-internal.h' line='100' column='1'/>
+        <var-decl name='size' type-id='type-id-39' visibility='default' filepath='../src/rculfhash-internal.h' line='100' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='1088'>
         <!-- cds_lfht_node* (cds_lfht*, unsigned long int)* cds_lfht::bucket_at -->
-        <var-decl name='bucket_at' type-id='type-id-72' visibility='default' filepath='../src/rculfhash-internal.h' line='105' column='1'/>
+        <var-decl name='bucket_at' type-id='type-id-65' visibility='default' filepath='../src/rculfhash-internal.h' line='105' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='1152'>
-        <!-- union {cds_lfht_node* tbl_order[64]; cds_lfht_node* tbl_chunk[]; cds_lfht_node* tbl_mmap;} -->
-        <var-decl name='' type-id='type-id-73' visibility='default'/>
+        <!-- __anonymous_union__  -->
+        <var-decl name='' type-id='type-id-66' visibility='default'/>
       </data-member>
     </class-decl>
     <!-- struct cds_lfht_mm_type -->
-    <class-decl name='cds_lfht_mm_type' size-in-bits='256' is-struct='yes' visibility='default' filepath='../include/urcu/rculfhash.h' line='105' column='1' id='type-id-74'>
+    <class-decl name='cds_lfht_mm_type' size-in-bits='256' is-struct='yes' visibility='default' filepath='../include/urcu/rculfhash.h' line='105' column='1' id='type-id-67'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- cds_lfht* (unsigned long int, unsigned long int)* cds_lfht_mm_type::alloc_cds_lfht -->
-        <var-decl name='alloc_cds_lfht' type-id='type-id-75' visibility='default' filepath='../include/urcu/rculfhash.h' line='106' column='1'/>
+        <var-decl name='alloc_cds_lfht' type-id='type-id-68' visibility='default' filepath='../include/urcu/rculfhash.h' line='106' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='64'>
-        <!-- void ()* cds_lfht_mm_type::alloc_bucket_table -->
-        <var-decl name='alloc_bucket_table' type-id='type-id-76' visibility='default' filepath='../include/urcu/rculfhash.h' line='108' column='1'/>
+        <!-- void (cds_lfht*, unsigned long int)* cds_lfht_mm_type::alloc_bucket_table -->
+        <var-decl name='alloc_bucket_table' type-id='type-id-69' visibility='default' filepath='../include/urcu/rculfhash.h' line='108' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='128'>
-        <!-- void ()* cds_lfht_mm_type::free_bucket_table -->
-        <var-decl name='free_bucket_table' type-id='type-id-76' visibility='default' filepath='../include/urcu/rculfhash.h' line='109' column='1'/>
+        <!-- void (cds_lfht*, unsigned long int)* cds_lfht_mm_type::free_bucket_table -->
+        <var-decl name='free_bucket_table' type-id='type-id-69' visibility='default' filepath='../include/urcu/rculfhash.h' line='109' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='192'>
         <!-- cds_lfht_node* (cds_lfht*, unsigned long int)* cds_lfht_mm_type::bucket_at -->
-        <var-decl name='bucket_at' type-id='type-id-72' visibility='default' filepath='../include/urcu/rculfhash.h' line='110' column='1'/>
+        <var-decl name='bucket_at' type-id='type-id-65' visibility='default' filepath='../include/urcu/rculfhash.h' line='110' column='1'/>
       </data-member>
     </class-decl>
+    <!-- cds_lfht* -->
+    <pointer-type-def type-id='type-id-60' size-in-bits='64' id='type-id-70'/>
+    <!-- cds_lfht* (unsigned long int, unsigned long int)* -->
+    <pointer-type-def type-id='type-id-71' size-in-bits='64' id='type-id-68'/>
+    <!-- void (cds_lfht*, unsigned long int)* -->
+    <pointer-type-def type-id='type-id-72' size-in-bits='64' id='type-id-69'/>
     <!-- struct cds_lfht_node -->
-    <class-decl name='cds_lfht_node' size-in-bits='128' is-struct='yes' visibility='default' filepath='../include/urcu/rculfhash.h' line='60' column='1' id='type-id-77'>
+    <class-decl name='cds_lfht_node' size-in-bits='128' is-struct='yes' visibility='default' filepath='../include/urcu/rculfhash.h' line='60' column='1' id='type-id-73'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- cds_lfht_node* cds_lfht_node::next -->
-        <var-decl name='next' type-id='type-id-60' visibility='default' filepath='../include/urcu/rculfhash.h' line='61' column='1'/>
+        <var-decl name='next' type-id='type-id-74' visibility='default' filepath='../include/urcu/rculfhash.h' line='61' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='64'>
         <!-- unsigned long int cds_lfht_node::reverse_hash -->
-        <var-decl name='reverse_hash' type-id='type-id-22' visibility='default' filepath='../include/urcu/rculfhash.h' line='62' column='1'/>
+        <var-decl name='reverse_hash' type-id='type-id-39' visibility='default' filepath='../include/urcu/rculfhash.h' line='62' column='1'/>
       </data-member>
     </class-decl>
+    <!-- cds_lfht_node* -->
+    <pointer-type-def type-id='type-id-73' size-in-bits='64' id='type-id-74'/>
+    <!-- cds_lfht_node* (cds_lfht*, unsigned long int)* -->
+    <pointer-type-def type-id='type-id-75' size-in-bits='64' id='type-id-65'/>
+    <!-- const cds_lfht_mm_type -->
+    <qualified-type-def type-id='type-id-67' const='yes' id='type-id-76'/>
+    <!-- const cds_lfht_mm_type* -->
+    <pointer-type-def type-id='type-id-76' size-in-bits='64' id='type-id-61'/>
     <!-- struct rcu_flavor_struct -->
-    <class-decl name='rcu_flavor_struct' size-in-bits='896' is-struct='yes' visibility='default' filepath='../src/urcu-flavor.h' line='40' column='1' id='type-id-78'>
+    <class-decl name='rcu_flavor_struct' size-in-bits='896' is-struct='yes' visibility='default' filepath='../src/urcu-flavor.h' line='40' column='1' id='type-id-77'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- void ()* rcu_flavor_struct::read_lock -->
-        <var-decl name='read_lock' type-id='type-id-79' visibility='default' filepath='../src/urcu-flavor.h' line='41' column='1'/>
+        <var-decl name='read_lock' type-id='type-id-78' visibility='default' filepath='../src/urcu-flavor.h' line='41' 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-79' visibility='default' filepath='../src/urcu-flavor.h' line='42' column='1'/>
+        <var-decl name='read_unlock' type-id='type-id-78' visibility='default' filepath='../src/urcu-flavor.h' line='42' 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-80' visibility='default' filepath='../src/urcu-flavor.h' line='43' column='1'/>
+        <var-decl name='read_ongoing' type-id='type-id-79' visibility='default' filepath='../src/urcu-flavor.h' line='43' 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-79' visibility='default' filepath='../src/urcu-flavor.h' line='44' column='1'/>
+        <var-decl name='read_quiescent_state' type-id='type-id-78' visibility='default' filepath='../src/urcu-flavor.h' line='44' 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-6' visibility='default' filepath='../src/urcu-flavor.h' line='45' column='1'/>
+        <var-decl name='update_call_rcu' type-id='type-id-5' visibility='default' filepath='../src/urcu-flavor.h' line='45' 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-79' visibility='default' filepath='../src/urcu-flavor.h' line='47' column='1'/>
+        <var-decl name='update_synchronize_rcu' type-id='type-id-78' visibility='default' filepath='../src/urcu-flavor.h' line='47' 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-81' visibility='default' filepath='../src/urcu-flavor.h' line='48' column='1'/>
+        <var-decl name='update_defer_rcu' type-id='type-id-80' visibility='default' filepath='../src/urcu-flavor.h' line='48' 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-79' visibility='default' filepath='../src/urcu-flavor.h' line='50' column='1'/>
+        <var-decl name='thread_offline' type-id='type-id-78' visibility='default' filepath='../src/urcu-flavor.h' line='50' 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-79' visibility='default' filepath='../src/urcu-flavor.h' line='51' column='1'/>
+        <var-decl name='thread_online' type-id='type-id-78' visibility='default' filepath='../src/urcu-flavor.h' line='51' 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-79' visibility='default' filepath='../src/urcu-flavor.h' line='52' column='1'/>
+        <var-decl name='register_thread' type-id='type-id-78' visibility='default' filepath='../src/urcu-flavor.h' line='52' 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-79' visibility='default' filepath='../src/urcu-flavor.h' line='53' column='1'/>
+        <var-decl name='unregister_thread' type-id='type-id-78' visibility='default' filepath='../src/urcu-flavor.h' line='53' 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-79' visibility='default' filepath='../src/urcu-flavor.h' line='55' column='1'/>
+        <var-decl name='barrier' type-id='type-id-78' visibility='default' filepath='../src/urcu-flavor.h' line='55' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='768'>
         <!-- void (urcu_atfork*)* rcu_flavor_struct::register_rculfhash_atfork -->
-        <var-decl name='register_rculfhash_atfork' type-id='type-id-82' visibility='default' filepath='../src/urcu-flavor.h' line='57' column='1'/>
+        <var-decl name='register_rculfhash_atfork' type-id='type-id-81' visibility='default' filepath='../src/urcu-flavor.h' line='57' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='832'>
         <!-- void (urcu_atfork*)* rcu_flavor_struct::unregister_rculfhash_atfork -->
-        <var-decl name='unregister_rculfhash_atfork' type-id='type-id-82' visibility='default' filepath='../src/urcu-flavor.h' line='58' column='1'/>
+        <var-decl name='unregister_rculfhash_atfork' type-id='type-id-81' visibility='default' filepath='../src/urcu-flavor.h' line='58' column='1'/>
       </data-member>
     </class-decl>
+    <!-- void ()* -->
+    <pointer-type-def type-id='type-id-82' size-in-bits='64' id='type-id-78'/>
+    <!-- int ()* -->
+    <pointer-type-def type-id='type-id-83' size-in-bits='64' id='type-id-79'/>
+    <!-- void (void*)* -->
+    <pointer-type-def type-id='type-id-84' size-in-bits='64' id='type-id-85'/>
+    <!-- void (void (void*)*, void*)* -->
+    <pointer-type-def type-id='type-id-86' size-in-bits='64' id='type-id-80'/>
     <!-- struct urcu_atfork -->
-    <class-decl name='urcu_atfork' size-in-bits='256' is-struct='yes' visibility='default' filepath='../src/urcu-flavor.h' line='30' column='1' id='type-id-83'>
+    <class-decl name='urcu_atfork' size-in-bits='256' is-struct='yes' visibility='default' filepath='../src/urcu-flavor.h' line='30' column='1' id='type-id-87'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- void (void*)* urcu_atfork::before_fork -->
-        <var-decl name='before_fork' type-id='type-id-84' visibility='default' filepath='../src/urcu-flavor.h' line='31' column='1'/>
+        <var-decl name='before_fork' type-id='type-id-85' visibility='default' filepath='../src/urcu-flavor.h' line='31' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='64'>
         <!-- void (void*)* urcu_atfork::after_fork_parent -->
-        <var-decl name='after_fork_parent' type-id='type-id-84' visibility='default' filepath='../src/urcu-flavor.h' line='32' column='1'/>
+        <var-decl name='after_fork_parent' type-id='type-id-85' visibility='default' filepath='../src/urcu-flavor.h' line='32' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='128'>
         <!-- void (void*)* urcu_atfork::after_fork_child -->
-        <var-decl name='after_fork_child' type-id='type-id-84' visibility='default' filepath='../src/urcu-flavor.h' line='33' column='1'/>
+        <var-decl name='after_fork_child' type-id='type-id-85' visibility='default' filepath='../src/urcu-flavor.h' line='33' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='192'>
         <!-- void* urcu_atfork::priv -->
         <var-decl name='priv' type-id='type-id-48' visibility='default' filepath='../src/urcu-flavor.h' line='34' column='1'/>
       </data-member>
     </class-decl>
-    <!-- typedef pthread_attr_t pthread_attr_t -->
-    <typedef-decl name='pthread_attr_t' type-id='type-id-85' filepath='/usr/include/bits/pthreadtypes.h' line='62' column='1' id='type-id-86'/>
+    <!-- urcu_atfork* -->
+    <pointer-type-def type-id='type-id-87' size-in-bits='64' id='type-id-88'/>
+    <!-- void (urcu_atfork*)* -->
+    <pointer-type-def type-id='type-id-89' size-in-bits='64' id='type-id-81'/>
+    <!-- const rcu_flavor_struct -->
+    <qualified-type-def type-id='type-id-77' const='yes' id='type-id-90'/>
+    <!-- const rcu_flavor_struct* -->
+    <pointer-type-def type-id='type-id-90' size-in-bits='64' id='type-id-62'/>
     <!-- union pthread_attr_t -->
-    <union-decl name='pthread_attr_t' size-in-bits='448' visibility='default' filepath='/usr/include/bits/pthreadtypes.h' line='56' column='1' id='type-id-85'>
+    <union-decl name='pthread_attr_t' size-in-bits='448' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h' line='56' column='1' id='type-id-91'>
       <data-member access='private'>
         <!-- char pthread_attr_t::__size[56] -->
-        <var-decl name='__size' type-id='type-id-65' visibility='default' filepath='/usr/include/bits/pthreadtypes.h' line='58' column='1'/>
+        <var-decl name='__size' type-id='type-id-92' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h' line='58' column='1'/>
       </data-member>
       <data-member access='private'>
         <!-- long int pthread_attr_t::__align -->
-        <var-decl name='__align' type-id='type-id-24' visibility='default' filepath='/usr/include/bits/pthreadtypes.h' line='59' column='1'/>
+        <var-decl name='__align' type-id='type-id-32' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h' line='59' column='1'/>
       </data-member>
     </union-decl>
+
+    <!-- char[56] -->
+    <array-type-def dimensions='1' type-id='type-id-38' size-in-bits='448' id='type-id-92'>
+      <!-- <anonymous range>[56] -->
+      <subrange length='56' type-id='type-id-39' id='type-id-93'/>
+
+    </array-type-def>
+    <!-- typedef pthread_attr_t pthread_attr_t -->
+    <typedef-decl name='pthread_attr_t' type-id='type-id-91' filepath='/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h' line='62' column='1' id='type-id-94'/>
+    <!-- pthread_attr_t* -->
+    <pointer-type-def type-id='type-id-94' size-in-bits='64' id='type-id-63'/>
     <!-- struct ht_items_count -->
-    <class-decl name='ht_items_count' size-in-bits='1024' is-struct='yes' visibility='default' filepath='src/rculfhash.c' line='337' column='1' id='type-id-87'>
+    <class-decl name='ht_items_count' size-in-bits='1024' is-struct='yes' visibility='default' filepath='src/rculfhash.c' line='337' column='1' id='type-id-95'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- unsigned long int ht_items_count::add -->
-        <var-decl name='add' type-id='type-id-22' visibility='default' filepath='src/rculfhash.c' line='338' column='1'/>
+        <var-decl name='add' type-id='type-id-39' visibility='default' filepath='src/rculfhash.c' line='338' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='64'>
         <!-- unsigned long int ht_items_count::del -->
-        <var-decl name='del' type-id='type-id-22' visibility='default' filepath='src/rculfhash.c' line='338' column='1'/>
+        <var-decl name='del' type-id='type-id-39' visibility='default' filepath='src/rculfhash.c' line='338' column='1'/>
       </data-member>
     </class-decl>
-    <!-- union {cds_lfht_node* tbl_order[64]; cds_lfht_node* tbl_chunk[]; cds_lfht_node* tbl_mmap;} -->
-    <union-decl name='__anonymous_union__' size-in-bits='4096' is-anonymous='yes' visibility='default' filepath='../src/rculfhash-internal.h' line='111' column='1' id='type-id-73'>
+    <!-- ht_items_count* -->
+    <pointer-type-def type-id='type-id-95' size-in-bits='64' id='type-id-64'/>
+    <!-- union __anonymous_union__ -->
+    <union-decl name='__anonymous_union__' size-in-bits='4096' is-anonymous='yes' visibility='default' filepath='../src/rculfhash-internal.h' line='111' column='1' id='type-id-66'>
       <data-member access='private'>
-        <!-- cds_lfht_node* tbl_order[64] -->
-        <var-decl name='tbl_order' type-id='type-id-61' visibility='default' filepath='../src/rculfhash-internal.h' line='120' column='1'/>
+        <!-- cds_lfht_node* __anonymous_union__::tbl_order[64] -->
+        <var-decl name='tbl_order' type-id='type-id-96' visibility='default' filepath='../src/rculfhash-internal.h' line='120' column='1'/>
       </data-member>
       <data-member access='private'>
-        <!-- cds_lfht_node* tbl_chunk[] -->
-        <var-decl name='tbl_chunk' type-id='type-id-63' visibility='default' filepath='../src/rculfhash-internal.h' line='132' column='1'/>
+        <!-- cds_lfht_node* __anonymous_union__::tbl_chunk[1] -->
+        <var-decl name='tbl_chunk' type-id='type-id-97' visibility='default' filepath='../src/rculfhash-internal.h' line='132' column='1'/>
       </data-member>
       <data-member access='private'>
-        <!-- cds_lfht_node* tbl_mmap -->
-        <var-decl name='tbl_mmap' type-id='type-id-60' visibility='default' filepath='../src/rculfhash-internal.h' line='138' column='1'/>
+        <!-- cds_lfht_node* __anonymous_union__::tbl_mmap -->
+        <var-decl name='tbl_mmap' type-id='type-id-74' visibility='default' filepath='../src/rculfhash-internal.h' line='138' column='1'/>
       </data-member>
     </union-decl>
-    <!-- struct cds_lfht_iter -->
-    <class-decl name='cds_lfht_iter' size-in-bits='128' is-struct='yes' visibility='default' filepath='../include/urcu/rculfhash.h' line='66' column='1' id='type-id-88'>
-      <data-member access='public' layout-offset-in-bits='0'>
-        <!-- cds_lfht_node* cds_lfht_iter::node -->
-        <var-decl name='node' type-id='type-id-60' visibility='default' filepath='../include/urcu/rculfhash.h' line='67' column='1'/>
-      </data-member>
-      <data-member access='public' layout-offset-in-bits='64'>
-        <!-- cds_lfht_node* cds_lfht_iter::next -->
-        <var-decl name='next' type-id='type-id-60' visibility='default' filepath='../include/urcu/rculfhash.h' line='67' column='1'/>
-      </data-member>
-    </class-decl>
-    <!-- typedef int (cds_lfht_node*, void*)* cds_lfht_match_fct -->
-    <typedef-decl name='cds_lfht_match_fct' type-id='type-id-89' filepath='../include/urcu/rculfhash.h' line='83' column='1' id='type-id-90'/>
-    <!-- typedef __uint32_t uint32_t -->
-    <typedef-decl name='uint32_t' type-id='type-id-91' filepath='/usr/include/bits/stdint-uintn.h' line='26' column='1' id='type-id-92'/>
-    <!-- typedef unsigned int __uint32_t -->
-    <typedef-decl name='__uint32_t' type-id='type-id-26' filepath='/usr/include/bits/types.h' line='42' column='1' id='type-id-91'/>
-    <!-- cds_lfht* -->
-    <pointer-type-def type-id='type-id-67' size-in-bits='64' id='type-id-93'/>
-    <!-- cds_lfht* (unsigned long int, unsigned long int)* -->
-    <pointer-type-def type-id='type-id-94' size-in-bits='64' id='type-id-75'/>
-    <!-- cds_lfht_iter* -->
-    <pointer-type-def type-id='type-id-88' size-in-bits='64' id='type-id-95'/>
-    <!-- cds_lfht_node* -->
-    <pointer-type-def type-id='type-id-77' size-in-bits='64' id='type-id-60'/>
-    <!-- cds_lfht_node* (cds_lfht*, unsigned long int)* -->
-    <pointer-type-def type-id='type-id-96' size-in-bits='64' id='type-id-72'/>
-    <!-- const cds_lfht_mm_type -->
-    <qualified-type-def type-id='type-id-74' const='yes' id='type-id-97'/>
-    <!-- const cds_lfht_mm_type* -->
-    <pointer-type-def type-id='type-id-97' size-in-bits='64' id='type-id-68'/>
-    <!-- const rcu_flavor_struct -->
-    <qualified-type-def type-id='type-id-78' const='yes' id='type-id-98'/>
-    <!-- const rcu_flavor_struct* -->
-    <pointer-type-def type-id='type-id-98' size-in-bits='64' id='type-id-69'/>
-    <!-- ht_items_count* -->
-    <pointer-type-def type-id='type-id-87' size-in-bits='64' id='type-id-71'/>
-    <!-- int ()* -->
-    <pointer-type-def type-id='type-id-99' size-in-bits='64' id='type-id-80'/>
-    <!-- int (cds_lfht_node*, void*)* -->
-    <pointer-type-def type-id='type-id-100' size-in-bits='64' id='type-id-89'/>
-    <!-- long int* -->
-    <pointer-type-def type-id='type-id-24' size-in-bits='64' id='type-id-101'/>
-    <!-- pthread_attr_t* -->
-    <pointer-type-def type-id='type-id-86' size-in-bits='64' id='type-id-70'/>
-    <!-- pthread_attr_t** -->
-    <pointer-type-def type-id='type-id-70' size-in-bits='64' id='type-id-102'/>
-    <!-- unsigned long int* -->
-    <pointer-type-def type-id='type-id-22' size-in-bits='64' id='type-id-103'/>
-    <!-- urcu_atfork* -->
-    <pointer-type-def type-id='type-id-83' size-in-bits='64' id='type-id-104'/>
-    <!-- void ()* -->
-    <pointer-type-def type-id='type-id-105' size-in-bits='64' id='type-id-79'/>
-    <!-- void ()* -->
-    <pointer-type-def type-id='type-id-106' size-in-bits='64' id='type-id-76'/>
-    <!-- void (urcu_atfork*)* -->
-    <pointer-type-def type-id='type-id-107' size-in-bits='64' id='type-id-82'/>
-    <!-- void (void (void*)*, void*)* -->
-    <pointer-type-def type-id='type-id-108' size-in-bits='64' id='type-id-81'/>
-    <!-- void (void*)* -->
-    <pointer-type-def type-id='type-id-109' size-in-bits='64' id='type-id-84'/>
+
+    <!-- cds_lfht_node*[64] -->
+    <array-type-def dimensions='1' type-id='type-id-74' size-in-bits='4096' id='type-id-96'>
+      <!-- <anonymous range>[64] -->
+      <subrange length='64' type-id='type-id-39' id='type-id-98'/>
+
+    </array-type-def>
+
+    <!-- cds_lfht_node*[1] -->
+    <array-type-def dimensions='1' type-id='type-id-74' size-in-bits='64' id='type-id-97'>
+      <!-- <anonymous range>[1] -->
+      <subrange length='1' type-id='type-id-39' id='type-id-99'/>
+
+    </array-type-def>
     <!-- void cds_lfht_resize(cds_lfht*, unsigned long int) -->
     <function-decl name='cds_lfht_resize' mangled-name='cds_lfht_resize' filepath='src/rculfhash.c' line='1978' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_lfht_resize'>
       <!-- parameter of type 'cds_lfht*' -->
-      <parameter type-id='type-id-93' name='ht' filepath='src/rculfhash.c' line='1978' column='1'/>
+      <parameter type-id='type-id-70' name='ht' filepath='src/rculfhash.c' line='1978' column='1'/>
       <!-- parameter of type 'unsigned long int' -->
-      <parameter type-id='type-id-22' name='new_size' filepath='src/rculfhash.c' line='1978' column='1'/>
+      <parameter type-id='type-id-39' name='new_size' filepath='src/rculfhash.c' line='1978' column='1'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-decl>
+    <!-- long int* -->
+    <pointer-type-def type-id='type-id-32' size-in-bits='64' id='type-id-100'/>
+    <!-- unsigned long int* -->
+    <pointer-type-def type-id='type-id-39' size-in-bits='64' id='type-id-101'/>
     <!-- void cds_lfht_count_nodes(cds_lfht*, long int*, unsigned long int*, long int*) -->
     <function-decl name='cds_lfht_count_nodes' mangled-name='cds_lfht_count_nodes' filepath='src/rculfhash.c' line='1856' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_lfht_count_nodes'>
       <!-- parameter of type 'cds_lfht*' -->
-      <parameter type-id='type-id-93' name='ht' filepath='src/rculfhash.c' line='1856' column='1'/>
+      <parameter type-id='type-id-70' name='ht' filepath='src/rculfhash.c' line='1856' column='1'/>
       <!-- parameter of type 'long int*' -->
-      <parameter type-id='type-id-101' name='approx_before' filepath='src/rculfhash.c' line='1857' column='1'/>
+      <parameter type-id='type-id-100' name='approx_before' filepath='src/rculfhash.c' line='1857' column='1'/>
       <!-- parameter of type 'unsigned long int*' -->
-      <parameter type-id='type-id-103' name='count' filepath='src/rculfhash.c' line='1858' column='1'/>
+      <parameter type-id='type-id-101' name='count' filepath='src/rculfhash.c' line='1858' column='1'/>
       <!-- parameter of type 'long int*' -->
-      <parameter type-id='type-id-101' name='approx_after' filepath='src/rculfhash.c' line='1859' column='1'/>
+      <parameter type-id='type-id-100' name='approx_after' filepath='src/rculfhash.c' line='1859' column='1'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-decl>
+    <!-- pthread_attr_t** -->
+    <pointer-type-def type-id='type-id-63' size-in-bits='64' id='type-id-102'/>
     <!-- int cds_lfht_destroy(cds_lfht*, pthread_attr_t**) -->
     <function-decl name='cds_lfht_destroy' mangled-name='cds_lfht_destroy' filepath='src/rculfhash.c' line='1831' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_lfht_destroy'>
       <!-- parameter of type 'cds_lfht*' -->
-      <parameter type-id='type-id-93' name='ht' filepath='src/rculfhash.c' line='1831' column='1'/>
+      <parameter type-id='type-id-70' name='ht' filepath='src/rculfhash.c' line='1831' column='1'/>
       <!-- parameter of type 'pthread_attr_t**' -->
       <parameter type-id='type-id-102' name='attr' filepath='src/rculfhash.c' line='1831' column='1'/>
       <!-- int -->
-      <return type-id='type-id-1'/>
+      <return type-id='type-id-3'/>
     </function-decl>
     <!-- int cds_lfht_is_node_deleted(cds_lfht_node*) -->
     <function-decl name='cds_lfht_is_node_deleted' mangled-name='cds_lfht_is_node_deleted' filepath='src/rculfhash.c' line='1788' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_lfht_is_node_deleted'>
       <!-- parameter of type 'cds_lfht_node*' -->
-      <parameter type-id='type-id-60' name='node' filepath='src/rculfhash.c' line='1788' column='1'/>
+      <parameter type-id='type-id-74' name='node' filepath='src/rculfhash.c' line='1788' column='1'/>
       <!-- int -->
-      <return type-id='type-id-1'/>
+      <return type-id='type-id-3'/>
     </function-decl>
     <!-- int cds_lfht_del(cds_lfht*, cds_lfht_node*) -->
     <function-decl name='cds_lfht_del' mangled-name='cds_lfht_del' filepath='src/rculfhash.c' line='1772' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_lfht_del'>
       <!-- parameter of type 'cds_lfht*' -->
-      <parameter type-id='type-id-93' name='ht' filepath='src/rculfhash.c' line='1772' column='1'/>
+      <parameter type-id='type-id-70' name='ht' filepath='src/rculfhash.c' line='1772' column='1'/>
       <!-- parameter of type 'cds_lfht_node*' -->
-      <parameter type-id='type-id-60' name='node' filepath='src/rculfhash.c' line='1772' column='1'/>
+      <parameter type-id='type-id-74' name='node' filepath='src/rculfhash.c' line='1772' column='1'/>
       <!-- int -->
-      <return type-id='type-id-1'/>
+      <return type-id='type-id-3'/>
     </function-decl>
+    <!-- struct cds_lfht_iter -->
+    <class-decl name='cds_lfht_iter' size-in-bits='128' is-struct='yes' visibility='default' filepath='../include/urcu/rculfhash.h' line='66' column='1' id='type-id-103'>
+      <data-member access='public' layout-offset-in-bits='0'>
+        <!-- cds_lfht_node* cds_lfht_iter::node -->
+        <var-decl name='node' type-id='type-id-74' visibility='default' filepath='../include/urcu/rculfhash.h' line='67' column='1'/>
+      </data-member>
+      <data-member access='public' layout-offset-in-bits='64'>
+        <!-- cds_lfht_node* cds_lfht_iter::next -->
+        <var-decl name='next' type-id='type-id-74' visibility='default' filepath='../include/urcu/rculfhash.h' line='67' column='1'/>
+      </data-member>
+    </class-decl>
+    <!-- cds_lfht_iter* -->
+    <pointer-type-def type-id='type-id-103' size-in-bits='64' id='type-id-104'/>
+    <!-- int (cds_lfht_node*, void*)* -->
+    <pointer-type-def type-id='type-id-105' size-in-bits='64' id='type-id-106'/>
+    <!-- typedef int (cds_lfht_node*, void*)* cds_lfht_match_fct -->
+    <typedef-decl name='cds_lfht_match_fct' type-id='type-id-106' filepath='../include/urcu/rculfhash.h' line='83' column='1' id='type-id-107'/>
     <!-- int cds_lfht_replace(cds_lfht*, cds_lfht_iter*, unsigned long int, cds_lfht_match_fct, void*, cds_lfht_node*) -->
     <function-decl name='cds_lfht_replace' mangled-name='cds_lfht_replace' filepath='src/rculfhash.c' line='1751' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_lfht_replace'>
       <!-- parameter of type 'cds_lfht*' -->
-      <parameter type-id='type-id-93' name='ht' filepath='src/rculfhash.c' line='1751' column='1'/>
+      <parameter type-id='type-id-70' name='ht' filepath='src/rculfhash.c' line='1751' column='1'/>
       <!-- parameter of type 'cds_lfht_iter*' -->
-      <parameter type-id='type-id-95' name='old_iter' filepath='src/rculfhash.c' line='1752' column='1'/>
+      <parameter type-id='type-id-104' name='old_iter' filepath='src/rculfhash.c' line='1752' column='1'/>
       <!-- parameter of type 'unsigned long int' -->
-      <parameter type-id='type-id-22' name='hash' filepath='src/rculfhash.c' line='1753' column='1'/>
+      <parameter type-id='type-id-39' name='hash' filepath='src/rculfhash.c' line='1753' column='1'/>
       <!-- parameter of type 'typedef cds_lfht_match_fct' -->
-      <parameter type-id='type-id-90' name='match' filepath='src/rculfhash.c' line='1754' column='1'/>
+      <parameter type-id='type-id-107' name='match' filepath='src/rculfhash.c' line='1754' column='1'/>
       <!-- parameter of type 'void*' -->
       <parameter type-id='type-id-48' name='key' filepath='src/rculfhash.c' line='1755' column='1'/>
       <!-- parameter of type 'cds_lfht_node*' -->
-      <parameter type-id='type-id-60' name='new_node' filepath='src/rculfhash.c' line='1756' column='1'/>
+      <parameter type-id='type-id-74' name='new_node' filepath='src/rculfhash.c' line='1756' column='1'/>
       <!-- int -->
-      <return type-id='type-id-1'/>
+      <return type-id='type-id-3'/>
     </function-decl>
     <!-- cds_lfht_node* cds_lfht_add_replace(cds_lfht*, unsigned long int, cds_lfht_match_fct, void*, cds_lfht_node*) -->
     <function-decl name='cds_lfht_add_replace' mangled-name='cds_lfht_add_replace' filepath='src/rculfhash.c' line='1728' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_lfht_add_replace'>
       <!-- parameter of type 'cds_lfht*' -->
-      <parameter type-id='type-id-93' name='ht' filepath='src/rculfhash.c' line='1728' column='1'/>
+      <parameter type-id='type-id-70' name='ht' filepath='src/rculfhash.c' line='1728' column='1'/>
       <!-- parameter of type 'unsigned long int' -->
-      <parameter type-id='type-id-22' name='hash' filepath='src/rculfhash.c' line='1729' column='1'/>
+      <parameter type-id='type-id-39' name='hash' filepath='src/rculfhash.c' line='1729' column='1'/>
       <!-- parameter of type 'typedef cds_lfht_match_fct' -->
-      <parameter type-id='type-id-90' name='match' filepath='src/rculfhash.c' line='1730' column='1'/>
+      <parameter type-id='type-id-107' name='match' filepath='src/rculfhash.c' line='1730' column='1'/>
       <!-- parameter of type 'void*' -->
       <parameter type-id='type-id-48' name='key' filepath='src/rculfhash.c' line='1731' column='1'/>
       <!-- parameter of type 'cds_lfht_node*' -->
-      <parameter type-id='type-id-60' name='node' filepath='src/rculfhash.c' line='1732' column='1'/>
+      <parameter type-id='type-id-74' name='node' filepath='src/rculfhash.c' line='1732' column='1'/>
       <!-- cds_lfht_node* -->
-      <return type-id='type-id-60'/>
+      <return type-id='type-id-74'/>
     </function-decl>
     <!-- cds_lfht_node* cds_lfht_add_unique(cds_lfht*, unsigned long int, cds_lfht_match_fct, void*, cds_lfht_node*) -->
     <function-decl name='cds_lfht_add_unique' mangled-name='cds_lfht_add_unique' filepath='src/rculfhash.c' line='1711' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_lfht_add_unique'>
       <!-- parameter of type 'cds_lfht*' -->
-      <parameter type-id='type-id-93' name='ht' filepath='src/rculfhash.c' line='1711' column='1'/>
+      <parameter type-id='type-id-70' name='ht' filepath='src/rculfhash.c' line='1728' column='1'/>
       <!-- parameter of type 'unsigned long int' -->
-      <parameter type-id='type-id-22' name='hash' filepath='src/rculfhash.c' line='1712' column='1'/>
+      <parameter type-id='type-id-39' name='hash' filepath='src/rculfhash.c' line='1729' column='1'/>
       <!-- parameter of type 'typedef cds_lfht_match_fct' -->
-      <parameter type-id='type-id-90' name='match' filepath='src/rculfhash.c' line='1713' column='1'/>
+      <parameter type-id='type-id-107' name='match' filepath='src/rculfhash.c' line='1730' column='1'/>
       <!-- parameter of type 'void*' -->
-      <parameter type-id='type-id-48' name='key' filepath='src/rculfhash.c' line='1714' column='1'/>
+      <parameter type-id='type-id-48' name='key' filepath='src/rculfhash.c' line='1731' column='1'/>
       <!-- parameter of type 'cds_lfht_node*' -->
-      <parameter type-id='type-id-60' name='node' filepath='src/rculfhash.c' line='1715' column='1'/>
+      <parameter type-id='type-id-74' name='node' filepath='src/rculfhash.c' line='1732' column='1'/>
       <!-- cds_lfht_node* -->
-      <return type-id='type-id-60'/>
+      <return type-id='type-id-74'/>
     </function-decl>
     <!-- void cds_lfht_add(cds_lfht*, unsigned long int, cds_lfht_node*) -->
     <function-decl name='cds_lfht_add' mangled-name='cds_lfht_add' filepath='src/rculfhash.c' line='1700' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_lfht_add'>
       <!-- parameter of type 'cds_lfht*' -->
-      <parameter type-id='type-id-93' name='ht' filepath='src/rculfhash.c' line='1700' column='1'/>
+      <parameter type-id='type-id-70' name='ht' filepath='src/rculfhash.c' line='1700' column='1'/>
       <!-- parameter of type 'unsigned long int' -->
-      <parameter type-id='type-id-22' name='hash' filepath='src/rculfhash.c' line='1700' column='1'/>
+      <parameter type-id='type-id-39' name='hash' filepath='src/rculfhash.c' line='1700' column='1'/>
       <!-- parameter of type 'cds_lfht_node*' -->
-      <parameter type-id='type-id-60' name='node' filepath='src/rculfhash.c' line='1701' column='1'/>
+      <parameter type-id='type-id-74' name='node' filepath='src/rculfhash.c' line='1701' column='1'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-decl>
     <!-- void cds_lfht_first(cds_lfht*, cds_lfht_iter*) -->
     <function-decl name='cds_lfht_first' mangled-name='cds_lfht_first' filepath='src/rculfhash.c' line='1690' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_lfht_first'>
       <!-- parameter of type 'cds_lfht*' -->
-      <parameter type-id='type-id-93' name='ht' filepath='src/rculfhash.c' line='1690' column='1'/>
+      <parameter type-id='type-id-70' name='ht' filepath='src/rculfhash.c' line='1690' column='1'/>
       <!-- parameter of type 'cds_lfht_iter*' -->
-      <parameter type-id='type-id-95' name='iter' filepath='src/rculfhash.c' line='1690' column='1'/>
+      <parameter type-id='type-id-104' name='iter' filepath='src/rculfhash.c' line='1690' column='1'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-decl>
     <!-- void cds_lfht_next(cds_lfht*, cds_lfht_iter*) -->
     <function-decl name='cds_lfht_next' mangled-name='cds_lfht_next' filepath='src/rculfhash.c' line='1668' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_lfht_next'>
       <!-- parameter of type 'cds_lfht*' -->
-      <parameter type-id='type-id-93' name='ht' filepath='src/rculfhash.c' line='1668' column='1'/>
+      <parameter type-id='type-id-70' name='ht' filepath='src/rculfhash.c' line='1668' column='1'/>
       <!-- parameter of type 'cds_lfht_iter*' -->
-      <parameter type-id='type-id-95' name='iter' filepath='src/rculfhash.c' line='1668' column='1'/>
+      <parameter type-id='type-id-104' name='iter' filepath='src/rculfhash.c' line='1668' column='1'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-decl>
     <!-- void cds_lfht_next_duplicate(cds_lfht*, cds_lfht_match_fct, void*, cds_lfht_iter*) -->
     <function-decl name='cds_lfht_next_duplicate' mangled-name='cds_lfht_next_duplicate' filepath='src/rculfhash.c' line='1635' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_lfht_next_duplicate'>
       <!-- parameter of type 'cds_lfht*' -->
-      <parameter type-id='type-id-93' name='ht' filepath='src/rculfhash.c' line='1635' column='1'/>
+      <parameter type-id='type-id-70' name='ht' filepath='src/rculfhash.c' line='1635' column='1'/>
       <!-- parameter of type 'typedef cds_lfht_match_fct' -->
-      <parameter type-id='type-id-90' name='match' filepath='src/rculfhash.c' line='1635' column='1'/>
+      <parameter type-id='type-id-107' name='match' filepath='src/rculfhash.c' line='1635' column='1'/>
       <!-- parameter of type 'void*' -->
       <parameter type-id='type-id-48' name='key' filepath='src/rculfhash.c' line='1636' column='1'/>
       <!-- parameter of type 'cds_lfht_iter*' -->
-      <parameter type-id='type-id-95' name='iter' filepath='src/rculfhash.c' line='1636' column='1'/>
+      <parameter type-id='type-id-104' name='iter' filepath='src/rculfhash.c' line='1636' column='1'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-decl>
     <!-- void cds_lfht_lookup(cds_lfht*, unsigned long int, cds_lfht_match_fct, void*, cds_lfht_iter*) -->
     <function-decl name='cds_lfht_lookup' mangled-name='cds_lfht_lookup' filepath='src/rculfhash.c' line='1597' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_lfht_lookup'>
       <!-- parameter of type 'cds_lfht*' -->
-      <parameter type-id='type-id-93' name='ht' filepath='src/rculfhash.c' line='1597' column='1'/>
+      <parameter type-id='type-id-70' name='ht' filepath='src/rculfhash.c' line='1597' column='1'/>
       <!-- parameter of type 'unsigned long int' -->
-      <parameter type-id='type-id-22' name='hash' filepath='src/rculfhash.c' line='1597' column='1'/>
+      <parameter type-id='type-id-39' name='hash' filepath='src/rculfhash.c' line='1597' column='1'/>
       <!-- parameter of type 'typedef cds_lfht_match_fct' -->
-      <parameter type-id='type-id-90' name='match' filepath='src/rculfhash.c' line='1598' column='1'/>
+      <parameter type-id='type-id-107' name='match' filepath='src/rculfhash.c' line='1598' column='1'/>
       <!-- parameter of type 'void*' -->
       <parameter type-id='type-id-48' name='key' filepath='src/rculfhash.c' line='1598' column='1'/>
       <!-- parameter of type 'cds_lfht_iter*' -->
-      <parameter type-id='type-id-95' name='iter' filepath='src/rculfhash.c' line='1599' column='1'/>
+      <parameter type-id='type-id-104' name='iter' filepath='src/rculfhash.c' line='1599' column='1'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-decl>
     <!-- cds_lfht* _cds_lfht_new(unsigned long int, unsigned long int, unsigned long int, int, const cds_lfht_mm_type*, const rcu_flavor_struct*, pthread_attr_t*) -->
     <function-decl name='_cds_lfht_new' mangled-name='_cds_lfht_new' filepath='src/rculfhash.c' line='1520' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='_cds_lfht_new'>
       <!-- parameter of type 'unsigned long int' -->
-      <parameter type-id='type-id-22' name='init_size' filepath='src/rculfhash.c' line='1520' column='1'/>
+      <parameter type-id='type-id-39' name='init_size' filepath='src/rculfhash.c' line='1520' column='1'/>
       <!-- parameter of type 'unsigned long int' -->
-      <parameter type-id='type-id-22' name='min_nr_alloc_buckets' filepath='src/rculfhash.c' line='1521' column='1'/>
+      <parameter type-id='type-id-39' name='min_nr_alloc_buckets' filepath='src/rculfhash.c' line='1521' column='1'/>
       <!-- parameter of type 'unsigned long int' -->
-      <parameter type-id='type-id-22' name='max_nr_buckets' filepath='src/rculfhash.c' line='1522' column='1'/>
+      <parameter type-id='type-id-39' name='max_nr_buckets' filepath='src/rculfhash.c' line='1522' column='1'/>
       <!-- parameter of type 'int' -->
-      <parameter type-id='type-id-1' name='flags' filepath='src/rculfhash.c' line='1523' column='1'/>
+      <parameter type-id='type-id-3' name='flags' filepath='src/rculfhash.c' line='1523' column='1'/>
       <!-- parameter of type 'const cds_lfht_mm_type*' -->
-      <parameter type-id='type-id-68' name='mm' filepath='src/rculfhash.c' line='1524' column='1'/>
+      <parameter type-id='type-id-61' name='mm' filepath='src/rculfhash.c' line='1524' column='1'/>
       <!-- parameter of type 'const rcu_flavor_struct*' -->
-      <parameter type-id='type-id-69' name='flavor' filepath='src/rculfhash.c' line='1525' column='1'/>
+      <parameter type-id='type-id-62' name='flavor' filepath='src/rculfhash.c' line='1525' column='1'/>
       <!-- parameter of type 'pthread_attr_t*' -->
-      <parameter type-id='type-id-70' name='attr' filepath='src/rculfhash.c' line='1526' column='1'/>
+      <parameter type-id='type-id-63' name='attr' filepath='src/rculfhash.c' line='1526' column='1'/>
       <!-- cds_lfht* -->
-      <return type-id='type-id-93'/>
+      <return type-id='type-id-70'/>
     </function-decl>
     <!-- int cds_lfht_get_count_order_ulong(unsigned long int) -->
     <function-decl name='cds_lfht_get_count_order_ulong' mangled-name='cds_lfht_get_count_order_ulong' filepath='src/rculfhash.c' line='574' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_lfht_get_count_order_ulong'>
       <!-- parameter of type 'unsigned long int' -->
-      <parameter type-id='type-id-22' name='x' filepath='src/rculfhash.c' line='574' column='1'/>
+      <parameter type-id='type-id-39' name='x' filepath='src/rculfhash.c' line='574' column='1'/>
       <!-- int -->
-      <return type-id='type-id-1'/>
+      <return type-id='type-id-3'/>
     </function-decl>
+    <!-- typedef unsigned int __uint32_t -->
+    <typedef-decl name='__uint32_t' type-id='type-id-33' filepath='/usr/include/x86_64-linux-gnu/bits/types.h' line='41' column='1' id='type-id-108'/>
+    <!-- typedef __uint32_t uint32_t -->
+    <typedef-decl name='uint32_t' type-id='type-id-108' filepath='/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h' line='26' column='1' id='type-id-109'/>
     <!-- int cds_lfht_get_count_order_u32(uint32_t) -->
     <function-decl name='cds_lfht_get_count_order_u32' mangled-name='cds_lfht_get_count_order_u32' filepath='src/rculfhash.c' line='562' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_lfht_get_count_order_u32'>
       <!-- parameter of type 'typedef uint32_t' -->
-      <parameter type-id='type-id-92' name='x' filepath='src/rculfhash.c' line='562' column='1'/>
+      <parameter type-id='type-id-109' name='x' filepath='src/rculfhash.c' line='562' column='1'/>
       <!-- int -->
-      <return type-id='type-id-1'/>
+      <return type-id='type-id-3'/>
     </function-decl>
     <!-- unsigned int cds_lfht_fls_ulong(unsigned long int) -->
     <function-decl name='cds_lfht_fls_ulong' mangled-name='cds_lfht_fls_ulong' filepath='src/rculfhash.c' line='549' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_lfht_fls_ulong'>
       <!-- parameter of type 'unsigned long int' -->
-      <parameter type-id='type-id-22' name='x' filepath='src/rculfhash.c' line='549' column='1'/>
+      <parameter type-id='type-id-39' name='x' filepath='src/rculfhash.c' line='549' column='1'/>
       <!-- unsigned int -->
-      <return type-id='type-id-26'/>
+      <return type-id='type-id-33'/>
     </function-decl>
     <!-- cds_lfht* (unsigned long int, unsigned long int) -->
-    <function-type size-in-bits='64' id='type-id-94'>
+    <function-type size-in-bits='64' id='type-id-71'>
       <!-- parameter of type 'unsigned long int' -->
-      <parameter type-id='type-id-22'/>
+      <parameter type-id='type-id-39'/>
       <!-- parameter of type 'unsigned long int' -->
-      <parameter type-id='type-id-22'/>
+      <parameter type-id='type-id-39'/>
       <!-- cds_lfht* -->
-      <return type-id='type-id-93'/>
+      <return type-id='type-id-70'/>
     </function-type>
     <!-- cds_lfht_node* (cds_lfht*, unsigned long int) -->
-    <function-type size-in-bits='64' id='type-id-96'>
+    <function-type size-in-bits='64' id='type-id-75'>
       <!-- parameter of type 'cds_lfht*' -->
-      <parameter type-id='type-id-93'/>
+      <parameter type-id='type-id-70'/>
       <!-- parameter of type 'unsigned long int' -->
-      <parameter type-id='type-id-22'/>
+      <parameter type-id='type-id-39'/>
       <!-- cds_lfht_node* -->
-      <return type-id='type-id-60'/>
+      <return type-id='type-id-74'/>
     </function-type>
     <!-- int () -->
-    <function-type size-in-bits='64' id='type-id-99'>
+    <function-type size-in-bits='64' id='type-id-83'>
       <!-- int -->
-      <return type-id='type-id-1'/>
+      <return type-id='type-id-3'/>
     </function-type>
     <!-- int (cds_lfht_node*, void*) -->
-    <function-type size-in-bits='64' id='type-id-100'>
+    <function-type size-in-bits='64' id='type-id-105'>
       <!-- parameter of type 'cds_lfht_node*' -->
-      <parameter type-id='type-id-60'/>
+      <parameter type-id='type-id-74'/>
       <!-- parameter of type 'void*' -->
       <parameter type-id='type-id-48'/>
       <!-- int -->
-      <return type-id='type-id-1'/>
+      <return type-id='type-id-3'/>
     </function-type>
     <!-- void () -->
-    <function-type size-in-bits='64' id='type-id-105'>
+    <function-type size-in-bits='64' id='type-id-82'>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-type>
     <!-- void (cds_lfht*, unsigned long int) -->
-    <function-type size-in-bits='64' id='type-id-106'>
+    <function-type size-in-bits='64' id='type-id-72'>
       <!-- parameter of type 'cds_lfht*' -->
-      <parameter type-id='type-id-93' name='ht'/>
+      <parameter type-id='type-id-70'/>
       <!-- parameter of type 'unsigned long int' -->
-      <parameter type-id='type-id-22' name='new_size'/>
+      <parameter type-id='type-id-39'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-type>
     <!-- void (urcu_atfork*) -->
-    <function-type size-in-bits='64' id='type-id-107'>
+    <function-type size-in-bits='64' id='type-id-89'>
       <!-- parameter of type 'urcu_atfork*' -->
-      <parameter type-id='type-id-104'/>
+      <parameter type-id='type-id-88'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-type>
     <!-- void (void (void*)*, void*) -->
-    <function-type size-in-bits='64' id='type-id-108'>
+    <function-type size-in-bits='64' id='type-id-86'>
       <!-- parameter of type 'void (void*)*' -->
-      <parameter type-id='type-id-84'/>
+      <parameter type-id='type-id-85'/>
       <!-- parameter of type 'void*' -->
       <parameter type-id='type-id-48'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-type>
     <!-- void (void*) -->
-    <function-type size-in-bits='64' id='type-id-109'>
+    <function-type size-in-bits='64' id='type-id-84'>
       <!-- parameter of type 'void*' -->
       <parameter type-id='type-id-48'/>
       <!-- void -->
-      <return type-id='type-id-2'/>
+      <return type-id='type-id-6'/>
     </function-type>
   </abi-instr>
   <abi-instr version='1.0' address-size='64' path='rculfhash-mm-order.c' comp-dir-path='src' language='LANG_C99'>
     <!-- const cds_lfht_mm_type cds_lfht_mm_order -->
-    <var-decl name='cds_lfht_mm_order' type-id='type-id-97' mangled-name='cds_lfht_mm_order' visibility='default' filepath='../include/urcu/rculfhash.h' line='114' column='1' elf-symbol-id='cds_lfht_mm_order'/>
+    <var-decl name='cds_lfht_mm_order' type-id='type-id-76' mangled-name='cds_lfht_mm_order' visibility='default' filepath='../include/urcu/rculfhash.h' line='114' column='1' elf-symbol-id='cds_lfht_mm_order'/>
   </abi-instr>
   <abi-instr version='1.0' address-size='64' path='rculfhash-mm-chunk.c' comp-dir-path='src' language='LANG_C99'>
     <!-- const cds_lfht_mm_type cds_lfht_mm_chunk -->
-    <var-decl name='cds_lfht_mm_chunk' type-id='type-id-97' mangled-name='cds_lfht_mm_chunk' visibility='default' filepath='../include/urcu/rculfhash.h' line='115' column='1' elf-symbol-id='cds_lfht_mm_chunk'/>
+    <var-decl name='cds_lfht_mm_chunk' type-id='type-id-76' mangled-name='cds_lfht_mm_chunk' visibility='default' filepath='../include/urcu/rculfhash.h' line='115' column='1' elf-symbol-id='cds_lfht_mm_chunk'/>
   </abi-instr>
   <abi-instr version='1.0' address-size='64' path='rculfhash-mm-mmap.c' comp-dir-path='src' language='LANG_C99'>
     <!-- const cds_lfht_mm_type cds_lfht_mm_mmap -->
-    <var-decl name='cds_lfht_mm_mmap' type-id='type-id-97' mangled-name='cds_lfht_mm_mmap' visibility='default' filepath='../include/urcu/rculfhash.h' line='116' column='1' elf-symbol-id='cds_lfht_mm_mmap'/>
+    <var-decl name='cds_lfht_mm_mmap' type-id='type-id-76' mangled-name='cds_lfht_mm_mmap' visibility='default' filepath='../include/urcu/rculfhash.h' line='116' column='1' elf-symbol-id='cds_lfht_mm_mmap'/>
   </abi-instr>
   <abi-instr version='1.0' address-size='64' path='compat_futex.c' comp-dir-path='src' language='LANG_C99'>
-
-
-    <!-- char[48] -->
-    <array-type-def dimensions='1' type-id='type-id-20' size-in-bits='384' id='type-id-110'>
-      <!-- <anonymous range>[48] -->
-      <subrange length='48' type-id='type-id-22' id='type-id-111'/>
-
-    </array-type-def>
-    <!-- long long int -->
-    <type-decl name='long long int' size-in-bits='64' id='type-id-112'/>
-    <!-- long long unsigned int -->
-    <type-decl name='long long unsigned int' size-in-bits='64' id='type-id-113'/>
-    <!-- unsigned int[2] -->
-    <array-type-def dimensions='1' type-id='type-id-26' size-in-bits='64' id='type-id-114'>
-      <!-- <anonymous range>[2] -->
-      <subrange length='2' type-id='type-id-22' id='type-id-115'/>
-
-    </array-type-def>
-    <!-- typedef __anonymous_union__ pthread_cond_t -->
-    <typedef-decl name='pthread_cond_t' type-id='type-id-116' filepath='/usr/include/bits/pthreadtypes.h' line='80' column='1' id='type-id-117'/>
-    <!-- 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-116'>
+    <!-- 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='src/compat_futex.c' line='44' column='1' elf-symbol-id='__urcu_compat_futex_lock'/>
+    <!-- union __anonymous_union__ -->
+    <union-decl name='__anonymous_union__' size-in-bits='384' is-anonymous='yes' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h' line='75' column='1' id='type-id-110'>
       <data-member access='private'>
-        <!-- __pthread_cond_s __data -->
-        <var-decl name='__data' type-id='type-id-118' visibility='default' filepath='/usr/include/bits/pthreadtypes.h' line='77' column='1'/>
+        <!-- __pthread_cond_s __anonymous_union__::__data -->
+        <var-decl name='__data' type-id='type-id-111' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h' line='77' column='1'/>
       </data-member>
       <data-member access='private'>
-        <!-- char __size[48] -->
-        <var-decl name='__size' type-id='type-id-110' visibility='default' filepath='/usr/include/bits/pthreadtypes.h' line='78' column='1'/>
+        <!-- char __anonymous_union__::__size[48] -->
+        <var-decl name='__size' type-id='type-id-112' visibility='default' filepath='/usr/include/x86_64-linux-gnu/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-112' visibility='default' filepath='/usr/include/bits/pthreadtypes.h' line='79' column='1'/>
+        <!-- long long int __anonymous_union__::__align -->
+        <var-decl name='__align' type-id='type-id-113' visibility='default' filepath='/usr/include/x86_64-linux-gnu/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-118'>
+    <class-decl name='__pthread_cond_s' size-in-bits='384' is-struct='yes' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='171' column='1' id='type-id-111'>
       <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-119' visibility='default'/>
+        <!-- __anonymous_union__  -->
+        <var-decl name='' type-id='type-id-114' 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-114' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='112' column='1'/>
+        <var-decl name='__g_refs' type-id='type-id-115' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='191' 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-114' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='113' column='1'/>
+        <var-decl name='__g_size' type-id='type-id-115' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='192' 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-26' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='114' column='1'/>
+        <var-decl name='__g1_orig_size' type-id='type-id-33' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='193' 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-26' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='115' column='1'/>
+        <var-decl name='__wrefs' type-id='type-id-33' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='194' 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-114' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='116' column='1'/>
+        <var-decl name='__g_signals' type-id='type-id-115' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='195' 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-119'>
+    <!-- union __anonymous_union__ -->
+    <union-decl name='__anonymous_union__' size-in-bits='64' is-anonymous='yes' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='173' column='1' id='type-id-114'>
       <data-member access='private'>
-        <!-- long long unsigned int __wseq -->
-        <var-decl name='__wseq' type-id='type-id-113' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='96' column='1'/>
+        <!-- long long unsigned int __anonymous_union__::__wseq -->
+        <var-decl name='__wseq' type-id='type-id-116' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='175' column='1'/>
       </data-member>
       <data-member access='private'>
-        <!-- struct {unsigned int __low; unsigned int __high;} __wseq32 -->
-        <var-decl name='__wseq32' type-id='type-id-120' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='101' column='1'/>
+        <!-- __anonymous_struct__ __anonymous_union__::__wseq32 -->
+        <var-decl name='__wseq32' type-id='type-id-117' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='180' 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-120'>
+    <!-- long long unsigned int -->
+    <type-decl name='long long unsigned int' size-in-bits='64' id='type-id-116'/>
+    <!-- struct __anonymous_struct__ -->
+    <class-decl name='__anonymous_struct__' size-in-bits='64' is-struct='yes' is-anonymous='yes' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='176' column='1' id='type-id-117'>
       <data-member access='public' layout-offset-in-bits='0'>
-        <!-- unsigned int __low -->
-        <var-decl name='__low' type-id='type-id-26' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='99' column='1'/>
+        <!-- unsigned int __anonymous_struct__::__low -->
+        <var-decl name='__low' type-id='type-id-33' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='178' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='32'>
-        <!-- unsigned int __high -->
-        <var-decl name='__high' type-id='type-id-26' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='100' column='1'/>
+        <!-- unsigned int __anonymous_struct__::__high -->
+        <var-decl name='__high' type-id='type-id-33' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='179' column='1'/>
       </data-member>
     </class-decl>
+
+    <!-- unsigned int[2] -->
+    <array-type-def dimensions='1' type-id='type-id-33' size-in-bits='64' id='type-id-115'>
+      <!-- <anonymous range>[2] -->
+      <subrange length='2' type-id='type-id-39' id='type-id-118'/>
+
+    </array-type-def>
+
+    <!-- char[48] -->
+    <array-type-def dimensions='1' type-id='type-id-38' size-in-bits='384' id='type-id-112'>
+      <!-- <anonymous range>[48] -->
+      <subrange length='48' type-id='type-id-39' id='type-id-119'/>
+
+    </array-type-def>
+    <!-- long long int -->
+    <type-decl name='long long int' size-in-bits='64' id='type-id-113'/>
+    <!-- typedef __anonymous_union__ pthread_cond_t -->
+    <typedef-decl name='pthread_cond_t' type-id='type-id-110' filepath='/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h' line='80' column='1' id='type-id-120'/>
+    <!-- pthread_cond_t __urcu_compat_futex_cond -->
+    <var-decl name='__urcu_compat_futex_cond' type-id='type-id-120' mangled-name='__urcu_compat_futex_cond' visibility='default' filepath='src/compat_futex.c' line='46' column='1' elf-symbol-id='__urcu_compat_futex_cond'/>
+    <!-- int32_t* -->
+    <pointer-type-def type-id='type-id-46' size-in-bits='64' id='type-id-121'/>
     <!-- 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-121'>
+    <class-decl name='timespec' size-in-bits='128' is-struct='yes' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h' line='9' column='1' id='type-id-122'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- __time_t timespec::tv_sec -->
-        <var-decl name='tv_sec' type-id='type-id-122' visibility='default' filepath='/usr/include/bits/types/struct_timespec.h' line='12' column='1'/>
+        <var-decl name='tv_sec' type-id='type-id-123' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h' line='11' 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-123' visibility='default' filepath='/usr/include/bits/types/struct_timespec.h' line='16' column='1'/>
+        <var-decl name='tv_nsec' type-id='type-id-124' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h' line='12' column='1'/>
       </data-member>
     </class-decl>
     <!-- typedef long int __time_t -->
-    <typedef-decl name='__time_t' type-id='type-id-24' filepath='/usr/include/bits/types.h' line='160' column='1' id='type-id-122'/>
+    <typedef-decl name='__time_t' type-id='type-id-32' filepath='/usr/include/x86_64-linux-gnu/bits/types.h' line='148' column='1' id='type-id-123'/>
     <!-- typedef long int __syscall_slong_t -->
-    <typedef-decl name='__syscall_slong_t' type-id='type-id-24' filepath='/usr/include/bits/types.h' line='197' column='1' id='type-id-123'/>
+    <typedef-decl name='__syscall_slong_t' type-id='type-id-32' filepath='/usr/include/x86_64-linux-gnu/bits/types.h' line='184' column='1' id='type-id-124'/>
     <!-- const timespec -->
-    <qualified-type-def type-id='type-id-121' const='yes' id='type-id-124'/>
+    <qualified-type-def type-id='type-id-122' const='yes' id='type-id-125'/>
     <!-- const timespec* -->
-    <pointer-type-def type-id='type-id-124' size-in-bits='64' id='type-id-125'/>
-    <!-- int32_t* -->
-    <pointer-type-def type-id='type-id-46' size-in-bits='64' id='type-id-126'/>
-    <!-- pthread_mutex_t __urcu_compat_futex_lock -->
-    <var-decl name='__urcu_compat_futex_lock' type-id='type-id-37' mangled-name='__urcu_compat_futex_lock' visibility='default' filepath='src/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-117' mangled-name='__urcu_compat_futex_cond' visibility='default' filepath='src/compat_futex.c' line='46' column='1' elf-symbol-id='__urcu_compat_futex_cond'/>
+    <pointer-type-def type-id='type-id-125' size-in-bits='64' id='type-id-126'/>
     <!-- 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='src/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-126' name='uaddr' filepath='src/compat_futex.c' line='118' column='1'/>
+      <parameter type-id='type-id-121' name='uaddr' filepath='src/compat_futex.c' line='118' column='1'/>
       <!-- parameter of type 'int' -->
-      <parameter type-id='type-id-1' name='op' filepath='src/compat_futex.c' line='118' column='1'/>
+      <parameter type-id='type-id-3' name='op' filepath='src/compat_futex.c' line='118' column='1'/>
       <!-- parameter of type 'typedef int32_t' -->
       <parameter type-id='type-id-46' name='val' filepath='src/compat_futex.c' line='118' column='1'/>
       <!-- parameter of type 'const timespec*' -->
-      <parameter type-id='type-id-125' name='timeout' filepath='src/compat_futex.c' line='119' column='1'/>
+      <parameter type-id='type-id-126' name='timeout' filepath='src/compat_futex.c' line='119' column='1'/>
       <!-- parameter of type 'int32_t*' -->
-      <parameter type-id='type-id-126' name='uaddr2' filepath='src/compat_futex.c' line='119' column='1'/>
+      <parameter type-id='type-id-121' name='uaddr2' filepath='src/compat_futex.c' line='119' column='1'/>
       <!-- parameter of type 'typedef int32_t' -->
       <parameter type-id='type-id-46' name='val3' filepath='src/compat_futex.c' line='119' column='1'/>
       <!-- int -->
-      <return type-id='type-id-1'/>
+      <return type-id='type-id-3'/>
     </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='src/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-126' name='uaddr' filepath='src/compat_futex.c' line='54' column='1'/>
+      <parameter type-id='type-id-121' name='uaddr' filepath='src/compat_futex.c' line='54' column='1'/>
       <!-- parameter of type 'int' -->
-      <parameter type-id='type-id-1' name='op' filepath='src/compat_futex.c' line='54' column='1'/>
+      <parameter type-id='type-id-3' name='op' filepath='src/compat_futex.c' line='54' column='1'/>
       <!-- parameter of type 'typedef int32_t' -->
       <parameter type-id='type-id-46' name='val' filepath='src/compat_futex.c' line='54' column='1'/>
       <!-- parameter of type 'const timespec*' -->
-      <parameter type-id='type-id-125' name='timeout' filepath='src/compat_futex.c' line='55' column='1'/>
+      <parameter type-id='type-id-126' name='timeout' filepath='src/compat_futex.c' line='55' column='1'/>
       <!-- parameter of type 'int32_t*' -->
-      <parameter type-id='type-id-126' name='uaddr2' filepath='src/compat_futex.c' line='55' column='1'/>
+      <parameter type-id='type-id-121' name='uaddr2' filepath='src/compat_futex.c' line='55' column='1'/>
       <!-- parameter of type 'typedef int32_t' -->
       <parameter type-id='type-id-46' name='val3' filepath='src/compat_futex.c' line='55' column='1'/>
       <!-- int -->
-      <return type-id='type-id-1'/>
+      <return type-id='type-id-3'/>
     </function-decl>
   </abi-instr>
 </abi-corpus>
index 07daf21a5d9ae9cd44ae287f28250c2097022be3..4773d91eed60643f7bc58746b876233896805426 100644 (file)
     <elf-symbol name='__cds_wfs_pop_with_state_blocking' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
     <!-- __cds_wfs_pop_with_state_nonblocking -->
     <elf-symbol name='__cds_wfs_pop_with_state_nonblocking' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- _fini -->
+    <elf-symbol name='_fini' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- _init -->
+    <elf-symbol name='_init' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
     <!-- cds_wfcq_dequeue_blocking -->
     <elf-symbol name='cds_wfcq_dequeue_blocking' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
     <!-- cds_wfcq_dequeue_lock -->
     <elf-symbol name='__urcu_compat_futex_lock' size='40' type='object-type' binding='weak-binding' visibility='default-visibility' is-defined='yes'/>
   </elf-variable-symbols>
   <abi-instr version='1.0' address-size='64' path='wfqueue.c' comp-dir-path='src' 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 cds_wfq_node -->
-    <class-decl name='cds_wfq_node' size-in-bits='64' is-struct='yes' visibility='default' filepath='../include/urcu/wfqueue.h' line='48' column='1' id='type-id-10'>
+    <class-decl name='cds_wfq_node' size-in-bits='64' is-struct='yes' visibility='default' filepath='../include/urcu/wfqueue.h' line='48' column='1' id='type-id-1'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- cds_wfq_node* cds_wfq_node::next -->
-        <var-decl name='next' type-id='type-id-11' visibility='default' filepath='../include/urcu/wfqueue.h' line='49' column='1'/>
+        <var-decl name='next' type-id='type-id-2' visibility='default' filepath='../include/urcu/wfqueue.h' line='49' column='1'/>
       </data-member>
     </class-decl>
+    <!-- cds_wfq_node* -->
+    <pointer-type-def type-id='type-id-1' size-in-bits='64' id='type-id-2'/>
     <!-- struct cds_wfq_queue -->
-    <class-decl name='cds_wfq_queue' size-in-bits='512' is-struct='yes' visibility='default' filepath='../include/urcu/wfqueue.h' line='52' column='1' id='type-id-12'>
+    <class-decl name='cds_wfq_queue' size-in-bits='512' is-struct='yes' visibility='default' filepath='../include/urcu/wfqueue.h' line='52' column='1' id='type-id-3'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- cds_wfq_node* cds_wfq_queue::head -->
-        <var-decl name='head' type-id='type-id-11' visibility='default' filepath='../include/urcu/wfqueue.h' line='53' column='1'/>
+        <var-decl name='head' type-id='type-id-2' visibility='default' filepath='../include/urcu/wfqueue.h' line='53' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='64'>
         <!-- cds_wfq_node** cds_wfq_queue::tail -->
-        <var-decl name='tail' type-id='type-id-13' visibility='default' filepath='../include/urcu/wfqueue.h' line='53' column='1'/>
+        <var-decl name='tail' type-id='type-id-4' visibility='default' filepath='../include/urcu/wfqueue.h' line='53' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='128'>
         <!-- cds_wfq_node cds_wfq_queue::dummy -->
-        <var-decl name='dummy' type-id='type-id-10' visibility='default' filepath='../include/urcu/wfqueue.h' line='54' column='1'/>
+        <var-decl name='dummy' type-id='type-id-1' visibility='default' filepath='../include/urcu/wfqueue.h' line='54' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='192'>
         <!-- pthread_mutex_t cds_wfq_queue::lock -->
-        <var-decl name='lock' type-id='type-id-14' visibility='default' filepath='../include/urcu/wfqueue.h' line='55' column='1'/>
+        <var-decl name='lock' type-id='type-id-5' visibility='default' filepath='../include/urcu/wfqueue.h' line='55' column='1'/>
       </data-member>
     </class-decl>
-    <!-- typedef __anonymous_union__ pthread_mutex_t -->
-    <typedef-decl name='pthread_mutex_t' type-id='type-id-15' filepath='/usr/include/bits/pthreadtypes.h' line='72' column='1' id='type-id-14'/>
-    <!-- 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-15'>
+    <!-- cds_wfq_node** -->
+    <pointer-type-def type-id='type-id-2' size-in-bits='64' id='type-id-4'/>
+    <!-- union __anonymous_union__ -->
+    <union-decl name='__anonymous_union__' size-in-bits='320' is-anonymous='yes' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h' line='67' column='1' id='type-id-6'>
       <data-member access='private'>
-        <!-- __pthread_mutex_s __data -->
-        <var-decl name='__data' type-id='type-id-16' visibility='default' filepath='/usr/include/bits/pthreadtypes.h' line='69' column='1'/>
+        <!-- __pthread_mutex_s __anonymous_union__::__data -->
+        <var-decl name='__data' type-id='type-id-7' visibility='default' filepath='/usr/include/x86_64-linux-gnu/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'/>
+        <!-- char __anonymous_union__::__size[40] -->
+        <var-decl name='__size' type-id='type-id-8' visibility='default' filepath='/usr/include/x86_64-linux-gnu/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'/>
+        <!-- long int __anonymous_union__::__align -->
+        <var-decl name='__align' type-id='type-id-9' visibility='default' filepath='/usr/include/x86_64-linux-gnu/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-16'>
+    <class-decl name='__pthread_mutex_s' size-in-bits='320' is-struct='yes' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='118' column='1' id='type-id-7'>
       <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'/>
+        <var-decl name='__lock' type-id='type-id-10' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='120' 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'/>
+        <var-decl name='__count' type-id='type-id-11' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='121' 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'/>
+        <var-decl name='__owner' type-id='type-id-10' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='122' 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'/>
+        <var-decl name='__nusers' type-id='type-id-11' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='124' 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'/>
+        <var-decl name='__kind' type-id='type-id-10' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='148' 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'/>
+        <var-decl name='__spins' type-id='type-id-12' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='154' 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'/>
+        <var-decl name='__elision' type-id='type-id-12' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='154' 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-17' visibility='default' filepath='/usr/include/bits/struct_mutex.h' line='36' column='1'/>
+        <var-decl name='__list' type-id='type-id-13' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='155' column='1'/>
       </data-member>
     </class-decl>
-    <!-- typedef __pthread_internal_list __pthread_list_t -->
-    <typedef-decl name='__pthread_list_t' type-id='type-id-18' filepath='/usr/include/bits/thread-shared-types.h' line='53' column='1' id='type-id-17'/>
+    <!-- int -->
+    <type-decl name='int' size-in-bits='32' id='type-id-10'/>
+    <!-- unsigned int -->
+    <type-decl name='unsigned int' size-in-bits='32' id='type-id-11'/>
+    <!-- short int -->
+    <type-decl name='short int' size-in-bits='16' id='type-id-12'/>
     <!-- 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-18'>
+    <class-decl name='__pthread_internal_list' size-in-bits='128' is-struct='yes' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='82' column='1' id='type-id-14'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- __pthread_internal_list* __pthread_internal_list::__prev -->
-        <var-decl name='__prev' type-id='type-id-19' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='51' column='1'/>
+        <var-decl name='__prev' type-id='type-id-15' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='84' 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-19' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='52' column='1'/>
+        <var-decl name='__next' type-id='type-id-15' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='85' column='1'/>
       </data-member>
     </class-decl>
     <!-- __pthread_internal_list* -->
-    <pointer-type-def type-id='type-id-18' size-in-bits='64' id='type-id-19'/>
-    <!-- cds_wfq_node* -->
-    <pointer-type-def type-id='type-id-10' size-in-bits='64' id='type-id-11'/>
-    <!-- cds_wfq_node** -->
-    <pointer-type-def type-id='type-id-11' size-in-bits='64' id='type-id-13'/>
+    <pointer-type-def type-id='type-id-14' size-in-bits='64' id='type-id-15'/>
+    <!-- typedef __pthread_internal_list __pthread_list_t -->
+    <typedef-decl name='__pthread_list_t' type-id='type-id-14' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='86' column='1' id='type-id-13'/>
+    <!-- char -->
+    <type-decl name='char' size-in-bits='8' id='type-id-16'/>
+    <!-- unsigned long int -->
+    <type-decl name='unsigned long int' size-in-bits='64' id='type-id-17'/>
+
+    <!-- char[40] -->
+    <array-type-def dimensions='1' type-id='type-id-16' size-in-bits='320' id='type-id-8'>
+      <!-- <anonymous range>[40] -->
+      <subrange length='40' type-id='type-id-17' id='type-id-18'/>
+
+    </array-type-def>
+    <!-- long int -->
+    <type-decl name='long int' size-in-bits='64' id='type-id-9'/>
+    <!-- typedef __anonymous_union__ pthread_mutex_t -->
+    <typedef-decl name='pthread_mutex_t' type-id='type-id-6' filepath='/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h' line='72' column='1' id='type-id-5'/>
     <!-- cds_wfq_queue* -->
-    <pointer-type-def type-id='type-id-12' size-in-bits='64' id='type-id-20'/>
+    <pointer-type-def type-id='type-id-3' size-in-bits='64' id='type-id-19'/>
     <!-- cds_wfq_node* cds_wfq_dequeue_blocking(cds_wfq_queue*) -->
     <function-decl name='cds_wfq_dequeue_blocking' mangled-name='cds_wfq_dequeue_blocking' filepath='src/wfqueue.c' line='59' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_wfq_dequeue_blocking'>
       <!-- parameter of type 'cds_wfq_queue*' -->
-      <parameter type-id='type-id-20' name='q' filepath='src/wfqueue.c' line='59' column='1'/>
+      <parameter type-id='type-id-19' name='q' filepath='src/wfqueue.c' line='59' column='1'/>
       <!-- cds_wfq_node* -->
-      <return type-id='type-id-11'/>
+      <return type-id='type-id-2'/>
     </function-decl>
     <!-- cds_wfq_node* __cds_wfq_dequeue_blocking(cds_wfq_queue*) -->
     <function-decl name='__cds_wfq_dequeue_blocking' mangled-name='__cds_wfq_dequeue_blocking' filepath='src/wfqueue.c' line='54' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='__cds_wfq_dequeue_blocking'>
       <!-- parameter of type 'cds_wfq_queue*' -->
-      <parameter type-id='type-id-20' name='q' filepath='src/wfqueue.c' line='54' column='1'/>
+      <parameter type-id='type-id-19' name='q' filepath='src/wfqueue.c' line='59' column='1'/>
       <!-- cds_wfq_node* -->
-      <return type-id='type-id-11'/>
+      <return type-id='type-id-2'/>
     </function-decl>
+    <!-- void -->
+    <type-decl name='void' id='type-id-20'/>
     <!-- void cds_wfq_enqueue(cds_wfq_queue*, cds_wfq_node*) -->
     <function-decl name='cds_wfq_enqueue' mangled-name='cds_wfq_enqueue' filepath='src/wfqueue.c' line='49' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_wfq_enqueue'>
       <!-- parameter of type 'cds_wfq_queue*' -->
-      <parameter type-id='type-id-20' name='q' filepath='src/wfqueue.c' line='49' column='1'/>
+      <parameter type-id='type-id-19' name='q' filepath='src/wfqueue.c' line='49' column='1'/>
       <!-- parameter of type 'cds_wfq_node*' -->
-      <parameter type-id='type-id-11' name='node' filepath='src/wfqueue.c' line='49' column='1'/>
+      <parameter type-id='type-id-2' name='node' filepath='src/wfqueue.c' line='49' column='1'/>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-20'/>
     </function-decl>
     <!-- void cds_wfq_destroy(cds_wfq_queue*) -->
     <function-decl name='cds_wfq_destroy' mangled-name='cds_wfq_destroy' filepath='src/wfqueue.c' line='44' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_wfq_destroy'>
       <!-- parameter of type 'cds_wfq_queue*' -->
-      <parameter type-id='type-id-20' name='q' filepath='src/wfqueue.c' line='44' column='1'/>
+      <parameter type-id='type-id-19' name='q' filepath='src/wfqueue.c' line='44' column='1'/>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-20'/>
     </function-decl>
     <!-- void cds_wfq_init(cds_wfq_queue*) -->
     <function-decl name='cds_wfq_init' mangled-name='cds_wfq_init' filepath='src/wfqueue.c' line='39' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_wfq_init'>
       <!-- parameter of type 'cds_wfq_queue*' -->
-      <parameter type-id='type-id-20' name='q' filepath='src/wfqueue.c' line='39' column='1'/>
+      <parameter type-id='type-id-19' name='q' filepath='src/wfqueue.c' line='44' column='1'/>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-20'/>
     </function-decl>
     <!-- void cds_wfq_node_init(cds_wfq_node*) -->
     <function-decl name='cds_wfq_node_init' mangled-name='cds_wfq_node_init' filepath='src/wfqueue.c' line='34' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_wfq_node_init'>
       <!-- parameter of type 'cds_wfq_node*' -->
-      <parameter type-id='type-id-11' name='node' filepath='src/wfqueue.c' line='34' column='1'/>
+      <parameter type-id='type-id-2' name='node' filepath='src/wfqueue.c' line='34' column='1'/>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-20'/>
     </function-decl>
   </abi-instr>
   <abi-instr version='1.0' address-size='64' path='wfcqueue.c' comp-dir-path='src' language='LANG_C99'>
-    <!-- bool -->
-    <type-decl name='bool' size-in-bits='8' id='type-id-21'/>
-    <!-- unnamed&#45;enum&#45;underlying&#45;type -->
-    <type-decl name='unnamed-enum-underlying-type' is-anonymous='yes' size-in-bits='32' alignment-in-bits='32' id='type-id-22'/>
     <!-- struct cds_wfcq_node -->
-    <class-decl name='cds_wfcq_node' size-in-bits='64' is-struct='yes' visibility='default' filepath='../include/urcu/wfcqueue.h' line='59' column='1' id='type-id-23'>
+    <class-decl name='cds_wfcq_node' size-in-bits='64' is-struct='yes' visibility='default' filepath='../include/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-24' visibility='default' filepath='../include/urcu/wfcqueue.h' line='60' column='1'/>
+        <var-decl name='next' type-id='type-id-22' visibility='default' filepath='../include/urcu/wfcqueue.h' line='60' column='1'/>
       </data-member>
     </class-decl>
-    <!-- typedef __anonymous_union__ cds_wfcq_head_ptr_t -->
-    <typedef-decl name='cds_wfcq_head_ptr_t' type-id='type-id-25' filepath='../include/urcu/wfcqueue.h' line='86' column='1' id='type-id-26'/>
-    <!-- union {__cds_wfcq_head* _h; cds_wfcq_head* h;} -->
-    <union-decl name='__anonymous_union__' size-in-bits='64' is-anonymous='yes' visibility='default' filepath='../include/urcu/wfcqueue.h' line='83' column='1' id='type-id-25'>
+    <!-- cds_wfcq_node* -->
+    <pointer-type-def type-id='type-id-21' size-in-bits='64' id='type-id-22'/>
+    <!-- union __anonymous_union__ -->
+    <union-decl name='__anonymous_union__' size-in-bits='64' is-anonymous='yes' visibility='default' filepath='../include/urcu/wfcqueue.h' line='83' column='1' id='type-id-23'>
       <data-member access='private'>
-        <!-- __cds_wfcq_head* _h -->
-        <var-decl name='_h' type-id='type-id-27' visibility='default' filepath='../include/urcu/wfcqueue.h' line='84' column='1'/>
+        <!-- __cds_wfcq_head* __anonymous_union__::_h -->
+        <var-decl name='_h' type-id='type-id-24' visibility='default' filepath='../include/urcu/wfcqueue.h' line='84' column='1'/>
       </data-member>
       <data-member access='private'>
-        <!-- cds_wfcq_head* h -->
-        <var-decl name='h' type-id='type-id-28' visibility='default' filepath='../include/urcu/wfcqueue.h' line='85' column='1'/>
+        <!-- cds_wfcq_head* __anonymous_union__::h -->
+        <var-decl name='h' type-id='type-id-25' visibility='default' filepath='../include/urcu/wfcqueue.h' line='85' column='1'/>
       </data-member>
     </union-decl>
     <!-- struct __cds_wfcq_head -->
-    <class-decl name='__cds_wfcq_head' size-in-bits='64' is-struct='yes' visibility='default' filepath='../include/urcu/wfcqueue.h' line='68' column='1' id='type-id-29'>
+    <class-decl name='__cds_wfcq_head' size-in-bits='64' is-struct='yes' visibility='default' filepath='../include/urcu/wfcqueue.h' line='68' 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-23' visibility='default' filepath='../include/urcu/wfcqueue.h' line='69' column='1'/>
+        <var-decl name='node' type-id='type-id-21' visibility='default' filepath='../include/urcu/wfcqueue.h' line='69' column='1'/>
       </data-member>
     </class-decl>
+    <!-- __cds_wfcq_head* -->
+    <pointer-type-def type-id='type-id-26' size-in-bits='64' id='type-id-24'/>
     <!-- struct cds_wfcq_head -->
-    <class-decl name='cds_wfcq_head' size-in-bits='384' is-struct='yes' visibility='default' filepath='../include/urcu/wfcqueue.h' line='72' column='1' id='type-id-30'>
+    <class-decl name='cds_wfcq_head' size-in-bits='384' is-struct='yes' visibility='default' filepath='../include/urcu/wfcqueue.h' line='72' column='1' id='type-id-27'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- cds_wfcq_node cds_wfcq_head::node -->
-        <var-decl name='node' type-id='type-id-23' visibility='default' filepath='../include/urcu/wfcqueue.h' line='73' column='1'/>
+        <var-decl name='node' type-id='type-id-21' visibility='default' filepath='../include/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-14' visibility='default' filepath='../include/urcu/wfcqueue.h' line='74' column='1'/>
+        <var-decl name='lock' type-id='type-id-5' visibility='default' filepath='../include/urcu/wfcqueue.h' line='74' column='1'/>
       </data-member>
     </class-decl>
+    <!-- cds_wfcq_head* -->
+    <pointer-type-def type-id='type-id-27' size-in-bits='64' id='type-id-25'/>
+    <!-- typedef __anonymous_union__ cds_wfcq_head_ptr_t -->
+    <typedef-decl name='cds_wfcq_head_ptr_t' type-id='type-id-23' filepath='../include/urcu/wfcqueue.h' line='86' column='1' id='type-id-28'/>
     <!-- struct cds_wfcq_tail -->
-    <class-decl name='cds_wfcq_tail' size-in-bits='64' is-struct='yes' visibility='default' filepath='../include/urcu/wfcqueue.h' line='127' column='1' id='type-id-31'>
+    <class-decl name='cds_wfcq_tail' size-in-bits='64' is-struct='yes' visibility='default' filepath='../include/urcu/wfcqueue.h' line='127' column='1' id='type-id-29'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- cds_wfcq_node* cds_wfcq_tail::p -->
-        <var-decl name='p' type-id='type-id-24' visibility='default' filepath='../include/urcu/wfcqueue.h' line='128' column='1'/>
+        <var-decl name='p' type-id='type-id-22' visibility='default' filepath='../include/urcu/wfcqueue.h' line='128' column='1'/>
       </data-member>
     </class-decl>
-    <!-- enum cds_wfcq_ret -->
-    <enum-decl name='cds_wfcq_ret' filepath='../include/urcu/wfcqueue.h' line='48' column='1' id='type-id-32'>
-      <underlying-type type-id='type-id-22'/>
-      <enumerator name='CDS_WFCQ_RET_WOULDBLOCK' value='-1'/>
-      <enumerator name='CDS_WFCQ_RET_DEST_EMPTY' value='0'/>
-      <enumerator name='CDS_WFCQ_RET_DEST_NON_EMPTY' value='1'/>
-      <enumerator name='CDS_WFCQ_RET_SRC_EMPTY' value='2'/>
-    </enum-decl>
-    <!-- __cds_wfcq_head* -->
-    <pointer-type-def type-id='type-id-29' size-in-bits='64' id='type-id-27'/>
-    <!-- cds_wfcq_head* -->
-    <pointer-type-def type-id='type-id-30' size-in-bits='64' id='type-id-28'/>
-    <!-- cds_wfcq_node* -->
-    <pointer-type-def type-id='type-id-23' size-in-bits='64' id='type-id-24'/>
     <!-- cds_wfcq_tail* -->
-    <pointer-type-def type-id='type-id-31' size-in-bits='64' id='type-id-33'/>
-    <!-- int* -->
-    <pointer-type-def type-id='type-id-5' size-in-bits='64' id='type-id-34'/>
+    <pointer-type-def type-id='type-id-29' size-in-bits='64' id='type-id-30'/>
     <!-- cds_wfcq_node* __cds_wfcq_next_nonblocking(cds_wfcq_head_ptr_t, cds_wfcq_tail*, cds_wfcq_node*) -->
     <function-decl name='__cds_wfcq_next_nonblocking' mangled-name='__cds_wfcq_next_nonblocking' filepath='src/wfcqueue.c' line='178' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='__cds_wfcq_next_nonblocking'>
       <!-- parameter of type 'typedef cds_wfcq_head_ptr_t' -->
-      <parameter type-id='type-id-26' name='head' filepath='src/wfcqueue.c' line='179' column='1'/>
+      <parameter type-id='type-id-28' name='head' filepath='src/wfcqueue.c' line='179' column='1'/>
       <!-- parameter of type 'cds_wfcq_tail*' -->
-      <parameter type-id='type-id-33' name='tail' filepath='src/wfcqueue.c' line='180' column='1'/>
+      <parameter type-id='type-id-30' name='tail' filepath='src/wfcqueue.c' line='180' column='1'/>
       <!-- parameter of type 'cds_wfcq_node*' -->
-      <parameter type-id='type-id-24' name='node' filepath='src/wfcqueue.c' line='181' column='1'/>
+      <parameter type-id='type-id-22' name='node' filepath='src/wfcqueue.c' line='181' column='1'/>
       <!-- cds_wfcq_node* -->
-      <return type-id='type-id-24'/>
+      <return type-id='type-id-22'/>
     </function-decl>
     <!-- cds_wfcq_node* __cds_wfcq_next_blocking(cds_wfcq_head_ptr_t, cds_wfcq_tail*, cds_wfcq_node*) -->
     <function-decl name='__cds_wfcq_next_blocking' mangled-name='__cds_wfcq_next_blocking' filepath='src/wfcqueue.c' line='170' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='__cds_wfcq_next_blocking'>
       <!-- parameter of type 'typedef cds_wfcq_head_ptr_t' -->
-      <parameter type-id='type-id-26' name='head' filepath='src/wfcqueue.c' line='171' column='1'/>
+      <parameter type-id='type-id-28' name='head' filepath='src/wfcqueue.c' line='179' column='1'/>
       <!-- parameter of type 'cds_wfcq_tail*' -->
-      <parameter type-id='type-id-33' name='tail' filepath='src/wfcqueue.c' line='172' column='1'/>
+      <parameter type-id='type-id-30' name='tail' filepath='src/wfcqueue.c' line='180' column='1'/>
       <!-- parameter of type 'cds_wfcq_node*' -->
-      <parameter type-id='type-id-24' name='node' filepath='src/wfcqueue.c' line='173' column='1'/>
+      <parameter type-id='type-id-22' name='node' filepath='src/wfcqueue.c' line='181' column='1'/>
       <!-- cds_wfcq_node* -->
-      <return type-id='type-id-24'/>
+      <return type-id='type-id-22'/>
     </function-decl>
     <!-- cds_wfcq_node* __cds_wfcq_first_nonblocking(cds_wfcq_head_ptr_t, cds_wfcq_tail*) -->
     <function-decl name='__cds_wfcq_first_nonblocking' mangled-name='__cds_wfcq_first_nonblocking' filepath='src/wfcqueue.c' line='163' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='__cds_wfcq_first_nonblocking'>
       <!-- parameter of type 'typedef cds_wfcq_head_ptr_t' -->
-      <parameter type-id='type-id-26' name='head' filepath='src/wfcqueue.c' line='164' column='1'/>
+      <parameter type-id='type-id-28' name='head' filepath='src/wfcqueue.c' line='164' column='1'/>
       <!-- parameter of type 'cds_wfcq_tail*' -->
-      <parameter type-id='type-id-33' name='tail' filepath='src/wfcqueue.c' line='165' column='1'/>
+      <parameter type-id='type-id-30' name='tail' filepath='src/wfcqueue.c' line='165' column='1'/>
       <!-- cds_wfcq_node* -->
-      <return type-id='type-id-24'/>
+      <return type-id='type-id-22'/>
     </function-decl>
     <!-- cds_wfcq_node* __cds_wfcq_first_blocking(cds_wfcq_head_ptr_t, cds_wfcq_tail*) -->
     <function-decl name='__cds_wfcq_first_blocking' mangled-name='__cds_wfcq_first_blocking' filepath='src/wfcqueue.c' line='156' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='__cds_wfcq_first_blocking'>
       <!-- parameter of type 'typedef cds_wfcq_head_ptr_t' -->
-      <parameter type-id='type-id-26' name='head' filepath='src/wfcqueue.c' line='157' column='1'/>
+      <parameter type-id='type-id-28' name='head' filepath='src/wfcqueue.c' line='164' column='1'/>
       <!-- parameter of type 'cds_wfcq_tail*' -->
-      <parameter type-id='type-id-33' name='tail' filepath='src/wfcqueue.c' line='158' column='1'/>
+      <parameter type-id='type-id-30' name='tail' filepath='src/wfcqueue.c' line='165' column='1'/>
       <!-- cds_wfcq_node* -->
-      <return type-id='type-id-24'/>
+      <return type-id='type-id-22'/>
     </function-decl>
+    <!-- unnamed&#45;enum&#45;underlying&#45;type -->
+    <type-decl name='unnamed-enum-underlying-type' is-anonymous='yes' size-in-bits='32' alignment-in-bits='32' id='type-id-31'/>
+    <!-- enum cds_wfcq_ret -->
+    <enum-decl name='cds_wfcq_ret' filepath='../include/urcu/wfcqueue.h' line='48' column='1' id='type-id-32'>
+      <underlying-type type-id='type-id-31'/>
+      <enumerator name='CDS_WFCQ_RET_WOULDBLOCK' value='-1'/>
+      <enumerator name='CDS_WFCQ_RET_DEST_EMPTY' value='0'/>
+      <enumerator name='CDS_WFCQ_RET_DEST_NON_EMPTY' value='1'/>
+      <enumerator name='CDS_WFCQ_RET_SRC_EMPTY' value='2'/>
+    </enum-decl>
     <!-- cds_wfcq_ret __cds_wfcq_splice_nonblocking(cds_wfcq_head_ptr_t, cds_wfcq_tail*, cds_wfcq_head_ptr_t, cds_wfcq_tail*) -->
     <function-decl name='__cds_wfcq_splice_nonblocking' mangled-name='__cds_wfcq_splice_nonblocking' filepath='src/wfcqueue.c' line='146' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='__cds_wfcq_splice_nonblocking'>
       <!-- parameter of type 'typedef cds_wfcq_head_ptr_t' -->
-      <parameter type-id='type-id-26' name='dest_q_head' filepath='src/wfcqueue.c' line='147' column='1'/>
+      <parameter type-id='type-id-28' name='dest_q_head' filepath='src/wfcqueue.c' line='147' column='1'/>
       <!-- parameter of type 'cds_wfcq_tail*' -->
-      <parameter type-id='type-id-33' name='dest_q_tail' filepath='src/wfcqueue.c' line='148' column='1'/>
+      <parameter type-id='type-id-30' name='dest_q_tail' filepath='src/wfcqueue.c' line='148' column='1'/>
       <!-- parameter of type 'typedef cds_wfcq_head_ptr_t' -->
-      <parameter type-id='type-id-26' name='src_q_head' filepath='src/wfcqueue.c' line='149' column='1'/>
+      <parameter type-id='type-id-28' name='src_q_head' filepath='src/wfcqueue.c' line='149' column='1'/>
       <!-- parameter of type 'cds_wfcq_tail*' -->
-      <parameter type-id='type-id-33' name='src_q_tail' filepath='src/wfcqueue.c' line='150' column='1'/>
+      <parameter type-id='type-id-30' name='src_q_tail' filepath='src/wfcqueue.c' line='150' column='1'/>
       <!-- enum cds_wfcq_ret -->
       <return type-id='type-id-32'/>
     </function-decl>
     <!-- cds_wfcq_ret __cds_wfcq_splice_blocking(cds_wfcq_head_ptr_t, cds_wfcq_tail*, cds_wfcq_head_ptr_t, cds_wfcq_tail*) -->
     <function-decl name='__cds_wfcq_splice_blocking' mangled-name='__cds_wfcq_splice_blocking' filepath='src/wfcqueue.c' line='136' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='__cds_wfcq_splice_blocking'>
       <!-- parameter of type 'typedef cds_wfcq_head_ptr_t' -->
-      <parameter type-id='type-id-26' name='dest_q_head' filepath='src/wfcqueue.c' line='137' column='1'/>
+      <parameter type-id='type-id-28' name='dest_q_head' filepath='src/wfcqueue.c' line='147' column='1'/>
       <!-- parameter of type 'cds_wfcq_tail*' -->
-      <parameter type-id='type-id-33' name='dest_q_tail' filepath='src/wfcqueue.c' line='138' column='1'/>
+      <parameter type-id='type-id-30' name='dest_q_tail' filepath='src/wfcqueue.c' line='148' column='1'/>
       <!-- parameter of type 'typedef cds_wfcq_head_ptr_t' -->
-      <parameter type-id='type-id-26' name='src_q_head' filepath='src/wfcqueue.c' line='139' column='1'/>
+      <parameter type-id='type-id-28' name='src_q_head' filepath='src/wfcqueue.c' line='149' column='1'/>
       <!-- parameter of type 'cds_wfcq_tail*' -->
-      <parameter type-id='type-id-33' name='src_q_tail' filepath='src/wfcqueue.c' line='140' column='1'/>
+      <parameter type-id='type-id-30' name='src_q_tail' filepath='src/wfcqueue.c' line='150' column='1'/>
       <!-- enum cds_wfcq_ret -->
       <return type-id='type-id-32'/>
     </function-decl>
+    <!-- int* -->
+    <pointer-type-def type-id='type-id-10' size-in-bits='64' id='type-id-33'/>
     <!-- cds_wfcq_node* __cds_wfcq_dequeue_with_state_nonblocking(cds_wfcq_head_ptr_t, cds_wfcq_tail*, int*) -->
     <function-decl name='__cds_wfcq_dequeue_with_state_nonblocking' mangled-name='__cds_wfcq_dequeue_with_state_nonblocking' filepath='src/wfcqueue.c' line='128' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='__cds_wfcq_dequeue_with_state_nonblocking'>
       <!-- parameter of type 'typedef cds_wfcq_head_ptr_t' -->
-      <parameter type-id='type-id-26' name='head' filepath='src/wfcqueue.c' line='129' column='1'/>
+      <parameter type-id='type-id-28' name='head' filepath='src/wfcqueue.c' line='129' column='1'/>
       <!-- parameter of type 'cds_wfcq_tail*' -->
-      <parameter type-id='type-id-33' name='tail' filepath='src/wfcqueue.c' line='130' column='1'/>
+      <parameter type-id='type-id-30' name='tail' filepath='src/wfcqueue.c' line='130' column='1'/>
       <!-- parameter of type 'int*' -->
-      <parameter type-id='type-id-34' name='state' filepath='src/wfcqueue.c' line='131' column='1'/>
+      <parameter type-id='type-id-33' name='state' filepath='src/wfcqueue.c' line='131' column='1'/>
       <!-- cds_wfcq_node* -->
-      <return type-id='type-id-24'/>
+      <return type-id='type-id-22'/>
     </function-decl>
     <!-- cds_wfcq_node* __cds_wfcq_dequeue_nonblocking(cds_wfcq_head_ptr_t, cds_wfcq_tail*) -->
     <function-decl name='__cds_wfcq_dequeue_nonblocking' mangled-name='__cds_wfcq_dequeue_nonblocking' filepath='src/wfcqueue.c' line='121' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='__cds_wfcq_dequeue_nonblocking'>
       <!-- parameter of type 'typedef cds_wfcq_head_ptr_t' -->
-      <parameter type-id='type-id-26' name='head' filepath='src/wfcqueue.c' line='122' column='1'/>
+      <parameter type-id='type-id-28' name='head' filepath='src/wfcqueue.c' line='164' column='1'/>
       <!-- parameter of type 'cds_wfcq_tail*' -->
-      <parameter type-id='type-id-33' name='tail' filepath='src/wfcqueue.c' line='123' column='1'/>
+      <parameter type-id='type-id-30' name='tail' filepath='src/wfcqueue.c' line='165' column='1'/>
       <!-- cds_wfcq_node* -->
-      <return type-id='type-id-24'/>
+      <return type-id='type-id-22'/>
     </function-decl>
     <!-- cds_wfcq_node* __cds_wfcq_dequeue_with_state_blocking(cds_wfcq_head_ptr_t, cds_wfcq_tail*, int*) -->
     <function-decl name='__cds_wfcq_dequeue_with_state_blocking' mangled-name='__cds_wfcq_dequeue_with_state_blocking' filepath='src/wfcqueue.c' line='113' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='__cds_wfcq_dequeue_with_state_blocking'>
       <!-- parameter of type 'typedef cds_wfcq_head_ptr_t' -->
-      <parameter type-id='type-id-26' name='head' filepath='src/wfcqueue.c' line='114' column='1'/>
+      <parameter type-id='type-id-28' name='head' filepath='src/wfcqueue.c' line='129' column='1'/>
       <!-- parameter of type 'cds_wfcq_tail*' -->
-      <parameter type-id='type-id-33' name='tail' filepath='src/wfcqueue.c' line='115' column='1'/>
+      <parameter type-id='type-id-30' name='tail' filepath='src/wfcqueue.c' line='130' column='1'/>
       <!-- parameter of type 'int*' -->
-      <parameter type-id='type-id-34' name='state' filepath='src/wfcqueue.c' line='116' column='1'/>
+      <parameter type-id='type-id-33' name='state' filepath='src/wfcqueue.c' line='131' column='1'/>
       <!-- cds_wfcq_node* -->
-      <return type-id='type-id-24'/>
+      <return type-id='type-id-22'/>
     </function-decl>
     <!-- cds_wfcq_node* __cds_wfcq_dequeue_blocking(cds_wfcq_head_ptr_t, cds_wfcq_tail*) -->
     <function-decl name='__cds_wfcq_dequeue_blocking' mangled-name='__cds_wfcq_dequeue_blocking' filepath='src/wfcqueue.c' line='106' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='__cds_wfcq_dequeue_blocking'>
       <!-- parameter of type 'typedef cds_wfcq_head_ptr_t' -->
-      <parameter type-id='type-id-26' name='head' filepath='src/wfcqueue.c' line='107' column='1'/>
+      <parameter type-id='type-id-28' name='head' filepath='src/wfcqueue.c' line='164' column='1'/>
       <!-- parameter of type 'cds_wfcq_tail*' -->
-      <parameter type-id='type-id-33' name='tail' filepath='src/wfcqueue.c' line='108' column='1'/>
+      <parameter type-id='type-id-30' name='tail' filepath='src/wfcqueue.c' line='165' column='1'/>
       <!-- cds_wfcq_node* -->
-      <return type-id='type-id-24'/>
+      <return type-id='type-id-22'/>
     </function-decl>
     <!-- cds_wfcq_ret cds_wfcq_splice_blocking(cds_wfcq_head*, cds_wfcq_tail*, cds_wfcq_head*, cds_wfcq_tail*) -->
     <function-decl name='cds_wfcq_splice_blocking' mangled-name='cds_wfcq_splice_blocking' filepath='src/wfcqueue.c' line='96' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_wfcq_splice_blocking'>
       <!-- parameter of type 'cds_wfcq_head*' -->
-      <parameter type-id='type-id-28' name='dest_q_head' filepath='src/wfcqueue.c' line='97' column='1'/>
+      <parameter type-id='type-id-25' name='dest_q_head' filepath='src/wfcqueue.c' line='97' column='1'/>
       <!-- parameter of type 'cds_wfcq_tail*' -->
-      <parameter type-id='type-id-33' name='dest_q_tail' filepath='src/wfcqueue.c' line='98' column='1'/>
+      <parameter type-id='type-id-30' name='dest_q_tail' filepath='src/wfcqueue.c' line='98' column='1'/>
       <!-- parameter of type 'cds_wfcq_head*' -->
-      <parameter type-id='type-id-28' name='src_q_head' filepath='src/wfcqueue.c' line='99' column='1'/>
+      <parameter type-id='type-id-25' name='src_q_head' filepath='src/wfcqueue.c' line='99' column='1'/>
       <!-- parameter of type 'cds_wfcq_tail*' -->
-      <parameter type-id='type-id-33' name='src_q_tail' filepath='src/wfcqueue.c' line='100' column='1'/>
+      <parameter type-id='type-id-30' name='src_q_tail' filepath='src/wfcqueue.c' line='100' column='1'/>
       <!-- enum cds_wfcq_ret -->
       <return type-id='type-id-32'/>
     </function-decl>
     <!-- cds_wfcq_node* cds_wfcq_dequeue_with_state_blocking(cds_wfcq_head*, cds_wfcq_tail*, int*) -->
     <function-decl name='cds_wfcq_dequeue_with_state_blocking' mangled-name='cds_wfcq_dequeue_with_state_blocking' filepath='src/wfcqueue.c' line='88' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_wfcq_dequeue_with_state_blocking'>
       <!-- parameter of type 'cds_wfcq_head*' -->
-      <parameter type-id='type-id-28' name='head' filepath='src/wfcqueue.c' line='89' column='1'/>
+      <parameter type-id='type-id-25' name='head' filepath='src/wfcqueue.c' line='89' column='1'/>
       <!-- parameter of type 'cds_wfcq_tail*' -->
-      <parameter type-id='type-id-33' name='tail' filepath='src/wfcqueue.c' line='90' column='1'/>
+      <parameter type-id='type-id-30' name='tail' filepath='src/wfcqueue.c' line='90' column='1'/>
       <!-- parameter of type 'int*' -->
-      <parameter type-id='type-id-34' name='state' filepath='src/wfcqueue.c' line='91' column='1'/>
+      <parameter type-id='type-id-33' name='state' filepath='src/wfcqueue.c' line='91' column='1'/>
       <!-- cds_wfcq_node* -->
-      <return type-id='type-id-24'/>
+      <return type-id='type-id-22'/>
     </function-decl>
     <!-- cds_wfcq_node* cds_wfcq_dequeue_blocking(cds_wfcq_head*, cds_wfcq_tail*) -->
     <function-decl name='cds_wfcq_dequeue_blocking' mangled-name='cds_wfcq_dequeue_blocking' filepath='src/wfcqueue.c' line='81' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_wfcq_dequeue_blocking'>
       <!-- parameter of type 'cds_wfcq_head*' -->
-      <parameter type-id='type-id-28' name='head' filepath='src/wfcqueue.c' line='82' column='1'/>
+      <parameter type-id='type-id-25' name='head' filepath='src/wfcqueue.c' line='82' column='1'/>
       <!-- parameter of type 'cds_wfcq_tail*' -->
-      <parameter type-id='type-id-33' name='tail' filepath='src/wfcqueue.c' line='83' column='1'/>
+      <parameter type-id='type-id-30' name='tail' filepath='src/wfcqueue.c' line='83' column='1'/>
       <!-- cds_wfcq_node* -->
-      <return type-id='type-id-24'/>
+      <return type-id='type-id-22'/>
     </function-decl>
     <!-- void cds_wfcq_dequeue_unlock(cds_wfcq_head*, cds_wfcq_tail*) -->
     <function-decl name='cds_wfcq_dequeue_unlock' mangled-name='cds_wfcq_dequeue_unlock' filepath='src/wfcqueue.c' line='75' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_wfcq_dequeue_unlock'>
       <!-- parameter of type 'cds_wfcq_head*' -->
-      <parameter type-id='type-id-28' name='head' filepath='src/wfcqueue.c' line='75' column='1'/>
+      <parameter type-id='type-id-25' name='head' filepath='src/wfcqueue.c' line='75' column='1'/>
       <!-- parameter of type 'cds_wfcq_tail*' -->
-      <parameter type-id='type-id-33' name='tail' filepath='src/wfcqueue.c' line='76' column='1'/>
+      <parameter type-id='type-id-30' name='tail' filepath='src/wfcqueue.c' line='76' column='1'/>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-20'/>
     </function-decl>
     <!-- void cds_wfcq_dequeue_lock(cds_wfcq_head*, cds_wfcq_tail*) -->
     <function-decl name='cds_wfcq_dequeue_lock' mangled-name='cds_wfcq_dequeue_lock' filepath='src/wfcqueue.c' line='69' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_wfcq_dequeue_lock'>
       <!-- parameter of type 'cds_wfcq_head*' -->
-      <parameter type-id='type-id-28' name='head' filepath='src/wfcqueue.c' line='69' column='1'/>
+      <parameter type-id='type-id-25' name='head' filepath='src/wfcqueue.c' line='75' column='1'/>
       <!-- parameter of type 'cds_wfcq_tail*' -->
-      <parameter type-id='type-id-33' name='tail' filepath='src/wfcqueue.c' line='70' column='1'/>
+      <parameter type-id='type-id-30' name='tail' filepath='src/wfcqueue.c' line='76' column='1'/>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-20'/>
     </function-decl>
+    <!-- bool -->
+    <type-decl name='bool' size-in-bits='8' id='type-id-34'/>
     <!-- bool cds_wfcq_enqueue(cds_wfcq_head_ptr_t, cds_wfcq_tail*, cds_wfcq_node*) -->
     <function-decl name='cds_wfcq_enqueue' mangled-name='cds_wfcq_enqueue' filepath='src/wfcqueue.c' line='62' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_wfcq_enqueue'>
       <!-- parameter of type 'typedef cds_wfcq_head_ptr_t' -->
-      <parameter type-id='type-id-26' name='head' filepath='src/wfcqueue.c' line='62' column='1'/>
+      <parameter type-id='type-id-28' name='head' filepath='src/wfcqueue.c' line='62' column='1'/>
       <!-- parameter of type 'cds_wfcq_tail*' -->
-      <parameter type-id='type-id-33' name='tail' filepath='src/wfcqueue.c' line='63' column='1'/>
+      <parameter type-id='type-id-30' name='tail' filepath='src/wfcqueue.c' line='63' column='1'/>
       <!-- parameter of type 'cds_wfcq_node*' -->
-      <parameter type-id='type-id-24' name='node' filepath='src/wfcqueue.c' line='64' column='1'/>
+      <parameter type-id='type-id-22' name='node' filepath='src/wfcqueue.c' line='64' column='1'/>
       <!-- bool -->
-      <return type-id='type-id-21'/>
+      <return type-id='type-id-34'/>
     </function-decl>
     <!-- bool cds_wfcq_empty(cds_wfcq_head_ptr_t, cds_wfcq_tail*) -->
     <function-decl name='cds_wfcq_empty' mangled-name='cds_wfcq_empty' filepath='src/wfcqueue.c' line='55' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_wfcq_empty'>
       <!-- parameter of type 'typedef cds_wfcq_head_ptr_t' -->
-      <parameter type-id='type-id-26' name='head' filepath='src/wfcqueue.c' line='55' column='1'/>
+      <parameter type-id='type-id-28' name='head' filepath='src/wfcqueue.c' line='55' column='1'/>
       <!-- parameter of type 'cds_wfcq_tail*' -->
-      <parameter type-id='type-id-33' name='tail' filepath='src/wfcqueue.c' line='56' column='1'/>
+      <parameter type-id='type-id-30' name='tail' filepath='src/wfcqueue.c' line='56' column='1'/>
       <!-- bool -->
-      <return type-id='type-id-21'/>
+      <return type-id='type-id-34'/>
     </function-decl>
     <!-- void __cds_wfcq_init(__cds_wfcq_head*, cds_wfcq_tail*) -->
     <function-decl name='__cds_wfcq_init' mangled-name='__cds_wfcq_init' filepath='src/wfcqueue.c' line='49' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='__cds_wfcq_init'>
       <!-- parameter of type '__cds_wfcq_head*' -->
-      <parameter type-id='type-id-27' name='head' filepath='src/wfcqueue.c' line='49' column='1'/>
+      <parameter type-id='type-id-24' name='head' filepath='src/wfcqueue.c' line='49' column='1'/>
       <!-- parameter of type 'cds_wfcq_tail*' -->
-      <parameter type-id='type-id-33' name='tail' filepath='src/wfcqueue.c' line='50' column='1'/>
+      <parameter type-id='type-id-30' name='tail' filepath='src/wfcqueue.c' line='50' column='1'/>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-20'/>
     </function-decl>
     <!-- void cds_wfcq_destroy(cds_wfcq_head*, cds_wfcq_tail*) -->
     <function-decl name='cds_wfcq_destroy' mangled-name='cds_wfcq_destroy' filepath='src/wfcqueue.c' line='43' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_wfcq_destroy'>
       <!-- parameter of type 'cds_wfcq_head*' -->
-      <parameter type-id='type-id-28' name='head' filepath='src/wfcqueue.c' line='43' column='1'/>
+      <parameter type-id='type-id-25' name='head' filepath='src/wfcqueue.c' line='75' column='1'/>
       <!-- parameter of type 'cds_wfcq_tail*' -->
-      <parameter type-id='type-id-33' name='tail' filepath='src/wfcqueue.c' line='44' column='1'/>
+      <parameter type-id='type-id-30' name='tail' filepath='src/wfcqueue.c' line='76' column='1'/>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-20'/>
     </function-decl>
     <!-- void cds_wfcq_init(cds_wfcq_head*, cds_wfcq_tail*) -->
     <function-decl name='cds_wfcq_init' mangled-name='cds_wfcq_init' filepath='src/wfcqueue.c' line='37' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_wfcq_init'>
       <!-- parameter of type 'cds_wfcq_head*' -->
-      <parameter type-id='type-id-28' name='head' filepath='src/wfcqueue.c' line='37' column='1'/>
+      <parameter type-id='type-id-25' name='head' filepath='src/wfcqueue.c' line='75' column='1'/>
       <!-- parameter of type 'cds_wfcq_tail*' -->
-      <parameter type-id='type-id-33' name='tail' filepath='src/wfcqueue.c' line='38' column='1'/>
+      <parameter type-id='type-id-30' name='tail' filepath='src/wfcqueue.c' line='76' column='1'/>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-20'/>
     </function-decl>
     <!-- void cds_wfcq_node_init(cds_wfcq_node*) -->
     <function-decl name='cds_wfcq_node_init' mangled-name='cds_wfcq_node_init' filepath='src/wfcqueue.c' line='32' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_wfcq_node_init'>
       <!-- parameter of type 'cds_wfcq_node*' -->
-      <parameter type-id='type-id-24' name='node' filepath='src/wfcqueue.c' line='32' column='1'/>
+      <parameter type-id='type-id-22' name='node' filepath='src/wfcqueue.c' line='32' column='1'/>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-20'/>
     </function-decl>
   </abi-instr>
   <abi-instr version='1.0' address-size='64' path='wfstack.c' comp-dir-path='src' language='LANG_C99'>
         <var-decl name='next' type-id='type-id-37' visibility='default' filepath='../include/urcu/wfstack.h' line='73' column='1'/>
       </data-member>
     </class-decl>
-    <!-- typedef __anonymous_union__ cds_wfs_stack_ptr_t -->
-    <typedef-decl name='cds_wfs_stack_ptr_t' type-id='type-id-38' filepath='../include/urcu/wfstack.h' line='103' column='1' id='type-id-39'/>
-    <!-- union {__cds_wfs_stack* _s; cds_wfs_stack* s;} -->
-    <union-decl name='__anonymous_union__' size-in-bits='64' is-anonymous='yes' visibility='default' filepath='../include/urcu/wfstack.h' line='100' column='1' id='type-id-38'>
+    <!-- cds_wfs_node* -->
+    <pointer-type-def type-id='type-id-36' size-in-bits='64' id='type-id-37'/>
+    <!-- cds_wfs_head* -->
+    <pointer-type-def type-id='type-id-35' size-in-bits='64' id='type-id-38'/>
+    <!-- union __anonymous_union__ -->
+    <union-decl name='__anonymous_union__' size-in-bits='64' is-anonymous='yes' visibility='default' filepath='../include/urcu/wfstack.h' line='100' column='1' id='type-id-39'>
       <data-member access='private'>
-        <!-- __cds_wfs_stack* _s -->
+        <!-- __cds_wfs_stack* __anonymous_union__::_s -->
         <var-decl name='_s' type-id='type-id-40' visibility='default' filepath='../include/urcu/wfstack.h' line='101' column='1'/>
       </data-member>
       <data-member access='private'>
-        <!-- cds_wfs_stack* s -->
+        <!-- cds_wfs_stack* __anonymous_union__::s -->
         <var-decl name='s' type-id='type-id-41' visibility='default' filepath='../include/urcu/wfstack.h' line='102' column='1'/>
       </data-member>
     </union-decl>
     <class-decl name='__cds_wfs_stack' size-in-bits='64' is-struct='yes' visibility='default' filepath='../include/urcu/wfstack.h' line='86' column='1' id='type-id-42'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- cds_wfs_head* __cds_wfs_stack::head -->
-        <var-decl name='head' type-id='type-id-43' visibility='default' filepath='../include/urcu/wfstack.h' line='87' column='1'/>
+        <var-decl name='head' type-id='type-id-38' visibility='default' filepath='../include/urcu/wfstack.h' line='87' column='1'/>
       </data-member>
     </class-decl>
+    <!-- __cds_wfs_stack* -->
+    <pointer-type-def type-id='type-id-42' size-in-bits='64' id='type-id-40'/>
     <!-- struct cds_wfs_stack -->
-    <class-decl name='cds_wfs_stack' size-in-bits='384' is-struct='yes' visibility='default' filepath='../include/urcu/wfstack.h' line='90' column='1' id='type-id-44'>
+    <class-decl name='cds_wfs_stack' size-in-bits='384' is-struct='yes' visibility='default' filepath='../include/urcu/wfstack.h' line='90' column='1' id='type-id-43'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- cds_wfs_head* cds_wfs_stack::head -->
-        <var-decl name='head' type-id='type-id-43' visibility='default' filepath='../include/urcu/wfstack.h' line='91' column='1'/>
+        <var-decl name='head' type-id='type-id-38' visibility='default' filepath='../include/urcu/wfstack.h' line='91' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='64'>
         <!-- pthread_mutex_t cds_wfs_stack::lock -->
-        <var-decl name='lock' type-id='type-id-14' visibility='default' filepath='../include/urcu/wfstack.h' line='92' column='1'/>
+        <var-decl name='lock' type-id='type-id-5' visibility='default' filepath='../include/urcu/wfstack.h' line='92' column='1'/>
       </data-member>
     </class-decl>
-    <!-- __cds_wfs_stack* -->
-    <pointer-type-def type-id='type-id-42' size-in-bits='64' id='type-id-40'/>
-    <!-- cds_wfs_head* -->
-    <pointer-type-def type-id='type-id-35' size-in-bits='64' id='type-id-43'/>
-    <!-- cds_wfs_node* -->
-    <pointer-type-def type-id='type-id-36' size-in-bits='64' id='type-id-37'/>
     <!-- cds_wfs_stack* -->
-    <pointer-type-def type-id='type-id-44' size-in-bits='64' id='type-id-41'/>
+    <pointer-type-def type-id='type-id-43' size-in-bits='64' id='type-id-41'/>
+    <!-- typedef __anonymous_union__ cds_wfs_stack_ptr_t -->
+    <typedef-decl name='cds_wfs_stack_ptr_t' type-id='type-id-39' filepath='../include/urcu/wfstack.h' line='103' column='1' id='type-id-44'/>
     <!-- cds_wfs_head* __cds_wfs_pop_all(cds_wfs_stack_ptr_t) -->
     <function-decl name='__cds_wfs_pop_all' mangled-name='__cds_wfs_pop_all' filepath='src/wfstack.c' line='126' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='__cds_wfs_pop_all'>
       <!-- parameter of type 'typedef cds_wfs_stack_ptr_t' -->
-      <parameter type-id='type-id-39' name='u_stack' filepath='src/wfstack.c' line='126' column='1'/>
+      <parameter type-id='type-id-44' name='u_stack' filepath='src/wfstack.c' line='126' column='1'/>
       <!-- cds_wfs_head* -->
-      <return type-id='type-id-43'/>
+      <return type-id='type-id-38'/>
     </function-decl>
     <!-- cds_wfs_node* __cds_wfs_pop_with_state_nonblocking(cds_wfs_stack_ptr_t, int*) -->
     <function-decl name='__cds_wfs_pop_with_state_nonblocking' mangled-name='__cds_wfs_pop_with_state_nonblocking' filepath='src/wfstack.c' line='120' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='__cds_wfs_pop_with_state_nonblocking'>
       <!-- parameter of type 'typedef cds_wfs_stack_ptr_t' -->
-      <parameter type-id='type-id-39' name='u_stack' filepath='src/wfstack.c' line='120' column='1'/>
+      <parameter type-id='type-id-44' name='u_stack' filepath='src/wfstack.c' line='120' column='1'/>
       <!-- parameter of type 'int*' -->
-      <parameter type-id='type-id-34' name='state' filepath='src/wfstack.c' line='121' column='1'/>
+      <parameter type-id='type-id-33' name='state' filepath='src/wfstack.c' line='121' column='1'/>
       <!-- cds_wfs_node* -->
       <return type-id='type-id-37'/>
     </function-decl>
     <!-- cds_wfs_node* __cds_wfs_pop_nonblocking(cds_wfs_stack_ptr_t) -->
     <function-decl name='__cds_wfs_pop_nonblocking' mangled-name='__cds_wfs_pop_nonblocking' filepath='src/wfstack.c' line='114' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='__cds_wfs_pop_nonblocking'>
       <!-- parameter of type 'typedef cds_wfs_stack_ptr_t' -->
-      <parameter type-id='type-id-39' name='u_stack' filepath='src/wfstack.c' line='114' column='1'/>
+      <parameter type-id='type-id-44' name='u_stack' filepath='src/wfstack.c' line='114' column='1'/>
       <!-- cds_wfs_node* -->
       <return type-id='type-id-37'/>
     </function-decl>
     <!-- cds_wfs_node* __cds_wfs_pop_with_state_blocking(cds_wfs_stack_ptr_t, int*) -->
     <function-decl name='__cds_wfs_pop_with_state_blocking' mangled-name='__cds_wfs_pop_with_state_blocking' filepath='src/wfstack.c' line='108' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='__cds_wfs_pop_with_state_blocking'>
       <!-- parameter of type 'typedef cds_wfs_stack_ptr_t' -->
-      <parameter type-id='type-id-39' name='u_stack' filepath='src/wfstack.c' line='108' column='1'/>
+      <parameter type-id='type-id-44' name='u_stack' filepath='src/wfstack.c' line='120' column='1'/>
       <!-- parameter of type 'int*' -->
-      <parameter type-id='type-id-34' name='state' filepath='src/wfstack.c' line='109' column='1'/>
+      <parameter type-id='type-id-33' name='state' filepath='src/wfstack.c' line='121' column='1'/>
       <!-- cds_wfs_node* -->
       <return type-id='type-id-37'/>
     </function-decl>
     <!-- cds_wfs_node* __cds_wfs_pop_blocking(cds_wfs_stack_ptr_t) -->
     <function-decl name='__cds_wfs_pop_blocking' mangled-name='__cds_wfs_pop_blocking' filepath='src/wfstack.c' line='102' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='__cds_wfs_pop_blocking'>
       <!-- parameter of type 'typedef cds_wfs_stack_ptr_t' -->
-      <parameter type-id='type-id-39' name='u_stack' filepath='src/wfstack.c' line='102' column='1'/>
+      <parameter type-id='type-id-44' name='u_stack' filepath='src/wfstack.c' line='114' column='1'/>
       <!-- cds_wfs_node* -->
       <return type-id='type-id-37'/>
     </function-decl>
       <!-- parameter of type 'cds_wfs_stack*' -->
       <parameter type-id='type-id-41' name='s' filepath='src/wfstack.c' line='97' column='1'/>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-20'/>
     </function-decl>
     <!-- void cds_wfs_pop_lock(cds_wfs_stack*) -->
     <function-decl name='cds_wfs_pop_lock' mangled-name='cds_wfs_pop_lock' filepath='src/wfstack.c' line='92' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_wfs_pop_lock'>
       <!-- parameter of type 'cds_wfs_stack*' -->
-      <parameter type-id='type-id-41' name='s' filepath='src/wfstack.c' line='92' column='1'/>
+      <parameter type-id='type-id-41' name='s' filepath='src/wfstack.c' line='97' column='1'/>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-20'/>
     </function-decl>
     <!-- cds_wfs_node* cds_wfs_next_nonblocking(cds_wfs_node*) -->
     <function-decl name='cds_wfs_next_nonblocking' mangled-name='cds_wfs_next_nonblocking' filepath='src/wfstack.c' line='87' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_wfs_next_nonblocking'>
     <!-- cds_wfs_node* cds_wfs_next_blocking(cds_wfs_node*) -->
     <function-decl name='cds_wfs_next_blocking' mangled-name='cds_wfs_next_blocking' filepath='src/wfstack.c' line='82' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_wfs_next_blocking'>
       <!-- parameter of type 'cds_wfs_node*' -->
-      <parameter type-id='type-id-37' name='node' filepath='src/wfstack.c' line='82' column='1'/>
+      <parameter type-id='type-id-37' name='node' filepath='src/wfstack.c' line='87' column='1'/>
       <!-- cds_wfs_node* -->
       <return type-id='type-id-37'/>
     </function-decl>
     <!-- cds_wfs_node* cds_wfs_first(cds_wfs_head*) -->
     <function-decl name='cds_wfs_first' mangled-name='cds_wfs_first' filepath='src/wfstack.c' line='77' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_wfs_first'>
       <!-- parameter of type 'cds_wfs_head*' -->
-      <parameter type-id='type-id-43' name='head' filepath='src/wfstack.c' line='77' column='1'/>
+      <parameter type-id='type-id-38' name='head' filepath='src/wfstack.c' line='77' column='1'/>
       <!-- cds_wfs_node* -->
       <return type-id='type-id-37'/>
     </function-decl>
       <!-- parameter of type 'cds_wfs_stack*' -->
       <parameter type-id='type-id-41' name='s' filepath='src/wfstack.c' line='72' column='1'/>
       <!-- cds_wfs_head* -->
-      <return type-id='type-id-43'/>
+      <return type-id='type-id-38'/>
     </function-decl>
     <!-- cds_wfs_node* cds_wfs_pop_with_state_blocking(cds_wfs_stack*, int*) -->
     <function-decl name='cds_wfs_pop_with_state_blocking' mangled-name='cds_wfs_pop_with_state_blocking' filepath='src/wfstack.c' line='67' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_wfs_pop_with_state_blocking'>
       <!-- parameter of type 'cds_wfs_stack*' -->
       <parameter type-id='type-id-41' name='s' filepath='src/wfstack.c' line='67' column='1'/>
       <!-- parameter of type 'int*' -->
-      <parameter type-id='type-id-34' name='state' filepath='src/wfstack.c' line='67' column='1'/>
+      <parameter type-id='type-id-33' name='state' filepath='src/wfstack.c' line='67' column='1'/>
       <!-- cds_wfs_node* -->
       <return type-id='type-id-37'/>
     </function-decl>
     <!-- int cds_wfs_push(cds_wfs_stack_ptr_t, cds_wfs_node*) -->
     <function-decl name='cds_wfs_push' mangled-name='cds_wfs_push' filepath='src/wfstack.c' line='56' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_wfs_push'>
       <!-- parameter of type 'typedef cds_wfs_stack_ptr_t' -->
-      <parameter type-id='type-id-39' name='u_stack' filepath='src/wfstack.c' line='56' column='1'/>
+      <parameter type-id='type-id-44' name='u_stack' filepath='src/wfstack.c' line='56' column='1'/>
       <!-- parameter of type 'cds_wfs_node*' -->
       <parameter type-id='type-id-37' name='node' filepath='src/wfstack.c' line='56' column='1'/>
       <!-- int -->
-      <return type-id='type-id-5'/>
+      <return type-id='type-id-10'/>
     </function-decl>
     <!-- bool cds_wfs_empty(cds_wfs_stack_ptr_t) -->
     <function-decl name='cds_wfs_empty' mangled-name='cds_wfs_empty' filepath='src/wfstack.c' line='51' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_wfs_empty'>
       <!-- parameter of type 'typedef cds_wfs_stack_ptr_t' -->
-      <parameter type-id='type-id-39' name='u_stack' filepath='src/wfstack.c' line='51' column='1'/>
+      <parameter type-id='type-id-44' name='u_stack' filepath='src/wfstack.c' line='51' column='1'/>
       <!-- bool -->
-      <return type-id='type-id-21'/>
+      <return type-id='type-id-34'/>
     </function-decl>
     <!-- void __cds_wfs_init(__cds_wfs_stack*) -->
     <function-decl name='__cds_wfs_init' mangled-name='__cds_wfs_init' filepath='src/wfstack.c' line='46' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='__cds_wfs_init'>
       <!-- parameter of type '__cds_wfs_stack*' -->
       <parameter type-id='type-id-40' name='s' filepath='src/wfstack.c' line='46' column='1'/>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-20'/>
     </function-decl>
     <!-- void cds_wfs_destroy(cds_wfs_stack*) -->
     <function-decl name='cds_wfs_destroy' mangled-name='cds_wfs_destroy' filepath='src/wfstack.c' line='41' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_wfs_destroy'>
       <!-- parameter of type 'cds_wfs_stack*' -->
-      <parameter type-id='type-id-41' name='s' filepath='src/wfstack.c' line='41' column='1'/>
+      <parameter type-id='type-id-41' name='s' filepath='src/wfstack.c' line='97' column='1'/>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-20'/>
     </function-decl>
     <!-- void cds_wfs_init(cds_wfs_stack*) -->
     <function-decl name='cds_wfs_init' mangled-name='cds_wfs_init' filepath='src/wfstack.c' line='36' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_wfs_init'>
       <!-- parameter of type 'cds_wfs_stack*' -->
-      <parameter type-id='type-id-41' name='s' filepath='src/wfstack.c' line='36' column='1'/>
+      <parameter type-id='type-id-41' name='s' filepath='src/wfstack.c' line='97' column='1'/>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-20'/>
     </function-decl>
     <!-- void cds_wfs_node_init(cds_wfs_node*) -->
     <function-decl name='cds_wfs_node_init' mangled-name='cds_wfs_node_init' filepath='src/wfstack.c' line='31' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cds_wfs_node_init'>
       <!-- parameter of type 'cds_wfs_node*' -->
       <parameter type-id='type-id-37' name='node' filepath='src/wfstack.c' line='31' column='1'/>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-20'/>
     </function-decl>
   </abi-instr>
   <abi-instr version='1.0' address-size='64' path='compat_futex.c' comp-dir-path='src' language='LANG_C99'>
-
-
-    <!-- char[48] -->
-    <array-type-def dimensions='1' type-id='type-id-1' size-in-bits='384' id='type-id-45'>
-      <!-- <anonymous range>[48] -->
-      <subrange length='48' type-id='type-id-3' id='type-id-46'/>
-
-    </array-type-def>
-    <!-- long long int -->
-    <type-decl name='long long int' size-in-bits='64' id='type-id-47'/>
-    <!-- long long unsigned int -->
-    <type-decl name='long long unsigned int' size-in-bits='64' id='type-id-48'/>
-    <!-- unsigned int[2] -->
-    <array-type-def dimensions='1' type-id='type-id-8' size-in-bits='64' id='type-id-49'>
-      <!-- <anonymous range>[2] -->
-      <subrange length='2' type-id='type-id-3' id='type-id-50'/>
-
-    </array-type-def>
-    <!-- typedef __anonymous_union__ pthread_cond_t -->
-    <typedef-decl name='pthread_cond_t' type-id='type-id-51' filepath='/usr/include/bits/pthreadtypes.h' line='80' column='1' id='type-id-52'/>
-    <!-- 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-51'>
+    <!-- pthread_mutex_t __urcu_compat_futex_lock -->
+    <var-decl name='__urcu_compat_futex_lock' type-id='type-id-5' mangled-name='__urcu_compat_futex_lock' visibility='default' filepath='src/compat_futex.c' line='44' column='1' elf-symbol-id='__urcu_compat_futex_lock'/>
+    <!-- union __anonymous_union__ -->
+    <union-decl name='__anonymous_union__' size-in-bits='384' is-anonymous='yes' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h' line='75' column='1' id='type-id-45'>
       <data-member access='private'>
-        <!-- __pthread_cond_s __data -->
-        <var-decl name='__data' type-id='type-id-53' visibility='default' filepath='/usr/include/bits/pthreadtypes.h' line='77' column='1'/>
+        <!-- __pthread_cond_s __anonymous_union__::__data -->
+        <var-decl name='__data' type-id='type-id-46' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h' line='77' column='1'/>
       </data-member>
       <data-member access='private'>
-        <!-- char __size[48] -->
-        <var-decl name='__size' type-id='type-id-45' visibility='default' filepath='/usr/include/bits/pthreadtypes.h' line='78' column='1'/>
+        <!-- char __anonymous_union__::__size[48] -->
+        <var-decl name='__size' type-id='type-id-47' visibility='default' filepath='/usr/include/x86_64-linux-gnu/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-47' visibility='default' filepath='/usr/include/bits/pthreadtypes.h' line='79' column='1'/>
+        <!-- long long int __anonymous_union__::__align -->
+        <var-decl name='__align' type-id='type-id-48' visibility='default' filepath='/usr/include/x86_64-linux-gnu/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-53'>
+    <class-decl name='__pthread_cond_s' size-in-bits='384' is-struct='yes' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='171' column='1' id='type-id-46'>
       <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-54' visibility='default'/>
+        <!-- __anonymous_union__  -->
+        <var-decl name='' type-id='type-id-49' 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-49' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='112' column='1'/>
+        <var-decl name='__g_refs' type-id='type-id-50' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='191' 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-49' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='113' column='1'/>
+        <var-decl name='__g_size' type-id='type-id-50' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='192' 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'/>
+        <var-decl name='__g1_orig_size' type-id='type-id-11' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='193' 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'/>
+        <var-decl name='__wrefs' type-id='type-id-11' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='194' 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-49' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='116' column='1'/>
+        <var-decl name='__g_signals' type-id='type-id-50' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='195' 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-54'>
+    <!-- union __anonymous_union__ -->
+    <union-decl name='__anonymous_union__' size-in-bits='64' is-anonymous='yes' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='173' column='1' id='type-id-49'>
       <data-member access='private'>
-        <!-- long long unsigned int __wseq -->
-        <var-decl name='__wseq' type-id='type-id-48' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='96' column='1'/>
+        <!-- long long unsigned int __anonymous_union__::__wseq -->
+        <var-decl name='__wseq' type-id='type-id-51' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='175' column='1'/>
       </data-member>
       <data-member access='private'>
-        <!-- struct {unsigned int __low; unsigned int __high;} __wseq32 -->
-        <var-decl name='__wseq32' type-id='type-id-55' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='101' column='1'/>
+        <!-- __anonymous_struct__ __anonymous_union__::__wseq32 -->
+        <var-decl name='__wseq32' type-id='type-id-52' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='180' 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-55'>
+    <!-- long long unsigned int -->
+    <type-decl name='long long unsigned int' size-in-bits='64' id='type-id-51'/>
+    <!-- struct __anonymous_struct__ -->
+    <class-decl name='__anonymous_struct__' size-in-bits='64' is-struct='yes' is-anonymous='yes' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='176' column='1' id='type-id-52'>
       <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'/>
+        <!-- unsigned int __anonymous_struct__::__low -->
+        <var-decl name='__low' type-id='type-id-11' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='178' 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'/>
+        <!-- unsigned int __anonymous_struct__::__high -->
+        <var-decl name='__high' type-id='type-id-11' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='179' column='1'/>
       </data-member>
     </class-decl>
-    <!-- typedef __int32_t int32_t -->
-    <typedef-decl name='int32_t' type-id='type-id-56' filepath='/usr/include/bits/stdint-intn.h' line='26' column='1' id='type-id-57'/>
+
+    <!-- unsigned int[2] -->
+    <array-type-def dimensions='1' type-id='type-id-11' size-in-bits='64' id='type-id-50'>
+      <!-- <anonymous range>[2] -->
+      <subrange length='2' type-id='type-id-17' id='type-id-53'/>
+
+    </array-type-def>
+
+    <!-- char[48] -->
+    <array-type-def dimensions='1' type-id='type-id-16' size-in-bits='384' id='type-id-47'>
+      <!-- <anonymous range>[48] -->
+      <subrange length='48' type-id='type-id-17' id='type-id-54'/>
+
+    </array-type-def>
+    <!-- long long int -->
+    <type-decl name='long long int' size-in-bits='64' id='type-id-48'/>
+    <!-- typedef __anonymous_union__ pthread_cond_t -->
+    <typedef-decl name='pthread_cond_t' type-id='type-id-45' filepath='/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h' line='80' column='1' id='type-id-55'/>
+    <!-- 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='src/compat_futex.c' line='46' column='1' elf-symbol-id='__urcu_compat_futex_cond'/>
     <!-- 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-56'/>
+    <typedef-decl name='__int32_t' type-id='type-id-10' filepath='/usr/include/x86_64-linux-gnu/bits/types.h' line='40' column='1' id='type-id-56'/>
+    <!-- typedef __int32_t int32_t -->
+    <typedef-decl name='int32_t' type-id='type-id-56' filepath='/usr/include/x86_64-linux-gnu/bits/stdint-intn.h' line='26' column='1' id='type-id-57'/>
+    <!-- int32_t* -->
+    <pointer-type-def type-id='type-id-57' size-in-bits='64' id='type-id-58'/>
     <!-- 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-58'>
+    <class-decl name='timespec' size-in-bits='128' is-struct='yes' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h' line='9' 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-59' visibility='default' filepath='/usr/include/bits/types/struct_timespec.h' line='12' column='1'/>
+        <var-decl name='tv_sec' type-id='type-id-60' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h' line='11' 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-60' visibility='default' filepath='/usr/include/bits/types/struct_timespec.h' line='16' column='1'/>
+        <var-decl name='tv_nsec' type-id='type-id-61' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h' line='12' 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-59'/>
+    <typedef-decl name='__time_t' type-id='type-id-9' filepath='/usr/include/x86_64-linux-gnu/bits/types.h' line='148' 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-60'/>
+    <typedef-decl name='__syscall_slong_t' type-id='type-id-9' filepath='/usr/include/x86_64-linux-gnu/bits/types.h' line='184' column='1' id='type-id-61'/>
     <!-- const timespec -->
-    <qualified-type-def type-id='type-id-58' const='yes' id='type-id-61'/>
+    <qualified-type-def type-id='type-id-59' const='yes' id='type-id-62'/>
     <!-- const timespec* -->
-    <pointer-type-def type-id='type-id-61' size-in-bits='64' id='type-id-62'/>
-    <!-- int32_t* -->
-    <pointer-type-def type-id='type-id-57' size-in-bits='64' id='type-id-63'/>
-    <!-- pthread_mutex_t __urcu_compat_futex_lock -->
-    <var-decl name='__urcu_compat_futex_lock' type-id='type-id-14' mangled-name='__urcu_compat_futex_lock' visibility='default' filepath='src/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-52' mangled-name='__urcu_compat_futex_cond' visibility='default' filepath='src/compat_futex.c' line='46' column='1' elf-symbol-id='__urcu_compat_futex_cond'/>
+    <pointer-type-def type-id='type-id-62' size-in-bits='64' id='type-id-63'/>
     <!-- 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='src/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-63' name='uaddr' filepath='src/compat_futex.c' line='118' column='1'/>
+      <parameter type-id='type-id-58' name='uaddr' filepath='src/compat_futex.c' line='118' column='1'/>
       <!-- parameter of type 'int' -->
-      <parameter type-id='type-id-5' name='op' filepath='src/compat_futex.c' line='118' column='1'/>
+      <parameter type-id='type-id-10' name='op' filepath='src/compat_futex.c' line='118' column='1'/>
       <!-- parameter of type 'typedef int32_t' -->
       <parameter type-id='type-id-57' name='val' filepath='src/compat_futex.c' line='118' column='1'/>
       <!-- parameter of type 'const timespec*' -->
-      <parameter type-id='type-id-62' name='timeout' filepath='src/compat_futex.c' line='119' column='1'/>
+      <parameter type-id='type-id-63' name='timeout' filepath='src/compat_futex.c' line='119' column='1'/>
       <!-- parameter of type 'int32_t*' -->
-      <parameter type-id='type-id-63' name='uaddr2' filepath='src/compat_futex.c' line='119' column='1'/>
+      <parameter type-id='type-id-58' name='uaddr2' filepath='src/compat_futex.c' line='119' column='1'/>
       <!-- parameter of type 'typedef int32_t' -->
       <parameter type-id='type-id-57' name='val3' filepath='src/compat_futex.c' line='119' column='1'/>
       <!-- int -->
-      <return type-id='type-id-5'/>
+      <return type-id='type-id-10'/>
     </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='src/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-63' name='uaddr' filepath='src/compat_futex.c' line='54' column='1'/>
+      <parameter type-id='type-id-58' name='uaddr' filepath='src/compat_futex.c' line='54' column='1'/>
       <!-- parameter of type 'int' -->
-      <parameter type-id='type-id-5' name='op' filepath='src/compat_futex.c' line='54' column='1'/>
+      <parameter type-id='type-id-10' name='op' filepath='src/compat_futex.c' line='54' column='1'/>
       <!-- parameter of type 'typedef int32_t' -->
       <parameter type-id='type-id-57' name='val' filepath='src/compat_futex.c' line='54' column='1'/>
       <!-- parameter of type 'const timespec*' -->
-      <parameter type-id='type-id-62' name='timeout' filepath='src/compat_futex.c' line='55' column='1'/>
+      <parameter type-id='type-id-63' name='timeout' filepath='src/compat_futex.c' line='55' column='1'/>
       <!-- parameter of type 'int32_t*' -->
-      <parameter type-id='type-id-63' name='uaddr2' filepath='src/compat_futex.c' line='55' column='1'/>
+      <parameter type-id='type-id-58' name='uaddr2' filepath='src/compat_futex.c' line='55' column='1'/>
       <!-- parameter of type 'typedef int32_t' -->
       <parameter type-id='type-id-57' name='val3' filepath='src/compat_futex.c' line='55' column='1'/>
       <!-- int -->
-      <return type-id='type-id-5'/>
+      <return type-id='type-id-10'/>
     </function-decl>
   </abi-instr>
 </abi-corpus>
index f28b67ccf5e972875a7d43ac11b9db94655d2cba..6971fb89910ac4aae541f9fa13bdb10c34d26ef6 100644 (file)
@@ -1,11 +1,14 @@
 <abi-corpus architecture='elf-amd-x86_64' soname='liburcu-mb.so.6'>
   <elf-needed>
-    <dependency name='liburcu-common.so.6'/>
     <dependency name='libpthread.so.0'/>
     <dependency name='libc.so.6'/>
     <dependency name='ld-linux-x86-64.so.2'/>
   </elf-needed>
   <elf-function-symbols>
+    <!-- _fini -->
+    <elf-symbol name='_fini' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- _init -->
+    <elf-symbol name='_init' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
     <!-- call_rcu_after_fork_child_mb -->
     <elf-symbol name='call_rcu_after_fork_child_mb' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
     <!-- call_rcu_after_fork_parent_mb -->
     <elf-symbol name='rcu_reader_mb' size='256' type='tls-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
   </elf-variable-symbols>
   <abi-instr version='1.0' address-size='64' path='urcu.c' comp-dir-path='src' 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_mb -->
-    <class-decl name='rcu_gp_mb' size-in-bits='1024' is-struct='yes' visibility='default' filepath='../include/urcu/static/urcu.h' line='119' column='1' id='type-id-10'>
+    <class-decl name='rcu_gp_mb' size-in-bits='1024' is-struct='yes' visibility='default' filepath='../include/urcu/static/urcu.h' line='119' column='1' id='type-id-1'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- unsigned long int rcu_gp_mb::ctr -->
-        <var-decl name='ctr' type-id='type-id-3' visibility='default' filepath='../include/urcu/static/urcu.h' line='127' column='1'/>
+        <var-decl name='ctr' type-id='type-id-2' visibility='default' filepath='../include/urcu/static/urcu.h' line='127' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='64'>
         <!-- int32_t rcu_gp_mb::futex -->
-        <var-decl name='futex' type-id='type-id-11' visibility='default' filepath='../include/urcu/static/urcu.h' line='129' column='1'/>
+        <var-decl name='futex' type-id='type-id-3' visibility='default' filepath='../include/urcu/static/urcu.h' line='129' column='1'/>
       </data-member>
     </class-decl>
-    <!-- typedef __int32_t int32_t -->
-    <typedef-decl name='int32_t' type-id='type-id-12' filepath='/usr/include/bits/stdint-intn.h' line='26' column='1' id='type-id-11'/>
+    <!-- unsigned long int -->
+    <type-decl name='unsigned long int' size-in-bits='64' id='type-id-2'/>
+    <!-- int -->
+    <type-decl name='int' size-in-bits='32' id='type-id-4'/>
     <!-- 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-12'/>
+    <typedef-decl name='__int32_t' type-id='type-id-4' filepath='/usr/include/x86_64-linux-gnu/bits/types.h' line='40' column='1' id='type-id-5'/>
+    <!-- typedef __int32_t int32_t -->
+    <typedef-decl name='int32_t' type-id='type-id-5' filepath='/usr/include/x86_64-linux-gnu/bits/stdint-intn.h' line='26' column='1' id='type-id-3'/>
+    <!-- rcu_gp_mb rcu_gp_mb -->
+    <var-decl name='rcu_gp_mb' type-id='type-id-1' mangled-name='rcu_gp_mb' visibility='default' filepath='../include/urcu/static/urcu.h' line='132' column='1' elf-symbol-id='rcu_gp_mb'/>
     <!-- struct rcu_reader_mb -->
-    <class-decl name='rcu_reader_mb' size-in-bits='2048' is-struct='yes' visibility='default' filepath='../include/urcu/static/urcu.h' line='134' column='1' id='type-id-13'>
+    <class-decl name='rcu_reader_mb' size-in-bits='2048' is-struct='yes' visibility='default' filepath='../include/urcu/static/urcu.h' line='134' column='1' id='type-id-6'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- unsigned long int rcu_reader_mb::ctr -->
-        <var-decl name='ctr' type-id='type-id-3' visibility='default' filepath='../include/urcu/static/urcu.h' line='136' column='1'/>
+        <var-decl name='ctr' type-id='type-id-2' visibility='default' filepath='../include/urcu/static/urcu.h' line='136' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='64'>
         <!-- char rcu_reader_mb::need_mb -->
-        <var-decl name='need_mb' type-id='type-id-1' visibility='default' filepath='../include/urcu/static/urcu.h' line='137' column='1'/>
+        <var-decl name='need_mb' type-id='type-id-7' visibility='default' filepath='../include/urcu/static/urcu.h' line='137' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='1024'>
         <!-- cds_list_head rcu_reader_mb::node -->
-        <var-decl name='node' type-id='type-id-14' visibility='default' filepath='../include/urcu/static/urcu.h' line='139' column='1'/>
+        <var-decl name='node' type-id='type-id-8' visibility='default' filepath='../include/urcu/static/urcu.h' line='139' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='1152'>
         <!-- pthread_t rcu_reader_mb::tid -->
-        <var-decl name='tid' type-id='type-id-15' visibility='default' filepath='../include/urcu/static/urcu.h' line='140' column='1'/>
+        <var-decl name='tid' type-id='type-id-9' visibility='default' filepath='../include/urcu/static/urcu.h' line='140' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='31'>
         <!-- unsigned int rcu_reader_mb::registered -->
-        <var-decl name='registered' type-id='type-id-8' visibility='default' filepath='../include/urcu/static/urcu.h' line='142' column='1'/>
+        <var-decl name='registered' type-id='type-id-10' visibility='default' filepath='../include/urcu/static/urcu.h' line='142' column='1'/>
       </data-member>
     </class-decl>
+    <!-- char -->
+    <type-decl name='char' size-in-bits='8' id='type-id-7'/>
     <!-- struct cds_list_head -->
-    <class-decl name='cds_list_head' size-in-bits='128' is-struct='yes' visibility='default' filepath='../include/urcu/list.h' line='35' column='1' id='type-id-14'>
+    <class-decl name='cds_list_head' size-in-bits='128' is-struct='yes' visibility='default' filepath='../include/urcu/list.h' line='35' column='1' id='type-id-8'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- cds_list_head* cds_list_head::next -->
-        <var-decl name='next' type-id='type-id-16' visibility='default' filepath='../include/urcu/list.h' line='36' column='1'/>
+        <var-decl name='next' type-id='type-id-11' visibility='default' filepath='../include/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-16' visibility='default' filepath='../include/urcu/list.h' line='36' column='1'/>
+        <var-decl name='prev' type-id='type-id-11' visibility='default' filepath='../include/urcu/list.h' line='36' column='1'/>
       </data-member>
     </class-decl>
+    <!-- cds_list_head* -->
+    <pointer-type-def type-id='type-id-8' size-in-bits='64' id='type-id-11'/>
     <!-- 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-15'/>
+    <typedef-decl name='pthread_t' type-id='type-id-2' filepath='/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h' line='27' column='1' id='type-id-9'/>
+    <!-- unsigned int -->
+    <type-decl name='unsigned int' size-in-bits='32' id='type-id-10'/>
+    <!-- rcu_reader_mb rcu_reader_mb -->
+    <var-decl name='rcu_reader_mb' type-id='type-id-6' mangled-name='rcu_reader_mb' visibility='default' filepath='../include/urcu/static/urcu.h' line='145' column='1' elf-symbol-id='rcu_reader_mb'/>
     <!-- struct rcu_flavor_struct -->
-    <class-decl name='rcu_flavor_struct' size-in-bits='896' is-struct='yes' visibility='default' filepath='../src/urcu-flavor.h' line='40' column='1' id='type-id-17'>
+    <class-decl name='rcu_flavor_struct' size-in-bits='896' is-struct='yes' visibility='default' filepath='../src/urcu-flavor.h' line='40' column='1' id='type-id-12'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- void ()* rcu_flavor_struct::read_lock -->
-        <var-decl name='read_lock' type-id='type-id-18' visibility='default' filepath='../src/urcu-flavor.h' line='41' column='1'/>
+        <var-decl name='read_lock' type-id='type-id-13' visibility='default' filepath='../src/urcu-flavor.h' line='41' 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-18' visibility='default' filepath='../src/urcu-flavor.h' line='42' column='1'/>
+        <var-decl name='read_unlock' type-id='type-id-13' visibility='default' filepath='../src/urcu-flavor.h' line='42' 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-19' visibility='default' filepath='../src/urcu-flavor.h' line='43' column='1'/>
+        <var-decl name='read_ongoing' type-id='type-id-14' visibility='default' filepath='../src/urcu-flavor.h' line='43' 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-18' visibility='default' filepath='../src/urcu-flavor.h' line='44' column='1'/>
+        <var-decl name='read_quiescent_state' type-id='type-id-13' visibility='default' filepath='../src/urcu-flavor.h' line='44' 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-20' visibility='default' filepath='../src/urcu-flavor.h' line='45' column='1'/>
+        <var-decl name='update_call_rcu' type-id='type-id-15' visibility='default' filepath='../src/urcu-flavor.h' line='45' 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-18' visibility='default' filepath='../src/urcu-flavor.h' line='47' column='1'/>
+        <var-decl name='update_synchronize_rcu' type-id='type-id-13' visibility='default' filepath='../src/urcu-flavor.h' line='47' 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-21' visibility='default' filepath='../src/urcu-flavor.h' line='48' column='1'/>
+        <var-decl name='update_defer_rcu' type-id='type-id-16' visibility='default' filepath='../src/urcu-flavor.h' line='48' 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-18' visibility='default' filepath='../src/urcu-flavor.h' line='50' column='1'/>
+        <var-decl name='thread_offline' type-id='type-id-13' visibility='default' filepath='../src/urcu-flavor.h' line='50' 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-18' visibility='default' filepath='../src/urcu-flavor.h' line='51' column='1'/>
+        <var-decl name='thread_online' type-id='type-id-13' visibility='default' filepath='../src/urcu-flavor.h' line='51' 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-18' visibility='default' filepath='../src/urcu-flavor.h' line='52' column='1'/>
+        <var-decl name='register_thread' type-id='type-id-13' visibility='default' filepath='../src/urcu-flavor.h' line='52' 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-18' visibility='default' filepath='../src/urcu-flavor.h' line='53' column='1'/>
+        <var-decl name='unregister_thread' type-id='type-id-13' visibility='default' filepath='../src/urcu-flavor.h' line='53' 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-18' visibility='default' filepath='../src/urcu-flavor.h' line='55' column='1'/>
+        <var-decl name='barrier' type-id='type-id-13' visibility='default' filepath='../src/urcu-flavor.h' line='55' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='768'>
         <!-- void (urcu_atfork*)* rcu_flavor_struct::register_rculfhash_atfork -->
-        <var-decl name='register_rculfhash_atfork' type-id='type-id-22' visibility='default' filepath='../src/urcu-flavor.h' line='57' column='1'/>
+        <var-decl name='register_rculfhash_atfork' type-id='type-id-17' visibility='default' filepath='../src/urcu-flavor.h' line='57' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='832'>
         <!-- void (urcu_atfork*)* rcu_flavor_struct::unregister_rculfhash_atfork -->
-        <var-decl name='unregister_rculfhash_atfork' type-id='type-id-22' visibility='default' filepath='../src/urcu-flavor.h' line='58' column='1'/>
+        <var-decl name='unregister_rculfhash_atfork' type-id='type-id-17' visibility='default' filepath='../src/urcu-flavor.h' line='58' column='1'/>
       </data-member>
     </class-decl>
+    <!-- void -->
+    <type-decl name='void' id='type-id-18'/>
+    <!-- void ()* -->
+    <pointer-type-def type-id='type-id-19' size-in-bits='64' id='type-id-13'/>
+    <!-- int ()* -->
+    <pointer-type-def type-id='type-id-20' size-in-bits='64' id='type-id-14'/>
     <!-- struct rcu_head -->
-    <class-decl name='rcu_head' size-in-bits='128' is-struct='yes' visibility='default' filepath='../src/urcu-call-rcu.h' line='59' column='1' id='type-id-23'>
+    <class-decl name='rcu_head' size-in-bits='128' is-struct='yes' visibility='default' filepath='../src/urcu-call-rcu.h' line='59' column='1' id='type-id-21'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- cds_wfcq_node rcu_head::next -->
-        <var-decl name='next' type-id='type-id-24' visibility='default' filepath='../src/urcu-call-rcu.h' line='60' column='1'/>
+        <var-decl name='next' type-id='type-id-22' visibility='default' filepath='../src/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-25' visibility='default' filepath='../src/urcu-call-rcu.h' line='61' column='1'/>
+        <var-decl name='func' type-id='type-id-23' visibility='default' filepath='../src/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='../include/urcu/wfcqueue.h' line='59' column='1' id='type-id-24'>
+    <class-decl name='cds_wfcq_node' size-in-bits='64' is-struct='yes' visibility='default' filepath='../include/urcu/wfcqueue.h' line='59' column='1' id='type-id-22'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- cds_wfcq_node* cds_wfcq_node::next -->
-        <var-decl name='next' type-id='type-id-26' visibility='default' filepath='../include/urcu/wfcqueue.h' line='60' column='1'/>
+        <var-decl name='next' type-id='type-id-24' visibility='default' filepath='../include/urcu/wfcqueue.h' line='60' column='1'/>
       </data-member>
     </class-decl>
+    <!-- cds_wfcq_node* -->
+    <pointer-type-def type-id='type-id-22' size-in-bits='64' id='type-id-24'/>
+    <!-- rcu_head* -->
+    <pointer-type-def type-id='type-id-21' size-in-bits='64' id='type-id-25'/>
+    <!-- void (rcu_head*)* -->
+    <pointer-type-def type-id='type-id-26' size-in-bits='64' id='type-id-23'/>
+    <!-- void (rcu_head*, void (rcu_head*)*)* -->
+    <pointer-type-def type-id='type-id-27' size-in-bits='64' id='type-id-15'/>
+    <!-- void* -->
+    <pointer-type-def type-id='type-id-18' size-in-bits='64' id='type-id-28'/>
+    <!-- void (void*)* -->
+    <pointer-type-def type-id='type-id-29' size-in-bits='64' id='type-id-30'/>
+    <!-- void (void (void*)*, void*)* -->
+    <pointer-type-def type-id='type-id-31' size-in-bits='64' id='type-id-16'/>
     <!-- struct urcu_atfork -->
-    <class-decl name='urcu_atfork' size-in-bits='256' is-struct='yes' visibility='default' filepath='../src/urcu-flavor.h' line='30' column='1' id='type-id-27'>
+    <class-decl name='urcu_atfork' size-in-bits='256' is-struct='yes' visibility='default' filepath='../src/urcu-flavor.h' line='30' column='1' id='type-id-32'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- void (void*)* urcu_atfork::before_fork -->
-        <var-decl name='before_fork' type-id='type-id-28' visibility='default' filepath='../src/urcu-flavor.h' line='31' column='1'/>
+        <var-decl name='before_fork' type-id='type-id-30' visibility='default' filepath='../src/urcu-flavor.h' line='31' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='64'>
         <!-- void (void*)* urcu_atfork::after_fork_parent -->
-        <var-decl name='after_fork_parent' type-id='type-id-28' visibility='default' filepath='../src/urcu-flavor.h' line='32' column='1'/>
+        <var-decl name='after_fork_parent' type-id='type-id-30' visibility='default' filepath='../src/urcu-flavor.h' line='32' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='128'>
         <!-- void (void*)* urcu_atfork::after_fork_child -->
-        <var-decl name='after_fork_child' type-id='type-id-28' visibility='default' filepath='../src/urcu-flavor.h' line='33' column='1'/>
+        <var-decl name='after_fork_child' type-id='type-id-30' visibility='default' filepath='../src/urcu-flavor.h' line='33' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='192'>
         <!-- void* urcu_atfork::priv -->
-        <var-decl name='priv' type-id='type-id-29' visibility='default' filepath='../src/urcu-flavor.h' line='34' column='1'/>
+        <var-decl name='priv' type-id='type-id-28' visibility='default' filepath='../src/urcu-flavor.h' line='34' column='1'/>
       </data-member>
     </class-decl>
+    <!-- urcu_atfork* -->
+    <pointer-type-def type-id='type-id-32' size-in-bits='64' id='type-id-33'/>
+    <!-- void (urcu_atfork*)* -->
+    <pointer-type-def type-id='type-id-34' size-in-bits='64' id='type-id-17'/>
+    <!-- const rcu_flavor_struct -->
+    <qualified-type-def type-id='type-id-12' const='yes' id='type-id-35'/>
+    <!-- const rcu_flavor_struct rcu_flavor_mb -->
+    <var-decl name='rcu_flavor_mb' type-id='type-id-35' mangled-name='rcu_flavor_mb' visibility='default' filepath='../src/urcu-flavor.h' line='79' column='1' elf-symbol-id='rcu_flavor_mb'/>
+    <!-- void rcu_defer_exit_mb() -->
+    <function-decl name='rcu_defer_exit_mb' mangled-name='rcu_defer_exit_mb' filepath='src/urcu-defer-impl.h' line='466' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_defer_exit_mb'>
+      <!-- void -->
+      <return type-id='type-id-18'/>
+    </function-decl>
+    <!-- void rcu_defer_unregister_thread_mb() -->
+    <function-decl name='rcu_defer_unregister_thread_mb' mangled-name='rcu_defer_unregister_thread_mb' filepath='src/urcu-defer-impl.h' line='448' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_defer_unregister_thread_mb'>
+      <!-- void -->
+      <return type-id='type-id-18'/>
+    </function-decl>
+    <!-- int rcu_defer_register_thread_mb() -->
+    <function-decl name='rcu_defer_register_thread_mb' mangled-name='rcu_defer_register_thread_mb' filepath='src/urcu-defer-impl.h' line='426' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_defer_register_thread_mb'>
+      <!-- int -->
+      <return type-id='type-id-4'/>
+    </function-decl>
+    <!-- void defer_rcu_mb(void (void*)*, void*) -->
+    <function-decl name='defer_rcu_mb' mangled-name='defer_rcu_mb' filepath='src/urcu-defer-impl.h' line='395' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='defer_rcu_mb'>
+      <!-- parameter of type 'void (void*)*' -->
+      <parameter type-id='type-id-30' name='fct' filepath='src/urcu-defer-impl.h' line='395' column='1'/>
+      <!-- parameter of type 'void*' -->
+      <parameter type-id='type-id-28' name='p' filepath='src/urcu-defer-impl.h' line='395' column='1'/>
+      <!-- void -->
+      <return type-id='type-id-18'/>
+    </function-decl>
+    <!-- void rcu_defer_barrier_mb() -->
+    <function-decl name='rcu_defer_barrier_mb' mangled-name='rcu_defer_barrier_mb' filepath='src/urcu-defer-impl.h' line='281' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_defer_barrier_mb'>
+      <!-- void -->
+      <return type-id='type-id-18'/>
+    </function-decl>
+    <!-- void rcu_defer_barrier_thread_mb() -->
+    <function-decl name='rcu_defer_barrier_thread_mb' mangled-name='rcu_defer_barrier_thread_mb' filepath='src/urcu-defer-impl.h' line='261' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_defer_barrier_thread_mb'>
+      <!-- void -->
+      <return type-id='type-id-18'/>
+    </function-decl>
+    <!-- void urcu_unregister_rculfhash_atfork_mb(urcu_atfork*) -->
+    <function-decl name='urcu_unregister_rculfhash_atfork_mb' mangled-name='urcu_unregister_rculfhash_atfork_mb' filepath='src/urcu-call-rcu-impl.h' line='1011' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='urcu_unregister_rculfhash_atfork_mb'>
+      <!-- parameter of type 'urcu_atfork*' -->
+      <parameter type-id='type-id-33' name='atfork' filepath='src/urcu-call-rcu-impl.h' line='1011' column='1'/>
+      <!-- void -->
+      <return type-id='type-id-18'/>
+    </function-decl>
+    <!-- void urcu_register_rculfhash_atfork_mb(urcu_atfork*) -->
+    <function-decl name='urcu_register_rculfhash_atfork_mb' mangled-name='urcu_register_rculfhash_atfork_mb' filepath='src/urcu-call-rcu-impl.h' line='1001' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='urcu_register_rculfhash_atfork_mb'>
+      <!-- parameter of type 'urcu_atfork*' -->
+      <parameter type-id='type-id-33' name='atfork' filepath='src/urcu-call-rcu-impl.h' line='1011' column='1'/>
+      <!-- void -->
+      <return type-id='type-id-18'/>
+    </function-decl>
+    <!-- void call_rcu_after_fork_child_mb() -->
+    <function-decl name='call_rcu_after_fork_child_mb' mangled-name='call_rcu_after_fork_child_mb' filepath='src/urcu-call-rcu-impl.h' line='959' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='call_rcu_after_fork_child_mb'>
+      <!-- void -->
+      <return type-id='type-id-18'/>
+    </function-decl>
+    <!-- void call_rcu_after_fork_parent_mb() -->
+    <function-decl name='call_rcu_after_fork_parent_mb' mangled-name='call_rcu_after_fork_parent_mb' filepath='src/urcu-call-rcu-impl.h' line='937' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='call_rcu_after_fork_parent_mb'>
+      <!-- void -->
+      <return type-id='type-id-18'/>
+    </function-decl>
+    <!-- void call_rcu_before_fork_mb() -->
+    <function-decl name='call_rcu_before_fork_mb' mangled-name='call_rcu_before_fork_mb' filepath='src/urcu-call-rcu-impl.h' line='910' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='call_rcu_before_fork_mb'>
+      <!-- void -->
+      <return type-id='type-id-18'/>
+    </function-decl>
+    <!-- void rcu_barrier_mb() -->
+    <function-decl name='rcu_barrier_mb' mangled-name='rcu_barrier_mb' filepath='src/urcu-call-rcu-impl.h' line='839' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_barrier_mb'>
+      <!-- void -->
+      <return type-id='type-id-18'/>
+    </function-decl>
+    <!-- void free_all_cpu_call_rcu_data_mb() -->
+    <function-decl name='free_all_cpu_call_rcu_data_mb' mangled-name='free_all_cpu_call_rcu_data_mb' filepath='src/urcu-call-rcu-impl.h' line='776' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='free_all_cpu_call_rcu_data_mb'>
+      <!-- void -->
+      <return type-id='type-id-18'/>
+    </function-decl>
     <!-- struct call_rcu_data -->
-    <class-decl name='call_rcu_data' size-in-bits='1024' is-struct='yes' visibility='default' filepath='src/urcu-call-rcu-impl.h' line='52' column='1' id='type-id-30'>
+    <class-decl name='call_rcu_data' size-in-bits='1024' is-struct='yes' visibility='default' filepath='src/urcu-call-rcu-impl.h' line='52' column='1' id='type-id-36'>
       <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-31' visibility='default' filepath='src/urcu-call-rcu-impl.h' line='60' column='1'/>
+        <var-decl name='cbs_tail' type-id='type-id-37' visibility='default' filepath='src/urcu-call-rcu-impl.h' line='60' 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-32' visibility='default' filepath='src/urcu-call-rcu-impl.h' line='61' column='1'/>
+        <var-decl name='cbs_head' type-id='type-id-38' visibility='default' filepath='src/urcu-call-rcu-impl.h' line='61' 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='src/urcu-call-rcu-impl.h' line='62' column='1'/>
+        <var-decl name='flags' type-id='type-id-2' visibility='default' filepath='src/urcu-call-rcu-impl.h' line='62' 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-11' visibility='default' filepath='src/urcu-call-rcu-impl.h' line='63' column='1'/>
+        <var-decl name='futex' type-id='type-id-3' visibility='default' filepath='src/urcu-call-rcu-impl.h' line='63' 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='src/urcu-call-rcu-impl.h' line='64' column='1'/>
+        <var-decl name='qlen' type-id='type-id-2' visibility='default' filepath='src/urcu-call-rcu-impl.h' line='64' 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-15' visibility='default' filepath='src/urcu-call-rcu-impl.h' line='65' column='1'/>
+        <var-decl name='tid' type-id='type-id-9' visibility='default' filepath='src/urcu-call-rcu-impl.h' line='65' 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='src/urcu-call-rcu-impl.h' line='66' column='1'/>
+        <var-decl name='cpu_affinity' type-id='type-id-4' visibility='default' filepath='src/urcu-call-rcu-impl.h' line='66' 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='src/urcu-call-rcu-impl.h' line='67' column='1'/>
+        <var-decl name='gp_count' type-id='type-id-2' visibility='default' filepath='src/urcu-call-rcu-impl.h' line='67' 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-14' visibility='default' filepath='src/urcu-call-rcu-impl.h' line='68' column='1'/>
+        <var-decl name='list' type-id='type-id-8' visibility='default' filepath='src/urcu-call-rcu-impl.h' line='68' 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='../include/urcu/wfcqueue.h' line='127' column='1' id='type-id-31'>
+    <class-decl name='cds_wfcq_tail' size-in-bits='64' is-struct='yes' visibility='default' filepath='../include/urcu/wfcqueue.h' line='127' column='1' id='type-id-37'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- cds_wfcq_node* cds_wfcq_tail::p -->
-        <var-decl name='p' type-id='type-id-26' visibility='default' filepath='../include/urcu/wfcqueue.h' line='128' column='1'/>
+        <var-decl name='p' type-id='type-id-24' visibility='default' filepath='../include/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='../include/urcu/wfcqueue.h' line='72' column='1' id='type-id-32'>
+    <class-decl name='cds_wfcq_head' size-in-bits='384' is-struct='yes' visibility='default' filepath='../include/urcu/wfcqueue.h' line='72' column='1' id='type-id-38'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- cds_wfcq_node cds_wfcq_head::node -->
-        <var-decl name='node' type-id='type-id-24' visibility='default' filepath='../include/urcu/wfcqueue.h' line='73' column='1'/>
+        <var-decl name='node' type-id='type-id-22' visibility='default' filepath='../include/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-33' visibility='default' filepath='../include/urcu/wfcqueue.h' line='74' column='1'/>
+        <var-decl name='lock' type-id='type-id-39' visibility='default' filepath='../include/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-34' filepath='/usr/include/bits/pthreadtypes.h' line='72' column='1' id='type-id-33'/>
-    <!-- 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-34'>
+    <!-- union __anonymous_union__ -->
+    <union-decl name='__anonymous_union__' size-in-bits='320' is-anonymous='yes' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h' line='67' column='1' id='type-id-40'>
       <data-member access='private'>
-        <!-- __pthread_mutex_s __data -->
-        <var-decl name='__data' type-id='type-id-35' visibility='default' filepath='/usr/include/bits/pthreadtypes.h' line='69' column='1'/>
+        <!-- __pthread_mutex_s __anonymous_union__::__data -->
+        <var-decl name='__data' type-id='type-id-41' visibility='default' filepath='/usr/include/x86_64-linux-gnu/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'/>
+        <!-- char __anonymous_union__::__size[40] -->
+        <var-decl name='__size' type-id='type-id-42' visibility='default' filepath='/usr/include/x86_64-linux-gnu/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'/>
+        <!-- long int __anonymous_union__::__align -->
+        <var-decl name='__align' type-id='type-id-43' visibility='default' filepath='/usr/include/x86_64-linux-gnu/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-35'>
+    <class-decl name='__pthread_mutex_s' size-in-bits='320' is-struct='yes' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='118' column='1' id='type-id-41'>
       <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'/>
+        <var-decl name='__lock' type-id='type-id-4' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='120' 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'/>
+        <var-decl name='__count' type-id='type-id-10' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='121' 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'/>
+        <var-decl name='__owner' type-id='type-id-4' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='122' 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'/>
+        <var-decl name='__nusers' type-id='type-id-10' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='124' 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'/>
+        <var-decl name='__kind' type-id='type-id-4' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='148' 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'/>
+        <var-decl name='__spins' type-id='type-id-44' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='154' 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'/>
+        <var-decl name='__elision' type-id='type-id-44' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='154' 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-36' visibility='default' filepath='/usr/include/bits/struct_mutex.h' line='36' column='1'/>
+        <var-decl name='__list' type-id='type-id-45' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='155' column='1'/>
       </data-member>
     </class-decl>
-    <!-- typedef __pthread_internal_list __pthread_list_t -->
-    <typedef-decl name='__pthread_list_t' type-id='type-id-37' filepath='/usr/include/bits/thread-shared-types.h' line='53' column='1' id='type-id-36'/>
+    <!-- short int -->
+    <type-decl name='short int' size-in-bits='16' id='type-id-44'/>
     <!-- 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-37'>
+    <class-decl name='__pthread_internal_list' size-in-bits='128' is-struct='yes' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='82' column='1' id='type-id-46'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- __pthread_internal_list* __pthread_internal_list::__prev -->
-        <var-decl name='__prev' type-id='type-id-38' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='51' column='1'/>
+        <var-decl name='__prev' type-id='type-id-47' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='84' 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-38' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='52' column='1'/>
+        <var-decl name='__next' type-id='type-id-47' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='85' column='1'/>
       </data-member>
     </class-decl>
     <!-- __pthread_internal_list* -->
-    <pointer-type-def type-id='type-id-37' size-in-bits='64' id='type-id-38'/>
+    <pointer-type-def type-id='type-id-46' size-in-bits='64' id='type-id-47'/>
+    <!-- typedef __pthread_internal_list __pthread_list_t -->
+    <typedef-decl name='__pthread_list_t' type-id='type-id-46' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='86' column='1' id='type-id-45'/>
+
+    <!-- char[40] -->
+    <array-type-def dimensions='1' type-id='type-id-7' size-in-bits='320' id='type-id-42'>
+      <!-- <anonymous range>[40] -->
+      <subrange length='40' type-id='type-id-2' id='type-id-48'/>
+
+    </array-type-def>
+    <!-- long int -->
+    <type-decl name='long int' size-in-bits='64' id='type-id-43'/>
+    <!-- typedef __anonymous_union__ pthread_mutex_t -->
+    <typedef-decl name='pthread_mutex_t' type-id='type-id-40' filepath='/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h' line='72' column='1' id='type-id-39'/>
     <!-- call_rcu_data* -->
-    <pointer-type-def type-id='type-id-30' size-in-bits='64' id='type-id-39'/>
-    <!-- cds_list_head* -->
-    <pointer-type-def type-id='type-id-14' size-in-bits='64' id='type-id-16'/>
-    <!-- cds_wfcq_node* -->
-    <pointer-type-def type-id='type-id-24' size-in-bits='64' id='type-id-26'/>
-    <!-- const rcu_flavor_struct -->
-    <qualified-type-def type-id='type-id-17' const='yes' id='type-id-40'/>
-    <!-- int ()* -->
-    <pointer-type-def type-id='type-id-41' size-in-bits='64' id='type-id-19'/>
-    <!-- rcu_head* -->
-    <pointer-type-def type-id='type-id-23' size-in-bits='64' id='type-id-42'/>
-    <!-- urcu_atfork* -->
-    <pointer-type-def type-id='type-id-27' size-in-bits='64' id='type-id-43'/>
-    <!-- void ()* -->
-    <pointer-type-def type-id='type-id-44' size-in-bits='64' id='type-id-18'/>
-    <!-- void (rcu_head*)* -->
-    <pointer-type-def type-id='type-id-45' size-in-bits='64' id='type-id-25'/>
-    <!-- void (rcu_head*, void (rcu_head*)*)* -->
-    <pointer-type-def type-id='type-id-46' size-in-bits='64' id='type-id-20'/>
-    <!-- void (urcu_atfork*)* -->
-    <pointer-type-def type-id='type-id-47' size-in-bits='64' id='type-id-22'/>
-    <!-- void (void (void*)*, void*)* -->
-    <pointer-type-def type-id='type-id-48' size-in-bits='64' id='type-id-21'/>
-    <!-- void (void*)* -->
-    <pointer-type-def type-id='type-id-49' size-in-bits='64' id='type-id-28'/>
-    <!-- void* -->
-    <pointer-type-def type-id='type-id-9' size-in-bits='64' id='type-id-29'/>
-    <!-- rcu_gp_mb rcu_gp_mb -->
-    <var-decl name='rcu_gp_mb' type-id='type-id-10' mangled-name='rcu_gp_mb' visibility='default' filepath='../include/urcu/static/urcu.h' line='132' column='1' elf-symbol-id='rcu_gp_mb'/>
-    <!-- rcu_reader_mb rcu_reader_mb -->
-    <var-decl name='rcu_reader_mb' type-id='type-id-13' mangled-name='rcu_reader_mb' visibility='default' filepath='../include/urcu/static/urcu.h' line='145' column='1' elf-symbol-id='rcu_reader_mb'/>
-    <!-- const rcu_flavor_struct rcu_flavor_mb -->
-    <var-decl name='rcu_flavor_mb' type-id='type-id-40' mangled-name='rcu_flavor_mb' visibility='default' filepath='../src/urcu-flavor.h' line='79' column='1' elf-symbol-id='rcu_flavor_mb'/>
-    <!-- void rcu_defer_exit_mb() -->
-    <function-decl name='rcu_defer_exit_mb' mangled-name='rcu_defer_exit_mb' filepath='src/urcu-defer-impl.h' line='466' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_defer_exit_mb'>
-      <!-- void -->
-      <return type-id='type-id-9'/>
-    </function-decl>
-    <!-- void rcu_defer_unregister_thread_mb() -->
-    <function-decl name='rcu_defer_unregister_thread_mb' mangled-name='rcu_defer_unregister_thread_mb' filepath='src/urcu-defer-impl.h' line='448' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_defer_unregister_thread_mb'>
-      <!-- void -->
-      <return type-id='type-id-9'/>
-    </function-decl>
-    <!-- int rcu_defer_register_thread_mb() -->
-    <function-decl name='rcu_defer_register_thread_mb' mangled-name='rcu_defer_register_thread_mb' filepath='src/urcu-defer-impl.h' line='426' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_defer_register_thread_mb'>
-      <!-- int -->
-      <return type-id='type-id-5'/>
-    </function-decl>
-    <!-- void defer_rcu_mb(void (void*)*, void*) -->
-    <function-decl name='defer_rcu_mb' mangled-name='defer_rcu_mb' filepath='src/urcu-defer-impl.h' line='395' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='defer_rcu_mb'>
-      <!-- parameter of type 'void (void*)*' -->
-      <parameter type-id='type-id-28' name='fct' filepath='src/urcu-defer-impl.h' line='395' column='1'/>
-      <!-- parameter of type 'void*' -->
-      <parameter type-id='type-id-29' name='p' filepath='src/urcu-defer-impl.h' line='395' column='1'/>
-      <!-- void -->
-      <return type-id='type-id-9'/>
-    </function-decl>
-    <!-- void rcu_defer_barrier_mb() -->
-    <function-decl name='rcu_defer_barrier_mb' mangled-name='rcu_defer_barrier_mb' filepath='src/urcu-defer-impl.h' line='281' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_defer_barrier_mb'>
-      <!-- void -->
-      <return type-id='type-id-9'/>
-    </function-decl>
-    <!-- void rcu_defer_barrier_thread_mb() -->
-    <function-decl name='rcu_defer_barrier_thread_mb' mangled-name='rcu_defer_barrier_thread_mb' filepath='src/urcu-defer-impl.h' line='261' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_defer_barrier_thread_mb'>
-      <!-- void -->
-      <return type-id='type-id-9'/>
-    </function-decl>
-    <!-- void urcu_unregister_rculfhash_atfork_mb(urcu_atfork*) -->
-    <function-decl name='urcu_unregister_rculfhash_atfork_mb' mangled-name='urcu_unregister_rculfhash_atfork_mb' filepath='src/urcu-call-rcu-impl.h' line='1011' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='urcu_unregister_rculfhash_atfork_mb'>
-      <!-- parameter of type 'urcu_atfork*' -->
-      <parameter type-id='type-id-43' name='atfork' filepath='src/urcu-call-rcu-impl.h' line='1011' column='1'/>
-      <!-- void -->
-      <return type-id='type-id-9'/>
-    </function-decl>
-    <!-- void urcu_register_rculfhash_atfork_mb(urcu_atfork*) -->
-    <function-decl name='urcu_register_rculfhash_atfork_mb' mangled-name='urcu_register_rculfhash_atfork_mb' filepath='src/urcu-call-rcu-impl.h' line='1001' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='urcu_register_rculfhash_atfork_mb'>
-      <!-- parameter of type 'urcu_atfork*' -->
-      <parameter type-id='type-id-43' name='atfork' filepath='src/urcu-call-rcu-impl.h' line='1001' column='1'/>
-      <!-- void -->
-      <return type-id='type-id-9'/>
-    </function-decl>
-    <!-- void call_rcu_after_fork_child_mb() -->
-    <function-decl name='call_rcu_after_fork_child_mb' mangled-name='call_rcu_after_fork_child_mb' filepath='src/urcu-call-rcu-impl.h' line='959' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='call_rcu_after_fork_child_mb'>
-      <!-- void -->
-      <return type-id='type-id-9'/>
-    </function-decl>
-    <!-- void call_rcu_after_fork_parent_mb() -->
-    <function-decl name='call_rcu_after_fork_parent_mb' mangled-name='call_rcu_after_fork_parent_mb' filepath='src/urcu-call-rcu-impl.h' line='937' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='call_rcu_after_fork_parent_mb'>
-      <!-- void -->
-      <return type-id='type-id-9'/>
-    </function-decl>
-    <!-- void call_rcu_before_fork_mb() -->
-    <function-decl name='call_rcu_before_fork_mb' mangled-name='call_rcu_before_fork_mb' filepath='src/urcu-call-rcu-impl.h' line='910' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='call_rcu_before_fork_mb'>
-      <!-- void -->
-      <return type-id='type-id-9'/>
-    </function-decl>
-    <!-- void rcu_barrier_mb() -->
-    <function-decl name='rcu_barrier_mb' mangled-name='rcu_barrier_mb' filepath='src/urcu-call-rcu-impl.h' line='839' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_barrier_mb'>
-      <!-- void -->
-      <return type-id='type-id-9'/>
-    </function-decl>
-    <!-- void free_all_cpu_call_rcu_data_mb() -->
-    <function-decl name='free_all_cpu_call_rcu_data_mb' mangled-name='free_all_cpu_call_rcu_data_mb' filepath='src/urcu-call-rcu-impl.h' line='776' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='free_all_cpu_call_rcu_data_mb'>
-      <!-- void -->
-      <return type-id='type-id-9'/>
-    </function-decl>
+    <pointer-type-def type-id='type-id-36' size-in-bits='64' id='type-id-49'/>
     <!-- void call_rcu_data_free_mb(call_rcu_data*) -->
     <function-decl name='call_rcu_data_free_mb' mangled-name='call_rcu_data_free_mb' filepath='src/urcu-call-rcu-impl.h' line='744' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='call_rcu_data_free_mb'>
       <!-- parameter of type 'call_rcu_data*' -->
-      <parameter type-id='type-id-39' name='crdp' filepath='src/urcu-call-rcu-impl.h' line='744' column='1'/>
+      <parameter type-id='type-id-49' name='crdp' filepath='src/urcu-call-rcu-impl.h' line='744' column='1'/>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-18'/>
     </function-decl>
     <!-- void call_rcu_mb(rcu_head*, void (rcu_head*)*) -->
     <function-decl name='call_rcu_mb' mangled-name='call_rcu_mb' filepath='src/urcu-call-rcu-impl.h' line='706' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='call_rcu_mb'>
       <!-- parameter of type 'rcu_head*' -->
-      <parameter type-id='type-id-42' name='head' filepath='src/urcu-call-rcu-impl.h' line='706' column='1'/>
+      <parameter type-id='type-id-25' name='head' filepath='src/urcu-call-rcu-impl.h' line='706' column='1'/>
       <!-- parameter of type 'void (rcu_head*)*' -->
-      <parameter type-id='type-id-25' name='func' filepath='src/urcu-call-rcu-impl.h' line='707' column='1'/>
+      <parameter type-id='type-id-23' name='func' filepath='src/urcu-call-rcu-impl.h' line='707' column='1'/>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-18'/>
     </function-decl>
     <!-- int create_all_cpu_call_rcu_data_mb(unsigned long int) -->
     <function-decl name='create_all_cpu_call_rcu_data_mb' mangled-name='create_all_cpu_call_rcu_data_mb' filepath='src/urcu-call-rcu-impl.h' line='628' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='create_all_cpu_call_rcu_data_mb'>
       <!-- parameter of type 'unsigned long int' -->
-      <parameter type-id='type-id-3' name='flags' filepath='src/urcu-call-rcu-impl.h' line='628' column='1'/>
+      <parameter type-id='type-id-2' name='flags' filepath='src/urcu-call-rcu-impl.h' line='628' column='1'/>
       <!-- int -->
-      <return type-id='type-id-5'/>
+      <return type-id='type-id-4'/>
     </function-decl>
     <!-- void set_thread_call_rcu_data_mb(call_rcu_data*) -->
     <function-decl name='set_thread_call_rcu_data_mb' mangled-name='set_thread_call_rcu_data_mb' filepath='src/urcu-call-rcu-impl.h' line='615' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='set_thread_call_rcu_data_mb'>
       <!-- parameter of type 'call_rcu_data*' -->
-      <parameter type-id='type-id-39' name='crdp' filepath='src/urcu-call-rcu-impl.h' line='615' column='1'/>
+      <parameter type-id='type-id-49' name='crdp' filepath='src/urcu-call-rcu-impl.h' line='615' column='1'/>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-18'/>
     </function-decl>
     <!-- call_rcu_data* get_thread_call_rcu_data_mb() -->
     <function-decl name='get_thread_call_rcu_data_mb' mangled-name='get_thread_call_rcu_data_mb' filepath='src/urcu-call-rcu-impl.h' line='599' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='get_thread_call_rcu_data_mb'>
       <!-- call_rcu_data* -->
-      <return type-id='type-id-39'/>
+      <return type-id='type-id-49'/>
     </function-decl>
     <!-- call_rcu_data* get_call_rcu_data_mb() -->
     <function-decl name='get_call_rcu_data_mb' mangled-name='get_call_rcu_data_mb' filepath='src/urcu-call-rcu-impl.h' line='579' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='get_call_rcu_data_mb'>
       <!-- call_rcu_data* -->
-      <return type-id='type-id-39'/>
+      <return type-id='type-id-49'/>
     </function-decl>
     <!-- call_rcu_data* get_default_call_rcu_data_mb() -->
     <function-decl name='get_default_call_rcu_data_mb' mangled-name='get_default_call_rcu_data_mb' filepath='src/urcu-call-rcu-impl.h' line='554' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='get_default_call_rcu_data_mb'>
       <!-- call_rcu_data* -->
-      <return type-id='type-id-39'/>
+      <return type-id='type-id-49'/>
     </function-decl>
     <!-- int set_cpu_call_rcu_data_mb(int, call_rcu_data*) -->
     <function-decl name='set_cpu_call_rcu_data_mb' mangled-name='set_cpu_call_rcu_data_mb' filepath='src/urcu-call-rcu-impl.h' line='515' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='set_cpu_call_rcu_data_mb'>
       <!-- parameter of type 'int' -->
-      <parameter type-id='type-id-5' name='cpu' filepath='src/urcu-call-rcu-impl.h' line='515' column='1'/>
+      <parameter type-id='type-id-4' name='cpu' filepath='src/urcu-call-rcu-impl.h' line='515' column='1'/>
       <!-- parameter of type 'call_rcu_data*' -->
-      <parameter type-id='type-id-39' name='crdp' filepath='src/urcu-call-rcu-impl.h' line='515' column='1'/>
+      <parameter type-id='type-id-49' name='crdp' filepath='src/urcu-call-rcu-impl.h' line='515' column='1'/>
       <!-- int -->
-      <return type-id='type-id-5'/>
+      <return type-id='type-id-4'/>
     </function-decl>
     <!-- call_rcu_data* create_call_rcu_data_mb(unsigned long int, int) -->
     <function-decl name='create_call_rcu_data_mb' mangled-name='create_call_rcu_data_mb' filepath='src/urcu-call-rcu-impl.h' line='491' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='create_call_rcu_data_mb'>
       <!-- parameter of type 'unsigned long int' -->
-      <parameter type-id='type-id-3' name='flags' filepath='src/urcu-call-rcu-impl.h' line='491' column='1'/>
+      <parameter type-id='type-id-2' name='flags' filepath='src/urcu-call-rcu-impl.h' line='491' column='1'/>
       <!-- parameter of type 'int' -->
-      <parameter type-id='type-id-5' name='cpu_affinity' filepath='src/urcu-call-rcu-impl.h' line='492' column='1'/>
+      <parameter type-id='type-id-4' name='cpu_affinity' filepath='src/urcu-call-rcu-impl.h' line='492' column='1'/>
       <!-- call_rcu_data* -->
-      <return type-id='type-id-39'/>
+      <return type-id='type-id-49'/>
     </function-decl>
     <!-- pthread_t get_call_rcu_thread_mb(call_rcu_data*) -->
     <function-decl name='get_call_rcu_thread_mb' mangled-name='get_call_rcu_thread_mb' filepath='src/urcu-call-rcu-impl.h' line='473' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='get_call_rcu_thread_mb'>
       <!-- parameter of type 'call_rcu_data*' -->
-      <parameter type-id='type-id-39' name='crdp' filepath='src/urcu-call-rcu-impl.h' line='473' column='1'/>
+      <parameter type-id='type-id-49' name='crdp' filepath='src/urcu-call-rcu-impl.h' line='473' column='1'/>
       <!-- typedef pthread_t -->
-      <return type-id='type-id-15'/>
+      <return type-id='type-id-9'/>
     </function-decl>
     <!-- call_rcu_data* get_cpu_call_rcu_data_mb(int) -->
     <function-decl name='get_cpu_call_rcu_data_mb' mangled-name='get_cpu_call_rcu_data_mb' filepath='src/urcu-call-rcu-impl.h' line='451' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='get_cpu_call_rcu_data_mb'>
       <!-- parameter of type 'int' -->
-      <parameter type-id='type-id-5' name='cpu' filepath='src/urcu-call-rcu-impl.h' line='451' column='1'/>
+      <parameter type-id='type-id-4' name='cpu' filepath='src/urcu-call-rcu-impl.h' line='451' column='1'/>
       <!-- call_rcu_data* -->
-      <return type-id='type-id-39'/>
+      <return type-id='type-id-49'/>
     </function-decl>
     <!-- void rcu_unregister_thread_mb() -->
     <function-decl name='rcu_unregister_thread_mb' mangled-name='rcu_unregister_thread_mb' filepath='src/urcu.c' line='527' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_unregister_thread_mb'>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-18'/>
     </function-decl>
     <!-- void rcu_register_thread_mb() -->
     <function-decl name='rcu_register_thread_mb' mangled-name='rcu_register_thread_mb' filepath='src/urcu.c' line='513' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_register_thread_mb'>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-18'/>
     </function-decl>
     <!-- int rcu_read_ongoing_mb() -->
     <function-decl name='rcu_read_ongoing_mb' mangled-name='rcu_read_ongoing_mb' filepath='src/urcu.c' line='508' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_read_ongoing_mb'>
       <!-- int -->
-      <return type-id='type-id-5'/>
+      <return type-id='type-id-4'/>
     </function-decl>
     <!-- void rcu_read_unlock_mb() -->
     <function-decl name='rcu_read_unlock_mb' mangled-name='rcu_read_unlock_mb' filepath='src/urcu.c' line='503' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_read_unlock_mb'>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-18'/>
     </function-decl>
     <!-- void rcu_read_lock_mb() -->
     <function-decl name='rcu_read_lock_mb' mangled-name='rcu_read_lock_mb' filepath='src/urcu.c' line='498' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_read_lock_mb'>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-18'/>
     </function-decl>
     <!-- void synchronize_rcu_mb() -->
     <function-decl name='synchronize_rcu_mb' mangled-name='synchronize_rcu_mb' filepath='src/urcu.c' line='377' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='synchronize_rcu_mb'>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-18'/>
     </function-decl>
     <!-- void rcu_init_mb() -->
     <function-decl name='rcu_init_mb' mangled-name='rcu_init_mb' filepath='src/urcu.c' line='88' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='rcu_init_mb'>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-18'/>
     </function-decl>
     <!-- int () -->
-    <function-type size-in-bits='64' id='type-id-41'>
+    <function-type size-in-bits='64' id='type-id-20'>
       <!-- int -->
-      <return type-id='type-id-5'/>
+      <return type-id='type-id-4'/>
     </function-type>
     <!-- void () -->
-    <function-type size-in-bits='64' id='type-id-44'>
+    <function-type size-in-bits='64' id='type-id-19'>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-18'/>
     </function-type>
     <!-- void (rcu_head*) -->
-    <function-type size-in-bits='64' id='type-id-45'>
+    <function-type size-in-bits='64' id='type-id-26'>
       <!-- parameter of type 'rcu_head*' -->
-      <parameter type-id='type-id-42'/>
+      <parameter type-id='type-id-25'/>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-18'/>
     </function-type>
     <!-- void (rcu_head*, void (rcu_head*)*) -->
-    <function-type size-in-bits='64' id='type-id-46'>
+    <function-type size-in-bits='64' id='type-id-27'>
       <!-- parameter of type 'rcu_head*' -->
-      <parameter type-id='type-id-42'/>
-      <!-- parameter of type 'void (rcu_head*)*' -->
       <parameter type-id='type-id-25'/>
+      <!-- parameter of type 'void (rcu_head*)*' -->
+      <parameter type-id='type-id-23'/>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-18'/>
     </function-type>
     <!-- void (urcu_atfork*) -->
-    <function-type size-in-bits='64' id='type-id-47'>
+    <function-type size-in-bits='64' id='type-id-34'>
       <!-- parameter of type 'urcu_atfork*' -->
-      <parameter type-id='type-id-43'/>
+      <parameter type-id='type-id-33'/>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-18'/>
     </function-type>
     <!-- void (void (void*)*, void*) -->
-    <function-type size-in-bits='64' id='type-id-48'>
+    <function-type size-in-bits='64' id='type-id-31'>
       <!-- parameter of type 'void (void*)*' -->
-      <parameter type-id='type-id-28'/>
+      <parameter type-id='type-id-30'/>
       <!-- parameter of type 'void*' -->
-      <parameter type-id='type-id-29'/>
+      <parameter type-id='type-id-28'/>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-18'/>
     </function-type>
     <!-- void (void*) -->
-    <function-type size-in-bits='64' id='type-id-49'>
+    <function-type size-in-bits='64' id='type-id-29'>
       <!-- parameter of type 'void*' -->
-      <parameter type-id='type-id-29'/>
+      <parameter type-id='type-id-28'/>
       <!-- void -->
-      <return type-id='type-id-9'/>
+      <return type-id='type-id-18'/>
     </function-type>
   </abi-instr>
   <abi-instr version='1.0' address-size='64' path='urcu-pointer.c' comp-dir-path='src' language='LANG_C99'>
     <!-- void** -->
-    <pointer-type-def type-id='type-id-29' size-in-bits='64' id='type-id-50'/>
+    <pointer-type-def type-id='type-id-28' size-in-bits='64' id='type-id-50'/>
     <!-- void* rcu_cmpxchg_pointer_sym(void**, void*, void*) -->
     <function-decl name='rcu_cmpxchg_pointer_sym' mangled-name='rcu_cmpxchg_pointer_sym' filepath='src/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-50' name='p' filepath='src/urcu-pointer.c' line='53' column='1'/>
       <!-- parameter of type 'void*' -->
-      <parameter type-id='type-id-29' name='old' filepath='src/urcu-pointer.c' line='53' column='1'/>
+      <parameter type-id='type-id-28' name='old' filepath='src/urcu-pointer.c' line='53' column='1'/>
       <!-- parameter of type 'void*' -->
-      <parameter type-id='type-id-29' name='_new' filepath='src/urcu-pointer.c' line='53' column='1'/>
+      <parameter type-id='type-id-28' name='_new' filepath='src/urcu-pointer.c' line='53' column='1'/>
       <!-- void* -->
-      <return type-id='type-id-29'/>
+      <return type-id='type-id-28'/>
     </function-decl>
     <!-- void* rcu_xchg_pointer_sym(void**, void*) -->
     <function-decl name='rcu_xchg_pointer_sym' mangled-name='rcu_xchg_pointer_sym' filepath='src/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-50' name='p' filepath='src/urcu-pointer.c' line='47' column='1'/>
       <!-- parameter of type 'void*' -->
-      <parameter type-id='type-id-29' name='v' filepath='src/urcu-pointer.c' line='47' column='1'/>
+      <parameter type-id='type-id-28' name='v' filepath='src/urcu-pointer.c' line='47' column='1'/>
       <!-- void* -->
-      <return type-id='type-id-29'/>
+      <return type-id='type-id-28'/>
     </function-decl>
     <!-- void* rcu_set_pointer_sym(void**, void*) -->
     <function-decl name='rcu_set_pointer_sym' mangled-name='rcu_set_pointer_sym' filepath='src/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-50' name='p' filepath='src/urcu-pointer.c' line='40' column='1'/>
       <!-- parameter of type 'void*' -->
-      <parameter type-id='type-id-29' name='v' filepath='src/urcu-pointer.c' line='40' column='1'/>
+      <parameter type-id='type-id-28' name='v' filepath='src/urcu-pointer.c' line='40' column='1'/>
       <!-- void* -->
-      <return type-id='type-id-29'/>
+      <return type-id='type-id-28'/>
     </function-decl>
     <!-- void* rcu_dereference_sym(void*) -->
     <function-decl name='rcu_dereference_sym' mangled-name='rcu_dereference_sym' filepath='src/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-29' name='p' filepath='src/urcu-pointer.c' line='35' column='1'/>
+      <parameter type-id='type-id-28' name='p' filepath='src/urcu-pointer.c' line='35' column='1'/>
       <!-- void* -->
-      <return type-id='type-id-29'/>
+      <return type-id='type-id-28'/>
     </function-decl>
   </abi-instr>
   <abi-instr version='1.0' address-size='64' path='compat_futex.c' comp-dir-path='src' language='LANG_C99'>
-
-
-    <!-- char[48] -->
-    <array-type-def dimensions='1' type-id='type-id-1' size-in-bits='384' id='type-id-51'>
-      <!-- <anonymous range>[48] -->
-      <subrange length='48' type-id='type-id-3' id='type-id-52'/>
-
-    </array-type-def>
-    <!-- long long int -->
-    <type-decl name='long long int' size-in-bits='64' id='type-id-53'/>
-    <!-- long long unsigned int -->
-    <type-decl name='long long unsigned int' size-in-bits='64' id='type-id-54'/>
-    <!-- unsigned int[2] -->
-    <array-type-def dimensions='1' type-id='type-id-8' size-in-bits='64' id='type-id-55'>
-      <!-- <anonymous range>[2] -->
-      <subrange length='2' type-id='type-id-3' id='type-id-56'/>
-
-    </array-type-def>
-    <!-- typedef __anonymous_union__ pthread_cond_t -->
-    <typedef-decl name='pthread_cond_t' type-id='type-id-57' filepath='/usr/include/bits/pthreadtypes.h' line='80' column='1' id='type-id-58'/>
-    <!-- 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-57'>
+    <!-- pthread_mutex_t __urcu_compat_futex_lock -->
+    <var-decl name='__urcu_compat_futex_lock' type-id='type-id-39' mangled-name='__urcu_compat_futex_lock' visibility='default' filepath='src/compat_futex.c' line='44' column='1' elf-symbol-id='__urcu_compat_futex_lock'/>
+    <!-- union __anonymous_union__ -->
+    <union-decl name='__anonymous_union__' size-in-bits='384' is-anonymous='yes' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h' line='75' column='1' id='type-id-51'>
       <data-member access='private'>
-        <!-- __pthread_cond_s __data -->
-        <var-decl name='__data' type-id='type-id-59' visibility='default' filepath='/usr/include/bits/pthreadtypes.h' line='77' column='1'/>
+        <!-- __pthread_cond_s __anonymous_union__::__data -->
+        <var-decl name='__data' type-id='type-id-52' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h' line='77' column='1'/>
       </data-member>
       <data-member access='private'>
-        <!-- char __size[48] -->
-        <var-decl name='__size' type-id='type-id-51' visibility='default' filepath='/usr/include/bits/pthreadtypes.h' line='78' column='1'/>
+        <!-- char __anonymous_union__::__size[48] -->
+        <var-decl name='__size' type-id='type-id-53' visibility='default' filepath='/usr/include/x86_64-linux-gnu/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-53' visibility='default' filepath='/usr/include/bits/pthreadtypes.h' line='79' column='1'/>
+        <!-- long long int __anonymous_union__::__align -->
+        <var-decl name='__align' type-id='type-id-54' visibility='default' filepath='/usr/include/x86_64-linux-gnu/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-59'>
+    <class-decl name='__pthread_cond_s' size-in-bits='384' is-struct='yes' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='171' column='1' id='type-id-52'>
       <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-60' visibility='default'/>
+        <!-- __anonymous_union__  -->
+        <var-decl name='' type-id='type-id-55' 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-55' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='112' column='1'/>
+        <var-decl name='__g_refs' type-id='type-id-56' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='191' 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-55' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='113' column='1'/>
+        <var-decl name='__g_size' type-id='type-id-56' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='192' 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'/>
+        <var-decl name='__g1_orig_size' type-id='type-id-10' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='193' 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'/>
+        <var-decl name='__wrefs' type-id='type-id-10' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='194' 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-55' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='116' column='1'/>
+        <var-decl name='__g_signals' type-id='type-id-56' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='195' 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-60'>
+    <!-- union __anonymous_union__ -->
+    <union-decl name='__anonymous_union__' size-in-bits='64' is-anonymous='yes' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='173' column='1' id='type-id-55'>
       <data-member access='private'>
-        <!-- long long unsigned int __wseq -->
-        <var-decl name='__wseq' type-id='type-id-54' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='96' column='1'/>
+        <!-- long long unsigned int __anonymous_union__::__wseq -->
+        <var-decl name='__wseq' type-id='type-id-57' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='175' column='1'/>
       </data-member>
       <data-member access='private'>
-        <!-- struct {unsigned int __low; unsigned int __high;} __wseq32 -->
-        <var-decl name='__wseq32' type-id='type-id-61' visibility='default' filepath='/usr/include/bits/thread-shared-types.h' line='101' column='1'/>
+        <!-- __anonymous_struct__ __anonymous_union__::__wseq32 -->
+        <var-decl name='__wseq32' type-id='type-id-58' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='180' 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-61'>
+    <!-- long long unsigned int -->
+    <type-decl name='long long unsigned int' size-in-bits='64' id='type-id-57'/>
+    <!-- struct __anonymous_struct__ -->
+    <class-decl name='__anonymous_struct__' size-in-bits='64' is-struct='yes' is-anonymous='yes' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='176' 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'/>
+        <!-- unsigned int __anonymous_struct__::__low -->
+        <var-decl name='__low' type-id='type-id-10' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='178' 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'/>
+        <!-- unsigned int __anonymous_struct__::__high -->
+        <var-decl name='__high' type-id='type-id-10' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h' line='179' column='1'/>
       </data-member>
     </class-decl>
+
+    <!-- unsigned int[2] -->
+    <array-type-def dimensions='1' type-id='type-id-10' size-in-bits='64' id='type-id-56'>
+      <!-- <anonymous range>[2] -->
+      <subrange length='2' type-id='type-id-2' id='type-id-59'/>
+
+    </array-type-def>
+
+    <!-- char[48] -->
+    <array-type-def dimensions='1' type-id='type-id-7' size-in-bits='384' id='type-id-53'>
+      <!-- <anonymous range>[48] -->
+      <subrange length='48' type-id='type-id-2' id='type-id-60'/>
+
+    </array-type-def>
+    <!-- long long int -->
+    <type-decl name='long long int' size-in-bits='64' id='type-id-54'/>
+    <!-- typedef __anonymous_union__ pthread_cond_t -->
+    <typedef-decl name='pthread_cond_t' type-id='type-id-51' filepath='/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h' line='80' column='1' id='type-id-61'/>
+    <!-- pthread_cond_t __urcu_compat_futex_cond -->
+    <var-decl name='__urcu_compat_futex_cond' type-id='type-id-61' mangled-name='__urcu_compat_futex_cond' visibility='default' filepath='src/compat_futex.c' line='46' column='1' elf-symbol-id='__urcu_compat_futex_cond'/>
+    <!-- int32_t* -->
+    <pointer-type-def type-id='type-id-3' size-in-bits='64' id='type-id-62'/>
     <!-- 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-62'>
+    <class-decl name='timespec' size-in-bits='128' is-struct='yes' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h' line='9' column='1' id='type-id-63'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- __time_t timespec::tv_sec -->
-        <var-decl name='tv_sec' type-id='type-id-63' visibility='default' filepath='/usr/include/bits/types/struct_timespec.h' line='12' column='1'/>
+        <var-decl name='tv_sec' type-id='type-id-64' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h' line='11' 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-64' visibility='default' filepath='/usr/include/bits/types/struct_timespec.h' line='16' column='1'/>
+        <var-decl name='tv_nsec' type-id='type-id-65' visibility='default' filepath='/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h' line='12' 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-63'/>
+    <typedef-decl name='__time_t' type-id='type-id-43' filepath='/usr/include/x86_64-linux-gnu/bits/types.h' line='148' column='1' id='type-id-64'/>
     <!-- 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-64'/>
+    <typedef-decl name='__syscall_slong_t' type-id='type-id-43' filepath='/usr/include/x86_64-linux-gnu/bits/types.h' line='184' column='1' id='type-id-65'/>
     <!-- const timespec -->
-    <qualified-type-def type-id='type-id-62' const='yes' id='type-id-65'/>
+    <qualified-type-def type-id='type-id-63' const='yes' id='type-id-66'/>
     <!-- const timespec* -->
-    <pointer-type-def type-id='type-id-65' size-in-bits='64' id='type-id-66'/>
-    <!-- int32_t* -->
-    <pointer-type-def type-id='type-id-11' size-in-bits='64' id='type-id-67'/>
-    <!-- pthread_mutex_t __urcu_compat_futex_lock -->
-    <var-decl name='__urcu_compat_futex_lock' type-id='type-id-33' mangled-name='__urcu_compat_futex_lock' visibility='default' filepath='src/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-58' mangled-name='__urcu_compat_futex_cond' visibility='default' filepath='src/compat_futex.c' line='46' column='1' elf-symbol-id='__urcu_compat_futex_cond'/>
+    <pointer-type-def type-id='type-id-66' size-in-bits='64' id='type-id-67'/>
     <!-- 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='src/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-67' name='uaddr' filepath='src/compat_futex.c' line='118' column='1'/>
+      <parameter type-id='type-id-62' name='uaddr' filepath='src/compat_futex.c' line='118' column='1'/>
       <!-- parameter of type 'int' -->
-      <parameter type-id='type-id-5' name='op' filepath='src/compat_futex.c' line='118' column='1'/>
+      <parameter type-id='type-id-4' name='op' filepath='src/compat_futex.c' line='118' column='1'/>
       <!-- parameter of type 'typedef int32_t' -->
-      <parameter type-id='type-id-11' name='val' filepath='src/compat_futex.c' line='118' column='1'/>
+      <parameter type-id='type-id-3' name='val' filepath='src/compat_futex.c' line='118' column='1'/>
       <!-- parameter of type 'const timespec*' -->
-      <parameter type-id='type-id-66' name='timeout' filepath='src/compat_futex.c' line='119' column='1'/>
+      <parameter type-id='type-id-67' name='timeout' filepath='src/compat_futex.c' line='119' column='1'/>
       <!-- parameter of type 'int32_t*' -->
-      <parameter type-id='type-id-67' name='uaddr2' filepath='src/compat_futex.c' line='119' column='1'/>
+      <parameter type-id='type-id-62' name='uaddr2' filepath='src/compat_futex.c' line='119' column='1'/>
       <!-- parameter of type 'typedef int32_t' -->
-      <parameter type-id='type-id-11' name='val3' filepath='src/compat_futex.c' line='119' column='1'/>
+      <parameter type-id='type-id-3' name='val3' filepath='src/compat_futex.c' line='119' column='1'/>
       <!-- int -->
-      <return type-id='type-id-5'/>
+      <return type-id='type-id-4'/>
     </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='src/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-67' name='uaddr' filepath='src/compat_futex.c' line='54' column='1'/>
+      <parameter type-id='type-id-62' name='uaddr' filepath='src/compat_futex.c' line='54' column='1'/>
       <!-- parameter of type 'int' -->
-      <parameter type-id='type-id-5' name='op' filepath='src/compat_futex.c' line='54' column='1'/>
+      <parameter type-id='type-id-4' name='op' filepath='src/compat_futex.c' line='54' column='1'/>
       <!-- parameter of type 'typedef int32_t' -->
-      <parameter type-id='type-id-11' name='val' filepath='src/compat_futex.c' line='54' column='1'/>
+      <parameter type-id='type-id-3' name='val' filepath='src/compat_futex.c' line='54' column='1'/>
       <!-- parameter of type 'const timespec*' -->
-      <parameter type-id='type-id-66' name='timeout' filepath='src/compat_futex.c' line='55' column='1'/>
+      <parameter type-id='type-id-67' name='timeout' filepath='src/compat_futex.c' line='55' column='1'/>
       <!-- parameter of type 'int32_t*' -->
-      <parameter type-id='type-id-67' name='uaddr2' filepath='src/compat_futex.c' line='55' column='1'/>
+      <parameter type-id='type-id-62' name='uaddr2' filepath='src/compat_futex.c' line='55' column='1'/>
       <!-- parameter of type 'typedef int32_t' -->
-      <parameter type-id='type-id-11' name='val3' filepath='src/compat_futex.c' line='55' column='1'/>
+      <parameter type-id='type-id-3' name='val3' filepath='src/compat_futex.c' line='55' column='1'/>
       <!-- int -->
-      <return type-id='type-id-5'/>
+      <return type-id='type-id-4'/>
     </function-decl>
   </abi-instr>
 </abi-corpus>
index f57eae25d6a2e6a5cb0a2a47783246d368460c88..ebd5c9d38ca80cb9043d400b4e1279281be09977 100644 (file)
@@ -1,11 +1,14 @@
 <abi-corpus architecture='elf-amd-x86_64' soname='liburcu-qsbr.so.6'>
   <elf-needed>
-    <dependency name='liburcu-common.so.6'/>
     <dependency name='libpthread.so.0'/>
     <dependency name='libc.so.6'/>
     <dependency name='ld-linux-x86-64.so.2'/>
   </elf-needed>
   <elf-function-symbols>
+    <!-- _fini -->
+    <elf-symbol name='_fini' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+    <!-- _init -->
+    <elf-symbol name='_init' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
     <!-- call_rcu_after_fork_child_qsbr -->
     <elf-symbol name='call_rcu_after_fork_child_qsbr' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
     <!-- call_rcu_after_fork_parent_qsbr -->
     <elf-symbol name='rcu_reader_qsbr' size='256' type='tls-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
   </elf-variable-symbols>
   <abi-instr version='1.0' address-size='64' path='urcu-qsbr.c' comp-dir-path='src' 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_qsbr -->
-    <class-decl name='rcu_gp_qsbr' size-in-bits='1024' is-struct='yes' visibility='default' filepath='../include/urcu/static/urcu-qsbr.h' line='68' column='1' id='type-id-10'>
+    <class-decl name='rcu_gp_qsbr' size-in-bits='1024' is-struct='yes' visibility='default' filepath='../include/urcu/static/urcu-qsbr.h' line='68' column='1' id='type-id-1'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- unsigned long int rcu_gp_qsbr::ctr -->
-        <var-decl name='ctr' type-id='type-id-3' visibility='default' filepath='../include/urcu/static/urcu-qsbr.h' line='74' column='1'/>
+        <var-decl name='ctr' type-id='type-id-2' visibility='default' filepath='../include/urcu/static/urcu-qsbr.h' line='74' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='64'>
         <!-- int32_t rcu_gp_qsbr::futex -->
-        <var-decl name='futex' type-id='type-id-11' visibility='default' filepath='../include/urcu/static/urcu-qsbr.h' line='76' column='1'/>
+        <var-decl name='futex' type-id='type-id-3' visibility='default' filepath='../include/urcu/static/urcu-qsbr.h' line='76' column='1'/>
       </data-member>
     </class-decl>
-    <!-- typedef __int32_t int32_t -->
-    <typedef-decl name='int32_t' type-id='type-id-12' filepath='/usr/include/bits/stdint-intn.h' line='26' column='1' id='type-id-11'/>
+    <!-- unsigned long int -->
+    <type-decl name='unsigned long int' size-in-bits='64' id='type-id-2'/>
+    <!-- int -->
+    <type-decl name='int' size-in-bits='32' id='type-id-4'/>
     <!-- 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-12'/>
+    <typedef-decl name='__int32_t' type-id='type-id-4' filepath='/usr/include/x86_64-linux-gnu/bits/types.h' line='40' column='1' id='type-id-5'/>
+    <!-- typedef __int32_t int32_t -->
+    <typedef-decl name='int32_t' type-id='type-id-5' filepath='/usr/include/x86_64-linux-gnu/bits/stdint-intn.h' line='26' column='1' id='type-id-3'/>
+    <!-- rcu_gp_qsbr rcu_gp_qsbr -->
+    <var-decl name='rcu_gp_qsbr' type-id='type-id-1' mangled-name='rcu_gp_qsbr' visibility='default' filepath='../include/urcu/static/urcu-qsbr.h' line='79' column='1' elf-symbol-id='rcu_gp_qsbr'/>
     <!-- struct rcu_reader_qsbr -->
-    <class-decl name='rcu_reader_qsbr' size-in-bits='2048' is-struct='yes' visibility='default' filepath='../include/urcu/static/urcu-qsbr.h' line='81' column='1' id='type-id-13'>
+    <class-decl name='rcu_reader_qsbr' size-in-bits='2048' is-struct='yes' visibility='default' filepath='../include/urcu/static/urcu-qsbr.h' line='81' column='1' id='type-id-6'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- unsigned long int rcu_reader_qsbr::ctr -->
-        <var-decl name='ctr' type-id='type-id-3' visibility='default' filepath='../include/urcu/static/urcu-qsbr.h' line='83' column='1'/>
+        <var-decl name='ctr' type-id='type-id-2' visibility='default' filepath='../include/urcu/static/urcu-qsbr.h' line='83' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='1024'>
         <!-- cds_list_head rcu_reader_qsbr::node -->
-        <var-decl name='node' type-id='type-id-14' visibility='default' filepath='../include/urcu/static/urcu-qsbr.h' line='85' column='1'/>
+        <var-decl name='node' type-id='type-id-7' visibility='default' filepath='../include/urcu/static/urcu-qsbr.h' line='85' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='1152'>
         <!-- int rcu_reader_qsbr::waiting -->
-        <var-decl name='waiting' type-id='type-id-5' visibility='default' filepath='../include/urcu/static/urcu-qsbr.h' line='86' column='1'/>
+        <var-decl name='waiting' type-id='type-id-4' visibility='default' filepath='../include/urcu/static/urcu-qsbr.h' line='86' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='1216'>
         <!-- pthread_t rcu_reader_qsbr::tid -->
-        <var-decl name='tid' type-id='type-id-15' visibility='default' filepath='../include/urcu/static/urcu-qsbr.h' line='87' column='1'/>
+        <var-decl name='tid' type-id='type-id-8' visibility='default' filepath='../include/urcu/static/urcu-qsbr.h' line='87' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='31'>
         <!-- unsigned int rcu_reader_qsbr::registered -->
-        <var-decl name='registered' type-id='type-id-8' visibility='default' filepath='../include/urcu/static/urcu-qsbr.h' line='89' column='1'/>
+        <var-decl name='registered' type-id='type-id-9' visibility='default' filepath='../include/urcu/static/urcu-qsbr.h' line='89' 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='../include/urcu/list.h' line='35' column='1' id='type-id-14'>
+    <class-decl name='cds_list_head' size-in-bits='128' is-struct='yes' visibility='default' filepath='../include/urcu/list.h' line='35' column='1' id='type-id-7'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- cds_list_head* cds_list_head::next -->
-        <var-decl name='next' type-id='type-id-16' visibility='default' filepath='../include/urcu/list.h' line='36' column='1'/>
+        <var-decl name='next' type-id='type-id-10' visibility='default' filepath='../include/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-16' visibility='default' filepath='../include/urcu/list.h' line='36' column='1'/>
+        <var-decl name='prev' type-id='type-id-10' visibility='default' filepath='../include/urcu/list.h' line='36' column='1'/>
       </data-member>
     </class-decl>
+    <!-- cds_list_head* -->
+    <pointer-type-def type-id='type-id-7' size-in-bits='64' id='type-id-10'/>
     <!-- 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-15'/>
+    <typedef-decl name='pthread_t' type-id='type-id-2' filepath='/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h' line='27' column='1' id='type-id-8'/>
+    <!-- unsigned int -->
+    <type-decl name='unsigned int' size-in-bits='32' id='type-id-9'/>
+    <!-- rcu_reader_qsbr rcu_reader_qsbr -->
+    <var-decl name='rcu_reader_qsbr' type-id='type-id-6' mangled-name='rcu_reader_qsbr' visibility='default' filepath='../include/urcu/static/urcu-qsbr.h' line='92' column='1' elf-symbol-id='rcu_reader_qsbr'/>
     <!-- struct rcu_flavor_struct -->
-    <class-decl name='rcu_flavor_struct' size-in-bits='896' is-struct='yes' visibility='default' filepath='../src/urcu-flavor.h' line='40' column='1' id='type-id-17'>
+    <class-decl name='rcu_flavor_struct' size-in-bits='896' is-struct='yes' visibility='default' filepath='../src/urcu-flavor.h' line='40' column='1' id='type-id-11'>
       <data-member access='public' layout-offset-in-bits='0'>
         <!-- void ()* rcu_flavor_struct::read_lock -->
-        <var-decl name='read_lock' type-id='type-id-18' visibility='default' filepath='../src/urcu-flavor.h' line='41' column='1'/>
+        <var-decl name='read_lock' type-id='type-id-12' visibility='default' filepath='../src/urcu-flavor.h' line='41' 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-18' visibility='default' filepath='../src/urcu-flavor.h' line='42' column='1'/>
+        <var-decl name='read_unlock' type-id='type-id-12' visibility='default' filepath='../src/urcu-flavor.h' line='42' 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-19' visibility='default' filepath='../src/urcu-flavor.h' line='43' column='1'/>
+        <var-decl name='read_ongoing' type-id='type-id-13' visibility='default' filepath='../src/urcu-flavor.h' line='43' 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-18' visibility='default' filepath='../src/urcu-flavor.h' line='44' column='1'/>
+        <var-decl name='read_quiescent_state' type-id='type-id-12' visibility='default' filepath='../src/urcu-flavor.h' line='44' 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-20' visibility='default' filepath='../src/urcu-flavor.h' line='45' column='1'/>
+        <var-decl name='update_call_rcu' type-id='type-id-14' visibility='default' filepath='../src/urcu-flavor.h' line='45' 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-18' visibility='default' filepath='../src/urcu-flavor.h' line='47' column='1'/>
+        <var-decl name='update_synchronize_rcu' type-id='type-id-12' visibility='default' filepath='../src/urcu-flavor.h' line='47' 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-21' visibility='default' filepath='../src/urcu-flavor.h' line='48' column='1'/>
+        <var-decl name='update_defer_rcu' type-id='type-id-15' visibility='default' filepath='../src/urcu-flavor.h' line='48' 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-18' visibility='default' filepath='../src/urcu-flavor.h' line='50' column='1'/>
+        <var-decl name='thread_offline' type-id='type-id-12' visibility='default' filepath='../src/urcu-flavor.h' line='50' 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-18' visibility='default' filepath='../src/urcu-flavor.h' line='51' column='1'/>
+        <var-decl name='thread_online' type-id='type-id-12' visibility='default' filepath='../src/urcu-flavor.h' line='51' 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-18' visibility='default' filepath='../src/urcu-flavor.h' line='52' column='1'/>
+        <var-decl name='register_thread' type-id='type-id-12' visibility='default' filepath='../src/urcu-flavor.h' line='52' 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-18' visibility='default' filepath='../src/urcu-flavor.h' line='53' column='1'/>
+        <var-decl name='unregister_thread' type-id='type-id-12' visibility='default' filepath='../src/urcu-flavor.h' line='53' 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-18' visibility='default' filepath='../src/urcu-flavor.h' line='55' column='1'/>
+        <var-decl name='barrier' type-id='type-id-12' visibility='default' filepath='../src/urcu-flavor.h' line='55' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='768'>
         <!-- void (urcu_atfork*)* rcu_flavor_struct::register_rculfhash_atfork -->
-        <var-decl name='register_rculfhash_atfork' type-id='type-id-22' visibility='default' filepath='../src/urcu-flavor.h' line='57' column='1'/>
+        <var-decl name='register_rculfhash_atfork' type-id='type-id-16' visibility='default' filepath='../src/urcu-flavor.h' line='57' column='1'/>
       </data-member>
       <data-member access='public' layout-offset-in-bits='832'>
         <!-- void (urcu_atfork*)* rcu_flavor_struct::unregister_rculfhash_atfork -->
-        <var-decl name='unregister_rculfhash_atfork' type-id='type-id-22' visibility='default' filepath='../src/urcu-flavor.h' line='58' column='1'/>
+        <var-decl name='unregister_rculfhash_atfork' type-id='type-id-16' visibility='default' filepath='../src/urcu-flavor.h' line='58' column='1'/>
       </data-member>
     </class-decl>
+    <!-- void -->
+    <type-decl name='void' id='type-id-17'/>
+    <!-- void ()* -->
+    <pointer-type-def type-id='type-id-18' size-in-bits='64' id='type-id-12'/>
+    <!-- int ()* -->
+    <pointer-type-def type-id='type-id-19' size-in-bits='64' id='type-id-13'/>
     <!-- struct rcu_head -->
-    <class-decl name='rcu_head' size-in-bits='128' is-struct='yes' visibility='default' filepath='../src/urcu-call-rcu.h' line='59' column='1' id='type-id-23'>
+    <class-decl name='rcu_head' size-in-bits='128' is-struct='yes' visibility='default' filepath='../src/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-24' visibility='default' filepath='../src/urcu-call-rcu.h' line='60' column='1'/>
+        <var-decl name='next' type-id='type-id-21' visibility='default' filepath='../src/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-25' visibility='default' filepath='../src/urcu-call-rcu.h' line='61' column='1'/>
+        <var-decl name='func' type-id='type-id-22' visibility='default' filepath='../src/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='../include/urcu/wfcqueue.h' line='59' column='1' id='type-id-24'>
+    <class-decl name='cds_wfcq_node' size-in-bits='64' is-struct='yes' visibility='default' filepath='../include/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-26' visibility='default' filepath='../include/urcu/wfcqueue.h' line='60' column='1'/>
+        <var-decl name='next' type-id='type-id-23' visibility='default' filepath='../include/urcu/wfcqueue.h' line='60' column='1'/>
       </data-member>
     </class-decl>
+    <!-- cds_wfcq_node* -->
+    <pointer-type-def type-id='type-id-21' size-in-bits='64' id='type-id-23'/>
+    <!-- rcu_head* -->
+    <pointer-type-def type-id='type-id-20' size-in-bits='64' id='type-id-24'/>
+    <!-- void (rcu_head*)* -->
+    <pointer-type-def type-id='type-id-25' size-in-bits='64' id='type-id-22'/>
+    <!-- void (rcu_head*, void (rcu_head*)*)* -->
+    <pointer-type-def type-id='type-id-26' size-in-bits='64' id='type-id-14'/>
+    <!-- void* -->
+    <pointer-type-def type-id='type-id-17' size-in-bits='64' id='type-id-27'/>
+    <!-- void (void*)* -->
+    <pointer-type-def type-id='type-id-28' size-in-bits='64' id='type-id-29'/&g