Please use GitHub pull requests for new patches. Avoid migrating existing patches. Phabricator shutdown timeline
Changeset View
Changeset View
Standalone View
Standalone View
llvm/lib/DebugInfo/CodeView/SymbolRecordHelpers.cpp
Show All 10 Lines | |||||
#include "llvm/ADT/SmallVector.h" | #include "llvm/ADT/SmallVector.h" | ||||
#include "llvm/DebugInfo/CodeView/SymbolDeserializer.h" | #include "llvm/DebugInfo/CodeView/SymbolDeserializer.h" | ||||
using namespace llvm; | using namespace llvm; | ||||
using namespace llvm::codeview; | using namespace llvm::codeview; | ||||
template <typename RecordT> static RecordT createRecord(const CVSymbol &sym) { | template <typename RecordT> static RecordT createRecord(const CVSymbol &sym) { | ||||
RecordT record(static_cast<SymbolRecordKind>(sym.kind())); | RecordT record(static_cast<SymbolRecordKind>(sym.kind())); | ||||
cantFail(SymbolDeserializer::deserializeAs<RecordT>(sym, record)); | llvm_cantFail(SymbolDeserializer::deserializeAs<RecordT>(sym, record)); | ||||
return record; | return record; | ||||
} | } | ||||
uint32_t llvm::codeview::getScopeEndOffset(const CVSymbol &Sym) { | uint32_t llvm::codeview::getScopeEndOffset(const CVSymbol &Sym) { | ||||
assert(symbolOpensScope(Sym.kind())); | assert(symbolOpensScope(Sym.kind())); | ||||
switch (Sym.kind()) { | switch (Sym.kind()) { | ||||
case SymbolKind::S_GPROC32: | case SymbolKind::S_GPROC32: | ||||
case SymbolKind::S_LPROC32: | case SymbolKind::S_LPROC32: | ||||
▲ Show 20 Lines • Show All 66 Lines • Show Last 20 Lines |