DEBUG_VALUE structure

The DEBUG_VALUE structure holds register and expression values.

Syntax

typedef struct _DEBUG_VALUE {
  union {
    UCHAR   I8;
    USHORT  I16;
    ULONG   I32;
    struct {
      ULONG64 I64;
      BOOL    Nat;
    };
    float   F32;
    double  F64;
    UCHAR   F80Bytes[10];
    UCHAR   F82Bytes[11];
    UCHAR   F128Bytes[16];
    UCHAR   VI8[16];
    USHORT  VI16[8];
    ULONG   VI32[4];
    ULONG64 VI64[2];
    float   VF32[4];
    double  VF64[2];
    struct {
      ULONG LowPart;
      ULONG HighPart;
    } I64Parts32;
    struct {
      ULONG64 LowPart;
      LONG64  HighPart;
    } F128Parts64;
    UCHAR   RawBytes[24];
  };
  ULONG TailOfRawBytes;
  ULONG Type;
} DEBUG_VALUE, *PDEBUG_VALUE;

Members

I8

I16

I32

I64

Nat

F32

F64

F80Bytes

F82Bytes

F128Bytes

VI8

VI16

VI32

VI64

VF32

VF64

I64Parts32

I64Parts32.LowPart

I64Parts32.HighPart

F128Parts64

F128Parts64.LowPart

F128Parts64.HighPart

RawBytes

TailOfRawBytes

See Remarks.

Type

See Remarks.

Remarks

The Type field specifies the value type that is being held by the structure. This also specifies which field in the structure is valid. The possible values of the Type field, and the corresponding field specified as valid in the structure, include the following.

Type Name Type Valid DEBUG_VALUE Field
DEBUG_VALUE_INT8 8-bit signed integer I8
DEBUG_VALUE_INT16 16-bit signed integer I16
DEBUG_VALUE_INT32 32-bit signed integer I32
DEBUG_VALUE_INT64 64-bit signed integer I64
DEBUG_VALUE_FLOAT32 32-bit floating point number F32
DEBUG_VALUE_FLOAT64 64-bit floating point number F64
DEBUG_VALUE_FLOAT80 80-bit floating point number F80Bytes
DEBUG_VALUE_FLOAT128 128-bit floating point number F128Bytes
DEBUG_VALUE_VECTOR64 64-bit vector VI8[8], VI16[4], VI32[2], VI64[1], VF32[2], VF64[1]
DEBUG_VALUE_VECTOR128 128-bit vector VI8[16], VI16[8], VI32[4], VI64[2], VF32[4], VF64[2]

Requirements

   
Header dbgeng.h (include DbgEng.h)