flat assembler
Message board for the users of flat assembler.
Index
> Main > Inconsistent assembly documentation on the example of IMUL 2 |
| Author |
|
|
anotherone 11 Jul 2026, 12:13
The Intel Architectures Software Developers Manual Volume 1 states in chapter 3.7.1: "All arithmetic instructions (except the DIV and IDIV instructions) allow the source operand to be an immediate value." That seems to be wrong at least in the MUL case?
In volumes 2 the table in the IMUL description does not show a 2 operand version with immediate, but the text states that this is possible. https://www.felixcloutier.com/x86/ is just an old copy of the Intel manuals and in no way different. In the AMD64 Architecture Programmers Manual also the text states the existence, but the mnemonic list doesn't show it. So much for official documentations. FASM2 accepts something like 'mul rax,2' The book "The Art of 64-Bit Assembly Language" states in chapter 4.1 that the IMUL 2 operand version with immediate exists but the main description of the instruction is in another chapter and not mentioning this. In the book "Assembly Language for x86 Processors 8th" this variant is described for 32-bit mode, but not for 64-bit. At http://ref.x86asm.net/coder64-abc.html#I I can't find mentioning of a IMUL 2 operand version with immediate. Does somewhere exist a single, reliable source of x86-64 instruction documentation that is complete, correct and not pulled apart? |
|||
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2026, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.