Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(154)

Unified Diff: third_party/crashpad/crashpad/minidump/minidump_context.h

Issue 2710663006: Update Crashpad to 4a2043ea65e2641ef1a921801c0aaa15ada02fc7 (Closed)
Patch Set: Update Crashpad to 4a2043ea65e2 Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/crashpad/crashpad/minidump/minidump_context.h
diff --git a/third_party/crashpad/crashpad/minidump/minidump_context.h b/third_party/crashpad/crashpad/minidump/minidump_context.h
index 4eb3acfa3cd13aff48502cc4483e70ad6c0c41d1..b71b57ccd1a5f033dcc3c27149c84953f453984e 100644
--- a/third_party/crashpad/crashpad/minidump/minidump_context.h
+++ b/third_party/crashpad/crashpad/minidump/minidump_context.h
@@ -92,7 +92,8 @@ enum MinidumpContextX86Flags : uint32_t {
//! \brief Indicates the validity of floating-point state
//! (`CONTEXT_FLOATING_POINT`).
//!
- //! The `float_save` field is valid.
+ //! The `fsave` field is valid. The `float_save` field is included in this
+ //! definition, but its members have no practical use asdie from `fsave`.
kMinidumpContextX86FloatingPoint = kMinidumpContextX86 | 0x00000008,
//! \brief Indicates the validity of debug registers
@@ -130,8 +131,9 @@ enum MinidumpContextX86Flags : uint32_t {
//! \brief A 32-bit x86 CPU context (register state) carried in a minidump file.
//!
//! This is analogous to the `CONTEXT` structure on Windows when targeting
-//! 32-bit x86. This structure is used instead of `CONTEXT` to make it available
-//! when targeting other architectures.
+//! 32-bit x86, and the `WOW64_CONTEXT` structure when targeting an x86-family
+//! CPU, either 32- or 64-bit. This structure is used instead of `CONTEXT` or
+//! `WOW64_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
@@ -152,16 +154,12 @@ struct MinidumpContextX86 {
uint32_t dr6;
uint32_t dr7;
- struct {
- uint32_t control_word;
- uint32_t status_word;
- uint32_t tag_word;
- uint32_t error_offset;
- uint32_t error_selector;
- uint32_t data_offset;
- uint32_t data_selector;
- uint8_t register_area[80];
- uint32_t spare_0;
+ // CPUContextX86::Fsave has identical layout to what the x86 CONTEXT
+ // structure places here.
+ CPUContextX86::Fsave fsave;
+ union {
+ uint32_t spare_0; // As in the native x86 CONTEXT structure since Windows 8
+ uint32_t cr0_npx_state; // As in WOW64_CONTEXT and older SDKs’ x86 CONTEXT
} float_save;
uint32_t gs;

Powered by Google App Engine
This is Rietveld 408576698