Expand description
Decodes symbols records. Reads the “Global Symbols” stream and per-module symbol streams.
§References
Modules§
- builder
- Supports building new symbol streams
Structs§
- Annotation
S_ANNOTATION- Annotation
Fixed - Annotation
Iter Strings - Iterator state for
Annotation::iter_strings. - Block
- Block Start: This symbol specifies the start of an inner block of lexically scoped symbols.
The lexical scope is terminated by a matching
S_ENDsymbol. - Block
Fixed - Block
Header - This header is shared by many records that can start a symbol scope.
- Build
Info S_BUILDINFO- Build info for a module- Call
Site Info S_CALLSITEINFO- Compile3
S_COMPILE3- Compile3
Fixed S_COMPILE3- Constant
- Parsed form of
S_CONSTANT - Data
- Record data for
S_LDATA32andS_GDATA32. These describe global storage. - Data
Fixed - DefRange
Frame Pointer RelFull Scope S_DEFRANGE_FRAMEPOINTER_REL_FULL_SCOPE- DefRange
Register S_DEFRANGE_REGISTER- DefRange
Register Fixed S_DEFRANGE_REGISTER- A live range of en-registed variable- DefRange
Register Rel S_DEFRANGE_REGISTER_REL- DefRange
Register RelFixed S_DEFRANGE_REGISTER_REL- DefRange
SubField Register S_DEFRANGE_SUBFIELD_REGISTER- DefRange
SubField Register Fixed - DefRange
SymFrame Pointer Rel S_DEFRANGE_FRAMEPOINTER_REL: A live range of frame variable- DefRange
SymFrame Pointer RelFixed S_DEFRANGE_FRAMEPOINTER_REL: A live range of frame variable- Frame
Cookie S_FRAMECOOKIE: Symbol for describing security cookie’s position and type- Frame
Proc S_FRAMEPROC: This symbol is used for indicating a variety of extra information regarding a procedure and its stack frame. If any of the flags are non-zero, this record should be added to the symbols for that procedure.- Function
List - Data for
S_CALLERS,S_CALLEES,S_INLINEES. - Heap
Alloc Site S_HEAPALLOCSITE- HotPatch
Func - Hot-patched function
- Inline
Site S_INLINESITE- Inline
Site2 S_INLINESITE2- Inline
Site2 Fixed S_INLINESITE- Inline
Site Fixed S_INLINESITE- LVar
Addr Gap - Represents the holes in overall address range, all address is pre-bbt. it is for compress and reduce the amount of relocations need.
- LVar
Addr Range - Represents an address range, used for optimized code debug info
- Label
S_LABEL32- Label
Fixed S_LABEL32- Local
- Local Symbol: This symbol defines a local variable.
- Local
Fixed - ManProc
Sym S_GMANPROC,S_LMANPROC,S_GMANPROCIA64,S_LMANPROCIAC64- ManProc
SymFixed - Managed
Constant - Parsed form of
S_CONSTANT - Managed
Proc S_GMANPROC,S_LMANPROC- Managed Procedure Start- Managed
Proc Fixed S_GMANPROC,S_LMANPROC- Managed Procedure Start- Object
Name S_OBJNAME- Offset
Segment - Stores an
offsetandsegmentpair, in that order. This structure is directly embedded in on-disk structures. - Proc
- Used for
S_LPROC32andS_GPROC32. - Proc
Fixed - Used for the header of procedure symbols. This is used for
S_LPROC32,S_GPROC32,S_LPROC32_ID, etc. - Proc
Flags - Flags describing a procedure symbol.
- Pub
- PUBSYM32
- PubFixed
- Range
Attr Le - Attributes for a register range
- RefSym2
- Several symbols use this structure:
S_PROCREF,S_LPROCREF,S_DATAREF. These symbols are present in the Global Symbol Stream, not in module symbol streams. - RefSym2
Fixed - RegRel
S_REGREGL32: This symbol specifies symbols that are allocated relative to a register. This should be used on all platforms besides x86 and on x86 when the register is not a form of EBP.- RegRel
Fixed - Sym
- Points to one symbol record in memory and gives its kind.
- SymHeader
- Describes the start of every symbol record.
- SymIter
- Parses
Symrecords from a symbol stream. - SymIter
Mut - Parses
SymMutrecords from a symbol stream. - SymKind
- Identifies symbol records.
- SymMut
- Points to one symbol record in memory and gives its kind. Allows mutation of the contents of the symbol record.
- Thread
Storage Data - Record data for
S_LTHREAD32andS_GTHREAD32. These describes thread-local storage. - Thread
Storage Fixed - Thunk
- Thunk
Fixed - Trampoline
S_TRAMPOLINE- Trampoline
Fixed S_TRAMPOLINE- Udt
- Record data for
S_UDTsymbols - Using
Namespace S_UNAMESPACE- Using Namespace
Enums§
- SymData
- Parsed data from a symbol record
Constants§
- TRAMPOLINE_
KIND_ BRANCH_ ISLAND - Branch island thunks
- TRAMPOLINE_
KIND_ INCREMENTAL - Incremental thunks
Type Aliases§
- Token
IdLe - MSIL / CIL token value