[InstCombine] Signed saturation patterns
[llvm-complete.git] / include / llvm / BinaryFormat / MinidumpConstants.def
blobaeef399af7a439e2153ac36ac66c8350f415f67f
1 //===- MinidumpConstants.def - Iteration over minidump constants-*- C++ -*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
9 #if !(defined(HANDLE_MDMP_STREAM_TYPE) || defined(HANDLE_MDMP_ARCH) || \
10 defined(HANDLE_MDMP_PLATFORM) || defined(HANDLE_MDMP_PROTECT) || \
11 defined(HANDLE_MDMP_MEMSTATE) || defined(HANDLE_MDMP_MEMTYPE))
12 #error "Missing HANDLE_MDMP definition"
13 #endif
15 #ifndef HANDLE_MDMP_STREAM_TYPE
16 #define HANDLE_MDMP_STREAM_TYPE(CODE, NAME)
17 #endif
19 #ifndef HANDLE_MDMP_ARCH
20 #define HANDLE_MDMP_ARCH(CODE, NAME)
21 #endif
23 #ifndef HANDLE_MDMP_PLATFORM
24 #define HANDLE_MDMP_PLATFORM(CODE, NAME)
25 #endif
27 #ifndef HANDLE_MDMP_PROTECT
28 #define HANDLE_MDMP_PROTECT(CODE, NAME, NATIVENAME)
29 #endif
31 #ifndef HANDLE_MDMP_MEMSTATE
32 #define HANDLE_MDMP_MEMSTATE(CODE, NAME, NATIVENAME)
33 #endif
35 #ifndef HANDLE_MDMP_MEMTYPE
36 #define HANDLE_MDMP_MEMTYPE(CODE, NAME, NATIVENAME)
37 #endif
39 HANDLE_MDMP_STREAM_TYPE(0x0003, ThreadList)
40 HANDLE_MDMP_STREAM_TYPE(0x0004, ModuleList)
41 HANDLE_MDMP_STREAM_TYPE(0x0005, MemoryList)
42 HANDLE_MDMP_STREAM_TYPE(0x0006, Exception)
43 HANDLE_MDMP_STREAM_TYPE(0x0007, SystemInfo)
44 HANDLE_MDMP_STREAM_TYPE(0x0008, ThreadExList)
45 HANDLE_MDMP_STREAM_TYPE(0x0009, Memory64List)
46 HANDLE_MDMP_STREAM_TYPE(0x000a, CommentA)
47 HANDLE_MDMP_STREAM_TYPE(0x000b, CommentW)
48 HANDLE_MDMP_STREAM_TYPE(0x000c, HandleData)
49 HANDLE_MDMP_STREAM_TYPE(0x000d, FunctionTable)
50 HANDLE_MDMP_STREAM_TYPE(0x000e, UnloadedModuleList)
51 HANDLE_MDMP_STREAM_TYPE(0x000f, MiscInfo)
52 HANDLE_MDMP_STREAM_TYPE(0x0010, MemoryInfoList)
53 HANDLE_MDMP_STREAM_TYPE(0x0011, ThreadInfoList)
54 HANDLE_MDMP_STREAM_TYPE(0x0012, HandleOperationList)
55 HANDLE_MDMP_STREAM_TYPE(0x0013, Token)
56 HANDLE_MDMP_STREAM_TYPE(0x0014, JavascriptData)
57 HANDLE_MDMP_STREAM_TYPE(0x0015, SystemMemoryInfo)
58 HANDLE_MDMP_STREAM_TYPE(0x0016, ProcessVMCounters)
59 // Breakpad extension types. 0x4767 = "Gg"
60 HANDLE_MDMP_STREAM_TYPE(0x47670001, BreakpadInfo)
61 HANDLE_MDMP_STREAM_TYPE(0x47670002, AssertionInfo)
62 // These are additional minidump stream values which are specific to the linux
63 // breakpad implementation.
64 HANDLE_MDMP_STREAM_TYPE(0x47670003, LinuxCPUInfo) // /proc/cpuinfo
65 HANDLE_MDMP_STREAM_TYPE(0x47670004, LinuxProcStatus) // /proc/$x/status
66 HANDLE_MDMP_STREAM_TYPE(0x47670005, LinuxLSBRelease) // /etc/lsb-release
67 HANDLE_MDMP_STREAM_TYPE(0x47670006, LinuxCMDLine) // /proc/$x/cmdline
68 HANDLE_MDMP_STREAM_TYPE(0x47670007, LinuxEnviron) // /proc/$x/environ
69 HANDLE_MDMP_STREAM_TYPE(0x47670008, LinuxAuxv) // /proc/$x/auxv
70 HANDLE_MDMP_STREAM_TYPE(0x47670009, LinuxMaps) // /proc/$x/maps
71 HANDLE_MDMP_STREAM_TYPE(0x4767000A, LinuxDSODebug)
72 HANDLE_MDMP_STREAM_TYPE(0x4767000B, LinuxProcStat) // /proc/$x/stat
73 HANDLE_MDMP_STREAM_TYPE(0x4767000C, LinuxProcUptime) // uptime
74 HANDLE_MDMP_STREAM_TYPE(0x4767000D, LinuxProcFD) // /proc/$x/fd
75 // Facebook-defined stream types
76 HANDLE_MDMP_STREAM_TYPE(0xFACE1CA7, FacebookLogcat)
77 HANDLE_MDMP_STREAM_TYPE(0xFACECAFA, FacebookAppCustomData)
78 HANDLE_MDMP_STREAM_TYPE(0xFACECAFB, FacebookBuildID)
79 HANDLE_MDMP_STREAM_TYPE(0xFACECAFC, FacebookAppVersionName)
80 HANDLE_MDMP_STREAM_TYPE(0xFACECAFD, FacebookJavaStack)
81 HANDLE_MDMP_STREAM_TYPE(0xFACECAFE, FacebookDalvikInfo)
82 HANDLE_MDMP_STREAM_TYPE(0xFACECAFF, FacebookUnwindSymbols)
83 HANDLE_MDMP_STREAM_TYPE(0xFACECB00, FacebookDumpErrorLog)
84 HANDLE_MDMP_STREAM_TYPE(0xFACECCCC, FacebookAppStateLog)
85 HANDLE_MDMP_STREAM_TYPE(0xFACEDEAD, FacebookAbortReason)
86 HANDLE_MDMP_STREAM_TYPE(0xFACEE000, FacebookThreadName)
88 HANDLE_MDMP_ARCH(0x0000, X86) // PROCESSOR_ARCHITECTURE_INTEL
89 HANDLE_MDMP_ARCH(0x0001, MIPS) // PROCESSOR_ARCHITECTURE_MIPS
90 HANDLE_MDMP_ARCH(0x0002, Alpha) // PROCESSOR_ARCHITECTURE_ALPHA
91 HANDLE_MDMP_ARCH(0x0003, PPC) // PROCESSOR_ARCHITECTURE_PPC
92 HANDLE_MDMP_ARCH(0x0004, SHX) // PROCESSOR_ARCHITECTURE_SHX (Super-H)
93 HANDLE_MDMP_ARCH(0x0005, ARM) // PROCESSOR_ARCHITECTURE_ARM
94 HANDLE_MDMP_ARCH(0x0006, IA64) // PROCESSOR_ARCHITECTURE_IA64
95 HANDLE_MDMP_ARCH(0x0007, Alpha64) // PROCESSOR_ARCHITECTURE_ALPHA64
96 HANDLE_MDMP_ARCH(0x0008, MSIL) // PROCESSOR_ARCHITECTURE_MSIL
97 HANDLE_MDMP_ARCH(0x0009, AMD64) // PROCESSOR_ARCHITECTURE_AMD64
98 HANDLE_MDMP_ARCH(0x000a, X86Win64) // PROCESSOR_ARCHITECTURE_IA32_ON_WIN64
99 HANDLE_MDMP_ARCH(0x8001, SPARC) // Breakpad-defined value for SPARC
100 HANDLE_MDMP_ARCH(0x8002, PPC64) // Breakpad-defined value for PPC64
101 HANDLE_MDMP_ARCH(0x8003, ARM64) // Breakpad-defined value for ARM64
102 HANDLE_MDMP_ARCH(0x8004, MIPS64) // Breakpad-defined value for MIPS64
104 HANDLE_MDMP_PLATFORM(0x0000, Win32S) // Win32 on Windows 3.1
105 HANDLE_MDMP_PLATFORM(0x0001, Win32Windows) // Windows 95-98-Me
106 HANDLE_MDMP_PLATFORM(0x0002, Win32NT) // Windows NT, 2000+
107 HANDLE_MDMP_PLATFORM(0x0003, Win32CE) // Windows CE, Windows Mobile, "Handheld"
108 // Breakpad-defined values.
109 HANDLE_MDMP_PLATFORM(0x8000, Unix) // Generic Unix-ish
110 HANDLE_MDMP_PLATFORM(0x8101, MacOSX) // Mac OS X/Darwin
111 HANDLE_MDMP_PLATFORM(0x8102, IOS) // iOS
112 HANDLE_MDMP_PLATFORM(0x8201, Linux) // Linux
113 HANDLE_MDMP_PLATFORM(0x8202, Solaris) // Solaris
114 HANDLE_MDMP_PLATFORM(0x8203, Android) // Android
115 HANDLE_MDMP_PLATFORM(0x8204, PS3) // PS3
116 HANDLE_MDMP_PLATFORM(0x8205, NaCl) // Native Client (NaCl)
118 HANDLE_MDMP_PROTECT(0x01, NoAccess, PAGE_NO_ACCESS)
119 HANDLE_MDMP_PROTECT(0x02, ReadOnly, PAGE_READ_ONLY)
120 HANDLE_MDMP_PROTECT(0x04, ReadWrite, PAGE_READ_WRITE)
121 HANDLE_MDMP_PROTECT(0x08, WriteCopy, PAGE_WRITE_COPY)
122 HANDLE_MDMP_PROTECT(0x10, Execute, PAGE_EXECUTE)
123 HANDLE_MDMP_PROTECT(0x20, ExecuteRead, PAGE_EXECUTE_READ)
124 HANDLE_MDMP_PROTECT(0x40, ExecuteReadWrite, PAGE_EXECUTE_READ_WRITE)
125 HANDLE_MDMP_PROTECT(0x80, ExeciteWriteCopy, PAGE_EXECUTE_WRITE_COPY)
126 HANDLE_MDMP_PROTECT(0x100, Guard, PAGE_GUARD)
127 HANDLE_MDMP_PROTECT(0x200, NoCache, PAGE_NOCACHE)
128 HANDLE_MDMP_PROTECT(0x400, WriteCombine, PAGE_WRITECOMBINE)
129 HANDLE_MDMP_PROTECT(0x40000000, TargetsInvalid, PAGE_TARGETS_INVALID)
131 HANDLE_MDMP_MEMSTATE(0x01000, Commit, MEM_COMMIT)
132 HANDLE_MDMP_MEMSTATE(0x02000, Reserve, MEM_RESERVE)
133 HANDLE_MDMP_MEMSTATE(0x10000, Free, MEM_FREE)
135 HANDLE_MDMP_MEMTYPE(0x0020000, Private, MEM_PRIVATE)
136 HANDLE_MDMP_MEMTYPE(0x0040000, Mapped, MEM_MAPPED)
137 HANDLE_MDMP_MEMTYPE(0x1000000, Image, MEM_IMAGE)
139 #undef HANDLE_MDMP_STREAM_TYPE
140 #undef HANDLE_MDMP_ARCH
141 #undef HANDLE_MDMP_PLATFORM
142 #undef HANDLE_MDMP_PROTECT
143 #undef HANDLE_MDMP_MEMSTATE
144 #undef HANDLE_MDMP_MEMTYPE