diff options
author | Jan Beulich <jbeulich@suse.com> | 2021-06-15 08:00:45 +0200 |
---|---|---|
committer | Jan Beulich <jbeulich@suse.com> | 2021-06-15 08:00:45 +0200 |
commit | 2f2be86bbb8d26f780183e45b169748ef625f03d (patch) | |
tree | 43118b9e088c86ed84e75c447dbbd1a1a85fcc8f /gas/ChangeLog | |
parent | 649658972ca923250019ca15e4ddd98bf28bf123 (diff) | |
download | gdb-2f2be86bbb8d26f780183e45b169748ef625f03d.zip gdb-2f2be86bbb8d26f780183e45b169748ef625f03d.tar.gz gdb-2f2be86bbb8d26f780183e45b169748ef625f03d.tar.bz2 |
x86: simplify .dispNN setting
First of all eliminate the disp{16,32,32s} static variables, which are
used solely for setting a temporary variable in build_modrm_byte(). The
effect there can be had without use of such a temporary and without
operand_type_or(), by just setting the single bit each that needs
setting.
Then use operand_type_and_not(..., anydisp) when all dispNN bits want
clearing together.
Diffstat (limited to 'gas/ChangeLog')
-rw-r--r-- | gas/ChangeLog | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index 7699447..d01ba23 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,5 +1,12 @@ 2021-06-15 Jan Beulich <jbeulich@suse.com> + * config/tc-i386.c (disp16, disp32, disp32s): Delete. + (optimize_disp, i386_finalize_displacement): Use + operand_type_and_not. + (build_modrm_byte): Likewise. Eliminate local variable newdisp. + +2021-06-15 Jan Beulich <jbeulich@suse.com> + * config/tc-i386.c (offset_in_range): Bail early when mask would cover all bits anyway. |