18#ifndef LLVM_BINARYFORMAT_MINIDUMP_H
19#define LLVM_BINARYFORMAT_MINIDUMP_H
46static_assert(
sizeof(
Header) == 32);
51#define HANDLE_MDMP_STREAM_TYPE(CODE, NAME) NAME = CODE,
52#include "llvm/BinaryFormat/MinidumpConstants.def"
101static_assert(
sizeof(MemoryInfoListHeader) == 16);
104#define HANDLE_MDMP_PROTECT(CODE, NAME, NATIVENAME) NAME = CODE,
105#include "llvm/BinaryFormat/MinidumpConstants.def"
110#define HANDLE_MDMP_MEMSTATE(CODE, NAME, NATIVENAME) NAME = CODE,
111#include "llvm/BinaryFormat/MinidumpConstants.def"
116#define HANDLE_MDMP_MEMTYPE(CODE, NAME, NATIVENAME) NAME = CODE,
117#include "llvm/BinaryFormat/MinidumpConstants.def"
146#define HANDLE_MDMP_ARCH(CODE, NAME) NAME = CODE,
147#include "llvm/BinaryFormat/MinidumpConstants.def"
153#define HANDLE_MDMP_PLATFORM(CODE, NAME) NAME = CODE,
154#include "llvm/BinaryFormat/MinidumpConstants.def"
174static_assert(
sizeof(CPUInfo) == 24);
232static_assert(
sizeof(
Module) == 108);
245static_assert(
sizeof(
Thread) == 48);
This file defines DenseMapInfo traits for DenseMap.
Merge contiguous icmps into a memcmp
@ LLVM_MARK_AS_BITMASK_ENUM
ProcessorArchitecture
The processor architecture of the system that generated this minidump.
StreamType
The type of a minidump stream identifies its contents.
OSPlatform
The OS Platform of the system that generated this minidump.
LLVM_ENABLE_BITMASK_ENUMS_IN_NAMESPACE()
This is an optimization pass for GlobalISel generic memory operations.
bool operator==(const AddressRangeValuePair &LHS, const AddressRangeValuePair &RHS)
static unsigned getHashValue(minidump::StreamType Val)
static minidump::StreamType getTombstoneKey()
static bool isEqual(minidump::StreamType LHS, minidump::StreamType RHS)
static minidump::StreamType getEmptyKey()
An information struct used to provide DenseMap with the various necessary components for a given valu...
support::ulittle32_t CPUID
support::ulittle32_t ElfHWCaps
uint8_t ProcessorFeatures[16]
support::ulittle32_t AMDExtendedFeatures
support::ulittle32_t VersionInfo
support::ulittle32_t FeatureInfo
Specifies the location and type of a single stream in the minidump file.
LocationDescriptor Location
support::little_t< StreamType > Type
support::ulittle32_t UnusedAlignment
LocationDescriptor ThreadContext
Exception ExceptionRecord
support::ulittle32_t ThreadId
static constexpr size_t MaxParameters
support::ulittle32_t ExceptionFlags
support::ulittle32_t NumberParameters
support::ulittle64_t ExceptionInformation[MaxParameters]
support::ulittle64_t ExceptionRecord
static constexpr size_t MaxParameterBytes
static const uint32_t LLDB_FLAG
support::ulittle64_t ExceptionAddress
support::ulittle32_t UnusedAlignment
support::ulittle32_t ExceptionCode
Specifies the location (and size) of various objects in the minidump file.
support::ulittle32_t DataSize
support::ulittle64_t DataSize
support::ulittle64_t StartOfMemoryRange
Describes a single memory range (both its VM address and where to find it in the file) of the process...
support::ulittle64_t StartOfMemoryRange
LocationDescriptor Memory
support::little_t< MemoryState > State
support::ulittle64_t BaseAddress
support::little_t< MemoryProtection > AllocationProtect
support::little_t< MemoryType > Type
support::little_t< MemoryProtection > Protect
support::ulittle32_t Reserved1
support::ulittle64_t AllocationBase
support::ulittle32_t Reserved0
support::ulittle64_t RegionSize
LocationDescriptor CvRecord
support::ulittle64_t Reserved0
support::ulittle32_t TimeDateStamp
support::ulittle64_t Reserved1
support::ulittle32_t Checksum
LocationDescriptor MiscRecord
VSFixedFileInfo VersionInfo
support::ulittle32_t SizeOfImage
support::ulittle64_t BaseOfImage
support::ulittle32_t ModuleNameRVA
The SystemInfo stream, containing various information about the system where this minidump was genera...
support::ulittle16_t ProcessorRevision
support::little_t< ProcessorArchitecture > ProcessorArch
support::ulittle32_t BuildNumber
support::ulittle16_t SuiteMask
support::ulittle32_t MajorVersion
support::little_t< OSPlatform > PlatformId
uint8_t NumberOfProcessors
support::ulittle32_t CSDVersionRVA
support::ulittle32_t MinorVersion
support::ulittle16_t Reserved
support::ulittle16_t ProcessorLevel
Describes a single thread in the minidump file.
support::ulittle32_t Priority
support::ulittle64_t EnvironmentBlock
support::ulittle32_t PriorityClass
LocationDescriptor Context
support::ulittle32_t SuspendCount
support::ulittle32_t ThreadId
support::ulittle32_t Signature
support::ulittle32_t StructVersion
support::ulittle32_t FileDateLow
support::ulittle32_t FileVersionLow
support::ulittle32_t FileDateHigh
support::ulittle32_t FileFlagsMask
support::ulittle32_t ProductVersionLow
support::ulittle32_t FileFlags
support::ulittle32_t FileSubtype
support::ulittle32_t FileOS
support::ulittle32_t FileType
support::ulittle32_t FileVersionHigh
support::ulittle32_t ProductVersionHigh
Detailed information about the processor of the system that generated this minidump.
struct llvm::minidump::CPUInfo::ArmInfo Arm
struct llvm::minidump::CPUInfo::OtherInfo Other
struct llvm::minidump::CPUInfo::X86Info X86