Crashpad

Public Attributes | List of all members
crashpad::MinidumpContextAMD64 Struct Reference

An x86_64 (AMD64) CPU context (register state) carried in a minidump file. More...

`#include "minidump/minidump_context.h"`

## Public Attributes
uint32_t | context_flags
| A bitfield composed of values of MinidumpContextFlags and MinidumpContextAMD64Flags. More...
uint32_t | mx_csr
uint16_t | cs
uint16_t | ds
uint16_t | es
uint16_t | fs
uint16_t | gs
uint16_t | ss
uint32_t | eflags
uint64_t | dr0
uint64_t | dr1
uint64_t | dr2
uint64_t | dr3
uint64_t | dr6
uint64_t | dr7
uint64_t | rax
uint64_t | rcx
uint64_t | rdx
uint64_t | rbx
uint64_t | rsp
uint64_t | rbp
uint64_t | rsi
uint64_t | rdi
uint64_t | r8
uint64_t | r9
uint64_t | r10
uint64_t | r11
uint64_t | r12
uint64_t | r13
uint64_t | r14
uint64_t | r15
uint64_t | rip
CPUContextX86_64::Fxsave | fxsave
uint128_struct | vector_register [26]
uint64_t | vector_control
uint64_t | p1_home
| Register parameter home address. More...
uint64_t | p2_home
| Register parameter home address. More...
uint64_t | p3_home
| Register parameter home address. More...
uint64_t | p4_home
| Register parameter home address. More...
uint64_t | p5_home
| Register parameter home address. More...
uint64_t | p6_home
| Register parameter home address. More...
uint64_t | debug_control
| Model-specific debug extension register. More...
uint64_t | last_branch_to_rip
| Model-specific debug extension register. More...
uint64_t | last_branch_from_rip
| Model-specific debug extension register. More...
uint64_t | last_exception_to_rip
| Model-specific debug extension register. More...
uint64_t | last_exception_from_rip
| Model-specific debug extension register. More...

## Detailed Description

An x86_64 (AMD64) CPU context (register state) carried in a minidump file.

This is analogous to the `CONTEXT` structure on Windows when targeting x86_64. This structure is used instead of `CONTEXT` to make it available when targeting other architectures.

Note
  This structure doesn’t carry `dr4` or `dr5`, which are obsolete and normally alias `dr6` and `dr7`, respectively. See Intel Software Developer’s Manual, Volume 3B: System Programming, Part 2 (253669-052), 17.2.2 “Debug Registers DR4 and DR5”.

## Member Data Documentation

## ◆ context_flags

uint32_t crashpad::MinidumpContextAMD64::context_flags

A bitfield composed of values of MinidumpContextFlags and MinidumpContextAMD64Flags.

This field identifies the context structure as an x86_64 CPU context, and indicates which other fields in the structure are valid.

## ◆ debug_control

uint64_t crashpad::MinidumpContextAMD64::debug_control

Model-specific debug extension register.

See Intel Software Developer’s Manual, Volume 3B: System Programming, Part 2 (253669-051), 17.4 “Last Branch, Interrupt, and Exception Recording Overview”, and AMD Architecture Programmer’s Manual, Volume 2: System Programming (24593-3.24), 13.1.6 “Control-Transfer Breakpoint Features”.

## ◆ last_branch_from_rip

uint64_t crashpad::MinidumpContextAMD64::last_branch_from_rip

Model-specific debug extension register.

See Intel Software Developer’s Manual, Volume 3B: System Programming, Part 2 (253669-051), 17.4 “Last Branch, Interrupt, and Exception Recording Overview”, and AMD Architecture Programmer’s Manual, Volume 2: System Programming (24593-3.24), 13.1.6 “Control-Transfer Breakpoint Features”.

## ◆ last_branch_to_rip

uint64_t crashpad::MinidumpContextAMD64::last_branch_to_rip

Model-specific debug extension register.

See Intel Software Developer’s Manual, Volume 3B: System Programming, Part 2 (253669-051), 17.4 “Last Branch, Interrupt, and Exception Recording Overview”, and AMD Architecture Programmer’s Manual, Volume 2: System Programming (24593-3.24), 13.1.6 “Control-Transfer Breakpoint Features”.

## ◆ last_exception_from_rip

uint64_t crashpad::MinidumpContextAMD64::last_exception_from_rip

Model-specific debug extension register.

See Intel Software Developer’s Manual, Volume 3B: System Programming, Part 2 (253669-051), 17.4 “Last Branch, Interrupt, and Exception Recording Overview”, and AMD Architecture Programmer’s Manual, Volume 2: System Programming (24593-3.24), 13.1.6 “Control-Transfer Breakpoint Features”.

## ◆ last_exception_to_rip

uint64_t crashpad::MinidumpContextAMD64::last_exception_to_rip

Model-specific debug extension register.

See Intel Software Developer’s Manual, Volume 3B: System Programming, Part 2 (253669-051), 17.4 “Last Branch, Interrupt, and Exception Recording Overview”, and AMD Architecture Programmer’s Manual, Volume 2: System Programming (24593-3.24), 13.1.6 “Control-Transfer Breakpoint Features”.

## ◆ p1_home

uint64_t crashpad::MinidumpContextAMD64::p1_home

Register parameter home address.

On Windows, this field may contain the “home” address (on-stack, in the shadow area) of a parameter passed by register. This field is present for convenience but is not necessarily populated, even if a corresponding parameter was passed by register.

## ◆ p2_home

uint64_t crashpad::MinidumpContextAMD64::p2_home

Register parameter home address.

On Windows, this field may contain the “home” address (on-stack, in the shadow area) of a parameter passed by register. This field is present for convenience but is not necessarily populated, even if a corresponding parameter was passed by register.

## ◆ p3_home

uint64_t crashpad::MinidumpContextAMD64::p3_home

Register parameter home address.

On Windows, this field may contain the “home” address (on-stack, in the shadow area) of a parameter passed by register. This field is present for convenience but is not necessarily populated, even if a corresponding parameter was passed by register.

## ◆ p4_home

uint64_t crashpad::MinidumpContextAMD64::p4_home

Register parameter home address.

On Windows, this field may contain the “home” address (on-stack, in the shadow area) of a parameter passed by register. This field is present for convenience but is not necessarily populated, even if a corresponding parameter was passed by register.

## ◆ p5_home

uint64_t crashpad::MinidumpContextAMD64::p5_home

Register parameter home address.

On Windows, this field may contain the “home” address (on-stack, in the shadow area) of a parameter passed by register. This field is present for convenience but is not necessarily populated, even if a corresponding parameter was passed by register.

## ◆ p6_home

uint64_t crashpad::MinidumpContextAMD64::p6_home

Register parameter home address.

On Windows, this field may contain the “home” address (on-stack, in the shadow area) of a parameter passed by register. This field is present for convenience but is not necessarily populated, even if a corresponding parameter was passed by register.

The documentation for this struct was generated from the following file:

- minidump/minidump_context.h