RetroArch
Public Member Functions | Static Public Member Functions | Public Attributes | Protected Types | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Private Member Functions | List of all members
glslang::TIntermediate Class Reference

#include <localintermediate.h>

Collaboration diagram for glslang::TIntermediate:
[legend]

Public Member Functions

 TIntermediate (EShLanguage l, int v=0, EProfile p=ENoProfile)
 
void setLimits (const TBuiltInResource &r)
 
bool postProcess (TIntermNode *, EShLanguage)
 
void output (TInfoSink &, bool tree)
 
void removeTree ()
 
void setSource (EShSource s)
 
EShSource getSource () const
 
void setEntryPointName (const char *ep)
 
void setEntryPointMangledName (const char *ep)
 
const std::string & getEntryPointName () const
 
const std::string & getEntryPointMangledName () const
 
void setShiftBinding (TResourceType res, unsigned int shift)
 
unsigned int getShiftBinding (TResourceType res) const
 
void setShiftBindingForSet (TResourceType res, unsigned int shift, unsigned int set)
 
int getShiftBindingForSet (TResourceType res, unsigned int set) const
 
bool hasShiftBindingForSet (TResourceType res) const
 
void setResourceSetBinding (const std::vector< std::string > &shift)
 
const std::vector< std::string > & getResourceSetBinding () const
 
void setAutoMapBindings (bool map)
 
bool getAutoMapBindings () const
 
void setAutoMapLocations (bool map)
 
bool getAutoMapLocations () const
 
void setInvertY (bool invert)
 
bool getInvertY () const
 
void setFlattenUniformArrays (bool flatten)
 
bool getFlattenUniformArrays () const
 
void setNoStorageFormat (bool b)
 
bool getNoStorageFormat () const
 
void setHlslOffsets ()
 
bool usingHlslOFfsets () const
 
void setUseStorageBuffer ()
 
bool usingStorageBuffer () const
 
void setHlslIoMapping (bool b)
 
bool usingHlslIoMapping ()
 
template<class T >
T addCounterBufferName (const T &name) const
 
bool hasCounterBufferName (const TString &name) const
 
void setTextureSamplerTransformMode (EShTextureSamplerTransformMode mode)
 
void setVersion (int v)
 
int getVersion () const
 
void setProfile (EProfile p)
 
EProfile getProfile () const
 
void setSpv (const SpvVersion &s)
 
const SpvVersion & getSpv () const
 
EShLanguage getStage () const
 
void addRequestedExtension (const char *extension)
 
const std::set< std::string > & getRequestedExtensions () const
 
void setTreeRoot (TIntermNode *r)
 
TIntermNode * getTreeRoot () const
 
void incrementEntryPointCount ()
 
int getNumEntryPoints () const
 
int getNumErrors () const
 
void addPushConstantCount ()
 
bool isRecursive () const
 
TIntermSymbol * addSymbol (const TVariable &)
 
TIntermSymbol * addSymbol (const TVariable &, const TSourceLoc &)
 
TIntermSymbol * addSymbol (const TType &, const TSourceLoc &)
 
TIntermSymbol * addSymbol (const TIntermSymbol &)
 
TIntermTyped * addConversion (TOperator, const TType &, TIntermTyped *) const
 
std::tuple< TIntermTyped *, TIntermTyped * > addConversion (TOperator op, TIntermTyped *node0, TIntermTyped *node1) const
 
TIntermTyped * addUniShapeConversion (TOperator, const TType &, TIntermTyped *)
 
void addBiShapeConversion (TOperator, TIntermTyped *&lhsNode, TIntermTyped *&rhsNode)
 
TIntermTyped * addShapeConversion (const TType &, TIntermTyped *)
 
TIntermTyped * addBinaryMath (TOperator, TIntermTyped *left, TIntermTyped *right, TSourceLoc)
 
TIntermTyped * addAssign (TOperator op, TIntermTyped *left, TIntermTyped *right, TSourceLoc)
 
TIntermTyped * addIndex (TOperator op, TIntermTyped *base, TIntermTyped *index, TSourceLoc)
 
TIntermTyped * addUnaryMath (TOperator, TIntermTyped *child, TSourceLoc)
 
TIntermTyped * addBuiltInFunctionCall (const TSourceLoc &line, TOperator, bool unary, TIntermNode *, const TType &returnType)
 
bool canImplicitlyPromote (TBasicType from, TBasicType to, TOperator op=EOpNull) const
 
bool isIntegralPromotion (TBasicType from, TBasicType to) const
 
bool isFPPromotion (TBasicType from, TBasicType to) const
 
bool isIntegralConversion (TBasicType from, TBasicType to) const
 
bool isFPConversion (TBasicType from, TBasicType to) const
 
bool isFPIntegralConversion (TBasicType from, TBasicType to) const
 
TOperator mapTypeToConstructorOp (const TType &) const
 
TIntermAggregate * growAggregate (TIntermNode *left, TIntermNode *right)
 
TIntermAggregate * growAggregate (TIntermNode *left, TIntermNode *right, const TSourceLoc &)
 
TIntermAggregate * makeAggregate (TIntermNode *node)
 
TIntermAggregate * makeAggregate (TIntermNode *node, const TSourceLoc &)
 
TIntermAggregate * makeAggregate (const TSourceLoc &)
 
TIntermTyped * setAggregateOperator (TIntermNode *, TOperator, const TType &type, TSourceLoc)
 
bool areAllChildConst (TIntermAggregate *aggrNode)
 
TIntermSelection * addSelection (TIntermTyped *cond, TIntermNodePair code, const TSourceLoc &)
 
TIntermTyped * addSelection (TIntermTyped *cond, TIntermTyped *trueBlock, TIntermTyped *falseBlock, const TSourceLoc &)
 
TIntermTyped * addComma (TIntermTyped *left, TIntermTyped *right, const TSourceLoc &)
 
TIntermTyped * addMethod (TIntermTyped *, const TType &, const TString *, const TSourceLoc &)
 
TIntermConstantUnion * addConstantUnion (const TConstUnionArray &, const TType &, const TSourceLoc &, bool literal=false) const
 
TIntermConstantUnion * addConstantUnion (signed char, const TSourceLoc &, bool literal=false) const
 
TIntermConstantUnion * addConstantUnion (unsigned char, const TSourceLoc &, bool literal=false) const
 
TIntermConstantUnion * addConstantUnion (signed short, const TSourceLoc &, bool literal=false) const
 
TIntermConstantUnion * addConstantUnion (unsigned short, const TSourceLoc &, bool literal=false) const
 
TIntermConstantUnion * addConstantUnion (int, const TSourceLoc &, bool literal=false) const
 
TIntermConstantUnion * addConstantUnion (unsigned int, const TSourceLoc &, bool literal=false) const
 
TIntermConstantUnion * addConstantUnion (long long, const TSourceLoc &, bool literal=false) const
 
TIntermConstantUnion * addConstantUnion (unsigned long long, const TSourceLoc &, bool literal=false) const
 
TIntermConstantUnion * addConstantUnion (bool, const TSourceLoc &, bool literal=false) const
 
TIntermConstantUnion * addConstantUnion (double, TBasicType, const TSourceLoc &, bool literal=false) const
 
TIntermConstantUnion * addConstantUnion (const TString *, const TSourceLoc &, bool literal=false) const
 
TIntermTyped * promoteConstantUnion (TBasicType, TIntermConstantUnion *) const
 
