[binutils-gdb] opcodes/aarch64: shrink aarch64_ext_ldst_reglist()'s data[]
Jan Beulich
jbeulich@sourceware.org
Fri Aug 8 09:45:57 GMT 2025
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=7ec7556f86d4665c26ef63184cee7057213957c1
commit 7ec7556f86d4665c26ef63184cee7057213957c1
Author: Jan Beulich <jbeulich@suse.com>
Date: Fri Aug 8 11:42:32 2025 +0200
opcodes/aarch64: shrink aarch64_ext_ldst_reglist()'s data[]
The values are all pretty small; one is even a boolean. No point in
wasting 32 bits for every one of the fields.
Diff:
---
opcodes/aarch64-dis.c | 28 ++++++++++++++--------------
1 file changed, 14 insertions(+), 14 deletions(-)
diff --git a/opcodes/aarch64-dis.c b/opcodes/aarch64-dis.c
index af62bd88398..3ca22bb5c8a 100644
--- a/opcodes/aarch64-dis.c
+++ b/opcodes/aarch64-dis.c
@@ -501,21 +501,21 @@ aarch64_ext_ldst_reglist (const aarch64_operand *self ATTRIBUTE_UNUSED,
static const struct
{
- unsigned is_reserved;
- unsigned num_regs;
- unsigned num_elements;
+ unsigned num_regs:8;
+ unsigned num_elements:8;
+ bool is_reserved:1;
} data [] =
- { {0, 4, 4},
- {1, 4, 4},
- {0, 4, 1},
- {0, 4, 2},
- {0, 3, 3},
- {1, 3, 3},
- {0, 3, 1},
- {0, 1, 1},
- {0, 2, 2},
- {1, 2, 2},
- {0, 2, 1},
+ { {4, 4, false},
+ {4, 4, true},
+ {4, 1, false},
+ {4, 2, false},
+ {3, 3, false},
+ {3, 3, true},
+ {3, 1, false},
+ {1, 1, false},
+ {2, 2, false},
+ {2, 2, true},
+ {2, 1, false},
};
/* Rt */
More information about the Binutils-cvs
mailing list