/llvm-project/llvm/include/llvm/ObjectYAML/ |
H A D | MinidumpYAML.h | 1 //===- MinidumpYAML.h - Minidump YAMLIO implementation ----------*- C++ -*-===// 12 #include "llvm/BinaryFormat/Minidump.h" 13 #include "llvm/Object/Minidump.h" 20 /// The base class for all minidump streams. The "Type" of the stream 21 /// corresponds to the Stream Type field in the minidump file. The "Kind" field 40 Stream(StreamKind Kind, minidump::StreamType Type) : Kind(Kind), Type(Type) {} 44 const minidump::StreamType Type; 47 static StreamKind getKind(minidump::StreamType Type); 50 static std::unique_ptr<Stream> create(minidump::StreamType Type); 54 create(const minidump [all...] |
/llvm-project/llvm/include/llvm/Object/ |
H A D | Minidump.h | 1 //===- Minidump.h - Minidump object file implementation ---------*- C++ -*-===// 16 #include "llvm/BinaryFormat/Minidump.h" 23 /// A class providing access to the contents of a minidump file. 27 /// an error if this file cannot be identified as a minidump file, or if its 33 /// Returns the contents of the minidump header. in header() 34 const minidump::Header &header() const { return Header; } 37 ArrayRef<minidump::Directory> streams() const { return Streams; } 40 ArrayRef<uint8_t> getRawStream(const minidump::Directory &Stream) const { in getRawStream() 47 getRawStream(minidump [all...] |
/llvm-project/llvm/include/llvm/BinaryFormat/ |
H A D | Minidump.h | 1 //===- Minidump.h - Minidump constants and structures -----------*- C++ -*-===// 9 // This header constants and data structures pertaining to the Windows Minidump 26 namespace minidump { 30 /// The minidump header is the first part of a minidump file. It identifies the 31 /// file as a minidump file, and gives the location of the stream directory. 48 /// The type of a minidump stream identifies its contents. Streams numbers after 57 /// Specifies the location (and size) of various objects in the minidump file. 66 /// the file) of the process from which this minidump fil [all...] |
/llvm-project/lldb/unittests/Process/minidump/ |
H A D | MinidumpParserTest.cpp | 9 #include "Plugins/Process/minidump/MinidumpParser.h" 10 #include "Plugins/Process/minidump/MinidumpTypes.h" 11 #include "Plugins/Process/minidump/RegisterContextMinidump_x86_32.h" 12 #include "Plugins/Process/minidump/RegisterContextMinidump_x86_64.h" 37 using namespace minidump; 78 --- !minidump in TEST_F() 94 --- !minidump in TEST_F() 106 llvm::ArrayRef<minidump::Thread> thread_list; in TEST_F() 111 const minidump::Thread &thread = thread_list[0]; in TEST_F() 121 --- !minidump in TEST_F() [all...] |
/llvm-project/llvm/unittests/ObjectYAML/ |
H A D | MinidumpYAMLTest.cpp | 1 //===- MinidumpYAMLTest.cpp - Tests for Minidump<->YAML code --------------===// 9 #include "llvm/Object/Minidump.h" 16 using namespace llvm::minidump; 33 --- !minidump in TEST() 75 --- !minidump in TEST() 91 --- !minidump in TEST() 121 --- !minidump in TEST() 147 --- !minidump in TEST() 171 const minidump::ExceptionStream &Stream = *ExpectedStream; in TEST() 173 const minidump in TEST() [all...] |
/llvm-project/lldb/source/Plugins/Process/minidump/ |
H A D | MinidumpParser.h | 23 #include "llvm/Object/Minidump.h" 34 namespace minidump { 36 // Describes a range of memory captured in the Minidump 64 UUID GetModuleUUID(const minidump::Module *module); 66 llvm::ArrayRef<minidump::Thread> GetThreads(); 70 llvm::ArrayRef<uint8_t> GetThreadContext(const minidump::Thread &td); 72 llvm::ArrayRef<uint8_t> GetThreadContextWow64(const minidump::Thread &td); 82 llvm::ArrayRef<minidump::Module> GetModuleList(); 88 std::vector<const minidump::Module *> GetFilteredModuleList(); 118 } // end namespace minidump [all...] |
H A D | MinidumpParser.cpp | 27 using namespace minidump; 32 llvm::MemoryBufferRef(toStringRef(data_sp->GetData()), "minidump")); in Create() 57 UUID MinidumpParser::GetModuleUUID(const minidump::Module *module) { in GetModuleUUID() 88 llvm::ArrayRef<minidump::Thread> MinidumpParser::GetThreads() { in GetThreads() 106 MinidumpParser::GetThreadContext(const minidump::Thread &td) { in GetThreadContextWow64() 111 MinidumpParser::GetThreadContextWow64(const minidump::Thread &td) { in GetThreadContextWow64() 113 // the minidump was captured with a 64-bit debugger, then the CONTEXT we just in GetThreadContextWow64() 155 // TODO set the arm subarch stuff if the minidump has info about it in GetArchitecture() 179 // TODO add all of the OSes that Minidump/breakpad distinguishes? in GetArchitecture() 252 llvm::ArrayRef<minidump in GetModuleList() [all...] |
H A D | ProcessMinidump.cpp | 48 using namespace minidump; 56 /// Breakpad, a Google crash log reporting tool suite, creates minidump files 58 /// minidumps, it will check for a GNU build ID when creating a minidump file 122 return "Minidump plug-in."; in CreateInstance() 133 // Read enough data for the Minidump header in CreateInstance() 141 if (identify_magic(toStringRef(DataPtr->GetData())) != llvm::file_magic::minidump) in CreateInstance() 196 // Do we support the minidump's architecture? in DoLoadCore() 208 "unsupported minidump architecture: %s", arch.GetArchitectureName()); in DoLoadCore() 236 Debugger::ReportWarning("unable to retrieve process ID from minidump file, " in RefreshStateAfterStop() 281 llvm::minidump in RefreshStateAfterStop() 811 MinidumpParser &minidump = *process->m_minidump_parser; DoExecute() local [all...] |
H A D | ProcessMinidump.h | 27 namespace minidump { 40 static llvm::StringRef GetPluginNameStatic() { return "minidump"; } in GetPluginNameStatic() 110 llvm::ArrayRef<minidump::Thread> m_thread_list; 111 std::unordered_map<uint32_t, const minidump::ExceptionStream> 121 } // namespace minidump
|
H A D | ThreadMinidump.h | 19 namespace minidump { 23 ThreadMinidump(Process &process, const minidump::Thread &td, 42 } // namespace minidump
|
H A D | MinidumpTypes.h | 18 #include "llvm/BinaryFormat/Minidump.h" 32 namespace minidump { 34 using namespace llvm::minidump; 99 } // namespace minidump
|
/llvm-project/lldb/source/Plugins/ObjectFile/Minidump/ |
H A D | MinidumpFileBuilder.cpp | 11 #include "Plugins/Process/minidump/RegisterContextMinidump_ARM64.h" 12 #include "Plugins/Process/minidump/RegisterContextMinidump_x86_64.h" 31 #include "llvm/BinaryFormat/Minidump.h" 37 #include "Plugins/Process/minidump/MinidumpTypes.h" 55 using namespace llvm::minidump; 62 // non-stacks, and a stream to mark this minidump was generated by LLDB. in AddHeaderAndCalculateDirectories() 84 m_expected_directories * sizeof(llvm::minidump::Directory); in AddHeaderAndCalculateDirectories() 143 AddDirectory(StreamType::SystemInfo, sizeof(llvm::minidump::SystemInfo)); in AddSystemInfo() 147 llvm::minidump::ProcessorArchitecture arch; in AddSystemInfo() 203 llvm::minidump in AddSystemInfo() [all...] |
H A D | MinidumpFileBuilder.h | 10 /// Structure holding data neccessary for minidump file creation. 35 #include "llvm/BinaryFormat/Minidump.h" 36 #include "llvm/Object/Minidump.h" 38 // Write std::string to minidump in the UTF16 format(with null termination char) 46 /// Minidump writer for Linux 48 /// This class provides a Minidump writer that is able to 52 /// This class constructs the minidump on disk starting with 101 // at the time of saving minidump. 142 lldb_private::Status AddDirectory(llvm::minidump::StreamType type, 146 std::vector<llvm::minidump [all...] |
H A D | ObjectFileMinidump.h | 12 /// ObjectFileMinidump is created only to be able to save minidump core files 14 /// Minidump files are not ObjectFile objects, but they are core files and 33 static llvm::StringRef GetPluginNameStatic() { return "minidump"; } in GetPluginDescriptionStatic() 35 return "Minidump object file."; in GetPluginDescriptionStatic() 57 // Saves dump in Minidump file format
|
/llvm-project/llvm/lib/Object/ |
H A D | Minidump.cpp | 1 //===- Minidump.cpp - Minidump object file implementation -----------------===// 9 #include "llvm/Object/Minidump.h" 14 using namespace llvm::minidump; 17 MinidumpFile::getRawStream(minidump::StreamType Type) const { 25 // Minidump strings consist of a 32-bit length field, which gives the size of in getString() 68 getDataSliceAs<minidump::MemoryInfoListHeader>(*Stream, 0, 1); in getMemoryInfoList() 71 const minidump::MemoryInfoListHeader &H = ExpectedHeader.get()[0]; in getMemoryInfoList() 93 auto ExpectedHeader = getDataSliceAs<minidump::Header>(Data, 0, 1); in getListStream() 97 const minidump [all...] |
/llvm-project/lldb/test/API/functionalities/postmortem/minidump-new/ |
H A D | TestMiniDumpNew.py | 2 Test basics of Minidump debugging. 74 """Test that lldb can read the process information from the Minidump.""" 112 """Test that lldb can read the thread information from the Minidump.""" 125 """Test that we can see a trivial stack in a breakpad-generated Minidump.""" 146 """Test that if we load a snapshot minidump file (meaning the process 160 """Test that if we load a snapshot minidump file (meaning the process 195 """Test ARM64 registers from a breakpad created minidump.""" 254 minidump. 309 """Test Linux ARM registers from a breakpad created minidump. 316 """Test Apple ARM registers from a breakpad created minidump [all...] |
H A D | TestMiniDumpUUID.py | 2 Test basics of Minidump debugging. 20 # minidump appended to a Windows-style root path from the host. 68 saves Darwin minidump files. 151 Breakpad has been known to create minidump files using CvRecord in each 156 This test verifies that if we have a minidump with a 16 byte UUID, that 160 file, not the 16 byte shortened UUID from the minidump. 174 Breakpad has been known to create minidump files using CvRecord in each 179 This test verifies that if we have a minidump with a 16 byte UUID, that 182 from the minidump file and the path from the minidump file. 198 Breakpad creates minidump files using CvRecord in each module whose [all …]
|
/llvm-project/llvm/lib/BinaryFormat/ |
H A D | Minidump.cpp | 1 //===-- Minidump.cpp - Minidump constants and structures ---------*- C++-*-===// 9 #include "llvm/BinaryFormat/Minidump.h" 11 using namespace llvm::minidump;
|
/llvm-project/lldb/test/API/functionalities/diagnostic_reporting/ |
H A D | TestDiagnosticReporting.py | 24 self.yaml2obj("minidump.yaml", self.getBuildArtifact("minidump.core")) 28 self.process = self.target.LoadCore(self.getBuildArtifact("minidump.core")) 37 "unable to retrieve process ID from minidump file, setting process ID to 1",
|
/llvm-project/lldb/test/API/functionalities/postmortem/wow64_minidump/ |
H A D | TestWow64MiniDump.py | 20 """Test that lldb can read the process information from the minidump.""" 29 """Test that lldb can read the thread information from the minidump.""" 34 # minidump doesn't have an exception record--perhaps the crash handler 51 # minidump doesn't have an exception record--perhaps the crash handler
|
/llvm-project/lldb/test/API/functionalities/postmortem/minidump/ |
H A D | TestMiniDump.py | 15 """Test that lldb can read the process information from the minidump.""" 25 """Test that lldb can read the thread information from the minidump.""" 39 """Test that lldb can read the list of modules from the minidump.""" 78 """Test that the uuid computation algorithms in minidump and breakpad 120 @skipUnlessWindows # Minidump saving works only on windows 157 @skipUnlessWindows # Minidump saving works only on windows
|
/llvm-project/llvm/lib/ObjectYAML/ |
H A D | MinidumpEmitter.cpp | 1 //===- yaml2minidump.cpp - Convert a YAML file to a minidump file ---------===// 16 using namespace llvm::minidump; 21 /// minidump binary. Space for objects can be allocated via various allocate*** 22 /// methods, while the final minidump file is written by calling the writeTo 140 size_t BaseRVA = File.tell() + sizeof(minidump::Memory64ListHeader); in layout() 141 BaseRVA += S.Entries.size() * sizeof(minidump::MemoryDescriptor_64); in layout() 208 File.allocateNewObject<minidump::MemoryInfoListHeader>( in layout() 209 sizeof(minidump::MemoryInfoListHeader), sizeof(minidump::MemoryInfo), in layout()
|
/llvm-project/lldb/test/API/functionalities/process_save_core_minidump/ |
H A D | TestProcessSaveCoreMinidump.py | 132 base_command = "process save-core --plugin-name=minidump " 169 options.SetPluginName("minidump") 187 options.SetPluginName("minidump") 201 # Minidump can now save full core files, but they will be huge and 206 options.SetPluginName("minidump") 258 options.SetPluginName("minidump") 325 # minidump defaults to stacks only, so we want to see if the 330 options.SetPluginName("minidump") 368 # minidump defaults to stacks only, so we want to see if the 373 options.SetPluginName("minidump") [all...] |
/llvm-project/lldb/test/Shell/Minidump/ |
H A D | breakpad-symbols.test | 2 # for minidump files. 4 # The minidump input for this test taken from packages/Python/lldbsuite/test/functionalities/postmo…
|
/llvm-project/lldb/test/API/tools/lldb-dap/save-core/ |
H A D | TestDAP_save_core.py | 2 Test saving core minidump from lldb-dap 17 Tests saving core minidump from lldb-dap. 48 base_command = "`process save-core --plugin-name=minidump "
|