bool parseConstTree (TIntermNode *, TConstUnionArray, TOperator, const TType &, bool singleConstantParam=false)
 
TIntermLoop * addLoop (TIntermNode *, TIntermTyped *, TIntermTyped *, bool testFirst, const TSourceLoc &)
 
TIntermAggregate * addForLoop (TIntermNode *, TIntermNode *, TIntermTyped *, TIntermTyped *, bool testFirst, const TSourceLoc &, TIntermLoop *&)
 
TIntermBranch * addBranch (TOperator, const TSourceLoc &)
 
TIntermBranch * addBranch (TOperator, TIntermTyped *, const TSourceLoc &)
 
template<typename selectorType >
TIntermTyped * addSwizzle (TSwizzleSelectors< selectorType > &, const TSourceLoc &)
 
TIntermBinary * addBinaryNode (TOperator op, TIntermTyped *left, TIntermTyped *right, TSourceLoc) const
 
TIntermBinary * addBinaryNode (TOperator op, TIntermTyped *left, TIntermTyped *right, TSourceLoc, const TType &) const
 
TIntermUnary * addUnaryNode (TOperator op, TIntermTyped *child, TSourceLoc) const
 
TIntermUnary * addUnaryNode (TOperator op, TIntermTyped *child, TSourceLoc, const TType &) const
 
TIntermTyped * fold (TIntermAggregate *aggrNode)
 
TIntermTyped * foldConstructor (TIntermAggregate *aggrNode)
 
TIntermTyped * foldDereference (TIntermTyped *node, int index, const TSourceLoc &)
 
TIntermTyped * foldSwizzle (TIntermTyped *node, TSwizzleSelectors< TVectorSelector > &fields, const TSourceLoc &)
 
void addSymbolLinkageNodes (TIntermAggregate *&linkage, EShLanguage, TSymbolTable &)
 
void addSymbolLinkageNode (TIntermAggregate *&linkage, const TSymbol &)
 
bool setInvocations (int i)
 
int getInvocations () const
 
bool setVertices (int m)
 
int getVertices () const
 
bool setInputPrimitive (TLayoutGeometry p)
 
TLayoutGeometry getInputPrimitive () const
 
bool setVertexSpacing (TVertexSpacing s)
 
TVertexSpacing getVertexSpacing () const
 
bool setVertexOrder (TVertexOrder o)
 
TVertexOrder getVertexOrder () const
 
void setPointMode ()
 
bool getPointMode () const
 
bool setLocalSize (int dim, int size)
 
unsigned int getLocalSize (int dim) const
 
bool setLocalSizeSpecId (int dim, int id)
 
int getLocalSizeSpecId (int dim) const
 
void setXfbMode ()
 
bool getXfbMode () const
 
void setMultiStream ()
 
bool isMultiStream () const
 
bool setOutputPrimitive (TLayoutGeometry p)
 
TLayoutGeometry getOutputPrimitive () const
 
void setOriginUpperLeft ()
 
bool getOriginUpperLeft () const
 
void setPixelCenterInteger ()
 
bool getPixelCenterInteger () const
 
void setEarlyFragmentTests ()
 
bool getEarlyFragmentTests () const
 
void setPostDepthCoverage ()
 
bool getPostDepthCoverage () const
 
bool setDepth (TLayoutDepth d)
 
TLayoutDepth getDepth () const
 
void setDepthReplacing ()
 
bool isDepthReplacing () const
 
void setHlslFunctionality1 ()
 
bool getHlslFunctionality1 () const
 
void addBlendEquation (TBlendEquationShift b)
 
unsigned int getBlendEquations () const
 
void addToCallGraph (TInfoSink &, const TString &caller, const TString &callee)
 
void merge (TInfoSink &, TIntermediate &)
 
void finalCheck (TInfoSink &, bool keepUncalled)
 
void addIoAccessed (const TString &name)
 
bool inIoAccessed (const TString &name) const
 
int addUsedLocation (const TQualifier &, const TType &, bool &typeCollision)
 
int checkLocationRange (int set, const TIoRange &range, const TType &, bool &typeCollision)
 
int addUsedOffsets (int binding, int offset, int numOffsets)
 
bool addUsedConstantId (int id)
 
bool setXfbBufferStride (int buffer, unsigned stride)
 
unsigned getXfbStride (int buffer) const
 
int addXfbBufferOffset (const TType &)
 
unsigned int computeTypeXfbSize (const TType &, bool &containsDouble) const
 
bool promote (TIntermOperator *)
 
const char * addSemanticName (const TString &name)
 
void setSourceFile (const char *file)
 
const std::string & getSourceFile () const
 
void addSourceText (const char *text)
 
const std::string & getSourceText () const
 
void addProcesses (const std::vector< std::string > &p)
 
void addProcess (const std::string &process)
 
void addProcessArgument (const std::string &arg)
 
const std::vector< std::string > & getProcesses () const
 
void setNeedsLegalization ()
 
bool needsLegalization () const
 
void setBinaryDoubleOutput ()
 
bool getBinaryDoubleOutput ()
 

Static Public Member Functions

static const TIntermTyped * findLValueBase (const TIntermTyped *, bool swizzleOkay)
 
static int computeTypeLocationSize (const TType &, EShLanguage)
 
static int computeTypeUniformLocationSize (const TType &)
 
static int getBaseAlignmentScalar (const TType &, int &size)
 
static int getBaseAlignment (const TType &, int &size, int &stride, bool std140, bool rowMajor)
 
static bool improperStraddle (const TType &type, int size, int offset)
 

Public Attributes

const char *const implicitThisName
 
const char *const implicitCounterName
 

Protected Types

typedef std::list< TCall > TGraph
 

Protected Member Functions

TIntermSymbol * addSymbol (int Id, const TString &, const TType &, const TConstUnionArray &, TIntermTyped *subtree, const TSourceLoc &)
 
void error (TInfoSink &infoSink, const char *)
 
void warn (TInfoSink &infoSink, const char *)
 
void mergeBodies (TInfoSink &, TIntermSequence &globals, const TIntermSequence &unitGlobals)
 
void mergeLinkerObjects (TInfoSink &, TIntermSequence &linkerObjects, const TIntermSequence &unitLinkerObjects)
 
void mergeImplicitArraySizes (TType &, const TType &)
 
void mergeErrorCheck (TInfoSink &, const TIntermSymbol &, const TIntermSymbol &, bool crossStage)
 
void checkCallGraphCycles (TInfoSink &)
 
void checkCallGraphBodies (TInfoSink &, bool keepUncalled)
 
void inOutLocationCheck (TInfoSink &)
 
TIntermSequence & findLinkerObjects () const
 
bool userOutputUsed () const
 
bool isSpecializationOperation (const TIntermOperator &) const
 
bool isNonuniformPropagating (TOperator) const
 
bool promoteUnary (TIntermUnary &)
 
bool promoteBinary (TIntermBinary &)
 
void addSymbolLinkageNode (TIntermAggregate *&linkage, TSymbolTable &, const TString &)
 
bool promoteAggregate (TIntermAggregate &)
 
void pushSelector (TIntermSequence &, const TVectorSelector &, const TSourceLoc &)
 
void pushSelector (TIntermSequence &, const TMatrixSelector &, const TSourceLoc &)
 
bool specConstantPropagates (const TIntermTyped &, const TIntermTyped &)
 
