|
LLVM 24.0.0git
|
#include "llvm/AsmParser/LLParser.h"
Public Types | |
| typedef LLLexer::LocTy | LocTy |
Public Member Functions | |
| LLParser (StringRef F, SourceMgr &SM, SMDiagnostic &Err, Module *M, ModuleSummaryIndex *Index, LLVMContext &Context, SlotMapping *Slots=nullptr, AsmParserContext *ParserContext=nullptr) | |
| LLVM_ABI bool | Run (bool UpgradeDebugInfo, DataLayoutCallbackTy DataLayoutCallback=[](StringRef, StringRef) { return std::nullopt;}) |
| Run: module ::= toplevelentity*. | |
| LLVM_ABI bool | parseStandaloneConstantValue (Constant *&C, const SlotMapping *Slots) |
| LLVM_ABI bool | parseTypeAtBeginning (Type *&Ty, unsigned &Read, const SlotMapping *Slots) |
| LLVM_ABI bool | parseDIExpressionBodyAtBeginning (MDNode *&Result, unsigned &Read, const SlotMapping *Slots) |
| LLVM_ABI bool | parseMetadataDefinitions (SlotMapping &Slots, ArrayRef< SMLoc > DefinitionEnds) |
| LLVMContext & | getContext () |
| template<> | |
| bool | parseMDField (LocTy Loc, StringRef Name, MDAPSIntField &Result) |
| template<> | |
| bool | parseMDField (LocTy Loc, StringRef Name, MDUnsignedField &Result) |
| template<> | |
| bool | parseMDField (LocTy Loc, StringRef Name, LineField &Result) |
| template<> | |
| bool | parseMDField (LocTy Loc, StringRef Name, ColumnField &Result) |
| template<> | |
| bool | parseMDField (LocTy Loc, StringRef Name, DwarfTagField &Result) |
| template<> | |
| bool | parseMDField (LocTy Loc, StringRef Name, DwarfMacinfoTypeField &Result) |
| template<> | |
| bool | parseMDField (LocTy Loc, StringRef Name, DwarfVirtualityField &Result) |
| template<> | |
| bool | parseMDField (LocTy Loc, StringRef Name, DwarfEnumKindField &Result) |
| template<> | |
| bool | parseMDField (LocTy Loc, StringRef Name, DwarfLangField &Result) |
| template<> | |
| bool | parseMDField (LocTy Loc, StringRef Name, DwarfSourceLangNameField &Result) |
| template<> | |
| bool | parseMDField (LocTy Loc, StringRef Name, DwarfLangDialectField &Result) |
| template<> | |
| bool | parseMDField (LocTy Loc, StringRef Name, DwarfCCField &Result) |
| template<> | |
| bool | parseMDField (LocTy Loc, StringRef Name, EmissionKindField &Result) |
| template<> | |
| bool | parseMDField (LocTy Loc, StringRef Name, FixedPointKindField &Result) |
| template<> | |
| bool | parseMDField (LocTy Loc, StringRef Name, NameTableKindField &Result) |
| template<> | |
| bool | parseMDField (LocTy Loc, StringRef Name, DwarfAttEncodingField &Result) |
| template<> | |
| bool | parseMDField (LocTy Loc, StringRef Name, DIFlagField &Result) |
| DIFlagField ::= uint32 ::= DIFlagVector ::= DIFlagVector '|' DIFlagFwdDecl '|' uint32 '|' DIFlagPublic. | |
| template<> | |
| bool | parseMDField (LocTy Loc, StringRef Name, DISPFlagField &Result) |
| DISPFlagField ::= uint32 ::= DISPFlagVector ::= DISPFlagVector '|' DISPFlag* '|' uint32. | |
| template<> | |
| bool | parseMDField (LocTy Loc, StringRef Name, MDSignedField &Result) |
| template<> | |
| bool | parseMDField (LocTy Loc, StringRef Name, MDBoolField &Result) |
| template<> | |
| bool | parseMDField (LocTy Loc, StringRef Name, MDField &Result) |
| template<> | |
| bool | parseMDField (LocTy Loc, StringRef Name, MDSignedOrMDField &Result) |
| template<> | |
| bool | parseMDField (LocTy Loc, StringRef Name, MDUnsignedOrMDField &Result) |
| template<> | |
| bool | parseMDField (LocTy Loc, StringRef Name, MDStringField &Result) |
| template<> | |
| bool | parseMDField (LocTy Loc, StringRef Name, MDFieldList &Result) |
| template<> | |
| bool | parseMDField (LocTy Loc, StringRef Name, ChecksumKindField &Result) |
Definition at line 108 of file LLParser.h.
| typedef LLLexer::LocTy llvm::LLParser::LocTy |
Definition at line 110 of file LLParser.h.
|
inline |
Definition at line 215 of file LLParser.h.
References F.
|
inline |
Definition at line 241 of file LLParser.h.
| bool LLParser::parseDIExpressionBodyAtBeginning | ( | MDNode *& | Result, |
| unsigned & | Read, | ||
| const SlotMapping * | Slots ) |
Definition at line 170 of file LLParser.cpp.
References llvm::SMLoc::getPointer(), and llvm::Read.
Referenced by llvm::parseDIExpressionBodyAtBeginning().
| bool llvm::LLParser::parseMDField | ( | LocTy | Loc, |
| StringRef | Name, | ||
| ChecksumKindField & | Result ) |
Definition at line 5769 of file LLParser.cpp.
References llvm::lltok::ChecksumKind, and llvm::DIFile::getChecksumKind().
Definition at line 5315 of file LLParser.cpp.
DIFlagField ::= uint32 ::= DIFlagVector ::= DIFlagVector '|' DIFlagFwdDecl '|' uint32 '|' DIFlagPublic.
Definition at line 5561 of file LLParser.cpp.
References llvm::lltok::APSInt, llvm::lltok::bar, llvm::lltok::DIFlag, and llvm::DINode::getFlag().
DISPFlagField ::= uint32 ::= DISPFlagVector ::= DISPFlagVector '|' DISPFlag* '|' uint32.
Definition at line 5601 of file LLParser.cpp.
References llvm::lltok::APSInt, llvm::lltok::bar, llvm::lltok::DISPFlag, and llvm::DISubprogram::getFlag().
| bool llvm::LLParser::parseMDField | ( | LocTy | Loc, |
| StringRef | Name, | ||
| DwarfAttEncodingField & | Result ) |
Definition at line 5538 of file LLParser.cpp.
References llvm::lltok::APSInt, assert(), llvm::lltok::DwarfAttEncoding, and llvm::dwarf::getAttributeEncoding().
Definition at line 5463 of file LLParser.cpp.
References llvm::lltok::APSInt, assert(), llvm::lltok::DwarfCC, and llvm::dwarf::getCallingConvention().
| bool llvm::LLParser::parseMDField | ( | LocTy | Loc, |
| StringRef | Name, | ||
| DwarfEnumKindField & | Result ) |
Definition at line 5377 of file LLParser.cpp.
References llvm::lltok::APSInt, assert(), llvm::dwarf::DW_APPLE_ENUM_KIND_invalid, llvm::lltok::DwarfEnumKind, and llvm::dwarf::getEnumKind().
| bool llvm::LLParser::parseMDField | ( | LocTy | Loc, |
| StringRef | Name, | ||
| DwarfLangDialectField & | Result ) |
Definition at line 5433 of file LLParser.cpp.
References llvm::lltok::APSInt, llvm::lltok::DwarfLangDialect, and llvm::dwarf::getLanguageDialect().
Definition at line 5396 of file LLParser.cpp.
References llvm::lltok::APSInt, assert(), llvm::lltok::DwarfLang, and llvm::dwarf::getLanguage().
| bool llvm::LLParser::parseMDField | ( | LocTy | Loc, |
| StringRef | Name, | ||
| DwarfMacinfoTypeField & | Result ) |
Definition at line 5338 of file LLParser.cpp.
References llvm::lltok::APSInt, assert(), llvm::dwarf::DW_MACINFO_invalid, llvm::lltok::DwarfMacinfo, and llvm::dwarf::getMacinfo().
| bool llvm::LLParser::parseMDField | ( | LocTy | Loc, |
| StringRef | Name, | ||
| DwarfSourceLangNameField & | Result ) |
Definition at line 5414 of file LLParser.cpp.
References llvm::lltok::APSInt, assert(), llvm::lltok::DwarfSourceLangName, and llvm::dwarf::getSourceLanguageName().
Definition at line 5320 of file LLParser.cpp.
References llvm::lltok::APSInt, assert(), llvm::dwarf::DW_TAG_invalid, llvm::lltok::DwarfTag, llvm::dwarf::getTag(), and llvm::Tag.
| bool llvm::LLParser::parseMDField | ( | LocTy | Loc, |
| StringRef | Name, | ||
| DwarfVirtualityField & | Result ) |
Definition at line 5358 of file LLParser.cpp.
References llvm::lltok::APSInt, assert(), llvm::dwarf::DW_VIRTUALITY_invalid, llvm::lltok::DwarfVirtuality, and llvm::dwarf::getVirtuality().
| bool llvm::LLParser::parseMDField | ( | LocTy | Loc, |
| StringRef | Name, | ||
| EmissionKindField & | Result ) |
Definition at line 5481 of file LLParser.cpp.
References llvm::lltok::APSInt, assert(), llvm::lltok::EmissionKind, and llvm::DICompileUnit::getEmissionKind().
| bool llvm::LLParser::parseMDField | ( | LocTy | Loc, |
| StringRef | Name, | ||
| FixedPointKindField & | Result ) |
Definition at line 5500 of file LLParser.cpp.
References llvm::lltok::APSInt, assert(), llvm::lltok::FixedPointKind, and llvm::DIFixedPointType::getFixedPointKind().
Definition at line 5311 of file LLParser.cpp.
Definition at line 5285 of file LLParser.cpp.
References llvm::lltok::APSInt.
Definition at line 5656 of file LLParser.cpp.
References llvm::lltok::kw_false, and llvm::lltok::kw_true.
Definition at line 5672 of file LLParser.cpp.
References llvm::lltok::kw_null.
Definition at line 5759 of file LLParser.cpp.
Definition at line 5637 of file LLParser.cpp.
References llvm::lltok::APSInt, and assert().
| bool llvm::LLParser::parseMDField | ( | LocTy | Loc, |
| StringRef | Name, | ||
| MDSignedOrMDField & | Result ) |
Definition at line 5690 of file LLParser.cpp.
References llvm::lltok::APSInt.
Definition at line 5736 of file LLParser.cpp.
References error, and llvm::MDString::get().
| bool llvm::LLParser::parseMDField | ( | LocTy | Loc, |
| StringRef | Name, | ||
| MDUnsignedField & | Result ) |
Definition at line 5295 of file LLParser.cpp.
References llvm::lltok::APSInt, and assert().
| bool llvm::LLParser::parseMDField | ( | LocTy | Loc, |
| StringRef | Name, | ||
| MDUnsignedOrMDField & | Result ) |
Definition at line 5713 of file LLParser.cpp.
References llvm::lltok::APSInt.
| bool llvm::LLParser::parseMDField | ( | LocTy | Loc, |
| StringRef | Name, | ||
| NameTableKindField & | Result ) |
Definition at line 5519 of file LLParser.cpp.
References llvm::lltok::APSInt, assert(), llvm::DICompileUnit::getNameTableKind(), and llvm::lltok::NameTableKind.
| bool LLParser::parseMetadataDefinitions | ( | SlotMapping & | Slots, |
| ArrayRef< SMLoc > | DefinitionEnds ) |
Definition at line 185 of file LLParser.cpp.
References _, blockCommentCrossesBoundary(), llvm::DISubprogram::cleanupRetainedNodes(), llvm::lltok::Eof, error, and llvm::lltok::exclaim.
Referenced by llvm::parseMetadataDefinitions().
| bool LLParser::parseStandaloneConstantValue | ( | Constant *& | C, |
| const SlotMapping * | Slots ) |
Definition at line 141 of file LLParser.cpp.
References C(), llvm::lltok::Eof, and error.
Referenced by llvm::parseConstantValue().
| bool LLParser::parseTypeAtBeginning | ( | Type *& | Ty, |
| unsigned & | Read, | ||
| const SlotMapping * | Slots ) |
Definition at line 154 of file LLParser.cpp.
References llvm::SMLoc::getPointer(), and llvm::Read.
Referenced by llvm::parseTypeAtBeginning().
| bool LLParser::Run | ( | bool | UpgradeDebugInfo, |
| DataLayoutCallbackTy | DataLayoutCallback = [](StringRef, StringRef) { return std::nullopt; } ) |
Run: module ::= toplevelentity*.
Definition at line 122 of file LLParser.cpp.
References error.
Referenced by parseAssemblyInto(), and parseSummaryIndexAssemblyInto().