diff options
author | Jan Beulich <jbeulich@suse.com> | 2019-12-27 09:39:17 +0100 |
---|---|---|
committer | Jan Beulich <jbeulich@suse.com> | 2019-12-27 09:39:17 +0100 |
commit | 6cb0a70ef31ff585f046cb20a30088c0433d84f0 (patch) | |
tree | 7db13f1044a85a4be4154085ec17d3ee31893c79 /gas/ChangeLog | |
parent | 376cd056100dff2d6fc842aa013d0bbffdef363d (diff) | |
download | gdb-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/ChangeLog | 16 |
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 |