class LLParser

Declaration

class LLParser { /* full declaration omitted */ };

Declared at: llvm/include/llvm/AsmParser/LLParser.h:93

Member Variables

private llvm::LLVMContext& Context
private llvm::LLLexer OPLex
private llvm::LLLexer Lex
private llvm::Module* M
private llvm::ModuleSummaryIndex* Index
private llvm::SlotMapping* Slots
private SmallVector<llvm::Instruction*, 64> InstsWithTBAATag
private StringMap<std::pair<Type*, LocTy>> NamedTypes
private std::map<unsigned int, std::pair<Type*, LocTy>> NumberedTypes
private std::map<unsigned int, TrackingMDNodeRef> NumberedMetadata
private std::map<unsigned int, std::pair<TempMDTuple, LocTy>> ForwardRefMDNodes
private std::map<std::string, std::pair<GlobalValue*, LocTy>> ForwardRefVals
private std::map<unsigned int, std::pair<GlobalValue*, LocTy>> ForwardRefValIDs
private std::vector<GlobalValue*> NumberedVals
private std::map<std::string, LocTy> ForwardRefComdats
private std::map<ValID, std::map<ValID, GlobalValue*>> ForwardRefBlockAddresses
private llvm::LLParser::PerFunctionState* BlockAddressPFS
Reference to per-function state to allow basic blocks to be forward-referenced by blockaddress instructions within the same function.
private std::map<Value*, std::vector<unsigned int>> ForwardRefAttrGroups
private std::map<unsigned int, AttrBuilder> NumberedAttrBuilders
private std::map< unsigned int, std::vector<std::pair<ValueInfo*, LocTy>>> ForwardRefValueInfos
private std::map< unsigned int, std::vector<std::pair<AliasSummary*, LocTy>>> ForwardRefAliasees
private std::vector<ValueInfo> NumberedValueInfos
private std::map<unsigned int, std::vector<std::pair<GlobalValue::GUID*, LocTy>>> ForwardRefTypeIds
private std::map<unsigned int, StringRef> ModuleIdMap
private bool UpgradeDebugInfo
Only the llvm-as tool may set this to false to bypass UpgradeDebuginfo so it can generate broken bitcode.
private std::string SourceFileName

Method Overview

Methods

llvm::FastMathFlags EatFastMathFlagsIfPresent()

Declared at: llvm/include/llvm/AsmParser/LLParser.h:202

bool EatIfPresent(lltok::Kind T)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:196

Parameters

lltok::Kind T

LLParser(llvm::StringRef F,
         llvm::SourceMgr& SM,
         llvm::SMDiagnostic& Err,
         llvm::Module* M,
         llvm::ModuleSummaryIndex* Index,
         llvm::LLVMContext& Context,
         llvm::SlotMapping* Slots = nullptr)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:159

Parameters

llvm::StringRef F
llvm::SourceMgr& SM
llvm::SMDiagnostic& Err
llvm::Module* M
llvm::ModuleSummaryIndex* Index
llvm::LLVMContext& Context
llvm::SlotMapping* Slots = nullptr

bool Run(
    bool UpgradeDebugInfo,
    llvm::DataLayoutCallbackTy
        DataLayoutCallback =
            [](llvm::StringRef) { return None; })

Description

Run: module ::= toplevelentity*

Declared at: llvm/include/llvm/AsmParser/LLParser.h:165

Parameters

bool UpgradeDebugInfo
llvm::DataLayoutCallbackTy DataLayoutCallback = [](llvm::StringRef) { return None; }

void addGlobalValueToIndex(
    std::string Name,
    GlobalValue::GUID,
    GlobalValue::LinkageTypes Linkage,
    unsigned int ID,
    std::unique_ptr<GlobalValueSummary> Summary)

Description

Stores the given Name/GUID and associated summary into the Index. Also updates any forward references to the associated entry ID.

Declared at: llvm/include/llvm/AsmParser/LLParser.h:389

Parameters

std::string Name
GlobalValue::GUID
GlobalValue::LinkageTypes Linkage
unsigned int ID
std::unique_ptr<GlobalValueSummary> Summary

llvm::Value* checkValidVariableType(
    llvm::LLParser::LocTy Loc,
    const llvm::Twine& Name,
    llvm::Type* Ty,
    llvm::Value* Val)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:463

Parameters

llvm::LLParser::LocTy Loc
const llvm::Twine& Name
llvm::Type* Ty
llvm::Value* Val

bool convertValIDToValue(
    llvm::Type* Ty,
    llvm::ValID& ID,
    llvm::Value*& V,
    llvm::LLParser::PerFunctionState* PFS)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:460

Parameters

llvm::Type* Ty
llvm::ValID& ID
llvm::Value*& V
llvm::LLParser::PerFunctionState* PFS

bool error(llvm::LLParser::LocTy L,
           const llvm::Twine& Msg) const

Declared at: llvm/include/llvm/AsmParser/LLParser.h:177

Parameters

llvm::LLParser::LocTy L
const llvm::Twine& Msg

llvm::Comdat* getComdat(const std::string& Name,
                        llvm::LLParser::LocTy Loc)

Description

Get a Comdat with the specified name, creating a forward reference record if needed.

Declared at: llvm/include/llvm/AsmParser/LLParser.h:192

Parameters

const std::string& Name
llvm::LLParser::LocTy Loc

llvm::LLVMContext& getContext()

Declared at: llvm/include/llvm/AsmParser/LLParser.h:174

llvm::GlobalValue* getGlobalVal(
    const std::string& N,
    llvm::Type* Ty,
    llvm::LLParser::LocTy Loc)

Description

getGlobalVal - Get a value with the specified name or ID, creating a forward reference record if needed. This can return null if the value exists but does not have the right type.

Declared at: llvm/include/llvm/AsmParser/LLParser.h:187

Parameters

const std::string& N
llvm::Type* Ty
llvm::LLParser::LocTy Loc

llvm::GlobalValue* getGlobalVal(
    unsigned int ID,
    llvm::Type* Ty,
    llvm::LLParser::LocTy Loc)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:188

Parameters

unsigned int ID
llvm::Type* Ty
llvm::LLParser::LocTy Loc

bool parseAliasOrIFunc(
    const std::string& Name,
    llvm::LLParser::LocTy NameLoc,
    unsigned int L,
    unsigned int Visibility,
    unsigned int DLLStorageClass,
    bool DSOLocal,
    GlobalVariable::ThreadLocalMode TLM,
    GlobalVariable::UnnamedAddr UnnamedAddr)

Description

parseAliasOrIFunc: ::= GlobalVar '=' OptionalLinkage OptionalPreemptionSpecifier OptionalVisibility OptionalDLLStorageClass OptionalThreadLocal OptionalUnnamedAddr 'alias|ifunc' AliaseeOrResolver SymbolAttrs* AliaseeOrResolver ::= TypeAndValue SymbolAttrs ::= ',' 'partition' StringConstant Everything through OptionalUnnamedAddr has already been parsed.

Declared at: llvm/include/llvm/AsmParser/LLParser.h:321

Parameters

const std::string& Name
llvm::LLParser::LocTy NameLoc
unsigned int L
unsigned int Visibility
unsigned int DLLStorageClass
bool DSOLocal
GlobalVariable::ThreadLocalMode TLM
GlobalVariable::UnnamedAddr UnnamedAddr

bool parseAliasSummary(std::string Name,
                       GlobalValue::GUID,
                       unsigned int ID)

Description

AliasSummary ::= 'alias' ':' '(' 'module' ':' ModuleReference ',' GVFlags ',' 'aliasee' ':' GVReference ')'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:348

Parameters

std::string Name
GlobalValue::GUID
unsigned int ID

int parseAlloc(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS)

Description

