Debugging Tools for Windows

DEBUG_REGISTER_DESCRIPTION

The DEBUG_REGISTER_DESCRIPTION structure is returned by GetDescription to describe a processor's register.

typedef struct _DEBUG_REGISTER_DESCRIPTION
{
    ULONG  Type;
    ULONG  Flags;
    ULONG  SubregMaster;
    ULONG  SubregLength;
    ULONG64  SubregMask;
    ULONG  SubregShift;
    ...
} DEBUG_REGISTER_DESCRIPTION, *PDEBUG_REGISTER_DESCRIPTION;

Members

Type
The type of value that this register holds. The possible values are the same as for the Type field in the DEBUG_VALUE structure.
Flags
A bit field of flags for the register. Currently, the only bit that can be set is DEBUG_REGISTERS_SUB_REGISTER, which indicates that this register is a subregister.
SubregMaster
The index of the register of which this register is a sub-register. This field is only used if the DEBUG_REGISTERS_SUB_REGISTER bit is set in Flags; otherwise, it is set to zero.
SubregLength
The size, in bits, of this sub-register. This field is only used if the DEBUG_REGISTERS_SUB_REGISTER bit is set in Flags; otherwise, it is set to zero.
SubregMask
The bit mask that converts the register specified in SubregMaster into this sub-register. This field is only used if the DEBUG_REGISTERS_SUB_REGISTER bit is set in Flags; otherwise, it is set to zero.
SubregShift
The bit shift that converts the register specified in SubregMaster into this sub-register. This field is only used if the DEBUG_REGISTERS_SUB_REGISTER bit is set in Flags; otherwise, it is set to zero.

Comments

If this register is a subregister, the value of the full register can be turned into the value of the sub-register by first shifting SubregShift bits to the right and then combining the result with SubregMask using the bitwise-AND operator. The size of the sub-register (SubregLength) is the number of bits set in SubregMask.

For general information about registers, see Registers.

Requirements

Headers: Defined in DbgEng.h. Include DbgEng.h.

Build machine: CAPEBUILD