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

Side by Side Diff: third_party/crashpad/crashpad/minidump/minidump_extensions.h

Issue 2555353002: Update Crashpad to 32981a3ee9d7c2769fb27afa038fe2e194cfa329 (Closed)
Patch Set: fix readme Created 4 years 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 unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Crashpad Authors. All rights reserved. 1 // Copyright 2014 The Crashpad Authors. All rights reserved.
2 // 2 //
3 // Licensed under the Apache License, Version 2.0 (the "License"); 3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License. 4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at 5 // You may obtain a copy of the License at
6 // 6 //
7 // http://www.apache.org/licenses/LICENSE-2.0 7 // http://www.apache.org/licenses/LICENSE-2.0
8 // 8 //
9 // Unless required by applicable law or agreed to in writing, software 9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS, 10 // distributed under the License is distributed on an "AS IS" BASIS,
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after
155 kMinidumpCPUArchitectureAMD64 = PROCESSOR_ARCHITECTURE_AMD64, 155 kMinidumpCPUArchitectureAMD64 = PROCESSOR_ARCHITECTURE_AMD64,
156 156
157 //! \brief A 32-bit x86 process running on IA-64 (Itanium). 157 //! \brief A 32-bit x86 process running on IA-64 (Itanium).
158 //! 158 //!
159 //! \note This value is not used in minidump files for 32-bit x86 processes 159 //! \note This value is not used in minidump files for 32-bit x86 processes
160 //! running on a 64-bit-capable x86 CPU and operating system. In that 160 //! running on a 64-bit-capable x86 CPU and operating system. In that
161 //! configuration, #kMinidumpCPUArchitectureX86 is used instead. 161 //! configuration, #kMinidumpCPUArchitectureX86 is used instead.
162 kMinidumpCPUArchitectureX86Win64 = PROCESSOR_ARCHITECTURE_IA32_ON_WIN64, 162 kMinidumpCPUArchitectureX86Win64 = PROCESSOR_ARCHITECTURE_IA32_ON_WIN64,
163 163
164 kMinidumpCPUArchitectureNeutral = PROCESSOR_ARCHITECTURE_NEUTRAL, 164 kMinidumpCPUArchitectureNeutral = PROCESSOR_ARCHITECTURE_NEUTRAL,
165
166 //! \brief 64-bit ARM.
167 //!
168 //! These systems identify their CPUs generically as “arm64” or “aarch64”, or
169 //! with more specific names such as “armv8”.
170 //!
171 //! \sa #kMinidumpCPUArchitectureARM64Breakpad
172 kMinidumpCPUArchitectureARM64 = PROCESSOR_ARCHITECTURE_ARM64,
173
174 kMinidumpCPUArchitectureARM32Win64 = PROCESSOR_ARCHITECTURE_ARM32_ON_WIN64,
165 kMinidumpCPUArchitectureSPARC = 0x8001, 175 kMinidumpCPUArchitectureSPARC = 0x8001,
166 176
167 //! \brief 64-bit PowerPC. 177 //! \brief 64-bit PowerPC.
168 //! 178 //!
169 //! These systems identify their CPUs generically as “ppc64”, or with more 179 //! These systems identify their CPUs generically as “ppc64”, or with more
170 //! specific names such as “ppc970”. 180 //! specific names such as “ppc970”.
171 kMinidumpCPUArchitecturePPC64 = 0x8002, 181 kMinidumpCPUArchitecturePPC64 = 0x8002,
172 182
173 //! \brief 64-bit ARM. 183 //! \brief Used by Breakpad for 64-bit ARM.
174 //! 184 //!
175 //! These systems identify their CPUs generically as “arm64” or “aarch64”, or 185 //! \deprecated Use #kMinidumpCPUArchitectureARM64 instead.
176 //! with more specific names such as “armv8”. 186 kMinidumpCPUArchitectureARM64Breakpad = 0x8003,
177 kMinidumpCPUArchitectureARM64 = 0x8003,
178 187
179 //! \brief Unknown CPU architecture. 188 //! \brief Unknown CPU architecture.
180 kMinidumpCPUArchitectureUnknown = PROCESSOR_ARCHITECTURE_UNKNOWN, 189 kMinidumpCPUArchitectureUnknown = PROCESSOR_ARCHITECTURE_UNKNOWN,
181 }; 190 };
182 191
183 //! \brief Operating system type values for MINIDUMP_SYSTEM_INFO::ProductType. 192 //! \brief Operating system type values for MINIDUMP_SYSTEM_INFO::ProductType.
184 //! 193 //!
185 //! \sa \ref VER_NT_x "VER_NT_*" 194 //! \sa \ref VER_NT_x "VER_NT_*"
186 enum MinidumpOSType : uint8_t { 195 enum MinidumpOSType : uint8_t {
187 //! \brief A “desktop” or “workstation” system. 196 //! \brief A “desktop” or “workstation” system.
(...skipping 14 matching lines...) Expand all
202 kMinidumpOSWin32s = VER_PLATFORM_WIN32s, 211 kMinidumpOSWin32s = VER_PLATFORM_WIN32s,
203 212
204 //! \brief Windows 95, Windows 98, and Windows Me. 213 //! \brief Windows 95, Windows 98, and Windows Me.
205 kMinidumpOSWin32Windows = VER_PLATFORM_WIN32_WINDOWS, 214 kMinidumpOSWin32Windows = VER_PLATFORM_WIN32_WINDOWS,
206 215
207 //! \brief Windows NT, Windows 2000, and later. 216 //! \brief Windows NT, Windows 2000, and later.
208 kMinidumpOSWin32NT = VER_PLATFORM_WIN32_NT, 217 kMinidumpOSWin32NT = VER_PLATFORM_WIN32_NT,
209 218
210 kMinidumpOSUnix = 0x8000, 219 kMinidumpOSUnix = 0x8000,
211 220
212 //! \brief Mac OS X, Darwin for traditional systems. 221 //! \brief macOS, Darwin for traditional systems.
213 kMinidumpOSMacOSX = 0x8101, 222 kMinidumpOSMacOSX = 0x8101,
214 223
215 //! \brief iOS, Darwin for mobile devices. 224 //! \brief iOS, Darwin for mobile devices.
216 kMinidumpOSiOS = 0x8102, 225 kMinidumpOSiOS = 0x8102,
217 226
218 //! \brief Linux, not including Android. 227 //! \brief Linux, not including Android.
219 kMinidumpOSLinux = 0x8201, 228 kMinidumpOSLinux = 0x8201,
220 229
221 kMinidumpOSSolaris = 0x8202, 230 kMinidumpOSSolaris = 0x8202,
222 231
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
269 //! minidump file must contain a module list stream 278 //! minidump file must contain a module list stream
270 //! (::kMinidumpStreamTypeModuleList) in order for this structure to appear. 279 //! (::kMinidumpStreamTypeModuleList) in order for this structure to appear.
271 //! 280 //!
272 //! This structure is versioned. When changing this structure, leave the 281 //! This structure is versioned. When changing this structure, leave the
273 //! existing structure intact so that earlier parsers will be able to understand 282 //! existing structure intact so that earlier parsers will be able to understand
274 //! the fields they are aware of, and make additions at the end of the 283 //! the fields they are aware of, and make additions at the end of the
275 //! structure. Revise #kVersion and document each field’s validity based on 284 //! structure. Revise #kVersion and document each field’s validity based on
276 //! #version, so that newer parsers will be able to determine whether the added 285 //! #version, so that newer parsers will be able to determine whether the added
277 //! fields are valid or not. 286 //! fields are valid or not.
278 //! 287 //!
279 //! \sa #MinidumpModuleCrashpadInfoList 288 //! \sa MinidumpModuleCrashpadInfoList
280 struct ALIGNAS(4) PACKED MinidumpModuleCrashpadInfo { 289 struct ALIGNAS(4) PACKED MinidumpModuleCrashpadInfo {
281 //! \brief The structure’s currently-defined version number. 290 //! \brief The structure’s currently-defined version number.
282 //! 291 //!
283 //! \sa version 292 //! \sa version
284 static const uint32_t kVersion = 1; 293 static const uint32_t kVersion = 1;
285 294
286 //! \brief The structure’s version number. 295 //! \brief The structure’s version number.
287 //! 296 //!
288 //! Readers can use this field to determine which other fields in the 297 //! Readers can use this field to determine which other fields in the
289 //! structure are valid. Upon encountering a value greater than #kVersion, a 298 //! structure are valid. Upon encountering a value greater than #kVersion, a
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after
416 425
417 //! \brief A MinidumpSimpleStringDictionary pointing to strings interpreted as 426 //! \brief A MinidumpSimpleStringDictionary pointing to strings interpreted as
418 //! key-value pairs. 427 //! key-value pairs.
419 //! 428 //!
420 //! These key-value pairs correspond to 429 //! These key-value pairs correspond to
421 //! ProcessSnapshot::AnnotationsSimpleMap(). 430 //! ProcessSnapshot::AnnotationsSimpleMap().
422 //! 431 //!
423 //! This field is present when #version is at least `1`. 432 //! This field is present when #version is at least `1`.
424 MINIDUMP_LOCATION_DESCRIPTOR simple_annotations; 433 MINIDUMP_LOCATION_DESCRIPTOR simple_annotations;
425 434
426 //! \brief A pointer to a #MinidumpModuleCrashpadInfoList structure. 435 //! \brief A pointer to a MinidumpModuleCrashpadInfoList structure.
427 //! 436 //!
428 //! This field is present when #version is at least `1`. 437 //! This field is present when #version is at least `1`.
429 MINIDUMP_LOCATION_DESCRIPTOR module_list; 438 MINIDUMP_LOCATION_DESCRIPTOR module_list;
430 }; 439 };
431 440
432 #if defined(COMPILER_MSVC) 441 #if defined(COMPILER_MSVC)
433 #pragma pack(pop) 442 #pragma pack(pop)
434 #endif // COMPILER_MSVC 443 #endif // COMPILER_MSVC
435 #undef PACKED 444 #undef PACKED
436 445
437 MSVC_POP_WARNING(); // C4200 446 MSVC_POP_WARNING(); // C4200
438 447
439 } // namespace crashpad 448 } // namespace crashpad
440 449
441 #endif // CRASHPAD_MINIDUMP_MINIDUMP_EXTENSIONS_H_ 450 #endif // CRASHPAD_MINIDUMP_MINIDUMP_EXTENSIONS_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698