|
LLVM 24.0.0git
|
Namespaces | |
| namespace | detail |
Typedefs | |
| using | CVType = CVRecord<TypeLeafKind> |
| using | CVSymbol = CVRecord<SymbolKind> |
| using | CVSymbolArray = VarStreamArray<CVSymbol> |
| using | CVTypeArray = VarStreamArray<CVType> |
| using | CVTypeRange = iterator_range<CVTypeArray::Iterator> |
| using | DebugSubsectionArray = VarStreamArray<DebugSubsectionRecord> |
| using | ulittle32_t |
| using | little32_t |
| using | ulittle16_t |
| using | ulittle32_t |
| using | little32_t |
| using | ulittle16_t |
| using | ulittle32_t |
Enumerations | |
| enum class | TypeRecordKind : uint16_t { MEMBER_RECORD_ALIAS } |
| Distinguishes individual records in .debug$T or .debug$P section or PDB type stream. More... | |
| enum | TypeLeafKind : uint16_t { MEMBER_RECORD_ALIAS , MEMBER_RECORD_ALIAS } |
| Duplicate copy of the above enum, but using the official CV names. More... | |
| enum class | SymbolRecordKind : uint16_t |
| Distinguishes individual records in the Symbols subsection of a .debug$S section. More... | |
| enum | SymbolKind : uint16_t |
| Duplicate copy of the above enum, but using the official CV names. More... | |
| enum class | CPUType : uint16_t { Intel8080 = 0x0 , Intel8086 = 0x1 , Intel80286 = 0x2 , Intel80386 = 0x3 , Intel80486 = 0x4 , Pentium = 0x5 , PentiumPro = 0x6 , Pentium3 = 0x7 , MIPS = 0x10 , MIPS16 = 0x11 , MIPS32 = 0x12 , MIPS64 = 0x13 , MIPSI = 0x14 , MIPSII = 0x15 , MIPSIII = 0x16 , MIPSIV = 0x17 , MIPSV = 0x18 , M68000 = 0x20 , M68010 = 0x21 , M68020 = 0x22 , M68030 = 0x23 , M68040 = 0x24 , Alpha = 0x30 , Alpha21164 = 0x31 , Alpha21164A = 0x32 , Alpha21264 = 0x33 , Alpha21364 = 0x34 , PPC601 = 0x40 , PPC603 = 0x41 , PPC604 = 0x42 , PPC620 = 0x43 , PPCFP = 0x44 , PPCBE = 0x45 , SH3 = 0x50 , SH3E = 0x51 , SH3DSP = 0x52 , SH4 = 0x53 , SHMedia = 0x54 , ARM3 = 0x60 , ARM4 = 0x61 , ARM4T = 0x62 , ARM5 = 0x63 , ARM5T = 0x64 , ARM6 = 0x65 , ARM_XMAC = 0x66 , ARM_WMMX = 0x67 , ARM7 = 0x68 , Omni = 0x70 , Ia64 = 0x80 , Ia64_2 = 0x81 , CEE = 0x90 , AM33 = 0xa0 , M32R = 0xb0 , TriCore = 0xc0 , X64 = 0xd0 , EBC = 0xe0 , Thumb = 0xf0 , ARMNT = 0xf4 , ARM64 = 0xf6 , HybridX86ARM64 = 0xf7 , ARM64EC = 0xf8 , ARM64X = 0xf9 , Unknown = 0xff , D3D11_Shader = 0x100 } |
| These values correspond to the CV_CPU_TYPE_e enumeration, and are documented here: https://msdn.microsoft.com/en-us/library/b2fc64ek.aspx. More... | |
| enum | SourceLanguage : uint8_t |
| These values correspond to the CV_CFL_LANG enumeration in the Microsoft Debug Interface Access SDK, and are documented here: https://learn.microsoft.com/en-us/visualstudio/debugger/debug-interface-access/cv-cfl-lang. More... | |
| enum class | CallingConvention : uint8_t { NearC = 0x00 , FarC = 0x01 , NearPascal = 0x02 , FarPascal = 0x03 , NearFast = 0x04 , FarFast = 0x05 , NearStdCall = 0x07 , FarStdCall = 0x08 , NearSysCall = 0x09 , FarSysCall = 0x0a , ThisCall = 0x0b , MipsCall = 0x0c , Generic = 0x0d , AlphaCall = 0x0e , PpcCall = 0x0f , SHCall = 0x10 , ArmCall = 0x11 , AM33Call = 0x12 , TriCall = 0x13 , SH5Call = 0x14 , M32RCall = 0x15 , ClrCall = 0x16 , Inline , NearVector = 0x18 , Swift = 0x19 } |
| These values correspond to the CV_call_e enumeration, and are documented at the following locations: https://msdn.microsoft.com/en-us/library/b2fc64ek.aspx https://msdn.microsoft.com/en-us/library/windows/desktop/ms680207(v=vs.85).aspx. More... | |
| enum class | ClassOptions : uint16_t { None = 0x0000 , Packed = 0x0001 , HasConstructorOrDestructor = 0x0002 , HasOverloadedOperator = 0x0004 , Nested = 0x0008 , ContainsNestedClass = 0x0010 , HasOverloadedAssignmentOperator = 0x0020 , HasConversionOperator = 0x0040 , ForwardReference = 0x0080 , Scoped = 0x0100 , HasUniqueName = 0x0200 , Sealed = 0x0400 , Intrinsic = 0x2000 } |
| enum class | FrameProcedureOptions : uint32_t { None = 0x00000000 , HasAlloca = 0x00000001 , HasSetJmp = 0x00000002 , HasLongJmp = 0x00000004 , HasInlineAssembly = 0x00000008 , HasExceptionHandling = 0x00000010 , MarkedInline = 0x00000020 , HasStructuredExceptionHandling = 0x00000040 , Naked = 0x00000080 , SecurityChecks = 0x00000100 , AsynchronousExceptionHandling = 0x00000200 , NoStackOrderingForSecurityChecks = 0x00000400 , Inlined = 0x00000800 , StrictSecurityChecks = 0x00001000 , SafeBuffers = 0x00002000 , EncodedLocalBasePointerMask = 0x0000C000 , EncodedParamBasePointerMask = 0x00030000 , EncodedPointersMask , ProfileGuidedOptimization = 0x00040000 , ValidProfileCounts = 0x00080000 , OptimizedForSpeed = 0x00100000 , GuardCfg = 0x00200000 , GuardCfw = 0x00400000 } |
| enum class | FunctionOptions : uint8_t { None = 0x00 , CxxReturnUdt = 0x01 , Constructor = 0x02 , ConstructorWithVirtualBases = 0x04 } |
| enum class | HfaKind : uint8_t { None = 0x00 , Float = 0x01 , Double = 0x02 , Other = 0x03 } |
| enum class | MemberAccess : uint8_t { None = 0 , Private = 1 , Protected = 2 , Public = 3 } |
| Source-level access specifier. (CV_access_e) More... | |
| enum class | MethodKind : uint8_t { Vanilla = 0x00 , Virtual = 0x01 , Static = 0x02 , Friend = 0x03 , IntroducingVirtual = 0x04 , PureVirtual = 0x05 , PureIntroducingVirtual = 0x06 } |
| Part of member attribute flags. (CV_methodprop_e) More... | |
| enum class | MethodOptions : uint16_t { None = 0x0000 , AccessMask = 0x0003 , MethodKindMask = 0x001c , Pseudo = 0x0020 , NoInherit = 0x0040 , NoConstruct = 0x0080 , CompilerGenerated = 0x0100 , Sealed = 0x0200 } |
| Equivalent to CV_fldattr_t bitfield. More... | |
| enum class | LabelType : uint16_t { Near = 0x0 , Far = 0x4 } |
| Equivalent to CV_LABEL_TYPE_e. More... | |
| enum class | ModifierOptions : uint16_t { None = 0x0000 , Const = 0x0001 , Volatile = 0x0002 , Unaligned = 0x0004 } |
| Equivalent to CV_modifier_t. More... | |
| enum | : uint32_t { SubsectionIgnoreFlag = 0x80000000 } |
| enum class | DebugSubsectionKind : uint32_t { None = 0 , Symbols = 0xf1 , Lines = 0xf2 , StringTable = 0xf3 , FileChecksums = 0xf4 , FrameData = 0xf5 , InlineeLines = 0xf6 , CrossScopeImports = 0xf7 , CrossScopeExports = 0xf8 , ILLines = 0xf9 , FuncMDTokenMap = 0xfa , TypeMDTokenMap = 0xfb , MergedAssemblyInput = 0xfc , CoffSymbolRVA = 0xfd , XfgHashType = 0xff , XfgHashVirtual = 0x100 } |
| enum class | PointerKind : uint8_t { Near16 = 0x00 , Far16 = 0x01 , Huge16 = 0x02 , BasedOnSegment = 0x03 , BasedOnValue = 0x04 , BasedOnSegmentValue = 0x05 , BasedOnAddress = 0x06 , BasedOnSegmentAddress = 0x07 , BasedOnType = 0x08 , BasedOnSelf = 0x09 , Near32 = 0x0a , Far32 = 0x0b , Near64 = 0x0c } |
| Equivalent to CV_ptrtype_e. More... | |
| enum class | PointerMode : uint8_t { Pointer = 0x00 , LValueReference = 0x01 , PointerToDataMember = 0x02 , PointerToMemberFunction = 0x03 , RValueReference = 0x04 } |
| Equivalent to CV_ptrmode_e. More... | |
| enum class | PointerOptions : uint32_t { None = 0x00000000 , Flat32 = 0x00000100 , Volatile = 0x00000200 , Const = 0x00000400 , Unaligned = 0x00000800 , Restrict = 0x00001000 , WinRTSmartPointer = 0x00080000 , LValueRefThisPointer = 0x00100000 , RValueRefThisPointer = 0x00200000 } |
| Equivalent to misc lfPointerAttr bitfields. More... | |
| enum class | PointerToMemberRepresentation : uint16_t { Unknown = 0x00 , SingleInheritanceData = 0x01 , MultipleInheritanceData = 0x02 , VirtualInheritanceData = 0x03 , GeneralData = 0x04 , SingleInheritanceFunction = 0x05 , MultipleInheritanceFunction = 0x06 , VirtualInheritanceFunction = 0x07 , GeneralFunction = 0x08 } |
| Equivalent to CV_pmtype_e. More... | |
| enum class | VFTableSlotKind : uint8_t { Near16 = 0x00 , Far16 = 0x01 , This = 0x02 , Outer = 0x03 , Meta = 0x04 , Near = 0x05 , Far = 0x06 } |
| enum class | WindowsRTClassKind : uint8_t { None = 0x00 , RefClass = 0x01 , ValueClass = 0x02 , Interface = 0x03 } |
| enum class | LocalSymFlags : uint16_t { None = 0 , IsParameter = 1 << 0 , IsAddressTaken = 1 << 1 , IsCompilerGenerated = 1 << 2 , IsAggregate = 1 << 3 , IsAggregated = 1 << 4 , IsAliased = 1 << 5 , IsAlias = 1 << 6 , IsReturnValue = 1 << 7 , IsOptimizedOut = 1 << 8 , IsEnregisteredGlobal = 1 << 9 , IsEnregisteredStatic = 1 << 10 } |
| Corresponds to CV_LVARFLAGS bitfield. More... | |
| enum class | PublicSymFlags : uint32_t { None = 0 , Code = 1 << 0 , Function = 1 << 1 , Managed = 1 << 2 , MSIL = 1 << 3 } |
| Corresponds to the CV_PUBSYMFLAGS bitfield. More... | |
| enum class | ProcSymFlags : uint8_t { None = 0 , HasFP = 1 << 0 , HasIRET = 1 << 1 , HasFRET = 1 << 2 , IsNoReturn = 1 << 3 , IsUnreachable = 1 << 4 , HasCustomCallingConv = 1 << 5 , IsNoInline = 1 << 6 , HasOptimizedDebugInfo = 1 << 7 } |
| Corresponds to the CV_PROCFLAGS bitfield. More... | |
| enum class | CompileSym2Flags : uint32_t { None = 0 , SourceLanguageMask = 0xFF , EC = 1 << 8 , NoDbgInfo = 1 << 9 , LTCG = 1 << 10 , NoDataAlign = 1 << 11 , ManagedPresent = 1 << 12 , SecurityChecks = 1 << 13 , HotPatch = 1 << 14 , CVTCIL = 1 << 15 , MSILModule = 1 << 16 } |
| Corresponds to COMPILESYM2::Flags bitfield. More... | |
| enum class | CompileSym3Flags : uint32_t { None = 0 , SourceLanguageMask = 0xFF , EC = 1 << 8 , NoDbgInfo = 1 << 9 , LTCG = 1 << 10 , NoDataAlign = 1 << 11 , ManagedPresent = 1 << 12 , SecurityChecks = 1 << 13 , HotPatch = 1 << 14 , CVTCIL = 1 << 15 , MSILModule = 1 << 16 , Sdl = 1 << 17 , PGO = 1 << 18 , Exp = 1 << 19 } |
| Corresponds to COMPILESYM3::Flags bitfield. More... | |
| enum class | ExportFlags : uint16_t { None = 0 , IsConstant = 1 << 0 , IsData = 1 << 1 , IsPrivate = 1 << 2 , HasNoName = 1 << 3 , HasExplicitOrdinal = 1 << 4 , IsForwarder = 1 << 5 } |
| enum class | BinaryAnnotationsOpCode : uint32_t { Invalid , CodeOffset , ChangeCodeOffsetBase , ChangeCodeOffset , ChangeCodeLength , ChangeFile , ChangeLineOffset , ChangeLineEndDelta , ChangeRangeKind , ChangeColumnStart , ChangeColumnEndDelta , ChangeCodeOffsetAndLineOffset , ChangeCodeLengthAndCodeOffset , ChangeColumnEnd } |
| enum class | FrameCookieKind : uint8_t { Copy , XorStackPointer , XorFramePointer , XorR13 } |
| enum class | RegisterId : uint16_t |
| enum class | EncodedFramePtrReg : uint8_t { None = 0 , StackPtr = 1 , FramePtr = 2 , BasePtr = 3 } |
| Two-bit value indicating which register is the designated frame pointer register. More... | |
| enum class | ThunkOrdinal : uint8_t { Standard , ThisAdjustor , Vcall , Pcode , UnknownLoad , TrampIncremental , BranchIsland } |
| These values correspond to the THUNK_ORDINAL enumeration. More... | |
| enum class | TrampolineType : uint16_t { TrampIncremental , BranchIsland } |
| enum class | FileChecksumKind : uint8_t { None , MD5 , SHA1 , SHA256 } |
| enum | LineFlags : uint16_t { LF_None = 0 , LF_HaveColumns = 1 } |
| enum class | CodeViewContainer { ObjectFile , Pdb } |
| enum class | JumpTableEntrySize : uint16_t { Int8 = 0 , UInt8 = 1 , Int16 = 2 , UInt16 = 3 , Int32 = 4 , UInt32 = 5 , Pointer = 6 , UInt8ShiftLeft = 7 , UInt16ShiftLeft = 8 , Int8ShiftLeft = 9 , Int16ShiftLeft = 10 } |
| enum class | AssociationKind : uint16_t { None , Coroutine } |
| Type of associated symbol in S_ASSOCIATION. More... | |
| enum class | cv_error_code { unspecified = 1 , insufficient_buffer , operation_unsupported , corrupt_record , no_records , unknown_member_record } |
| enum class | ContinuationRecordKind { FieldList , MethodOverloadList } |
| enum | VisitorDataSource { VDS_BytesPresent , VDS_BytesExternal } |
| enum class | InlineeLinesSignature : uint32_t { Normal , ExtraFiles } |
| enum | : unsigned { MaxRecordLength = 0xFF00 } |
| Limit on the size of all codeview symbol and type records, including the RecordPrefix. More... | |
| enum | : uint16_t { MaxDefRange = 0xf000 } |
| enum class | GlobalTypeHashAlg : uint16_t { SHA1 = 0 , SHA1_8 , BLAKE3 } |
| enum class | SimpleTypeKind : uint32_t { None = 0x0000 , Void = 0x0003 , NotTranslated = 0x0007 , HResult = 0x0008 , SignedCharacter = 0x0010 , UnsignedCharacter = 0x0020 , NarrowCharacter = 0x0070 , WideCharacter = 0x0071 , Character16 = 0x007a , Character32 = 0x007b , Character8 = 0x007c , SByte = 0x0068 , Byte = 0x0069 , Int16Short = 0x0011 , UInt16Short = 0x0021 , Int16 = 0x0072 , UInt16 = 0x0073 , Int32Long = 0x0012 , UInt32Long = 0x0022 , Int32 = 0x0074 , UInt32 = 0x0075 , Int64Quad = 0x0013 , UInt64Quad = 0x0023 , Int64 = 0x0076 , UInt64 = 0x0077 , Int128Oct = 0x0014 , UInt128Oct = 0x0024 , Int128 = 0x0078 , UInt128 = 0x0079 , Float16 = 0x0046 , Float32 = 0x0040 , Float32PartialPrecision = 0x0045 , Float48 = 0x0044 , Float64 = 0x0041 , Float80 = 0x0042 , Float128 = 0x0043 , Complex16 = 0x0056 , Complex32 = 0x0050 , Complex32PartialPrecision = 0x0055 , Complex48 = 0x0054 , Complex64 = 0x0051 , Complex80 = 0x0052 , Complex128 = 0x0053 , Boolean8 = 0x0030 , Boolean16 = 0x0031 , Boolean32 = 0x0032 , Boolean64 = 0x0033 , Boolean128 = 0x0034 } |
| enum class | SimpleTypeMode : uint32_t { Direct = 0x00000000 , NearPointer = 0x00000100 , FarPointer = 0x00000200 , HugePointer = 0x00000300 , NearPointer32 = 0x00000400 , FarPointer32 = 0x00000500 , NearPointer64 = 0x00000600 , NearPointer128 = 0x00000700 } |
| enum class | TiRefKind { TypeRef , IndexRef } |
| using llvm::codeview::CVSymbol = CVRecord<SymbolKind> |
Definition at line 65 of file CVRecord.h.
Definition at line 126 of file CVRecord.h.
| using llvm::codeview::CVType = CVRecord<TypeLeafKind> |
Definition at line 64 of file CVRecord.h.
Definition at line 127 of file CVRecord.h.
Definition at line 128 of file CVRecord.h.
Definition at line 94 of file DebugSubsectionRecord.h.
| anonymous enum : uint32_t |
| Enumerator | |
|---|---|
| SubsectionIgnoreFlag | |
Definition at line 294 of file CodeView.h.
| anonymous enum : uint16_t |
| Enumerator | |
|---|---|
| MaxDefRange | |
Definition at line 466 of file SymbolRecord.h.
| anonymous enum : unsigned |
Limit on the size of all codeview symbol and type records, including the RecordPrefix.
MSVC does not emit any records larger than this.
| Enumerator | |
|---|---|
| MaxRecordLength | |
Definition at line 31 of file RecordSerialization.h.
|
strong |
Type of associated symbol in S_ASSOCIATION.
From CV_AssociationKind_e (cvconst.h).
| Enumerator | |
|---|---|
| None | |
| Coroutine | Associated symbol is the primary coroutine function. |
Definition at line 628 of file CodeView.h.
|
strong |
Definition at line 477 of file CodeView.h.
|
strong |
These values correspond to the CV_call_e enumeration, and are documented at the following locations: https://msdn.microsoft.com/en-us/library/b2fc64ek.aspx https://msdn.microsoft.com/en-us/library/windows/desktop/ms680207(v=vs.85).aspx.
Definition at line 156 of file CodeView.h.
|
strong |
Definition at line 185 of file CodeView.h.
|
strong |
| Enumerator | |
|---|---|
| ObjectFile | |
| Pdb | |
Definition at line 594 of file CodeView.h.
|
strong |
Corresponds to COMPILESYM2::Flags bitfield.
| Enumerator | |
|---|---|
| None | |
| SourceLanguageMask | |
| EC | |
| NoDbgInfo | |
| LTCG | |
| NoDataAlign | |
| ManagedPresent | |
| SecurityChecks | |
| HotPatch | |
| CVTCIL | |
| MSILModule | |
Definition at line 431 of file CodeView.h.
|
strong |
Corresponds to COMPILESYM3::Flags bitfield.
| Enumerator | |
|---|---|
| None | |
| SourceLanguageMask | |
| EC | |
| NoDbgInfo | |
| LTCG | |
| NoDataAlign | |
| ManagedPresent | |
| SecurityChecks | |
| HotPatch | |
| CVTCIL | |
| MSILModule | |
| Sdl | |
| PGO | |
| Exp | |
Definition at line 447 of file CodeView.h.
|
strong |
| Enumerator | |
|---|---|
| FieldList | |
| MethodOverloadList | |
Definition at line 25 of file ContinuationRecordBuilder.h.
|
strong |
These values correspond to the CV_CPU_TYPE_e enumeration, and are documented here: https://msdn.microsoft.com/en-us/library/b2fc64ek.aspx.
Definition at line 76 of file CodeView.h.
|
strong |
| Enumerator | |
|---|---|
| unspecified | |
| insufficient_buffer | |
| operation_unsupported | |
| corrupt_record | |
| no_records | |
| unknown_member_record | |
Definition at line 17 of file CodeViewError.h.
|
strong |
Definition at line 296 of file CodeView.h.
|
strong |
Two-bit value indicating which register is the designated frame pointer register.
Appears in the S_FRAMEPROC record flags.
| Enumerator | |
|---|---|
| None | |
| StackPtr | |
| FramePtr | |
| BasePtr | |
Definition at line 525 of file CodeView.h.
|
strong |
| Enumerator | |
|---|---|
| None | |
| IsConstant | |
| IsData | |
| IsPrivate | |
| HasNoName | |
| HasExplicitOrdinal | |
| IsForwarder | |
Definition at line 465 of file CodeView.h.
|
strong |
| Enumerator | |
|---|---|
| None | |
| MD5 | |
| SHA1 | |
| SHA256 | |
Definition at line 551 of file CodeView.h.
|
strong |
| Enumerator | |
|---|---|
| Copy | |
| XorStackPointer | |
| XorFramePointer | |
| XorR13 | |
Definition at line 495 of file CodeView.h.
|
strong |
Definition at line 202 of file CodeView.h.
|
strong |
| Enumerator | |
|---|---|
| None | |
| CxxReturnUdt | |
| Constructor | |
| ConstructorWithVirtualBases | |
Definition at line 230 of file CodeView.h.
|
strong |
| Enumerator | |
|---|---|
| SHA1 | |
| SHA1_8 | |
| BLAKE3 | |
Definition at line 63 of file TypeHashing.h.
|
strong |
| Enumerator | |
|---|---|
| None | |
| Float | |
| Double | |
| Other | |
Definition at line 238 of file CodeView.h.
|
strong |
| Enumerator | |
|---|---|
| Normal | |
| ExtraFiles | |
Definition at line 31 of file DebugInlineeLinesSubsection.h.
|
strong |
| Enumerator | |
|---|---|
| Int8 | |
| UInt8 | |
| Int16 | |
| UInt16 | |
| Int32 | |
| UInt32 | |
| Pointer | |
| UInt8ShiftLeft | |
| UInt16ShiftLeft | |
| Int8ShiftLeft | |
| Int16ShiftLeft | |
Definition at line 611 of file CodeView.h.
|
strong |
| Enumerator | |
|---|---|
| LF_None | |
| LF_HaveColumns | |
Definition at line 553 of file CodeView.h.
|
strong |
Corresponds to CV_LVARFLAGS bitfield.
| Enumerator | |
|---|---|
| None | |
| IsParameter | |
| IsAddressTaken | |
| IsCompilerGenerated | |
| IsAggregate | |
| IsAggregated | |
| IsAliased | |
| IsAlias | |
| IsReturnValue | |
| IsOptimizedOut | |
| IsEnregisteredGlobal | |
| IsEnregisteredStatic | |
Definition at line 390 of file CodeView.h.
|
strong |
Source-level access specifier. (CV_access_e)
| Enumerator | |
|---|---|
| None | |
| Private | |
| Protected | |
| Public | |
Definition at line 246 of file CodeView.h.
|
strong |
Part of member attribute flags. (CV_methodprop_e)
| Enumerator | |
|---|---|
| Vanilla | |
| Virtual | |
| Static | |
| Friend | |
| IntroducingVirtual | |
| PureVirtual | |
| PureIntroducingVirtual | |
Definition at line 254 of file CodeView.h.
|
strong |
Equivalent to CV_fldattr_t bitfield.
| Enumerator | |
|---|---|
| None | |
| AccessMask | |
| MethodKindMask | |
| Pseudo | |
| NoInherit | |
| NoConstruct | |
| CompilerGenerated | |
| Sealed | |
Definition at line 265 of file CodeView.h.
|
strong |
Equivalent to CV_modifier_t.
TODO: Add flag for _Atomic modifier
| Enumerator | |
|---|---|
| None | |
| Const | |
| Volatile | |
| Unaligned | |
Definition at line 285 of file CodeView.h.
|
strong |
Equivalent to CV_ptrtype_e.
| Enumerator | |
|---|---|
| Near16 | |
| Far16 | |
| Huge16 | |
| BasedOnSegment | |
| BasedOnValue | |
| BasedOnSegmentValue | |
| BasedOnAddress | |
| BasedOnSegmentAddress | |
| BasedOnType | |
| BasedOnSelf | |
| Near32 | |
| Far32 | |
| Near64 | |
Definition at line 320 of file CodeView.h.
|
strong |
Equivalent to CV_ptrmode_e.
| Enumerator | |
|---|---|
| Pointer | |
| LValueReference | |
| PointerToDataMember | |
| PointerToMemberFunction | |
| RValueReference | |
Definition at line 337 of file CodeView.h.
|
strong |
Equivalent to misc lfPointerAttr bitfields.
| Enumerator | |
|---|---|
| None | |
| Flat32 | |
| Volatile | |
| Const | |
| Unaligned | |
| Restrict | |
| WinRTSmartPointer | |
| LValueRefThisPointer | |
| RValueRefThisPointer | |
Definition at line 346 of file CodeView.h.
|
strong |
Equivalent to CV_pmtype_e.
| Enumerator | |
|---|---|
| Unknown | |
| SingleInheritanceData | |
| MultipleInheritanceData | |
| VirtualInheritanceData | |
| GeneralData | |
| SingleInheritanceFunction | |
| MultipleInheritanceFunction | |
| VirtualInheritanceFunction | |
| GeneralFunction | |
Definition at line 360 of file CodeView.h.
|
strong |
Corresponds to the CV_PROCFLAGS bitfield.
| Enumerator | |
|---|---|
| None | |
| HasFP | |
| HasIRET | |
| HasFRET | |
| IsNoReturn | |
| IsUnreachable | |
| HasCustomCallingConv | |
| IsNoInline | |
| HasOptimizedDebugInfo | |
Definition at line 417 of file CodeView.h.
|
strong |
Corresponds to the CV_PUBSYMFLAGS bitfield.
| Enumerator | |
|---|---|
| None | |
| Code | |
| Function | |
| Managed | |
| MSIL | |
Definition at line 407 of file CodeView.h.
|
strong |
Definition at line 503 of file CodeView.h.
|
strong |
Definition at line 27 of file TypeIndex.h.
|
strong |
| Enumerator | |
|---|---|
| Direct | |
| NearPointer | |
| FarPointer | |
| HugePointer | |
| NearPointer32 | |
| FarPointer32 | |
| NearPointer64 | |
| NearPointer128 | |
Definition at line 83 of file TypeIndex.h.
These values correspond to the CV_CFL_LANG enumeration in the Microsoft Debug Interface Access SDK, and are documented here: https://learn.microsoft.com/en-us/visualstudio/debugger/debug-interface-access/cv-cfl-lang.
Definition at line 146 of file CodeView.h.
Duplicate copy of the above enum, but using the official CV names.
Useful for reference purposes and when dealing with unknown record types.
Definition at line 48 of file CodeView.h.
|
strong |
Distinguishes individual records in the Symbols subsection of a .debug$S section.
Equivalent to SYM_ENUM_e in cvinfo.h.
Definition at line 41 of file CodeView.h.
|
strong |
These values correspond to the THUNK_ORDINAL enumeration.
| Enumerator | |
|---|---|
| Standard | |
| ThisAdjustor | |
| Vcall | |
| Pcode | |
| UnknownLoad | |
| TrampIncremental | |
| BranchIsland | |
Definition at line 538 of file CodeView.h.
|
strong |
| Enumerator | |
|---|---|
| TypeRef | |
| IndexRef | |
Definition at line 20 of file TypeIndexDiscovery.h.
|
strong |
| Enumerator | |
|---|---|
| TrampIncremental | |
| BranchIsland | |
Definition at line 548 of file CodeView.h.
Duplicate copy of the above enum, but using the official CV names.
Useful for reference purposes and when dealing with unknown record types.
| Enumerator | |
|---|---|
| MEMBER_RECORD_ALIAS | |
| MEMBER_RECORD_ALIAS | |
Definition at line 34 of file CodeView.h.
|
strong |
Distinguishes individual records in .debug$T or .debug$P section or PDB type stream.
The documentation and headers talk about this as the "leaf" type.
| Enumerator | |
|---|---|
| MEMBER_RECORD_ALIAS | |
Definition at line 27 of file CodeView.h.
|
strong |
| Enumerator | |
|---|---|
| Near16 | |
| Far16 | |
| This | |
| Outer | |
| Meta | |
| Near | |
| Far | |
Definition at line 372 of file CodeView.h.
| Enumerator | |
|---|---|
| VDS_BytesPresent | |
| VDS_BytesExternal | |
Definition at line 25 of file CVTypeVisitor.h.
|
strong |
| Enumerator | |
|---|---|
| None | |
| RefClass | |
| ValueClass | |
| Interface | |
Definition at line 382 of file CodeView.h.
|
inline |
Definition at line 596 of file CodeView.h.
References ObjectFile.
Referenced by llvm::pdb::DbiModuleDescriptorBuilder::addSymbolsInBulk(), llvm::pdb::DbiModuleDescriptorBuilder::addUnmergedSymbols(), llvm::codeview::DebugSubsectionRecordBuilder::commit(), llvm::pdb::DbiModuleDescriptorBuilder::commitSymbolStream(), and llvm::codeview::SymbolRecordMapping::visitSymbolEnd().
| std::string llvm::codeview::computeTypeName | ( | TypeCollection & | Types, |
| TypeIndex | Index ) |
Definition at line 254 of file RecordName.cpp.
References llvm::consumeError(), EC, llvm::Record::getType(), and visitTypeRecord().
Referenced by llvm::pdb::TpiStream::findRecordsByName(), llvm::codeview::LazyRandomTypeCollection::getTypeName(), and llvm::codeview::TypeTableCollection::getTypeName().
|
inline |
Definition at line 46 of file RecordSerialization.h.
References llvm::Error::success().
| Error llvm::codeview::consume | ( | BinaryStreamReader & | Reader, |
| APSInt & | Num ) |
Decodes a numeric "leaf" value.
These are integer literals encountered in the type stream. If the value is positive and less than LF_NUMERIC (1 << 15), it is emitted directly in Data. Otherwise, it has a tag like LF_CHAR that indicates the bitwidth and sign of the numeric data.
Definition at line 36 of file RecordSerialization.cpp.
References corrupt_record, EC, llvm::make_error(), N, llvm::BinaryStreamReader::readInteger(), and llvm::Error::success().
| Error llvm::codeview::consume | ( | BinaryStreamReader & | Reader, |
| const serialize_array_impl< T, U > & | Item ) |
Definition at line 192 of file RecordSerialization.h.
References llvm::codeview::serialize_array_impl< T, U >::deserialize().
| Error llvm::codeview::consume | ( | BinaryStreamReader & | Reader, |
| const serialize_arrayref_tail_impl< T > & | Item ) |
Definition at line 209 of file RecordSerialization.h.
References llvm::codeview::serialize_arrayref_tail_impl< T >::deserialize().
| Error llvm::codeview::consume | ( | BinaryStreamReader & | Reader, |
| const serialize_conditional_impl< T, U > & | Item ) |
Definition at line 186 of file RecordSerialization.h.
References llvm::codeview::serialize_conditional_impl< T, U >::deserialize().
|
inline |
Definition at line 197 of file RecordSerialization.h.
References llvm::codeview::serialize_null_term_string_array_impl::deserialize().
| Error llvm::codeview::consume | ( | BinaryStreamReader & | Reader, |
| const serialize_numeric_impl< T > & | Item ) |
Definition at line 215 of file RecordSerialization.h.
References llvm::codeview::serialize_numeric_impl< T >::deserialize().
| Error llvm::codeview::consume | ( | BinaryStreamReader & | Reader, |
| const serialize_vector_tail_impl< T > & | Item ) |
Definition at line 203 of file RecordSerialization.h.
References llvm::codeview::serialize_vector_tail_impl< T >::deserialize().
| Error llvm::codeview::consume | ( | BinaryStreamReader & | Reader, |
| int32_t & | Item ) |
Definition at line 139 of file RecordSerialization.cpp.
References llvm::BinaryStreamReader::readInteger().
| Error llvm::codeview::consume | ( | BinaryStreamReader & | Reader, |
| StringRef & | Item ) |
Decodes a null terminated string.
Definition at line 143 of file RecordSerialization.cpp.
References corrupt_record, llvm::BinaryStreamReader::empty(), llvm::make_error(), and llvm::BinaryStreamReader::readCString().
| Error llvm::codeview::consume | ( | BinaryStreamReader & | Reader, |
| T && | X, | ||
| U && | Y, | ||
| Args &&... | Rest ) |
Definition at line 221 of file RecordSerialization.h.
References llvm::consume, EC, T, X, and Y.
| Error llvm::codeview::consume | ( | BinaryStreamReader & | Reader, |
| T *& | Item ) |
Decodes an arbitrary object whose layout matches that of the underlying byte sequence, and returns a pointer to the object.
Definition at line 69 of file RecordSerialization.h.
References llvm::BinaryStreamReader::readObject(), and T.
| Error llvm::codeview::consume | ( | BinaryStreamReader & | Reader, |
| uint32_t & | Item ) |
Decodes signed and unsigned fixed-length integers.
Definition at line 126 of file RecordSerialization.cpp.
References llvm::BinaryStreamReader::readInteger().
Definition at line 104 of file RecordSerialization.cpp.
References llvm::BinaryStreamReader::bytesRemaining(), llvm::consume, llvm::Data, EC, and llvm::little.
Definition at line 130 of file RecordSerialization.cpp.
References llvm::BinaryStreamReader::bytesRemaining(), llvm::consume, llvm::Data, EC, and llvm::little.
| Error llvm::codeview::consume_numeric | ( | BinaryStreamReader & | Reader, |
| uint64_t & | Value ) |
Decodes a numeric leaf value that is known to be a particular type.
Decode a numeric leaf value that is known to be a uint64_t.
Definition at line 114 of file RecordSerialization.cpp.
References llvm::consume, corrupt_record, EC, llvm::make_error(), N, and llvm::Error::success().
Referenced by llvm::codeview::serialize_numeric_impl< T >::deserialize().
| const std::error_category & llvm::codeview::CVErrorCategory | ( | ) |
Definition at line 44 of file CodeViewError.cpp.
Referenced by make_error_code().
| RegisterId llvm::codeview::decodeFramePtrReg | ( | EncodedFramePtrReg | EncodedReg, |
| CPUType | CPU ) |
Definition at line 530 of file SymbolRecordMapping.cpp.
References assert(), BasePtr, FramePtr, Intel80286, Intel80386, Intel80486, Intel8080, Intel8086, llvm_unreachable, None, Pentium, Pentium3, PentiumPro, StackPtr, and X64.
Referenced by llvm::codeview::FrameProcSym::getLocalFramePtrReg(), and llvm::codeview::FrameProcSym::getParamFramePtrReg().
| void llvm::codeview::discoverTypeIndices | ( | ArrayRef< uint8_t > | RecordData, |
| SmallVectorImpl< TiReference > & | Refs ) |
Definition at line 497 of file TypeIndexDiscovery.cpp.
References llvm::ArrayRef< T >::data(), discoverTypeIndices(), llvm::ArrayRef< T >::drop_front(), and P.
Referenced by discoverTypeIndices(), discoverTypeIndices(), discoverTypeIndices(), discoverTypeIndices(), getModifiedType(), and llvm::codeview::GloballyHashedType::hashType().
| void llvm::codeview::discoverTypeIndices | ( | ArrayRef< uint8_t > | RecordData, |
| SmallVectorImpl< TypeIndex > & | Indices ) |
Definition at line 490 of file TypeIndexDiscovery.cpp.
References discoverTypeIndices(), and resolveTypeIndexReferences().
| void llvm::codeview::discoverTypeIndices | ( | const CVType & | Type, |
| SmallVectorImpl< TiReference > & | Refs ) |
Definition at line 461 of file TypeIndexDiscovery.cpp.
References discoverTypeIndices().
| void llvm::codeview::discoverTypeIndices | ( | const CVType & | Type, |
| SmallVectorImpl< TypeIndex > & | Indices ) |
Definition at line 485 of file TypeIndexDiscovery.cpp.
References discoverTypeIndices().
| bool llvm::codeview::discoverTypeIndicesInSymbol | ( | ArrayRef< uint8_t > | RecordData, |
| SmallVectorImpl< TiReference > & | Refs ) |
Definition at line 511 of file TypeIndexDiscovery.cpp.
References llvm::ArrayRef< T >::data(), llvm::ArrayRef< T >::drop_front(), and P.
| bool llvm::codeview::discoverTypeIndicesInSymbol | ( | ArrayRef< uint8_t > | RecordData, |
| SmallVectorImpl< TypeIndex > & | Indices ) |
Definition at line 520 of file TypeIndexDiscovery.cpp.
References discoverTypeIndicesInSymbol(), and resolveTypeIndexReferences().
| bool llvm::codeview::discoverTypeIndicesInSymbol | ( | const CVSymbol & | Symbol, |
| SmallVectorImpl< TiReference > & | Refs ) |
Discover type indices in symbol records.
Returns false if this is an unknown record.
Definition at line 505 of file TypeIndexDiscovery.cpp.
References llvm::codeview::CVRecord< Kind >::content(), and llvm::codeview::CVRecord< Kind >::kind().
Referenced by discoverTypeIndicesInSymbol().
| EncodedFramePtrReg llvm::codeview::encodeFramePtrReg | ( | RegisterId | Reg, |
| CPUType | CPU ) |
Definition at line 564 of file SymbolRecordMapping.cpp.
References BasePtr, FramePtr, Intel80286, Intel80386, Intel80486, Intel8080, Intel8086, None, Pentium, Pentium3, PentiumPro, StackPtr, and X64.
Referenced by llvm::codeview::FrameProcSym::setLocalFramePtrReg(), and llvm::codeview::FrameProcSym::setParamFramePtrReg().
|
inline |
Definition at line 46 of file Formatters.h.
|
inline |
Definition at line 42 of file Formatters.h.
| Error llvm::codeview::forEachCodeViewRecord | ( | ArrayRef< uint8_t > | StreamBuffer, |
| Func | F ) |
Definition at line 68 of file CVRecord.h.
References corrupt_record, llvm::Data, llvm::ArrayRef< T >::data(), llvm::ArrayRef< T >::drop_front(), EC, llvm::ArrayRef< T >::empty(), F, llvm::make_error(), llvm::ArrayRef< T >::size(), llvm::Error::success(), and llvm::ArrayRef< T >::take_front().
| EnumStrings< uint16_t > llvm::codeview::getAssociationKindNames | ( | ) |
Definition at line 637 of file EnumTables.cpp.
References BUILD_ENUM_STRINGS, Coroutine, CV_ENUM_CLASS_ENT, and None.
Reinterpret a byte array as an array of characters.
Does not interpret as a C string, as StringRef has several helpers (split) that make that easy.
Definition at line 27 of file RecordSerialization.cpp.
References llvm::ArrayRef< T >::data(), and llvm::ArrayRef< T >::size().
Referenced by getBytesAsCString(), llvm::codeview::TypeDumpVisitor::visitMemberEnd(), and llvm::codeview::TypeDumpVisitor::visitTypeEnd().
Definition at line 32 of file RecordSerialization.cpp.
References getBytesAsCharacters(), and llvm::StringRef::split().
| EnumStrings< uint8_t > llvm::codeview::getCallingConventions | ( | ) |
Definition at line 565 of file EnumTables.cpp.
References AlphaCall, AM33Call, ArmCall, BUILD_ENUM_STRINGS, ClrCall, CV_ENUM_CLASS_ENT, FarC, FarFast, FarPascal, FarStdCall, FarSysCall, Generic, Inline, M32RCall, MipsCall, NearC, NearFast, NearPascal, NearStdCall, NearSysCall, NearVector, PpcCall, SH5Call, SHCall, Swift, ThisCall, and TriCall.
| EnumStrings< uint16_t > llvm::codeview::getClassOptionNames | ( | ) |
Definition at line 442 of file EnumTables.cpp.
References BUILD_ENUM_STRINGS, ContainsNestedClass, CV_ENUM_CLASS_ENT, ForwardReference, HasConstructorOrDestructor, HasConversionOperator, HasOverloadedAssignmentOperator, HasOverloadedOperator, HasUniqueName, Intrinsic, Nested, Packed, Scoped, and Sealed.
| EnumStrings< uint32_t > llvm::codeview::getCompileSym2FlagNames | ( | ) |
Definition at line 175 of file EnumTables.cpp.
References BUILD_ENUM_STRINGS, CV_ENUM_CLASS_ENT, CVTCIL, EC, HotPatch, LTCG, ManagedPresent, MSILModule, NoDataAlign, NoDbgInfo, and SecurityChecks.
| EnumStrings< uint32_t > llvm::codeview::getCompileSym3FlagNames | ( | ) |
Definition at line 192 of file EnumTables.cpp.
References BUILD_ENUM_STRINGS, CV_ENUM_CLASS_ENT, CVTCIL, EC, Exp, HotPatch, LTCG, ManagedPresent, MSILModule, NoDataAlign, NoDbgInfo, PGO, Sdl, and SecurityChecks.
Referenced by llvm::logicalview::LVSymbolVisitor::visitKnownRecord(), and llvm::logicalview::LVSymbolVisitor::visitKnownRecord().
| EnumStrings< unsigned > llvm::codeview::getCPUTypeNames | ( | ) |
Definition at line 224 of file EnumTables.cpp.
References Alpha, Alpha21164, Alpha21164A, Alpha21264, Alpha21364, AM33, ARM3, ARM4, ARM4T, ARM5, ARM5T, ARM6, ARM64, ARM64EC, ARM64X, ARM7, ARM_WMMX, ARM_XMAC, ARMNT, BUILD_ENUM_STRINGS, CEE, CV_ENUM_CLASS_ENT, D3D11_Shader, EBC, HybridX86ARM64, Ia64, Ia64_2, Intel80286, Intel80386, Intel80486, Intel8080, Intel8086, M32R, M68000, M68010, M68020, M68030, M68040, MIPS, MIPS16, MIPS32, MIPS64, MIPSI, MIPSII, MIPSIII, MIPSIV, MIPSV, Omni, Pentium, Pentium3, PentiumPro, PPC601, PPC603, PPC604, PPC620, PPCBE, PPCFP, SH3, SH3DSP, SH3E, SH4, SHMedia, Thumb, TriCore, Unknown, and X64.
Referenced by llvm::logicalview::LVSymbolVisitor::visitKnownRecord(), and llvm::logicalview::LVSymbolVisitor::visitKnownRecord().
| EnumStrings< uint8_t > llvm::codeview::getEncodedFramePtrRegNames | ( | ) |
Definition at line 376 of file EnumTables.cpp.
References BasePtr, BUILD_ENUM_STRINGS, CV_ENUM_CLASS_ENT, FramePtr, None, and StackPtr.
| EnumStrings< uint16_t > llvm::codeview::getExportSymFlagNames | ( | ) |
Definition at line 325 of file EnumTables.cpp.
References BUILD_ENUM_STRINGS, CV_ENUM_CLASS_ENT, HasExplicitOrdinal, HasNoName, IsConstant, IsData, IsForwarder, and IsPrivate.
| EnumStrings< uint32_t > llvm::codeview::getFileChecksumNames | ( | ) |
Definition at line 212 of file EnumTables.cpp.
References BUILD_ENUM_STRINGS, CV_ENUM_CLASS_ENT, MD5, None, SHA1, and SHA256.
| EnumStrings< uint8_t > llvm::codeview::getFrameCookieKindNames | ( | ) |
Definition at line 130 of file EnumTables.cpp.
References BUILD_ENUM_STRINGS, Copy, CV_ENUM_CLASS_ENT, XorFramePointer, XorR13, and XorStackPointer.
| EnumStrings< uint32_t > llvm::codeview::getFrameProcSymFlagNames | ( | ) |
Definition at line 295 of file EnumTables.cpp.
References AsynchronousExceptionHandling, BUILD_ENUM_STRINGS, CV_ENUM_CLASS_ENT, EncodedLocalBasePointerMask, EncodedParamBasePointerMask, GuardCfg, GuardCfw, HasAlloca, HasExceptionHandling, HasInlineAssembly, HasLongJmp, HasSetJmp, HasStructuredExceptionHandling, Inlined, MarkedInline, Naked, NoStackOrderingForSecurityChecks, OptimizedForSpeed, ProfileGuidedOptimization, SafeBuffers, SecurityChecks, StrictSecurityChecks, and ValidProfileCounts.
| EnumStrings< uint8_t > llvm::codeview::getFunctionOptionEnum | ( | ) |
Definition at line 598 of file EnumTables.cpp.
References BUILD_ENUM_STRINGS, Constructor, ConstructorWithVirtualBases, CV_ENUM_CLASS_ENT, and CxxReturnUdt.
| EnumStrings< COFF::SectionCharacteristics > llvm::codeview::getImageSectionCharacteristicNames | ( | ) |
Definition at line 398 of file EnumTables.cpp.
References BUILD_ENUM_STRINGS, and CV_ENUM_ENT.
| EnumStrings< uint16_t > llvm::codeview::getJumpTableEntrySizeNames | ( | ) |
Definition at line 618 of file EnumTables.cpp.
References BUILD_ENUM_STRINGS, CV_ENUM_CLASS_ENT, Int16, Int16ShiftLeft, Int32, Int8, Int8ShiftLeft, Pointer, UInt16, UInt16ShiftLeft, UInt32, UInt8, and UInt8ShiftLeft.
Referenced by llvm::logicalview::LVSymbolVisitor::visitKnownRecord().
| EnumStrings< uint16_t > llvm::codeview::getLabelTypeEnum | ( | ) |
Definition at line 609 of file EnumTables.cpp.
References BUILD_ENUM_STRINGS, CV_ENUM_CLASS_ENT, Far, and Near.
| EnumStrings< uint16_t > llvm::codeview::getLocalFlagNames | ( | ) |
Definition at line 112 of file EnumTables.cpp.
References BUILD_ENUM_STRINGS, CV_ENUM_CLASS_ENT, IsAddressTaken, IsAggregate, IsAggregated, IsAlias, IsAliased, IsCompilerGenerated, IsEnregisteredGlobal, IsEnregisteredStatic, IsOptimizedOut, IsParameter, and IsReturnValue.
Referenced by llvm::logicalview::LVSymbolVisitor::visitKnownRecord().
| EnumStrings< uint8_t > llvm::codeview::getMemberAccessNames | ( | ) |
Definition at line 462 of file EnumTables.cpp.
References BUILD_ENUM_STRINGS, CV_ENUM_CLASS_ENT, None, Private, Protected, and Public.
| EnumStrings< uint16_t > llvm::codeview::getMemberKindNames | ( | ) |
Definition at line 487 of file EnumTables.cpp.
References BUILD_ENUM_STRINGS, CV_ENUM_CLASS_ENT, Friend, IntroducingVirtual, PureIntroducingVirtual, PureVirtual, Static, Vanilla, and Virtual.
| EnumStrings< uint16_t > llvm::codeview::getMethodOptionNames | ( | ) |
Definition at line 474 of file EnumTables.cpp.
References BUILD_ENUM_STRINGS, CompilerGenerated, CV_ENUM_CLASS_ENT, NoConstruct, NoInherit, Pseudo, and Sealed.
Given a CVType which is assumed to be an LF_MODIFIER, return the TypeIndex of the type that the LF_MODIFIER modifies.
Definition at line 47 of file TypeRecordHelpers.cpp.
References assert(), discoverTypeIndices(), llvm::SmallVectorTemplateCommon< T, typename >::front(), and llvm::codeview::CVRecord< Kind >::kind().
Referenced by llvm::pdb::NativeEnumTypes::NativeEnumTypes(), and llvm::logicalview::LVLogicalVisitor::visitKnownRecord().
| EnumStrings< uint32_t > llvm::codeview::getModuleSubstreamKindNames | ( | ) |
Definition at line 339 of file EnumTables.cpp.
References BUILD_ENUM_STRINGS, CoffSymbolRVA, CrossScopeExports, CrossScopeImports, CV_ENUM_CLASS_ENT, FileChecksums, FuncMDTokenMap, ILLines, InlineeLines, Lines, MergedAssemblyInput, None, StringTable, Symbols, and TypeMDTokenMap.
| EnumStrings< uint8_t > llvm::codeview::getProcSymFlagNames | ( | ) |
Definition at line 96 of file EnumTables.cpp.
References BUILD_ENUM_STRINGS, CV_ENUM_CLASS_ENT, HasCustomCallingConv, HasFP, HasFRET, HasIRET, HasOptimizedDebugInfo, IsNoInline, IsNoReturn, and IsUnreachable.
Referenced by llvm::logicalview::LVSymbolVisitor::visitKnownRecord().
| EnumStrings< uint8_t > llvm::codeview::getPtrKindNames | ( | ) |
Definition at line 502 of file EnumTables.cpp.
References BasedOnAddress, BasedOnSegment, BasedOnSegmentAddress, BasedOnSegmentValue, BasedOnSelf, BasedOnType, BasedOnValue, BUILD_ENUM_STRINGS, CV_ENUM_CLASS_ENT, Far16, Far32, Huge16, Near16, Near32, and Near64.
| EnumStrings< uint16_t > llvm::codeview::getPtrMemberRepNames | ( | ) |
Definition at line 534 of file EnumTables.cpp.
References BUILD_ENUM_STRINGS, CV_ENUM_CLASS_ENT, GeneralData, GeneralFunction, MultipleInheritanceData, MultipleInheritanceFunction, SingleInheritanceData, SingleInheritanceFunction, Unknown, VirtualInheritanceData, and VirtualInheritanceFunction.
| EnumStrings< uint8_t > llvm::codeview::getPtrModeNames | ( | ) |
Definition at line 522 of file EnumTables.cpp.
References BUILD_ENUM_STRINGS, CV_ENUM_CLASS_ENT, LValueReference, Pointer, PointerToDataMember, PointerToMemberFunction, and RValueReference.
| EnumStrings< uint32_t > llvm::codeview::getPublicSymFlagNames | ( | ) |
Definition at line 84 of file EnumTables.cpp.
References BUILD_ENUM_STRINGS, Code, CV_ENUM_CLASS_ENT, Function, Managed, and MSIL.
| EnumStrings< uint16_t > llvm::codeview::getRegisterNames | ( | CPUType | Cpu | ) |
Definition at line 45 of file EnumTables.cpp.
References ARM64, ARMNT, and BUILD_ENUM_STRINGS.
Referenced by llvm::logicalview::LVSymbolVisitor::visitKnownRecord(), and llvm::logicalview::LVSymbolVisitor::visitKnownRecord().
Given a symbol P for which symbolOpensScope(P) == true, return the corresponding end offset.
Definition at line 23 of file SymbolRecordHelpers.cpp.
References assert(), llvm::Block, createRecord(), llvm::codeview::InlineSiteSym::End, llvm::codeview::ProcSym::End, llvm::codeview::CVRecord< Kind >::kind(), and symbolOpensScope().
Referenced by limitSymbolArrayToScope(), and llvm::codeview::CVSymbolVisitor::visitSymbolStreamFiltered().
Definition at line 54 of file SymbolRecordHelpers.cpp.
References assert(), llvm::Block, createRecord(), llvm::codeview::CVRecord< Kind >::kind(), llvm::codeview::InlineSiteSym::Parent, llvm::codeview::ProcSym::Parent, and symbolOpensScope().
Given an arbitrary codeview type index, determine its size.
Definition at line 54 of file TypeRecordHelpers.cpp.
References assert(), Boolean128, Boolean16, Boolean32, Boolean64, Boolean8, Byte, Character16, Character32, Character8, Complex128, Complex16, Complex32, Complex64, Complex80, Direct, FarPointer, FarPointer32, Float128, Float16, Float32, Float48, Float64, Float80, llvm::codeview::TypeIndex::getSimpleKind(), llvm::codeview::TypeIndex::getSimpleMode(), HResult, HugePointer, Int128, Int128Oct, Int16, Int16Short, Int32, Int32Long, Int64, Int64Quad, llvm::codeview::TypeIndex::isSimple(), NarrowCharacter, NearPointer, NearPointer128, NearPointer32, NearPointer64, None, SByte, SignedCharacter, UInt128, UInt128Oct, UInt16, UInt16Short, UInt32, UInt32Long, UInt64, UInt64Quad, UnsignedCharacter, Void, and WideCharacter.
Referenced by llvm::logicalview::LVLogicalVisitor::visitKnownRecord().
Given an arbitrary codeview type, return the type's size in the case of aggregate (LF_STRUCTURE, LF_CLASS, LF_INTERFACE, LF_UNION).
Definition at line 171 of file TypeRecordHelpers.cpp.
References assert(), getUdtSize(), and llvm::codeview::CVRecord< Kind >::kind().
Referenced by llvm::logicalview::LVLogicalVisitor::visitKnownRecord().
| EnumStrings< SourceLanguage > llvm::codeview::getSourceLanguageNames | ( | ) |
Definition at line 142 of file EnumTables.cpp.
References llvm::Basic, BUILD_ENUM_STRINGS, C(), CV_ENUM_ENT, D(), MSIL, llvm::Rust, and Swift.
Referenced by llvm::logicalview::LVSourceLanguage::getName(), llvm::logicalview::LVSymbolVisitor::visitKnownRecord(), and llvm::logicalview::LVSymbolVisitor::visitKnownRecord().
Definition at line 324 of file RecordName.cpp.
References llvm::cantFail(), Const, llvm::codeview::CVRecord< Kind >::content(), llvm::StringRef::drop_front(), getSymbolNameOffset(), llvm::codeview::CVRecord< Kind >::kind(), llvm::little, ObjectFile, llvm::Offset, llvm::toStringRef(), llvm::codeview::SymbolRecordMapping::visitSymbolBegin(), and llvm::codeview::SymbolRecordMapping::visitSymbolEnd().
Referenced by llvm::pdb::GlobalsStream::findRecordsByName().
| EnumStrings< SymbolKind > llvm::codeview::getSymbolTypeNames | ( | ) |
Definition at line 24 of file EnumTables.cpp.
References BUILD_ENUM_STRINGS.
Referenced by llvm::logicalview::LVSymbolVisitor::visitSymbolBegin(), and llvm::logicalview::LVSymbolVisitor::visitSymbolEnd().
| EnumStrings< uint8_t > llvm::codeview::getThunkOrdinalNames | ( | ) |
Definition at line 361 of file EnumTables.cpp.
References BranchIsland, BUILD_ENUM_STRINGS, CV_ENUM_CLASS_ENT, Pcode, Standard, ThisAdjustor, TrampIncremental, UnknownLoad, and Vcall.
| EnumStrings< uint16_t > llvm::codeview::getTrampolineNames | ( | ) |
Definition at line 388 of file EnumTables.cpp.
References BranchIsland, BUILD_ENUM_STRINGS, CV_ENUM_CLASS_ENT, and TrampIncremental.
| EnumStrings< TypeLeafKind > llvm::codeview::getTypeLeafNames | ( | ) |
Definition at line 35 of file EnumTables.cpp.
References BUILD_ENUM_STRINGS.
Referenced by llvm::logicalview::LVLogicalVisitor::printMemberBegin(), llvm::logicalview::LVLogicalVisitor::printTypeBegin(), llvm::codeview::TypeDumpVisitor::visitMemberBegin(), llvm::codeview::TypeRecordMapping::visitMemberBegin(), llvm::codeview::TypeDumpVisitor::visitTypeBegin(), llvm::codeview::TypeRecordMapping::visitTypeBegin(), and llvm::codeview::TypeDumpVisitor::visitUnknownType().
| EnumStrings< uint16_t > llvm::codeview::getTypeModifierNames | ( | ) |
Definition at line 554 of file EnumTables.cpp.
References BUILD_ENUM_STRINGS, Const, CV_ENUM_CLASS_ENT, Unaligned, and Volatile.
Given an arbitrary codeview type, determine if it is an LF_STRUCTURE, LF_CLASS, LF_INTERFACE, LF_UNION.
Definition at line 47 of file TypeRecordHelpers.h.
References llvm::codeview::CVRecord< Kind >::kind().
Referenced by llvm::logicalview::LVLogicalVisitor::visitKnownRecord().
|
inline |
Return true if this record should be in the IPI stream of a PDB.
In an object file, these record kinds will appear mixed into the .debug$T section.
Definition at line 30 of file TypeRecordHelpers.h.
Given an arbitrary codeview type, determine if it is an LF_STRUCTURE, LF_CLASS, LF_INTERFACE, LF_UNION, or LF_ENUM with the forward ref class option.
Definition at line 27 of file TypeRecordHelpers.cpp.
References ForwardReference, getUdtOptions(), llvm::codeview::CVRecord< Kind >::kind(), and None.
Referenced by llvm::pdb::TpiStream::findFullDeclForForwardRef(), llvm::pdb::SymbolCache::findSymbolByTypeIndex(), and llvm::pdb::NativeEnumTypes::NativeEnumTypes().
| CVSymbolArray llvm::codeview::limitSymbolArrayToScope | ( | const CVSymbolArray & | Symbols, |
| uint32_t | ScopeBegin ) |
Definition at line 85 of file SymbolRecordHelpers.cpp.
References assert(), getScopeEndOffset(), llvm::codeview::CVRecord< Kind >::kind(), llvm::codeview::CVRecord< Kind >::RecordData, llvm::ArrayRef< T >::size(), symbolOpensScope(), and Symbols.
Referenced by llvm::pdb::ModuleDebugStreamRef::getSymbolArrayForScope().
|
inline |
Definition at line 37 of file CodeViewError.h.
References CVErrorCategory(), and E().
| Error llvm::codeview::mergeIdRecords | ( | GlobalTypeTableBuilder & | Dest, |
| ArrayRef< TypeIndex > | Types, | ||
| SmallVectorImpl< TypeIndex > & | SourceToDest, | ||
| const CVTypeArray & | Ids, | ||
| ArrayRef< GloballyHashedType > | Hashes ) |
Definition at line 471 of file TypeStreamMerger.cpp.
| Error llvm::codeview::mergeIdRecords | ( | MergingTypeTableBuilder & | Dest, |
| ArrayRef< TypeIndex > | Types, | ||
| SmallVectorImpl< TypeIndex > & | SourceToDest, | ||
| const CVTypeArray & | Ids ) |
Merge one set of id records into another.
This method assumes that all records are id records, and there are no Type records present. However, since Id records can refer back to Type records, this method assumes that the referenced type records have also been merged into another type stream (for example using the above method), and accepts the mapping from source to dest for that stream so that it can re-write the type record mappings accordingly.
| Dest | The table to store the re-written id records into. |
| Types | The mapping to use for the type records that these id records refer to. |
| SourceToDest | A vector, indexed by the TypeIndex in the source id stream, that contains the index of the corresponding id record in the destination stream. |
| Ids | The collection of id records to merge in. |
Definition at line 437 of file TypeStreamMerger.cpp.
| Error llvm::codeview::mergeTypeAndIdRecords | ( | GlobalTypeTableBuilder & | DestIds, |
| GlobalTypeTableBuilder & | DestTypes, | ||
| SmallVectorImpl< TypeIndex > & | SourceToDest, | ||
| const CVTypeArray & | IdsAndTypes, | ||
| ArrayRef< GloballyHashedType > | Hashes, | ||
| std::optional< PCHMergerInfo > & | PCHInfo ) |
Definition at line 453 of file TypeStreamMerger.cpp.
| Error llvm::codeview::mergeTypeAndIdRecords | ( | MergingTypeTableBuilder & | DestIds, |
| MergingTypeTableBuilder & | DestTypes, | ||
| SmallVectorImpl< TypeIndex > & | SourceToDest, | ||
| const CVTypeArray & | IdsAndTypes, | ||
| std::optional< PCHMergerInfo > & | PCHInfo ) |
Merge a unified set of type and id records, splitting them into separate output streams.
| DestIds | The table to store the re-written id records into. |
| DestTypes | the table to store the re-written type records into. |
| SourceToDest | A vector, indexed by the TypeIndex in the source id stream, that contains the index of the corresponding id record in the destination stream. |
| IdsAndTypes | The collection of id records to merge in. |
Definition at line 445 of file TypeStreamMerger.cpp.
| Error llvm::codeview::mergeTypeRecords | ( | GlobalTypeTableBuilder & | Dest, |
| SmallVectorImpl< TypeIndex > & | SourceToDest, | ||
| const CVTypeArray & | Types, | ||
| ArrayRef< GloballyHashedType > | Hashes, | ||
| std::optional< PCHMergerInfo > & | PCHInfo ) |
Definition at line 462 of file TypeStreamMerger.cpp.
| Error llvm::codeview::mergeTypeRecords | ( | MergingTypeTableBuilder & | Dest, |
| SmallVectorImpl< TypeIndex > & | SourceToDest, | ||
| const CVTypeArray & | Types ) |
Merge one set of type records into another.
This method assumes that all records are type records, and there are no Id records present.
| Dest | The table to store the re-written type records into. |
| SourceToDest | A vector, indexed by the TypeIndex in the source type stream, that contains the index of the corresponding type record in the destination stream. |
| Types | The collection of types to merge in. |
Definition at line 430 of file TypeStreamMerger.cpp.
| raw_ostream & llvm::codeview::operator<< | ( | raw_ostream & | OS, |
| const GUID & | Guid ) |
Definition at line 57 of file Formatters.cpp.
References A(), and llvm::Guid.
| void llvm::codeview::printTypeIndex | ( | ScopedPrinter & | Printer, |
| StringRef | FieldName, | ||
| TypeIndex | TI, | ||
| TypeCollection & | Types ) |
Definition at line 93 of file TypeIndex.cpp.
References llvm::codeview::TypeIndex::getIndex(), llvm::codeview::TypeIndex::isNoneType(), llvm::codeview::TypeIndex::isSimple(), Printer, and llvm::codeview::TypeIndex::simpleTypeName().
Referenced by llvm::codeview::TypeDumpVisitor::printItemIndex(), llvm::codeview::TypeDumpVisitor::printTypeIndex(), llvm::logicalview::LVLogicalVisitor::printTypeIndex(), llvm::logicalview::LVSymbolVisitor::visitKnownRecord(), llvm::logicalview::LVSymbolVisitor::visitKnownRecord(), llvm::logicalview::LVSymbolVisitor::visitKnownRecord(), llvm::logicalview::LVSymbolVisitor::visitKnownRecord(), llvm::logicalview::LVSymbolVisitor::visitKnownRecord(), llvm::logicalview::LVSymbolVisitor::visitKnownRecord(), llvm::logicalview::LVSymbolVisitor::visitKnownRecord(), llvm::logicalview::LVSymbolVisitor::visitKnownRecord(), llvm::logicalview::LVSymbolVisitor::visitKnownRecord(), llvm::logicalview::LVSymbolVisitor::visitKnownRecord(), llvm::logicalview::LVSymbolVisitor::visitKnownRecord(), llvm::logicalview::LVTypeVisitor::visitKnownRecord(), llvm::logicalview::LVTypeVisitor::visitKnownRecord(), llvm::logicalview::LVTypeVisitor::visitKnownRecord(), llvm::logicalview::LVTypeVisitor::visitKnownRecord(), llvm::logicalview::LVTypeVisitor::visitKnownRecord(), llvm::logicalview::LVTypeVisitor::visitKnownRecord(), llvm::logicalview::LVTypeVisitor::visitKnownRecord(), and llvm::logicalview::LVTypeVisitor::visitKnownRecord().
|
inline |
Read a complete record from a stream at a random offset.
Definition at line 92 of file CVRecord.h.
References corrupt_record, EC, llvm::make_error(), llvm::Offset, llvm::BinaryStreamReader::readBytes(), llvm::BinaryStreamReader::readObject(), and llvm::BinaryStreamReader::setOffset().
Referenced by llvm::VarStreamArrayExtractor< codeview::CVRecord< Kind > >::operator()(), and readSymbolFromStream().
| Expected< CVSymbol > llvm::codeview::readSymbolFromStream | ( | BinaryStreamRef | Stream, |
| uint32_t | Offset ) |
Definition at line 151 of file RecordSerialization.cpp.
References llvm::Offset, and readCVRecordFromStream().
| serialize_array_impl< T, U > llvm::codeview::serialize_array | ( | ArrayRef< T > & | Item, |
| U | Func ) |
Definition at line 162 of file RecordSerialization.h.
| serialize_arrayref_tail_impl< T > llvm::codeview::serialize_array_tail | ( | ArrayRef< T > & | Item | ) |
Definition at line 177 of file RecordSerialization.h.
| serialize_vector_tail_impl< T > llvm::codeview::serialize_array_tail | ( | std::vector< T > & | Item | ) |
Definition at line 172 of file RecordSerialization.h.
| serialize_conditional_impl< T, U > llvm::codeview::serialize_conditional | ( | T & | Item, |
| U | Func ) |
Definition at line 87 of file RecordSerialization.h.
References T.
|
inline |
Definition at line 167 of file RecordSerialization.h.
| serialize_numeric_impl< T > llvm::codeview::serialize_numeric | ( | T & | Item | ) |
Definition at line 181 of file RecordSerialization.h.
References T.
|
inline |
Return true if this ssymbol ends a scope.
Definition at line 40 of file SymbolRecordHelpers.h.
Referenced by llvm::logicalview::LVSymbolVisitor::visitSymbolEnd(), and llvm::codeview::CVSymbolVisitor::visitSymbolStreamFiltered().
|
inline |
Return true if this symbol opens a scope.
This implies that the symbol has "parent" and "end" fields, which contain the offset of the S_END or S_INLINESITE_END record.
Definition at line 21 of file SymbolRecordHelpers.h.
Referenced by getScopeEndOffset(), getScopeParentOffset(), limitSymbolArrayToScope(), llvm::logicalview::LVSymbolVisitor::visitSymbolBegin(), and llvm::codeview::CVSymbolVisitor::visitSymbolStreamFiltered().
| Error llvm::codeview::visitDebugSubsection | ( | const DebugSubsectionRecord & | R, |
| DebugSubsectionVisitor & | V, | ||
| const StringsAndChecksumsRef & | State ) |
Definition at line 28 of file DebugSubsectionVisitor.cpp.
References CoffSymbolRVA, CrossScopeExports, CrossScopeImports, EC, FileChecksums, Fragment, FrameData, InlineeLines, Lines, StringTable, and Symbols.
Referenced by llvm::CodeViewYAML::YAMLDebugSubsection::fromCodeViewSubection(), and llvm::codeview::detail::visitDebugSubsections().
| Error llvm::codeview::visitDebugSubsections | ( | T && | FragmentRange, |
| DebugSubsectionVisitor & | V ) |
Definition at line 82 of file DebugSubsectionVisitor.h.
References T, and llvm::codeview::detail::visitDebugSubsections().
| Error llvm::codeview::visitDebugSubsections | ( | T && | FragmentRange, |
| DebugSubsectionVisitor & | V, | ||
| const DebugStringTableSubsectionRef & | Strings ) |
Definition at line 89 of file DebugSubsectionVisitor.h.
References T, and llvm::codeview::detail::visitDebugSubsections().
| Error llvm::codeview::visitDebugSubsections | ( | T && | FragmentRange, |
| DebugSubsectionVisitor & | V, | ||
| const DebugStringTableSubsectionRef & | Strings, | ||
| const DebugChecksumsSubsectionRef & | Checksums ) |
Definition at line 97 of file DebugSubsectionVisitor.h.
References T, and llvm::codeview::detail::visitDebugSubsections().
| Error llvm::codeview::visitMemberRecord | ( | CVMemberRecord | Record, |
| TypeVisitorCallbacks & | Callbacks, | ||
| VisitorDataSource | Source = VDS_BytesPresent ) |
Definition at line 255 of file CVTypeVisitor.cpp.
Referenced by visitMemberRecord().
| Error llvm::codeview::visitMemberRecord | ( | TypeLeafKind | Kind, |
| ArrayRef< uint8_t > | Record, | ||
| TypeVisitorCallbacks & | Callbacks ) |
Definition at line 262 of file CVTypeVisitor.cpp.
References VDS_BytesPresent, and visitMemberRecord().
| Error llvm::codeview::visitMemberRecordStream | ( | ArrayRef< uint8_t > | FieldList, |
| TypeVisitorCallbacks & | Callbacks ) |
Definition at line 271 of file CVTypeVisitor.cpp.
References FieldList, and VDS_BytesPresent.
| Error llvm::codeview::visitTypeRecord | ( | CVType & | Record, |
| TypeIndex | Index, | ||
| TypeVisitorCallbacks & | Callbacks, | ||
| VisitorDataSource | Source = VDS_BytesPresent ) |
Definition at line 219 of file CVTypeVisitor.cpp.
Referenced by computeTypeName().
| Error llvm::codeview::visitTypeRecord | ( | CVType & | Record, |
| TypeVisitorCallbacks & | Callbacks, | ||
| VisitorDataSource | Source = VDS_BytesPresent ) |
Definition at line 226 of file CVTypeVisitor.cpp.
| Error llvm::codeview::visitTypeStream | ( | const CVTypeArray & | Types, |
| TypeVisitorCallbacks & | Callbacks, | ||
| VisitorDataSource | Source = VDS_BytesPresent ) |
Definition at line 233 of file CVTypeVisitor.cpp.
| Error llvm::codeview::visitTypeStream | ( | CVTypeRange | Types, |
| TypeVisitorCallbacks & | Callbacks ) |
Definition at line 240 of file CVTypeVisitor.cpp.
References VDS_BytesPresent.
| Error llvm::codeview::visitTypeStream | ( | TypeCollection & | Types, |
| TypeVisitorCallbacks & | Callbacks ) |
Definition at line 246 of file CVTypeVisitor.cpp.
References VDS_BytesPresent.