LLVM  6.0.0svn
Classes | Namespaces | Functions
CodeViewYAMLDebugSections.cpp File Reference
#include "llvm/ObjectYAML/CodeViewYAMLDebugSections.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/BinaryFormat/COFF.h"
#include "llvm/DebugInfo/CodeView/CodeView.h"
#include "llvm/DebugInfo/CodeView/CodeViewError.h"
#include "llvm/DebugInfo/CodeView/DebugChecksumsSubsection.h"
#include "llvm/DebugInfo/CodeView/DebugCrossExSubsection.h"
#include "llvm/DebugInfo/CodeView/DebugCrossImpSubsection.h"
#include "llvm/DebugInfo/CodeView/DebugFrameDataSubsection.h"
#include "llvm/DebugInfo/CodeView/DebugInlineeLinesSubsection.h"
#include "llvm/DebugInfo/CodeView/DebugLinesSubsection.h"
#include "llvm/DebugInfo/CodeView/DebugStringTableSubsection.h"
#include "llvm/DebugInfo/CodeView/DebugSubsection.h"
#include "llvm/DebugInfo/CodeView/DebugSubsectionVisitor.h"
#include "llvm/DebugInfo/CodeView/DebugSymbolRVASubsection.h"
#include "llvm/DebugInfo/CodeView/DebugSymbolsSubsection.h"
#include "llvm/DebugInfo/CodeView/Line.h"
#include "llvm/DebugInfo/CodeView/StringsAndChecksums.h"
#include "llvm/DebugInfo/CodeView/TypeIndex.h"
#include "llvm/ObjectYAML/CodeViewYAMLSymbols.h"
#include "llvm/Support/Allocator.h"
#include "llvm/Support/BinaryStreamReader.h"
#include "llvm/Support/Endian.h"
#include "llvm/Support/Error.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/YAMLTraits.h"
#include "llvm/Support/raw_ostream.h"
#include <algorithm>
#include <cassert>
#include <cstdint>
#include <memory>
#include <string>
#include <tuple>
#include <vector>
Include dependency graph for CodeViewYAMLDebugSections.cpp:

Go to the source code of this file.

Classes

struct  llvm::CodeViewYAML::detail::YAMLSubsectionBase
 

Namespaces

 llvm
 Compute iterated dominance frontiers using a linear time algorithm.
 
 llvm::CodeViewYAML
 
 llvm::CodeViewYAML::detail
 

Functions

static Expected< SourceFileChecksumEntryconvertOneChecksum (const DebugStringTableSubsectionRef &Strings, const FileChecksumEntry &CS)
 
static Expected< StringRefgetFileName (const DebugStringTableSubsectionRef &Strings, const DebugChecksumsSubsectionRef &Checksums, uint32_t FileID)
 

Function Documentation

◆ convertOneChecksum()

static Expected<SourceFileChecksumEntry> convertOneChecksum ( const DebugStringTableSubsectionRef Strings,
const FileChecksumEntry CS 
)
static

◆ getFileName()

static Expected<StringRef> getFileName ( const DebugStringTableSubsectionRef Strings,
const DebugChecksumsSubsectionRef Checksums,
uint32_t  FileID 
)
static

Definition at line 556 of file CodeViewYAMLDebugSections.cpp.

References assert(), llvm::VarStreamArray< ValueType, Extractor >::at(), llvm::codeview::DebugCrossModuleExportsSubsectionRef::begin(), llvm::codeview::C, llvm::codeview::LineFragmentHeader::CodeSize, llvm::CodeViewYAML::YAMLFrameData::CodeSize, llvm::CodeViewYAML::SourceLineBlock::Columns, convertOneChecksum(), llvm::codeview::corrupt_record, llvm::codeview::EC, llvm::codeview::DebugCrossModuleExportsSubsectionRef::end(), llvm::VarStreamArray< ValueType, Extractor >::end(), llvm::CodeViewYAML::SourceColumnEntry::EndColumn, llvm::CodeViewYAML::SourceLineEntry::EndDelta, llvm::CodeViewYAML::InlineeSite::ExtraFiles, F(), R600_InstFlag::FC, llvm::CodeViewYAML::SourceLineBlock::FileName, llvm::CodeViewYAML::InlineeSite::FileName, llvm::codeview::LineFragmentHeader::Flags, llvm::CodeViewYAML::YAMLFrameData::Flags, llvm::CodeViewYAML::YAMLFrameData::FrameFunc, llvm::CodeViewYAML::SymbolRecord::fromCodeViewSymbol(), llvm::codeview::DebugChecksumsSubsectionRef::getArray(), llvm::codeview::DebugStringTableSubsectionRef::getBuffer(), llvm::codeview::LineInfo::getLineDelta(), llvm::codeview::LineInfo::getStartLine(), llvm::codeview::DebugStringTableSubsectionRef::getString(), llvm::codeview::DebugInlineeLinesSubsectionRef::hasExtraFiles(), llvm::codeview::DebugLinesSubsectionRef::header(), llvm::CodeViewYAML::YAMLCrossModuleImport::ImportIds, llvm::CodeViewYAML::InlineeSite::Inlinee, llvm::codeview::LineInfo::isStatement(), llvm::CodeViewYAML::SourceLineEntry::IsStatement, llvm::joinErrors(), llvm::CodeViewYAML::SourceLineBlock::Lines, llvm::codeview::Lines, llvm::CodeViewYAML::SourceLineEntry::LineStart, llvm::CodeViewYAML::YAMLFrameData::LocalSize, llvm::CodeViewYAML::YAMLFrameData::MaxStackSize, llvm::CodeViewYAML::YAMLCrossModuleImport::ModuleName, llvm::codeview::no_records, llvm::CodeViewYAML::SourceLineEntry::Offset, llvm::CodeViewYAML::YAMLFrameData::ParamsSize, llvm::CodeViewYAML::YAMLFrameData::PrologSize, llvm::codeview::LineFragmentHeader::RelocOffset, llvm::codeview::LineFragmentHeader::RelocSegment, llvm::CodeViewYAML::YAMLFrameData::RvaStart, llvm::CodeViewYAML::YAMLFrameData::SavedRegsSize, llvm::SCE, llvm::ARMBuildAttrs::Section, llvm::CodeViewYAML::InlineeSite::SourceLineNum, llvm::CodeViewYAML::SourceColumnEntry::StartColumn, and llvm::codeview::Symbols.

Referenced by llvm::DWARFContext::defaultErrorHandler(), llvm::DiagnosticInfoSampleProfile::print(), and llvm::DiagnosticInfoPGOProfile::print().