Commit 56702e6d by Nicolas Capens

Eliminate bitfield enum members.

TRAC #23653 Signed-off-by: Shannon Woods Signed-off-by: Geoff Lang Author: Nicolas Capens
parent 5724442b
...@@ -1262,12 +1262,12 @@ TIntermTyped* TIntermConstantUnion::fold(TOperator op, TIntermTyped* constantNod ...@@ -1262,12 +1262,12 @@ TIntermTyped* TIntermConstantUnion::fold(TOperator op, TIntermTyped* constantNod
return 0; return 0;
} }
const int leftCols = getCols(); const char leftCols = getCols();
const int leftRows = getRows(); const char leftRows = getRows();
const int rightCols = constantNode->getType().getCols(); const char rightCols = constantNode->getType().getCols();
const int rightRows = constantNode->getType().getRows(); const char rightRows = constantNode->getType().getRows();
const int resultCols = rightCols; const char resultCols = rightCols;
const int resultRows = leftRows; const char resultRows = leftRows;
tempConstArray = new ConstantUnion[resultCols*resultRows]; tempConstArray = new ConstantUnion[resultCols*resultRows];
for (int row = 0; row < resultRows; row++) for (int row = 0; row < resultRows; row++)
...@@ -1347,8 +1347,8 @@ TIntermTyped* TIntermConstantUnion::fold(TOperator op, TIntermTyped* constantNod ...@@ -1347,8 +1347,8 @@ TIntermTyped* TIntermConstantUnion::fold(TOperator op, TIntermTyped* constantNod
return 0; return 0;
} }
const int matrixCols = getCols(); const char matrixCols = getCols();
const int matrixRows = getRows(); const char matrixRows = getRows();
tempConstArray = new ConstantUnion[matrixRows]; tempConstArray = new ConstantUnion[matrixRows];
...@@ -1378,8 +1378,8 @@ TIntermTyped* TIntermConstantUnion::fold(TOperator op, TIntermTyped* constantNod ...@@ -1378,8 +1378,8 @@ TIntermTyped* TIntermConstantUnion::fold(TOperator op, TIntermTyped* constantNod
return 0; return 0;
} }
const int matrixCols = constantNode->getType().getCols(); const char matrixCols = constantNode->getType().getCols();
const int matrixRows = constantNode->getType().getRows(); const char matrixRows = constantNode->getType().getRows();
tempConstArray = new ConstantUnion[matrixCols]; tempConstArray = new ConstantUnion[matrixCols];
......
...@@ -140,7 +140,7 @@ class TType ...@@ -140,7 +140,7 @@ class TType
public: public:
POOL_ALLOCATOR_NEW_DELETE(GlobalPoolAllocator) POOL_ALLOCATOR_NEW_DELETE(GlobalPoolAllocator)
TType() {} TType() {}
TType(TBasicType t, TPrecision p, TQualifier q = EvqTemporary, int ps = 1, int ss = 1, bool a = false) : TType(TBasicType t, TPrecision p, TQualifier q = EvqTemporary, char ps = 1, char ss = 1, bool a = false) :
type(t), precision(p), qualifier(q), primarySize(ps), secondarySize(ss), array(a), layoutQualifier(TLayoutQualifier::create()), arraySize(0), type(t), precision(p), qualifier(q), primarySize(ps), secondarySize(ss), array(a), layoutQualifier(TLayoutQualifier::create()), arraySize(0),
interfaceBlock(0), structure(0) interfaceBlock(0), structure(0)
{ {
...@@ -169,12 +169,12 @@ public: ...@@ -169,12 +169,12 @@ public:
TLayoutQualifier getLayoutQualifier() const { return layoutQualifier; } TLayoutQualifier getLayoutQualifier() const { return layoutQualifier; }
void setLayoutQualifier(TLayoutQualifier lq) { layoutQualifier = lq; } void setLayoutQualifier(TLayoutQualifier lq) { layoutQualifier = lq; }
int getNominalSize() const { return primarySize; } char getNominalSize() const { return primarySize; }
int getSecondarySize() const { return secondarySize; } char getSecondarySize() const { return secondarySize; }
int getCols() const { ASSERT(isMatrix()); return primarySize; } char getCols() const { ASSERT(isMatrix()); return primarySize; }
int getRows() const { ASSERT(isMatrix()); return secondarySize; } char getRows() const { ASSERT(isMatrix()); return secondarySize; }
void setPrimarySize(int ps) { primarySize = ps; } void setPrimarySize(char ps) { primarySize = ps; }
void setSecondarySize(int ss) { secondarySize = ss; } void setSecondarySize(char ss) { secondarySize = ss; }
// Full size of single instance of type // Full size of single instance of type
size_t getObjectSize() const; size_t getObjectSize() const;
...@@ -294,18 +294,18 @@ public: ...@@ -294,18 +294,18 @@ public:
return structure ? structure->containsArrays() : false; return structure ? structure->containsArrays() : false;
} }
protected: private:
TString buildMangledName() const; TString buildMangledName() const;
size_t getStructSize() const; size_t getStructSize() const;
void computeDeepestStructNesting(); void computeDeepestStructNesting();
TBasicType type : 6; TBasicType type;
TPrecision precision : 4; TPrecision precision;
TQualifier qualifier : 7; TQualifier qualifier;
unsigned int array : 1;
TLayoutQualifier layoutQualifier; TLayoutQualifier layoutQualifier;
int primarySize; // size of vector or cols matrix char primarySize; // size of vector or cols matrix
int secondarySize; // rows of a matrix char secondarySize; // rows of a matrix
bool array;
int arraySize; int arraySize;
// 0 unless this is an interface block, or interface block member variable // 0 unless this is an interface block, or interface block member variable
...@@ -332,8 +332,8 @@ struct TPublicType ...@@ -332,8 +332,8 @@ struct TPublicType
TLayoutQualifier layoutQualifier; TLayoutQualifier layoutQualifier;
TQualifier qualifier; TQualifier qualifier;
TPrecision precision; TPrecision precision;
int primarySize; // size of vector or cols of matrix char primarySize; // size of vector or cols of matrix
int secondarySize; // rows of matrix char secondarySize; // rows of matrix
bool array; bool array;
int arraySize; int arraySize;
TType* userDef; TType* userDef;
...@@ -353,12 +353,12 @@ struct TPublicType ...@@ -353,12 +353,12 @@ struct TPublicType
line = ln; line = ln;
} }
void setAggregate(int size) void setAggregate(char size)
{ {
primarySize = size; primarySize = size;
} }
void setMatrix(int c, int r) void setMatrix(char c, char r)
{ {
ASSERT(c > 1 && r > 1 && c <= 4 && r <= 4); ASSERT(c > 1 && r > 1 && c <= 4 && r <= 4);
primarySize = c; primarySize = c;
...@@ -391,19 +391,19 @@ struct TPublicType ...@@ -391,19 +391,19 @@ struct TPublicType
return primarySize > 1 && secondarySize == 1; return primarySize > 1 && secondarySize == 1;
} }
int getCols() const char getCols() const
{ {
ASSERT(isMatrix()); ASSERT(isMatrix());
return primarySize; return primarySize;
} }
int getRows() const char getRows() const
{ {
ASSERT(isMatrix()); ASSERT(isMatrix());
return secondarySize; return secondarySize;
} }
int getNominalSize() const char getNominalSize() const
{ {
return primarySize; return primarySize;
} }
......
...@@ -266,10 +266,10 @@ public: ...@@ -266,10 +266,10 @@ public:
TBasicType getBasicType() const { return type.getBasicType(); } TBasicType getBasicType() const { return type.getBasicType(); }
TQualifier getQualifier() const { return type.getQualifier(); } TQualifier getQualifier() const { return type.getQualifier(); }
TPrecision getPrecision() const { return type.getPrecision(); } TPrecision getPrecision() const { return type.getPrecision(); }
int getCols() const { return type.getCols(); } char getCols() const { return type.getCols(); }
int getRows() const { return type.getRows(); } char getRows() const { return type.getRows(); }
int getNominalSize() const { return type.getNominalSize(); } char getNominalSize() const { return type.getNominalSize(); }
int getSecondarySize() const { return type.getSecondarySize(); } char getSecondarySize() const { return type.getSecondarySize(); }
bool isInterfaceBlock() const { return type.isInterfaceBlock(); } bool isInterfaceBlock() const { return type.isInterfaceBlock(); }
bool isMatrix() const { return type.isMatrix(); } bool isMatrix() const { return type.isMatrix(); }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment