[1/5] ctf-front-end: Set alignment-in-bits property to 0

Message ID 20221117034305.184864-2-guillermo.e.martinez@oracle.com
State New
Headers
Series CTF front-end Bug Fixing and improvement |

Commit Message

Guillermo E. Martinez Nov. 17, 2022, 3:43 a.m. UTC
  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

Dodji Seketeli Nov. 29, 2022, 11:46 a.m. UTC | #1
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>
  

Patch

diff --git a/src/abg-ctf-reader.cc b/src/abg-ctf-reader.cc
index 9950de57..9c41edf4 100644
--- a/src/abg-ctf-reader.cc
+++ b/src/abg-ctf-reader.cc
@@ -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,
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>