[1/5] ctf-front-end: Set alignment-in-bits property to 0
Commit Message
When comparing IR generated with DWARF and CTF fron-ends the report
of different shows changes in the `alignment-in-bits' ABI XML propery:
<type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='type-id-1'/>
<type-decl name='int' size-in-bits='32' id='type-id-1'/>
1 Changed variable:
[C] 'int a' was changed at test-abi.c:8:1:
type of variable changed:
type size hasn't changed
type alignment changed from 32 to 0
So, CTF set the alignment to `0' to base types, function
types and struct types similarly as DWARF front-end does.
* src/abg-ctf-reader.cc (process_ctf_base_type)
(process_ctf_function_type, process_ctf_struct_type): Adjust
`align_in_bits' argument to `0'.
* tests/data/test-diff-pkg-ctf/dirpkg-3-report-1.txt: Adjust test.
* tests/data/test-diff-pkg-ctf/dirpkg-3-report-2.txt: Likewise.
* tests/data/test-diff-pkg-ctf/gmp-6.x.x86_64-report-0.txt: Likewise.
* tests/data/test-read-ctf/PR27700/test-PR27700.abi: Likewise.
* tests/data/test-read-ctf/test-PR26568-1.o.abi: Likewise.
* tests/data/test-read-ctf/test-PR26568-2.o.abi: Likewise.
* tests/data/test-read-ctf/test-ambiguous-struct-A.o.hash.abi: Likewise.
* tests/data/test-read-ctf/test-ambiguous-struct-B.o.hash.abi: Likewise.
* tests/data/test-read-ctf/test-anonymous-fields.o.abi: Likewise.
* tests/data/test-read-ctf/test-array-of-pointers.abi: Likewise.
* tests/data/test-read-ctf/test-callback.abi: Likewise.
* tests/data/test-read-ctf/test-callback2.abi: Likewise.
* tests/data/test-read-ctf/test-conflicting-type-syms-a.o.hash.abi: Likewise.
* tests/data/test-read-ctf/test-conflicting-type-syms-b.o.hash.abi: Likewise.
* tests/data/test-read-ctf/test-dynamic-array.o.abi: Likewise.
* tests/data/test-read-ctf/test-fallback.abi: Likewise.
* tests/data/test-read-ctf/test-forward-type-decl.abi: Likewise.
* tests/data/test-read-ctf/test-functions-declaration.abi: Likewise.
* tests/data/test-read-ctf/test-linux-module.abi: Likewise.
* tests/data/test-read-ctf/test-linux-module.abi: Likewise.
* tests/data/test-read-ctf/test-list-struct.abi: Likewise.
* tests/data/test-read-ctf/test0.abi: Likewise.
* tests/data/test-read-ctf/test0.hash.abi: Likewise.
* tests/data/test-read-ctf/test1.so.abi: Likewise.
* tests/data/test-read-ctf/test1.so.hash.abi: Likewise.
* tests/data/test-read-ctf/test2.so.abi: Likewise.
* tests/data/test-read-ctf/test2.so.hash.abi: Likewise.
* tests/data/test-read-ctf/test3.so.abi: Likewise.
* tests/data/test-read-ctf/test3.so.hash.abi: Likewise.
* tests/data/test-read-ctf/test4.so.abi: Likewise.
* tests/data/test-read-ctf/test4.so.hash.abi: Likewise.
* tests/data/test-read-ctf/test5.o.abi: Likewise.
* tests/data/test-read-ctf/test7.o.abi: Likewise.
* tests/data/test-read-ctf/test8.o.abi: Likewise.
* tests/data/test-read-ctf/test9.o.abi: Likewise.
Signed-off-by: Guillermo E. Martinez <guillermo.e.martinez@oracle.com>
---
src/abg-ctf-reader.cc | 7 +++---
.../test-diff-pkg-ctf/dirpkg-3-report-1.txt | 1 -
.../test-diff-pkg-ctf/dirpkg-3-report-2.txt | 1 -
.../gmp-6.x.x86_64-report-0.txt | 1 +
.../test-read-ctf/PR27700/test-PR27700.abi | 2 +-
tests/data/test-read-ctf/test-PR26568-1.o.abi | 12 +++++-----
tests/data/test-read-ctf/test-PR26568-2.o.abi | 10 ++++----
.../test-ambiguous-struct-A.o.hash.abi | 10 ++++----
.../test-ambiguous-struct-B.o.hash.abi | 6 ++---
.../test-read-ctf/test-anonymous-fields.o.abi | 10 ++++----
.../test-read-ctf/test-array-of-pointers.abi | 10 ++++----
tests/data/test-read-ctf/test-callback.abi | 8 +++----
tests/data/test-read-ctf/test-callback2.abi | 6 ++---
.../test-conflicting-type-syms-a.o.hash.abi | 2 +-
.../test-conflicting-type-syms-b.o.hash.abi | 2 +-
.../test-read-ctf/test-dynamic-array.o.abi | 10 ++++----
tests/data/test-read-ctf/test-fallback.abi | 2 +-
.../test-read-ctf/test-forward-type-decl.abi | 6 ++---
.../test-functions-declaration.abi | 10 ++++----
.../data/test-read-ctf/test-linux-module.abi | 18 +++++++-------
tests/data/test-read-ctf/test-list-struct.abi | 4 ++--
tests/data/test-read-ctf/test0.abi | 24 +++++++++----------
tests/data/test-read-ctf/test0.hash.abi | 24 +++++++++----------
tests/data/test-read-ctf/test1.so.abi | 4 ++--
tests/data/test-read-ctf/test1.so.hash.abi | 4 ++--
tests/data/test-read-ctf/test2.so.abi | 8 +++----
tests/data/test-read-ctf/test2.so.hash.abi | 8 +++----
tests/data/test-read-ctf/test3.so.abi | 2 +-
tests/data/test-read-ctf/test3.so.hash.abi | 2 +-
tests/data/test-read-ctf/test4.so.abi | 6 ++---
tests/data/test-read-ctf/test4.so.hash.abi | 6 ++---
tests/data/test-read-ctf/test5.o.abi | 18 +++++++-------
tests/data/test-read-ctf/test7.o.abi | 10 ++++----
tests/data/test-read-ctf/test8.o.abi | 2 +-
tests/data/test-read-ctf/test9.o.abi | 20 ++++++++--------
35 files changed, 137 insertions(+), 139 deletions(-)
Comments
Hello Guillermo,
"Guillermo E. Martinez via Libabigail" <libabigail@sourceware.org> a
écrit:
> When comparing IR generated with DWARF and CTF fron-ends the report
> of different shows changes in the `alignment-in-bits' ABI XML propery:
>
> <type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='type-id-1'/>
> <type-decl name='int' size-in-bits='32' id='type-id-1'/>
>
> 1 Changed variable:
>
> [C] 'int a' was changed at test-abi.c:8:1:
> type of variable changed:
> type size hasn't changed
> type alignment changed from 32 to 0
>
> So, CTF set the alignment to `0' to base types, function
> types and struct types similarly as DWARF front-end does.
Right, this makes sense.
>
> * src/abg-ctf-reader.cc (process_ctf_base_type)
> (process_ctf_function_type, process_ctf_struct_type): Adjust
> `align_in_bits' argument to `0'.
> * tests/data/test-diff-pkg-ctf/dirpkg-3-report-1.txt: Adjust test.
> * tests/data/test-diff-pkg-ctf/dirpkg-3-report-2.txt: Likewise.
> * tests/data/test-diff-pkg-ctf/gmp-6.x.x86_64-report-0.txt: Likewise.
> * tests/data/test-read-ctf/PR27700/test-PR27700.abi: Likewise.
> * tests/data/test-read-ctf/test-PR26568-1.o.abi: Likewise.
> * tests/data/test-read-ctf/test-PR26568-2.o.abi: Likewise.
> * tests/data/test-read-ctf/test-ambiguous-struct-A.o.hash.abi: Likewise.
> * tests/data/test-read-ctf/test-ambiguous-struct-B.o.hash.abi: Likewise.
> * tests/data/test-read-ctf/test-anonymous-fields.o.abi: Likewise.
> * tests/data/test-read-ctf/test-array-of-pointers.abi: Likewise.
> * tests/data/test-read-ctf/test-callback.abi: Likewise.
> * tests/data/test-read-ctf/test-callback2.abi: Likewise.
> * tests/data/test-read-ctf/test-conflicting-type-syms-a.o.hash.abi: Likewise.
> * tests/data/test-read-ctf/test-conflicting-type-syms-b.o.hash.abi: Likewise.
> * tests/data/test-read-ctf/test-dynamic-array.o.abi: Likewise.
> * tests/data/test-read-ctf/test-fallback.abi: Likewise.
> * tests/data/test-read-ctf/test-forward-type-decl.abi: Likewise.
> * tests/data/test-read-ctf/test-functions-declaration.abi: Likewise.
> * tests/data/test-read-ctf/test-linux-module.abi: Likewise.
> * tests/data/test-read-ctf/test-linux-module.abi: Likewise.
> * tests/data/test-read-ctf/test-list-struct.abi: Likewise.
> * tests/data/test-read-ctf/test0.abi: Likewise.
> * tests/data/test-read-ctf/test0.hash.abi: Likewise.
> * tests/data/test-read-ctf/test1.so.abi: Likewise.
> * tests/data/test-read-ctf/test1.so.hash.abi: Likewise.
> * tests/data/test-read-ctf/test2.so.abi: Likewise.
> * tests/data/test-read-ctf/test2.so.hash.abi: Likewise.
> * tests/data/test-read-ctf/test3.so.abi: Likewise.
> * tests/data/test-read-ctf/test3.so.hash.abi: Likewise.
> * tests/data/test-read-ctf/test4.so.abi: Likewise.
> * tests/data/test-read-ctf/test4.so.hash.abi: Likewise.
> * tests/data/test-read-ctf/test5.o.abi: Likewise.
> * tests/data/test-read-ctf/test7.o.abi: Likewise.
> * tests/data/test-read-ctf/test8.o.abi: Likewise.
> * tests/data/test-read-ctf/test9.o.abi: Likewise.
OK, the patch looks good to me. I have just slightly amended the commit
log introductory paragraphs. Please find below the patch as applied to
master. Thanks!
[...]
> Signed-off-by: Guillermo E. Martinez <guillermo.e.martinez@oracle.com>
> ---
[...]
Cheers,
From 8b832a9edfadc2d99f3354555938f68a70471183 Mon Sep 17 00:00:00 2001
From: "Guillermo E. Martinez" <guillermo.e.martinez@oracle.com>
Date: Wed, 16 Nov 2022 21:43:01 -0600
Subject: [PATCH] ctf-reader: Set alignment-in-bits property to 0
When comparing the IR generated with the CTF front-end against the one
generated with the DWARF front-end, the report shows changes in type
alignments:
1 Changed variable:
[C] 'int a' was changed at test-abi.c:8:1:
type of variable changed:
type size hasn't changed
type alignment changed from 32 to 0
For the sake of consistency, this patch makes the CTF front-end set
the alignment to `0' for base types, function types and struct types
similarly to what the DWARF front-end does.
* src/abg-ctf-reader.cc (process_ctf_base_type)
(process_ctf_function_type, process_ctf_struct_type): Adjust
`align_in_bits' argument to `0'.
* tests/data/test-diff-pkg-ctf/dirpkg-3-report-1.txt: Adjust test.
* tests/data/test-diff-pkg-ctf/dirpkg-3-report-2.txt: Likewise.
* tests/data/test-diff-pkg-ctf/gmp-6.x.x86_64-report-0.txt: Likewise.
* tests/data/test-read-ctf/PR27700/test-PR27700.abi: Likewise.
* tests/data/test-read-ctf/test-PR26568-1.o.abi: Likewise.
* tests/data/test-read-ctf/test-PR26568-2.o.abi: Likewise.
* tests/data/test-read-ctf/test-ambiguous-struct-A.o.hash.abi: Likewise.
* tests/data/test-read-ctf/test-ambiguous-struct-B.o.hash.abi: Likewise.
* tests/data/test-read-ctf/test-anonymous-fields.o.abi: Likewise.
* tests/data/test-read-ctf/test-array-of-pointers.abi: Likewise.
* tests/data/test-read-ctf/test-callback.abi: Likewise.
* tests/data/test-read-ctf/test-callback2.abi: Likewise.
* tests/data/test-read-ctf/test-conflicting-type-syms-a.o.hash.abi: Likewise.
* tests/data/test-read-ctf/test-conflicting-type-syms-b.o.hash.abi: Likewise.
* tests/data/test-read-ctf/test-dynamic-array.o.abi: Likewise.
* tests/data/test-read-ctf/test-fallback.abi: Likewise.
* tests/data/test-read-ctf/test-forward-type-decl.abi: Likewise.
* tests/data/test-read-ctf/test-functions-declaration.abi: Likewise.
* tests/data/test-read-ctf/test-linux-module.abi: Likewise.
* tests/data/test-read-ctf/test-linux-module.abi: Likewise.
* tests/data/test-read-ctf/test-list-struct.abi: Likewise.
* tests/data/test-read-ctf/test0.abi: Likewise.
* tests/data/test-read-ctf/test0.hash.abi: Likewise.
* tests/data/test-read-ctf/test1.so.abi: Likewise.
* tests/data/test-read-ctf/test1.so.hash.abi: Likewise.
* tests/data/test-read-ctf/test2.so.abi: Likewise.
* tests/data/test-read-ctf/test2.so.hash.abi: Likewise.
* tests/data/test-read-ctf/test3.so.abi: Likewise.
* tests/data/test-read-ctf/test3.so.hash.abi: Likewise.
* tests/data/test-read-ctf/test4.so.abi: Likewise.
* tests/data/test-read-ctf/test4.so.hash.abi: Likewise.
* tests/data/test-read-ctf/test5.o.abi: Likewise.
* tests/data/test-read-ctf/test7.o.abi: Likewise.
* tests/data/test-read-ctf/test8.o.abi: Likewise.
* tests/data/test-read-ctf/test9.o.abi: Likewise.
Signed-off-by: Guillermo E. Martinez <guillermo.e.martinez@oracle.com>
Signed-off-by: Dodji Seketeli <dodji@redhat.com>
---
src/abg-ctf-reader.cc | 7 +++---
.../test-diff-pkg-ctf/dirpkg-3-report-1.txt | 1 -
.../test-diff-pkg-ctf/dirpkg-3-report-2.txt | 1 -
.../gmp-6.x.x86_64-report-0.txt | 1 +
.../test-read-ctf/PR27700/test-PR27700.abi | 2 +-
tests/data/test-read-ctf/test-PR26568-1.o.abi | 12 +++++-----
tests/data/test-read-ctf/test-PR26568-2.o.abi | 10 ++++----
.../test-ambiguous-struct-A.o.hash.abi | 10 ++++----
.../test-ambiguous-struct-B.o.hash.abi | 6 ++---
.../test-read-ctf/test-anonymous-fields.o.abi | 10 ++++----
.../test-read-ctf/test-array-of-pointers.abi | 10 ++++----
tests/data/test-read-ctf/test-callback.abi | 8 +++----
tests/data/test-read-ctf/test-callback2.abi | 6 ++---
.../test-conflicting-type-syms-a.o.hash.abi | 2 +-
.../test-conflicting-type-syms-b.o.hash.abi | 2 +-
.../test-read-ctf/test-dynamic-array.o.abi | 10 ++++----
tests/data/test-read-ctf/test-fallback.abi | 2 +-
.../test-read-ctf/test-forward-type-decl.abi | 6 ++---
.../test-functions-declaration.abi | 10 ++++----
.../data/test-read-ctf/test-linux-module.abi | 18 +++++++-------
tests/data/test-read-ctf/test-list-struct.abi | 4 ++--
tests/data/test-read-ctf/test0.abi | 24 +++++++++----------
tests/data/test-read-ctf/test0.hash.abi | 24 +++++++++----------
tests/data/test-read-ctf/test1.so.abi | 4 ++--
tests/data/test-read-ctf/test1.so.hash.abi | 4 ++--
tests/data/test-read-ctf/test2.so.abi | 8 +++----
tests/data/test-read-ctf/test2.so.hash.abi | 8 +++----
tests/data/test-read-ctf/test3.so.abi | 2 +-
tests/data/test-read-ctf/test3.so.hash.abi | 2 +-
tests/data/test-read-ctf/test4.so.abi | 6 ++---
tests/data/test-read-ctf/test4.so.hash.abi | 6 ++---
tests/data/test-read-ctf/test5.o.abi | 18 +++++++-------
tests/data/test-read-ctf/test7.o.abi | 10 ++++----
tests/data/test-read-ctf/test8.o.abi | 2 +-
tests/data/test-read-ctf/test9.o.abi | 20 ++++++++--------
35 files changed, 137 insertions(+), 139 deletions(-)
diff --git a/src/abg-ctf-reader.cc b/src/abg-ctf-reader.cc
index 9bcb9424..cbc5cbca 100644
--- a/src/abg-ctf-reader.cc
+++ b/src/abg-ctf-reader.cc
@@ -783,7 +783,6 @@ process_ctf_base_type(reader *rdr,
translation_unit_sptr tunit = rdr->cur_transl_unit();
type_decl_sptr result;
- ssize_t type_alignment = ctf_type_align(ctf_dictionary, ctf_type);
const char *type_name = ctf_type_name_raw(ctf_dictionary, ctf_type);
/* Get the type encoding and extract some useful properties of
@@ -822,7 +821,7 @@ process_ctf_base_type(reader *rdr,
result.reset(new type_decl(rdr->env(),
type_name,
type_encoding.cte_bits,
- type_alignment * 8 /* in bits */,
+ /*alignment=*/0,
location(),
type_name /* mangled_name */));
@@ -929,7 +928,7 @@ process_ctf_function_type(reader *rdr,
result.reset(new function_type(ret_type,
function_parms,
tunit->get_address_size(),
- ctf_type_align(ctf_dictionary, ctf_type)));
+ /*alignment=*/0));
if (result)
{
@@ -1087,7 +1086,7 @@ process_ctf_struct_type(reader *rdr,
result.reset(new class_decl(rdr->env(),
struct_type_name,
ctf_type_size(ctf_dictionary, ctf_type) * 8,
- ctf_type_align(ctf_dictionary, ctf_type) * 8,
+ /*alignment=*/0,
true /* is_struct */,
location(),
decl_base::VISIBILITY_DEFAULT,
diff --git a/tests/data/test-diff-pkg-ctf/dirpkg-3-report-1.txt b/tests/data/test-diff-pkg-ctf/dirpkg-3-report-1.txt
index 4938d221..aa1d7732 100644
--- a/tests/data/test-diff-pkg-ctf/dirpkg-3-report-1.txt
+++ b/tests/data/test-diff-pkg-ctf/dirpkg-3-report-1.txt
@@ -8,7 +8,6 @@
parameter 1 of type 'S1*' has sub-type changes:
in pointed to type 'struct S1':
type size changed from 0 to 32 (in bits)
- type alignment changed from 0 to 32
1 data member insertion:
'int mem2', at offset 0 (in bits)
diff --git a/tests/data/test-diff-pkg-ctf/dirpkg-3-report-2.txt b/tests/data/test-diff-pkg-ctf/dirpkg-3-report-2.txt
index 4938d221..aa1d7732 100644
--- a/tests/data/test-diff-pkg-ctf/dirpkg-3-report-2.txt
+++ b/tests/data/test-diff-pkg-ctf/dirpkg-3-report-2.txt
@@ -8,7 +8,6 @@
parameter 1 of type 'S1*' has sub-type changes:
in pointed to type 'struct S1':
type size changed from 0 to 32 (in bits)
- type alignment changed from 0 to 32
1 data member insertion:
'int mem2', at offset 0 (in bits)
diff --git a/tests/data/test-diff-pkg-ctf/gmp-6.x.x86_64-report-0.txt b/tests/data/test-diff-pkg-ctf/gmp-6.x.x86_64-report-0.txt
index d3915f14..171d6490 100644
--- a/tests/data/test-diff-pkg-ctf/gmp-6.x.x86_64-report-0.txt
+++ b/tests/data/test-diff-pkg-ctf/gmp-6.x.x86_64-report-0.txt
@@ -133,6 +133,7 @@
underlying type 'const mp_limb_t*' changed:
entity changed from 'const mp_limb_t*' to 'unsigned long int'
type size hasn't changed
+ type alignment changed from 64 to 0
parameter 2 of type 'typedef mp_size_t' changed:
typedef name changed from mp_size_t to mp_limb_t
underlying type 'long int' changed:
diff --git a/tests/data/test-read-ctf/PR27700/test-PR27700.abi b/tests/data/test-read-ctf/PR27700/test-PR27700.abi
index fe3a897d..4f34eb8a 100644
--- a/tests/data/test-read-ctf/PR27700/test-PR27700.abi
+++ b/tests/data/test-read-ctf/PR27700/test-PR27700.abi
@@ -12,7 +12,7 @@
<enumerator name='foo_e3' value='3'/>
</enum-decl>
<pointer-type-def type-id='022218d8' size-in-bits='64' alignment-in-bits='64' id='8750e847'/>
- <function-decl name='foo' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='foo'>
+ <function-decl name='foo' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='foo'>
<parameter type-id='8750e847'/>
<return type-id='48b5725f'/>
</function-decl>
diff --git a/tests/data/test-read-ctf/test-PR26568-1.o.abi b/tests/data/test-read-ctf/test-PR26568-1.o.abi
index 7df180d4..60017457 100644
--- a/tests/data/test-read-ctf/test-PR26568-1.o.abi
+++ b/tests/data/test-read-ctf/test-PR26568-1.o.abi
@@ -3,19 +3,19 @@
<elf-symbol name='fun' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='type-id-1'/>
- <type-decl name='long int' size-in-bits='64' alignment-in-bits='64' id='type-id-2'/>
- <class-decl name='A' size-in-bits='64' alignment-in-bits='64' is-struct='yes' visibility='default' id='type-id-3'>
+ <type-decl name='int' size-in-bits='32' id='type-id-1'/>
+ <type-decl name='long int' size-in-bits='64' id='type-id-2'/>
+ <class-decl name='A' size-in-bits='64' is-struct='yes' visibility='default' id='type-id-3'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='' type-id='type-id-4' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='' size-in-bits='32' alignment-in-bits='32' is-struct='yes' is-anonymous='yes' visibility='default' id='type-id-5'>
+ <class-decl name='' size-in-bits='32' is-struct='yes' is-anonymous='yes' visibility='default' id='type-id-5'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='x' type-id='type-id-1' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='' size-in-bits='64' alignment-in-bits='64' is-struct='yes' is-anonymous='yes' visibility='default' id='type-id-6'>
+ <class-decl name='' size-in-bits='64' is-struct='yes' is-anonymous='yes' visibility='default' id='type-id-6'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='y' type-id='type-id-2' visibility='default'/>
</data-member>
@@ -29,7 +29,7 @@
</data-member>
</union-decl>
<pointer-type-def type-id='type-id-3' size-in-bits='64' alignment-in-bits='64' id='type-id-7'/>
- <function-decl name='fun' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='fun'>
+ <function-decl name='fun' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='fun'>
<parameter type-id='type-id-7'/>
<return type-id='type-id-8'/>
</function-decl>
diff --git a/tests/data/test-read-ctf/test-PR26568-2.o.abi b/tests/data/test-read-ctf/test-PR26568-2.o.abi
index 44f72263..d038316a 100644
--- a/tests/data/test-read-ctf/test-PR26568-2.o.abi
+++ b/tests/data/test-read-ctf/test-PR26568-2.o.abi
@@ -3,14 +3,14 @@
<elf-symbol name='fun' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='type-id-1'/>
- <type-decl name='long int' size-in-bits='64' alignment-in-bits='64' id='type-id-2'/>
- <class-decl name='' size-in-bits='32' alignment-in-bits='32' is-struct='yes' is-anonymous='yes' visibility='default' id='type-id-3'>
+ <type-decl name='int' size-in-bits='32' id='type-id-1'/>
+ <type-decl name='long int' size-in-bits='64' id='type-id-2'/>
+ <class-decl name='' size-in-bits='32' is-struct='yes' is-anonymous='yes' visibility='default' id='type-id-3'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='x' type-id='type-id-1' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='' size-in-bits='64' alignment-in-bits='64' is-struct='yes' is-anonymous='yes' visibility='default' id='type-id-4'>
+ <class-decl name='' size-in-bits='64' is-struct='yes' is-anonymous='yes' visibility='default' id='type-id-4'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='y' type-id='type-id-2' visibility='default'/>
</data-member>
@@ -24,7 +24,7 @@
</data-member>
</union-decl>
<pointer-type-def type-id='type-id-5' size-in-bits='64' alignment-in-bits='64' id='type-id-6'/>
- <function-decl name='fun' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='fun'>
+ <function-decl name='fun' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='fun'>
<parameter type-id='type-id-6'/>
<return type-id='type-id-7'/>
</function-decl>
diff --git a/tests/data/test-read-ctf/test-ambiguous-struct-A.o.hash.abi b/tests/data/test-read-ctf/test-ambiguous-struct-A.o.hash.abi
index 91ddf181..42ce36de 100644
--- a/tests/data/test-read-ctf/test-ambiguous-struct-A.o.hash.abi
+++ b/tests/data/test-read-ctf/test-ambiguous-struct-A.o.hash.abi
@@ -3,11 +3,11 @@
<elf-symbol name='foo' size='8' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-variable-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <array-type-def dimensions='1' type-id='3ed987a4' size-in-bits='12800' alignment-in-bits='64' id='e022be37'>
+ <array-type-def dimensions='1' type-id='3ed987a4' size-in-bits='12800' id='e022be37'>
<subrange length='50' type-id='f0981eeb' id='3c1860ce'/>
</array-type-def>
- <type-decl name='long int' size-in-bits='64' alignment-in-bits='64' id='95e97e5e'/>
- <class-decl name='A' size-in-bits='256' alignment-in-bits='64' is-struct='yes' visibility='default' id='3ed987a4'>
+ <type-decl name='long int' size-in-bits='64' id='95e97e5e'/>
+ <class-decl name='A' size-in-bits='256' is-struct='yes' visibility='default' id='3ed987a4'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='b' type-id='41d98c5d' visibility='default'/>
</data-member>
@@ -21,13 +21,13 @@
<var-decl name='b2' type-id='41d98c5d' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='B' size-in-bits='64' alignment-in-bits='64' is-struct='yes' visibility='default' id='41d98c5d'>
+ <class-decl name='B' size-in-bits='64' is-struct='yes' visibility='default' id='41d98c5d'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='a' type-id='84d5ac12' visibility='default'/>
</data-member>
</class-decl>
<typedef-decl name='a_array' type-id='e022be37' id='1c12b755'/>
- <type-decl name='unsigned long int' size-in-bits='64' alignment-in-bits='64' id='f0981eeb'/>
+ <type-decl name='unsigned long int' size-in-bits='64' id='f0981eeb'/>
<pointer-type-def type-id='3ed987a4' size-in-bits='64' alignment-in-bits='64' id='84d5ac12'/>
<pointer-type-def type-id='1c12b755' size-in-bits='64' alignment-in-bits='64' id='55cd64e8'/>
<var-decl name='foo' type-id='55cd64e8' mangled-name='foo' visibility='default' elf-symbol-id='foo'/>
diff --git a/tests/data/test-read-ctf/test-ambiguous-struct-B.o.hash.abi b/tests/data/test-read-ctf/test-ambiguous-struct-B.o.hash.abi
index cba10afd..351483de 100644
--- a/tests/data/test-read-ctf/test-ambiguous-struct-B.o.hash.abi
+++ b/tests/data/test-read-ctf/test-ambiguous-struct-B.o.hash.abi
@@ -3,8 +3,8 @@
<elf-symbol name='a' size='24' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-variable-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='95e97e5e'/>
- <class-decl name='A' size-in-bits='192' alignment-in-bits='64' is-struct='yes' visibility='default' id='3ed987a4'>
+ <type-decl name='int' size-in-bits='32' id='95e97e5e'/>
+ <class-decl name='A' size-in-bits='192' is-struct='yes' visibility='default' id='3ed987a4'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='b' type-id='41d98c5d' visibility='default'/>
</data-member>
@@ -15,7 +15,7 @@
<var-decl name='b2' type-id='41d98c5d' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='B' size-in-bits='64' alignment-in-bits='64' is-struct='yes' visibility='default' id='41d98c5d'>
+ <class-decl name='B' size-in-bits='64' is-struct='yes' visibility='default' id='41d98c5d'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='a' type-id='84d5ac12' visibility='default'/>
</data-member>
diff --git a/tests/data/test-read-ctf/test-anonymous-fields.o.abi b/tests/data/test-read-ctf/test-anonymous-fields.o.abi
index 2df54c3b..987daa57 100644
--- a/tests/data/test-read-ctf/test-anonymous-fields.o.abi
+++ b/tests/data/test-read-ctf/test-anonymous-fields.o.abi
@@ -3,18 +3,18 @@
<elf-symbol name='t' size='8' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-variable-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='type-id-1'/>
- <class-decl name='uprobe_task' size-in-bits='64' alignment-in-bits='64' is-struct='yes' visibility='default' id='type-id-2'>
+ <type-decl name='int' size-in-bits='32' id='type-id-1'/>
+ <class-decl name='uprobe_task' size-in-bits='64' is-struct='yes' visibility='default' id='type-id-2'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='' type-id='type-id-3' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='' size-in-bits='32' alignment-in-bits='32' is-struct='yes' is-anonymous='yes' visibility='default' id='type-id-4'>
+ <class-decl name='' size-in-bits='32' is-struct='yes' is-anonymous='yes' visibility='default' id='type-id-4'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='dup_xol_work' type-id='type-id-1' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='' size-in-bits='64' alignment-in-bits='64' is-struct='yes' is-anonymous='yes' visibility='default' id='type-id-5'>
+ <class-decl name='' size-in-bits='64' is-struct='yes' is-anonymous='yes' visibility='default' id='type-id-5'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='vaddr' type-id='type-id-6' visibility='default'/>
</data-member>
@@ -27,7 +27,7 @@
<var-decl name='' type-id='type-id-4' visibility='default'/>
</data-member>
</union-decl>
- <type-decl name='unsigned long int' size-in-bits='64' alignment-in-bits='64' id='type-id-6'/>
+ <type-decl name='unsigned long int' size-in-bits='64' id='type-id-6'/>
<var-decl name='t' type-id='type-id-2' mangled-name='t' visibility='default' elf-symbol-id='t'/>
</abi-instr>
</abi-corpus>
diff --git a/tests/data/test-read-ctf/test-array-of-pointers.abi b/tests/data/test-read-ctf/test-array-of-pointers.abi
index 47135315..c521bbec 100644
--- a/tests/data/test-read-ctf/test-array-of-pointers.abi
+++ b/tests/data/test-read-ctf/test-array-of-pointers.abi
@@ -6,27 +6,27 @@
<array-type-def dimensions='1' type-id='type-id-1' size-in-bits='256' alignment-in-bits='64' id='type-id-2'>
<subrange length='4' type-id='type-id-3' id='type-id-4'/>
</array-type-def>
- <class-decl name='cgroup' size-in-bits='256' alignment-in-bits='64' is-struct='yes' visibility='default' id='type-id-5'>
+ <class-decl name='cgroup' size-in-bits='256' is-struct='yes' visibility='default' id='type-id-5'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='s1' type-id='type-id-2' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='css_set' size-in-bits='256' alignment-in-bits='64' is-struct='yes' visibility='default' id='type-id-6'>
+ <class-decl name='css_set' size-in-bits='256' is-struct='yes' visibility='default' id='type-id-6'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='s0' type-id='type-id-2' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='state' size-in-bits='64' alignment-in-bits='64' is-struct='yes' visibility='default' id='type-id-7'>
+ <class-decl name='state' size-in-bits='64' is-struct='yes' visibility='default' id='type-id-7'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='cg' type-id='type-id-8' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='task' size-in-bits='64' alignment-in-bits='64' is-struct='yes' visibility='default' id='type-id-9'>
+ <class-decl name='task' size-in-bits='64' is-struct='yes' visibility='default' id='type-id-9'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='s' type-id='type-id-10' visibility='default'/>
</data-member>
</class-decl>
- <type-decl name='unsigned long int' size-in-bits='64' alignment-in-bits='64' id='type-id-3'/>
+ <type-decl name='unsigned long int' size-in-bits='64' id='type-id-3'/>
<pointer-type-def type-id='type-id-5' size-in-bits='64' alignment-in-bits='64' id='type-id-8'/>
<pointer-type-def type-id='type-id-6' size-in-bits='64' alignment-in-bits='64' id='type-id-10'/>
<pointer-type-def type-id='type-id-7' size-in-bits='64' alignment-in-bits='64' id='type-id-1'/>
diff --git a/tests/data/test-read-ctf/test-callback.abi b/tests/data/test-read-ctf/test-callback.abi
index 7f9b6c5f..3c90e737 100644
--- a/tests/data/test-read-ctf/test-callback.abi
+++ b/tests/data/test-read-ctf/test-callback.abi
@@ -4,12 +4,12 @@
<elf-symbol name='f2' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='type-id-1'/>
- <type-decl name='long int' size-in-bits='64' alignment-in-bits='64' id='type-id-2'/>
- <function-decl name='assign' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='assign'>
+ <type-decl name='int' size-in-bits='32' id='type-id-1'/>
+ <type-decl name='long int' size-in-bits='64' id='type-id-2'/>
+ <function-decl name='assign' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='assign'>
<return type-id='type-id-3'/>
</function-decl>
- <function-decl name='f2' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='f2'>
+ <function-decl name='f2' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='f2'>
<parameter type-id='type-id-1'/>
<parameter type-id='type-id-2'/>
<return type-id='type-id-3'/>
diff --git a/tests/data/test-read-ctf/test-callback2.abi b/tests/data/test-read-ctf/test-callback2.abi
index c2ffdb18..87b43d06 100644
--- a/tests/data/test-read-ctf/test-callback2.abi
+++ b/tests/data/test-read-ctf/test-callback2.abi
@@ -3,8 +3,8 @@
<elf-symbol name='s0' size='8' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-variable-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='type-id-1'/>
- <class-decl name='s0' size-in-bits='64' alignment-in-bits='64' is-struct='yes' visibility='default' id='type-id-2'>
+ <type-decl name='int' size-in-bits='32' id='type-id-1'/>
+ <class-decl name='s0' size-in-bits='64' is-struct='yes' visibility='default' id='type-id-2'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='mem_fun' type-id='type-id-3' visibility='default'/>
</data-member>
@@ -12,7 +12,7 @@
<pointer-type-def type-id='type-id-4' size-in-bits='64' alignment-in-bits='64' id='type-id-3'/>
<pointer-type-def type-id='type-id-2' size-in-bits='64' alignment-in-bits='64' id='type-id-5'/>
<var-decl name='s0' type-id='type-id-5' mangled-name='s0' visibility='default' elf-symbol-id='s0'/>
- <function-type size-in-bits='64' alignment-in-bits='8' id='type-id-4'>
+ <function-type size-in-bits='64' id='type-id-4'>
<parameter type-id='type-id-5'/>
<return type-id='type-id-1'/>
</function-type>
diff --git a/tests/data/test-read-ctf/test-conflicting-type-syms-a.o.hash.abi b/tests/data/test-read-ctf/test-conflicting-type-syms-a.o.hash.abi
index 85e780a9..79079b04 100644
--- a/tests/data/test-read-ctf/test-conflicting-type-syms-a.o.hash.abi
+++ b/tests/data/test-read-ctf/test-conflicting-type-syms-a.o.hash.abi
@@ -4,7 +4,7 @@
<elf-symbol name='ignore2' size='8' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-variable-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='long int' size-in-bits='64' alignment-in-bits='64' id='95e97e5e'/>
+ <type-decl name='long int' size-in-bits='64' id='95e97e5e'/>
<typedef-decl name='a_t' type-id='95e97e5e' id='40acc204'/>
<typedef-decl name='b_t' type-id='95e97e5e' id='b3d2db81'/>
<pointer-type-def type-id='40acc204' size-in-bits='64' alignment-in-bits='64' id='c6fd4117'/>
diff --git a/tests/data/test-read-ctf/test-conflicting-type-syms-b.o.hash.abi b/tests/data/test-read-ctf/test-conflicting-type-syms-b.o.hash.abi
index 400606dd..74b25d36 100644
--- a/tests/data/test-read-ctf/test-conflicting-type-syms-b.o.hash.abi
+++ b/tests/data/test-read-ctf/test-conflicting-type-syms-b.o.hash.abi
@@ -4,7 +4,7 @@
<elf-symbol name='ignore1' size='8' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-variable-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='long int' size-in-bits='64' alignment-in-bits='64' id='95e97e5e'/>
+ <type-decl name='long int' size-in-bits='64' id='95e97e5e'/>
<typedef-decl name='a_t' type-id='95e97e5e' id='40acc204'/>
<typedef-decl name='b_t' type-id='95e97e5e' id='b3d2db81'/>
<var-decl name='b' type-id='40acc204' mangled-name='b' visibility='default' elf-symbol-id='b'/>
diff --git a/tests/data/test-read-ctf/test-dynamic-array.o.abi b/tests/data/test-read-ctf/test-dynamic-array.o.abi
index a9849d49..a8978c0c 100644
--- a/tests/data/test-read-ctf/test-dynamic-array.o.abi
+++ b/tests/data/test-read-ctf/test-dynamic-array.o.abi
@@ -3,11 +3,11 @@
<elf-symbol name='use_struct_s' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='char' size-in-bits='8' alignment-in-bits='8' id='type-id-1'/>
- <array-type-def dimensions='1' type-id='type-id-1' size-in-bits='infinite' alignment-in-bits='8' id='type-id-2'>
+ <type-decl name='char' size-in-bits='8' id='type-id-1'/>
+ <array-type-def dimensions='1' type-id='type-id-1' size-in-bits='infinite' id='type-id-2'>
<subrange length='infinite' type-id='type-id-3' id='type-id-4'/>
</array-type-def>
- <class-decl name='S' size-in-bits='64' alignment-in-bits='64' is-struct='yes' visibility='default' id='type-id-5'>
+ <class-decl name='S' size-in-bits='64' is-struct='yes' visibility='default' id='type-id-5'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='a' type-id='type-id-6' visibility='default'/>
</data-member>
@@ -18,10 +18,10 @@
<var-decl name='c' type-id='type-id-2' visibility='default'/>
</data-member>
</class-decl>
- <type-decl name='unsigned long int' size-in-bits='64' alignment-in-bits='64' id='type-id-3'/>
+ <type-decl name='unsigned long int' size-in-bits='64' id='type-id-3'/>
<pointer-type-def type-id='type-id-5' size-in-bits='64' alignment-in-bits='64' id='type-id-7'/>
<pointer-type-def type-id='type-id-1' size-in-bits='64' alignment-in-bits='64' id='type-id-6'/>
- <function-decl name='use_struct_s' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='use_struct_s'>
+ <function-decl name='use_struct_s' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='use_struct_s'>
<parameter type-id='type-id-7'/>
<return type-id='type-id-8'/>
</function-decl>
diff --git a/tests/data/test-read-ctf/test-fallback.abi b/tests/data/test-read-ctf/test-fallback.abi
index e7d30594..9f09cd56 100644
--- a/tests/data/test-read-ctf/test-fallback.abi
+++ b/tests/data/test-read-ctf/test-fallback.abi
@@ -3,7 +3,7 @@
<elf-symbol name='a' size='4' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-variable-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='type-id-1'/>
+ <type-decl name='int' size-in-bits='32' id='type-id-1'/>
<var-decl name='a' type-id='type-id-1' mangled-name='a' visibility='default' elf-symbol-id='a'/>
</abi-instr>
</abi-corpus>
diff --git a/tests/data/test-read-ctf/test-forward-type-decl.abi b/tests/data/test-read-ctf/test-forward-type-decl.abi
index 026e7d32..c239187b 100644
--- a/tests/data/test-read-ctf/test-forward-type-decl.abi
+++ b/tests/data/test-read-ctf/test-forward-type-decl.abi
@@ -3,7 +3,7 @@
<elf-symbol name='addr' size='8' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-variable-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <class-decl name='address_space' size-in-bits='128' alignment-in-bits='64' is-struct='yes' visibility='default' id='type-id-1'>
+ <class-decl name='address_space' size-in-bits='128' is-struct='yes' visibility='default' id='type-id-1'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='rb_root' type-id='type-id-2' visibility='default'/>
</data-member>
@@ -11,12 +11,12 @@
<var-decl name='page' type-id='type-id-3' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='page' size-in-bits='64' alignment-in-bits='64' is-struct='yes' visibility='default' id='type-id-4'>
+ <class-decl name='page' size-in-bits='64' is-struct='yes' visibility='default' id='type-id-4'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='mapping' type-id='type-id-5' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='rb_node' size-in-bits='64' alignment-in-bits='64' is-struct='yes' visibility='default' id='type-id-6'>
+ <class-decl name='rb_node' size-in-bits='64' is-struct='yes' visibility='default' id='type-id-6'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='rb_left' type-id='type-id-2' visibility='default'/>
</data-member>
diff --git a/tests/data/test-read-ctf/test-functions-declaration.abi b/tests/data/test-read-ctf/test-functions-declaration.abi
index dd8516fd..193221e4 100644
--- a/tests/data/test-read-ctf/test-functions-declaration.abi
+++ b/tests/data/test-read-ctf/test-functions-declaration.abi
@@ -4,19 +4,19 @@
<elf-symbol name='attribute_container_device_trigger' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='type-id-1'/>
- <type-decl name='long int' size-in-bits='64' alignment-in-bits='64' id='type-id-2'/>
+ <type-decl name='int' size-in-bits='32' id='type-id-1'/>
+ <type-decl name='long int' size-in-bits='64' id='type-id-2'/>
<pointer-type-def type-id='type-id-3' size-in-bits='64' alignment-in-bits='64' id='type-id-4'/>
- <function-decl name='attribute_container_add_device' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='attribute_container_add_device'>
+ <function-decl name='attribute_container_add_device' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='attribute_container_add_device'>
<parameter type-id='type-id-4'/>
<return type-id='type-id-5'/>
</function-decl>
- <function-decl name='attribute_container_device_trigger' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='attribute_container_device_trigger'>
+ <function-decl name='attribute_container_device_trigger' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='attribute_container_device_trigger'>
<parameter type-id='type-id-4'/>
<return type-id='type-id-5'/>
</function-decl>
<type-decl name='void' id='type-id-5'/>
- <function-type size-in-bits='64' alignment-in-bits='8' id='type-id-3'>
+ <function-type size-in-bits='64' id='type-id-3'>
<parameter type-id='type-id-1'/>
<parameter type-id='type-id-2'/>
<return type-id='type-id-5'/>
diff --git a/tests/data/test-read-ctf/test-linux-module.abi b/tests/data/test-read-ctf/test-linux-module.abi
index e8081f16..933b9f82 100644
--- a/tests/data/test-read-ctf/test-linux-module.abi
+++ b/tests/data/test-read-ctf/test-linux-module.abi
@@ -7,8 +7,8 @@
<elf-symbol name='global_sym' size='4' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes' crc='0x44a6713b'/>
</elf-variable-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='type-id-1'/>
- <class-decl name='__raw_tickets' size-in-bits='32' alignment-in-bits='16' is-struct='yes' visibility='default' id='type-id-2'>
+ <type-decl name='int' size-in-bits='32' id='type-id-1'/>
+ <class-decl name='__raw_tickets' size-in-bits='32' is-struct='yes' visibility='default' id='type-id-2'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='owner' type-id='type-id-3' visibility='default'/>
</data-member>
@@ -16,17 +16,17 @@
<var-decl name='next' type-id='type-id-3' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='arch_spinlock_t' size-in-bits='32' alignment-in-bits='32' is-struct='yes' naming-typedef-id='type-id-4' visibility='default' id='type-id-5'>
+ <class-decl name='arch_spinlock_t' size-in-bits='32' is-struct='yes' naming-typedef-id='type-id-4' visibility='default' id='type-id-5'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='' type-id='type-id-6' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='raw_spinlock' size-in-bits='32' alignment-in-bits='32' is-struct='yes' visibility='default' id='type-id-7'>
+ <class-decl name='raw_spinlock' size-in-bits='32' is-struct='yes' visibility='default' id='type-id-7'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='raw_lock' type-id='type-id-4' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='spinlock' size-in-bits='32' alignment-in-bits='32' is-struct='yes' visibility='default' id='type-id-8'>
+ <class-decl name='spinlock' size-in-bits='32' is-struct='yes' visibility='default' id='type-id-8'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='' type-id='type-id-9' visibility='default'/>
</data-member>
@@ -50,13 +50,13 @@
<var-decl name='tickets' type-id='type-id-2' visibility='default'/>
</data-member>
</union-decl>
- <type-decl name='unsigned int' size-in-bits='32' alignment-in-bits='32' id='type-id-12'/>
- <type-decl name='unsigned short int' size-in-bits='16' alignment-in-bits='16' id='type-id-10'/>
+ <type-decl name='unsigned int' size-in-bits='32' id='type-id-12'/>
+ <type-decl name='unsigned short int' size-in-bits='16' id='type-id-10'/>
<pointer-type-def type-id='type-id-14' size-in-bits='64' alignment-in-bits='64' id='type-id-16'/>
- <function-decl name='testexport' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='testexport'>
+ <function-decl name='testexport' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='testexport'>
<return type-id='type-id-1'/>
</function-decl>
- <function-decl name='testexport2' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='testexport2'>
+ <function-decl name='testexport2' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='testexport2'>
<parameter type-id='type-id-16'/>
<return type-id='type-id-1'/>
</function-decl>
diff --git a/tests/data/test-read-ctf/test-list-struct.abi b/tests/data/test-read-ctf/test-list-struct.abi
index ecd4d08b..3fdc6aec 100644
--- a/tests/data/test-read-ctf/test-list-struct.abi
+++ b/tests/data/test-read-ctf/test-list-struct.abi
@@ -4,8 +4,8 @@
<elf-symbol name='n2' size='16' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-variable-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='type-id-1'/>
- <class-decl name='rb_node_b' size-in-bits='128' alignment-in-bits='64' is-struct='yes' visibility='default' id='type-id-2'>
+ <type-decl name='int' size-in-bits='32' id='type-id-1'/>
+ <class-decl name='rb_node_b' size-in-bits='128' is-struct='yes' visibility='default' id='type-id-2'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='this' type-id='type-id-3' visibility='default'/>
</data-member>
diff --git a/tests/data/test-read-ctf/test0.abi b/tests/data/test-read-ctf/test0.abi
index 2129de41..05430067 100644
--- a/tests/data/test-read-ctf/test0.abi
+++ b/tests/data/test-read-ctf/test0.abi
@@ -20,21 +20,21 @@
<elf-symbol name='test_volatile' size='2' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-variable-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='' is-anonymous='yes' size-in-bits='1' alignment-in-bits='8' id='type-id-1'/>
- <type-decl name='char' size-in-bits='8' alignment-in-bits='8' id='type-id-2'/>
- <type-decl name='float' size-in-bits='32' alignment-in-bits='32' id='type-id-3'/>
- <type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='type-id-4'/>
- <array-type-def dimensions='1' type-id='type-id-4' size-in-bits='320' alignment-in-bits='32' id='type-id-5'>
+ <type-decl name='' is-anonymous='yes' size-in-bits='1' id='type-id-1'/>
+ <type-decl name='char' size-in-bits='8' id='type-id-2'/>
+ <type-decl name='float' size-in-bits='32' id='type-id-3'/>
+ <type-decl name='int' size-in-bits='32' id='type-id-4'/>
+ <array-type-def dimensions='1' type-id='type-id-4' size-in-bits='320' id='type-id-5'>
<subrange length='10' type-id='type-id-6' id='type-id-7'/>
</array-type-def>
- <type-decl name='long int' size-in-bits='64' alignment-in-bits='64' id='type-id-8'/>
- <type-decl name='short int' size-in-bits='16' alignment-in-bits='16' id='type-id-9'/>
- <class-decl name='S' size-in-bits='32' alignment-in-bits='32' is-struct='yes' visibility='default' id='type-id-10'>
+ <type-decl name='long int' size-in-bits='64' id='type-id-8'/>
+ <type-decl name='short int' size-in-bits='16' id='type-id-9'/>
+ <class-decl name='S' size-in-bits='32' is-struct='yes' visibility='default' id='type-id-10'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='m0' type-id='type-id-4' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='' size-in-bits='32' alignment-in-bits='8' is-struct='yes' is-anonymous='yes' visibility='default' id='type-id-11'>
+ <class-decl name='' size-in-bits='32' is-struct='yes' is-anonymous='yes' visibility='default' id='type-id-11'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='status0' type-id='type-id-1' visibility='default'/>
</data-member>
@@ -42,7 +42,7 @@
<var-decl name='status1' type-id='type-id-1' visibility='default'/>
</data-member>
</class-decl>
- <type-decl name='unsigned long int' size-in-bits='64' alignment-in-bits='64' id='type-id-6'/>
+ <type-decl name='unsigned long int' size-in-bits='64' id='type-id-6'/>
<pointer-type-def type-id='type-id-10' size-in-bits='64' alignment-in-bits='64' id='type-id-12'/>
<pointer-type-def type-id='type-id-2' size-in-bits='64' alignment-in-bits='64' id='type-id-13'/>
<qualified-type-def type-id='type-id-10' const='yes' id='type-id-14'/>
@@ -53,11 +53,11 @@
<var-decl name='test_pointer' type-id='type-id-13' mangled-name='test_pointer' visibility='default' elf-symbol-id='test_pointer'/>
<var-decl name='test_const' type-id='type-id-14' mangled-name='test_const' visibility='default' elf-symbol-id='test_const'/>
<var-decl name='test_float' type-id='type-id-3' mangled-name='test_float' visibility='default' elf-symbol-id='test_float'/>
- <function-decl name='foo_1' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='foo_1'>
+ <function-decl name='foo_1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='foo_1'>
<parameter type-id='type-id-12'/>
<return type-id='type-id-4'/>
</function-decl>
- <function-decl name='main' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='main'>
+ <function-decl name='main' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='main'>
<return type-id='type-id-4'/>
</function-decl>
<var-decl name='test_array' type-id='type-id-5' mangled-name='test_array' visibility='default' elf-symbol-id='test_array'/>
diff --git a/tests/data/test-read-ctf/test0.hash.abi b/tests/data/test-read-ctf/test0.hash.abi
index e98c97db..4aa9a93c 100644
--- a/tests/data/test-read-ctf/test0.hash.abi
+++ b/tests/data/test-read-ctf/test0.hash.abi
@@ -20,21 +20,21 @@
<elf-symbol name='test_volatile' size='2' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-variable-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='' is-anonymous='yes' size-in-bits='1' alignment-in-bits='8' id='811c9dc5'/>
- <type-decl name='char' size-in-bits='8' alignment-in-bits='8' id='a84c031d'/>
- <type-decl name='float' size-in-bits='32' alignment-in-bits='32' id='a6c45d85'/>
- <type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='95e97e5e'/>
- <array-type-def dimensions='1' type-id='95e97e5e' size-in-bits='320' alignment-in-bits='32' id='b7bd1749'>
+ <type-decl name='' is-anonymous='yes' size-in-bits='1' id='811c9dc5'/>
+ <type-decl name='char' size-in-bits='8' id='a84c031d'/>
+ <type-decl name='float' size-in-bits='32' id='a6c45d85'/>
+ <type-decl name='int' size-in-bits='32' id='95e97e5e'/>
+ <array-type-def dimensions='1' type-id='95e97e5e' size-in-bits='320' id='b7bd1749'>
<subrange length='10' type-id='f0981eeb' id='487da03a'/>
</array-type-def>
- <type-decl name='long int' size-in-bits='64' alignment-in-bits='64' id='95e97e5f'/>
- <type-decl name='short int' size-in-bits='16' alignment-in-bits='16' id='95e97e60'/>
- <class-decl name='S' size-in-bits='32' alignment-in-bits='32' is-struct='yes' visibility='default' id='50d9a3fa'>
+ <type-decl name='long int' size-in-bits='64' id='95e97e5f'/>
+ <type-decl name='short int' size-in-bits='16' id='95e97e60'/>
+ <class-decl name='S' size-in-bits='32' is-struct='yes' visibility='default' id='50d9a3fa'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='m0' type-id='95e97e5e' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='' size-in-bits='32' alignment-in-bits='8' is-struct='yes' is-anonymous='yes' visibility='default' id='b91ffdee'>
+ <class-decl name='' size-in-bits='32' is-struct='yes' is-anonymous='yes' visibility='default' id='b91ffdee'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='status0' type-id='811c9dc5' visibility='default'/>
</data-member>
@@ -42,7 +42,7 @@
<var-decl name='status1' type-id='811c9dc5' visibility='default'/>
</data-member>
</class-decl>
- <type-decl name='unsigned long int' size-in-bits='64' alignment-in-bits='64' id='f0981eeb'/>
+ <type-decl name='unsigned long int' size-in-bits='64' id='f0981eeb'/>
<pointer-type-def type-id='50d9a3fa' size-in-bits='64' alignment-in-bits='64' id='fd01f598'/>
<pointer-type-def type-id='a84c031d' size-in-bits='64' alignment-in-bits='64' id='26a90f95'/>
<qualified-type-def type-id='50d9a3fa' const='yes' id='0fb3b55d'/>
@@ -53,11 +53,11 @@
<var-decl name='test_pointer' type-id='26a90f95' mangled-name='test_pointer' visibility='default' elf-symbol-id='test_pointer'/>
<var-decl name='test_const' type-id='0fb3b55d' mangled-name='test_const' visibility='default' elf-symbol-id='test_const'/>
<var-decl name='test_float' type-id='a6c45d85' mangled-name='test_float' visibility='default' elf-symbol-id='test_float'/>
- <function-decl name='foo_1' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='foo_1'>
+ <function-decl name='foo_1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='foo_1'>
<parameter type-id='fd01f598'/>
<return type-id='95e97e5e'/>
</function-decl>
- <function-decl name='main' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='main'>
+ <function-decl name='main' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='main'>
<return type-id='95e97e5e'/>
</function-decl>
<var-decl name='test_array' type-id='b7bd1749' mangled-name='test_array' visibility='default' elf-symbol-id='test_array'/>
diff --git a/tests/data/test-read-ctf/test1.so.abi b/tests/data/test-read-ctf/test1.so.abi
index 4d0895a3..822b57a5 100644
--- a/tests/data/test-read-ctf/test1.so.abi
+++ b/tests/data/test-read-ctf/test1.so.abi
@@ -12,7 +12,7 @@
<enumerator name='e0' value='0'/>
<enumerator name='e1' value='1'/>
</enum-decl>
- <class-decl name='opaque_struct' size-in-bits='32' alignment-in-bits='32' is-struct='yes' visibility='default' id='type-id-3'>
+ <class-decl name='opaque_struct' size-in-bits='32' is-struct='yes' visibility='default' id='type-id-3'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='m0' type-id='type-id-4' visibility='default'/>
</data-member>
@@ -21,7 +21,7 @@
<typedef-decl name='opaque_struct' type-id='type-id-3' id='type-id-5'/>
<pointer-type-def type-id='type-id-4' size-in-bits='64' alignment-in-bits='64' id='type-id-6'/>
<pointer-type-def type-id='type-id-5' size-in-bits='64' alignment-in-bits='64' id='type-id-7'/>
- <function-decl name='fn' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='fn'>
+ <function-decl name='fn' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='fn'>
<parameter type-id='type-id-7'/>
<parameter type-id='type-id-6'/>
<return type-id='type-id-8'/>
diff --git a/tests/data/test-read-ctf/test1.so.hash.abi b/tests/data/test-read-ctf/test1.so.hash.abi
index 89bbb528..b3ace158 100644
--- a/tests/data/test-read-ctf/test1.so.hash.abi
+++ b/tests/data/test-read-ctf/test1.so.hash.abi
@@ -12,7 +12,7 @@
<enumerator name='e0' value='0'/>
<enumerator name='e1' value='1'/>
</enum-decl>
- <class-decl name='opaque_struct' size-in-bits='32' alignment-in-bits='32' is-struct='yes' visibility='default' id='6cde5052'>
+ <class-decl name='opaque_struct' size-in-bits='32' is-struct='yes' visibility='default' id='6cde5052'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='m0' type-id='99fcd3a5' visibility='default'/>
</data-member>
@@ -21,7 +21,7 @@
<typedef-decl name='opaque_struct' type-id='6cde5052' id='dae69ca1'/>
<pointer-type-def type-id='99fcd3a5' size-in-bits='64' alignment-in-bits='64' id='0e0526e0'/>
<pointer-type-def type-id='dae69ca1' size-in-bits='64' alignment-in-bits='64' id='3f6e71d0'/>
- <function-decl name='fn' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='fn'>
+ <function-decl name='fn' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='fn'>
<parameter type-id='3f6e71d0'/>
<parameter type-id='0e0526e0'/>
<return type-id='48b5725f'/>
diff --git a/tests/data/test-read-ctf/test2.so.abi b/tests/data/test-read-ctf/test2.so.abi
index 53001972..f2fb069d 100644
--- a/tests/data/test-read-ctf/test2.so.abi
+++ b/tests/data/test-read-ctf/test2.so.abi
@@ -7,12 +7,12 @@
<elf-symbol name='foo' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <class-decl name='S0' size-in-bits='64' alignment-in-bits='64' is-struct='yes' visibility='default' id='type-id-1'>
+ <class-decl name='S0' size-in-bits='64' is-struct='yes' visibility='default' id='type-id-1'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='m0' type-id='type-id-2' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='S1' size-in-bits='64' alignment-in-bits='64' is-struct='yes' visibility='default' id='type-id-3'>
+ <class-decl name='S1' size-in-bits='64' is-struct='yes' visibility='default' id='type-id-3'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='m0' type-id='type-id-4' visibility='default'/>
</data-member>
@@ -23,11 +23,11 @@
<qualified-type-def type-id='type-id-8' const='yes' id='type-id-9'/>
<pointer-type-def type-id='type-id-9' size-in-bits='64' alignment-in-bits='64' id='type-id-5'/>
<pointer-type-def type-id='type-id-8' size-in-bits='64' alignment-in-bits='64' id='type-id-2'/>
- <function-decl name='bar' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='bar'>
+ <function-decl name='bar' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='bar'>
<parameter type-id='type-id-7'/>
<return type-id='type-id-8'/>
</function-decl>
- <function-decl name='foo' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='foo'>
+ <function-decl name='foo' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='foo'>
<parameter type-id='type-id-6'/>
<return type-id='type-id-8'/>
</function-decl>
diff --git a/tests/data/test-read-ctf/test2.so.hash.abi b/tests/data/test-read-ctf/test2.so.hash.abi
index 84fcaa96..1efd533a 100644
--- a/tests/data/test-read-ctf/test2.so.hash.abi
+++ b/tests/data/test-read-ctf/test2.so.hash.abi
@@ -7,12 +7,12 @@
<elf-symbol name='foo' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <class-decl name='S0' size-in-bits='64' alignment-in-bits='64' is-struct='yes' visibility='default' id='109cd6fe'>
+ <class-decl name='S0' size-in-bits='64' is-struct='yes' visibility='default' id='109cd6fe'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='m0' type-id='eaa32e2f' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='S1' size-in-bits='64' alignment-in-bits='64' is-struct='yes' visibility='default' id='119cd891'>
+ <class-decl name='S1' size-in-bits='64' is-struct='yes' visibility='default' id='119cd891'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='m0' type-id='8a34a235' visibility='default'/>
</data-member>
@@ -23,11 +23,11 @@
<qualified-type-def type-id='48b5725f' const='yes' id='8581546e'/>
<pointer-type-def type-id='8581546e' size-in-bits='64' alignment-in-bits='64' id='6e97a70c'/>
<pointer-type-def type-id='48b5725f' size-in-bits='64' alignment-in-bits='64' id='eaa32e2f'/>
- <function-decl name='bar' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='bar'>
+ <function-decl name='bar' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='bar'>
<parameter type-id='5e30a4f9'/>
<return type-id='48b5725f'/>
</function-decl>
- <function-decl name='foo' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='foo'>
+ <function-decl name='foo' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='foo'>
<parameter type-id='842ea234'/>
<return type-id='48b5725f'/>
</function-decl>
diff --git a/tests/data/test-read-ctf/test3.so.abi b/tests/data/test-read-ctf/test3.so.abi
index 25fe7685..8e2492f3 100644
--- a/tests/data/test-read-ctf/test3.so.abi
+++ b/tests/data/test-read-ctf/test3.so.abi
@@ -11,7 +11,7 @@
<elf-symbol name='foo__' type='func-type' binding='weak-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <function-decl name='__foo' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='__foo'>
+ <function-decl name='__foo' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='__foo'>
<return type-id='type-id-1'/>
</function-decl>
<type-decl name='void' id='type-id-1'/>
diff --git a/tests/data/test-read-ctf/test3.so.hash.abi b/tests/data/test-read-ctf/test3.so.hash.abi
index 07dd9601..f991d33a 100644
--- a/tests/data/test-read-ctf/test3.so.hash.abi
+++ b/tests/data/test-read-ctf/test3.so.hash.abi
@@ -11,7 +11,7 @@
<elf-symbol name='foo__' type='func-type' binding='weak-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <function-decl name='__foo' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='__foo'>
+ <function-decl name='__foo' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='__foo'>
<return type-id='48b5725f'/>
</function-decl>
<type-decl name='void' id='48b5725f'/>
diff --git a/tests/data/test-read-ctf/test4.so.abi b/tests/data/test-read-ctf/test4.so.abi
index 21241d30..9f4e9255 100644
--- a/tests/data/test-read-ctf/test4.so.abi
+++ b/tests/data/test-read-ctf/test4.so.abi
@@ -6,14 +6,14 @@
<elf-symbol name='cpy' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='char' size-in-bits='8' alignment-in-bits='8' id='type-id-1'/>
- <type-decl name='unsigned int' size-in-bits='32' alignment-in-bits='32' id='type-id-2'/>
+ <type-decl name='char' size-in-bits='8' id='type-id-1'/>
+ <type-decl name='unsigned int' size-in-bits='32' id='type-id-2'/>
<pointer-type-def type-id='type-id-1' size-in-bits='64' alignment-in-bits='64' id='type-id-3'/>
<qualified-type-def type-id='type-id-3' restrict='yes' id='type-id-4'/>
<qualified-type-def type-id='type-id-1' const='yes' id='type-id-5'/>
<pointer-type-def type-id='type-id-5' size-in-bits='64' alignment-in-bits='64' id='type-id-6'/>
<qualified-type-def type-id='type-id-6' restrict='yes' id='type-id-7'/>
- <function-decl name='cpy' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='cpy'>
+ <function-decl name='cpy' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cpy'>
<parameter type-id='type-id-4'/>
<parameter type-id='type-id-7'/>
<parameter type-id='type-id-2'/>
diff --git a/tests/data/test-read-ctf/test4.so.hash.abi b/tests/data/test-read-ctf/test4.so.hash.abi
index 40ab7069..1e952c75 100644
--- a/tests/data/test-read-ctf/test4.so.hash.abi
+++ b/tests/data/test-read-ctf/test4.so.hash.abi
@@ -6,14 +6,14 @@
<elf-symbol name='cpy' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='char' size-in-bits='8' alignment-in-bits='8' id='a84c031d'/>
- <type-decl name='unsigned int' size-in-bits='32' alignment-in-bits='32' id='f0981eeb'/>
+ <type-decl name='char' size-in-bits='8' id='a84c031d'/>
+ <type-decl name='unsigned int' size-in-bits='32' id='f0981eeb'/>
<pointer-type-def type-id='a84c031d' size-in-bits='64' alignment-in-bits='64' id='26a90f95'/>
<qualified-type-def type-id='26a90f95' restrict='yes' id='266fe297'/>
<qualified-type-def type-id='a84c031d' const='yes' id='9b45d938'/>
<pointer-type-def type-id='9b45d938' size-in-bits='64' alignment-in-bits='64' id='80f4b756'/>
<qualified-type-def type-id='80f4b756' restrict='yes' id='9d26089a'/>
- <function-decl name='cpy' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='cpy'>
+ <function-decl name='cpy' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cpy'>
<parameter type-id='266fe297'/>
<parameter type-id='9d26089a'/>
<parameter type-id='f0981eeb'/>
diff --git a/tests/data/test-read-ctf/test5.o.abi b/tests/data/test-read-ctf/test5.o.abi
index 84eb34d7..6d72d7ab 100644
--- a/tests/data/test-read-ctf/test5.o.abi
+++ b/tests/data/test-read-ctf/test5.o.abi
@@ -8,39 +8,39 @@
</elf-function-symbols>
<abi-instr address-size='64' language='LANG_C'>
<type-decl name='' is-anonymous='yes' size-in-bits='32' alignment-in-bits='32' id='type-id-1'/>
- <type-decl name='char' size-in-bits='8' alignment-in-bits='8' id='type-id-2'/>
+ <type-decl name='char' size-in-bits='8' id='type-id-2'/>
<enum-decl name='E' linkage-name='E' id='type-id-3'>
<underlying-type type-id='type-id-1'/>
<enumerator name='e0' value='0'/>
<enumerator name='e1' value='1'/>
</enum-decl>
- <type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='type-id-4'/>
- <type-decl name='long int' size-in-bits='64' alignment-in-bits='64' id='type-id-5'/>
- <type-decl name='long long int' size-in-bits='64' alignment-in-bits='64' id='type-id-6'/>
+ <type-decl name='int' size-in-bits='32' id='type-id-4'/>
+ <type-decl name='long int' size-in-bits='64' id='type-id-5'/>
+ <type-decl name='long long int' size-in-bits='64' id='type-id-6'/>
<typedef-decl name='long_long' type-id='type-id-6' id='type-id-7'/>
<pointer-type-def type-id='type-id-2' size-in-bits='64' alignment-in-bits='64' id='type-id-8'/>
<qualified-type-def type-id='type-id-4' const='yes' id='type-id-9'/>
<qualified-type-def type-id='type-id-5' const='yes' id='type-id-10'/>
<qualified-type-def type-id='type-id-10' volatile='yes' id='type-id-11'/>
- <function-decl name='foo' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='foo'>
+ <function-decl name='foo' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='foo'>
<parameter type-id='type-id-8'/>
<parameter type-id='type-id-11'/>
<return type-id='type-id-5'/>
</function-decl>
- <function-decl name='baz2' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='baz2'>
+ <function-decl name='baz2' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='baz2'>
<parameter type-id='type-id-4'/>
<return type-id='type-id-7'/>
</function-decl>
- <function-decl name='bar' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='bar'>
+ <function-decl name='bar' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='bar'>
<parameter type-id='type-id-9'/>
<parameter is-variadic='yes'/>
<return type-id='type-id-12'/>
</function-decl>
- <function-decl name='bar2' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='bar2'>
+ <function-decl name='bar2' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='bar2'>
<parameter type-id='type-id-3'/>
<return type-id='type-id-12'/>
</function-decl>
- <function-decl name='baz' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='baz'>
+ <function-decl name='baz' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='baz'>
<parameter type-id='type-id-4'/>
<return type-id='type-id-12'/>
</function-decl>
diff --git a/tests/data/test-read-ctf/test7.o.abi b/tests/data/test-read-ctf/test7.o.abi
index 85468e11..65371cf5 100644
--- a/tests/data/test-read-ctf/test7.o.abi
+++ b/tests/data/test-read-ctf/test7.o.abi
@@ -3,8 +3,8 @@
<elf-symbol name='first_type_constructor' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='type-id-1'/>
- <class-decl name='first_type' size-in-bits='128' alignment-in-bits='32' is-struct='yes' visibility='default' id='type-id-2'>
+ <type-decl name='int' size-in-bits='32' id='type-id-1'/>
+ <class-decl name='first_type' size-in-bits='128' is-struct='yes' visibility='default' id='type-id-2'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='member0' type-id='type-id-3' visibility='default'/>
</data-member>
@@ -18,16 +18,16 @@
<typedef-decl name='character' type-id='type-id-6' id='type-id-4'/>
<typedef-decl name='constructor' type-id='type-id-7' id='type-id-5'/>
<typedef-decl name='integer' type-id='type-id-1' id='type-id-3'/>
- <type-decl name='unsigned char' size-in-bits='8' alignment-in-bits='8' id='type-id-6'/>
+ <type-decl name='unsigned char' size-in-bits='8' id='type-id-6'/>
<pointer-type-def type-id='type-id-2' size-in-bits='64' alignment-in-bits='64' id='type-id-8'/>
<pointer-type-def type-id='type-id-9' size-in-bits='64' alignment-in-bits='64' id='type-id-7'/>
- <function-decl name='first_type_constructor' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='first_type_constructor'>
+ <function-decl name='first_type_constructor' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='first_type_constructor'>
<parameter type-id='type-id-8'/>
<return type-id='type-id-10'/>
</function-decl>
<type-decl name='variadic parameter type' id='type-id-11'/>
<type-decl name='void' id='type-id-10'/>
- <function-type size-in-bits='64' alignment-in-bits='8' id='type-id-9'>
+ <function-type size-in-bits='64' id='type-id-9'>
<parameter is-variadic='yes'/>
<return type-id='type-id-10'/>
</function-type>
diff --git a/tests/data/test-read-ctf/test8.o.abi b/tests/data/test-read-ctf/test8.o.abi
index b6996c29..430bc128 100644
--- a/tests/data/test-read-ctf/test8.o.abi
+++ b/tests/data/test-read-ctf/test8.o.abi
@@ -4,7 +4,7 @@
</elf-function-symbols>
<abi-instr address-size='64' language='LANG_C'>
<pointer-type-def type-id='type-id-1' size-in-bits='64' alignment-in-bits='64' id='type-id-2'/>
- <function-decl name='bar' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='bar'>
+ <function-decl name='bar' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='bar'>
<parameter type-id='type-id-2'/>
<return type-id='type-id-1'/>
</function-decl>
diff --git a/tests/data/test-read-ctf/test9.o.abi b/tests/data/test-read-ctf/test9.o.abi
index c983d17f..331bfc70 100644
--- a/tests/data/test-read-ctf/test9.o.abi
+++ b/tests/data/test-read-ctf/test9.o.abi
@@ -3,31 +3,31 @@
<elf-symbol name='foo' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='char' size-in-bits='8' alignment-in-bits='8' id='type-id-1'/>
+ <type-decl name='char' size-in-bits='8' id='type-id-1'/>
<array-type-def dimensions='1' type-id='type-id-2' size-in-bits='448' alignment-in-bits='64' id='type-id-3'>
<subrange length='7' type-id='type-id-4' id='type-id-5'/>
</array-type-def>
- <array-type-def dimensions='1' type-id='type-id-1' size-in-bits='infinite' alignment-in-bits='8' id='type-id-6'>
+ <array-type-def dimensions='1' type-id='type-id-1' size-in-bits='infinite' id='type-id-6'>
<subrange length='infinite' type-id='type-id-4' id='type-id-7'/>
</array-type-def>
- <type-decl name='double' size-in-bits='64' alignment-in-bits='64' id='type-id-8'/>
- <array-type-def dimensions='1' type-id='type-id-8' size-in-bits='320' alignment-in-bits='64' id='type-id-9'>
+ <type-decl name='double' size-in-bits='64' id='type-id-8'/>
+ <array-type-def dimensions='1' type-id='type-id-8' size-in-bits='320' id='type-id-9'>
<subrange length='5' type-id='type-id-4' id='type-id-10'/>
</array-type-def>
- <array-type-def dimensions='1' type-id='type-id-9' size-in-bits='960' alignment-in-bits='64' id='type-id-11'>
+ <array-type-def dimensions='1' type-id='type-id-9' size-in-bits='960' id='type-id-11'>
<subrange length='3' type-id='type-id-4' id='type-id-12'/>
</array-type-def>
- <type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='type-id-13'/>
+ <type-decl name='int' size-in-bits='32' id='type-id-13'/>
<array-type-def dimensions='1' type-id='type-id-14' size-in-bits='256' alignment-in-bits='64' id='type-id-15'>
<subrange length='4' type-id='type-id-4' id='type-id-16'/>
</array-type-def>
<array-type-def dimensions='1' type-id='type-id-17' size-in-bits='640' alignment-in-bits='64' id='type-id-18'>
<subrange length='10' type-id='type-id-4' id='type-id-19'/>
</array-type-def>
- <array-type-def dimensions='1' type-id='type-id-13' size-in-bits='160' alignment-in-bits='32' id='type-id-20'>
+ <array-type-def dimensions='1' type-id='type-id-13' size-in-bits='160' id='type-id-20'>
<subrange length='5' type-id='type-id-4' id='type-id-10'/>
</array-type-def>
- <class-decl name='S' size-in-bits='2304' alignment-in-bits='32' is-struct='yes' visibility='default' id='type-id-21'>
+ <class-decl name='S' size-in-bits='2304' is-struct='yes' visibility='default' id='type-id-21'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='a' type-id='type-id-20' visibility='default'/>
</data-member>
@@ -44,12 +44,12 @@
<var-decl name='e' type-id='type-id-6' visibility='default'/>
</data-member>
</class-decl>
- <type-decl name='unsigned long int' size-in-bits='64' alignment-in-bits='64' id='type-id-4'/>
+ <type-decl name='unsigned long int' size-in-bits='64' id='type-id-4'/>
<pointer-type-def type-id='type-id-21' size-in-bits='64' alignment-in-bits='64' id='type-id-22'/>
<pointer-type-def type-id='type-id-1' size-in-bits='64' alignment-in-bits='64' id='type-id-2'/>
<pointer-type-def type-id='type-id-13' size-in-bits='64' alignment-in-bits='64' id='type-id-14'/>
<pointer-type-def type-id='type-id-15' size-in-bits='64' alignment-in-bits='64' id='type-id-17'/>
- <function-decl name='foo' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='foo'>
+ <function-decl name='foo' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='foo'>
<parameter type-id='type-id-22'/>
<return type-id='type-id-13'/>
</function-decl>
@@ -788,7 +788,6 @@ process_ctf_base_type(reader *rdr,
translation_unit_sptr tunit = rdr->cur_transl_unit();
type_decl_sptr result;
- ssize_t type_alignment = ctf_type_align(ctf_dictionary, ctf_type);
const char *type_name = ctf_type_name_raw(ctf_dictionary, ctf_type);
/* Get the type encoding and extract some useful properties of
@@ -827,7 +826,7 @@ process_ctf_base_type(reader *rdr,
result.reset(new type_decl(rdr->env(),
type_name,
type_encoding.cte_bits,
- type_alignment * 8 /* in bits */,
+ /*alignment=*/0,
location(),
type_name /* mangled_name */));
@@ -936,7 +935,7 @@ process_ctf_function_type(reader *rdr,
result.reset(new function_type(ret_type,
function_parms,
tunit->get_address_size(),
- ctf_type_align(ctf_dictionary, ctf_type)));
+ /*alignment=*/0));
if (result)
{
@@ -1095,7 +1094,7 @@ process_ctf_struct_type(reader *rdr,
result.reset(new class_decl(rdr->env(),
struct_type_name,
ctf_type_size(ctf_dictionary, ctf_type) * 8,
- ctf_type_align(ctf_dictionary, ctf_type) * 8,
+ /*alignment=*/0,
true /* is_struct */,
location(),
decl_base::VISIBILITY_DEFAULT,
@@ -8,7 +8,6 @@
parameter 1 of type 'S1*' has sub-type changes:
in pointed to type 'struct S1':
type size changed from 0 to 32 (in bits)
- type alignment changed from 0 to 32
1 data member insertion:
'int mem2', at offset 0 (in bits)
@@ -8,7 +8,6 @@
parameter 1 of type 'S1*' has sub-type changes:
in pointed to type 'struct S1':
type size changed from 0 to 32 (in bits)
- type alignment changed from 0 to 32
1 data member insertion:
'int mem2', at offset 0 (in bits)
@@ -133,6 +133,7 @@
underlying type 'const mp_limb_t*' changed:
entity changed from 'const mp_limb_t*' to 'unsigned long int'
type size hasn't changed
+ type alignment changed from 64 to 0
parameter 2 of type 'typedef mp_size_t' changed:
typedef name changed from mp_size_t to mp_limb_t
underlying type 'long int' changed:
@@ -12,7 +12,7 @@
<enumerator name='foo_e3' value='3'/>
</enum-decl>
<pointer-type-def type-id='022218d8' size-in-bits='64' alignment-in-bits='64' id='8750e847'/>
- <function-decl name='foo' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='foo'>
+ <function-decl name='foo' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='foo'>
<parameter type-id='8750e847'/>
<return type-id='48b5725f'/>
</function-decl>
@@ -3,19 +3,19 @@
<elf-symbol name='fun' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='type-id-1'/>
- <type-decl name='long int' size-in-bits='64' alignment-in-bits='64' id='type-id-2'/>
- <class-decl name='A' size-in-bits='64' alignment-in-bits='64' is-struct='yes' visibility='default' id='type-id-3'>
+ <type-decl name='int' size-in-bits='32' id='type-id-1'/>
+ <type-decl name='long int' size-in-bits='64' id='type-id-2'/>
+ <class-decl name='A' size-in-bits='64' is-struct='yes' visibility='default' id='type-id-3'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='' type-id='type-id-4' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='' size-in-bits='32' alignment-in-bits='32' is-struct='yes' is-anonymous='yes' visibility='default' id='type-id-5'>
+ <class-decl name='' size-in-bits='32' is-struct='yes' is-anonymous='yes' visibility='default' id='type-id-5'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='x' type-id='type-id-1' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='' size-in-bits='64' alignment-in-bits='64' is-struct='yes' is-anonymous='yes' visibility='default' id='type-id-6'>
+ <class-decl name='' size-in-bits='64' is-struct='yes' is-anonymous='yes' visibility='default' id='type-id-6'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='y' type-id='type-id-2' visibility='default'/>
</data-member>
@@ -29,7 +29,7 @@
</data-member>
</union-decl>
<pointer-type-def type-id='type-id-3' size-in-bits='64' alignment-in-bits='64' id='type-id-7'/>
- <function-decl name='fun' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='fun'>
+ <function-decl name='fun' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='fun'>
<parameter type-id='type-id-7'/>
<return type-id='type-id-8'/>
</function-decl>
@@ -3,14 +3,14 @@
<elf-symbol name='fun' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='type-id-1'/>
- <type-decl name='long int' size-in-bits='64' alignment-in-bits='64' id='type-id-2'/>
- <class-decl name='' size-in-bits='32' alignment-in-bits='32' is-struct='yes' is-anonymous='yes' visibility='default' id='type-id-3'>
+ <type-decl name='int' size-in-bits='32' id='type-id-1'/>
+ <type-decl name='long int' size-in-bits='64' id='type-id-2'/>
+ <class-decl name='' size-in-bits='32' is-struct='yes' is-anonymous='yes' visibility='default' id='type-id-3'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='x' type-id='type-id-1' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='' size-in-bits='64' alignment-in-bits='64' is-struct='yes' is-anonymous='yes' visibility='default' id='type-id-4'>
+ <class-decl name='' size-in-bits='64' is-struct='yes' is-anonymous='yes' visibility='default' id='type-id-4'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='y' type-id='type-id-2' visibility='default'/>
</data-member>
@@ -24,7 +24,7 @@
</data-member>
</union-decl>
<pointer-type-def type-id='type-id-5' size-in-bits='64' alignment-in-bits='64' id='type-id-6'/>
- <function-decl name='fun' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='fun'>
+ <function-decl name='fun' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='fun'>
<parameter type-id='type-id-6'/>
<return type-id='type-id-7'/>
</function-decl>
@@ -3,11 +3,11 @@
<elf-symbol name='foo' size='8' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-variable-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <array-type-def dimensions='1' type-id='3ed987a4' size-in-bits='12800' alignment-in-bits='64' id='e022be37'>
+ <array-type-def dimensions='1' type-id='3ed987a4' size-in-bits='12800' id='e022be37'>
<subrange length='50' type-id='f0981eeb' id='3c1860ce'/>
</array-type-def>
- <type-decl name='long int' size-in-bits='64' alignment-in-bits='64' id='95e97e5e'/>
- <class-decl name='A' size-in-bits='256' alignment-in-bits='64' is-struct='yes' visibility='default' id='3ed987a4'>
+ <type-decl name='long int' size-in-bits='64' id='95e97e5e'/>
+ <class-decl name='A' size-in-bits='256' is-struct='yes' visibility='default' id='3ed987a4'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='b' type-id='41d98c5d' visibility='default'/>
</data-member>
@@ -21,13 +21,13 @@
<var-decl name='b2' type-id='41d98c5d' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='B' size-in-bits='64' alignment-in-bits='64' is-struct='yes' visibility='default' id='41d98c5d'>
+ <class-decl name='B' size-in-bits='64' is-struct='yes' visibility='default' id='41d98c5d'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='a' type-id='84d5ac12' visibility='default'/>
</data-member>
</class-decl>
<typedef-decl name='a_array' type-id='e022be37' id='1c12b755'/>
- <type-decl name='unsigned long int' size-in-bits='64' alignment-in-bits='64' id='f0981eeb'/>
+ <type-decl name='unsigned long int' size-in-bits='64' id='f0981eeb'/>
<pointer-type-def type-id='3ed987a4' size-in-bits='64' alignment-in-bits='64' id='84d5ac12'/>
<pointer-type-def type-id='1c12b755' size-in-bits='64' alignment-in-bits='64' id='55cd64e8'/>
<var-decl name='foo' type-id='55cd64e8' mangled-name='foo' visibility='default' elf-symbol-id='foo'/>
@@ -3,8 +3,8 @@
<elf-symbol name='a' size='24' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-variable-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='95e97e5e'/>
- <class-decl name='A' size-in-bits='192' alignment-in-bits='64' is-struct='yes' visibility='default' id='3ed987a4'>
+ <type-decl name='int' size-in-bits='32' id='95e97e5e'/>
+ <class-decl name='A' size-in-bits='192' is-struct='yes' visibility='default' id='3ed987a4'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='b' type-id='41d98c5d' visibility='default'/>
</data-member>
@@ -15,7 +15,7 @@
<var-decl name='b2' type-id='41d98c5d' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='B' size-in-bits='64' alignment-in-bits='64' is-struct='yes' visibility='default' id='41d98c5d'>
+ <class-decl name='B' size-in-bits='64' is-struct='yes' visibility='default' id='41d98c5d'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='a' type-id='84d5ac12' visibility='default'/>
</data-member>
@@ -3,18 +3,18 @@
<elf-symbol name='t' size='8' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-variable-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='type-id-1'/>
- <class-decl name='uprobe_task' size-in-bits='64' alignment-in-bits='64' is-struct='yes' visibility='default' id='type-id-2'>
+ <type-decl name='int' size-in-bits='32' id='type-id-1'/>
+ <class-decl name='uprobe_task' size-in-bits='64' is-struct='yes' visibility='default' id='type-id-2'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='' type-id='type-id-3' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='' size-in-bits='32' alignment-in-bits='32' is-struct='yes' is-anonymous='yes' visibility='default' id='type-id-4'>
+ <class-decl name='' size-in-bits='32' is-struct='yes' is-anonymous='yes' visibility='default' id='type-id-4'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='dup_xol_work' type-id='type-id-1' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='' size-in-bits='64' alignment-in-bits='64' is-struct='yes' is-anonymous='yes' visibility='default' id='type-id-5'>
+ <class-decl name='' size-in-bits='64' is-struct='yes' is-anonymous='yes' visibility='default' id='type-id-5'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='vaddr' type-id='type-id-6' visibility='default'/>
</data-member>
@@ -27,7 +27,7 @@
<var-decl name='' type-id='type-id-4' visibility='default'/>
</data-member>
</union-decl>
- <type-decl name='unsigned long int' size-in-bits='64' alignment-in-bits='64' id='type-id-6'/>
+ <type-decl name='unsigned long int' size-in-bits='64' id='type-id-6'/>
<var-decl name='t' type-id='type-id-2' mangled-name='t' visibility='default' elf-symbol-id='t'/>
</abi-instr>
</abi-corpus>
@@ -6,27 +6,27 @@
<array-type-def dimensions='1' type-id='type-id-1' size-in-bits='256' alignment-in-bits='64' id='type-id-2'>
<subrange length='4' type-id='type-id-3' id='type-id-4'/>
</array-type-def>
- <class-decl name='cgroup' size-in-bits='256' alignment-in-bits='64' is-struct='yes' visibility='default' id='type-id-5'>
+ <class-decl name='cgroup' size-in-bits='256' is-struct='yes' visibility='default' id='type-id-5'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='s1' type-id='type-id-2' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='css_set' size-in-bits='256' alignment-in-bits='64' is-struct='yes' visibility='default' id='type-id-6'>
+ <class-decl name='css_set' size-in-bits='256' is-struct='yes' visibility='default' id='type-id-6'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='s0' type-id='type-id-2' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='state' size-in-bits='64' alignment-in-bits='64' is-struct='yes' visibility='default' id='type-id-7'>
+ <class-decl name='state' size-in-bits='64' is-struct='yes' visibility='default' id='type-id-7'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='cg' type-id='type-id-8' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='task' size-in-bits='64' alignment-in-bits='64' is-struct='yes' visibility='default' id='type-id-9'>
+ <class-decl name='task' size-in-bits='64' is-struct='yes' visibility='default' id='type-id-9'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='s' type-id='type-id-10' visibility='default'/>
</data-member>
</class-decl>
- <type-decl name='unsigned long int' size-in-bits='64' alignment-in-bits='64' id='type-id-3'/>
+ <type-decl name='unsigned long int' size-in-bits='64' id='type-id-3'/>
<pointer-type-def type-id='type-id-5' size-in-bits='64' alignment-in-bits='64' id='type-id-8'/>
<pointer-type-def type-id='type-id-6' size-in-bits='64' alignment-in-bits='64' id='type-id-10'/>
<pointer-type-def type-id='type-id-7' size-in-bits='64' alignment-in-bits='64' id='type-id-1'/>
@@ -4,12 +4,12 @@
<elf-symbol name='f2' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='type-id-1'/>
- <type-decl name='long int' size-in-bits='64' alignment-in-bits='64' id='type-id-2'/>
- <function-decl name='assign' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='assign'>
+ <type-decl name='int' size-in-bits='32' id='type-id-1'/>
+ <type-decl name='long int' size-in-bits='64' id='type-id-2'/>
+ <function-decl name='assign' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='assign'>
<return type-id='type-id-3'/>
</function-decl>
- <function-decl name='f2' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='f2'>
+ <function-decl name='f2' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='f2'>
<parameter type-id='type-id-1'/>
<parameter type-id='type-id-2'/>
<return type-id='type-id-3'/>
@@ -3,8 +3,8 @@
<elf-symbol name='s0' size='8' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-variable-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='type-id-1'/>
- <class-decl name='s0' size-in-bits='64' alignment-in-bits='64' is-struct='yes' visibility='default' id='type-id-2'>
+ <type-decl name='int' size-in-bits='32' id='type-id-1'/>
+ <class-decl name='s0' size-in-bits='64' is-struct='yes' visibility='default' id='type-id-2'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='mem_fun' type-id='type-id-3' visibility='default'/>
</data-member>
@@ -12,7 +12,7 @@
<pointer-type-def type-id='type-id-4' size-in-bits='64' alignment-in-bits='64' id='type-id-3'/>
<pointer-type-def type-id='type-id-2' size-in-bits='64' alignment-in-bits='64' id='type-id-5'/>
<var-decl name='s0' type-id='type-id-5' mangled-name='s0' visibility='default' elf-symbol-id='s0'/>
- <function-type size-in-bits='64' alignment-in-bits='8' id='type-id-4'>
+ <function-type size-in-bits='64' id='type-id-4'>
<parameter type-id='type-id-5'/>
<return type-id='type-id-1'/>
</function-type>
@@ -4,7 +4,7 @@
<elf-symbol name='ignore2' size='8' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-variable-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='long int' size-in-bits='64' alignment-in-bits='64' id='95e97e5e'/>
+ <type-decl name='long int' size-in-bits='64' id='95e97e5e'/>
<typedef-decl name='a_t' type-id='95e97e5e' id='40acc204'/>
<typedef-decl name='b_t' type-id='95e97e5e' id='b3d2db81'/>
<pointer-type-def type-id='40acc204' size-in-bits='64' alignment-in-bits='64' id='c6fd4117'/>
@@ -4,7 +4,7 @@
<elf-symbol name='ignore1' size='8' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-variable-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='long int' size-in-bits='64' alignment-in-bits='64' id='95e97e5e'/>
+ <type-decl name='long int' size-in-bits='64' id='95e97e5e'/>
<typedef-decl name='a_t' type-id='95e97e5e' id='40acc204'/>
<typedef-decl name='b_t' type-id='95e97e5e' id='b3d2db81'/>
<var-decl name='b' type-id='40acc204' mangled-name='b' visibility='default' elf-symbol-id='b'/>
@@ -3,11 +3,11 @@
<elf-symbol name='use_struct_s' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='char' size-in-bits='8' alignment-in-bits='8' id='type-id-1'/>
- <array-type-def dimensions='1' type-id='type-id-1' size-in-bits='infinite' alignment-in-bits='8' id='type-id-2'>
+ <type-decl name='char' size-in-bits='8' id='type-id-1'/>
+ <array-type-def dimensions='1' type-id='type-id-1' size-in-bits='infinite' id='type-id-2'>
<subrange length='infinite' type-id='type-id-3' id='type-id-4'/>
</array-type-def>
- <class-decl name='S' size-in-bits='64' alignment-in-bits='64' is-struct='yes' visibility='default' id='type-id-5'>
+ <class-decl name='S' size-in-bits='64' is-struct='yes' visibility='default' id='type-id-5'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='a' type-id='type-id-6' visibility='default'/>
</data-member>
@@ -18,10 +18,10 @@
<var-decl name='c' type-id='type-id-2' visibility='default'/>
</data-member>
</class-decl>
- <type-decl name='unsigned long int' size-in-bits='64' alignment-in-bits='64' id='type-id-3'/>
+ <type-decl name='unsigned long int' size-in-bits='64' id='type-id-3'/>
<pointer-type-def type-id='type-id-5' size-in-bits='64' alignment-in-bits='64' id='type-id-7'/>
<pointer-type-def type-id='type-id-1' size-in-bits='64' alignment-in-bits='64' id='type-id-6'/>
- <function-decl name='use_struct_s' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='use_struct_s'>
+ <function-decl name='use_struct_s' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='use_struct_s'>
<parameter type-id='type-id-7'/>
<return type-id='type-id-8'/>
</function-decl>
@@ -3,7 +3,7 @@
<elf-symbol name='a' size='4' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-variable-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='type-id-1'/>
+ <type-decl name='int' size-in-bits='32' id='type-id-1'/>
<var-decl name='a' type-id='type-id-1' mangled-name='a' visibility='default' elf-symbol-id='a'/>
</abi-instr>
</abi-corpus>
@@ -3,7 +3,7 @@
<elf-symbol name='addr' size='8' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-variable-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <class-decl name='address_space' size-in-bits='128' alignment-in-bits='64' is-struct='yes' visibility='default' id='type-id-1'>
+ <class-decl name='address_space' size-in-bits='128' is-struct='yes' visibility='default' id='type-id-1'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='rb_root' type-id='type-id-2' visibility='default'/>
</data-member>
@@ -11,12 +11,12 @@
<var-decl name='page' type-id='type-id-3' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='page' size-in-bits='64' alignment-in-bits='64' is-struct='yes' visibility='default' id='type-id-4'>
+ <class-decl name='page' size-in-bits='64' is-struct='yes' visibility='default' id='type-id-4'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='mapping' type-id='type-id-5' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='rb_node' size-in-bits='64' alignment-in-bits='64' is-struct='yes' visibility='default' id='type-id-6'>
+ <class-decl name='rb_node' size-in-bits='64' is-struct='yes' visibility='default' id='type-id-6'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='rb_left' type-id='type-id-2' visibility='default'/>
</data-member>
@@ -4,19 +4,19 @@
<elf-symbol name='attribute_container_device_trigger' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='type-id-1'/>
- <type-decl name='long int' size-in-bits='64' alignment-in-bits='64' id='type-id-2'/>
+ <type-decl name='int' size-in-bits='32' id='type-id-1'/>
+ <type-decl name='long int' size-in-bits='64' id='type-id-2'/>
<pointer-type-def type-id='type-id-3' size-in-bits='64' alignment-in-bits='64' id='type-id-4'/>
- <function-decl name='attribute_container_add_device' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='attribute_container_add_device'>
+ <function-decl name='attribute_container_add_device' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='attribute_container_add_device'>
<parameter type-id='type-id-4'/>
<return type-id='type-id-5'/>
</function-decl>
- <function-decl name='attribute_container_device_trigger' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='attribute_container_device_trigger'>
+ <function-decl name='attribute_container_device_trigger' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='attribute_container_device_trigger'>
<parameter type-id='type-id-4'/>
<return type-id='type-id-5'/>
</function-decl>
<type-decl name='void' id='type-id-5'/>
- <function-type size-in-bits='64' alignment-in-bits='8' id='type-id-3'>
+ <function-type size-in-bits='64' id='type-id-3'>
<parameter type-id='type-id-1'/>
<parameter type-id='type-id-2'/>
<return type-id='type-id-5'/>
@@ -7,8 +7,8 @@
<elf-symbol name='global_sym' size='4' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes' crc='0x44a6713b'/>
</elf-variable-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='type-id-1'/>
- <class-decl name='__raw_tickets' size-in-bits='32' alignment-in-bits='16' is-struct='yes' visibility='default' id='type-id-2'>
+ <type-decl name='int' size-in-bits='32' id='type-id-1'/>
+ <class-decl name='__raw_tickets' size-in-bits='32' is-struct='yes' visibility='default' id='type-id-2'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='owner' type-id='type-id-3' visibility='default'/>
</data-member>
@@ -16,17 +16,17 @@
<var-decl name='next' type-id='type-id-3' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='arch_spinlock_t' size-in-bits='32' alignment-in-bits='32' is-struct='yes' naming-typedef-id='type-id-4' visibility='default' id='type-id-5'>
+ <class-decl name='arch_spinlock_t' size-in-bits='32' is-struct='yes' naming-typedef-id='type-id-4' visibility='default' id='type-id-5'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='' type-id='type-id-6' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='raw_spinlock' size-in-bits='32' alignment-in-bits='32' is-struct='yes' visibility='default' id='type-id-7'>
+ <class-decl name='raw_spinlock' size-in-bits='32' is-struct='yes' visibility='default' id='type-id-7'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='raw_lock' type-id='type-id-4' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='spinlock' size-in-bits='32' alignment-in-bits='32' is-struct='yes' visibility='default' id='type-id-8'>
+ <class-decl name='spinlock' size-in-bits='32' is-struct='yes' visibility='default' id='type-id-8'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='' type-id='type-id-9' visibility='default'/>
</data-member>
@@ -50,13 +50,13 @@
<var-decl name='tickets' type-id='type-id-2' visibility='default'/>
</data-member>
</union-decl>
- <type-decl name='unsigned int' size-in-bits='32' alignment-in-bits='32' id='type-id-12'/>
- <type-decl name='unsigned short int' size-in-bits='16' alignment-in-bits='16' id='type-id-10'/>
+ <type-decl name='unsigned int' size-in-bits='32' id='type-id-12'/>
+ <type-decl name='unsigned short int' size-in-bits='16' id='type-id-10'/>
<pointer-type-def type-id='type-id-14' size-in-bits='64' alignment-in-bits='64' id='type-id-16'/>
- <function-decl name='testexport' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='testexport'>
+ <function-decl name='testexport' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='testexport'>
<return type-id='type-id-1'/>
</function-decl>
- <function-decl name='testexport2' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='testexport2'>
+ <function-decl name='testexport2' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='testexport2'>
<parameter type-id='type-id-16'/>
<return type-id='type-id-1'/>
</function-decl>
@@ -4,8 +4,8 @@
<elf-symbol name='n2' size='16' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-variable-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='type-id-1'/>
- <class-decl name='rb_node_b' size-in-bits='128' alignment-in-bits='64' is-struct='yes' visibility='default' id='type-id-2'>
+ <type-decl name='int' size-in-bits='32' id='type-id-1'/>
+ <class-decl name='rb_node_b' size-in-bits='128' is-struct='yes' visibility='default' id='type-id-2'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='this' type-id='type-id-3' visibility='default'/>
</data-member>
@@ -20,21 +20,21 @@
<elf-symbol name='test_volatile' size='2' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-variable-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='' is-anonymous='yes' size-in-bits='1' alignment-in-bits='8' id='type-id-1'/>
- <type-decl name='char' size-in-bits='8' alignment-in-bits='8' id='type-id-2'/>
- <type-decl name='float' size-in-bits='32' alignment-in-bits='32' id='type-id-3'/>
- <type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='type-id-4'/>
- <array-type-def dimensions='1' type-id='type-id-4' size-in-bits='320' alignment-in-bits='32' id='type-id-5'>
+ <type-decl name='' is-anonymous='yes' size-in-bits='1' id='type-id-1'/>
+ <type-decl name='char' size-in-bits='8' id='type-id-2'/>
+ <type-decl name='float' size-in-bits='32' id='type-id-3'/>
+ <type-decl name='int' size-in-bits='32' id='type-id-4'/>
+ <array-type-def dimensions='1' type-id='type-id-4' size-in-bits='320' id='type-id-5'>
<subrange length='10' type-id='type-id-6' id='type-id-7'/>
</array-type-def>
- <type-decl name='long int' size-in-bits='64' alignment-in-bits='64' id='type-id-8'/>
- <type-decl name='short int' size-in-bits='16' alignment-in-bits='16' id='type-id-9'/>
- <class-decl name='S' size-in-bits='32' alignment-in-bits='32' is-struct='yes' visibility='default' id='type-id-10'>
+ <type-decl name='long int' size-in-bits='64' id='type-id-8'/>
+ <type-decl name='short int' size-in-bits='16' id='type-id-9'/>
+ <class-decl name='S' size-in-bits='32' is-struct='yes' visibility='default' id='type-id-10'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='m0' type-id='type-id-4' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='' size-in-bits='32' alignment-in-bits='8' is-struct='yes' is-anonymous='yes' visibility='default' id='type-id-11'>
+ <class-decl name='' size-in-bits='32' is-struct='yes' is-anonymous='yes' visibility='default' id='type-id-11'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='status0' type-id='type-id-1' visibility='default'/>
</data-member>
@@ -42,7 +42,7 @@
<var-decl name='status1' type-id='type-id-1' visibility='default'/>
</data-member>
</class-decl>
- <type-decl name='unsigned long int' size-in-bits='64' alignment-in-bits='64' id='type-id-6'/>
+ <type-decl name='unsigned long int' size-in-bits='64' id='type-id-6'/>
<pointer-type-def type-id='type-id-10' size-in-bits='64' alignment-in-bits='64' id='type-id-12'/>
<pointer-type-def type-id='type-id-2' size-in-bits='64' alignment-in-bits='64' id='type-id-13'/>
<qualified-type-def type-id='type-id-10' const='yes' id='type-id-14'/>
@@ -53,11 +53,11 @@
<var-decl name='test_pointer' type-id='type-id-13' mangled-name='test_pointer' visibility='default' elf-symbol-id='test_pointer'/>
<var-decl name='test_const' type-id='type-id-14' mangled-name='test_const' visibility='default' elf-symbol-id='test_const'/>
<var-decl name='test_float' type-id='type-id-3' mangled-name='test_float' visibility='default' elf-symbol-id='test_float'/>
- <function-decl name='foo_1' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='foo_1'>
+ <function-decl name='foo_1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='foo_1'>
<parameter type-id='type-id-12'/>
<return type-id='type-id-4'/>
</function-decl>
- <function-decl name='main' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='main'>
+ <function-decl name='main' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='main'>
<return type-id='type-id-4'/>
</function-decl>
<var-decl name='test_array' type-id='type-id-5' mangled-name='test_array' visibility='default' elf-symbol-id='test_array'/>
@@ -20,21 +20,21 @@
<elf-symbol name='test_volatile' size='2' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-variable-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='' is-anonymous='yes' size-in-bits='1' alignment-in-bits='8' id='811c9dc5'/>
- <type-decl name='char' size-in-bits='8' alignment-in-bits='8' id='a84c031d'/>
- <type-decl name='float' size-in-bits='32' alignment-in-bits='32' id='a6c45d85'/>
- <type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='95e97e5e'/>
- <array-type-def dimensions='1' type-id='95e97e5e' size-in-bits='320' alignment-in-bits='32' id='b7bd1749'>
+ <type-decl name='' is-anonymous='yes' size-in-bits='1' id='811c9dc5'/>
+ <type-decl name='char' size-in-bits='8' id='a84c031d'/>
+ <type-decl name='float' size-in-bits='32' id='a6c45d85'/>
+ <type-decl name='int' size-in-bits='32' id='95e97e5e'/>
+ <array-type-def dimensions='1' type-id='95e97e5e' size-in-bits='320' id='b7bd1749'>
<subrange length='10' type-id='f0981eeb' id='487da03a'/>
</array-type-def>
- <type-decl name='long int' size-in-bits='64' alignment-in-bits='64' id='95e97e5f'/>
- <type-decl name='short int' size-in-bits='16' alignment-in-bits='16' id='95e97e60'/>
- <class-decl name='S' size-in-bits='32' alignment-in-bits='32' is-struct='yes' visibility='default' id='50d9a3fa'>
+ <type-decl name='long int' size-in-bits='64' id='95e97e5f'/>
+ <type-decl name='short int' size-in-bits='16' id='95e97e60'/>
+ <class-decl name='S' size-in-bits='32' is-struct='yes' visibility='default' id='50d9a3fa'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='m0' type-id='95e97e5e' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='' size-in-bits='32' alignment-in-bits='8' is-struct='yes' is-anonymous='yes' visibility='default' id='b91ffdee'>
+ <class-decl name='' size-in-bits='32' is-struct='yes' is-anonymous='yes' visibility='default' id='b91ffdee'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='status0' type-id='811c9dc5' visibility='default'/>
</data-member>
@@ -42,7 +42,7 @@
<var-decl name='status1' type-id='811c9dc5' visibility='default'/>
</data-member>
</class-decl>
- <type-decl name='unsigned long int' size-in-bits='64' alignment-in-bits='64' id='f0981eeb'/>
+ <type-decl name='unsigned long int' size-in-bits='64' id='f0981eeb'/>
<pointer-type-def type-id='50d9a3fa' size-in-bits='64' alignment-in-bits='64' id='fd01f598'/>
<pointer-type-def type-id='a84c031d' size-in-bits='64' alignment-in-bits='64' id='26a90f95'/>
<qualified-type-def type-id='50d9a3fa' const='yes' id='0fb3b55d'/>
@@ -53,11 +53,11 @@
<var-decl name='test_pointer' type-id='26a90f95' mangled-name='test_pointer' visibility='default' elf-symbol-id='test_pointer'/>
<var-decl name='test_const' type-id='0fb3b55d' mangled-name='test_const' visibility='default' elf-symbol-id='test_const'/>
<var-decl name='test_float' type-id='a6c45d85' mangled-name='test_float' visibility='default' elf-symbol-id='test_float'/>
- <function-decl name='foo_1' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='foo_1'>
+ <function-decl name='foo_1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='foo_1'>
<parameter type-id='fd01f598'/>
<return type-id='95e97e5e'/>
</function-decl>
- <function-decl name='main' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='main'>
+ <function-decl name='main' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='main'>
<return type-id='95e97e5e'/>
</function-decl>
<var-decl name='test_array' type-id='b7bd1749' mangled-name='test_array' visibility='default' elf-symbol-id='test_array'/>
@@ -12,7 +12,7 @@
<enumerator name='e0' value='0'/>
<enumerator name='e1' value='1'/>
</enum-decl>
- <class-decl name='opaque_struct' size-in-bits='32' alignment-in-bits='32' is-struct='yes' visibility='default' id='type-id-3'>
+ <class-decl name='opaque_struct' size-in-bits='32' is-struct='yes' visibility='default' id='type-id-3'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='m0' type-id='type-id-4' visibility='default'/>
</data-member>
@@ -21,7 +21,7 @@
<typedef-decl name='opaque_struct' type-id='type-id-3' id='type-id-5'/>
<pointer-type-def type-id='type-id-4' size-in-bits='64' alignment-in-bits='64' id='type-id-6'/>
<pointer-type-def type-id='type-id-5' size-in-bits='64' alignment-in-bits='64' id='type-id-7'/>
- <function-decl name='fn' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='fn'>
+ <function-decl name='fn' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='fn'>
<parameter type-id='type-id-7'/>
<parameter type-id='type-id-6'/>
<return type-id='type-id-8'/>
@@ -12,7 +12,7 @@
<enumerator name='e0' value='0'/>
<enumerator name='e1' value='1'/>
</enum-decl>
- <class-decl name='opaque_struct' size-in-bits='32' alignment-in-bits='32' is-struct='yes' visibility='default' id='6cde5052'>
+ <class-decl name='opaque_struct' size-in-bits='32' is-struct='yes' visibility='default' id='6cde5052'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='m0' type-id='99fcd3a5' visibility='default'/>
</data-member>
@@ -21,7 +21,7 @@
<typedef-decl name='opaque_struct' type-id='6cde5052' id='dae69ca1'/>
<pointer-type-def type-id='99fcd3a5' size-in-bits='64' alignment-in-bits='64' id='0e0526e0'/>
<pointer-type-def type-id='dae69ca1' size-in-bits='64' alignment-in-bits='64' id='3f6e71d0'/>
- <function-decl name='fn' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='fn'>
+ <function-decl name='fn' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='fn'>
<parameter type-id='3f6e71d0'/>
<parameter type-id='0e0526e0'/>
<return type-id='48b5725f'/>
@@ -7,12 +7,12 @@
<elf-symbol name='foo' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <class-decl name='S0' size-in-bits='64' alignment-in-bits='64' is-struct='yes' visibility='default' id='type-id-1'>
+ <class-decl name='S0' size-in-bits='64' is-struct='yes' visibility='default' id='type-id-1'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='m0' type-id='type-id-2' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='S1' size-in-bits='64' alignment-in-bits='64' is-struct='yes' visibility='default' id='type-id-3'>
+ <class-decl name='S1' size-in-bits='64' is-struct='yes' visibility='default' id='type-id-3'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='m0' type-id='type-id-4' visibility='default'/>
</data-member>
@@ -23,11 +23,11 @@
<qualified-type-def type-id='type-id-8' const='yes' id='type-id-9'/>
<pointer-type-def type-id='type-id-9' size-in-bits='64' alignment-in-bits='64' id='type-id-5'/>
<pointer-type-def type-id='type-id-8' size-in-bits='64' alignment-in-bits='64' id='type-id-2'/>
- <function-decl name='bar' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='bar'>
+ <function-decl name='bar' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='bar'>
<parameter type-id='type-id-7'/>
<return type-id='type-id-8'/>
</function-decl>
- <function-decl name='foo' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='foo'>
+ <function-decl name='foo' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='foo'>
<parameter type-id='type-id-6'/>
<return type-id='type-id-8'/>
</function-decl>
@@ -7,12 +7,12 @@
<elf-symbol name='foo' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <class-decl name='S0' size-in-bits='64' alignment-in-bits='64' is-struct='yes' visibility='default' id='109cd6fe'>
+ <class-decl name='S0' size-in-bits='64' is-struct='yes' visibility='default' id='109cd6fe'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='m0' type-id='eaa32e2f' visibility='default'/>
</data-member>
</class-decl>
- <class-decl name='S1' size-in-bits='64' alignment-in-bits='64' is-struct='yes' visibility='default' id='119cd891'>
+ <class-decl name='S1' size-in-bits='64' is-struct='yes' visibility='default' id='119cd891'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='m0' type-id='8a34a235' visibility='default'/>
</data-member>
@@ -23,11 +23,11 @@
<qualified-type-def type-id='48b5725f' const='yes' id='8581546e'/>
<pointer-type-def type-id='8581546e' size-in-bits='64' alignment-in-bits='64' id='6e97a70c'/>
<pointer-type-def type-id='48b5725f' size-in-bits='64' alignment-in-bits='64' id='eaa32e2f'/>
- <function-decl name='bar' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='bar'>
+ <function-decl name='bar' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='bar'>
<parameter type-id='5e30a4f9'/>
<return type-id='48b5725f'/>
</function-decl>
- <function-decl name='foo' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='foo'>
+ <function-decl name='foo' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='foo'>
<parameter type-id='842ea234'/>
<return type-id='48b5725f'/>
</function-decl>
@@ -11,7 +11,7 @@
<elf-symbol name='foo__' type='func-type' binding='weak-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <function-decl name='__foo' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='__foo'>
+ <function-decl name='__foo' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='__foo'>
<return type-id='type-id-1'/>
</function-decl>
<type-decl name='void' id='type-id-1'/>
@@ -11,7 +11,7 @@
<elf-symbol name='foo__' type='func-type' binding='weak-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <function-decl name='__foo' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='__foo'>
+ <function-decl name='__foo' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='__foo'>
<return type-id='48b5725f'/>
</function-decl>
<type-decl name='void' id='48b5725f'/>
@@ -6,14 +6,14 @@
<elf-symbol name='cpy' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='char' size-in-bits='8' alignment-in-bits='8' id='type-id-1'/>
- <type-decl name='unsigned int' size-in-bits='32' alignment-in-bits='32' id='type-id-2'/>
+ <type-decl name='char' size-in-bits='8' id='type-id-1'/>
+ <type-decl name='unsigned int' size-in-bits='32' id='type-id-2'/>
<pointer-type-def type-id='type-id-1' size-in-bits='64' alignment-in-bits='64' id='type-id-3'/>
<qualified-type-def type-id='type-id-3' restrict='yes' id='type-id-4'/>
<qualified-type-def type-id='type-id-1' const='yes' id='type-id-5'/>
<pointer-type-def type-id='type-id-5' size-in-bits='64' alignment-in-bits='64' id='type-id-6'/>
<qualified-type-def type-id='type-id-6' restrict='yes' id='type-id-7'/>
- <function-decl name='cpy' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='cpy'>
+ <function-decl name='cpy' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cpy'>
<parameter type-id='type-id-4'/>
<parameter type-id='type-id-7'/>
<parameter type-id='type-id-2'/>
@@ -6,14 +6,14 @@
<elf-symbol name='cpy' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='char' size-in-bits='8' alignment-in-bits='8' id='a84c031d'/>
- <type-decl name='unsigned int' size-in-bits='32' alignment-in-bits='32' id='f0981eeb'/>
+ <type-decl name='char' size-in-bits='8' id='a84c031d'/>
+ <type-decl name='unsigned int' size-in-bits='32' id='f0981eeb'/>
<pointer-type-def type-id='a84c031d' size-in-bits='64' alignment-in-bits='64' id='26a90f95'/>
<qualified-type-def type-id='26a90f95' restrict='yes' id='266fe297'/>
<qualified-type-def type-id='a84c031d' const='yes' id='9b45d938'/>
<pointer-type-def type-id='9b45d938' size-in-bits='64' alignment-in-bits='64' id='80f4b756'/>
<qualified-type-def type-id='80f4b756' restrict='yes' id='9d26089a'/>
- <function-decl name='cpy' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='cpy'>
+ <function-decl name='cpy' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='cpy'>
<parameter type-id='266fe297'/>
<parameter type-id='9d26089a'/>
<parameter type-id='f0981eeb'/>
@@ -8,39 +8,39 @@
</elf-function-symbols>
<abi-instr address-size='64' language='LANG_C'>
<type-decl name='' is-anonymous='yes' size-in-bits='32' alignment-in-bits='32' id='type-id-1'/>
- <type-decl name='char' size-in-bits='8' alignment-in-bits='8' id='type-id-2'/>
+ <type-decl name='char' size-in-bits='8' id='type-id-2'/>
<enum-decl name='E' linkage-name='E' id='type-id-3'>
<underlying-type type-id='type-id-1'/>
<enumerator name='e0' value='0'/>
<enumerator name='e1' value='1'/>
</enum-decl>
- <type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='type-id-4'/>
- <type-decl name='long int' size-in-bits='64' alignment-in-bits='64' id='type-id-5'/>
- <type-decl name='long long int' size-in-bits='64' alignment-in-bits='64' id='type-id-6'/>
+ <type-decl name='int' size-in-bits='32' id='type-id-4'/>
+ <type-decl name='long int' size-in-bits='64' id='type-id-5'/>
+ <type-decl name='long long int' size-in-bits='64' id='type-id-6'/>
<typedef-decl name='long_long' type-id='type-id-6' id='type-id-7'/>
<pointer-type-def type-id='type-id-2' size-in-bits='64' alignment-in-bits='64' id='type-id-8'/>
<qualified-type-def type-id='type-id-4' const='yes' id='type-id-9'/>
<qualified-type-def type-id='type-id-5' const='yes' id='type-id-10'/>
<qualified-type-def type-id='type-id-10' volatile='yes' id='type-id-11'/>
- <function-decl name='foo' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='foo'>
+ <function-decl name='foo' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='foo'>
<parameter type-id='type-id-8'/>
<parameter type-id='type-id-11'/>
<return type-id='type-id-5'/>
</function-decl>
- <function-decl name='baz2' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='baz2'>
+ <function-decl name='baz2' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='baz2'>
<parameter type-id='type-id-4'/>
<return type-id='type-id-7'/>
</function-decl>
- <function-decl name='bar' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='bar'>
+ <function-decl name='bar' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='bar'>
<parameter type-id='type-id-9'/>
<parameter is-variadic='yes'/>
<return type-id='type-id-12'/>
</function-decl>
- <function-decl name='bar2' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='bar2'>
+ <function-decl name='bar2' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='bar2'>
<parameter type-id='type-id-3'/>
<return type-id='type-id-12'/>
</function-decl>
- <function-decl name='baz' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='baz'>
+ <function-decl name='baz' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='baz'>
<parameter type-id='type-id-4'/>
<return type-id='type-id-12'/>
</function-decl>
@@ -3,8 +3,8 @@
<elf-symbol name='first_type_constructor' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='type-id-1'/>
- <class-decl name='first_type' size-in-bits='128' alignment-in-bits='32' is-struct='yes' visibility='default' id='type-id-2'>
+ <type-decl name='int' size-in-bits='32' id='type-id-1'/>
+ <class-decl name='first_type' size-in-bits='128' is-struct='yes' visibility='default' id='type-id-2'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='member0' type-id='type-id-3' visibility='default'/>
</data-member>
@@ -18,16 +18,16 @@
<typedef-decl name='character' type-id='type-id-6' id='type-id-4'/>
<typedef-decl name='constructor' type-id='type-id-7' id='type-id-5'/>
<typedef-decl name='integer' type-id='type-id-1' id='type-id-3'/>
- <type-decl name='unsigned char' size-in-bits='8' alignment-in-bits='8' id='type-id-6'/>
+ <type-decl name='unsigned char' size-in-bits='8' id='type-id-6'/>
<pointer-type-def type-id='type-id-2' size-in-bits='64' alignment-in-bits='64' id='type-id-8'/>
<pointer-type-def type-id='type-id-9' size-in-bits='64' alignment-in-bits='64' id='type-id-7'/>
- <function-decl name='first_type_constructor' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='first_type_constructor'>
+ <function-decl name='first_type_constructor' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='first_type_constructor'>
<parameter type-id='type-id-8'/>
<return type-id='type-id-10'/>
</function-decl>
<type-decl name='variadic parameter type' id='type-id-11'/>
<type-decl name='void' id='type-id-10'/>
- <function-type size-in-bits='64' alignment-in-bits='8' id='type-id-9'>
+ <function-type size-in-bits='64' id='type-id-9'>
<parameter is-variadic='yes'/>
<return type-id='type-id-10'/>
</function-type>
@@ -4,7 +4,7 @@
</elf-function-symbols>
<abi-instr address-size='64' language='LANG_C'>
<pointer-type-def type-id='type-id-1' size-in-bits='64' alignment-in-bits='64' id='type-id-2'/>
- <function-decl name='bar' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='bar'>
+ <function-decl name='bar' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='bar'>
<parameter type-id='type-id-2'/>
<return type-id='type-id-1'/>
</function-decl>
@@ -3,31 +3,31 @@
<elf-symbol name='foo' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
</elf-function-symbols>
<abi-instr address-size='64' language='LANG_C'>
- <type-decl name='char' size-in-bits='8' alignment-in-bits='8' id='type-id-1'/>
+ <type-decl name='char' size-in-bits='8' id='type-id-1'/>
<array-type-def dimensions='1' type-id='type-id-2' size-in-bits='448' alignment-in-bits='64' id='type-id-3'>
<subrange length='7' type-id='type-id-4' id='type-id-5'/>
</array-type-def>
- <array-type-def dimensions='1' type-id='type-id-1' size-in-bits='infinite' alignment-in-bits='8' id='type-id-6'>
+ <array-type-def dimensions='1' type-id='type-id-1' size-in-bits='infinite' id='type-id-6'>
<subrange length='infinite' type-id='type-id-4' id='type-id-7'/>
</array-type-def>
- <type-decl name='double' size-in-bits='64' alignment-in-bits='64' id='type-id-8'/>
- <array-type-def dimensions='1' type-id='type-id-8' size-in-bits='320' alignment-in-bits='64' id='type-id-9'>
+ <type-decl name='double' size-in-bits='64' id='type-id-8'/>
+ <array-type-def dimensions='1' type-id='type-id-8' size-in-bits='320' id='type-id-9'>
<subrange length='5' type-id='type-id-4' id='type-id-10'/>
</array-type-def>
- <array-type-def dimensions='1' type-id='type-id-9' size-in-bits='960' alignment-in-bits='64' id='type-id-11'>
+ <array-type-def dimensions='1' type-id='type-id-9' size-in-bits='960' id='type-id-11'>
<subrange length='3' type-id='type-id-4' id='type-id-12'/>
</array-type-def>
- <type-decl name='int' size-in-bits='32' alignment-in-bits='32' id='type-id-13'/>
+ <type-decl name='int' size-in-bits='32' id='type-id-13'/>
<array-type-def dimensions='1' type-id='type-id-14' size-in-bits='256' alignment-in-bits='64' id='type-id-15'>
<subrange length='4' type-id='type-id-4' id='type-id-16'/>
</array-type-def>
<array-type-def dimensions='1' type-id='type-id-17' size-in-bits='640' alignment-in-bits='64' id='type-id-18'>
<subrange length='10' type-id='type-id-4' id='type-id-19'/>
</array-type-def>
- <array-type-def dimensions='1' type-id='type-id-13' size-in-bits='160' alignment-in-bits='32' id='type-id-20'>
+ <array-type-def dimensions='1' type-id='type-id-13' size-in-bits='160' id='type-id-20'>
<subrange length='5' type-id='type-id-4' id='type-id-10'/>
</array-type-def>
- <class-decl name='S' size-in-bits='2304' alignment-in-bits='32' is-struct='yes' visibility='default' id='type-id-21'>
+ <class-decl name='S' size-in-bits='2304' is-struct='yes' visibility='default' id='type-id-21'>
<data-member access='public' layout-offset-in-bits='0'>
<var-decl name='a' type-id='type-id-20' visibility='default'/>
</data-member>
@@ -44,12 +44,12 @@
<var-decl name='e' type-id='type-id-6' visibility='default'/>
</data-member>
</class-decl>
- <type-decl name='unsigned long int' size-in-bits='64' alignment-in-bits='64' id='type-id-4'/>
+ <type-decl name='unsigned long int' size-in-bits='64' id='type-id-4'/>
<pointer-type-def type-id='type-id-21' size-in-bits='64' alignment-in-bits='64' id='type-id-22'/>
<pointer-type-def type-id='type-id-1' size-in-bits='64' alignment-in-bits='64' id='type-id-2'/>
<pointer-type-def type-id='type-id-13' size-in-bits='64' alignment-in-bits='64' id='type-id-14'/>
<pointer-type-def type-id='type-id-15' size-in-bits='64' alignment-in-bits='64' id='type-id-17'/>
- <function-decl name='foo' visibility='default' binding='global' size-in-bits='64' alignment-in-bits='8' elf-symbol-id='foo'>
+ <function-decl name='foo' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='foo'>
<parameter type-id='type-id-22'/>
<return type-id='type-id-13'/>
</function-decl>