diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2020-07-30 16:13:02 -0700 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2020-07-30 16:13:17 -0700 |
commit | 41eb8e88859b297f59f4d093aab9306d4b7057d9 (patch) | |
tree | 0e7f36e6e8fd93e43e1f3d2df22a35eaa7e74a50 /gas/doc | |
parent | 5e500d33230ce2683001038177ad335365764793 (diff) | |
download | gdb-41eb8e88859b297f59f4d093aab9306d4b7057d9.zip gdb-41eb8e88859b297f59f4d093aab9306d4b7057d9.tar.gz gdb-41eb8e88859b297f59f4d093aab9306d4b7057d9.tar.bz2 |
x86: Add {disp16} pseudo prefix
Use Prefix_XXX for pseudo prefixes. Add {disp16} pseudo prefix and
replace {disp32} pseudo prefix with {disp16} in 16-bit mode test.
Check invalid {disp16}/{disp32} pseudo prefixes.
gas/
PR gas/26305
* config/tc-i386.c (_i386_insn::disp_encoding): Add
disp_encoding_16bit.
(parse_insn): Check Prefix_XXX for pseudo prefixes. Handle
{disp16}.
(build_modrm_byte): Handle {disp16}.
(i386_index_check): Check invalid {disp16} and {disp32} pseudo
prefixes.
* doc/c-i386.texi: Update {disp32} documentation and document
{disp16}.
* testsuite/gas/i386/i386.exp: Run x86-64-inval-pseudo.
* testsuite/gas/i386/inval-pseudo.s: Add {disp32}/{disp16}
tests.
* testsuite/gas/i386/pseudos.s: Add {disp8}/{disp32} vmovaps
tests with 128-byte displacement. Add {disp16} tests.
* testsuite/gas/i386/x86-64-pseudos.s: Add {disp8}/{disp32}
vmovaps test. Add (%r13)/(%r13d) tests.
* testsuite/gas/i386/x86-64-inval-pseudo.l: New file.
* testsuite/gas/i386/x86-64-inval-pseudo.s: Likewise.
* testsuite/gas/i386/inval-pseudo.l: Updated.
* testsuite/gas/i386/pseudos.d: Likewise.
* testsuite/gas/i386/x86-64-pseudos.d: Likewise.
opcodes/
PR gas/26305
* i386-opc.h (Prefix_Disp8): New.
(Prefix_Disp16): Likewise.
(Prefix_Disp32): Likewise.
(Prefix_Load): Likewise.
(Prefix_Store): Likewise.
(Prefix_VEX): Likewise.
(Prefix_VEX3): Likewise.
(Prefix_EVEX): Likewise.
(Prefix_REX): Likewise.
(Prefix_NoOptimize): Likewise.
* i386-opc.tbl: Use Prefix_XXX on pseudo prefixes. Add {disp16}.
* i386-tbl.h: Regenerated.
Diffstat (limited to 'gas/doc')
-rw-r--r-- | gas/doc/c-i386.texi | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/gas/doc/c-i386.texi b/gas/doc/c-i386.texi index 8be708e..64a563a 100644 --- a/gas/doc/c-i386.texi +++ b/gas/doc/c-i386.texi @@ -822,7 +822,10 @@ Different encoding options can be specified via pseudo prefixes: @samp{@{disp8@}} -- prefer 8-bit displacement. @item -@samp{@{disp32@}} -- prefer 32-bit (16-bit in 16-bit mode) displacement. +@samp{@{disp32@}} -- prefer 32-bit displacement. + +@item +@samp{@{disp16@}} -- prefer 16-bit displacement. @item @samp{@{load@}} -- prefer load-form instruction. |