mirror of
https://github.com/netwide-assembler/nasm
synced 2026-08-26 16:23:04 -04:00
changes.src: minor formatting fixes
- Minor format cleanups - Correct the statement on PUSH. Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
This commit is contained in:
parent
e7aa83c68e
commit
5de64ecd20
1 changed files with 21 additions and 17 deletions
|
|
@ -34,18 +34,19 @@ It is the production version of NASM since 2025.
|
|||
\W{https://bugs.nasm.us/}\c{https://bugs.nasm.us} with details about the
|
||||
virtual environment, and we will figure out a suitable solution.
|
||||
|
||||
\b Various build fixes. Fix the documentation not building on MacOS because
|
||||
of the \c{cp} utility lacking \c{-u} there. Also fix not building generally due to
|
||||
wrong link formatting. Another fix was a typo in \c{compiler.h} related to a C++
|
||||
check.
|
||||
\b Various build fixes. Fix the documentation not building on MacOS
|
||||
because of the \c{cp} utility lacking \c{-u} there. Also fix not
|
||||
building generally due to wrong link formatting. Another fix was a
|
||||
typo in \c{compiler.h} related to a C++ check.
|
||||
|
||||
\b Corrections to assembling encodings:
|
||||
|
||||
\> Fix \c{CMP} allowing \c{LOCK} which is illegal.
|
||||
|
||||
\> Correct multiple \c{AVX512} instructions such as \c{VCVTSD2SI}, \c{VCVTSD2USI},
|
||||
\c{VCVTSS2SI}, \c{VCVTSS2USI}, \c{VCVTTSD2SI}, \c{VCVTTSD2USI}, \c{VCVTTSS2SI},
|
||||
\c{VCVTTSS2USI}, \c{VGETEXPSH}, \c{VGETMANTSH}, \c{MOVDDUP}, \c{VMOVDDUP}.
|
||||
\> Correct multiple \c{AVX512} instructions such as \c{VCVTSD2SI},
|
||||
\c{VCVTSD2USI}, \c{VCVTSS2SI}, \c{VCVTSS2USI}, \c{VCVTTSD2SI},
|
||||
\c{VCVTTSD2USI}, \c{VCVTTSS2SI}, \c{VCVTTSS2USI}, \c{VGETEXPSH},
|
||||
\c{VGETMANTSH}, \c{MOVDDUP}, \c{VMOVDDUP}.
|
||||
|
||||
\> Fixed other encodings or instruction formats for instructions \c{UWRMSR},
|
||||
\c{CMPSD}, \c{VCMPSS}, \c{V4FMADDSS}, \c{V4FNMADDSS}, \c{VCVTDQ2PH},
|
||||
|
|
@ -55,10 +56,12 @@ It is the production version of NASM since 2025.
|
|||
|
||||
\> Fixed typos in \c{VP4DPWSSD} mnemonic.
|
||||
|
||||
\> Fixed byte and word operands getting the same encoding on arithmetic instructions
|
||||
such as \c{CMP}.
|
||||
\> Fixed \c{BYTE} and \c{WORD} operands getting the same encoding on
|
||||
arithmetic instructions such as \c{CMP}.
|
||||
|
||||
\> Fixed \c{PUSH} not assembling when used with a \c{DWORD}.
|
||||
\> Fixed \c{PUSH} not assembling when used with a \c{DWORD} in 64-bit
|
||||
mode. This is not a recommended syntax as the operand size is still
|
||||
64 bits, but was permitted by earlier versions of NASM.
|
||||
|
||||
\b Corrections to disassembling:
|
||||
|
||||
|
|
@ -70,14 +73,15 @@ It is the production version of NASM since 2025.
|
|||
\b Whole bunch of minor fixes to operand sizes, operand size prefixes. Changes
|
||||
mostly return the behavior known from 2.16.03.
|
||||
|
||||
\> '\c{mov} [mem], label' would be accepted without size specifiers which could cause
|
||||
unintended consequences. Raise an error if no size was specified and one of
|
||||
the operands is a memory reference and another operands is a label.
|
||||
\> \c{mov [mem], label} would be accepted without size specifiers
|
||||
which could cause unintended consequences. Raise an error if no
|
||||
size was specified and one of the operands is a memory reference
|
||||
and another operands is a label.
|
||||
|
||||
\> \c{jmp} \c{NEAR} is now the same as \c{jmp} \c{strict} \c{NEAR} as the strict
|
||||
is redundant here. \c{jmp} \c{WORD} on the other hand is up for optimization as \c{NEAR}
|
||||
and \c{WORD} relate to different things - jump lengths and operation sizes
|
||||
respectively.
|
||||
\> \c{JMP NEAR} is now the same as \c{JMP STRICT NEAR} as the
|
||||
\c{STRICT} is redundant here. \c{JMP WORD} on the other hand is
|
||||
up for optimization as \c{NEAR} and \c{WORD} relate to different
|
||||
things - jump lengths and operation sizes respectively.
|
||||
|
||||
\> Using redundant (or not) but valid operands size prefixes was fixed on
|
||||
instructions such as \c{IRET}, \c{PUSHF}, \c{POPF}, \c{PUSH} and \c{POP}.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue