Volume 3: General-Purpose and System Instructions - Stanford ...
Volume 3: General-Purpose and System Instructions - Stanford ... Volume 3: General-Purpose and System Instructions - Stanford ...
AMD64 Technology 24594 Rev. 3.10 February 2005ExceptionsException RealVirtual8086 Protected Cause of ExceptionDebug, #DB X X A debug register was referenced while the general detect (GD) bitin DR7 was set.Invalid opcode, #UD X XDR4 or DR5 was referenced while the debug extensions (DE) bit inCR4 was set.XGeneral protection, #GP X XXAn illegal debug register (DR8-DR15) was referenced.CPL was not 0.A 1 was written to any of the upper 32 bits of DR6 or DR7 in 64-bitmode.332 MOV(DRn)
24594 Rev. 3.10 February 2005 AMD64 TechnologyRDMSRRead Model-Specific RegisterLoads the contents of a 64-bit model-specific register (MSR) specified in the ECXregister into registers EDX:EAX. The EDX register receives the high-order 32 bits andthe EAX register receives the low order bits. The RDMSR instruction ignores operandsize; ECX always holds the MSR number, and EDX:EAX holds the data. If a modelspecificregister has fewer than 64 bits, the unimplemented bit positions loaded intothe destination registers are undefined.This instruction must be executed at a privilege level of 0 or a general protectionexception (#GP) will be raised. This exception is also generated if a reserved orunimplemented model-specific register is specified in ECX.Use the CPUID instruction to determine if this instruction is supported.RDMSR is a serializing instruction.For more information about model-specific registers, see the documentation forvarious hardware implementations and Volume 2, System Programming.Mnemonic Opcode DescriptionRDMSR 0F 32 Copy MSR specified by ECX into EDX:EAX.Related InstructionsWRMSR, RDTSC, RDPMCrFLAGS AffectedNoneExceptionsException RealVirtual8086 Protected Cause of ExceptionInvalid opcode, #UD X X X The RDMSR instruction is not supported, as indicated by EDX bit 5returned by CPUID standard function 1 or extended function8000_0001h.General protection,#GPXX XXCPL was not 0.The value in ECX specifies a reserved or unimplemented MSRaddress.RDMSR 333
- Page 312 and 313: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 314 and 315: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 316 and 317: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 318 and 319: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 320 and 321: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 322 and 323: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 324 and 325: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 326 and 327: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 328 and 329: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 330 and 331: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 332 and 333: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 334 and 335: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 336 and 337: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 338 and 339: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 340 and 341: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 342 and 343: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 344 and 345: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 346 and 347: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 348 and 349: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 350 and 351: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 352 and 353: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 354 and 355: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 356 and 357: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 358 and 359: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 360 and 361: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 364 and 365: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 366 and 367: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 368 and 369: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 370 and 371: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 372 and 373: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 374 and 375: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 376 and 377: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 378 and 379: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 380 and 381: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 382 and 383: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 384 and 385: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 386 and 387: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 388 and 389: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 390 and 391: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 392 and 393: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 394 and 395: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 396 and 397: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 398 and 399: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 400 and 401: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 402 and 403: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 404 and 405: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 406 and 407: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 408 and 409: AMD64 Technology 24594 Rev. 3.10 Fe
- Page 410 and 411: AMD64 Technology 24594 Rev. 3.10 Fe
AMD64 Technology 24594 Rev. 3.10 February 2005ExceptionsException RealVirtual8086 Protected Cause of ExceptionDebug, #DB X X A debug register was referenced while the general detect (GD) bitin DR7 was set.Invalid opcode, #UD X XDR4 or DR5 was referenced while the debug extensions (DE) bit inCR4 was set.X<strong>General</strong> protection, #GP X XXAn illegal debug register (DR8-DR15) was referenced.CPL was not 0.A 1 was written to any of the upper 32 bits of DR6 or DR7 in 64-bitmode.332 MOV(DRn)