void performTextureUpgradeAndSamplerRemovalTransformation (TIntermNode *root)
 
bool isConversionAllowed (TOperator op, TIntermTyped *node) const
 
TIntermUnary * createConversion (TBasicType convertTo, TIntermTyped *node) const
 
std::tuple< TBasicType, TBasicType > getConversionDestinatonType (TBasicType type0, TBasicType type1, TOperator op) const
 
bool extensionRequested (const char *extension) const
 

Static Protected Member Functions

static const char * getResourceName (TResourceType)
 

Protected Attributes

const EShLanguage language
 
EShSource source
 
std::string entryPointName
 
std::string entryPointMangledName
 
EProfile profile
 
int version
 
SpvVersion spvVersion
 
TIntermNode * treeRoot
 
std::set< std::string > requestedExtensions
 
TBuiltInResource resources
 
int numEntryPoints
 
int numErrors
 
int numPushConstants
 
bool recursive
 
int invocations
 
int vertices
 
TLayoutGeometry inputPrimitive
 
TLayoutGeometry outputPrimitive
 
bool pixelCenterInteger
 
bool originUpperLeft
 
TVertexSpacing vertexSpacing
 
TVertexOrder vertexOrder
 
bool pointMode
 
int localSize [3]
 
int localSizeSpecId [3]
 
bool earlyFragmentTests
 
bool postDepthCoverage
 
TLayoutDepth depthLayout
 
bool depthReplacing
 
bool hlslFunctionality1
 
int blendEquations
 
bool xfbMode
 
bool multiStream
 
std::array< unsigned int, EResCount > shiftBinding
 
std::array< std::map< int, int >, EResCount > shiftBindingForSet
 
std::vector< std::string > resourceSetBinding
 
bool autoMapBindings
 
bool autoMapLocations
 
bool invertY
 
bool flattenUniformArrays
 
bool useUnknownFormat
 
bool hlslOffsets
 
bool useStorageBuffer
 
bool hlslIoMapping
 
TGraph callGraph
 
std::set< TString > ioAccessed
 
std::vector< TIoRange > usedIo [4]
 
std::vector< TOffsetRange > usedAtomics
 
std::vector< TXfbBuffer > xfbBuffers
 
std::unordered_set< int > usedConstantId
 
std::set< TString > semanticNameSet
 
EShTextureSamplerTransformMode textureSamplerTransformMode
 
std::string sourceFile
 
std::string sourceText
 
TProcesses processes
 
bool needToLegalize
 
bool binaryDoubleOutput
 

Private Member Functions

void operator= (TIntermediate &)
 

Member Typedef Documentation

◆ TGraph

typedef std::list<TCall> glslang::TIntermediate::TGraph
protected

Constructor & Destructor Documentation

◆ TIntermediate()

glslang::TIntermediate::TIntermediate ( EShLanguage  l,
int  v = 0,
EProfile  p = ENoProfile 
)
inlineexplicit

Member Function Documentation

◆ addAssign()

