![Intel ITANIUM ARCHITECTURE Manual Download Page 297](http://html.mh-extra.com/html/intel/itanium-architecture/itanium-architecture_manual_2073403297.webp)
4:290
Volume 4: Base IA-32 Instruction Reference
MOV—Move to/from Debug Registers
Description
Moves the contents of two or more debug registers (DR0 through DR3, DR4 and DR5,
or DR6 and DR7) to a general-purpose register or vice versa. The operand size for these
instructions is always 32 bits, regardless of the operand-size attribute. (See the
Intel
Architecture Software Developer’s Manual, Volume 3
for a detailed description of the
flags and fields in the debug registers.)
The instructions must be executed at privilege level 0 or in real-address mode.
When the debug extension (DE) flag in register CR4 is clear, these instructions operate
on debug registers in a manner that is compatible with Intel386™ and Intel486
processors. In this mode, references to DR4 and DR5 refer to DR6 and DR7,
respectively. When the DE set in CR4 is set, attempts to reference DR4 and DR5 result
in an undefined opcode (#UD) exception.
At the opcode level, the
reg
field within the ModR/M byte specifies which of the debug
registers is loaded or read. The two bits in the
mod
field are always 11. The
r/m
field
specifies the general-purpose register loaded or read.
Operation
IF Itanium System Environment THEN IA-32_Intercept(INST,MOVDR);
IF ((DE = 1) and (SRC or DEST = DR4 or DR5))
THEN
#UD;
ELSE
DEST
SRC;
Flags Affected
The OF, SF, ZF, AF, PF, and CF flags are undefined.
Additional Itanium System Environment Exceptions
IA-32_Intercept
Mandatory Instruction Intercept.
Protected Mode Exceptions
#GP(0)
If the current privilege level is not 0.
#UD
If the DE (debug extensions) bit of CR4 is set and a MOV instruction
is executed involving DR4 or DR5.
Opcode
Instruction
Description
0F 21/
r
MOV
r32,
DR0-DR3
Move debug registers to
r32
0F 21/
r
MOV
r32,
DR4-DR5
Move debug registers to
r32
0F 21/
r
MOV
r32,
DR6-DR7
Move debug registers to
r32
0F 23 /
r
MOV DR0-DR3,
r32
Move
r32
to debug registers
0F 23 /
r
MOV DR4-DR5,
r32
Move
r32
to debug registers
0F 23 /
r
MOV DR6-DR7,
r32
Move
r32
to debug registers
Summary of Contents for ITANIUM ARCHITECTURE
Page 1: ......
Page 7: ...402 Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 199: ...4 192 Volume 4 Base IA 32 Instruction Reference FWAIT Wait See entry for WAIT ...
Page 352: ...Volume 4 Base IA 32 Instruction Reference 4 345 ROL ROR Rotate See entry for RCL RCR ROL ROR ...
Page 589: ...4 582 Volume 4 IA 32 SSE Instruction Reference ...
Page 590: ...Index Intel Itanium Architecture Software Developer s Manual Rev 2 3 Index ...
Page 591: ...Index Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 603: ...INDEX Index 12 Index for Volumes 1 2 3 and 4 ...
Page 604: ......