Add support for SPV_NV_sample_mask_override_coverage

This commit is contained in:
chaoc 2016-12-19 16:29:34 -08:00
parent 7583ed73ef
commit 0ad6a4e60d
14 changed files with 215 additions and 1 deletions

View file

@ -151,6 +151,9 @@ public:
shiftUboBinding(0),
autoMapBindings(false),
flattenUniformArrays(false),
#ifdef NV_EXTENSIONS
layoutOverrideCoverage(false),
#endif
useUnknownFormat(false)
{
localSize[0] = 1;
@ -387,6 +390,11 @@ public:
static int getBaseAlignment(const TType&, int& size, int& stride, bool std140, bool rowMajor);
bool promote(TIntermOperator*);
#ifdef NV_EXTENSIONS
void setLayoutOverrideCoverage() { layoutOverrideCoverage = true; }
bool getLayoutOverrideCoverage() const { return layoutOverrideCoverage; }
#endif
protected:
TIntermSymbol* addSymbol(int Id, const TString&, const TType&, const TConstUnionArray&, TIntermTyped* subtree, const TSourceLoc&);
void error(TInfoSink& infoSink, const char*);
@ -447,6 +455,10 @@ protected:
bool xfbMode;
bool multiStream;
#ifdef NV_EXTENSIONS
bool layoutOverrideCoverage;
#endif
typedef std::list<TCall> TGraph;
TGraph callGraph;