LLVM  8.0.1
Classes | Namespaces | Functions
Record.h File Reference
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/DenseSet.h"
#include "llvm/ADT/FoldingSet.h"
#include "llvm/ADT/PointerIntPair.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/SMLoc.h"
#include "llvm/Support/TrailingObjects.h"
#include "llvm/Support/raw_ostream.h"
#include <algorithm>
#include <cassert>
#include <cstddef>
#include <cstdint>
#include <map>
#include <memory>
#include <string>
#include <utility>
#include <vector>
Include dependency graph for Record.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  llvm::RecTy
 
class  llvm::BitRecTy
 'bit' - Represent a single bit More...
 
class  llvm::BitsRecTy
 'bits<n>' - Represent a fixed number of bits More...
 
class  llvm::CodeRecTy
 'code' - Represent a code fragment More...
 
class  llvm::IntRecTy
 'int' - Represent an integer value of no particular size More...
 
class  llvm::StringRecTy
 'string' - Represent an string value More...
 
class  llvm::ListRecTy
 'list<Ty>' - Represent a list of values, all of which must be of the specified type. More...
 
class  llvm::DagRecTy
 'dag' - Represent a dag fragment More...
 
class  llvm::RecordRecTy
 '[classname]' - Type of record values that have zero or more superclasses. More...
 
class  llvm::Init
 
class  llvm::TypedInit
 This is the common super-class of types that have a specific, explicit, type. More...
 
class  llvm::UnsetInit
 '?' - Represents an uninitialized value More...
 
class  llvm::BitInit
 'true'/'false' - Represent a concrete initializer for a bit. More...
 
class  llvm::BitsInit
 '{ a, b, c }' - Represents an initializer for a BitsRecTy value. More...
 
class  llvm::IntInit
 '7' - Represent an initialization by a literal integer value. More...
 
class  llvm::StringInit
 "foo" - Represent an initialization by a string value. More...
 
class  llvm::CodeInit
 
class  llvm::ListInit
 [AL, AH, CL] - Represent a list of defs More...
 
class  llvm::OpInit
 Base class for operators. More...
 
class  llvm::UnOpInit
 !op (X) - Transform an init. More...
 
class  llvm::BinOpInit
 !op (X, Y) - Combine two inits. More...
 
class  llvm::TernOpInit
 !op (X, Y, Z) - Combine two inits. More...
 
class  llvm::FoldOpInit
 !foldl (a, b, expr, start, lst) - Fold over a list. More...
 
class  llvm::IsAOpInit
 !isa<type>(expr) - Dynamically determine the type of an expression. More...
 
class  llvm::VarInit
 'Opcode' - Represent a reference to an entire variable object. More...
 
class  llvm::VarBitInit
 Opcode{0} - Represent access to one bit of a variable or field. More...
 
class  llvm::VarListElementInit
 List[4] - Represent access to one element of a var or field. More...
 
class  llvm::DefInit
 AL - Represent a reference to a 'def' in the description. More...
 
class  llvm::VarDefInit
 classname<targs...> - Represent an uninstantiated anonymous class instantiation. More...
 
class  llvm::FieldInit
 X.Y - Represent a reference to a subfield of a variable. More...
 
class  llvm::DagInit
 (v a, b) - Represent a DAG tree value. More...
 
class  llvm::RecordVal
 
class  llvm::Record
 
class  llvm::RecordKeeper
 
struct  llvm::LessRecord
 Sorting predicate to sort record pointers by name. More...
 
struct  llvm::LessRecordByID
 Sorting predicate to sort record pointers by their unique ID. More...
 
struct  llvm::LessRecordFieldName
 Sorting predicate to sort record pointers by their name field. More...
 
struct  llvm::LessRecordRegister
 
struct  llvm::LessRecordRegister::RecordParts
 
class  llvm::Resolver
 Interface for looking up the initializer for a variable name, used by Init::resolveReferences. More...
 
class  llvm::MapResolver
 Resolve arbitrary mappings. More...
 
class  llvm::RecordResolver
 Resolve all variables from a record except for unset variables. More...
 
class  llvm::RecordValResolver
 Resolve all references to a specific RecordVal. More...
 
class  llvm::ShadowResolver
 Delegate resolving to a sub-resolver, but shadow some variable names. More...
 
class  llvm::TrackUnresolvedResolver
 (Optionally) delegate resolving to a sub-resolver, and keep track whether there were unresolved references. More...
 
class  llvm::HasReferenceResolver
 Do not resolve anything, but keep track of whether a given variable was referenced. More...
 

Namespaces

 llvm
 This class represents lattice values for constants.
 

Functions

raw_ostream & llvm::operator<< (raw_ostream &OS, const RecTy &Ty)
 
RecTyllvm::resolveTypes (RecTy *T1, RecTy *T2)
 Find a common type that T1 and T2 convert to. More...
 
raw_ostream & llvm::operator<< (raw_ostream &OS, const Init &I)
 
raw_ostream & llvm::operator<< (raw_ostream &OS, const RecordVal &RV)
 
raw_ostreamllvm::operator<< (raw_ostream &OS, const Record &R)
 
raw_ostreamllvm::operator<< (raw_ostream &OS, const RecordKeeper &RK)
 
void llvm::EmitJSON (RecordKeeper &RK, raw_ostream &OS)