LLVM 17.0.0git
llvm::pdb::ModuleInfoHeader Struct Reference

The header preceding each entry in the Module Info substream of the DBI stream. More...

#include "llvm/DebugInfo/PDB/Native/RawTypes.h"

Collaboration diagram for llvm::pdb::ModuleInfoHeader:
[legend]

## Public Attributes

support::ulittle32_t Mod
Currently opened module.

SectionContrib SC
First section contribution of this module.

support::ulittle16_t Flags
See ModInfoFlags definition.

support::ulittle16_t ModDiStream
Stream Number of module debug info.

support::ulittle32_t SymBytes
Size of local symbol debug info in above stream.

support::ulittle32_t C11Bytes
Size of C11 line number info in above stream.

support::ulittle32_t C13Bytes
Size of C13 line number info in above stream.

support::ulittle16_t NumFiles
Number of files contributing to this module.

char Padding1 [2]
Padding so the next field is 4-byte aligned.

support::ulittle32_t FileNameOffs
Array of [0..NumFiles) DBI name buffer offsets.

support::ulittle32_t SrcFileNameNI
Name Index for src file name.

support::ulittle32_t PdbFilePathNI
Name Index for path to compiler PDB.

## Detailed Description

The header preceding each entry in the Module Info substream of the DBI stream.

Corresponds to the type MODI in the reference implementation.

Definition at line 212 of file RawTypes.h.

## ◆ C11Bytes

 support::ulittle32_t llvm::pdb::ModuleInfoHeader::C11Bytes

Size of C11 line number info in above stream.

Definition at line 232 of file RawTypes.h.

## ◆ C13Bytes

 support::ulittle32_t llvm::pdb::ModuleInfoHeader::C13Bytes

Size of C13 line number info in above stream.

Definition at line 235 of file RawTypes.h.

## ◆ FileNameOffs

 support::ulittle32_t llvm::pdb::ModuleInfoHeader::FileNameOffs

Array of [0..NumFiles) DBI name buffer offsets.

In the reference implementation this field is a pointer. But since you can't portably serialize a pointer, on 64-bit platforms they copy all the values except this one into the 32-bit version of the struct and use that for serialization. Regardless, this field is unused, it is only there to store a pointer that can be accessed at runtime.

Definition at line 249 of file RawTypes.h.

Referenced by llvm::pdb::DbiModuleDescriptorBuilder::finalize().

## ◆ Flags

 support::ulittle16_t llvm::pdb::ModuleInfoHeader::Flags

See ModInfoFlags definition.

Definition at line 223 of file RawTypes.h.

## ◆ Mod

 support::ulittle32_t llvm::pdb::ModuleInfoHeader::Mod

Currently opened module.

This field is a pointer in the reference implementation, but that won't work on 64-bit systems, and anyway it doesn't make sense to read a pointer from a file. For now it is unused, so just ignore it.

Definition at line 217 of file RawTypes.h.

## ◆ ModDiStream

 support::ulittle16_t llvm::pdb::ModuleInfoHeader::ModDiStream

Stream Number of module debug info.

Definition at line 226 of file RawTypes.h.

## ◆ NumFiles

 support::ulittle16_t llvm::pdb::ModuleInfoHeader::NumFiles

Number of files contributing to this module.

Definition at line 238 of file RawTypes.h.

## ◆ Padding1

 char llvm::pdb::ModuleInfoHeader::Padding1[2]

Padding so the next field is 4-byte aligned.

Definition at line 241 of file RawTypes.h.

## ◆ PdbFilePathNI

 support::ulittle32_t llvm::pdb::ModuleInfoHeader::PdbFilePathNI

Name Index for path to compiler PDB.

Definition at line 255 of file RawTypes.h.

## ◆ SC

 SectionContrib llvm::pdb::ModuleInfoHeader::SC

First section contribution of this module.

Definition at line 220 of file RawTypes.h.

## ◆ SrcFileNameNI

 support::ulittle32_t llvm::pdb::ModuleInfoHeader::SrcFileNameNI

Name Index for src file name.

Definition at line 252 of file RawTypes.h.

## ◆ SymBytes

 support::ulittle32_t llvm::pdb::ModuleInfoHeader::SymBytes

Size of local symbol debug info in above stream.

Definition at line 229 of file RawTypes.h.

The documentation for this struct was generated from the following file: