-
Notifications
You must be signed in to change notification settings - Fork 55
Open
Labels
Description
The PUSH
immediate encodings list the operands types as Ibss
and Ivs
, the descriptions for which state that they are sign-extended to the size of the stack pointer (which is fixed at 64 bits in 64 bit mode). However, the Intel manual states that immediate operands to PUSH
are sign-extended to the operand size, which defaults to 64 bits in 64 bit mode but may be set to 16 bits using the operand size override prefix. Testing indicates that this does in fact work and it's sign extended to the operand size as the Intel manual states.