parseAlloc ::= 'alloca' 'inalloca'? 'swifterror'? Type (',' TypeAndValue)? (',' 'align' i32)? (',', 'addrspace(n))?

Declared at: llvm/include/llvm/AsmParser/LLParser.h:598

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS

bool parseAllocKind(llvm::AllocFnKind& Kind)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:277

Parameters

llvm::AllocFnKind& Kind

bool parseAllocSizeArguments(
    unsigned int& BaseSizeArg,
    Optional<unsigned int>& HowManyArg)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:286

Parameters

unsigned int& BaseSizeArg
Optional<unsigned int>& HowManyArg

bool parseAnonStructType(llvm::Type*& Result,
                         bool Packed)

Description

parseAnonStructType - parse an anonymous struct type, which is inlined into other structs.

Declared at: llvm/include/llvm/AsmParser/LLParser.h:407

Parameters

llvm::Type*& Result
bool Packed

bool parseArgs(std::vector<uint64_t>& Args)

Description

OptionalResByArg ::= 'args' ':' '(' UInt64[, UInt64]* ')'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:388

Parameters

std::vector<uint64_t>& Args

bool parseArgumentList(
    SmallVectorImpl<llvm::LLParser::ArgInfo>&
        ArgList,
    bool& IsVarArg)

Description

parseArgumentList - parse the argument list for a function type or function prototype. ::= '(' ArgTypeListI ')' ArgTypeListI ::= /*empty*/ ::= '...' ::= ArgTypeList ',' '...' ::= ArgType (',' ArgType)*

Declared at: llvm/include/llvm/AsmParser/LLParser.h:555

Parameters

SmallVectorImpl<llvm::LLParser::ArgInfo>& ArgList
bool& IsVarArg

bool parseArithmetic(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS,
    unsigned int Opc,
    bool IsFP)

Description

parseArithmetic ::= ArithmeticOps TypeAndValue ',' Value If IsFP is false, then any integer operand is allowed, if it is true, any fp operand is allowed.

Declared at: llvm/include/llvm/AsmParser/LLParser.h:584

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS
unsigned int Opc
bool IsFP

bool parseArrayVectorType(llvm::Type*& Result,
                          bool IsVector)

Description

parseArrayVectorType - parse an array or vector type, assuming the first token has already been consumed. Type ::= '[' APSINTVAL 'x' Types ']' ::= ' < ' APSINTVAL 'x' Types '>' ::= ' < ' 'vscale' 'x' APSINTVAL 'x' Types '>'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:413

Parameters

llvm::Type*& Result
bool IsVector

int parseAtomicRMW(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS)

Description

parseAtomicRMW ::= 'atomicrmw' 'volatile'? BinOp TypeAndValue ',' TypeAndValue 'singlethread'? AtomicOrdering

Declared at: llvm/include/llvm/AsmParser/LLParser.h:602

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS

bool parseBasicBlock(
    llvm::LLParser::PerFunctionState& PFS)

Description

parseBasicBlock ::= (LabelStr|LabelID)? Instruction*

Declared at: llvm/include/llvm/AsmParser/LLParser.h:558

Parameters

llvm::LLParser::PerFunctionState& PFS

bool parseBlockCount()

Description

parseBlockCount ::= 'blockcount' ':' UInt64

Declared at: llvm/include/llvm/AsmParser/LLParser.h:344

bool parseBr(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS)

Description

parseBr ::= 'br' TypeAndValue ::= 'br' TypeAndValue ',' TypeAndValue ',' TypeAndValue

Declared at: llvm/include/llvm/AsmParser/LLParser.h:570

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS

bool parseCall(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS,
    CallInst::TailCallKind TCK)

Description

parseCall ::= 'call' OptionalFastMathFlags OptionalCallingConv OptionalAttrs Type Value ParameterList OptionalAttrs ::= 'tail' 'call' OptionalFastMathFlags OptionalCallingConv OptionalAttrs Type Value ParameterList OptionalAttrs ::= 'musttail' 'call' OptionalFastMathFlags OptionalCallingConv OptionalAttrs Type Value ParameterList OptionalAttrs ::= 'notail' 'call' OptionalFastMathFlags OptionalCallingConv OptionalAttrs Type Value ParameterList OptionalAttrs

Declared at: llvm/include/llvm/AsmParser/LLParser.h:596

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS
CallInst::TailCallKind TCK

bool parseCallBr(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS)

Description

parseCallBr ::= 'callbr' OptionalCallingConv OptionalAttrs Type Value ParamList OptionalAttrs OptionalOperandBundles 'to' TypeAndValue '[' LabelList ']'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:580

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS

bool parseCast(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS,
    unsigned int Opc)

Description

parseCast ::= CastOpc TypeAndValue 'to' Type

Declared at: llvm/include/llvm/AsmParser/LLParser.h:588

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS
unsigned int Opc

bool parseCatchPad(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS)

Description

parseCatchPad ::= 'catchpad' ParamList 'to' TypeAndValue 'unwind' TypeAndValue

Declared at: llvm/include/llvm/AsmParser/LLParser.h:578

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS

bool parseCatchRet(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS)

Description

parseCatchRet ::= 'catchret' from Parent Value 'to' TypeAndValue

Declared at: llvm/include/llvm/AsmParser/LLParser.h:576

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS

bool parseCatchSwitch(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS)

Description

parseCatchSwitch ::= 'catchswitch' within Parent

Declared at: llvm/include/llvm/AsmParser/LLParser.h:577

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS

bool parseCleanupPad(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS)

Description

parseCleanupPad ::= 'cleanuppad' within Parent ParamList

Declared at: llvm/include/llvm/AsmParser/LLParser.h:579

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS

bool parseCleanupRet(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS)

Description

parseCleanupRet ::= 'cleanupret' from Value unwind ('to' 'caller' | TypeAndValue)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:575

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS

bool parseCmpPredicate(unsigned int& P,
                       unsigned int Opc)

Description

parseCmpPredicate - parse an integer or fp predicate, based on Kind.

Declared at: llvm/include/llvm/AsmParser/LLParser.h:567

Parameters

unsigned int& P
unsigned int Opc

int parseCmpXchg(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS)

Description

parseCmpXchg ::= 'cmpxchg' 'weak'? 'volatile'? TypeAndValue ',' TypeAndValue ',' TypeAndValue 'singlethread'? AtomicOrdering AtomicOrdering ',' 'Align'?

Declared at: llvm/include/llvm/AsmParser/LLParser.h:601

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS

bool parseComdat()

Declared at: llvm/include/llvm/AsmParser/LLParser.h:325

bool parseCompare(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS,
    unsigned int Opc)

Description

parseCompare ::= 'icmp' IPredicates TypeAndValue ',' Value ::= 'fcmp' FPredicates TypeAndValue ',' Value

Declared at: llvm/include/llvm/AsmParser/LLParser.h:587

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS
unsigned int Opc

bool parseConstVCall(
    FunctionSummary::ConstVCall& ConstVCall,
    llvm::LLParser::IdToIndexMapType&
        IdToIndexMap,
    unsigned int Index)

Description

ConstVCall ::= '(' VFuncId ',' Args ')'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:363

Parameters

FunctionSummary::ConstVCall& ConstVCall
llvm::LLParser::IdToIndexMapType& IdToIndexMap
unsigned int Index

bool parseConstVCallList(
    lltok::Kind Kind,
    std::vector<FunctionSummary::ConstVCall>&
        ConstVCallList)

Description

ConstVCallList ::= Kind ':' '(' ConstVCall [',' ConstVCall]* ')'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:358

Parameters

lltok::Kind Kind
std::vector<FunctionSummary::ConstVCall>& ConstVCallList

bool parseConstantValue(llvm::Type* Ty,
                        llvm::Constant*& C)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:466

Parameters

llvm::Type* Ty
llvm::Constant*& C

bool parseDIArgList(
    llvm::MDNode*& Result,
    bool IsDistinct,
    llvm::LLParser::PerFunctionState* PFS)

Description

ParseDIArgList: ::= !DIArgList(i32 7, i64 %0)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:543

Parameters

llvm::MDNode*& Result
bool IsDistinct
llvm::LLParser::PerFunctionState* PFS

bool parseDeclare()

Description

toplevelentity ::= 'declare' FunctionHeader

Declared at: llvm/include/llvm/AsmParser/LLParser.h:310

bool parseDefine()

Description

toplevelentity ::= 'define' FunctionHeader (!dbg !56)* '{' ...

Declared at: llvm/include/llvm/AsmParser/LLParser.h:311

bool parseEnumAttribute(Attribute::AttrKind Attr,
                        llvm::AttrBuilder& B,
                        bool InAttrGroup)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:257

Parameters

Attribute::AttrKind Attr
llvm::AttrBuilder& B
bool InAttrGroup

bool parseExceptionArgs(
    SmallVectorImpl<llvm::Value*>& Args,
    llvm::LLParser::PerFunctionState& PFS)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:507

Parameters

SmallVectorImpl<llvm::Value*>& Args
llvm::LLParser::PerFunctionState& PFS

bool parseExtractElement(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS)

Description

parseExtractElement ::= 'extractelement' TypeAndValue ',' TypeAndValue

Declared at: llvm/include/llvm/AsmParser/LLParser.h:591

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS

int parseExtractValue(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS)

Description

parseExtractValue ::= 'extractvalue' TypeAndValue (',' uint32)+

Declared at: llvm/include/llvm/AsmParser/LLParser.h:605

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS

int parseFence(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS)

Description

parseFence ::= 'fence' 'singlethread'? AtomicOrdering

Declared at: llvm/include/llvm/AsmParser/LLParser.h:603

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS

bool parseFlag(unsigned int& Val)

Description

Flag ::= [0|1]

Declared at: llvm/include/llvm/AsmParser/LLParser.h:245

Parameters

unsigned int& Val

bool parseFnAttributeValuePairs(
    llvm::AttrBuilder& B,
    std::vector<unsigned int>& FwdRefAttrGrps,
    bool inAttrGrp,
    llvm::LLParser::LocTy& BuiltinLoc)

Description

parseFnAttributeValuePairs ::= <attr > | <attr > '=' <value >

Declared at: llvm/include/llvm/AsmParser/LLParser.h:331

Parameters

llvm::AttrBuilder& B
std::vector<unsigned int>& FwdRefAttrGrps
bool inAttrGrp
llvm::LLParser::LocTy& BuiltinLoc

bool parseFreeze(
    llvm::Instruction*& I,
    llvm::LLParser::PerFunctionState& PFS)

Description

parseFreeze ::= 'freeze' Type Value

Declared at: llvm/include/llvm/AsmParser/LLParser.h:607

Parameters

llvm::Instruction*& I
llvm::LLParser::PerFunctionState& PFS

bool parseFunctionBody(llvm::Function& Fn)

Description

parseFunctionBody ::= '{' BasicBlock+ UseListOrderDirective* '}'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:557

Parameters

llvm::Function& Fn

bool parseFunctionHeader(llvm::Function*& Fn,
                         bool IsDefine)

Description

FunctionHeader ::= OptionalLinkage OptionalPreemptionSpecifier OptionalVisibility OptionalCallingConv OptRetAttrs OptUnnamedAddr Type GlobalName '(' ArgList ')' OptAddrSpace OptFuncAttrs OptSection OptionalAlign OptGC OptionalPrefix OptionalPrologue OptPersonalityFn

Declared at: llvm/include/llvm/AsmParser/LLParser.h:556

Parameters

llvm::Function*& Fn
bool IsDefine

bool parseFunctionSummary(std::string Name,
                          GlobalValue::GUID,
                          unsigned int ID)

Description

FunctionSummary ::= 'function' ':' '(' 'module' ':' ModuleReference ',' GVFlags ',' 'insts' ':' UInt32 [',' OptionalFFlags]? [',' OptionalCalls]? [',' OptionalTypeIdInfo]? [',' OptionalParamAccesses]? [',' OptionalRefs]? ')'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:346

Parameters

std::string Name
GlobalValue::GUID
unsigned int ID

bool parseFunctionType(llvm::Type*& Result)

Description

parseFunctionType ::= Type ArgumentList OptionalAttrs

Declared at: llvm/include/llvm/AsmParser/LLParser.h:414

Parameters

llvm::Type*& Result

bool parseGVEntry(unsigned int ID)

Description

parseGVEntry ::= 'gv' ':' '(' ('name' ':' STRINGCONSTANT | 'guid' ':' UInt64) [',' 'summaries' ':' Summary[',' Summary]* ]? ')' Summary ::= '(' (FunctionSummary | VariableSummary | AliasSummary) ')'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:345

Parameters

unsigned int ID

bool parseGVFlags(
    GlobalValueSummary::GVFlags& GVFlags)

Description

GVFlags ::= 'flags' ':' '(' 'linkage' ':' OptionalLinkageAux ',' 'visibility' ':' Flag 'notEligibleToImport' ':' Flag ',' 'live' ':' Flag ',' 'dsoLocal' ':' Flag ',' 'canAutoHide' ':' Flag ',' ')'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:349

Parameters

GlobalValueSummary::GVFlags& GVFlags

bool parseGVReference(llvm::ValueInfo& VI,
                      unsigned int& GVId)

Description

GVReference ::= SummaryID

Declared at: llvm/include/llvm/AsmParser/LLParser.h:342

Parameters

llvm::ValueInfo& VI
unsigned int& GVId

bool parseGVarFlags(
    GlobalVarSummary::GVarFlags& GVarFlags)

Description

GVarFlags ::= 'varFlags' ':' '(' 'readonly' ':' Flag ',' 'writeonly' ':' Flag ',' 'constant' ':' Flag ')'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:350

Parameters

GlobalVarSummary::GVarFlags& GVarFlags

int parseGetElementPtr(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS)

Description

parseGetElementPtr ::= 'getelementptr' 'inbounds'? TypeAndValue (',' TypeAndValue)*

Declared at: llvm/include/llvm/AsmParser/LLParser.h:604

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS

bool parseGlobal(
    const std::string& Name,
    llvm::LLParser::LocTy NameLoc,
    unsigned int Linkage,
    bool HasLinkage,
    unsigned int Visibility,
    unsigned int DLLStorageClass,
    bool DSOLocal,
    GlobalVariable::ThreadLocalMode TLM,
    GlobalVariable::UnnamedAddr UnnamedAddr)

Description

parseGlobal ::= GlobalVar '=' OptionalLinkage OptionalPreemptionSpecifier OptionalVisibility OptionalDLLStorageClass OptionalThreadLocal OptionalUnnamedAddr OptionalAddrSpace OptionalExternallyInitialized GlobalType Type Const OptionalAttrs ::= OptionalLinkage OptionalPreemptionSpecifier OptionalVisibility OptionalDLLStorageClass OptionalThreadLocal OptionalUnnamedAddr OptionalAddrSpace OptionalExternallyInitialized GlobalType Type Const OptionalAttrs Everything up to and including OptionalUnnamedAddr has been parsed already.

Declared at: llvm/include/llvm/AsmParser/LLParser.h:316

Parameters

const std::string& Name
llvm::LLParser::LocTy NameLoc
unsigned int Linkage
bool HasLinkage
unsigned int Visibility
unsigned int DLLStorageClass
bool DSOLocal
GlobalVariable::ThreadLocalMode TLM
GlobalVariable::UnnamedAddr UnnamedAddr

bool parseGlobalObjectMetadataAttachment(
    llvm::GlobalObject& GO)

Description

parseGlobalObjectMetadataAttachment ::= !dbg !57

Declared at: llvm/include/llvm/AsmParser/LLParser.h:529

Parameters

llvm::GlobalObject& GO

bool parseGlobalType(bool& IsConstant)

Description

parseGlobalType ::= 'constant' ::= 'global'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:313

Parameters

bool& IsConstant

bool parseGlobalTypeAndValue(llvm::Constant*& V)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:514

Parameters

llvm::Constant*& V

bool parseGlobalValue(llvm::Type* Ty,
                      llvm::Constant*& C)

Description

parseGlobalValue - parse a global value with the specified type.

Declared at: llvm/include/llvm/AsmParser/LLParser.h:513

Parameters

llvm::Type* Ty
llvm::Constant*& C

bool parseGlobalValueVector(
    SmallVectorImpl<llvm::Constant*>& Elts,
    Optional<unsigned int>* InRangeOp = nullptr)

Description

parseGlobalValueVector ::= /*empty*/ ::= [inrange] TypeAndValue (',' [inrange] TypeAndValue)*

Declared at: llvm/include/llvm/AsmParser/LLParser.h:515

Parameters

SmallVectorImpl<llvm::Constant*>& Elts
Optional<unsigned int>* InRangeOp = nullptr

bool parseHotness(
    CalleeInfo::HotnessType& Hotness)

Description

Hotness := ('unknown'|'cold'|'none'|'hot'|'critical')

Declared at: llvm/include/llvm/AsmParser/LLParser.h:353

Parameters

CalleeInfo::HotnessType& Hotness

bool parseIndexList(
    SmallVectorImpl<unsigned int>& Indices)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:291

Parameters

SmallVectorImpl<unsigned int>& Indices

bool parseIndexList(
    SmallVectorImpl<unsigned int>& Indices,
    bool& AteExtraComma)

Description

parseIndexList - This parses the index list for an insert/extractvalue instruction. This sets AteExtraComma in the case where we eat an extra comma at the end of the line and find that it is followed by metadata. Clients that don't allow metadata can call the version of this function that only takes one argument. parseIndexList ::= (',' uint32)+

Declared at: llvm/include/llvm/AsmParser/LLParser.h:289

Parameters

SmallVectorImpl<unsigned int>& Indices
bool& AteExtraComma

bool parseIndirectBr(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS)

Description

parseIndirectBr Instruction ::= 'indirectbr' TypeAndValue ',' '[' LabelList ']'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:572

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS

bool parseInsertElement(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS)

Description

parseInsertElement ::= 'insertelement' TypeAndValue ',' TypeAndValue ',' TypeAndValue

Declared at: llvm/include/llvm/AsmParser/LLParser.h:592

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS

int parseInsertValue(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS)

Description

parseInsertValue ::= 'insertvalue' TypeAndValue ',' TypeAndValue (',' uint32)+

Declared at: llvm/include/llvm/AsmParser/LLParser.h:606

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS

int parseInstruction(
    llvm::Instruction*& Inst,
    llvm::BasicBlock* BB,
    llvm::LLParser::PerFunctionState& PFS)

Description

parseInstruction - parse one of the many different instructions.

Declared at: llvm/include/llvm/AsmParser/LLParser.h:565

Parameters

llvm::Instruction*& Inst
llvm::BasicBlock* BB
llvm::LLParser::PerFunctionState& PFS

bool parseInstructionMetadata(
    llvm::Instruction& Inst)

Description

parseInstructionMetadata ::= !dbg !42 (',' !dbg !57)*

Declared at: llvm/include/llvm/AsmParser/LLParser.h:528

Parameters

llvm::Instruction& Inst

bool parseInvoke(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS)

Description

parseInvoke ::= 'invoke' OptionalCallingConv OptionalAttrs Type Value ParamList OptionalAttrs 'to' TypeAndValue 'unwind' TypeAndValue

Declared at: llvm/include/llvm/AsmParser/LLParser.h:573

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS

bool parseLandingPad(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS)

Description

parseLandingPad ::= 'landingpad' Type 'personality' TypeAndValue 'cleanup'? Clause+ Clause ::= 'catch' TypeAndValue ::= 'filter' ::= 'filter' TypeAndValue ( ',' TypeAndValue )*

Declared at: llvm/include/llvm/AsmParser/LLParser.h:595

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS

int parseLoad(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS)

Description

parseLoad ::= 'load' 'volatile'? TypeAndValue (',' 'align' i32)? ::= 'load' 'atomic' 'volatile'? TypeAndValue 'singlethread'? AtomicOrdering (',' 'align' i32)?

Declared at: llvm/include/llvm/AsmParser/LLParser.h:599

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS

bool parseLogical(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS,
    unsigned int Opc)

Description

parseLogical ::= ArithmeticOps TypeAndValue ',' Value {

Declared at: llvm/include/llvm/AsmParser/LLParser.h:586

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS
unsigned int Opc

template <class FieldTy>
bool parseMDField(llvm::LLParser::LocTy Loc,
                  llvm::StringRef Name,
                  FieldTy& Result)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:533

Templates

FieldTy

Parameters

llvm::LLParser::LocTy Loc
llvm::StringRef Name
FieldTy& Result

template <class FieldTy>
bool parseMDField(llvm::StringRef Name,
                  FieldTy& Result)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:534

Templates

FieldTy

Parameters

llvm::StringRef Name
FieldTy& Result

template <class ParserTy>
bool parseMDFieldsImpl(
    ParserTy ParseField,
    llvm::LLParser::LocTy& ClosingLoc)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:537

Templates

ParserTy

Parameters

ParserTy ParseField
llvm::LLParser::LocTy& ClosingLoc

template <class ParserTy>
bool parseMDFieldsImplBody(ParserTy ParseField)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:535

Templates

ParserTy

Parameters

ParserTy ParseField

bool parseMDNode(llvm::MDNode*& N)

Description

MDNode: ::= !{ ... } ::= !7 ::= !DILocation(...)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:524

Parameters

llvm::MDNode*& N

bool parseMDNodeID(llvm::MDNode*& Result)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:329

Parameters

llvm::MDNode*& Result

bool parseMDNodeTail(llvm::MDNode*& N)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:525

Parameters

llvm::MDNode*& N

bool parseMDNodeVector(
    SmallVectorImpl<llvm::Metadata*>& Elts)

Description

parseMDNodeVector ::= { Element (',' Element)* } Element ::= 'null' | TypeAndValue

Declared at: llvm/include/llvm/AsmParser/LLParser.h:526

Parameters

SmallVectorImpl<llvm::Metadata*>& Elts

bool parseMDString(llvm::MDString*& Result)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:328

Parameters

llvm::MDString*& Result

bool parseMDTuple(llvm::MDNode*& MD,
                  bool IsDistinct = false)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:523

Parameters

llvm::MDNode*& MD
bool IsDistinct = false

bool parseMetadata(
    llvm::Metadata*& MD,
    llvm::LLParser::PerFunctionState* PFS)

Description

parseMetadata ::= i32 %local ::= i32 @global::= i32 7 ::= !42 ::= !{...} ::= !"string" ::= !DILocation(...)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:522

Parameters

llvm::Metadata*& MD
llvm::LLParser::PerFunctionState* PFS

bool parseMetadataAsValue(
    llvm::Value*& V,
    llvm::LLParser::PerFunctionState& PFS)

Description

parseMetadataAsValue ::= metadata i32 %local ::= metadata i32 @global::= metadata i32 7 ::= metadata !0 ::= metadata !{...} ::= metadata !"string"

Declared at: llvm/include/llvm/AsmParser/LLParser.h:519

Parameters

llvm::Value*& V
llvm::LLParser::PerFunctionState& PFS

bool parseMetadataAttachment(unsigned int& Kind,
                             llvm::MDNode*& MD)

Description

parseMetadataAttachment ::= !dbg !42

Declared at: llvm/include/llvm/AsmParser/LLParser.h:527

Parameters

unsigned int& Kind
llvm::MDNode*& MD

bool parseModuleAsm()

Description

toplevelentity ::= 'module' 'asm' STRINGCONSTANT

Declared at: llvm/include/llvm/AsmParser/LLParser.h:306

bool parseModuleEntry(unsigned int ID)

Description

ModuleEntry ::= 'module' ':' '(' 'path' ':' STRINGCONSTANT ',' 'hash' ':' Hash ')' Hash ::= '(' UInt32 ',' UInt32 ',' UInt32 ',' UInt32 ',' UInt32 ')'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:340

Parameters

unsigned int ID

bool parseModuleReference(
    llvm::StringRef& ModulePath)

Description

ModuleReference ::= 'module' ':' UInt

Declared at: llvm/include/llvm/AsmParser/LLParser.h:341

Parameters

llvm::StringRef& ModulePath

bool parseNamedGlobal()

Description

parseNamedGlobal: GlobalVar '=' OptionalVisibility (ALIAS | IFUNC) ... GlobalVar '=' OptionalLinkage OptionalPreemptionSpecifier OptionalVisibility OptionalDLLStorageClass ... -> global variable

Declared at: llvm/include/llvm/AsmParser/LLParser.h:315

bool parseNamedMetadata()

Description

parseNamedMetadata: !foo = !{ !1, !2 }

Declared at: llvm/include/llvm/AsmParser/LLParser.h:327

bool parseNamedType()

Description

toplevelentity ::= LocalVar '=' 'type' type

Declared at: llvm/include/llvm/AsmParser/LLParser.h:309

bool parseOptionalAddrSpace(
    unsigned int& AddrSpace,
    unsigned int DefaultAS = 0)

Description

parseOptionalAddrSpace := /*empty*/ := 'addrspace' '(' uint32 ')'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:252

Parameters

unsigned int& AddrSpace
unsigned int DefaultAS = 0

bool parseOptionalAlignment(
    llvm::MaybeAlign& Alignment,
    bool AllowParens = false)

Description

parseOptionalAlignment ::= /* empty */ ::= 'align' 4

Declared at: llvm/include/llvm/AsmParser/LLParser.h:273

Parameters

llvm::MaybeAlign& Alignment
bool AllowParens = false

bool parseOptionalCallingConv(unsigned int& CC)

Description

parseOptionalCallingConv ::= /*empty*/ ::= 'ccc' ::= 'fastcc' ::= 'intel_ocl_bicc' ::= 'coldcc' ::= 'cfguard_checkcc' ::= 'x86_stdcallcc' ::= 'x86_fastcallcc' ::= 'x86_thiscallcc' ::= 'x86_vectorcallcc' ::= 'arm_apcscc' ::= 'arm_aapcscc' ::= 'arm_aapcs_vfpcc' ::= 'aarch64_vector_pcs' ::= 'aarch64_sve_vector_pcs' ::= 'msp430_intrcc' ::= 'avr_intrcc' ::= 'avr_signalcc' ::= 'ptx_kernel' ::= 'ptx_device' ::= 'spir_func' ::= 'spir_kernel' ::= 'x86_64_sysvcc' ::= 'win64cc' ::= 'webkit_jscc' ::= 'anyregcc' ::= 'preserve_mostcc' ::= 'preserve_allcc' ::= 'ghccc' ::= 'swiftcc' ::= 'swifttailcc' ::= 'x86_intrcc' ::= 'hhvmcc' ::= 'hhvm_ccc' ::= 'cxx_fast_tlscc' ::= 'amdgpu_vs' ::= 'amdgpu_ls' ::= 'amdgpu_hs' ::= 'amdgpu_es' ::= 'amdgpu_gs' ::= 'amdgpu_ps' ::= 'amdgpu_cs' ::= 'amdgpu_kernel' ::= 'tailcc' ::= 'cc' UINT

Declared at: llvm/include/llvm/AsmParser/LLParser.h:272

Parameters

unsigned int& CC

bool parseOptionalCalls(
    std::vector<FunctionSummary::EdgeTy>& Calls)

Description

OptionalCalls := 'calls' ':' '(' Call [',' Call]* ')' Call ::= '(' 'callee' ':' GVReference [( ',' 'hotness' ':' Hotness | ',' 'relbf' ':' UInt32 )]? ')'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:352

Parameters

std::vector<FunctionSummary::EdgeTy>& Calls

bool parseOptionalComdat(
    llvm::StringRef GlobalName,
    llvm::Comdat*& C)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:517

Parameters

llvm::StringRef GlobalName
llvm::Comdat*& C

bool parseOptionalCommaAddrSpace(
    unsigned int& AddrSpace,
    llvm::LLParser::LocTy& Loc,
    bool& AteExtraComma)

Description

parseOptionalCommaAddrSpace ::= ::= ',' addrspace(1) This returns with AteExtraComma set to true if it ate an excess comma at the end.

Declared at: llvm/include/llvm/AsmParser/LLParser.h:284

Parameters

unsigned int& AddrSpace
llvm::LLParser::LocTy& Loc
bool& AteExtraComma

bool parseOptionalCommaAlign(
    llvm::MaybeAlign& Alignment,
    bool& AteExtraComma)

Description

parseOptionalCommaAlign ::= ::= ',' align 4 This returns with AteExtraComma set to true if it ate an excess comma at the end.

Declared at: llvm/include/llvm/AsmParser/LLParser.h:283

Parameters

llvm::MaybeAlign& Alignment
bool& AteExtraComma

void parseOptionalDLLStorageClass(
    unsigned int& Res)

Description

parseOptionalDLLStorageClass ::= /*empty*/ ::= 'dllimport' ::= 'dllexport'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:271

Parameters

unsigned int& Res

void parseOptionalDSOLocal(bool& DSOLocal)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:269

Parameters

bool& DSOLocal

bool parseOptionalDerefAttrBytes(
    lltok::Kind AttrKind,
    uint64_t& Bytes)

Description

parseOptionalDerefAttrBytes ::= /* empty */ ::= AttrKind '(' 4 ')' where AttrKind is either 'dereferenceable' or 'dereferenceable_or_null'.

Declared at: llvm/include/llvm/AsmParser/LLParser.h:275

Parameters

lltok::Kind AttrKind
uint64_t& Bytes

bool parseOptionalFFlags(
    FunctionSummary::FFlags& FFlags)

Description

OptionalFFlags := 'funcFlags' ':' '(' ['readNone' ':' Flag]? [',' 'readOnly' ':' Flag]? [',' 'noRecurse' ':' Flag]? [',' 'returnDoesNotAlias' ':' Flag]? ')' [',' 'noInline' ':' Flag]? ')' [',' 'alwaysInline' ':' Flag]? ')' [',' 'noUnwind' ':' Flag]? ')' [',' 'mayThrow' ':' Flag]? ')' [',' 'hasUnknownCall' ':' Flag]? ')' [',' 'mustBeUnreachable' ':' Flag]? ')'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:351

Parameters

FunctionSummary::FFlags& FFlags

bool parseOptionalFunctionMetadata(
    llvm::Function& F)

Description

parseOptionalFunctionMetadata ::= (!dbg !57)*

Declared at: llvm/include/llvm/AsmParser/LLParser.h:530

Parameters

llvm::Function& F

bool parseOptionalLinkage(
    unsigned int& Res,
    bool& HasLinkage,
    unsigned int& Visibility,
    unsigned int& DLLStorageClass,
    bool& DSOLocal)

Description

parseOptionalLinkage ::= /*empty*/ ::= 'private' ::= 'internal' ::= 'weak' ::= 'weak_odr' ::= 'linkonce' ::= 'linkonce_odr' ::= 'available_externally' ::= 'appending' ::= 'common' ::= 'extern_weak' ::= 'external'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:266

Parameters

unsigned int& Res
bool& HasLinkage
unsigned int& Visibility
unsigned int& DLLStorageClass
bool& DSOLocal

bool parseOptionalOperandBundles(
    SmallVectorImpl<llvm::OperandBundleDef>&
        BundleList,
    llvm::LLParser::PerFunctionState& PFS)

Description

parseOptionalOperandBundles ::= /*empty*/ ::= '[' OperandBundle [, OperandBundle ]* ']' OperandBundle ::= bundle-tag '(' ')' ::= bundle-tag '(' Type Value [, Type Value ]* ')' bundle-tag ::= String Constant

Declared at: llvm/include/llvm/AsmParser/LLParser.h:504

Parameters

SmallVectorImpl<llvm::OperandBundleDef>& BundleList
llvm::LLParser::PerFunctionState& PFS

bool parseOptionalParamAccesses(
    std::vector<FunctionSummary::ParamAccess>&
        Params)

Description

OptionalParamAccesses := 'params' ':' '(' ParamAccess [',' ParamAccess]* ')'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:368

Parameters

std::vector<FunctionSummary::ParamAccess>& Params

bool parseOptionalParamAttrs(llvm::AttrBuilder& B)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:260

Parameters

llvm::AttrBuilder& B

bool parseOptionalParamOrReturnAttrs(
    llvm::AttrBuilder& B,
    bool IsParam)

Description

Parse a potentially empty list of parameter or return attributes.

Declared at: llvm/include/llvm/AsmParser/LLParser.h:259

Parameters

llvm::AttrBuilder& B
bool IsParam

bool parseOptionalProgramAddrSpace(
    unsigned int& AddrSpace)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:253

Parameters

unsigned int& AddrSpace

bool parseOptionalRefs(
    std::vector<ValueInfo>& Refs)

Description

OptionalRefs := 'refs' ':' '(' GVReference [',' GVReference]* ')'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:377

Parameters

std::vector<ValueInfo>& Refs

bool parseOptionalResByArg(
    std::map<std::vector<uint64_t>,
             WholeProgramDevirtResolution::ByArg>&
        ResByArg)

Description

OptionalResByArg ::= 'wpdRes' ':' '(' ResByArg[, ResByArg]* ')' ResByArg ::= Args ',' 'byArg' ':' '(' 'kind' ':' ( 'indir' | 'uniformRetVal' | 'UniqueRetVal' | 'virtualConstProp' ) [',' 'info' ':' UInt64]? [',' 'byte' ':' UInt32]? [',' 'bit' ':' UInt32]? ')'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:385

Parameters

std::map<std::vector<uint64_t>, WholeProgramDevirtResolution::ByArg>& ResByArg

bool parseOptionalReturnAttrs(
    llvm::AttrBuilder& B)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:263

Parameters

llvm::AttrBuilder& B

bool parseOptionalStackAlignment(
    unsigned int& Alignment)

Description

parseOptionalStackAlignment ::= /* empty */ ::= 'alignstack' '(' 4 ')'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:282

Parameters

unsigned int& Alignment

bool parseOptionalThreadLocal(
    GlobalVariable::ThreadLocalMode& TLM)

Description

parseOptionalThreadLocal := /*empty*/ := 'thread_local' := 'thread_local' '(' tlsmodel ')'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:250

Parameters

GlobalVariable::ThreadLocalMode& TLM

bool parseOptionalToken(
    lltok::Kind T,
    bool& Present,
    llvm::LLParser::LocTy* Loc = nullptr)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:222

Parameters

lltok::Kind T
bool& Present
llvm::LLParser::LocTy* Loc = nullptr

bool parseOptionalTypeIdInfo(
    FunctionSummary::TypeIdInfo& TypeIdInfo)

Description

OptionalTypeIdInfo := 'typeidinfo' ':' '(' [',' TypeTests]? [',' TypeTestAssumeVCalls]? [',' TypeCheckedLoadVCalls]? [',' TypeTestAssumeConstVCalls]? [',' TypeCheckedLoadConstVCalls]? ')'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:354

Parameters

FunctionSummary::TypeIdInfo& TypeIdInfo

bool parseOptionalUWTableKind(
    llvm::UWTableKind& Kind)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:276

Parameters

llvm::UWTableKind& Kind

bool parseOptionalUnnamedAddr(
    GlobalVariable::UnnamedAddr& UnnamedAddr)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:251

Parameters

GlobalVariable::UnnamedAddr& UnnamedAddr

bool parseOptionalVTableFuncs(
    llvm::VTableFuncList& VTableFuncs)

Description

OptionalVTableFuncs := 'vTableFuncs' ':' '(' VTableFunc [',' VTableFunc]* ')' VTableFunc ::= '(' 'virtFunc' ':' GVReference ',' 'offset' ':' UInt64 ')'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:367

Parameters

llvm::VTableFuncList& VTableFuncs

void parseOptionalVisibility(unsigned int& Res)

Description

parseOptionalVisibility ::= /*empty*/ ::= 'default' ::= 'hidden' ::= 'protected'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:270

Parameters

unsigned int& Res

bool parseOptionalWpdResolutions(
    std::map<uint64_t,
             WholeProgramDevirtResolution>&
        WPDResMap)

Description

OptionalWpdResolutions ::= 'wpsResolutions' ':' '(' WpdResolution [',' WpdResolution]* ')' WpdResolution ::= '(' 'offset' ':' UInt64 ',' WpdRes ')'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:382

Parameters

std::map<uint64_t, WholeProgramDevirtResolution>& WPDResMap

bool parseOrdering(llvm::AtomicOrdering& Ordering)

Description

parseOrdering ::= AtomicOrdering This sets Ordering to the parsed value.

Declared at: llvm/include/llvm/AsmParser/LLParser.h:281

Parameters

llvm::AtomicOrdering& Ordering

int parsePHI(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS)

Description

parsePHI ::= 'phi' Type '[' Value ',' Value ']' (',' '[' Value ',' Value ']')*

Declared at: llvm/include/llvm/AsmParser/LLParser.h:594

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS

bool parseParamAccess(
    FunctionSummary::ParamAccess& Param,
    llvm::LLParser::IdLocListType& IdLocList)

Description

ParamAccess := '(' ParamNo ',' ParamAccessOffset [',' OptionalParamAccessCalls]? ')' OptionalParamAccessCalls := '(' Call [',' Call]* ')'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:372

Parameters

FunctionSummary::ParamAccess& Param
llvm::LLParser::IdLocListType& IdLocList

bool parseParamAccessCall(
    FunctionSummary::ParamAccess::Call& Call,
    llvm::LLParser::IdLocListType& IdLocList)

Description

ParamAccessCall := '(' 'callee' ':' GVReference ',' ParamNo ',' ParamAccessOffset ')'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:374

Parameters

FunctionSummary::ParamAccess::Call& Call
llvm::LLParser::IdLocListType& IdLocList

bool parseParamAccessOffset(
    llvm::ConstantRange& Range)

Description

ParamAccessOffset := 'offset' ':' '[' APSINTVAL ',' APSINTVAL ']'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:376

Parameters

llvm::ConstantRange& Range

bool parseParamNo(uint64_t& ParamNo)

Description

ParamNo := 'param' ':' UInt64

Declared at: llvm/include/llvm/AsmParser/LLParser.h:370

Parameters

uint64_t& ParamNo

bool parseParameterList(
    SmallVectorImpl<llvm::LLParser::ParamInfo>&
        ArgList,
    llvm::LLParser::PerFunctionState& PFS,
    bool IsMustTailCall = false,
    bool InVarArgsFunc = false)

Description

parseParameterList ::= '(' ')' ::= '(' Arg (',' Arg)* ')' Arg ::= Type OptionalAttributes Value OptionalAttributes

Declared at: llvm/include/llvm/AsmParser/LLParser.h:499

Parameters

SmallVectorImpl<llvm::LLParser::ParamInfo>& ArgList
llvm::LLParser::PerFunctionState& PFS
bool IsMustTailCall = false
bool InVarArgsFunc = false

bool parseRequiredTypeAttr(
    llvm::AttrBuilder& B,
    lltok::Kind AttrToken,
    Attribute::AttrKind AttrKind)

Description

parseRequiredTypeAttr ::= attrname( <ty >)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:334

Parameters

llvm::AttrBuilder& B
lltok::Kind AttrToken
Attribute::AttrKind AttrKind

bool parseResume(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS)

Description

parseResume ::= 'resume' TypeAndValue

Declared at: llvm/include/llvm/AsmParser/LLParser.h:574

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS

bool parseRet(
    llvm::Instruction*& Inst,
    llvm::BasicBlock* BB,
    llvm::LLParser::PerFunctionState& PFS)

Description

parseRet - parse a return instruction. ::= 'ret' void (',' !dbg, !1)* ::= 'ret' TypeAndValue (',' !dbg, !1)*

Declared at: llvm/include/llvm/AsmParser/LLParser.h:569

Parameters

llvm::Instruction*& Inst
llvm::BasicBlock* BB
llvm::LLParser::PerFunctionState& PFS

bool parseSanitizer(llvm::GlobalVariable* GV)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:518

Parameters

llvm::GlobalVariable* GV

bool parseScope(SyncScope::ID& SSID)

Description

parseScope ::= syncscope("singlethread" | "<target scope>")? This sets synchronization scope ID to the ID of the parsed value.

Declared at: llvm/include/llvm/AsmParser/LLParser.h:280

Parameters

SyncScope::ID& SSID

bool parseScopeAndOrdering(
    bool IsAtomic,
    SyncScope::ID& SSID,
    llvm::AtomicOrdering& Ordering)

Description

parseScopeAndOrdering if isAtomic: ::= SyncScope? AtomicOrdering else: ::= This sets Scope and Ordering to the parsed values.

Declared at: llvm/include/llvm/AsmParser/LLParser.h:278

Parameters

bool IsAtomic
SyncScope::ID& SSID
llvm::AtomicOrdering& Ordering

bool parseSelect(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS)

Description

parseSelect ::= 'select' TypeAndValue ',' TypeAndValue ',' TypeAndValue

Declared at: llvm/include/llvm/AsmParser/LLParser.h:589

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS

bool parseShuffleVector(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS)

Description

parseShuffleVector ::= 'shufflevector' TypeAndValue ',' TypeAndValue ',' TypeAndValue

Declared at: llvm/include/llvm/AsmParser/LLParser.h:593

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS

bool parseSourceFileName()

Description

toplevelentity ::= 'source_filename' '=' STRINGCONSTANT

Declared at: llvm/include/llvm/AsmParser/LLParser.h:307

bool parseSpecializedMDNode(
    llvm::MDNode*& N,
    bool IsDistinct = false)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:538

Parameters

llvm::MDNode*& N
bool IsDistinct = false

bool parseStandaloneConstantValue(
    llvm::Constant*& C,
    const llvm::SlotMapping* Slots)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:169

Parameters

llvm::Constant*& C
const llvm::SlotMapping* Slots

bool parseStandaloneMetadata()

Description

parseStandaloneMetadata: !42 = !{...}

Declared at: llvm/include/llvm/AsmParser/LLParser.h:326

int parseStore(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS)

Description

::= 'store' 'volatile'? TypeAndValue ',' TypeAndValue (',' 'align' i32)? ::= 'store' 'atomic' 'volatile'? TypeAndValue ',' TypeAndValue 'singlethread'? AtomicOrdering (',' 'align' i32)?

Declared at: llvm/include/llvm/AsmParser/LLParser.h:600

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS

bool parseStringAttribute(llvm::AttrBuilder& B)

Description

parseStringAttribute := StringConstant := StringConstant '=' StringConstant

Declared at: llvm/include/llvm/AsmParser/LLParser.h:247

Parameters

llvm::AttrBuilder& B

bool parseStringConstant(std::string& Result)

Description

parseStringConstant ::= StringConstant

Declared at: llvm/include/llvm/AsmParser/LLParser.h:234

Parameters

std::string& Result

bool parseStructBody(
    SmallVectorImpl<llvm::Type*>& Body)

Description

parseStructType: Handles packed and unpacked types. </ > parsed elsewhere. StructType ::= '{' '}' ::= '{' Type (',' Type)* '}' ::= ' < ' '{' '}' '>' ::= ' < ' '{' Type (',' Type)* '}' '>'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:408

Parameters

SmallVectorImpl<llvm::Type*>& Body

bool parseStructDefinition(
    llvm::SMLoc TypeLoc,
    llvm::StringRef Name,
    std::pair<Type*, LocTy>& Entry,
    llvm::Type*& ResultTy)

Description

parseStructDefinition - parse a struct in a 'type' definition.

Declared at: llvm/include/llvm/AsmParser/LLParser.h:409

Parameters

llvm::SMLoc TypeLoc
llvm::StringRef Name
std::pair<Type*, LocTy>& Entry
llvm::Type*& ResultTy

bool parseSummaryEntry()

Description

SummaryEntry ::= SummaryID '=' GVEntry | ModuleEntry | TypeIdEntry

Declared at: llvm/include/llvm/AsmParser/LLParser.h:339

bool parseSummaryIndexFlags()

Description

parseSummaryIndexFlags ::= 'flags' ':' UInt64

Declared at: llvm/include/llvm/AsmParser/LLParser.h:343

bool parseSwitch(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS)

Description

parseSwitch Instruction ::= 'switch' TypeAndValue ',' TypeAndValue '[' JumpTable ']' JumpTable ::= (TypeAndValue ',' TypeAndValue)*

Declared at: llvm/include/llvm/AsmParser/LLParser.h:571

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS

bool parseTLSModel(
    GlobalVariable::ThreadLocalMode& TLM)

Description

parseTLSModel := 'localdynamic' := 'initialexec' := 'localexec'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:249

Parameters

GlobalVariable::ThreadLocalMode& TLM

bool parseTargetDefinition()

Description

toplevelentity ::= 'target' 'triple' '=' STRINGCONSTANT ::= 'target' 'datalayout' '=' STRINGCONSTANT

Declared at: llvm/include/llvm/AsmParser/LLParser.h:305

bool parseTargetDefinitions()

Declared at: llvm/include/llvm/AsmParser/LLParser.h:304

bool parseToken(lltok::Kind T, const char* ErrMsg)

Description

parseToken - If the current token has the specified kind, eat it and return success. Otherwise, emit the specified error and return failure.

Declared at: llvm/include/llvm/AsmParser/LLParser.h:195

Parameters

lltok::Kind T
const char* ErrMsg

bool parseTopLevelEntities()

Declared at: llvm/include/llvm/AsmParser/LLParser.h:301

bool parseType(llvm::Type*& Result,
               const llvm::Twine& Msg,
               llvm::LLParser::LocTy& Loc,
               bool AllowVoid = false)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:398

Parameters

llvm::Type*& Result
const llvm::Twine& Msg
llvm::LLParser::LocTy& Loc
bool AllowVoid = false

bool parseType(llvm::Type*& Result,
               const llvm::Twine& Msg,
               bool AllowVoid = false)

Description

parseType - parse a type.

Declared at: llvm/include/llvm/AsmParser/LLParser.h:394

Parameters

llvm::Type*& Result
const llvm::Twine& Msg
bool AllowVoid = false

bool parseType(llvm::Type*& Result,
               bool AllowVoid = false)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:395

Parameters

llvm::Type*& Result
bool AllowVoid = false

bool parseType(llvm::Type*& Result,
               llvm::LLParser::LocTy& Loc,
               bool AllowVoid = false)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:403

Parameters

llvm::Type*& Result
llvm::LLParser::LocTy& Loc
bool AllowVoid = false

bool parseTypeAndBasicBlock(
    llvm::BasicBlock*& BB,
    llvm::LLParser::LocTy& Loc,
    llvm::LLParser::PerFunctionState& PFS)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:485

Parameters

llvm::BasicBlock*& BB
llvm::LLParser::LocTy& Loc
llvm::LLParser::PerFunctionState& PFS

bool parseTypeAndBasicBlock(
    llvm::BasicBlock*& BB,
    llvm::LLParser::PerFunctionState& PFS)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:487

Parameters

llvm::BasicBlock*& BB
llvm::LLParser::PerFunctionState& PFS

bool parseTypeAndValue(
    llvm::Value*& V,
    llvm::LLParser::LocTy& Loc,
    llvm::LLParser::PerFunctionState& PFS)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:481

Parameters

llvm::Value*& V
llvm::LLParser::LocTy& Loc
llvm::LLParser::PerFunctionState& PFS

bool parseTypeAndValue(
    llvm::Value*& V,
    llvm::LLParser::PerFunctionState& PFS)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:478

Parameters

llvm::Value*& V
llvm::LLParser::PerFunctionState& PFS

bool parseTypeAndValue(
    llvm::Value*& V,
    llvm::LLParser::PerFunctionState* PFS)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:477

Parameters

llvm::Value*& V
llvm::LLParser::PerFunctionState* PFS

bool parseTypeAtBeginning(
    llvm::Type*& Ty,
    unsigned int& Read,
    const llvm::SlotMapping* Slots)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:171

Parameters

llvm::Type*& Ty
unsigned int& Read
const llvm::SlotMapping* Slots

bool parseTypeIdCompatibleVtableEntry(
    unsigned int ID)

Description

TypeIdCompatibleVtableEntry ::= 'typeidCompatibleVTable' ':' '(' 'name' ':' STRINGCONSTANT ',' TypeIdCompatibleVtableInfo ')'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:380

Parameters

unsigned int ID

bool parseTypeIdEntry(unsigned int ID)

Description

TypeIdEntry ::= 'typeid' ':' '(' 'name' ':' STRINGCONSTANT ',' TypeIdSummary ')'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:378

Parameters

unsigned int ID

bool parseTypeIdSummary(llvm::TypeIdSummary& TIS)

Description

TypeIdSummary ::= 'summary' ':' '(' TypeTestResolution [',' OptionalWpdResolutions]? ')'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:379

Parameters

llvm::TypeIdSummary& TIS

bool parseTypeTestResolution(
    llvm::TypeTestResolution& TTRes)

Description

TypeTestResolution ::= 'typeTestRes' ':' '(' 'kind' ':' ( 'unsat' | 'byteArray' | 'inline' | 'single' | 'allOnes' ) ',' 'sizeM1BitWidth' ':' SizeM1BitWidth [',' 'alignLog2' ':' UInt64]? [',' 'sizeM1' ':' UInt64]? [',' 'bitMask' ':' UInt8]? [',' 'inlinesBits' ':' UInt64]? ')'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:381

Parameters

llvm::TypeTestResolution& TTRes

bool parseTypeTests(
    std::vector<GlobalValue::GUID>& TypeTests)

Description

TypeTests ::= 'typeTests' ':' '(' (SummaryID | UInt64) [',' (SummaryID | UInt64)]* ')'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:355

Parameters

std::vector<GlobalValue::GUID>& TypeTests

bool parseUInt32(unsigned int& Val,
                 llvm::LLParser::LocTy& Loc)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:236

Parameters

unsigned int& Val
llvm::LLParser::LocTy& Loc

bool parseUInt32(unsigned int& Val)

Description

parseUInt32 ::= uint32

Declared at: llvm/include/llvm/AsmParser/LLParser.h:235

Parameters

unsigned int& Val

bool parseUInt64(uint64_t& Val)

Description

parseUInt64 ::= uint64

Declared at: llvm/include/llvm/AsmParser/LLParser.h:240

Parameters

uint64_t& Val

bool parseUInt64(uint64_t& Val,
                 llvm::LLParser::LocTy& Loc)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:241

Parameters

uint64_t& Val
llvm::LLParser::LocTy& Loc

bool parseUnaryOp(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS,
    unsigned int Opc,
    bool IsFP)

Description

parseUnaryOp ::= UnaryOp TypeAndValue ',' Value If IsFP is false, then any integer operand is allowed, if it is true, any fp operand is allowed.

Declared at: llvm/include/llvm/AsmParser/LLParser.h:582

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS
unsigned int Opc
bool IsFP

bool parseUnnamedAttrGrp()

Description

parseUnnamedAttrGrp ::= 'attributes' AttrGrpID '=' '{' AttrValPair+ '}'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:330

bool parseUnnamedGlobal()

Description

parseUnnamedGlobal: OptionalVisibility (ALIAS | IFUNC) ... OptionalLinkage OptionalPreemptionSpecifier OptionalVisibility OptionalDLLStorageClass ... -> global variable GlobalID '=' OptionalVisibility (ALIAS | IFUNC) ... GlobalID '=' OptionalLinkage OptionalPreemptionSpecifier OptionalVisibility OptionalDLLStorageClass ... -> global variable

Declared at: llvm/include/llvm/AsmParser/LLParser.h:314

bool parseUnnamedType()

Description

parseUnnamedType: ::= LocalVarID '=' 'type' type

Declared at: llvm/include/llvm/AsmParser/LLParser.h:308

bool parseUseListOrder(
    llvm::LLParser::PerFunctionState* PFS =
        nullptr)

Description

parseUseListOrder ::= 'uselistorder' Type Value ',' UseListOrderIndexes

Declared at: llvm/include/llvm/AsmParser/LLParser.h:610

Parameters

llvm::LLParser::PerFunctionState* PFS = nullptr

bool parseUseListOrderBB()

Description

parseUseListOrderBB ::= 'uselistorder_bb' @foo',' %bar ',' UseListOrderIndexes

Declared at: llvm/include/llvm/AsmParser/LLParser.h:611

bool parseUseListOrderIndexes(
    SmallVectorImpl<unsigned int>& Indexes)

Description

parseUseListOrderIndexes ::= '{' uint32 (',' uint32)+ '}'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:612

Parameters

SmallVectorImpl<unsigned int>& Indexes

bool parseVAArg(
    llvm::Instruction*& Inst,
    llvm::LLParser::PerFunctionState& PFS)

Description

parseVAArg ::= 'va_arg' TypeAndValue ',' Type

Declared at: llvm/include/llvm/AsmParser/LLParser.h:590

Parameters

llvm::Instruction*& Inst
llvm::LLParser::PerFunctionState& PFS

bool parseVFuncId(
    FunctionSummary::VFuncId& VFuncId,
    llvm::LLParser::IdToIndexMapType&
        IdToIndexMap,
    unsigned int Index)

Description

VFuncId ::= 'vFuncId' ':' '(' (SummaryID | 'guid' ':' UInt64) ',' 'offset' ':' UInt64 ')'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:365

Parameters

FunctionSummary::VFuncId& VFuncId
llvm::LLParser::IdToIndexMapType& IdToIndexMap
unsigned int Index

bool parseVFuncIdList(
    lltok::Kind Kind,
    std::vector<FunctionSummary::VFuncId>&
        VFuncIdList)

Description

VFuncIdList ::= Kind ':' '(' VFuncId [',' VFuncId]* ')'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:356

Parameters

lltok::Kind Kind
std::vector<FunctionSummary::VFuncId>& VFuncIdList

bool parseVScaleRangeArguments(
    unsigned int& MinValue,
    unsigned int& MaxValue)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:288

Parameters

unsigned int& MinValue
unsigned int& MaxValue

bool parseValID(
    llvm::ValID& ID,
    llvm::LLParser::PerFunctionState* PFS,
    llvm::Type* ExpectedTy = nullptr)

Description

parseValID - parse an abstract value that doesn't necessarily have a type implied. For example, if we parse "4" we don't know what integer type it has. The value will later be combined with its type and checked for basic correctness. PFS is used to convert function-local operands of metadata (since metadata operands are not just parsed here but also converted to values). PFS can be null when we are not parsing metadata values inside a function.

Declared at: llvm/include/llvm/AsmParser/LLParser.h:511

Parameters

llvm::ValID& ID
llvm::LLParser::PerFunctionState* PFS
llvm::Type* ExpectedTy = nullptr

bool parseValue(
    llvm::Type* Ty,
    llvm::Value*& V,
    llvm::LLParser::PerFunctionState* PFS)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:467

Parameters

llvm::Type* Ty
llvm::Value*& V
llvm::LLParser::PerFunctionState* PFS

bool parseValue(
    llvm::Type* Ty,
    llvm::Value*& V,
    llvm::LLParser::PerFunctionState& PFS)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:468

Parameters

llvm::Type* Ty
llvm::Value*& V
llvm::LLParser::PerFunctionState& PFS

bool parseValue(
    llvm::Type* Ty,
    llvm::Value*& V,
    llvm::LLParser::LocTy& Loc,
    llvm::LLParser::PerFunctionState& PFS)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:472

Parameters

llvm::Type* Ty
llvm::Value*& V
llvm::LLParser::LocTy& Loc
llvm::LLParser::PerFunctionState& PFS

bool parseValueAsMetadata(
    llvm::Metadata*& MD,
    const llvm::Twine& TypeMsg,
    llvm::LLParser::PerFunctionState* PFS)

Description

parseValueAsMetadata ::= i32 %local ::= i32 @global::= i32 7

Declared at: llvm/include/llvm/AsmParser/LLParser.h:520

Parameters

llvm::Metadata*& MD
const llvm::Twine& TypeMsg
llvm::LLParser::PerFunctionState* PFS

bool parseVariableSummary(std::string Name,
                          GlobalValue::GUID,
                          unsigned int ID)

Description

VariableSummary ::= 'variable' ':' '(' 'module' ':' ModuleReference ',' GVFlags [',' OptionalRefs]? ')'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:347

Parameters

std::string Name
GlobalValue::GUID
unsigned int ID

bool parseWpdRes(
    llvm::WholeProgramDevirtResolution& WPDRes)

Description

WpdRes ::= 'wpdRes' ':' '(' 'kind' ':' 'indir' [',' OptionalResByArg]? ')' ::= 'wpdRes' ':' '(' 'kind' ':' 'singleImpl' ',' 'singleImplName' ':' STRINGCONSTANT ',' [',' OptionalResByArg]? ')' ::= 'wpdRes' ':' '(' 'kind' ':' 'branchFunnel' [',' OptionalResByArg]? ')'

Declared at: llvm/include/llvm/AsmParser/LLParser.h:384

Parameters

llvm::WholeProgramDevirtResolution& WPDRes

void restoreParsingState(
    const llvm::SlotMapping* Slots)

Description

Restore the internal name and slot mappings using the mappings that were created at an earlier parsing stage.

Declared at: llvm/include/llvm/AsmParser/LLParser.h:182

Parameters

const llvm::SlotMapping* Slots

bool skipModuleSummaryEntry()

Declared at: llvm/include/llvm/AsmParser/LLParser.h:338

bool sortUseListOrder(
    llvm::Value* V,
    ArrayRef<unsigned int> Indexes,
    llvm::SMLoc Loc)

Declared at: llvm/include/llvm/AsmParser/LLParser.h:613

Parameters

llvm::Value* V
ArrayRef<unsigned int> Indexes
llvm::SMLoc Loc

bool tokError(const llvm::Twine& Msg) const

Declared at: llvm/include/llvm/AsmParser/LLParser.h:178

Parameters

const llvm::Twine& Msg

bool validateEndOfIndex()

Description

Do final validity and basic correctness checks at the end of the index.

Declared at: llvm/include/llvm/AsmParser/LLParser.h:303

bool validateEndOfModule(bool UpgradeDebugInfo)

Description

validateEndOfModule - Do final validity and basic correctness checks at the end of the module.

Declared at: llvm/include/llvm/AsmParser/LLParser.h:302

Parameters

bool UpgradeDebugInfo