[binutils-gdb] x86: Document movsx/movsxd/movzx for AT&T syntax

H.J.Lu hjl@sourceware.org
Fri Feb 14 12:58:00 GMT 2020


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=0e6724dee4984e62e2f8e7da431f3b875ab14c4a

commit 0e6724dee4984e62e2f8e7da431f3b875ab14c4a
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Fri Feb 14 04:57:01 2020 -0800

    x86: Document movsx/movsxd/movzx for AT&T syntax
    
    Document different mnemonics of movsx, movsxd and movzx in AT&T syntax.
    
    	PR gas/25438
    	* doc/c-i386.texi: Document movsx, movsxd and movzx for AT&T
    	syntax.

Diff:
---
 gas/ChangeLog       |  6 ++++++
 gas/doc/c-i386.texi | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 59 insertions(+)

diff --git a/gas/ChangeLog b/gas/ChangeLog
index 8d5426d..67d1379 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,9 @@
+2020-02-14  H.J. Lu  <hongjiu.lu@intel.com>
+
+	PR gas/25438
+	* doc/c-i386.texi: Document movsx, movsxd and movzx for AT&T
+	syntax.
+
 2020-02-13  Fangrui Song   <maskray@google.com>
 	    H.J. Lu  <hongjiu.lu@intel.com>
 
diff --git a/gas/doc/c-i386.texi b/gas/doc/c-i386.texi
index 4eaf533..ba0df76 100644
--- a/gas/doc/c-i386.texi
+++ b/gas/doc/c-i386.texi
@@ -835,6 +835,59 @@ are called @samp{cbtw}, @samp{cwtl}, @samp{cwtd}, @samp{cltd}, @samp{cltq}, and
 @samp{cqto} in AT&T naming.  @code{@value{AS}} accepts either naming for these
 instructions.
 
+@cindex extension instructions, i386
+@cindex i386 extension instructions
+@cindex extension instructions, x86-64
+@cindex x86-64 extension instructions
+The Intel-syntax extension instructions
+
+@itemize @bullet
+@item
+@samp{movsx} --- sign-extend @samp{reg8/mem8} to @samp{reg16}.
+
+@item
+@samp{movsx} --- sign-extend @samp{reg8/mem8} to @samp{reg32}.
+
+@item
+@samp{movsx} --- sign-extend @samp{reg8/mem8} to @samp{reg64}
+(x86-64 only).
+
+@item
+@samp{movsx} --- sign-extend @samp{reg16/mem16} to @samp{reg32}
+
+@item
+@samp{movsx} --- sign-extend @samp{reg16/mem16} to @samp{reg64}
+(x86-64 only).
+
+@item
+@samp{movsxd} --- sign-extend @samp{reg32/mem32} to @samp{reg64}
+(x86-64 only).
+
+@item
+@samp{movzx} --- zero-extend @samp{reg8/mem8} to @samp{reg16}.
+
+@item
+@samp{movzx} --- zero-extend @samp{reg8/mem8} to @samp{reg32}.
+
+@item
+@samp{movzx} --- zero-extend @samp{reg8/mem8} to @samp{reg64}
+(x86-64 only).
+
+@item
+@samp{movzx} --- zero-extend @samp{reg16/mem16} to @samp{reg32}
+
+@item
+@samp{movzx} --- zero-extend @samp{reg16/mem16} to @samp{reg64}
+(x86-64 only).
+@end itemize
+
+@noindent
+are called @samp{movsbw/movsxb/movsx}, @samp{movsbl/movsxb/movsx},
+@samp{movsbq/movsb/movsx}, @samp{movswl/movsxw}, @samp{movswq/movsxw},
+@samp{movslq/movsxl}, @samp{movzbw/movzxb/movzx},
+@samp{movzbl/movzxb/movzx}, @samp{movzbq/movzxb/movzx},
+@samp{movzwl/movzxw} and @samp{movzwq/movzxw} in AT&T syntax.
+
 @cindex jump instructions, i386
 @cindex call instructions, i386
 @cindex jump instructions, x86-64



More information about the Binutils-cvs mailing list