LLVM  8.0.1
Classes | Namespaces | Functions
TGParser.cpp File Reference
#include "TGParser.h"
#include "llvm/ADT/None.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/Config/llvm-config.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/Compiler.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/TableGen/Record.h"
#include <algorithm>
#include <cassert>
#include <cstdint>
Include dependency graph for TGParser.cpp:

Go to the source code of this file.

Classes

struct  llvm::SubClassReference
 
struct  llvm::SubMultiClassReference
 

Namespaces

 llvm
 This class represents lattice values for constants.
 

Functions

static bool checkBitsConcrete (Record &R, const RecordVal &RV)
 
static void checkConcrete (Record &R)
 
static InitQualifyName (Record &CurRec, MultiClass *CurMultiClass, Init *Name, StringRef Scoper)
 Return an Init with a qualifier prefix referring to CurRec's name. More...
 
static InitQualifiedNameOfImplicitName (Record &Rec, MultiClass *MC=nullptr)
 Return the qualified version of the implicit 'NAME' template argument. More...
 
static InitQualifiedNameOfImplicitName (MultiClass *MC)
 
static bool isObjectStart (tgtok::TokKind K)
 isObjectStart - Return true if this is a valid first token for an Object. More...
 

Function Documentation

◆ checkBitsConcrete()

static bool checkBitsConcrete ( Record R,
const RecordVal RV 
)
static

◆ checkConcrete()

static void checkConcrete ( Record R)
static

◆ isObjectStart()

static bool isObjectStart ( tgtok::TokKind  K)
static

◆ QualifiedNameOfImplicitName() [1/2]

static Init* QualifiedNameOfImplicitName ( Record Rec,
MultiClass MC = nullptr 
)
static

Return the qualified version of the implicit 'NAME' template argument.

Definition at line 132 of file TGParser.cpp.

References llvm::StringInit::get(), and QualifyName().

Referenced by isObjectStart(), and QualifiedNameOfImplicitName().

◆ QualifiedNameOfImplicitName() [2/2]

static Init* QualifiedNameOfImplicitName ( MultiClass MC)
static

Definition at line 137 of file TGParser.cpp.

References llvm::Record::addSuperClass(), llvm::Record::addValue(), llvm::Record::appendLoc(), assert(), llvm::tgtok::Bit, checkConcrete(), llvm::Default, llvm::tgtok::Defset, llvm::dyn_cast(), E, llvm::ArrayRef< T >::empty(), llvm::ForeachLoop::Entries, llvm::MultiClass::Entries, llvm::Error, llvm::BitsRecTy::get(), llvm::StringRecTy::get(), llvm::BitsInit::get(), llvm::VarInit::get(), llvm::RecTy::getAsString(), llvm::Init::getAsString(), llvm::Init::getAsUnquotedString(), llvm::BitsInit::getBit(), llvm::Init::getCastTo(), llvm::RecordVal::getName(), llvm::Record::getName(), llvm::VarInit::getNameInit(), llvm::RecordVal::getNameInit(), llvm::Record::getNameInit(), llvm::Record::getNameInitAsString(), llvm::BitsInit::getNumBits(), llvm::Record::getSuperClasses(), llvm::Record::getTemplateArgs(), llvm::TypedInit::getType(), llvm::RecordVal::getType(), llvm::RecordVal::getValue(), llvm::Record::getValue(), llvm::Record::getValues(), I, llvm::Record::isClass(), llvm::Init::isComplete(), llvm::Record::isSubClassOf(), llvm::ForeachLoop::IterVar, List, llvm::ForeachLoop::ListValue, llvm::ForeachLoop::Loc, llvm::RecordsEntry::Loop, Loops, llvm::SubMultiClassReference::MC, Name, llvm::None, llvm::PrintError(), llvm::PrintNote(), QualifiedNameOfImplicitName(), llvm::SubClassReference::Rec, llvm::RecordsEntry::Rec, llvm::MultiClass::Rec, llvm::SubClassReference::RefRange, llvm::SubMultiClassReference::RefRange, llvm::Record::removeValue(), llvm::Init::resolveReferences(), llvm::Record::resolveReferences(), llvm::PPCISD::SC, llvm::MapResolver::set(), SetValue(), llvm::RecordVal::setValue(), llvm::ArrayRef< T >::size(), llvm::Sched::Source, llvm::SMRange::Start, llvm::SubClassReference::TemplateArgs, llvm::SubMultiClassReference::TemplateArgs, llvm::RecTy::typeIsA(), and VI.

◆ QualifyName()

static Init* QualifyName ( Record CurRec,
MultiClass CurMultiClass,
Init Name,
StringRef  Scoper 
)
static

Return an Init with a qualifier prefix referring to CurRec's name.

Definition at line 115 of file TGParser.cpp.

References llvm::StringInit::get(), llvm::Record::getNameInit(), llvm::BinOpInit::getStrConcat(), llvm::cl::Prefix, and llvm::MultiClass::Rec.

Referenced by QualifiedNameOfImplicitName().