19 using namespace llvm::msf;
20 using namespace llvm::pdb;
21 using namespace llvm::support;
23 ModInfo::ModInfo() =
default;
25 ModInfo::ModInfo(
const ModInfo &Info) =
default;
27 ModInfo::~ModInfo() =
default;
42 bool ModInfo::hasECInfo()
const {
43 return (Layout->Flags & ModInfoFlags::HasECFlagMask) != 0;
46 uint16_t ModInfo::getTypeServerIndex()
const {
47 return (Layout->Flags & ModInfoFlags::TypeServerIndexMask) >>
48 ModInfoFlags::TypeServerIndexShift;
51 uint16_t ModInfo::getModuleStreamIndex()
const {
return Layout->ModDiStream; }
53 uint32_t ModInfo::getSymbolDebugInfoByteSize()
const {
54 return Layout->SymBytes;
57 uint32_t ModInfo::getLineInfoByteSize()
const {
return Layout->LineBytes; }
59 uint32_t ModInfo::getC13LineInfoByteSize()
const {
return Layout->C13Bytes; }
61 uint32_t ModInfo::getNumberOfFiles()
const {
return Layout->NumFiles; }
63 uint32_t ModInfo::getSourceFileNameIndex()
const {
64 return Layout->SrcFileNameNI;
67 uint32_t ModInfo::getPdbFilePathNameIndex()
const {
68 return Layout->PdbFilePathNI;
71 StringRef ModInfo::getModuleName()
const {
return ModuleName; }
73 StringRef ModInfo::getObjFileName()
const {
return ObjFileName; }
76 uint32_t M = ModuleName.str().size() + 1;
77 uint32_t O = ObjFileName.str().size() + 1;
uint64_t alignTo(uint64_t Value, uint64_t Align, uint64_t Skew=0)
Returns the next integer (mod 2**64) that is greater than or equal to Value and is a multiple of Alig...
Error readZeroString(StringRef &Dest)
static ErrorSuccess success()
Create a success value.
static void initialize(TargetLibraryInfoImpl &TLI, const Triple &T, ArrayRef< StringRef > StandardNames)
initialize - Initialize the set of available library functions based on the specified target triple...
Lightweight error class with error context and mandatory checking.
StringRef - Represent a constant reference to a string, i.e.
Error readObject(const T *&Dest)