LLVM
15.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) | |
bool | Run (bool UpgradeDebugInfo, DataLayoutCallbackTy DataLayoutCallback=[](StringRef) { return None;}) |
Run: module ::= toplevelentity*. More... | |
bool | parseStandaloneConstantValue (Constant *&C, const SlotMapping *Slots) |
bool | parseTypeAtBeginning (Type *&Ty, unsigned &Read, const SlotMapping *Slots) |
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, DwarfLangField &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, 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. More... | |
template<> | |
bool | parseMDField (LocTy Loc, StringRef Name, DISPFlagField &Result) |
DISPFlagField ::= uint32 ::= DISPFlagVector ::= DISPFlagVector '|' DISPFlag* '|' uint32. More... | |
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, MDStringField &Result) |
template<> | |
bool | parseMDField (LocTy Loc, StringRef Name, MDFieldList &Result) |
template<> | |
bool | parseMDField (LocTy Loc, StringRef Name, ChecksumKindField &Result) |
Definition at line 93 of file LLParser.h.
typedef LLLexer::LocTy llvm::LLParser::LocTy |
Definition at line 95 of file LLParser.h.
|
inline |
Definition at line 159 of file LLParser.h.
|
inline |
Definition at line 174 of file LLParser.h.
References Context.
bool llvm::LLParser::parseMDField | ( | LocTy | Loc, |
StringRef | Name, | ||
ChecksumKindField & | Result | ||
) |
Definition at line 4419 of file LLParser.cpp.
References llvm::lltok::ChecksumKind, llvm::DIFile::getChecksumKind(), llvm::LLLexer::getKind(), llvm::LLLexer::getStrVal(), and llvm::LLLexer::Lex().
Definition at line 4084 of file LLParser.cpp.
DIFlagField ::= uint32 ::= DIFlagVector ::= DIFlagVector '|' DIFlagFwdDecl '|' uint32 '|' DIFlagPublic.
Definition at line 4243 of file LLParser.cpp.
References llvm::lltok::APSInt, llvm::lltok::bar, llvm::lltok::DIFlag, llvm::LLLexer::getAPSIntVal(), llvm::DINode::getFlag(), llvm::LLLexer::getKind(), llvm::LLLexer::getStrVal(), llvm::APSInt::isSigned(), and llvm::LLLexer::Lex().
DISPFlagField ::= uint32 ::= DISPFlagVector ::= DISPFlagVector '|' DISPFlag* '|' uint32.
Definition at line 4283 of file LLParser.cpp.
References llvm::lltok::APSInt, llvm::lltok::bar, llvm::lltok::DISPFlag, llvm::LLLexer::getAPSIntVal(), llvm::DISubprogram::getFlag(), llvm::LLLexer::getKind(), llvm::LLLexer::getStrVal(), llvm::APSInt::isSigned(), and llvm::LLLexer::Lex().
bool llvm::LLParser::parseMDField | ( | LocTy | Loc, |
StringRef | Name, | ||
DwarfAttEncodingField & | Result | ||
) |
Definition at line 4220 of file LLParser.cpp.
References llvm::lltok::APSInt, assert(), llvm::lltok::DwarfAttEncoding, llvm::dwarf::getAttributeEncoding(), llvm::LLLexer::getKind(), llvm::LLLexer::getStrVal(), and llvm::LLLexer::Lex().
Definition at line 4164 of file LLParser.cpp.
References llvm::lltok::APSInt, assert(), llvm::lltok::DwarfCC, llvm::dwarf::getCallingConvention(), llvm::LLLexer::getKind(), llvm::LLLexer::getStrVal(), and llvm::LLLexer::Lex().
Definition at line 4146 of file LLParser.cpp.
References llvm::lltok::APSInt, assert(), llvm::lltok::DwarfLang, llvm::LLLexer::getKind(), llvm::dwarf::getLanguage(), llvm::LLLexer::getStrVal(), and llvm::LLLexer::Lex().
bool llvm::LLParser::parseMDField | ( | LocTy | Loc, |
StringRef | Name, | ||
DwarfMacinfoTypeField & | Result | ||
) |
Definition at line 4107 of file LLParser.cpp.
References llvm::lltok::APSInt, assert(), llvm::dwarf::DW_MACINFO_invalid, llvm::lltok::DwarfMacinfo, llvm::LLLexer::getKind(), llvm::dwarf::getMacinfo(), llvm::LLLexer::getStrVal(), and llvm::LLLexer::Lex().
Definition at line 4089 of file LLParser.cpp.
References llvm::lltok::APSInt, assert(), llvm::dwarf::DW_TAG_invalid, llvm::lltok::DwarfTag, llvm::LLLexer::getKind(), llvm::LLLexer::getStrVal(), llvm::dwarf::getTag(), and llvm::LLLexer::Lex().
bool llvm::LLParser::parseMDField | ( | LocTy | Loc, |
StringRef | Name, | ||
DwarfVirtualityField & | Result | ||
) |
Definition at line 4127 of file LLParser.cpp.
References llvm::lltok::APSInt, assert(), llvm::dwarf::DW_VIRTUALITY_invalid, llvm::lltok::DwarfVirtuality, llvm::LLLexer::getKind(), llvm::LLLexer::getStrVal(), llvm::dwarf::getVirtuality(), and llvm::LLLexer::Lex().
bool llvm::LLParser::parseMDField | ( | LocTy | Loc, |
StringRef | Name, | ||
EmissionKindField & | Result | ||
) |
Definition at line 4182 of file LLParser.cpp.
References llvm::lltok::APSInt, assert(), llvm::lltok::EmissionKind, llvm::DICompileUnit::getEmissionKind(), llvm::LLLexer::getKind(), llvm::LLLexer::getStrVal(), and llvm::LLLexer::Lex().
Definition at line 4080 of file LLParser.cpp.
Definition at line 4054 of file LLParser.cpp.
References llvm::lltok::APSInt, llvm::LLLexer::getAPSIntVal(), llvm::LLLexer::getKind(), and llvm::LLLexer::Lex().
Definition at line 4338 of file LLParser.cpp.
References llvm::LLLexer::getKind(), llvm::lltok::kw_false, llvm::lltok::kw_true, and llvm::LLLexer::Lex().
Definition at line 4354 of file LLParser.cpp.
References llvm::LLLexer::getKind(), llvm::lltok::kw_null, and llvm::LLLexer::Lex().
Definition at line 4409 of file LLParser.cpp.
References move.
Definition at line 4319 of file LLParser.cpp.
References llvm::lltok::APSInt, assert(), llvm::LLLexer::getAPSIntVal(), llvm::LLLexer::getKind(), llvm::LLLexer::Lex(), and S.
bool llvm::LLParser::parseMDField | ( | LocTy | Loc, |
StringRef | Name, | ||
MDSignedOrMDField & | Result | ||
) |
Definition at line 4372 of file LLParser.cpp.
References llvm::lltok::APSInt, and llvm::LLLexer::getKind().
Definition at line 4395 of file LLParser.cpp.
References llvm::MDString::get(), llvm::LLLexer::getLoc(), and S.
bool llvm::LLParser::parseMDField | ( | LocTy | Loc, |
StringRef | Name, | ||
MDUnsignedField & | Result | ||
) |
Definition at line 4064 of file LLParser.cpp.
References llvm::lltok::APSInt, assert(), llvm::LLLexer::getAPSIntVal(), llvm::LLLexer::getKind(), llvm::APSInt::isSigned(), and llvm::LLLexer::Lex().
bool llvm::LLParser::parseMDField | ( | LocTy | Loc, |
StringRef | Name, | ||
NameTableKindField & | Result | ||
) |
Definition at line 4201 of file LLParser.cpp.
References llvm::lltok::APSInt, assert(), llvm::LLLexer::getKind(), llvm::DICompileUnit::getNameTableKind(), llvm::LLLexer::getStrVal(), llvm::LLLexer::Lex(), and llvm::lltok::NameTableKind.
bool LLParser::parseStandaloneConstantValue | ( | Constant *& | C, |
const SlotMapping * | Slots | ||
) |
Definition at line 107 of file LLParser.cpp.
References llvm::lltok::Eof, llvm::LLLexer::getKind(), llvm::LLLexer::getLoc(), and llvm::LLLexer::Lex().
bool LLParser::parseTypeAtBeginning | ( | Type *& | Ty, |
unsigned & | Read, | ||
const SlotMapping * | Slots | ||
) |
Definition at line 120 of file LLParser.cpp.
References llvm::LLLexer::getLoc(), and llvm::LLLexer::Lex().
bool LLParser::Run | ( | bool | UpgradeDebugInfo, |
DataLayoutCallbackTy | DataLayoutCallback = [](StringRef) { return None; } |
||
) |
Run: module ::= toplevelentity*.
Definition at line 77 of file LLParser.cpp.
References llvm::LLLexer::getLoc(), llvm::Module::getTargetTriple(), llvm::LLVMContext::hasSetOpaquePointersValue(), llvm::LLLexer::Lex(), setContextOpaquePointers(), llvm::Module::setDataLayout(), llvm::LLVMContext::shouldDiscardValueNames(), and llvm::UpgradeDebugInfo().