Just make computeTypeLocationSize const.

git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@26354 e7fa87d3-cd2b-0410-9028-fcbf551c1848
This commit is contained in:
John Kessenich 2014-04-22 19:06:23 +00:00
parent e96ee859a8
commit 040b8ca9d4
3 changed files with 7 additions and 7 deletions

View File

@ -4,7 +4,7 @@ Current functionality level: ESSL 3.0, GLSL 1.5
Link Validation
+ provide input config file for setting limits
- also consider spitting out measures of complexity
- also consider spitting out measures of complexity
+ ensure no static references thrown away
- generate static use of object even if the only use is to access the length of its array
Cross-stage linking
@ -21,7 +21,7 @@ Link Validation
- 4.3: compute shader not combined with any other stages
- 4.3: remove cross-version linking restrictions.
- 4.3: Allow mismatches in interpolation and auxiliary qualification across stages.
- 4.4: A stage contains two different blocks, each with no instance name, where the blocks contain a member with the same name.
- 4.4: A stage contains two different blocks, each with no instance name, where the blocks contain a member with the same name.
Intra-stage linking, single shader
+ recursion for functions
- limits checking:
@ -44,8 +44,8 @@ Link Validation
+ 1.50: at least one geometry shader says max_vertices...
+ 1.50: origin_upper_left and pixel_center_integer have to match
- Even the potential for recursion through subroutine uniforms is an error.
- 4.4: An interface contains two different blocks, each with no instance name, where the blocks contain a member with the same name.
- 4.4: component aliasing (except desktop vertex shader inputs)
- 4.4: An interface contains two different blocks, each with no instance name, where the blocks contain a member with the same name.
- 4.4: component aliasing (except desktop vertex shader inputs)
- 4.4: overlapping transform/feedback offsets, offset/stride overflow checks, and stride matching
Intra-stage linking, multiple shader (Non-ES)
+ type consistency check of uniforms, globals, ins, and outs
@ -59,7 +59,7 @@ Link Validation
- matching redeclarations of interface blocks
- 4.3: early_fragment_tests contradictions
- 4.3: implicit array sizing is cross shader within a stage
- 4.4: If gl_FragCoord is redeclared in any fragment shader in a program, it must be redeclared in all the fragment shaders in that program that have a static use gl_FragCoord
- 4.4: If gl_FragCoord is redeclared in any fragment shader in a program, it must be redeclared in all the fragment shaders in that program that have a static use gl_FragCoord
Shader Functionality to Implement/Finish
ESSL 2.0 (#version 100)

View File

@ -646,7 +646,7 @@ int TIntermediate::addUsedLocation(const TQualifier& qualifier, const TType& typ
// Recursively figure out how many locations are used up by an input or output type.
// Return the size of type, as measured by "locations".
int TIntermediate::computeTypeLocationSize(const TType& type)
int TIntermediate::computeTypeLocationSize(const TType& type) const
{
// "If the declared input is an array of size n and each element takes m locations, it will be assigned m * n
// consecutive locations..."

View File

@ -234,7 +234,7 @@ public:
bool inIoAccessed(const TString& name) const { return ioAccessed.find(name) != ioAccessed.end(); }
int addUsedLocation(const TQualifier&, const TType&, bool& typeCollision);
int computeTypeLocationSize(const TType&);
int computeTypeLocationSize(const TType&) const;
bool setXfbBufferStride(int buffer, int stride)
{