aboutsummaryrefslogtreecommitdiff
path: root/gas/ChangeLog
diff options
context:
space:
mode:
authorJan Beulich <jbeulich@suse.com>2019-12-27 09:39:17 +0100
committerJan Beulich <jbeulich@suse.com>2019-12-27 09:39:17 +0100
commit6cb0a70ef31ff585f046cb20a30088c0433d84f0 (patch)
tree7db13f1044a85a4be4154085ec17d3ee31893c79 /gas/ChangeLog
parent376cd056100dff2d6fc842aa013d0bbffdef363d (diff)
downloadgdb-6cb0a70ef31ff585f046cb20a30088c0433d84f0.zip
gdb-6cb0a70ef31ff585f046cb20a30088c0433d84f0.tar.gz
gdb-6cb0a70ef31ff585f046cb20a30088c0433d84f0.tar.bz2
x86-64: correct / adjust prefix emission
First and foremost REX must come last. Next JumpInterSegment branches can't possibly have a REX prefix, as they're consistently CpuNo64. And finally make BND prefix handling in output_branch() consistent with that of other prefixes in the same function, and make its placement among prefixes consistent with output_jump() (which, oddly enough, still isn't the supposedly canonical order specified by the *_PREFIX definitions).
Diffstat (limited to 'gas/ChangeLog')
-rw-r--r--gas/ChangeLog16
1 files changed, 16 insertions, 0 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 578d76f..286f018 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,5 +1,21 @@
2019-12-27 Jan Beulich <jbeulich@suse.com>
+ * config/tc-i386.c (output_branch): Handle BND prefix the same
+ way as other prefixes. Emit it last before REX.
+ (output_jump): Emit BND before REX.
+ (output_interseg_jump): Don't emit REX.
+ * testsuite/gas/i386/x86-64-branch-2.s,
+ testsuite/gas/i386/x86-64-branch-3.s,
+ testsuite/gas/i386/x86-64-mpx-branch-1.s,
+ testsuite/gas/i386/x86-64-mpx-branch-2.s: Add REX.W cases.
+ * testsuite/gas/i386/x86-64-mpx-branch-2.d: Match output against
+ x86-64-mpx-branch-1.d.
+ * testsuite/gas/i386/x86-64-branch-2.d,
+ testsuite/gas/i386/x86-64-branch-3.d,
+ testsuite/gas/i386/x86-64-mpx-branch-1.d: Adjust expectations.
+
+2019-12-27 Jan Beulich <jbeulich@suse.com>
+
* config/tc-i386.c (flip_code16): New.
(output_branch, output_jump): Use it.
(i386_displacement): Restrict template set to just direct