mirror of
https://github.com/KhronosGroup/glslang
synced 2024-11-10 04:20:06 +00:00
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:
parent
e96ee859a8
commit
040b8ca9d4
10
Todo.txt
10
Todo.txt
@ -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)
|
||||
|
@ -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..."
|
||||
|
@ -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)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user