TIntermTyped * glslang::TIntermediate::addAssign ( TOperator  op,
TIntermTyped *  left,
TIntermTyped *  right,
TSourceLoc  loc 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ addBinaryMath()

TIntermTyped * glslang::TIntermediate::addBinaryMath ( TOperator  op,
TIntermTyped *  left,
TIntermTyped *  right,
TSourceLoc  loc 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ addBinaryNode() [1/2]

TIntermBinary * glslang::TIntermediate::addBinaryNode ( TOperator  op,
TIntermTyped *  left,
TIntermTyped *  right,
TSourceLoc  loc 
) const
Here is the call graph for this function:
Here is the caller graph for this function:

◆ addBinaryNode() [2/2]

TIntermBinary * glslang::TIntermediate::addBinaryNode ( TOperator  op,
TIntermTyped *  left,
TIntermTyped *  right,
TSourceLoc  loc,
const TType &  type 
) const
Here is the call graph for this function:

◆ addBiShapeConversion()

void glslang::TIntermediate::addBiShapeConversion ( TOperator  op,
TIntermTyped *&  lhsNode,
TIntermTyped *&  rhsNode 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ addBlendEquation()

void glslang::TIntermediate::addBlendEquation ( TBlendEquationShift  b)
inline
Here is the caller graph for this function:

◆ addBranch() [1/2]

TIntermBranch * glslang::TIntermediate::addBranch ( TOperator  branchOp,
const TSourceLoc &  loc 
)
Here is the caller graph for this function:

◆ addBranch() [2/2]

TIntermBranch * glslang::TIntermediate::addBranch ( TOperator  branchOp,
TIntermTyped *  expression,
const TSourceLoc &  loc 
)
Here is the call graph for this function:

◆ addBuiltInFunctionCall()

TIntermTyped * glslang::TIntermediate::addBuiltInFunctionCall ( const TSourceLoc &  line,
TOperator  op,
bool  unary,
TIntermNode *  childNode,
const TType &  returnType 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ addComma()

TIntermTyped * glslang::TIntermediate::addComma ( TIntermTyped *  left,
TIntermTyped *  right,
const TSourceLoc &  loc 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ addConstantUnion() [1/12]

TIntermConstantUnion * glslang::TIntermediate::addConstantUnion ( const TConstUnionArray &  unionArray,
const TType &  t,
const TSourceLoc &  loc,
bool  literal = false 
) const
Here is the call graph for this function:
Here is the caller graph for this function:

◆ addConstantUnion() [2/12]

TIntermConstantUnion * glslang::TIntermediate::addConstantUnion ( signed char  i8,
const TSourceLoc &  loc,
bool  literal = false 
) const
Here is the call graph for this function:

◆ addConstantUnion() [3/12]

TIntermConstantUnion * glslang::TIntermediate::addConstantUnion ( unsigned char  u8,
const TSourceLoc &  loc,
bool  literal = false 
) const
Here is the call graph for this function:

◆ addConstantUnion() [4/12]

TIntermConstantUnion * glslang::TIntermediate::addConstantUnion ( signed short  i16,
const TSourceLoc &  loc,
bool  literal = false 
) const
Here is the call graph for this function:

◆ addConstantUnion() [5/12]

TIntermConstantUnion * glslang::TIntermediate::addConstantUnion ( unsigned short  u16,
const TSourceLoc &  loc,
bool  literal = false 
) const
Here is the call graph for this function:

◆ addConstantUnion() [6/12]

TIntermConstantUnion * glslang::TIntermediate::addConstantUnion ( int  i,
const TSourceLoc &  loc,
bool  literal = false 
) const
Here is the call graph for this function:

◆ addConstantUnion() [7/12]

TIntermConstantUnion * glslang::TIntermediate::addConstantUnion ( unsigned int  u,
const TSourceLoc &  loc,
bool  literal = false 
) const
Here is the call graph for this function:

◆ addConstantUnion() [8/12]

TIntermConstantUnion * glslang::TIntermediate::addConstantUnion ( long long  i64,
const TSourceLoc &  loc,
bool  literal = false 
) const
Here is the call graph for this function:

◆ addConstantUnion() [9/12]

TIntermConstantUnion * glslang::TIntermediate::addConstantUnion ( unsigned long long  u64,
const TSourceLoc &  loc,
bool  literal = false 
) const
Here is the call graph for this function:

◆ addConstantUnion() [10/12]

TIntermConstantUnion * glslang::TIntermediate::addConstantUnion ( bool  b,
const TSourceLoc &  loc,
bool  literal = false 
) const
Here is the call graph for this function:

◆ addConstantUnion() [11/12]

TIntermConstantUnion * glslang::TIntermediate::addConstantUnion ( double  d,
TBasicType  baseType,
const TSourceLoc &  loc,
bool  literal = false 
) const
Here is the call graph for this function:

◆ addConstantUnion() [12/12]

TIntermConstantUnion * glslang::TIntermediate::addConstantUnion ( const TString *  s,
const TSourceLoc &  loc,
bool  literal = false 
) const
Here is the call graph for this function:

◆ addConversion() [1/2]

TIntermTyped * glslang::TIntermediate::addConversion ( TOperator  op,
const TType &  type,
TIntermTyped *  node 
) const
Here is the call graph for this function:
Here is the caller graph for this function:

◆ addConversion() [2/2]

std::tuple< TIntermTyped *, TIntermTyped * > glslang::TIntermediate::addConversion ( TOperator  op,
TIntermTyped *  node0,
TIntermTyped *  node1 
) const
Here is the call graph for this function:

◆ addCounterBufferName()

template<class T >
T glslang::TIntermediate::addCounterBufferName ( const T &  name) const
inline
Here is the caller graph for this function:

◆ addForLoop()

TIntermAggregate * glslang::TIntermediate::addForLoop ( TIntermNode *  body,
TIntermNode *  initializer,
TIntermTyped *  test,
TIntermTyped *  terminal,
bool  testFirst,
const TSourceLoc &  loc,
TIntermLoop *&  node 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ addIndex()

TIntermTyped * glslang::TIntermediate::addIndex ( TOperator  op,
TIntermTyped *  base,
TIntermTyped *  index,
TSourceLoc  loc 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ addIoAccessed()

void glslang::TIntermediate::addIoAccessed ( const TString &  name)
inline
Here is the caller graph for this function:

◆ addLoop()

TIntermLoop * glslang::TIntermediate::addLoop ( TIntermNode *  body,
TIntermTyped *  test,
TIntermTyped *  terminal,
bool  testFirst,
const TSourceLoc &  loc 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ addMethod()

TIntermTyped * glslang::TIntermediate::addMethod ( TIntermTyped *  object,
const TType &  type,
const TString *  name,
const TSourceLoc &  loc 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ addProcess()

void glslang::TIntermediate::addProcess ( const std::string &  process)
inline
Here is the call graph for this function:

◆ addProcessArgument()

void glslang::TIntermediate::addProcessArgument ( const std::string &  arg)
inline
Here is the call graph for this function:

◆ addProcesses()

void glslang::TIntermediate::addProcesses ( const std::vector< std::string > &  p)
inline
Here is the call graph for this function:
Here is the caller graph for this function:

◆ addPushConstantCount()

void glslang::TIntermediate::addPushConstantCount ( )
inline
Here is the caller graph for this function:

◆ addRequestedExtension()

void glslang::TIntermediate::addRequestedExtension ( const char *  extension)
inline
Here is the caller graph for this function:

◆ addSelection() [1/2]

TIntermSelection * glslang::TIntermediate::addSelection ( TIntermTyped *  cond,
TIntermNodePair  code,
const TSourceLoc &  loc 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ addSelection() [2/2]

TIntermTyped * glslang::TIntermediate::addSelection ( TIntermTyped *  cond,
TIntermTyped *  trueBlock,
TIntermTyped *  falseBlock,
const TSourceLoc &  loc 
)
Here is the call graph for this function:

◆ addSemanticName()

const char* glslang::TIntermediate::addSemanticName ( const TString &  name)
inline
Here is the caller graph for this function:

◆ addShapeConversion()

TIntermTyped * glslang::TIntermediate::addShapeConversion ( const TType &  type,
TIntermTyped *  node 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ addSourceText()

void glslang::TIntermediate::addSourceText ( const char *  text)
inline

◆ addSwizzle()

template<typename selectorType >
TIntermTyped * glslang::TIntermediate::addSwizzle ( TSwizzleSelectors< selectorType > &  selector,
const TSourceLoc &  loc 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ addSymbol() [1/5]

TIntermSymbol * glslang::TIntermediate::addSymbol ( const TVariable &  variable)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ addSymbol() [2/5]

TIntermSymbol * glslang::TIntermediate::addSymbol ( const TVariable &  variable,
const TSourceLoc &  loc 
)
Here is the call graph for this function:

◆ addSymbol() [3/5]

TIntermSymbol * glslang::TIntermediate::addSymbol ( const TType &  type,
const TSourceLoc &  loc 
)
Here is the call graph for this function:

◆ addSymbol() [4/5]

TIntermSymbol * glslang::TIntermediate::addSymbol ( const TIntermSymbol &  intermSymbol)
Here is the call graph for this function:

◆ addSymbol() [5/5]

TIntermSymbol * glslang::TIntermediate::addSymbol ( int  Id,
const TString &  name,
const TType &  type,
const TConstUnionArray &  constArray,
TIntermTyped *  subtree,
const TSourceLoc &  loc 
)
protected
Here is the call graph for this function:

◆ addSymbolLinkageNode() [1/2]

void glslang::TIntermediate::addSymbolLinkageNode ( TIntermAggregate *&  linkage,
const TSymbol &  symbol 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ addSymbolLinkageNode() [2/2]

void glslang::TIntermediate::addSymbolLinkageNode ( TIntermAggregate *&  linkage,
TSymbolTable &  symbolTable,
const TString &  name 
)
protected
Here is the call graph for this function:

◆ addSymbolLinkageNodes()

void glslang::TIntermediate::addSymbolLinkageNodes ( TIntermAggregate *&  linkage,
EShLanguage  language,
TSymbolTable &  symbolTable 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ addToCallGraph()

void glslang::TIntermediate::addToCallGraph ( TInfoSink &  ,
const TString &  caller,
const TString &  callee 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ addUnaryMath()

TIntermTyped * glslang::TIntermediate::addUnaryMath ( TOperator  op,
TIntermTyped *  child,
TSourceLoc  loc 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ addUnaryNode() [1/2]

TIntermUnary * glslang::TIntermediate::addUnaryNode ( TOperator  op,
TIntermTyped *  child,
TSourceLoc  loc 
) const
Here is the call graph for this function:
Here is the caller graph for this function:

◆ addUnaryNode() [2/2]

TIntermUnary * glslang::TIntermediate::addUnaryNode ( TOperator  op,
TIntermTyped *  child,
TSourceLoc  loc,
const TType &  type 
) const
Here is the call graph for this function:

◆ addUniShapeConversion()

TIntermTyped * glslang::TIntermediate::addUniShapeConversion ( TOperator  op,
const TType &  type,
TIntermTyped *  node 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ addUsedConstantId()

bool glslang::TIntermediate::addUsedConstantId ( int  id)
Here is the caller graph for this function:

◆ addUsedLocation()

int glslang::TIntermediate::addUsedLocation ( const TQualifier &  qualifier,
const TType &  type,
bool &  typeCollision 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ addUsedOffsets()

int glslang::TIntermediate::addUsedOffsets ( int  binding,
int  offset,
int  numOffsets 
)
Here is the caller graph for this function:

◆ addXfbBufferOffset()

int glslang::TIntermediate::addXfbBufferOffset ( const TType &  type)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ areAllChildConst()

bool glslang::TIntermediate::areAllChildConst ( TIntermAggregate *  aggrNode)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ canImplicitlyPromote()

bool glslang::TIntermediate::canImplicitlyPromote ( TBasicType  from,
TBasicType  to,
TOperator  op = EOpNull 
) const
Here is the call graph for this function:
Here is the caller graph for this function:

◆ checkCallGraphBodies()

void glslang::TIntermediate::checkCallGraphBodies ( TInfoSink &  infoSink,
bool  keepUncalled 
)
protected
Here is the call graph for this function:
Here is the caller graph for this function:

◆ checkCallGraphCycles()

void glslang::TIntermediate::checkCallGraphCycles ( TInfoSink &  infoSink)
protected
Here is the call graph for this function:
Here is the caller graph for this function:

◆ checkLocationRange()

int glslang::TIntermediate::checkLocationRange ( int  set,
const TIoRange &  range,
const TType &  type,
bool &  typeCollision 
)
Here is the caller graph for this function:

◆ computeTypeLocationSize()

int glslang::TIntermediate::computeTypeLocationSize ( const TType &  type,
EShLanguage  stage 
)
static
Here is the caller graph for this function:

◆ computeTypeUniformLocationSize()

int glslang::TIntermediate::computeTypeUniformLocationSize ( const TType &  type)
static
Here is the caller graph for this function:

◆ computeTypeXfbSize()

unsigned int glslang::TIntermediate::computeTypeXfbSize ( const TType &  type,
bool &  containsDouble 
) const
Here is the call graph for this function:
Here is the caller graph for this function:

◆ createConversion()

TIntermUnary * glslang::TIntermediate::createConversion ( TBasicType  convertTo,
TIntermTyped *  node 
) const
protected
Here is the call graph for this function:
Here is the caller graph for this function:

◆ error()

void glslang::TIntermediate::error ( TInfoSink &  infoSink,
const char *  message 
)
protected
Here is the call graph for this function:
Here is the caller graph for this function:

◆ extensionRequested()

bool glslang::TIntermediate::extensionRequested ( const char *  extension) const
inlineprotected
Here is the caller graph for this function:

◆ finalCheck()

void glslang::TIntermediate::finalCheck ( TInfoSink &  infoSink,
bool  keepUncalled 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ findLinkerObjects()

TIntermSequence & glslang::TIntermediate::findLinkerObjects ( ) const
protected
Here is the call graph for this function:
Here is the caller graph for this function:

◆ findLValueBase()

const TIntermTyped * glslang::TIntermediate::findLValueBase ( const TIntermTyped *  node,
bool  swizzleOkay 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ fold()

TIntermTyped * glslang::TIntermediate::fold ( TIntermAggregate *  aggrNode)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ foldConstructor()

TIntermTyped * glslang::TIntermediate::foldConstructor ( TIntermAggregate *  aggrNode)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ foldDereference()

TIntermTyped * glslang::TIntermediate::foldDereference ( TIntermTyped *  node,
int  index,
const TSourceLoc &  loc 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ foldSwizzle()

TIntermTyped * glslang::TIntermediate::foldSwizzle ( TIntermTyped *  node,
TSwizzleSelectors< TVectorSelector > &  fields,
const TSourceLoc &  loc 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ getAutoMapBindings()

bool glslang::TIntermediate::getAutoMapBindings ( ) const
inline
Here is the caller graph for this function:

◆ getAutoMapLocations()

bool glslang::TIntermediate::getAutoMapLocations ( ) const
inline
Here is the caller graph for this function:

◆ getBaseAlignment()

int glslang::TIntermediate::getBaseAlignment ( const TType &  type,
int &  size,
int &  stride,
bool  std140,
bool  rowMajor 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ getBaseAlignmentScalar()

int glslang::TIntermediate::getBaseAlignmentScalar ( const TType &  type,
int &  size 
)
static
Here is the caller graph for this function:

◆ getBinaryDoubleOutput()

bool glslang::TIntermediate::getBinaryDoubleOutput ( )
inline
Here is the caller graph for this function:

◆ getBlendEquations()

unsigned int glslang::TIntermediate::getBlendEquations ( ) const
inline

◆ getConversionDestinatonType()

std::tuple< TBasicType, TBasicType > glslang::TIntermediate::getConversionDestinatonType ( TBasicType  type0,
TBasicType  type1,
TOperator  op 
) const
protected
Here is the call graph for this function:
Here is the caller graph for this function:

◆ getDepth()

TLayoutDepth glslang::TIntermediate::getDepth ( ) const
inline

◆ getEarlyFragmentTests()

bool glslang::TIntermediate::getEarlyFragmentTests ( ) const
inline
Here is the caller graph for this function:

◆ getEntryPointMangledName()

const std::string& glslang::TIntermediate::getEntryPointMangledName ( ) const
inline
Here is the caller graph for this function:

◆ getEntryPointName()

const std::string& glslang::TIntermediate::getEntryPointName ( ) const
inline
Here is the caller graph for this function:

◆ getFlattenUniformArrays()

bool glslang::TIntermediate::getFlattenUniformArrays ( ) const
inline
Here is the caller graph for this function:

◆ getHlslFunctionality1()

bool glslang::TIntermediate::getHlslFunctionality1 ( ) const
inline

◆ getInputPrimitive()

TLayoutGeometry glslang::TIntermediate::getInputPrimitive ( ) const
inline
Here is the caller graph for this function:

◆ getInvertY()

bool glslang::TIntermediate::getInvertY ( ) const
inline
Here is the caller graph for this function:

◆ getInvocations()

int glslang::TIntermediate::getInvocations ( ) const
inline

◆ getLocalSize()

unsigned int glslang::TIntermediate::getLocalSize ( int  dim) const
inline
Here is the caller graph for this function:

◆ getLocalSizeSpecId()

int glslang::TIntermediate::getLocalSizeSpecId ( int  dim) const
inline

◆ getNoStorageFormat()

bool glslang::TIntermediate::getNoStorageFormat ( ) const
inline
Here is the caller graph for this function:

◆ getNumEntryPoints()

int glslang::TIntermediate::getNumEntryPoints ( ) const
inline
Here is the caller graph for this function:

◆ getNumErrors()

int glslang::TIntermediate::getNumErrors ( ) const
inline
Here is the caller graph for this function:

◆ getOriginUpperLeft()

bool glslang::TIntermediate::getOriginUpperLeft ( ) const
inline
Here is the caller graph for this function:

◆ getOutputPrimitive()

TLayoutGeometry glslang::TIntermediate::getOutputPrimitive ( ) const
inline
Here is the caller graph for this function:

◆ getPixelCenterInteger()

bool glslang::TIntermediate::getPixelCenterInteger ( ) const
inline
Here is the caller graph for this function:

◆ getPointMode()

bool glslang::TIntermediate::getPointMode ( ) const
inline

◆ getPostDepthCoverage()

bool glslang::TIntermediate::getPostDepthCoverage ( ) const
inline
Here is the caller graph for this function:

◆ getProcesses()

const std::vector<std::string>& glslang::TIntermediate::getProcesses ( ) const
inline
Here is the call graph for this function:

◆ getProfile()

EProfile glslang::TIntermediate::getProfile ( ) const
inline
Here is the caller graph for this function:

◆ getRequestedExtensions()

const std::set<std::string>& glslang::TIntermediate::getRequestedExtensions ( ) const
inline

◆ getResourceName()

const char * glslang::TIntermediate::getResourceName ( TResourceType  res)
staticprotected
Here is the caller graph for this function:

◆ getResourceSetBinding()

const std::vector<std::string>& glslang::TIntermediate::getResourceSetBinding ( ) const
inline
Here is the caller graph for this function:

◆ getShiftBinding()

unsigned int glslang::TIntermediate::getShiftBinding ( TResourceType  res) const
inline
Here is the caller graph for this function:

◆ getShiftBindingForSet()

int glslang::TIntermediate::getShiftBindingForSet ( TResourceType  res,
unsigned int  set 
) const
inline
Here is the caller graph for this function:

◆ getSource()

EShSource glslang::TIntermediate::getSource ( ) const
inline
Here is the caller graph for this function:

◆ getSourceFile()

const std::string& glslang::TIntermediate::getSourceFile ( ) const
inline

◆ getSourceText()

const std::string& glslang::TIntermediate::getSourceText ( ) const
inline

◆ getSpv()

const SpvVersion& glslang::TIntermediate::getSpv ( ) const
inline
Here is the caller graph for this function:

◆ getStage()

EShLanguage glslang::TIntermediate::getStage ( ) const
inline
Here is the caller graph for this function:

◆ getTreeRoot()

TIntermNode* glslang::TIntermediate::getTreeRoot ( ) const
inline
Here is the caller graph for this function:

◆ getVersion()

int glslang::TIntermediate::getVersion ( ) const
inline
Here is the caller graph for this function:

◆ getVertexOrder()

TVertexOrder glslang::TIntermediate::getVertexOrder ( ) const
inline

◆ getVertexSpacing()

TVertexSpacing glslang::TIntermediate::getVertexSpacing ( ) const
inline

◆ getVertices()

int glslang::TIntermediate::getVertices ( ) const
inline
Here is the caller graph for this function:

◆ getXfbMode()

bool glslang::TIntermediate::getXfbMode ( ) const
inline

◆ getXfbStride()

unsigned glslang::TIntermediate::getXfbStride ( int  buffer) const
inline

◆ growAggregate() [1/2]

TIntermAggregate * glslang::TIntermediate::growAggregate ( TIntermNode *  left,
TIntermNode *  right 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ growAggregate() [2/2]

TIntermAggregate * glslang::TIntermediate::growAggregate ( TIntermNode *  left,
TIntermNode *  right,
const TSourceLoc &  loc 
)
Here is the call graph for this function:

◆ hasCounterBufferName()

bool glslang::TIntermediate::hasCounterBufferName ( const TString &  name) const
inline
Here is the call graph for this function:

◆ hasShiftBindingForSet()

bool glslang::TIntermediate::hasShiftBindingForSet ( TResourceType  res) const
inline
Here is the caller graph for this function:

◆ improperStraddle()

bool glslang::TIntermediate::improperStraddle ( const TType &  type,
int  size,
int  offset 
)
static

◆ incrementEntryPointCount()

void glslang::TIntermediate::incrementEntryPointCount ( )
inline
Here is the caller graph for this function:

◆ inIoAccessed()

bool glslang::TIntermediate::inIoAccessed ( const TString &  name) const
inline
Here is the caller graph for this function:

◆ inOutLocationCheck()

void glslang::TIntermediate::inOutLocationCheck ( TInfoSink &  infoSink)
protected
Here is the call graph for this function:
Here is the caller graph for this function:

◆ isConversionAllowed()

bool glslang::TIntermediate::isConversionAllowed ( TOperator  op,
TIntermTyped *  node 
) const
protected
Here is the call graph for this function:
Here is the caller graph for this function:

◆ isDepthReplacing()

bool glslang::TIntermediate::isDepthReplacing ( ) const
inline

◆ isFPConversion()

bool glslang::TIntermediate::isFPConversion ( TBasicType  from,
TBasicType  to 
) const
Here is the caller graph for this function:

◆ isFPIntegralConversion()

bool glslang::TIntermediate::isFPIntegralConversion ( TBasicType  from,
TBasicType  to 
) const
Here is the caller graph for this function:

◆ isFPPromotion()

bool glslang::TIntermediate::isFPPromotion ( TBasicType  from,
TBasicType  to 
) const
Here is the caller graph for this function:

◆ isIntegralConversion()

bool glslang::TIntermediate::isIntegralConversion ( TBasicType  from,
TBasicType  to 
) const
Here is the caller graph for this function:

◆ isIntegralPromotion()

bool glslang::TIntermediate::isIntegralPromotion ( TBasicType  from,
TBasicType  to 
) const
Here is the caller graph for this function:

◆ isMultiStream()

bool glslang::TIntermediate::isMultiStream ( ) const
inline

◆ isNonuniformPropagating()

bool glslang::TIntermediate::isNonuniformPropagating ( TOperator  op) const
protected
Here is the caller graph for this function:

◆ isRecursive()

bool glslang::TIntermediate::isRecursive ( ) const
inline
Here is the caller graph for this function:

◆ isSpecializationOperation()

bool glslang::TIntermediate::isSpecializationOperation ( const TIntermOperator &  node) const
protected
Here is the call graph for this function:
Here is the caller graph for this function:

◆ makeAggregate() [1/3]

TIntermAggregate * glslang::TIntermediate::makeAggregate ( TIntermNode *  node)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ makeAggregate() [2/3]

TIntermAggregate * glslang::TIntermediate::makeAggregate ( TIntermNode *  node,
const TSourceLoc &  loc 
)
Here is the call graph for this function:

◆ makeAggregate() [3/3]

TIntermAggregate * glslang::TIntermediate::makeAggregate ( const TSourceLoc &  loc)
Here is the call graph for this function:

◆ mapTypeToConstructorOp()

TOperator glslang::TIntermediate::mapTypeToConstructorOp ( const TType &  type) const
Here is the caller graph for this function:

◆ merge()

void glslang::TIntermediate::merge ( TInfoSink &  infoSink,
TIntermediate &  unit 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ mergeBodies()

void glslang::TIntermediate::mergeBodies ( TInfoSink &  infoSink,
TIntermSequence &  globals,
const TIntermSequence &  unitGlobals 
)
protected
Here is the call graph for this function:
Here is the caller graph for this function:

◆ mergeErrorCheck()

void glslang::TIntermediate::mergeErrorCheck ( TInfoSink &  infoSink,
const TIntermSymbol &  symbol,
const TIntermSymbol &  unitSymbol,
bool  crossStage 
)
protected
Here is the call graph for this function:
Here is the caller graph for this function:

◆ mergeImplicitArraySizes()

void glslang::TIntermediate::mergeImplicitArraySizes ( TType &  type,
const TType &  unitType 
)
protected
Here is the call graph for this function:
Here is the caller graph for this function:

◆ mergeLinkerObjects()

void glslang::TIntermediate::mergeLinkerObjects ( TInfoSink &  infoSink,
TIntermSequence &  linkerObjects,
const TIntermSequence &  unitLinkerObjects 
)
protected
Here is the call graph for this function:
Here is the caller graph for this function:

◆ needsLegalization()

bool glslang::TIntermediate::needsLegalization ( ) const
inline
Here is the caller graph for this function:

◆ operator=()

void glslang::TIntermediate::operator= ( TIntermediate &  )
private

◆ output()

void glslang::TIntermediate::output ( TInfoSink &  infoSink,
bool  tree 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ parseConstTree()

bool glslang::TIntermediate::parseConstTree ( TIntermNode *  root,
TConstUnionArray  unionArray,
TOperator  constructorType,
const TType &  t,
bool  singleConstantParam = false 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ performTextureUpgradeAndSamplerRemovalTransformation()

void glslang::TIntermediate::performTextureUpgradeAndSamplerRemovalTransformation ( TIntermNode *  root)
protected
Here is the call graph for this function:
Here is the caller graph for this function:

◆ postProcess()

bool glslang::TIntermediate::postProcess ( TIntermNode *  root,
EShLanguage   
)
Here is the call graph for this function:

◆ promote()

bool glslang::TIntermediate::promote ( TIntermOperator *  node)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ promoteAggregate()

bool glslang::TIntermediate::promoteAggregate ( TIntermAggregate &  node)
protected
Here is the call graph for this function:
Here is the caller graph for this function:

◆ promoteBinary()

bool glslang::TIntermediate::promoteBinary ( TIntermBinary &  node)
protected
Here is the call graph for this function:
Here is the caller graph for this function:

◆ promoteConstantUnion()

TIntermTyped * glslang::TIntermediate::promoteConstantUnion ( TBasicType  promoteTo,
TIntermConstantUnion *  node 
) const
Here is the call graph for this function:
Here is the caller graph for this function:

◆ promoteUnary()

bool glslang::TIntermediate::promoteUnary ( TIntermUnary &  node)
protected
Here is the call graph for this function:
Here is the caller graph for this function:

◆ pushSelector() [1/2]

void glslang::TIntermediate::pushSelector ( TIntermSequence &  sequence,
const TVectorSelector &  selector,
const TSourceLoc &  loc 
)
protected
Here is the call graph for this function:
Here is the caller graph for this function:

◆ pushSelector() [2/2]

void glslang::TIntermediate::pushSelector ( TIntermSequence &  sequence,
const TMatrixSelector &  selector,
const TSourceLoc &  loc 
)
protected
Here is the call graph for this function:

◆ removeTree()

void glslang::TIntermediate::removeTree ( )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ setAggregateOperator()

TIntermTyped * glslang::TIntermediate::setAggregateOperator ( TIntermNode *  node,
TOperator  op,
const TType &  type,
TSourceLoc  loc 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ setAutoMapBindings()

void glslang::TIntermediate::setAutoMapBindings ( bool  map)
inline
Here is the call graph for this function:
Here is the caller graph for this function:

◆ setAutoMapLocations()

void glslang::TIntermediate::setAutoMapLocations ( bool  map)
inline
Here is the call graph for this function:
Here is the caller graph for this function:

◆ setBinaryDoubleOutput()

void glslang::TIntermediate::setBinaryDoubleOutput ( )
inline
Here is the caller graph for this function:

◆ setDepth()

bool glslang::TIntermediate::setDepth ( TLayoutDepth  d)
inline
Here is the caller graph for this function:

◆ setDepthReplacing()

void glslang::TIntermediate::setDepthReplacing ( )
inline
Here is the caller graph for this function:

◆ setEarlyFragmentTests()

void glslang::TIntermediate::setEarlyFragmentTests ( )
inline
Here is the caller graph for this function:

◆ setEntryPointMangledName()

void glslang::TIntermediate::setEntryPointMangledName ( const char *  ep)
inline
Here is the caller graph for this function:

◆ setEntryPointName()

void glslang::TIntermediate::setEntryPointName ( const char *  ep)
inline
Here is the call graph for this function:
Here is the caller graph for this function:

◆ setFlattenUniformArrays()

void glslang::TIntermediate::setFlattenUniformArrays ( bool  flatten)
inline
Here is the call graph for this function:
Here is the caller graph for this function:

◆ setHlslFunctionality1()

void glslang::TIntermediate::setHlslFunctionality1 ( )
inline

◆ setHlslIoMapping()

void glslang::TIntermediate::setHlslIoMapping ( bool  b)
inline
Here is the call graph for this function:
Here is the caller graph for this function:

◆ setHlslOffsets()

void glslang::TIntermediate::setHlslOffsets ( )
inline
Here is the call graph for this function:

◆ setInputPrimitive()

bool glslang::TIntermediate::setInputPrimitive ( TLayoutGeometry  p)
inline
Here is the caller graph for this function:

◆ setInvertY()

void glslang::TIntermediate::setInvertY ( bool  invert)
inline
Here is the call graph for this function:
Here is the caller graph for this function:

◆ setInvocations()

bool glslang::TIntermediate::setInvocations ( int  i)
inline
Here is the caller graph for this function:

◆ setLimits()

void glslang::TIntermediate::setLimits ( const TBuiltInResource &  r)
inline
Here is the caller graph for this function:

◆ setLocalSize()

bool glslang::TIntermediate::setLocalSize ( int  dim,
int  size 
)
inline
Here is the caller graph for this function:

◆ setLocalSizeSpecId()

bool glslang::TIntermediate::setLocalSizeSpecId ( int  dim,
int  id 
)
inline
Here is the caller graph for this function:

◆ setMultiStream()

void glslang::TIntermediate::setMultiStream ( )
inline
Here is the caller graph for this function:

◆ setNeedsLegalization()

void glslang::TIntermediate::setNeedsLegalization ( )
inline
Here is the caller graph for this function:

◆ setNoStorageFormat()

void glslang::TIntermediate::setNoStorageFormat ( bool  b)
inline
Here is the call graph for this function:
Here is the caller graph for this function:

◆ setOriginUpperLeft()

void glslang::TIntermediate::setOriginUpperLeft ( )
inline
Here is the caller graph for this function:

◆ setOutputPrimitive()

bool glslang::TIntermediate::setOutputPrimitive ( TLayoutGeometry  p)
inline
Here is the caller graph for this function:

◆ setPixelCenterInteger()

void glslang::TIntermediate::setPixelCenterInteger ( )
inline
Here is the caller graph for this function:

◆ setPointMode()

void glslang::TIntermediate::setPointMode ( )
inline
Here is the caller graph for this function:

◆ setPostDepthCoverage()

void glslang::TIntermediate::setPostDepthCoverage ( )
inline
Here is the caller graph for this function:

◆ setProfile()

void glslang::TIntermediate::setProfile ( EProfile  p)
inline

◆ setResourceSetBinding()

void glslang::TIntermediate::setResourceSetBinding ( const std::vector< std::string > &  shift)
inline
Here is the call graph for this function:
Here is the caller graph for this function:

◆ setShiftBinding()

void glslang::TIntermediate::setShiftBinding ( TResourceType  res,
unsigned int  shift 
)
inline
Here is the call graph for this function:
Here is the caller graph for this function:

◆ setShiftBindingForSet()

void glslang::TIntermediate::setShiftBindingForSet ( TResourceType  res,
unsigned int  shift,
unsigned int  set 
)
inline
Here is the call graph for this function:
Here is the caller graph for this function:

◆ setSource()

void glslang::TIntermediate::setSource ( EShSource  s)
inline

◆ setSourceFile()

void glslang::TIntermediate::setSourceFile ( const char *  file)
inline

◆ setSpv()

void glslang::TIntermediate::setSpv ( const SpvVersion &  s)
inline
Here is the call graph for this function:
Here is the caller graph for this function:

◆ setTextureSamplerTransformMode()

void glslang::TIntermediate::setTextureSamplerTransformMode ( EShTextureSamplerTransformMode  mode)
inline
Here is the caller graph for this function:

◆ setTreeRoot()

void glslang::TIntermediate::setTreeRoot ( TIntermNode *  r)
inline
Here is the caller graph for this function:

◆ setUseStorageBuffer()

void glslang::TIntermediate::setUseStorageBuffer ( )
inline
Here is the call graph for this function:
Here is the caller graph for this function:

◆ setVersion()

void glslang::TIntermediate::setVersion ( int  v)
inline

◆ setVertexOrder()

bool glslang::TIntermediate::setVertexOrder ( TVertexOrder  o)
inline
Here is the caller graph for this function:

◆ setVertexSpacing()

bool glslang::TIntermediate::setVertexSpacing ( TVertexSpacing  s)
inline
Here is the caller graph for this function:

◆ setVertices()

bool glslang::TIntermediate::setVertices ( int  m)
inline
Here is the caller graph for this function:

◆ setXfbBufferStride()

bool glslang::TIntermediate::setXfbBufferStride ( int  buffer,
unsigned  stride 
)
inline
Here is the caller graph for this function:

◆ setXfbMode()

void glslang::TIntermediate::setXfbMode ( )
inline
Here is the caller graph for this function:

◆ specConstantPropagates()

bool glslang::TIntermediate::specConstantPropagates ( const TIntermTyped &  node1,
const TIntermTyped &  node2 
)
protected
Here is the call graph for this function:
Here is the caller graph for this function:

◆ userOutputUsed()

bool glslang::TIntermediate::userOutputUsed ( ) const
protected
Here is the call graph for this function:
Here is the caller graph for this function:

◆ usingHlslIoMapping()

bool glslang::TIntermediate::usingHlslIoMapping ( )
inline
Here is the caller graph for this function:

◆ usingHlslOFfsets()

bool glslang::TIntermediate::usingHlslOFfsets ( ) const
inline

◆ usingStorageBuffer()

bool glslang::TIntermediate::usingStorageBuffer ( ) const
inline

◆ warn()

void glslang::TIntermediate::warn ( TInfoSink &  infoSink,
const char *  message 
)
protected
Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ autoMapBindings

bool glslang::TIntermediate::autoMapBindings
protected

◆ autoMapLocations

bool glslang::TIntermediate::autoMapLocations
protected

◆ binaryDoubleOutput

bool glslang::TIntermediate::binaryDoubleOutput
protected

◆ blendEquations

int glslang::TIntermediate::blendEquations
protected

◆ callGraph

TGraph glslang::TIntermediate::callGraph
protected

◆ depthLayout

TLayoutDepth glslang::TIntermediate::depthLayout
protected

◆ depthReplacing

bool glslang::TIntermediate::depthReplacing
protected

◆ earlyFragmentTests

bool glslang::TIntermediate::earlyFragmentTests
protected

◆ entryPointMangledName

std::string glslang::TIntermediate::entryPointMangledName
protected

◆ entryPointName

std::string glslang::TIntermediate::entryPointName
protected

◆ flattenUniformArrays

bool glslang::TIntermediate::flattenUniformArrays
protected

◆ hlslFunctionality1

bool glslang::TIntermediate::hlslFunctionality1
protected

◆ hlslIoMapping

bool glslang::TIntermediate::hlslIoMapping
protected

◆ hlslOffsets

bool glslang::TIntermediate::hlslOffsets
protected

◆ implicitCounterName

const char* const glslang::TIntermediate::implicitCounterName

◆ implicitThisName

const char* const glslang::TIntermediate::implicitThisName

◆ inputPrimitive

TLayoutGeometry glslang::TIntermediate::inputPrimitive
protected

◆ invertY

bool glslang::TIntermediate::invertY
protected

◆ invocations

int glslang::TIntermediate::invocations
protected

◆ ioAccessed

std::set<TString> glslang::TIntermediate::ioAccessed
protected

◆ language

const EShLanguage glslang::TIntermediate::language
protected

◆ localSize

int glslang::TIntermediate::localSize[3]
protected

◆ localSizeSpecId

int glslang::TIntermediate::localSizeSpecId[3]
protected

◆ multiStream

bool glslang::TIntermediate::multiStream
protected

◆ needToLegalize

bool glslang::TIntermediate::needToLegalize
protected

◆ numEntryPoints

int glslang::TIntermediate::numEntryPoints
protected

◆ numErrors

int glslang::TIntermediate::numErrors
protected

◆ numPushConstants

int glslang::TIntermediate::numPushConstants
protected

◆ originUpperLeft

bool glslang::TIntermediate::originUpperLeft
protected

◆ outputPrimitive

TLayoutGeometry glslang::TIntermediate::outputPrimitive
protected

◆ pixelCenterInteger

bool glslang::TIntermediate::pixelCenterInteger
protected

◆ pointMode

bool glslang::TIntermediate::pointMode
protected

◆ postDepthCoverage

bool glslang::TIntermediate::postDepthCoverage
protected

◆ processes

TProcesses glslang::TIntermediate::processes
protected

◆ profile

EProfile glslang::TIntermediate::profile
protected

◆ recursive

bool glslang::TIntermediate::recursive
protected

◆ requestedExtensions

std::set<std::string> glslang::TIntermediate::requestedExtensions
protected

◆ resources

TBuiltInResource glslang::TIntermediate::resources
protected

◆ resourceSetBinding

std::vector<std::string> glslang::TIntermediate::resourceSetBinding
protected

◆ semanticNameSet

std::set<TString> glslang::TIntermediate::semanticNameSet
protected

◆ shiftBinding

std::array<unsigned int, EResCount> glslang::TIntermediate::shiftBinding
protected

◆ shiftBindingForSet

std::array<std::map<int, int>, EResCount> glslang::TIntermediate::shiftBindingForSet
protected

◆ source

EShSource glslang::TIntermediate::source
protected

◆ sourceFile

std::string glslang::TIntermediate::sourceFile
protected

◆ sourceText

std::string glslang::TIntermediate::sourceText
protected

◆ spvVersion

SpvVersion glslang::TIntermediate::spvVersion
protected

◆ textureSamplerTransformMode

EShTextureSamplerTransformMode glslang::TIntermediate::textureSamplerTransformMode
protected

◆ treeRoot

TIntermNode* glslang::TIntermediate::treeRoot
protected

◆ usedAtomics

std::vector<TOffsetRange> glslang::TIntermediate::usedAtomics
protected

◆ usedConstantId

std::unordered_set<int> glslang::TIntermediate::usedConstantId
protected

◆ usedIo

std::vector<TIoRange> glslang::TIntermediate::usedIo[4]
protected

◆ useStorageBuffer

bool glslang::TIntermediate::useStorageBuffer
protected

◆ useUnknownFormat

bool glslang::TIntermediate::useUnknownFormat
protected

◆ version

int glslang::TIntermediate::version
protected

◆ vertexOrder

TVertexOrder glslang::TIntermediate::vertexOrder
protected

◆ vertexSpacing

TVertexSpacing glslang::TIntermediate::vertexSpacing
protected

◆ vertices

int glslang::TIntermediate::vertices
protected

◆ xfbBuffers

std::vector<TXfbBuffer> glslang::TIntermediate::xfbBuffers
protected

◆ xfbMode

bool glslang::TIntermediate::xfbMode
protected

The documentation for this class was generated from the following files: