Merge remote-tracking branch 'upstream/master'

This commit is contained in:
Rex Xu 2015-09-16 11:44:50 +08:00
commit fa2d01844e
90 changed files with 10602 additions and 9849 deletions

View File

@ -454,7 +454,7 @@ TGlslangToSpvTraverser::~TGlslangToSpvTraverser()
if (! mainTerminated) { if (! mainTerminated) {
spv::Block* lastMainBlock = shaderEntry->getLastBlock(); spv::Block* lastMainBlock = shaderEntry->getLastBlock();
builder.setBuildPoint(lastMainBlock); builder.setBuildPoint(lastMainBlock);
builder.leaveFunction(true); builder.leaveFunction();
} }
} }
@ -854,7 +854,7 @@ bool TGlslangToSpvTraverser::visitAggregate(glslang::TVisit visit, glslang::TInt
} else { } else {
if (inMain) if (inMain)
mainTerminated = true; mainTerminated = true;
builder.leaveFunction(inMain); builder.leaveFunction();
inMain = false; inMain = false;
} }
@ -1276,12 +1276,10 @@ bool TGlslangToSpvTraverser::visitBranch(glslang::TVisit /* visit */, glslang::T
builder.createLoopContinue(); builder.createLoopContinue();
break; break;
case glslang::EOpReturn: case glslang::EOpReturn:
if (inMain) if (node->getExpression())
builder.makeMainReturn();
else if (node->getExpression())
builder.makeReturn(false, builder.accessChainLoad(convertGlslangToSpvType(node->getExpression()->getType()))); builder.makeReturn(false, builder.accessChainLoad(convertGlslangToSpvType(node->getExpression()->getType())));
else else
builder.makeReturn(); builder.makeReturn(false);
builder.clearAccessChain(); builder.clearAccessChain();
break; break;
@ -2528,14 +2526,21 @@ spv::Id TGlslangToSpvTraverser::createAtomicOperation(glslang::TOperator op, spv
// Sort out the operands // Sort out the operands
// - mapping from glslang -> SPV // - mapping from glslang -> SPV
// - there are extra SPV operands with no glslang source // - there are extra SPV operands with no glslang source
// - compare-exchange swaps the value and comparator
// - compare-exchange has an extra memory semantics
std::vector<spv::Id> spvAtomicOperands; // hold the spv operands std::vector<spv::Id> spvAtomicOperands; // hold the spv operands
auto opIt = operands.begin(); // walk the glslang operands auto opIt = operands.begin(); // walk the glslang operands
spvAtomicOperands.push_back(*(opIt++)); spvAtomicOperands.push_back(*(opIt++));
spvAtomicOperands.push_back(builder.makeUintConstant(spv::ScopeDevice)); // TBD: what is the correct scope? spvAtomicOperands.push_back(builder.makeUintConstant(spv::ScopeDevice)); // TBD: what is the correct scope?
spvAtomicOperands.push_back(builder.makeUintConstant(spv::MemorySemanticsMaskNone)); // TBD: what are the correct memory semantics? spvAtomicOperands.push_back(builder.makeUintConstant(spv::MemorySemanticsMaskNone)); // TBD: what are the correct memory semantics?
if (opCode == spv::OpAtomicCompareExchange) {
spvAtomicOperands.push_back(builder.makeUintConstant(spv::MemorySemanticsMaskNone)); // TBD: what are the correct memory semantics?
spvAtomicOperands.push_back(*(opIt + 1));
spvAtomicOperands.push_back(*opIt);
opIt += 2;
}
// Add the rest of the operands, skipping the first one, which was dealt with above. // Add the rest of the operands, skipping any that were dealt with above.
// For some ops, there are none, for some 1, for compare-exchange, 2.
for (; opIt != operands.end(); ++opIt) for (; opIt != operands.end(); ++opIt)
spvAtomicOperands.push_back(*opIt); spvAtomicOperands.push_back(*opIt);

View File

@ -65,8 +65,7 @@ Builder::Builder(unsigned int userNumber) :
builderNumber(userNumber << 16 | SpvBuilderMagic), builderNumber(userNumber << 16 | SpvBuilderMagic),
buildPoint(0), buildPoint(0),
uniqueId(0), uniqueId(0),
mainFunction(0), mainFunction(0)
stageExit(0)
{ {
clearAccessChain(); clearAccessChain();
} }
@ -723,19 +722,10 @@ Function* Builder::makeMain()
std::vector<Id> params; std::vector<Id> params;
mainFunction = makeFunctionEntry(makeVoidType(), "main", params, &entry); mainFunction = makeFunctionEntry(makeVoidType(), "main", params, &entry);
stageExit = new Block(getUniqueId(), *mainFunction);
return mainFunction; return mainFunction;
} }
// Comments in header
void Builder::closeMain()
{
setBuildPoint(stageExit);
stageExit->addInstruction(new Instruction(NoResult, NoType, OpReturn));
mainFunction->addBlock(stageExit);
}
// Comments in header // Comments in header
Function* Builder::makeFunctionEntry(Id returnType, const char* name, std::vector<Id>& paramTypes, Block **entry) Function* Builder::makeFunctionEntry(Id returnType, const char* name, std::vector<Id>& paramTypes, Block **entry)
{ {
@ -756,14 +746,9 @@ Function* Builder::makeFunctionEntry(Id returnType, const char* name, std::vecto
} }
// Comments in header // Comments in header
void Builder::makeReturn(bool implicit, Id retVal, bool isMain) void Builder::makeReturn(bool implicit, Id retVal)
{ {
if (isMain && retVal) if (retVal) {
MissingFunctionality("return value from main()");
if (isMain)
createBranch(stageExit);
else if (retVal) {
Instruction* inst = new Instruction(NoResult, NoType, OpReturnValue); Instruction* inst = new Instruction(NoResult, NoType, OpReturnValue);
inst->addIdOperand(retVal); inst->addIdOperand(retVal);
buildPoint->addInstruction(inst); buildPoint->addInstruction(inst);
@ -775,7 +760,7 @@ void Builder::makeReturn(bool implicit, Id retVal, bool isMain)
} }
// Comments in header // Comments in header
void Builder::leaveFunction(bool main) void Builder::leaveFunction()
{ {
Block* block = buildPoint; Block* block = buildPoint;
Function& function = buildPoint->getParent(); Function& function = buildPoint->getParent();
@ -791,10 +776,8 @@ void Builder::leaveFunction(bool main)
// Given that this block is at the end of a function, it must be right after an // Given that this block is at the end of a function, it must be right after an
// explicit return, just remove it. // explicit return, just remove it.
function.popBlock(block); function.popBlock(block);
} else if (main) } else {
makeMainReturn(true); // We'll add a return instruction at the end of the current block,
else {
// We're get a return instruction at the end of the current block,
// which for a non-void function is really error recovery (?), as the source // which for a non-void function is really error recovery (?), as the source
// being translated should have had an explicit return, which would have been // being translated should have had an explicit return, which would have been
// followed by an unreachable block, which was handled above. // followed by an unreachable block, which was handled above.
@ -805,9 +788,6 @@ void Builder::leaveFunction(bool main)
} }
} }
} }
if (main)
closeMain();
} }
// Comments in header // Comments in header
@ -1234,6 +1214,23 @@ Id Builder::createTextureCall(Decoration precision, Id resultType, bool fetch, b
} }
} }
// See if the result type is expecting a smeared result.
// This happens when a legacy shadow*() call is made, which
// gets a vec4 back instead of a float.
Id smearedType = resultType;
if (! isScalarType(resultType)) {
switch (opCode) {
case OpImageSampleDrefImplicitLod:
case OpImageSampleDrefExplicitLod:
case OpImageSampleProjDrefImplicitLod:
case OpImageSampleProjDrefExplicitLod:
resultType = getScalarTypeId(resultType);
break;
default:
break;
}
}
Instruction* textureInst = new Instruction(getUniqueId(), resultType, opCode); Instruction* textureInst = new Instruction(getUniqueId(), resultType, opCode);
for (int op = 0; op < optArgNum; ++op) for (int op = 0; op < optArgNum; ++op)
textureInst->addIdOperand(texArgs[op]); textureInst->addIdOperand(texArgs[op]);
@ -1244,7 +1241,14 @@ Id Builder::createTextureCall(Decoration precision, Id resultType, bool fetch, b
setPrecision(textureInst->getResultId(), precision); setPrecision(textureInst->getResultId(), precision);
buildPoint->addInstruction(textureInst); buildPoint->addInstruction(textureInst);
return textureInst->getResultId(); Id resultId = textureInst->getResultId();
// When a smear is needed, do it, as per what was computed
// above when resultType was changed to a scalar type.
if (resultType != smearedType)
resultId = smearScalar(precision, resultId, smearedType);
return resultId;
} }
// Comments in header // Comments in header

View File

@ -195,23 +195,16 @@ public:
// Make the main function. // Make the main function.
Function* makeMain(); Function* makeMain();
// Return from main. Implicit denotes a return at the very end of main.
void makeMainReturn(bool implicit = false) { makeReturn(implicit, 0, true); }
// Close the main function.
void closeMain();
// Make a shader-style function, and create its entry block if entry is non-zero. // Make a shader-style function, and create its entry block if entry is non-zero.
// Return the function, pass back the entry. // Return the function, pass back the entry.
Function* makeFunctionEntry(Id returnType, const char* name, std::vector<Id>& paramTypes, Block **entry = 0); Function* makeFunctionEntry(Id returnType, const char* name, std::vector<Id>& paramTypes, Block **entry = 0);
// Create a return. Pass whether it is a return form main, and the return // Create a return. An 'implicit' return is one not appearing in the source
// value (if applicable). In the case of an implicit return, no post-return // code. In the case of an implicit return, no post-return block is inserted.
// block is inserted. void makeReturn(bool implicit, Id retVal = 0);
void makeReturn(bool implicit = false, Id retVal = 0, bool isMain = false);
// Generate all the code needed to finish up a function. // Generate all the code needed to finish up a function.
void leaveFunction(bool main); void leaveFunction();
// Create a discard. // Create a discard.
void makeDiscard(); void makeDiscard();
@ -516,7 +509,6 @@ protected:
Block* buildPoint; Block* buildPoint;
Id uniqueId; Id uniqueId;
Function* mainFunction; Function* mainFunction;
Block* stageExit;
AccessChain accessChain; AccessChain accessChain;
// special blocks of instructions for output // special blocks of instructions for output

View File

@ -126,3 +126,17 @@ layout(location=27, index=0) in vec4 indexIn; // ERROR, not on in
layout(location=0, index=0) in; // ERROR, not just on in layout(location=0, index=0) in; // ERROR, not just on in
layout(location=0, index=0) out; // ERROR, need a variable layout(location=0, index=0) out; // ERROR, need a variable
layout(location=26, index=0) out indexBlock { int a; } indexBlockI; // ERROR, not on a block layout(location=26, index=0) out indexBlock { int a; } indexBlockI; // ERROR, not on a block
uniform sampler1D samp1D;
uniform sampler2DShadow samp2Ds;
void qlod()
{
vec2 lod;
float pf;
vec2 pf2;
vec3 pf3;
lod = textureQueryLod(samp1D, pf); // ERROR, not until 400
lod = textureQueryLod(samp2Ds, pf2); // ERROR, not until 400
}

View File

@ -139,3 +139,47 @@ void interp()
interpolateAtCentroid(f); // ERROR, not interpolant interpolateAtCentroid(f); // ERROR, not interpolant
interpolateAtSample(outp, 0); // ERROR, not interpolant interpolateAtSample(outp, 0); // ERROR, not interpolant
} }
uniform sampler1D samp1D;
uniform isampler2D isamp2D;
uniform usampler3D usamp3D;
uniform samplerCube sampCube;
uniform isampler1DArray isamp1DA;
uniform usampler2DArray usamp2DA;
uniform isamplerCubeArray isampCubeA;
uniform sampler1DShadow samp1Ds;
uniform sampler2DShadow samp2Ds;
uniform samplerCubeShadow sampCubes;
uniform sampler1DArrayShadow samp1DAs;
uniform sampler2DArrayShadow samp2DAs;
uniform samplerCubeArrayShadow sampCubeAs;
uniform samplerBuffer sampBuf;
uniform sampler2DRect sampRect;
void qlod()
{
vec2 lod;
float pf;
vec2 pf2;
vec3 pf3;
lod = textureQueryLod(samp1D, pf);
lod = textureQueryLod(isamp2D, pf2);
lod = textureQueryLod(usamp3D, pf3);
lod = textureQueryLod(sampCube, pf3);
lod = textureQueryLod(isamp1DA, pf);
lod = textureQueryLod(usamp2DA, pf2);
lod = textureQueryLod(isampCubeA, pf3);
lod = textureQueryLod(samp1Ds, pf);
lod = textureQueryLod(samp2Ds, pf2);
lod = textureQueryLod(sampCubes, pf3);
lod = textureQueryLod(samp1DAs, pf);
lod = textureQueryLod(samp2DAs, pf2);
lod = textureQueryLod(sampCubeAs, pf3);
lod = textureQueryLod(sampBuf, pf); // ERROR
lod = textureQueryLod(sampRect, pf2); // ERROR
}

View File

@ -101,3 +101,17 @@ void bits()
} }
layout(location = 7, index = 1) out vec4 indexedOut; layout(location = 7, index = 1) out vec4 indexedOut;
uniform sampler1D samp1D;
uniform sampler2DShadow samp2Ds;
void qlod()
{
vec2 lod;
float pf;
vec2 pf2;
vec3 pf3;
lod = textureQueryLod(samp1D, pf); // ERROR, only in fragment
lod = textureQueryLod(samp2Ds, pf2); // ERROR, only in fragment
}

View File

@ -146,3 +146,14 @@ layout(r8ui) uniform iimage2D i6bad; // ERROR, type mismatch
uniform offcheck { uniform offcheck {
layout(offset = 16) int foo; // ERROR layout(offset = 16) int foo; // ERROR
} offcheckI; } offcheckI;
uniform sampler1D samp1D;
uniform sampler1DShadow samp1Ds;
void qlod()
{
int levels;
levels = textureQueryLevels(samp1D); // ERROR, not until 430
levels = textureQueryLevels(samp1Ds); // ERROR, not until 430
}

View File

@ -180,3 +180,44 @@ void fooq2()
s += imageSamples(ii2dms); s += imageSamples(ii2dms);
s += imageSamples(i2dmsa); s += imageSamples(i2dmsa);
} }
uniform sampler1D samp1D;
uniform usampler2D usamp2D;
uniform isampler3D isamp3D;
uniform isamplerCube isampCube;
uniform isampler1DArray isamp1DA;
uniform sampler2DArray samp2DA;
uniform usamplerCubeArray usampCubeA;
uniform sampler1DShadow samp1Ds;
uniform sampler2DShadow samp2Ds;
uniform samplerCubeShadow sampCubes;
uniform sampler1DArrayShadow samp1DAs;
uniform sampler2DArrayShadow samp2DAs;
uniform samplerCubeArrayShadow sampCubeAs;
uniform samplerBuffer sampBuf;
uniform sampler2DRect sampRect;
void qlod()
{
int levels;
levels = textureQueryLevels(samp1D);
levels = textureQueryLevels(usamp2D);
levels = textureQueryLevels(isamp3D);
levels = textureQueryLevels(isampCube);
levels = textureQueryLevels(isamp1DA);
levels = textureQueryLevels(samp2DA);
levels = textureQueryLevels(usampCubeA);
levels = textureQueryLevels(samp1Ds);
levels = textureQueryLevels(samp2Ds);
levels = textureQueryLevels(sampCubes);
levels = textureQueryLevels(samp1DAs);
levels = textureQueryLevels(samp2DAs);
levels = textureQueryLevels(sampCubeAs);
levels = textureQueryLevels(sampBuf); // ERROR
levels = textureQueryLevels(sampRect); // ERROR
}

View File

@ -33,7 +33,11 @@ ERROR: 0:126: 'index' : can only be used on an output
ERROR: 0:126: 'location/component/index' : cannot declare a default, use a full declaration ERROR: 0:126: 'location/component/index' : cannot declare a default, use a full declaration
ERROR: 0:127: 'location/component/index' : cannot declare a default, use a full declaration ERROR: 0:127: 'location/component/index' : cannot declare a default, use a full declaration
ERROR: 0:128: 'output block' : not supported in this stage: fragment ERROR: 0:128: 'output block' : not supported in this stage: fragment
ERROR: 34 compilation errors. No code generated. ERROR: 0:140: 'textureQueryLod' : no matching overloaded function found
ERROR: 0:140: 'assign' : cannot convert from 'const float' to 'temp 2-component vector of float'
ERROR: 0:141: 'textureQueryLod' : no matching overloaded function found
ERROR: 0:141: 'assign' : cannot convert from 'const float' to 'temp 2-component vector of float'
ERROR: 38 compilation errors. No code generated.
Shader version: 330 Shader version: 330
@ -70,6 +74,11 @@ ERROR: node is still EOpNull!
0:24 move second child to first child (temp 4-component vector of float) 0:24 move second child to first child (temp 4-component vector of float)
0:24 'outVar' (layout(location=0 index=0 ) out 4-component vector of float) 0:24 'outVar' (layout(location=0 index=0 ) out 4-component vector of float)
0:24 'inVar' (smooth in 4-component vector of float) 0:24 'inVar' (smooth in 4-component vector of float)
0:133 Function Definition: qlod( (global void)
0:133 Function Parameters:
0:? Sequence
0:140 'lod' (temp 2-component vector of float)
0:141 'lod' (temp 2-component vector of float)
0:? Linker Objects 0:? Linker Objects
0:? 'inVar' (smooth in 4-component vector of float) 0:? 'inVar' (smooth in 4-component vector of float)
0:? 'outVar' (layout(location=0 index=0 ) out 4-component vector of float) 0:? 'outVar' (layout(location=0 index=0 ) out 4-component vector of float)
@ -97,11 +106,13 @@ ERROR: node is still EOpNull!
0:? 'in4' (in block{layout(location=50 ) in float f1, layout(location=51 ) in float f2}) 0:? 'in4' (in block{layout(location=50 ) in float f1, layout(location=51 ) in float f2})
0:? 's' (layout(location=33 ) smooth in structure{global 3-component vector of float a, global 2X2 matrix of float b, global 2-element array of 4-component vector of float c, temp 2-component vector of float A}) 0:? 's' (layout(location=33 ) smooth in structure{global 3-component vector of float a, global 2X2 matrix of float b, global 2-element array of 4-component vector of float c, temp 2-component vector of float A})
0:? 'anon@2' (in block{layout(location=44 component=0 ) in 4-component vector of float d, layout(location=45 component=0 ) in 4-component vector of float e, layout(location=47 ) in 4-component vector of float f, layout(location=48 component=0 ) in 4-component vector of float g, layout(location=41 ) in 4-component vector of float h, layout(location=42 component=0 ) in 4-component vector of float i, layout(location=43 component=0 ) in 4-component vector of float j, layout(location=44 component=0 ) in 4-component vector of float k}) 0:? 'anon@2' (in block{layout(location=44 component=0 ) in 4-component vector of float d, layout(location=45 component=0 ) in 4-component vector of float e, layout(location=47 ) in 4-component vector of float f, layout(location=48 component=0 ) in 4-component vector of float g, layout(location=41 ) in 4-component vector of float h, layout(location=42 component=0 ) in 4-component vector of float i, layout(location=43 component=0 ) in 4-component vector of float j, layout(location=44 component=0 ) in 4-component vector of float k})
0:? 'outVar2' (layout(location=63 index=0 ) out 4-component vector of float) 0:? 'outVar2' (layout(location=4095 index=0 ) out 4-component vector of float)
0:? 'outVar3' (layout(location=0 index=1 ) out 4-component vector of float) 0:? 'outVar3' (layout(location=0 index=1 ) out 4-component vector of float)
0:? 'outVar4' (layout(location=0 index=1 ) out 4-component vector of float) 0:? 'outVar4' (layout(location=0 index=1 ) out 4-component vector of float)
0:? 'indexIn' (layout(location=27 index=0 ) smooth in 4-component vector of float) 0:? 'indexIn' (layout(location=27 index=0 ) smooth in 4-component vector of float)
0:? 'indexBlockI' (layout(location=26 index=0 ) out block{out int a}) 0:? 'indexBlockI' (layout(location=26 index=0 ) out block{out int a})
0:? 'samp1D' (uniform sampler1D)
0:? 'samp2Ds' (uniform sampler2DShadow)
Linked fragment stage: Linked fragment stage:
@ -143,6 +154,11 @@ ERROR: node is still EOpNull!
0:24 move second child to first child (temp 4-component vector of float) 0:24 move second child to first child (temp 4-component vector of float)
0:24 'outVar' (layout(location=0 index=0 ) out 4-component vector of float) 0:24 'outVar' (layout(location=0 index=0 ) out 4-component vector of float)
0:24 'inVar' (smooth in 4-component vector of float) 0:24 'inVar' (smooth in 4-component vector of float)
0:133 Function Definition: qlod( (global void)
0:133 Function Parameters:
0:? Sequence
0:140 'lod' (temp 2-component vector of float)
0:141 'lod' (temp 2-component vector of float)
0:? Linker Objects 0:? Linker Objects
0:? 'inVar' (smooth in 4-component vector of float) 0:? 'inVar' (smooth in 4-component vector of float)
0:? 'outVar' (layout(location=0 index=0 ) out 4-component vector of float) 0:? 'outVar' (layout(location=0 index=0 ) out 4-component vector of float)
@ -170,9 +186,11 @@ ERROR: node is still EOpNull!
0:? 'in4' (in block{layout(location=50 ) in float f1, layout(location=51 ) in float f2}) 0:? 'in4' (in block{layout(location=50 ) in float f1, layout(location=51 ) in float f2})
0:? 's' (layout(location=33 ) smooth in structure{global 3-component vector of float a, global 2X2 matrix of float b, global 2-element array of 4-component vector of float c, temp 2-component vector of float A}) 0:? 's' (layout(location=33 ) smooth in structure{global 3-component vector of float a, global 2X2 matrix of float b, global 2-element array of 4-component vector of float c, temp 2-component vector of float A})
0:? 'anon@2' (in block{layout(location=44 component=0 ) in 4-component vector of float d, layout(location=45 component=0 ) in 4-component vector of float e, layout(location=47 ) in 4-component vector of float f, layout(location=48 component=0 ) in 4-component vector of float g, layout(location=41 ) in 4-component vector of float h, layout(location=42 component=0 ) in 4-component vector of float i, layout(location=43 component=0 ) in 4-component vector of float j, layout(location=44 component=0 ) in 4-component vector of float k}) 0:? 'anon@2' (in block{layout(location=44 component=0 ) in 4-component vector of float d, layout(location=45 component=0 ) in 4-component vector of float e, layout(location=47 ) in 4-component vector of float f, layout(location=48 component=0 ) in 4-component vector of float g, layout(location=41 ) in 4-component vector of float h, layout(location=42 component=0 ) in 4-component vector of float i, layout(location=43 component=0 ) in 4-component vector of float j, layout(location=44 component=0 ) in 4-component vector of float k})
0:? 'outVar2' (layout(location=63 index=0 ) out 4-component vector of float) 0:? 'outVar2' (layout(location=4095 index=0 ) out 4-component vector of float)
0:? 'outVar3' (layout(location=0 index=1 ) out 4-component vector of float) 0:? 'outVar3' (layout(location=0 index=1 ) out 4-component vector of float)
0:? 'outVar4' (layout(location=0 index=1 ) out 4-component vector of float) 0:? 'outVar4' (layout(location=0 index=1 ) out 4-component vector of float)
0:? 'indexIn' (layout(location=27 index=0 ) smooth in 4-component vector of float) 0:? 'indexIn' (layout(location=27 index=0 ) smooth in 4-component vector of float)
0:? 'indexBlockI' (layout(location=26 index=0 ) out block{out int a}) 0:? 'indexBlockI' (layout(location=26 index=0 ) out block{out int a})
0:? 'samp1D' (uniform sampler1D)
0:? 'samp2Ds' (uniform sampler2DShadow)

View File

@ -30,7 +30,11 @@ ERROR: 0:135: 'interpolateAtOffset' : first argument must be an interpolant, or
ERROR: 0:136: 'interpolateAtOffset' : first argument must be an interpolant, or interpolant-array element ERROR: 0:136: 'interpolateAtOffset' : first argument must be an interpolant, or interpolant-array element
ERROR: 0:139: 'interpolateAtCentroid' : first argument must be an interpolant, or interpolant-array element ERROR: 0:139: 'interpolateAtCentroid' : first argument must be an interpolant, or interpolant-array element
ERROR: 0:140: 'interpolateAtSample' : first argument must be an interpolant, or interpolant-array element ERROR: 0:140: 'interpolateAtSample' : first argument must be an interpolant, or interpolant-array element
ERROR: 30 compilation errors. No code generated. ERROR: 0:183: 'textureQueryLod' : no matching overloaded function found
ERROR: 0:183: 'assign' : cannot convert from 'const float' to 'temp 2-component vector of float'
ERROR: 0:184: 'textureQueryLod' : no matching overloaded function found
ERROR: 0:184: 'assign' : cannot convert from 'const float' to 'temp 2-component vector of float'
ERROR: 34 compilation errors. No code generated.
Shader version: 400 Shader version: 400
@ -402,6 +406,76 @@ ERROR: node is still EOpNull!
0:140 'outp' (out 4-component vector of float) 0:140 'outp' (out 4-component vector of float)
0:140 Constant: 0:140 Constant:
0:140 0 (const int) 0:140 0 (const int)
0:161 Function Definition: qlod( (global void)
0:161 Function Parameters:
0:? Sequence
0:168 move second child to first child (temp 2-component vector of float)
0:168 'lod' (temp 2-component vector of float)
0:168 textureQueryLod (global 2-component vector of float)
0:168 'samp1D' (uniform sampler1D)
0:168 'pf' (temp float)
0:169 move second child to first child (temp 2-component vector of float)
0:169 'lod' (temp 2-component vector of float)
0:169 textureQueryLod (global 2-component vector of float)
0:169 'isamp2D' (uniform isampler2D)
0:169 'pf2' (temp 2-component vector of float)
0:170 move second child to first child (temp 2-component vector of float)
0:170 'lod' (temp 2-component vector of float)
0:170 textureQueryLod (global 2-component vector of float)
0:170 'usamp3D' (uniform usampler3D)
0:170 'pf3' (temp 3-component vector of float)
0:171 move second child to first child (temp 2-component vector of float)
0:171 'lod' (temp 2-component vector of float)
0:171 textureQueryLod (global 2-component vector of float)
0:171 'sampCube' (uniform samplerCube)
0:171 'pf3' (temp 3-component vector of float)
0:172 move second child to first child (temp 2-component vector of float)
0:172 'lod' (temp 2-component vector of float)
0:172 textureQueryLod (global 2-component vector of float)
0:172 'isamp1DA' (uniform isampler1DArray)
0:172 'pf' (temp float)
0:173 move second child to first child (temp 2-component vector of float)
0:173 'lod' (temp 2-component vector of float)
0:173 textureQueryLod (global 2-component vector of float)
0:173 'usamp2DA' (uniform usampler2DArray)
0:173 'pf2' (temp 2-component vector of float)
0:174 move second child to first child (temp 2-component vector of float)
0:174 'lod' (temp 2-component vector of float)
0:174 textureQueryLod (global 2-component vector of float)
0:174 'isampCubeA' (uniform isamplerCubeArray)
0:174 'pf3' (temp 3-component vector of float)
0:176 move second child to first child (temp 2-component vector of float)
0:176 'lod' (temp 2-component vector of float)
0:176 textureQueryLod (global 2-component vector of float)
0:176 'samp1Ds' (uniform sampler1DShadow)
0:176 'pf' (temp float)
0:177 move second child to first child (temp 2-component vector of float)
0:177 'lod' (temp 2-component vector of float)
0:177 textureQueryLod (global 2-component vector of float)
0:177 'samp2Ds' (uniform sampler2DShadow)
0:177 'pf2' (temp 2-component vector of float)
0:178 move second child to first child (temp 2-component vector of float)
0:178 'lod' (temp 2-component vector of float)
0:178 textureQueryLod (global 2-component vector of float)
0:178 'sampCubes' (uniform samplerCubeShadow)
0:178 'pf3' (temp 3-component vector of float)
0:179 move second child to first child (temp 2-component vector of float)
0:179 'lod' (temp 2-component vector of float)
0:179 textureQueryLod (global 2-component vector of float)
0:179 'samp1DAs' (uniform sampler1DArrayShadow)
0:179 'pf' (temp float)
0:180 move second child to first child (temp 2-component vector of float)
0:180 'lod' (temp 2-component vector of float)
0:180 textureQueryLod (global 2-component vector of float)
0:180 'samp2DAs' (uniform sampler2DArrayShadow)
0:180 'pf2' (temp 2-component vector of float)
0:181 move second child to first child (temp 2-component vector of float)
0:181 'lod' (temp 2-component vector of float)
0:181 textureQueryLod (global 2-component vector of float)
0:181 'sampCubeAs' (uniform samplerCubeArrayShadow)
0:181 'pf3' (temp 3-component vector of float)
0:183 'lod' (temp 2-component vector of float)
0:184 'lod' (temp 2-component vector of float)
0:? Linker Objects 0:? Linker Objects
0:? 'c2D' (smooth in 2-component vector of float) 0:? 'c2D' (smooth in 2-component vector of float)
0:? 'i' (flat in int) 0:? 'i' (flat in int)
@ -432,6 +506,21 @@ ERROR: node is still EOpNull!
0:? 'colorfc' (centroid flat in 2-component vector of float) 0:? 'colorfc' (centroid flat in 2-component vector of float)
0:? 's1' (smooth in structure{global float x}) 0:? 's1' (smooth in structure{global float x})
0:? 's2' (sample temp structure{global float x}) 0:? 's2' (sample temp structure{global float x})
0:? 'samp1D' (uniform sampler1D)
0:? 'isamp2D' (uniform isampler2D)
0:? 'usamp3D' (uniform usampler3D)
0:? 'sampCube' (uniform samplerCube)
0:? 'isamp1DA' (uniform isampler1DArray)
0:? 'usamp2DA' (uniform usampler2DArray)
0:? 'isampCubeA' (uniform isamplerCubeArray)
0:? 'samp1Ds' (uniform sampler1DShadow)
0:? 'samp2Ds' (uniform sampler2DShadow)
0:? 'sampCubes' (uniform samplerCubeShadow)
0:? 'samp1DAs' (uniform sampler1DArrayShadow)
0:? 'samp2DAs' (uniform sampler2DArrayShadow)
0:? 'sampCubeAs' (uniform samplerCubeArrayShadow)
0:? 'sampBuf' (uniform samplerBuffer)
0:? 'sampRect' (uniform sampler2DRect)
Linked fragment stage: Linked fragment stage:
@ -806,6 +895,76 @@ ERROR: node is still EOpNull!
0:140 'outp' (out 4-component vector of float) 0:140 'outp' (out 4-component vector of float)
0:140 Constant: 0:140 Constant:
0:140 0 (const int) 0:140 0 (const int)
0:161 Function Definition: qlod( (global void)
0:161 Function Parameters:
0:? Sequence
0:168 move second child to first child (temp 2-component vector of float)
0:168 'lod' (temp 2-component vector of float)
0:168 textureQueryLod (global 2-component vector of float)
0:168 'samp1D' (uniform sampler1D)
0:168 'pf' (temp float)
0:169 move second child to first child (temp 2-component vector of float)
0:169 'lod' (temp 2-component vector of float)
0:169 textureQueryLod (global 2-component vector of float)
0:169 'isamp2D' (uniform isampler2D)
0:169 'pf2' (temp 2-component vector of float)
0:170 move second child to first child (temp 2-component vector of float)
0:170 'lod' (temp 2-component vector of float)
0:170 textureQueryLod (global 2-component vector of float)
0:170 'usamp3D' (uniform usampler3D)
0:170 'pf3' (temp 3-component vector of float)
0:171 move second child to first child (temp 2-component vector of float)
0:171 'lod' (temp 2-component vector of float)
0:171 textureQueryLod (global 2-component vector of float)
0:171 'sampCube' (uniform samplerCube)
0:171 'pf3' (temp 3-component vector of float)
0:172 move second child to first child (temp 2-component vector of float)
0:172 'lod' (temp 2-component vector of float)
0:172 textureQueryLod (global 2-component vector of float)
0:172 'isamp1DA' (uniform isampler1DArray)
0:172 'pf' (temp float)
0:173 move second child to first child (temp 2-component vector of float)
0:173 'lod' (temp 2-component vector of float)
0:173 textureQueryLod (global 2-component vector of float)
0:173 'usamp2DA' (uniform usampler2DArray)
0:173 'pf2' (temp 2-component vector of float)
0:174 move second child to first child (temp 2-component vector of float)
0:174 'lod' (temp 2-component vector of float)
0:174 textureQueryLod (global 2-component vector of float)
0:174 'isampCubeA' (uniform isamplerCubeArray)
0:174 'pf3' (temp 3-component vector of float)
0:176 move second child to first child (temp 2-component vector of float)
0:176 'lod' (temp 2-component vector of float)
0:176 textureQueryLod (global 2-component vector of float)
0:176 'samp1Ds' (uniform sampler1DShadow)
0:176 'pf' (temp float)
0:177 move second child to first child (temp 2-component vector of float)
0:177 'lod' (temp 2-component vector of float)
0:177 textureQueryLod (global 2-component vector of float)
0:177 'samp2Ds' (uniform sampler2DShadow)
0:177 'pf2' (temp 2-component vector of float)
0:178 move second child to first child (temp 2-component vector of float)
0:178 'lod' (temp 2-component vector of float)
0:178 textureQueryLod (global 2-component vector of float)
0:178 'sampCubes' (uniform samplerCubeShadow)
0:178 'pf3' (temp 3-component vector of float)
0:179 move second child to first child (temp 2-component vector of float)
0:179 'lod' (temp 2-component vector of float)
0:179 textureQueryLod (global 2-component vector of float)
0:179 'samp1DAs' (uniform sampler1DArrayShadow)
0:179 'pf' (temp float)
0:180 move second child to first child (temp 2-component vector of float)
0:180 'lod' (temp 2-component vector of float)
0:180 textureQueryLod (global 2-component vector of float)
0:180 'samp2DAs' (uniform sampler2DArrayShadow)
0:180 'pf2' (temp 2-component vector of float)
0:181 move second child to first child (temp 2-component vector of float)
0:181 'lod' (temp 2-component vector of float)
0:181 textureQueryLod (global 2-component vector of float)
0:181 'sampCubeAs' (uniform samplerCubeArrayShadow)
0:181 'pf3' (temp 3-component vector of float)
0:183 'lod' (temp 2-component vector of float)
0:184 'lod' (temp 2-component vector of float)
0:? Linker Objects 0:? Linker Objects
0:? 'c2D' (smooth in 2-component vector of float) 0:? 'c2D' (smooth in 2-component vector of float)
0:? 'i' (flat in int) 0:? 'i' (flat in int)
@ -836,4 +995,19 @@ ERROR: node is still EOpNull!
0:? 'colorfc' (centroid flat in 2-component vector of float) 0:? 'colorfc' (centroid flat in 2-component vector of float)
0:? 's1' (smooth in structure{global float x}) 0:? 's1' (smooth in structure{global float x})
0:? 's2' (sample temp structure{global float x}) 0:? 's2' (sample temp structure{global float x})
0:? 'samp1D' (uniform sampler1D)
0:? 'isamp2D' (uniform isampler2D)
0:? 'usamp3D' (uniform usampler3D)
0:? 'sampCube' (uniform samplerCube)
0:? 'isamp1DA' (uniform isampler1DArray)
0:? 'usamp2DA' (uniform usampler2DArray)
0:? 'isampCubeA' (uniform isamplerCubeArray)
0:? 'samp1Ds' (uniform sampler1DShadow)
0:? 'samp2Ds' (uniform sampler2DShadow)
0:? 'sampCubes' (uniform samplerCubeShadow)
0:? 'samp1DAs' (uniform sampler1DArrayShadow)
0:? 'samp2DAs' (uniform sampler2DArrayShadow)
0:? 'sampCubeAs' (uniform samplerCubeArrayShadow)
0:? 'sampBuf' (uniform samplerBuffer)
0:? 'sampRect' (uniform sampler2DRect)

View File

@ -19,7 +19,11 @@ ERROR: 0:65: 'invocations' : can only apply to 'in'
ERROR: 0:67: 'in' : type must be an array: inbls ERROR: 0:67: 'in' : type must be an array: inbls
ERROR: 0:71: 'triangles' : inconsistent input primitive for array size of inbla ERROR: 0:71: 'triangles' : inconsistent input primitive for array size of inbla
ERROR: 0:103: 'index' : there is no such layout identifier for this stage taking an assigned value ERROR: 0:103: 'index' : there is no such layout identifier for this stage taking an assigned value
ERROR: 19 compilation errors. No code generated. ERROR: 0:115: 'textureQueryLod' : no matching overloaded function found
ERROR: 0:115: 'assign' : cannot convert from 'const float' to 'temp 2-component vector of float'
ERROR: 0:116: 'textureQueryLod' : no matching overloaded function found
ERROR: 0:116: 'assign' : cannot convert from 'const float' to 'temp 2-component vector of float'
ERROR: 23 compilation errors. No code generated.
Shader version: 400 Shader version: 400
@ -165,6 +169,11 @@ ERROR: node is still EOpNull!
0:100 'i2' (temp 2-component vector of int) 0:100 'i2' (temp 2-component vector of int)
0:100 findMSB (global 2-component vector of int) 0:100 findMSB (global 2-component vector of int)
0:100 'u2' (temp 2-component vector of uint) 0:100 'u2' (temp 2-component vector of uint)
0:108 Function Definition: qlod( (global void)
0:108 Function Parameters:
0:? Sequence
0:115 'lod' (temp 2-component vector of float)
0:116 'lod' (temp 2-component vector of float)
0:? Linker Objects 0:? Linker Objects
0:? 'bn' (in 3-element array of block{in int a}) 0:? 'bn' (in 3-element array of block{in int a})
0:? 'gl_in' (in 3-element array of block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize}) 0:? 'gl_in' (in 3-element array of block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize})
@ -182,6 +191,8 @@ ERROR: node is still EOpNull!
0:? 'inbls' (in block{in int a}) 0:? 'inbls' (in block{in int a})
0:? 'inbla' (in 17-element array of block{in int a}) 0:? 'inbla' (in 17-element array of block{in int a})
0:? 'indexedOut' (layout(location=7 stream=0 ) out 4-component vector of float) 0:? 'indexedOut' (layout(location=7 stream=0 ) out 4-component vector of float)
0:? 'samp1D' (uniform sampler1D)
0:? 'samp2Ds' (uniform sampler2DShadow)
Linked geometry stage: Linked geometry stage:
@ -331,6 +342,11 @@ ERROR: node is still EOpNull!
0:100 'i2' (temp 2-component vector of int) 0:100 'i2' (temp 2-component vector of int)
0:100 findMSB (global 2-component vector of int) 0:100 findMSB (global 2-component vector of int)
0:100 'u2' (temp 2-component vector of uint) 0:100 'u2' (temp 2-component vector of uint)
0:108 Function Definition: qlod( (global void)
0:108 Function Parameters:
0:? Sequence
0:115 'lod' (temp 2-component vector of float)
0:116 'lod' (temp 2-component vector of float)
0:? Linker Objects 0:? Linker Objects
0:? 'bn' (in 3-element array of block{in int a}) 0:? 'bn' (in 3-element array of block{in int a})
0:? 'gl_in' (in 3-element array of block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize}) 0:? 'gl_in' (in 3-element array of block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize})
@ -348,4 +364,6 @@ ERROR: node is still EOpNull!
0:? 'inbls' (in block{in int a}) 0:? 'inbls' (in block{in int a})
0:? 'inbla' (in 17-element array of block{in int a}) 0:? 'inbla' (in 17-element array of block{in int a})
0:? 'indexedOut' (layout(location=7 stream=0 ) out 4-component vector of float) 0:? 'indexedOut' (layout(location=7 stream=0 ) out 4-component vector of float)
0:? 'samp1D' (uniform sampler1D)
0:? 'samp2Ds' (uniform sampler2DShadow)

View File

@ -49,7 +49,11 @@ ERROR: 0:142: 'r8_snorm' : does not apply to signed integer images
ERROR: 0:143: 'rgba32ui' : does not apply to signed integer images ERROR: 0:143: 'rgba32ui' : does not apply to signed integer images
ERROR: 0:144: 'r8ui' : does not apply to signed integer images ERROR: 0:144: 'r8ui' : does not apply to signed integer images
ERROR: 0:147: 'offset on block member' : not supported for this version or the enabled extensions ERROR: 0:147: 'offset on block member' : not supported for this version or the enabled extensions
ERROR: 48 compilation errors. No code generated. ERROR: 0:157: 'textureQueryLevels' : no matching overloaded function found
ERROR: 0:157: 'assign' : cannot convert from 'const float' to 'temp int'
ERROR: 0:158: 'textureQueryLevels' : no matching overloaded function found
ERROR: 0:158: 'assign' : cannot convert from 'const float' to 'temp int'
ERROR: 52 compilation errors. No code generated.
Shader version: 420 Shader version: 420
@ -239,6 +243,11 @@ ERROR: node is still EOpNull!
0:135 'qualim2' (layout(r32i ) coherent volatile readonly uniform iimage2D) 0:135 'qualim2' (layout(r32i ) coherent volatile readonly uniform iimage2D)
0:136 Function Call: passr(iI21; (global void) 0:136 Function Call: passr(iI21; (global void)
0:136 'iimg2D' (layout(r32i ) uniform iimage2D) 0:136 'iimg2D' (layout(r32i ) uniform iimage2D)
0:153 Function Definition: qlod( (global void)
0:153 Function Parameters:
0:? Sequence
0:157 'levels' (temp int)
0:158 'levels' (temp int)
0:? Linker Objects 0:? Linker Objects
0:? 'v2' (smooth out 2-component vector of float) 0:? 'v2' (smooth out 2-component vector of float)
0:? 'bad' (in 10-element array of 4-component vector of float) 0:? 'bad' (in 10-element array of 4-component vector of float)
@ -290,6 +299,8 @@ ERROR: node is still EOpNull!
0:? 'i5bad' (layout(rgba32ui ) uniform iimage2D) 0:? 'i5bad' (layout(rgba32ui ) uniform iimage2D)
0:? 'i6bad' (layout(r8ui ) uniform iimage2D) 0:? 'i6bad' (layout(r8ui ) uniform iimage2D)
0:? 'offcheckI' (layout(column_major shared ) uniform block{layout(column_major shared offset=16 ) uniform int foo}) 0:? 'offcheckI' (layout(column_major shared ) uniform block{layout(column_major shared offset=16 ) uniform int foo})
0:? 'samp1D' (uniform sampler1D)
0:? 'samp1Ds' (uniform sampler1DShadow)
0:? 'gl_VertexID' (gl_VertexId int VertexId) 0:? 'gl_VertexID' (gl_VertexId int VertexId)
0:? 'gl_InstanceID' (gl_InstanceId int InstanceId) 0:? 'gl_InstanceID' (gl_InstanceId int InstanceId)
@ -484,6 +495,11 @@ ERROR: node is still EOpNull!
0:135 'qualim2' (layout(r32i ) coherent volatile readonly uniform iimage2D) 0:135 'qualim2' (layout(r32i ) coherent volatile readonly uniform iimage2D)
0:136 Function Call: passr(iI21; (global void) 0:136 Function Call: passr(iI21; (global void)
0:136 'iimg2D' (layout(r32i ) uniform iimage2D) 0:136 'iimg2D' (layout(r32i ) uniform iimage2D)
0:153 Function Definition: qlod( (global void)
0:153 Function Parameters:
0:? Sequence
0:157 'levels' (temp int)
0:158 'levels' (temp int)
0:? Linker Objects 0:? Linker Objects
0:? 'v2' (smooth out 2-component vector of float) 0:? 'v2' (smooth out 2-component vector of float)
0:? 'bad' (in 10-element array of 4-component vector of float) 0:? 'bad' (in 10-element array of 4-component vector of float)
@ -535,6 +551,8 @@ ERROR: node is still EOpNull!
0:? 'i5bad' (layout(rgba32ui ) uniform iimage2D) 0:? 'i5bad' (layout(rgba32ui ) uniform iimage2D)
0:? 'i6bad' (layout(r8ui ) uniform iimage2D) 0:? 'i6bad' (layout(r8ui ) uniform iimage2D)
0:? 'offcheckI' (layout(column_major shared ) uniform block{layout(column_major shared offset=16 ) uniform int foo}) 0:? 'offcheckI' (layout(column_major shared ) uniform block{layout(column_major shared offset=16 ) uniform int foo})
0:? 'samp1D' (uniform sampler1D)
0:? 'samp1Ds' (uniform sampler1DShadow)
0:? 'gl_VertexID' (gl_VertexId int VertexId) 0:? 'gl_VertexID' (gl_VertexId int VertexId)
0:? 'gl_InstanceID' (gl_InstanceId int InstanceId) 0:? 'gl_InstanceID' (gl_InstanceId int InstanceId)

View File

@ -59,7 +59,11 @@ ERROR: 0:168: 'textureSamples and imageSamples' : not supported for this version
ERROR: 0:169: 'textureSamples and imageSamples' : not supported for this version or the enabled extensions ERROR: 0:169: 'textureSamples and imageSamples' : not supported for this version or the enabled extensions
ERROR: 0:170: 'textureSamples and imageSamples' : not supported for this version or the enabled extensions ERROR: 0:170: 'textureSamples and imageSamples' : not supported for this version or the enabled extensions
ERROR: 0:171: 'textureSamples and imageSamples' : not supported for this version or the enabled extensions ERROR: 0:171: 'textureSamples and imageSamples' : not supported for this version or the enabled extensions
ERROR: 59 compilation errors. No code generated. ERROR: 0:221: 'textureQueryLevels' : no matching overloaded function found
ERROR: 0:221: 'assign' : cannot convert from 'const float' to 'temp int'
ERROR: 0:222: 'textureQueryLevels' : no matching overloaded function found
ERROR: 0:222: 'assign' : cannot convert from 'const float' to 'temp int'
ERROR: 63 compilation errors. No code generated.
Shader version: 430 Shader version: 430
@ -139,6 +143,63 @@ ERROR: node is still EOpNull!
0:181 's' (temp int) 0:181 's' (temp int)
0:181 imageQuerySamples (global int) 0:181 imageQuerySamples (global int)
0:181 'i2dmsa' (layout(rgba32f ) uniform image2DMSArray) 0:181 'i2dmsa' (layout(rgba32f ) uniform image2DMSArray)
0:202 Function Definition: qlod( (global void)
0:202 Function Parameters:
0:? Sequence
0:206 move second child to first child (temp int)
0:206 'levels' (temp int)
0:206 textureQueryLevels (global int)
0:206 'samp1D' (uniform sampler1D)
0:207 move second child to first child (temp int)
0:207 'levels' (temp int)
0:207 textureQueryLevels (global int)
0:207 'usamp2D' (uniform usampler2D)
0:208 move second child to first child (temp int)
0:208 'levels' (temp int)
0:208 textureQueryLevels (global int)
0:208 'isamp3D' (uniform isampler3D)
0:209 move second child to first child (temp int)
0:209 'levels' (temp int)
0:209 textureQueryLevels (global int)
0:209 'isampCube' (uniform isamplerCube)
0:210 move second child to first child (temp int)
0:210 'levels' (temp int)
0:210 textureQueryLevels (global int)
0:210 'isamp1DA' (uniform isampler1DArray)
0:211 move second child to first child (temp int)
0:211 'levels' (temp int)
0:211 textureQueryLevels (global int)
0:211 'samp2DA' (uniform sampler2DArray)
0:212 move second child to first child (temp int)
0:212 'levels' (temp int)
0:212 textureQueryLevels (global int)
0:212 'usampCubeA' (uniform usamplerCubeArray)
0:214 move second child to first child (temp int)
0:214 'levels' (temp int)
0:214 textureQueryLevels (global int)
0:214 'samp1Ds' (uniform sampler1DShadow)
0:215 move second child to first child (temp int)
0:215 'levels' (temp int)
0:215 textureQueryLevels (global int)
0:215 'samp2Ds' (uniform sampler2DShadow)
0:216 move second child to first child (temp int)
0:216 'levels' (temp int)
0:216 textureQueryLevels (global int)
0:216 'sampCubes' (uniform samplerCubeShadow)
0:217 move second child to first child (temp int)
0:217 'levels' (temp int)
0:217 textureQueryLevels (global int)
0:217 'samp1DAs' (uniform sampler1DArrayShadow)
0:218 move second child to first child (temp int)
0:218 'levels' (temp int)
0:218 textureQueryLevels (global int)
0:218 'samp2DAs' (uniform sampler2DArrayShadow)
0:219 move second child to first child (temp int)
0:219 'levels' (temp int)
0:219 textureQueryLevels (global int)
0:219 'sampCubeAs' (uniform samplerCubeArrayShadow)
0:221 'levels' (temp int)
0:222 'levels' (temp int)
0:? Linker Objects 0:? Linker Objects
0:? 'v4' (layout(location=3 ) temp 4-component vector of float) 0:? 'v4' (layout(location=3 ) temp 4-component vector of float)
0:? 'uv4' (layout(location=4 ) uniform 4-component vector of float) 0:? 'uv4' (layout(location=4 ) uniform 4-component vector of float)
@ -184,6 +245,21 @@ ERROR: node is still EOpNull!
0:? 'us2dmsa' (uniform usampler2DMSArray) 0:? 'us2dmsa' (uniform usampler2DMSArray)
0:? 'ii2dms' (layout(rgba32i ) uniform iimage2DMS) 0:? 'ii2dms' (layout(rgba32i ) uniform iimage2DMS)
0:? 'i2dmsa' (layout(rgba32f ) uniform image2DMSArray) 0:? 'i2dmsa' (layout(rgba32f ) uniform image2DMSArray)
0:? 'samp1D' (uniform sampler1D)
0:? 'usamp2D' (uniform usampler2D)
0:? 'isamp3D' (uniform isampler3D)
0:? 'isampCube' (uniform isamplerCube)
0:? 'isamp1DA' (uniform isampler1DArray)
0:? 'samp2DA' (uniform sampler2DArray)
0:? 'usampCubeA' (uniform usamplerCubeArray)
0:? 'samp1Ds' (uniform sampler1DShadow)
0:? 'samp2Ds' (uniform sampler2DShadow)
0:? 'sampCubes' (uniform samplerCubeShadow)
0:? 'samp1DAs' (uniform sampler1DArrayShadow)
0:? 'samp2DAs' (uniform sampler2DArrayShadow)
0:? 'sampCubeAs' (uniform samplerCubeArrayShadow)
0:? 'sampBuf' (uniform samplerBuffer)
0:? 'sampRect' (uniform sampler2DRect)
0:? 'gl_VertexID' (gl_VertexId int VertexId) 0:? 'gl_VertexID' (gl_VertexId int VertexId)
0:? 'gl_InstanceID' (gl_InstanceId int InstanceId) 0:? 'gl_InstanceID' (gl_InstanceId int InstanceId)
@ -271,6 +347,63 @@ ERROR: node is still EOpNull!
0:181 's' (temp int) 0:181 's' (temp int)
0:181 imageQuerySamples (global int) 0:181 imageQuerySamples (global int)
0:181 'i2dmsa' (layout(rgba32f ) uniform image2DMSArray) 0:181 'i2dmsa' (layout(rgba32f ) uniform image2DMSArray)
0:202 Function Definition: qlod( (global void)
0:202 Function Parameters:
0:? Sequence
0:206 move second child to first child (temp int)
0:206 'levels' (temp int)
0:206 textureQueryLevels (global int)
0:206 'samp1D' (uniform sampler1D)
0:207 move second child to first child (temp int)
0:207 'levels' (temp int)
0:207 textureQueryLevels (global int)
0:207 'usamp2D' (uniform usampler2D)
0:208 move second child to first child (temp int)
0:208 'levels' (temp int)
0:208 textureQueryLevels (global int)
0:208 'isamp3D' (uniform isampler3D)
0:209 move second child to first child (temp int)
0:209 'levels' (temp int)
0:209 textureQueryLevels (global int)
0:209 'isampCube' (uniform isamplerCube)
0:210 move second child to first child (temp int)
0:210 'levels' (temp int)
0:210 textureQueryLevels (global int)
0:210 'isamp1DA' (uniform isampler1DArray)
0:211 move second child to first child (temp int)
0:211 'levels' (temp int)
0:211 textureQueryLevels (global int)
0:211 'samp2DA' (uniform sampler2DArray)
0:212 move second child to first child (temp int)
0:212 'levels' (temp int)
0:212 textureQueryLevels (global int)
0:212 'usampCubeA' (uniform usamplerCubeArray)
0:214 move second child to first child (temp int)
0:214 'levels' (temp int)
0:214 textureQueryLevels (global int)
0:214 'samp1Ds' (uniform sampler1DShadow)
0:215 move second child to first child (temp int)
0:215 'levels' (temp int)
0:215 textureQueryLevels (global int)
0:215 'samp2Ds' (uniform sampler2DShadow)
0:216 move second child to first child (temp int)
0:216 'levels' (temp int)
0:216 textureQueryLevels (global int)
0:216 'sampCubes' (uniform samplerCubeShadow)
0:217 move second child to first child (temp int)
0:217 'levels' (temp int)
0:217 textureQueryLevels (global int)
0:217 'samp1DAs' (uniform sampler1DArrayShadow)
0:218 move second child to first child (temp int)
0:218 'levels' (temp int)
0:218 textureQueryLevels (global int)
0:218 'samp2DAs' (uniform sampler2DArrayShadow)
0:219 move second child to first child (temp int)
0:219 'levels' (temp int)
0:219 textureQueryLevels (global int)
0:219 'sampCubeAs' (uniform samplerCubeArrayShadow)
0:221 'levels' (temp int)
0:222 'levels' (temp int)
0:? Linker Objects 0:? Linker Objects
0:? 'v4' (layout(location=3 ) temp 4-component vector of float) 0:? 'v4' (layout(location=3 ) temp 4-component vector of float)
0:? 'uv4' (layout(location=4 ) uniform 4-component vector of float) 0:? 'uv4' (layout(location=4 ) uniform 4-component vector of float)
@ -316,6 +449,21 @@ ERROR: node is still EOpNull!
0:? 'us2dmsa' (uniform usampler2DMSArray) 0:? 'us2dmsa' (uniform usampler2DMSArray)
0:? 'ii2dms' (layout(rgba32i ) uniform iimage2DMS) 0:? 'ii2dms' (layout(rgba32i ) uniform iimage2DMS)
0:? 'i2dmsa' (layout(rgba32f ) uniform image2DMSArray) 0:? 'i2dmsa' (layout(rgba32f ) uniform image2DMSArray)
0:? 'samp1D' (uniform sampler1D)
0:? 'usamp2D' (uniform usampler2D)
0:? 'isamp3D' (uniform isampler3D)
0:? 'isampCube' (uniform isamplerCube)
0:? 'isamp1DA' (uniform isampler1DArray)
0:? 'samp2DA' (uniform sampler2DArray)
0:? 'usampCubeA' (uniform usamplerCubeArray)
0:? 'samp1Ds' (uniform sampler1DShadow)
0:? 'samp2Ds' (uniform sampler2DShadow)
0:? 'sampCubes' (uniform samplerCubeShadow)
0:? 'samp1DAs' (uniform sampler1DArrayShadow)
0:? 'samp2DAs' (uniform sampler2DArrayShadow)
0:? 'sampCubeAs' (uniform samplerCubeArrayShadow)
0:? 'sampBuf' (uniform samplerBuffer)
0:? 'sampRect' (uniform sampler2DRect)
0:? 'gl_VertexID' (gl_VertexId int VertexId) 0:? 'gl_VertexID' (gl_VertexId int VertexId)
0:? 'gl_InstanceID' (gl_InstanceId int InstanceId) 0:? 'gl_InstanceID' (gl_InstanceId int InstanceId)

View File

@ -76,7 +76,7 @@ ERROR: node is still EOpNull!
0:? 'ba' (layout(location=32 component=1 ) smooth out 4X4 matrix of float) 0:? 'ba' (layout(location=32 component=1 ) smooth out 4X4 matrix of float)
0:? 'Ss' (layout(location=33 component=1 ) smooth out structure{global int a}) 0:? 'Ss' (layout(location=33 component=1 ) smooth out structure{global int a})
0:? 'bb' (layout(location=34 component=1 ) out block{out int a}) 0:? 'bb' (layout(location=34 component=1 ) out block{out int a})
0:? 'bc' (layout(location=63 component=1 ) smooth out float) 0:? 'bc' (layout(location=4095 component=1 ) smooth out float)
0:? 'bd' (out block{layout(location=40 component=2 ) out float u, layout(location=40 component=0 ) out float v, layout(location=40 component=3 ) out float w, layout(location=40 component=1 ) out 2-component vector of float x, layout(location=41 component=3 ) out 2-component vector of float y, layout(location=42 component=1 ) out 4-component vector of float z, layout(location=42 component=1 ) out 4X4 matrix of float ba, layout(location=43 component=1 ) out structure{global int a} Ss}) 0:? 'bd' (out block{layout(location=40 component=2 ) out float u, layout(location=40 component=0 ) out float v, layout(location=40 component=3 ) out float w, layout(location=40 component=1 ) out 2-component vector of float x, layout(location=41 component=3 ) out 2-component vector of float y, layout(location=42 component=1 ) out 4-component vector of float z, layout(location=42 component=1 ) out 4X4 matrix of float ba, layout(location=43 component=1 ) out structure{global int a} Ss})
0:? 'be' (layout(location=50 component=3 ) smooth out int) 0:? 'be' (layout(location=50 component=3 ) smooth out int)
0:? 'bf' (layout(location=50 component=0 ) smooth out 3-component vector of float) 0:? 'bf' (layout(location=50 component=0 ) smooth out 3-component vector of float)
@ -144,7 +144,7 @@ ERROR: node is still EOpNull!
0:? 'ba' (layout(location=32 component=1 ) smooth out 4X4 matrix of float) 0:? 'ba' (layout(location=32 component=1 ) smooth out 4X4 matrix of float)
0:? 'Ss' (layout(location=33 component=1 ) smooth out structure{global int a}) 0:? 'Ss' (layout(location=33 component=1 ) smooth out structure{global int a})
0:? 'bb' (layout(location=34 component=1 ) out block{out int a}) 0:? 'bb' (layout(location=34 component=1 ) out block{out int a})
0:? 'bc' (layout(location=63 component=1 ) smooth out float) 0:? 'bc' (layout(location=4095 component=1 ) smooth out float)
0:? 'bd' (out block{layout(location=40 component=2 ) out float u, layout(location=40 component=0 ) out float v, layout(location=40 component=3 ) out float w, layout(location=40 component=1 ) out 2-component vector of float x, layout(location=41 component=3 ) out 2-component vector of float y, layout(location=42 component=1 ) out 4-component vector of float z, layout(location=42 component=1 ) out 4X4 matrix of float ba, layout(location=43 component=1 ) out structure{global int a} Ss}) 0:? 'bd' (out block{layout(location=40 component=2 ) out float u, layout(location=40 component=0 ) out float v, layout(location=40 component=3 ) out float w, layout(location=40 component=1 ) out 2-component vector of float x, layout(location=41 component=3 ) out 2-component vector of float y, layout(location=42 component=1 ) out 4-component vector of float z, layout(location=42 component=1 ) out 4X4 matrix of float ba, layout(location=43 component=1 ) out structure{global int a} Ss})
0:? 'be' (layout(location=50 component=3 ) smooth out int) 0:? 'be' (layout(location=50 component=3 ) smooth out int)
0:? 'bf' (layout(location=50 component=0 ) smooth out 3-component vector of float) 0:? 'bf' (layout(location=50 component=0 ) smooth out 3-component vector of float)

View File

@ -5,7 +5,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 48 // Id's are bound by 47
Source ESSL 100 Source ESSL 100
Capability Shader Capability Shader
@ -14,75 +14,73 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 9 "foo(" Name 8 "foo("
Name 12 "face1" Name 11 "face1"
Name 14 "face2" Name 13 "face2"
Name 18 "z" Name 17 "z"
Name 22 "low" Name 21 "low"
Name 27 "high" Name 26 "high"
Name 37 "gl_FragColor" Name 36 "gl_FragColor"
Decorate 12(face1) RelaxedPrecision Decorate 11(face1) RelaxedPrecision
Decorate 14(face2) RelaxedPrecision Decorate 13(face2) RelaxedPrecision
Decorate 18(z) RelaxedPrecision Decorate 17(z) RelaxedPrecision
Decorate 22(low) RelaxedPrecision Decorate 21(low) RelaxedPrecision
Decorate 27(high) RelaxedPrecision Decorate 26(high) RelaxedPrecision
Decorate 37(gl_FragColor) RelaxedPrecision Decorate 36(gl_FragColor) RelaxedPrecision
Decorate 37(gl_FragColor) BuiltIn FragColor Decorate 36(gl_FragColor) BuiltIn FragColor
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeFunction 7(float) 7: TypeFunction 6(float)
11: TypePointer PrivateGlobal 7(float) 10: TypePointer PrivateGlobal 6(float)
12(face1): 11(ptr) Variable PrivateGlobal 11(face1): 10(ptr) Variable PrivateGlobal
13: 7(float) Constant 1093664768 12: 6(float) Constant 1093664768
14(face2): 11(ptr) Variable PrivateGlobal 13(face2): 10(ptr) Variable PrivateGlobal
15: 7(float) Constant 3221225472 14: 6(float) Constant 3221225472
16: TypeInt 32 1 15: TypeInt 32 1
17: TypePointer Function 16(int) 16: TypePointer Function 15(int)
19: 16(int) Constant 3 18: 15(int) Constant 3
20: 16(int) Constant 2 19: 15(int) Constant 2
21: TypePointer UniformConstant 16(int) 20: TypePointer UniformConstant 15(int)
22(low): 21(ptr) Variable UniformConstant 21(low): 20(ptr) Variable UniformConstant
25: 16(int) Constant 1 24: 15(int) Constant 1
27(high): 21(ptr) Variable UniformConstant 26(high): 20(ptr) Variable UniformConstant
29: TypeBool 28: TypeBool
35: TypeVector 7(float) 4 34: TypeVector 6(float) 4
36: TypePointer Output 35(fvec4) 35: TypePointer Output 34(fvec4)
37(gl_FragColor): 36(ptr) Variable Output 36(gl_FragColor): 35(ptr) Variable Output
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
18(z): 17(ptr) Variable Function 17(z): 16(ptr) Variable Function
Store 12(face1) 13 Store 11(face1) 12
Store 14(face2) 15 Store 13(face2) 14
Store 18(z) 19 Store 17(z) 18
23: 16(int) Load 22(low) 22: 15(int) Load 21(low)
24: 16(int) IMul 20 23 23: 15(int) IMul 19 22
26: 16(int) IAdd 24 25 25: 15(int) IAdd 23 24
28: 16(int) Load 27(high) 27: 15(int) Load 26(high)
30: 29(bool) SLessThan 26 28 29: 28(bool) SLessThan 25 27
SelectionMerge 32 None SelectionMerge 31 None
BranchConditional 30 31 32 BranchConditional 29 30 31
31: Label 30: Label
33: 16(int) Load 18(z) 32: 15(int) Load 17(z)
34: 16(int) IAdd 33 25 33: 15(int) IAdd 32 24
Store 18(z) 34 Store 17(z) 33
Branch 32 Branch 31
32: Label 31: Label
38: 7(float) Load 12(face1) 37: 6(float) Load 11(face1)
39: 16(int) Load 18(z) 38: 15(int) Load 17(z)
40: 7(float) ConvertSToF 39 39: 6(float) ConvertSToF 38
41: 35(fvec4) CompositeConstruct 40 40 40 40 40: 34(fvec4) CompositeConstruct 39 39 39 39
42: 35(fvec4) VectorTimesScalar 41 38 41: 34(fvec4) VectorTimesScalar 40 37
43: 7(float) FunctionCall 9(foo() 42: 6(float) FunctionCall 8(foo()
44: 35(fvec4) CompositeConstruct 43 43 43 43 43: 34(fvec4) CompositeConstruct 42 42 42 42
45: 35(fvec4) FAdd 42 44 44: 34(fvec4) FAdd 41 43
Store 37(gl_FragColor) 45 Store 36(gl_FragColor) 44
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd
9(foo(): 7(float) Function None 8 8(foo(): 6(float) Function None 7
10: Label 9: Label
46: 7(float) Load 14(face2) 45: 6(float) Load 13(face2)
ReturnValue 46 ReturnValue 45
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 93 // Id's are bound by 92
Source GLSL 140 Source GLSL 140
Capability Shader Capability Shader
@ -14,151 +14,149 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 9 "foo(" Name 8 "foo("
Name 12 "i1" Name 11 "i1"
Name 17 "gl_FrontFacing" Name 16 "gl_FrontFacing"
Name 25 "i2" Name 24 "i2"
Name 29 "o" Name 28 "o"
Name 34 "gl_ClipDistance" Name 33 "gl_ClipDistance"
Name 43 "k" Name 42 "k"
Name 55 "sampR" Name 54 "sampR"
Name 62 "sampB" Name 61 "sampB"
Name 86 "samp2Da" Name 85 "samp2Da"
Name 90 "bn" Name 89 "bn"
MemberName 90(bn) 0 "matra" MemberName 89(bn) 0 "matra"
MemberName 90(bn) 1 "matca" MemberName 89(bn) 1 "matca"
MemberName 90(bn) 2 "matr" MemberName 89(bn) 2 "matr"
MemberName 90(bn) 3 "matc" MemberName 89(bn) 3 "matc"
MemberName 90(bn) 4 "matrdef" MemberName 89(bn) 4 "matrdef"
Name 92 "" Name 91 ""
Decorate 17(gl_FrontFacing) BuiltIn FrontFacing Decorate 16(gl_FrontFacing) BuiltIn FrontFacing
Decorate 34(gl_ClipDistance) Smooth Decorate 33(gl_ClipDistance) Smooth
Decorate 34(gl_ClipDistance) BuiltIn ClipDistance Decorate 33(gl_ClipDistance) BuiltIn ClipDistance
Decorate 43(k) Smooth Decorate 42(k) Smooth
Decorate 86(samp2Da) NoStaticUse Decorate 85(samp2Da) NoStaticUse
Decorate 89 ArrayStride 64 Decorate 88 ArrayStride 64
Decorate 89 ArrayStride 64 Decorate 88 ArrayStride 64
MemberDecorate 90(bn) 0 RowMajor MemberDecorate 89(bn) 0 RowMajor
MemberDecorate 90(bn) 0 Offset 0 MemberDecorate 89(bn) 0 Offset 0
MemberDecorate 90(bn) 0 MatrixStride 16 MemberDecorate 89(bn) 0 MatrixStride 16
MemberDecorate 90(bn) 1 ColMajor MemberDecorate 89(bn) 1 ColMajor
MemberDecorate 90(bn) 1 Offset 256 MemberDecorate 89(bn) 1 Offset 256
MemberDecorate 90(bn) 1 MatrixStride 16 MemberDecorate 89(bn) 1 MatrixStride 16
MemberDecorate 90(bn) 2 RowMajor MemberDecorate 89(bn) 2 RowMajor
MemberDecorate 90(bn) 2 Offset 512 MemberDecorate 89(bn) 2 Offset 512
MemberDecorate 90(bn) 2 MatrixStride 16 MemberDecorate 89(bn) 2 MatrixStride 16
MemberDecorate 90(bn) 3 ColMajor MemberDecorate 89(bn) 3 ColMajor
MemberDecorate 90(bn) 3 Offset 576 MemberDecorate 89(bn) 3 Offset 576
MemberDecorate 90(bn) 3 MatrixStride 16 MemberDecorate 89(bn) 3 MatrixStride 16
MemberDecorate 90(bn) 4 RowMajor MemberDecorate 89(bn) 4 RowMajor
MemberDecorate 90(bn) 4 Offset 640 MemberDecorate 89(bn) 4 Offset 640
MemberDecorate 90(bn) 4 MatrixStride 16 MemberDecorate 89(bn) 4 MatrixStride 16
Decorate 90(bn) Block Decorate 89(bn) Block
Decorate 92 NoStaticUse Decorate 91 NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeFunction 7(float) 7: TypeFunction 6(float)
11: TypePointer PrivateGlobal 7(float) 10: TypePointer PrivateGlobal 6(float)
12(i1): 11(ptr) Variable PrivateGlobal 11(i1): 10(ptr) Variable PrivateGlobal
13: TypePointer Function 7(float) 12: TypePointer Function 6(float)
15: TypeBool 14: TypeBool
16: TypePointer Input 15(bool) 15: TypePointer Input 14(bool)
17(gl_FrontFacing): 16(ptr) Variable Input 16(gl_FrontFacing): 15(ptr) Variable Input
21: 7(float) Constant 3221225472 20: 6(float) Constant 3221225472
23: 7(float) Constant 1073741824 22: 6(float) Constant 1073741824
25(i2): 11(ptr) Variable PrivateGlobal 24(i2): 10(ptr) Variable PrivateGlobal
26: 7(float) Constant 1120665600 25: 6(float) Constant 1120665600
27: TypeVector 7(float) 4 26: TypeVector 6(float) 4
28: TypePointer Output 27(fvec4) 27: TypePointer Output 26(fvec4)
29(o): 28(ptr) Variable Output 28(o): 27(ptr) Variable Output
30: TypeInt 32 0 29: TypeInt 32 0
31: 30(int) Constant 5 30: 29(int) Constant 5
32: TypeArray 7(float) 31 31: TypeArray 6(float) 30
33: TypePointer Input 32 32: TypePointer Input 31
34(gl_ClipDistance): 33(ptr) Variable Input 33(gl_ClipDistance): 32(ptr) Variable Input
35: TypeInt 32 1 34: TypeInt 32 1
36: 35(int) Constant 2 35: 34(int) Constant 2
37: TypePointer Input 7(float) 36: TypePointer Input 6(float)
42: TypePointer Input 27(fvec4) 41: TypePointer Input 26(fvec4)
43(k): 42(ptr) Variable Input 42(k): 41(ptr) Variable Input
45: TypeVector 35(int) 4 44: TypeVector 34(int) 4
52: TypeImage 7(float) Rect sampled format:Unknown 51: TypeImage 6(float) Rect sampled format:Unknown
53: TypeSampledImage 52 52: TypeSampledImage 51
54: TypePointer UniformConstant 53 53: TypePointer UniformConstant 52
55(sampR): 54(ptr) Variable UniformConstant 54(sampR): 53(ptr) Variable UniformConstant
57: TypeVector 35(int) 2 56: TypeVector 34(int) 2
59: TypeImage 35(int) Buffer sampled format:Unknown 58: TypeImage 34(int) Buffer sampled format:Unknown
60: TypeSampledImage 59 59: TypeSampledImage 58
61: TypePointer UniformConstant 60 60: TypePointer UniformConstant 59
62(sampB): 61(ptr) Variable UniformConstant 61(sampB): 60(ptr) Variable UniformConstant
67: TypeVector 7(float) 2 66: TypeVector 6(float) 2
70: 7(float) Constant 1120403456 69: 6(float) Constant 1120403456
81: TypeImage 7(float) 2D sampled format:Unknown 80: TypeImage 6(float) 2D sampled format:Unknown
82: TypeSampledImage 81 81: TypeSampledImage 80
83: 30(int) Constant 3 82: 29(int) Constant 3
84: TypeArray 82 83 83: TypeArray 81 82
85: TypePointer UniformConstant 84 84: TypePointer UniformConstant 83
86(samp2Da): 85(ptr) Variable UniformConstant 85(samp2Da): 84(ptr) Variable UniformConstant
87: TypeMatrix 27(fvec4) 4 86: TypeMatrix 26(fvec4) 4
88: 30(int) Constant 4 87: 29(int) Constant 4
89: TypeArray 87 88 88: TypeArray 86 87
90(bn): TypeStruct 89 89 87 87 87 89(bn): TypeStruct 88 88 86 86 86
91: TypePointer Uniform 90(bn) 90: TypePointer Uniform 89(bn)
92: 91(ptr) Variable Uniform 91: 90(ptr) Variable Uniform
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
14: 13(ptr) Variable Function 13: 12(ptr) Variable Function
18: 15(bool) Load 17(gl_FrontFacing) 17: 14(bool) Load 16(gl_FrontFacing)
SelectionMerge 20 None SelectionMerge 19 None
BranchConditional 18 19 22 BranchConditional 17 18 21
19: Label 18: Label
Store 14 21 Store 13 20
Branch 20 Branch 19
22: Label 21: Label
Store 14 23 Store 13 22
Branch 20 Branch 19
20: Label 19: Label
24: 7(float) Load 14 23: 6(float) Load 13
Store 12(i1) 24 Store 11(i1) 23
Store 25(i2) 26 Store 24(i2) 25
38: 37(ptr) AccessChain 34(gl_ClipDistance) 36 37: 36(ptr) AccessChain 33(gl_ClipDistance) 35
39: 7(float) Load 38 38: 6(float) Load 37
40: 27(fvec4) Load 29(o) 39: 26(fvec4) Load 28(o)
41: 27(fvec4) CompositeInsert 39 40 1 40: 26(fvec4) CompositeInsert 38 39 1
Store 29(o) 41 Store 28(o) 40
44: 27(fvec4) Load 43(k) 43: 26(fvec4) Load 42(k)
46: 45(ivec4) ConvertFToS 44 45: 44(ivec4) ConvertFToS 43
47: 35(int) CompositeExtract 46 0 46: 34(int) CompositeExtract 45 0
48: 37(ptr) AccessChain 34(gl_ClipDistance) 47 47: 36(ptr) AccessChain 33(gl_ClipDistance) 46
49: 7(float) Load 48 48: 6(float) Load 47
50: 27(fvec4) Load 29(o) 49: 26(fvec4) Load 28(o)
51: 27(fvec4) CompositeInsert 49 50 2 50: 26(fvec4) CompositeInsert 48 49 2
Store 29(o) 51 Store 28(o) 50
56: 53 Load 55(sampR) 55: 52 Load 54(sampR)
58: 57(ivec2) ImageQuerySize 56 57: 56(ivec2) ImageQuerySize 55
63: 60 Load 62(sampB) 62: 59 Load 61(sampB)
64: 35(int) ImageQuerySize 63 63: 34(int) ImageQuerySize 62
65: 57(ivec2) CompositeConstruct 64 64 64: 56(ivec2) CompositeConstruct 63 63
66: 57(ivec2) IAdd 58 65 65: 56(ivec2) IAdd 57 64
68: 67(fvec2) ConvertSToF 66 67: 66(fvec2) ConvertSToF 65
69: 7(float) CompositeExtract 68 0 68: 6(float) CompositeExtract 67 0
71: 7(float) FDiv 69 70 70: 6(float) FDiv 68 69
72: 27(fvec4) Load 29(o) 71: 26(fvec4) Load 28(o)
73: 27(fvec4) CompositeInsert 71 72 3 72: 26(fvec4) CompositeInsert 70 71 3
Store 29(o) 73 Store 28(o) 72
74: 7(float) FunctionCall 9(foo() 73: 6(float) FunctionCall 8(foo()
75: 27(fvec4) Load 29(o) 74: 26(fvec4) Load 28(o)
76: 27(fvec4) CompositeInsert 74 75 2 75: 26(fvec4) CompositeInsert 73 74 2
Store 29(o) 76 Store 28(o) 75
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd
9(foo(): 7(float) Function None 8 8(foo(): 6(float) Function None 7
10: Label 9: Label
77: 7(float) Load 12(i1) 76: 6(float) Load 11(i1)
78: 7(float) Load 25(i2) 77: 6(float) Load 24(i2)
79: 7(float) FAdd 77 78 78: 6(float) FAdd 76 77
ReturnValue 79 ReturnValue 78
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked geometry stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 72 // Id's are bound by 71
Source GLSL 150 Source GLSL 150
Capability Geometry Capability Geometry
@ -17,134 +17,132 @@ Linked geometry stage:
ExecutionMode 4 OutputTriangleStrip ExecutionMode 4 OutputTriangleStrip
ExecutionMode 4 OutputVertices 30 ExecutionMode 4 OutputVertices 30
Name 4 "main" Name 4 "main"
Name 9 "fromVertex" Name 8 "fromVertex"
MemberName 9(fromVertex) 0 "color" MemberName 8(fromVertex) 0 "color"
Name 11 "" Name 10 ""
Name 14 "fromVertex" Name 13 "fromVertex"
MemberName 14(fromVertex) 0 "color" MemberName 13(fromVertex) 0 "color"
Name 19 "fromV" Name 18 "fromV"
Name 28 "gl_PerVertex" Name 27 "gl_PerVertex"
MemberName 28(gl_PerVertex) 0 "gl_Position" MemberName 27(gl_PerVertex) 0 "gl_Position"
MemberName 28(gl_PerVertex) 1 "gl_PointSize" MemberName 27(gl_PerVertex) 1 "gl_PointSize"
MemberName 28(gl_PerVertex) 2 "gl_ClipDistance" MemberName 27(gl_PerVertex) 2 "gl_ClipDistance"
Name 30 "" Name 29 ""
Name 31 "gl_PerVertex" Name 30 "gl_PerVertex"
MemberName 31(gl_PerVertex) 0 "gl_Position" MemberName 30(gl_PerVertex) 0 "gl_Position"
MemberName 31(gl_PerVertex) 1 "gl_PointSize" MemberName 30(gl_PerVertex) 1 "gl_PointSize"
MemberName 31(gl_PerVertex) 2 "gl_ClipDistance" MemberName 30(gl_PerVertex) 2 "gl_ClipDistance"
Name 34 "gl_in" Name 33 "gl_in"
Name 48 "gl_PrimitiveID" Name 47 "gl_PrimitiveID"
Name 50 "gl_PrimitiveIDIn" Name 49 "gl_PrimitiveIDIn"
Name 52 "gl_Layer" Name 51 "gl_Layer"
Name 69 "toFragment" Name 68 "toFragment"
MemberName 69(toFragment) 0 "color" MemberName 68(toFragment) 0 "color"
Name 71 "toF" Name 70 "toF"
Decorate 9(fromVertex) Block Decorate 8(fromVertex) Block
Decorate 9(fromVertex) Stream 3 Decorate 8(fromVertex) Stream 3
Decorate 11 Stream 3 Decorate 10 Stream 3
Decorate 14(fromVertex) Block Decorate 13(fromVertex) Block
MemberDecorate 28(gl_PerVertex) 0 BuiltIn Position MemberDecorate 27(gl_PerVertex) 0 BuiltIn Position
MemberDecorate 28(gl_PerVertex) 1 BuiltIn PointSize MemberDecorate 27(gl_PerVertex) 1 BuiltIn PointSize
MemberDecorate 28(gl_PerVertex) 2 BuiltIn ClipDistance MemberDecorate 27(gl_PerVertex) 2 BuiltIn ClipDistance
Decorate 28(gl_PerVertex) Block Decorate 27(gl_PerVertex) Block
Decorate 28(gl_PerVertex) Stream 0 Decorate 27(gl_PerVertex) Stream 0
Decorate 30 Stream 0 Decorate 29 Stream 0
MemberDecorate 31(gl_PerVertex) 0 BuiltIn Position MemberDecorate 30(gl_PerVertex) 0 BuiltIn Position
MemberDecorate 31(gl_PerVertex) 1 BuiltIn PointSize MemberDecorate 30(gl_PerVertex) 1 BuiltIn PointSize
MemberDecorate 31(gl_PerVertex) 2 BuiltIn ClipDistance MemberDecorate 30(gl_PerVertex) 2 BuiltIn ClipDistance
Decorate 31(gl_PerVertex) Block Decorate 30(gl_PerVertex) Block
Decorate 48(gl_PrimitiveID) Stream 0 Decorate 47(gl_PrimitiveID) Stream 0
Decorate 48(gl_PrimitiveID) BuiltIn PrimitiveId Decorate 47(gl_PrimitiveID) BuiltIn PrimitiveId
Decorate 50(gl_PrimitiveIDIn) BuiltIn PrimitiveId Decorate 49(gl_PrimitiveIDIn) BuiltIn PrimitiveId
Decorate 52(gl_Layer) Stream 0 Decorate 51(gl_Layer) Stream 0
Decorate 52(gl_Layer) BuiltIn Layer Decorate 51(gl_Layer) BuiltIn Layer
Decorate 69(toFragment) Block Decorate 68(toFragment) Block
Decorate 69(toFragment) Stream 3 Decorate 68(toFragment) Stream 3
Decorate 71(toF) Stream 3 Decorate 70(toF) Stream 3
Decorate 71(toF) NoStaticUse Decorate 70(toF) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 3 7: TypeVector 6(float) 3
9(fromVertex): TypeStruct 8(fvec3) 8(fromVertex): TypeStruct 7(fvec3)
10: TypePointer Output 9(fromVertex) 9: TypePointer Output 8(fromVertex)
11: 10(ptr) Variable Output 10: 9(ptr) Variable Output
12: TypeInt 32 1 11: TypeInt 32 1
13: 12(int) Constant 0 12: 11(int) Constant 0
14(fromVertex): TypeStruct 8(fvec3) 13(fromVertex): TypeStruct 7(fvec3)
15: TypeInt 32 0 14: TypeInt 32 0
16: 15(int) Constant 6 15: 14(int) Constant 6
17: TypeArray 14(fromVertex) 16 16: TypeArray 13(fromVertex) 15
18: TypePointer Input 17 17: TypePointer Input 16
19(fromV): 18(ptr) Variable Input 18(fromV): 17(ptr) Variable Input
20: TypePointer Input 8(fvec3) 19: TypePointer Input 7(fvec3)
23: TypePointer Output 8(fvec3) 22: TypePointer Output 7(fvec3)
25: TypeVector 7(float) 4 24: TypeVector 6(float) 4
26: 15(int) Constant 1 25: 14(int) Constant 1
27: TypeArray 7(float) 26 26: TypeArray 6(float) 25
28(gl_PerVertex): TypeStruct 25(fvec4) 7(float) 27 27(gl_PerVertex): TypeStruct 24(fvec4) 6(float) 26
29: TypePointer Output 28(gl_PerVertex) 28: TypePointer Output 27(gl_PerVertex)
30: 29(ptr) Variable Output 29: 28(ptr) Variable Output
31(gl_PerVertex): TypeStruct 25(fvec4) 7(float) 27 30(gl_PerVertex): TypeStruct 24(fvec4) 6(float) 26
32: TypeArray 31(gl_PerVertex) 16 31: TypeArray 30(gl_PerVertex) 15
33: TypePointer Input 32 32: TypePointer Input 31
34(gl_in): 33(ptr) Variable Input 33(gl_in): 32(ptr) Variable Input
35: TypePointer Input 25(fvec4) 34: TypePointer Input 24(fvec4)
38: TypePointer Output 25(fvec4) 37: TypePointer Output 24(fvec4)
40: 12(int) Constant 1 39: 11(int) Constant 1
41: 12(int) Constant 3 40: 11(int) Constant 3
42: TypePointer Input 7(float) 41: TypePointer Input 6(float)
45: TypePointer Output 7(float) 44: TypePointer Output 6(float)
47: TypePointer Output 12(int) 46: TypePointer Output 11(int)
48(gl_PrimitiveID): 47(ptr) Variable Output 47(gl_PrimitiveID): 46(ptr) Variable Output
49: TypePointer Input 12(int) 48: TypePointer Input 11(int)
50(gl_PrimitiveIDIn): 49(ptr) Variable Input 49(gl_PrimitiveIDIn): 48(ptr) Variable Input
52(gl_Layer): 47(ptr) Variable Output 51(gl_Layer): 46(ptr) Variable Output
53: 12(int) Constant 2 52: 11(int) Constant 2
54: 7(float) Constant 1073741824 53: 6(float) Constant 1073741824
69(toFragment): TypeStruct 8(fvec3) 68(toFragment): TypeStruct 7(fvec3)
70: TypePointer Output 69(toFragment) 69: TypePointer Output 68(toFragment)
71(toF): 70(ptr) Variable Output 70(toF): 69(ptr) Variable Output
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
21: 20(ptr) AccessChain 19(fromV) 13 13 20: 19(ptr) AccessChain 18(fromV) 12 12
22: 8(fvec3) Load 21 21: 7(fvec3) Load 20
24: 23(ptr) AccessChain 11 13 23: 22(ptr) AccessChain 10 12
Store 24 22 Store 23 21
36: 35(ptr) AccessChain 34(gl_in) 13 13 35: 34(ptr) AccessChain 33(gl_in) 12 12
37: 25(fvec4) Load 36 36: 24(fvec4) Load 35
39: 38(ptr) AccessChain 30 13 38: 37(ptr) AccessChain 29 12
Store 39 37 Store 38 36
43: 42(ptr) AccessChain 34(gl_in) 41 40 42: 41(ptr) AccessChain 33(gl_in) 40 39
44: 7(float) Load 43 43: 6(float) Load 42
46: 45(ptr) AccessChain 30 40 45: 44(ptr) AccessChain 29 39
Store 46 44 Store 45 43
51: 12(int) Load 50(gl_PrimitiveIDIn) 50: 11(int) Load 49(gl_PrimitiveIDIn)
Store 48(gl_PrimitiveID) 51 Store 47(gl_PrimitiveID) 50
Store 52(gl_Layer) 53 Store 51(gl_Layer) 52
EmitVertex EmitVertex
55: 20(ptr) AccessChain 19(fromV) 13 13 54: 19(ptr) AccessChain 18(fromV) 12 12
56: 8(fvec3) Load 55 55: 7(fvec3) Load 54
57: 8(fvec3) VectorTimesScalar 56 54 56: 7(fvec3) VectorTimesScalar 55 53
58: 23(ptr) AccessChain 11 13 57: 22(ptr) AccessChain 10 12
Store 58 57 Store 57 56
59: 35(ptr) AccessChain 34(gl_in) 13 13 58: 34(ptr) AccessChain 33(gl_in) 12 12
60: 25(fvec4) Load 59 59: 24(fvec4) Load 58
61: 25(fvec4) VectorTimesScalar 60 54 60: 24(fvec4) VectorTimesScalar 59 53
62: 38(ptr) AccessChain 30 13 61: 37(ptr) AccessChain 29 12
Store 62 61 Store 61 60
63: 42(ptr) AccessChain 34(gl_in) 41 40 62: 41(ptr) AccessChain 33(gl_in) 40 39
64: 7(float) Load 63 63: 6(float) Load 62
65: 7(float) FMul 54 64 64: 6(float) FMul 53 63
66: 45(ptr) AccessChain 30 40 65: 44(ptr) AccessChain 29 39
Store 66 65 Store 65 64
67: 12(int) Load 50(gl_PrimitiveIDIn) 66: 11(int) Load 49(gl_PrimitiveIDIn)
68: 12(int) IAdd 67 40 67: 11(int) IAdd 66 39
Store 48(gl_PrimitiveID) 68 Store 47(gl_PrimitiveID) 67
Store 52(gl_Layer) 41 Store 51(gl_Layer) 40
EmitVertex EmitVertex
EndPrimitive EndPrimitive
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked vertex stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 53 // Id's are bound by 52
Source GLSL 150 Source GLSL 150
Capability Shader Capability Shader
@ -13,97 +13,95 @@ Linked vertex stage:
MemoryModel Logical GLSL450 MemoryModel Logical GLSL450
EntryPoint Vertex 4 "main" EntryPoint Vertex 4 "main"
Name 4 "main" Name 4 "main"
Name 14 "gl_PerVertex" Name 13 "gl_PerVertex"
MemberName 14(gl_PerVertex) 0 "gl_Position" MemberName 13(gl_PerVertex) 0 "gl_Position"
MemberName 14(gl_PerVertex) 1 "gl_PointSize" MemberName 13(gl_PerVertex) 1 "gl_PointSize"
MemberName 14(gl_PerVertex) 2 "gl_ClipDistance" MemberName 13(gl_PerVertex) 2 "gl_ClipDistance"
MemberName 14(gl_PerVertex) 3 "gl_ClipVertex" MemberName 13(gl_PerVertex) 3 "gl_ClipVertex"
MemberName 14(gl_PerVertex) 4 "gl_FrontColor" MemberName 13(gl_PerVertex) 4 "gl_FrontColor"
MemberName 14(gl_PerVertex) 5 "gl_BackColor" MemberName 13(gl_PerVertex) 5 "gl_BackColor"
MemberName 14(gl_PerVertex) 6 "gl_FrontSecondaryColor" MemberName 13(gl_PerVertex) 6 "gl_FrontSecondaryColor"
MemberName 14(gl_PerVertex) 7 "gl_BackSecondaryColor" MemberName 13(gl_PerVertex) 7 "gl_BackSecondaryColor"
MemberName 14(gl_PerVertex) 8 "gl_TexCoord" MemberName 13(gl_PerVertex) 8 "gl_TexCoord"
MemberName 14(gl_PerVertex) 9 "gl_FogFragCoord" MemberName 13(gl_PerVertex) 9 "gl_FogFragCoord"
Name 16 "" Name 15 ""
Name 20 "iv4" Name 19 "iv4"
Name 26 "ps" Name 25 "ps"
Name 36 "s1" Name 35 "s1"
MemberName 36(s1) 0 "a" MemberName 35(s1) 0 "a"
MemberName 36(s1) 1 "a2" MemberName 35(s1) 1 "a2"
MemberName 36(s1) 2 "b" MemberName 35(s1) 2 "b"
Name 38 "s2" Name 37 "s2"
MemberName 38(s2) 0 "c" MemberName 37(s2) 0 "c"
MemberName 38(s2) 1 "d" MemberName 37(s2) 1 "d"
Name 40 "s2out" Name 39 "s2out"
Name 42 "i" Name 41 "i"
Name 49 "ui" Name 48 "ui"
Name 51 "gl_VertexID" Name 50 "gl_VertexID"
Name 52 "gl_InstanceID" Name 51 "gl_InstanceID"
MemberDecorate 14(gl_PerVertex) 0 Invariant MemberDecorate 13(gl_PerVertex) 0 Invariant
MemberDecorate 14(gl_PerVertex) 0 BuiltIn Position MemberDecorate 13(gl_PerVertex) 0 BuiltIn Position
MemberDecorate 14(gl_PerVertex) 1 BuiltIn PointSize MemberDecorate 13(gl_PerVertex) 1 BuiltIn PointSize
MemberDecorate 14(gl_PerVertex) 2 BuiltIn ClipDistance MemberDecorate 13(gl_PerVertex) 2 BuiltIn ClipDistance
Decorate 14(gl_PerVertex) Block Decorate 13(gl_PerVertex) Block
Decorate 49(ui) NoStaticUse Decorate 48(ui) NoStaticUse
Decorate 51(gl_VertexID) BuiltIn VertexId Decorate 50(gl_VertexID) BuiltIn VertexId
Decorate 51(gl_VertexID) NoStaticUse Decorate 50(gl_VertexID) NoStaticUse
Decorate 52(gl_InstanceID) BuiltIn InstanceId Decorate 51(gl_InstanceID) BuiltIn InstanceId
Decorate 52(gl_InstanceID) NoStaticUse Decorate 51(gl_InstanceID) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 4 7: TypeVector 6(float) 4
9: TypeInt 32 0 8: TypeInt 32 0
10: 9(int) Constant 4 9: 8(int) Constant 4
11: TypeArray 7(float) 10 10: TypeArray 6(float) 9
12: 9(int) Constant 1 11: 8(int) Constant 1
13: TypeArray 8(fvec4) 12 12: TypeArray 7(fvec4) 11
14(gl_PerVertex): TypeStruct 8(fvec4) 7(float) 11 8(fvec4) 8(fvec4) 8(fvec4) 8(fvec4) 8(fvec4) 13 7(float) 13(gl_PerVertex): TypeStruct 7(fvec4) 6(float) 10 7(fvec4) 7(fvec4) 7(fvec4) 7(fvec4) 7(fvec4) 12 6(float)
15: TypePointer Output 14(gl_PerVertex) 14: TypePointer Output 13(gl_PerVertex)
16: 15(ptr) Variable Output 15: 14(ptr) Variable Output
17: TypeInt 32 1 16: TypeInt 32 1
18: 17(int) Constant 0 17: 16(int) Constant 0
19: TypePointer Input 8(fvec4) 18: TypePointer Input 7(fvec4)
20(iv4): 19(ptr) Variable Input 19(iv4): 18(ptr) Variable Input
22: TypePointer Output 8(fvec4) 21: TypePointer Output 7(fvec4)
24: 17(int) Constant 1 23: 16(int) Constant 1
25: TypePointer UniformConstant 7(float) 24: TypePointer UniformConstant 6(float)
26(ps): 25(ptr) Variable UniformConstant 25(ps): 24(ptr) Variable UniformConstant
28: TypePointer Output 7(float) 27: TypePointer Output 6(float)
30: 17(int) Constant 2 29: 16(int) Constant 2
34: 9(int) Constant 3 33: 8(int) Constant 3
35: TypeArray 8(fvec4) 34 34: TypeArray 7(fvec4) 33
36(s1): TypeStruct 17(int) 17(int) 35 35(s1): TypeStruct 16(int) 16(int) 34
37: TypeArray 36(s1) 10 36: TypeArray 35(s1) 9
38(s2): TypeStruct 17(int) 37 37(s2): TypeStruct 16(int) 36
39: TypePointer Output 38(s2) 38: TypePointer Output 37(s2)
40(s2out): 39(ptr) Variable Output 39(s2out): 38(ptr) Variable Output
41: TypePointer Function 17(int) 40: TypePointer Function 16(int)
48: TypePointer UniformConstant 17(int) 47: TypePointer UniformConstant 16(int)
49(ui): 48(ptr) Variable UniformConstant 48(ui): 47(ptr) Variable UniformConstant
50: TypePointer Input 17(int) 49: TypePointer Input 16(int)
51(gl_VertexID): 50(ptr) Variable Input 50(gl_VertexID): 49(ptr) Variable Input
52(gl_InstanceID): 50(ptr) Variable Input 51(gl_InstanceID): 49(ptr) Variable Input
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
42(i): 41(ptr) Variable Function 41(i): 40(ptr) Variable Function
21: 8(fvec4) Load 20(iv4) 20: 7(fvec4) Load 19(iv4)
23: 22(ptr) AccessChain 16 18 22: 21(ptr) AccessChain 15 17
Store 23 21 Store 22 20
27: 7(float) Load 26(ps) 26: 6(float) Load 25(ps)
29: 28(ptr) AccessChain 16 24 28: 27(ptr) AccessChain 15 23
Store 29 27 Store 28 26
31: 8(fvec4) Load 20(iv4) 30: 7(fvec4) Load 19(iv4)
32: 7(float) CompositeExtract 31 0 31: 6(float) CompositeExtract 30 0
33: 28(ptr) AccessChain 16 30 30 32: 27(ptr) AccessChain 15 29 29
Store 33 32 Store 32 31
43: 17(int) Load 42(i) 42: 16(int) Load 41(i)
44: 7(float) Load 26(ps) 43: 6(float) Load 25(ps)
45: 22(ptr) AccessChain 40(s2out) 24 43 30 30 44: 21(ptr) AccessChain 39(s2out) 23 42 29 29
46: 8(fvec4) Load 45 45: 7(fvec4) Load 44
47: 8(fvec4) CompositeInsert 44 46 3 46: 7(fvec4) CompositeInsert 43 45 3
Store 45 47 Store 44 46
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked vertex stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 41 // Id's are bound by 40
Source ESSL 300 Source ESSL 300
Capability Shader Capability Shader
@ -13,67 +13,65 @@ Linked vertex stage:
MemoryModel Logical GLSL450 MemoryModel Logical GLSL450
EntryPoint Vertex 4 "main" EntryPoint Vertex 4 "main"
Name 4 "main" Name 4 "main"
Name 9 "i" Name 8 "i"
Name 12 "gl_VertexID" Name 11 "gl_VertexID"
Name 17 "j" Name 16 "j"
Name 24 "gl_Position" Name 23 "gl_Position"
Name 26 "ps" Name 25 "ps"
Name 34 "gl_PointSize" Name 33 "gl_PointSize"
Name 40 "gl_InstanceID" Name 39 "gl_InstanceID"
Decorate 9(i) RelaxedPrecision Decorate 8(i) RelaxedPrecision
Decorate 12(gl_VertexID) BuiltIn VertexId Decorate 11(gl_VertexID) BuiltIn VertexId
Decorate 17(j) RelaxedPrecision Decorate 16(j) RelaxedPrecision
Decorate 24(gl_Position) Invariant Decorate 23(gl_Position) Invariant
Decorate 24(gl_Position) BuiltIn Position Decorate 23(gl_Position) BuiltIn Position
Decorate 26(ps) RelaxedPrecision Decorate 25(ps) RelaxedPrecision
Decorate 34(gl_PointSize) BuiltIn PointSize Decorate 33(gl_PointSize) BuiltIn PointSize
Decorate 40(gl_InstanceID) BuiltIn InstanceId Decorate 39(gl_InstanceID) BuiltIn InstanceId
Decorate 40(gl_InstanceID) NoStaticUse Decorate 39(gl_InstanceID) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeInt 32 1 6: TypeInt 32 1
8: TypePointer Function 7(int) 7: TypePointer Function 6(int)
10: 7(int) Constant 4 9: 6(int) Constant 4
11: TypePointer Input 7(int) 10: TypePointer Input 6(int)
12(gl_VertexID): 11(ptr) Variable Input 11(gl_VertexID): 10(ptr) Variable Input
15: 7(int) Constant 10 14: 6(int) Constant 10
21: TypeFloat 32 20: TypeFloat 32
22: TypeVector 21(float) 4 21: TypeVector 20(float) 4
23: TypePointer Output 22(fvec4) 22: TypePointer Output 21(fvec4)
24(gl_Position): 23(ptr) Variable Output 23(gl_Position): 22(ptr) Variable Output
25: TypePointer Input 21(float) 24: TypePointer Input 20(float)
26(ps): 25(ptr) Variable Input 25(ps): 24(ptr) Variable Input
33: TypePointer Output 21(float) 32: TypePointer Output 20(float)
34(gl_PointSize): 33(ptr) Variable Output 33(gl_PointSize): 32(ptr) Variable Output
40(gl_InstanceID): 11(ptr) Variable Input 39(gl_InstanceID): 10(ptr) Variable Input
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
9(i): 8(ptr) Variable Function 8(i): 7(ptr) Variable Function
17(j): 8(ptr) Variable Function 16(j): 7(ptr) Variable Function
13: 7(int) Load 12(gl_VertexID) 12: 6(int) Load 11(gl_VertexID)
14: 7(int) IMul 10 13 13: 6(int) IMul 9 12
16: 7(int) ISub 14 15 15: 6(int) ISub 13 14
Store 9(i) 16 Store 8(i) 15
18: 7(int) Load 12(gl_VertexID) 17: 6(int) Load 11(gl_VertexID)
19: 7(int) IMul 10 18 18: 6(int) IMul 9 17
20: 7(int) ISub 19 15 19: 6(int) ISub 18 14
Store 17(j) 20 Store 16(j) 19
27: 21(float) Load 26(ps) 26: 20(float) Load 25(ps)
28: 22(fvec4) CompositeConstruct 27 27 27 27 27: 21(fvec4) CompositeConstruct 26 26 26 26
Store 24(gl_Position) 28 Store 23(gl_Position) 27
29: 7(int) Load 9(i) 28: 6(int) Load 8(i)
30: 21(float) ConvertSToF 29 29: 20(float) ConvertSToF 28
31: 22(fvec4) Load 24(gl_Position) 30: 21(fvec4) Load 23(gl_Position)
32: 22(fvec4) VectorTimesScalar 31 30 31: 21(fvec4) VectorTimesScalar 30 29
Store 24(gl_Position) 32 Store 23(gl_Position) 31
35: 21(float) Load 26(ps) 34: 20(float) Load 25(ps)
Store 34(gl_PointSize) 35 Store 33(gl_PointSize) 34
36: 7(int) Load 17(j) 35: 6(int) Load 16(j)
37: 21(float) ConvertSToF 36 36: 20(float) ConvertSToF 35
38: 21(float) Load 34(gl_PointSize) 37: 20(float) Load 33(gl_PointSize)
39: 21(float) FMul 38 37 38: 20(float) FMul 37 36
Store 34(gl_PointSize) 39 Store 33(gl_PointSize) 38
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 38 // Id's are bound by 37
Source ESSL 300 Source ESSL 300
Capability Shader Capability Shader
@ -14,62 +14,60 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 10 "c" Name 9 "c"
Name 12 "color" Name 11 "color"
Name 14 "S" Name 13 "S"
MemberName 14(S) 0 "c" MemberName 13(S) 0 "c"
MemberName 14(S) 1 "f" MemberName 13(S) 1 "f"
Name 16 "s" Name 15 "s"
Name 27 "p" Name 26 "p"
Name 30 "pos" Name 29 "pos"
Decorate 10(c) RelaxedPrecision Decorate 9(c) RelaxedPrecision
Decorate 10(c) Location 7 Decorate 9(c) Location 7
Decorate 12(color) RelaxedPrecision Decorate 11(color) RelaxedPrecision
Decorate 12(color) Smooth Decorate 11(color) Smooth
MemberDecorate 14(S) 0 RelaxedPrecision MemberDecorate 13(S) 0 RelaxedPrecision
MemberDecorate 14(S) 1 RelaxedPrecision MemberDecorate 13(S) 1 RelaxedPrecision
Decorate 27(p) RelaxedPrecision Decorate 26(p) RelaxedPrecision
Decorate 27(p) Location 3 Decorate 26(p) Location 3
Decorate 30(pos) RelaxedPrecision Decorate 29(pos) RelaxedPrecision
Decorate 30(pos) Smooth Decorate 29(pos) Smooth
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 3 7: TypeVector 6(float) 3
9: TypePointer Output 8(fvec3) 8: TypePointer Output 7(fvec3)
10(c): 9(ptr) Variable Output 9(c): 8(ptr) Variable Output
11: TypePointer Input 8(fvec3) 10: TypePointer Input 7(fvec3)
12(color): 11(ptr) Variable Input 11(color): 10(ptr) Variable Input
14(S): TypeStruct 8(fvec3) 7(float) 13(S): TypeStruct 7(fvec3) 6(float)
15: TypePointer Input 14(S) 14: TypePointer Input 13(S)
16(s): 15(ptr) Variable Input 15(s): 14(ptr) Variable Input
17: TypeInt 32 1 16: TypeInt 32 1
18: 17(int) Constant 0 17: 16(int) Constant 0
22: TypeVector 7(float) 4 21: TypeVector 6(float) 4
23: TypeInt 32 0 22: TypeInt 32 0
24: 23(int) Constant 2 23: 22(int) Constant 2
25: TypeArray 22(fvec4) 24 24: TypeArray 21(fvec4) 23
26: TypePointer Output 25 25: TypePointer Output 24
27(p): 26(ptr) Variable Output 26(p): 25(ptr) Variable Output
28: 17(int) Constant 1 27: 16(int) Constant 1
29: TypePointer Input 22(fvec4) 28: TypePointer Input 21(fvec4)
30(pos): 29(ptr) Variable Input 29(pos): 28(ptr) Variable Input
32: TypePointer Input 7(float) 31: TypePointer Input 6(float)
36: TypePointer Output 22(fvec4) 35: TypePointer Output 21(fvec4)
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
13: 8(fvec3) Load 12(color) 12: 7(fvec3) Load 11(color)
19: 11(ptr) AccessChain 16(s) 18 18: 10(ptr) AccessChain 15(s) 17
20: 8(fvec3) Load 19 19: 7(fvec3) Load 18
21: 8(fvec3) FAdd 13 20 20: 7(fvec3) FAdd 12 19
Store 10(c) 21 Store 9(c) 20
31: 22(fvec4) Load 30(pos) 30: 21(fvec4) Load 29(pos)
33: 32(ptr) AccessChain 16(s) 28 32: 31(ptr) AccessChain 15(s) 27
34: 7(float) Load 33 33: 6(float) Load 32
35: 22(fvec4) VectorTimesScalar 31 34 34: 21(fvec4) VectorTimesScalar 30 33
37: 36(ptr) AccessChain 27(p) 28 36: 35(ptr) AccessChain 26(p) 27
Store 37 35 Store 36 34
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked vertex stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 112 // Id's are bound by 111
Source ESSL 300 Source ESSL 300
Capability Shader Capability Shader
@ -13,183 +13,181 @@ Linked vertex stage:
MemoryModel Logical GLSL450 MemoryModel Logical GLSL450
EntryPoint Vertex 4 "main" EntryPoint Vertex 4 "main"
Name 4 "main" Name 4 "main"
Name 10 "pos" Name 9 "pos"
Name 12 "p" Name 11 "p"
Name 18 "Transform" Name 17 "Transform"
MemberName 18(Transform) 0 "M1" MemberName 17(Transform) 0 "M1"
MemberName 18(Transform) 1 "M2" MemberName 17(Transform) 1 "M2"
MemberName 18(Transform) 2 "N1" MemberName 17(Transform) 2 "N1"
MemberName 18(Transform) 3 "iuin" MemberName 17(Transform) 3 "iuin"
Name 20 "tblock" Name 19 "tblock"
Name 34 "T3" Name 33 "T3"
MemberName 34(T3) 0 "M3" MemberName 33(T3) 0 "M3"
MemberName 34(T3) 1 "M4" MemberName 33(T3) 1 "M4"
MemberName 34(T3) 2 "N2" MemberName 33(T3) 2 "N2"
MemberName 34(T3) 3 "uv3a" MemberName 33(T3) 3 "uv3a"
Name 36 "" Name 35 ""
Name 44 "T2" Name 43 "T2"
MemberName 44(T2) 0 "b" MemberName 43(T2) 0 "b"
MemberName 44(T2) 1 "t2m" MemberName 43(T2) 1 "t2m"
Name 46 "" Name 45 ""
Name 52 "color" Name 51 "color"
Name 54 "c" Name 53 "c"
Name 62 "iout" Name 61 "iout"
Name 68 "uiuin" Name 67 "uiuin"
Name 74 "aiv2" Name 73 "aiv2"
Name 78 "S" Name 77 "S"
MemberName 78(S) 0 "c" MemberName 77(S) 0 "c"
MemberName 78(S) 1 "f" MemberName 77(S) 1 "f"
Name 80 "s" Name 79 "s"
Name 110 "gl_VertexID" Name 109 "gl_VertexID"
Name 111 "gl_InstanceID" Name 110 "gl_InstanceID"
Decorate 10(pos) Smooth Decorate 9(pos) Smooth
Decorate 12(p) Location 3 Decorate 11(p) Location 3
MemberDecorate 18(Transform) 0 RowMajor MemberDecorate 17(Transform) 0 RowMajor
MemberDecorate 18(Transform) 0 Offset 0 MemberDecorate 17(Transform) 0 Offset 0
MemberDecorate 18(Transform) 0 MatrixStride 16 MemberDecorate 17(Transform) 0 MatrixStride 16
MemberDecorate 18(Transform) 1 ColMajor MemberDecorate 17(Transform) 1 ColMajor
MemberDecorate 18(Transform) 1 Offset 64 MemberDecorate 17(Transform) 1 Offset 64
MemberDecorate 18(Transform) 1 MatrixStride 16 MemberDecorate 17(Transform) 1 MatrixStride 16
MemberDecorate 18(Transform) 2 RowMajor MemberDecorate 17(Transform) 2 RowMajor
MemberDecorate 18(Transform) 2 Offset 128 MemberDecorate 17(Transform) 2 Offset 128
MemberDecorate 18(Transform) 2 MatrixStride 16 MemberDecorate 17(Transform) 2 MatrixStride 16
MemberDecorate 18(Transform) 3 Offset 176 MemberDecorate 17(Transform) 3 Offset 176
Decorate 18(Transform) Block Decorate 17(Transform) Block
MemberDecorate 34(T3) 0 ColMajor MemberDecorate 33(T3) 0 ColMajor
MemberDecorate 34(T3) 1 RowMajor MemberDecorate 33(T3) 1 RowMajor
MemberDecorate 34(T3) 2 ColMajor MemberDecorate 33(T3) 2 ColMajor
Decorate 34(T3) GLSLShared Decorate 33(T3) GLSLShared
Decorate 34(T3) Block Decorate 33(T3) Block
MemberDecorate 44(T2) 1 RowMajor MemberDecorate 43(T2) 1 RowMajor
Decorate 44(T2) GLSLShared Decorate 43(T2) GLSLShared
Decorate 44(T2) Block Decorate 43(T2) Block
Decorate 52(color) Smooth Decorate 51(color) Smooth
Decorate 54(c) Location 7 Decorate 53(c) Location 7
Decorate 62(iout) Flat Decorate 61(iout) Flat
Decorate 74(aiv2) Location 9 Decorate 73(aiv2) Location 9
Decorate 110(gl_VertexID) BuiltIn VertexId Decorate 109(gl_VertexID) BuiltIn VertexId
Decorate 110(gl_VertexID) NoStaticUse Decorate 109(gl_VertexID) NoStaticUse
Decorate 111(gl_InstanceID) BuiltIn InstanceId Decorate 110(gl_InstanceID) BuiltIn InstanceId
Decorate 111(gl_InstanceID) NoStaticUse Decorate 110(gl_InstanceID) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 4 7: TypeVector 6(float) 4
9: TypePointer Output 8(fvec4) 8: TypePointer Output 7(fvec4)
10(pos): 9(ptr) Variable Output 9(pos): 8(ptr) Variable Output
11: TypePointer Input 8(fvec4) 10: TypePointer Input 7(fvec4)
12(p): 11(ptr) Variable Input 11(p): 10(ptr) Variable Input
14: TypeMatrix 8(fvec4) 4 13: TypeMatrix 7(fvec4) 4
15: TypeVector 7(float) 3 14: TypeVector 6(float) 3
16: TypeMatrix 15(fvec3) 3 15: TypeMatrix 14(fvec3) 3
17: TypeInt 32 1 16: TypeInt 32 1
18(Transform): TypeStruct 14 14 16 17(int) 17(Transform): TypeStruct 13 13 15 16(int)
19: TypePointer Uniform 18(Transform) 18: TypePointer Uniform 17(Transform)
20(tblock): 19(ptr) Variable Uniform 19(tblock): 18(ptr) Variable Uniform
21: 17(int) Constant 0 20: 16(int) Constant 0
22: TypePointer Uniform 14 21: TypePointer Uniform 13
25: 17(int) Constant 1 24: 16(int) Constant 1
29: TypeMatrix 15(fvec3) 2 28: TypeMatrix 14(fvec3) 2
30: TypeInt 32 0 29: TypeInt 32 0
31: TypeVector 30(int) 3 30: TypeVector 29(int) 3
32: 30(int) Constant 4 31: 29(int) Constant 4
33: TypeArray 31(ivec3) 32 32: TypeArray 30(ivec3) 31
34(T3): TypeStruct 14 14 29 33 33(T3): TypeStruct 13 13 28 32
35: TypePointer Uniform 34(T3) 34: TypePointer Uniform 33(T3)
36: 35(ptr) Variable Uniform 35: 34(ptr) Variable Uniform
43: TypeBool 42: TypeBool
44(T2): TypeStruct 43(bool) 14 43(T2): TypeStruct 42(bool) 13
45: TypePointer Uniform 44(T2) 44: TypePointer Uniform 43(T2)
46: 45(ptr) Variable Uniform 45: 44(ptr) Variable Uniform
51: TypePointer Output 15(fvec3) 50: TypePointer Output 14(fvec3)
52(color): 51(ptr) Variable Output 51(color): 50(ptr) Variable Output
53: TypePointer Input 15(fvec3) 52: TypePointer Input 14(fvec3)
54(c): 53(ptr) Variable Input 53(c): 52(ptr) Variable Input
56: 17(int) Constant 2 55: 16(int) Constant 2
57: TypePointer Uniform 16 56: TypePointer Uniform 15
61: TypePointer Output 17(int) 60: TypePointer Output 16(int)
62(iout): 61(ptr) Variable Output 61(iout): 60(ptr) Variable Output
63: 17(int) Constant 3 62: 16(int) Constant 3
64: TypePointer Uniform 17(int) 63: TypePointer Uniform 16(int)
67: TypePointer UniformConstant 30(int) 66: TypePointer UniformConstant 29(int)
68(uiuin): 67(ptr) Variable UniformConstant 67(uiuin): 66(ptr) Variable UniformConstant
72: TypeVector 17(int) 2 71: TypeVector 16(int) 2
73: TypePointer Input 72(ivec2) 72: TypePointer Input 71(ivec2)
74(aiv2): 73(ptr) Variable Input 73(aiv2): 72(ptr) Variable Input
78(S): TypeStruct 15(fvec3) 7(float) 77(S): TypeStruct 14(fvec3) 6(float)
79: TypePointer Output 78(S) 78: TypePointer Output 77(S)
80(s): 79(ptr) Variable Output 79(s): 78(ptr) Variable Output
85: TypePointer Output 7(float) 84: TypePointer Output 6(float)
87: TypePointer Uniform 15(fvec3) 86: TypePointer Uniform 14(fvec3)
90: 7(float) Constant 1065353216 89: 6(float) Constant 1065353216
91: 15(fvec3) ConstantComposite 90 90 90 90: 14(fvec3) ConstantComposite 89 89 89
92: TypeVector 43(bool) 3 91: TypeVector 42(bool) 3
95: TypePointer Uniform 31(ivec3) 94: TypePointer Uniform 30(ivec3)
98: 30(int) Constant 5 97: 29(int) Constant 5
99: 31(ivec3) ConstantComposite 98 98 98 98: 30(ivec3) ConstantComposite 97 97 97
109: TypePointer Input 17(int) 108: TypePointer Input 16(int)
110(gl_VertexID): 109(ptr) Variable Input 109(gl_VertexID): 108(ptr) Variable Input
111(gl_InstanceID): 109(ptr) Variable Input 110(gl_InstanceID): 108(ptr) Variable Input
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
13: 8(fvec4) Load 12(p) 12: 7(fvec4) Load 11(p)
23: 22(ptr) AccessChain 20(tblock) 21 22: 21(ptr) AccessChain 19(tblock) 20
24: 14 Load 23 23: 13 Load 22
26: 22(ptr) AccessChain 20(tblock) 25 25: 21(ptr) AccessChain 19(tblock) 24
27: 14 Load 26 26: 13 Load 25
28: 14 MatrixTimesMatrix 24 27 27: 13 MatrixTimesMatrix 23 26
37: 22(ptr) AccessChain 36 25 36: 21(ptr) AccessChain 35 24
38: 14 Load 37 37: 13 Load 36
39: 14 MatrixTimesMatrix 28 38 38: 13 MatrixTimesMatrix 27 37
40: 22(ptr) AccessChain 36 21 39: 21(ptr) AccessChain 35 20
41: 14 Load 40 40: 13 Load 39
42: 14 MatrixTimesMatrix 39 41 41: 13 MatrixTimesMatrix 38 40
47: 22(ptr) AccessChain 46 25 46: 21(ptr) AccessChain 45 24
48: 14 Load 47 47: 13 Load 46
49: 14 MatrixTimesMatrix 42 48 48: 13 MatrixTimesMatrix 41 47
50: 8(fvec4) VectorTimesMatrix 13 49 49: 7(fvec4) VectorTimesMatrix 12 48
Store 10(pos) 50 Store 9(pos) 49
55: 15(fvec3) Load 54(c) 54: 14(fvec3) Load 53(c)
58: 57(ptr) AccessChain 20(tblock) 56 57: 56(ptr) AccessChain 19(tblock) 55
59: 16 Load 58 58: 15 Load 57
60: 15(fvec3) VectorTimesMatrix 55 59 59: 14(fvec3) VectorTimesMatrix 54 58
Store 52(color) 60 Store 51(color) 59
65: 64(ptr) AccessChain 20(tblock) 63 64: 63(ptr) AccessChain 19(tblock) 62
66: 17(int) Load 65 65: 16(int) Load 64
69: 30(int) Load 68(uiuin) 68: 29(int) Load 67(uiuin)
70: 17(int) Bitcast 69 69: 16(int) Bitcast 68
71: 17(int) IAdd 66 70 70: 16(int) IAdd 65 69
75: 72(ivec2) Load 74(aiv2) 74: 71(ivec2) Load 73(aiv2)
76: 17(int) CompositeExtract 75 1 75: 16(int) CompositeExtract 74 1
77: 17(int) IAdd 71 76 76: 16(int) IAdd 70 75
Store 62(iout) 77 Store 61(iout) 76
81: 15(fvec3) Load 54(c) 80: 14(fvec3) Load 53(c)
82: 51(ptr) AccessChain 80(s) 21 81: 50(ptr) AccessChain 79(s) 20
Store 82 81 Store 81 80
83: 8(fvec4) Load 12(p) 82: 7(fvec4) Load 11(p)
84: 7(float) CompositeExtract 83 0 83: 6(float) CompositeExtract 82 0
86: 85(ptr) AccessChain 80(s) 25 85: 84(ptr) AccessChain 79(s) 24
Store 86 84 Store 85 83
88: 87(ptr) AccessChain 36 56 25 87: 86(ptr) AccessChain 35 55 24
89: 15(fvec3) Load 88 88: 14(fvec3) Load 87
93: 92(bvec3) FOrdNotEqual 89 91 92: 91(bvec3) FOrdNotEqual 88 90
94: 43(bool) Any 93 93: 42(bool) Any 92
96: 95(ptr) AccessChain 36 63 56 95: 94(ptr) AccessChain 35 62 55
97: 31(ivec3) Load 96 96: 30(ivec3) Load 95
100: 92(bvec3) INotEqual 97 99 99: 91(bvec3) INotEqual 96 98
101: 43(bool) Any 100 100: 42(bool) Any 99
102: 43(bool) LogicalOr 94 101 101: 42(bool) LogicalOr 93 100
SelectionMerge 104 None SelectionMerge 103 None
BranchConditional 102 103 104 BranchConditional 101 102 103
103: Label 102: Label
105: 51(ptr) AccessChain 80(s) 21 104: 50(ptr) AccessChain 79(s) 20
106: 15(fvec3) Load 105 105: 14(fvec3) Load 104
107: 15(fvec3) CompositeConstruct 90 90 90 106: 14(fvec3) CompositeConstruct 89 89 89
108: 15(fvec3) FAdd 106 107 107: 14(fvec3) FAdd 105 106
Store 105 108 Store 104 107
Branch 104 Branch 103
104: Label 103: Label
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -7,7 +7,7 @@ Linked compute stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 68 // Id's are bound by 67
Source ESSL 310 Source ESSL 310
Capability Shader Capability Shader
@ -15,107 +15,105 @@ Linked compute stage:
MemoryModel Logical GLSL450 MemoryModel Logical GLSL450
EntryPoint GLCompute 4 "main" EntryPoint GLCompute 4 "main"
Name 4 "main" Name 4 "main"
Name 14 "outb" Name 13 "outb"
MemberName 14(outb) 0 "f" MemberName 13(outb) 0 "f"
MemberName 14(outb) 1 "g" MemberName 13(outb) 1 "g"
MemberName 14(outb) 2 "h" MemberName 13(outb) 2 "h"
MemberName 14(outb) 3 "uns" MemberName 13(outb) 3 "uns"
Name 16 "outbname" Name 15 "outbname"
Name 20 "s" Name 19 "s"
Name 25 "outbna" Name 24 "outbna"
MemberName 25(outbna) 0 "k" MemberName 24(outbna) 0 "k"
MemberName 25(outbna) 1 "na" MemberName 24(outbna) 1 "na"
Name 27 "outbnamena" Name 26 "outbnamena"
Name 44 "i" Name 43 "i"
Name 50 "outs" Name 49 "outs"
MemberName 50(outs) 0 "s" MemberName 49(outs) 0 "s"
MemberName 50(outs) 1 "va" MemberName 49(outs) 1 "va"
Name 52 "outnames" Name 51 "outnames"
Name 55 "gl_LocalInvocationID" Name 54 "gl_LocalInvocationID"
Decorate 14(outb) GLSLShared Decorate 13(outb) GLSLShared
Decorate 14(outb) BufferBlock Decorate 13(outb) BufferBlock
Decorate 25(outbna) GLSLShared Decorate 24(outbna) GLSLShared
Decorate 25(outbna) BufferBlock Decorate 24(outbna) BufferBlock
Decorate 50(outs) GLSLShared Decorate 49(outs) GLSLShared
Decorate 50(outs) BufferBlock Decorate 49(outs) BufferBlock
Decorate 55(gl_LocalInvocationID) BuiltIn LocalInvocationId Decorate 54(gl_LocalInvocationID) BuiltIn LocalInvocationId
Decorate 67 BuiltIn WorkgroupSize Decorate 66 BuiltIn WorkgroupSize
Decorate 67 NoStaticUse Decorate 66 NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeInt 32 0 6: TypeInt 32 0
8: 7(int) Constant 1 7: 6(int) Constant 1
9: 7(int) Constant 1023 8: 6(int) Constant 1023
10: 7(int) Constant 0 9: 6(int) Constant 0
11: TypeFloat 32 10: TypeFloat 32
12: TypeVector 11(float) 3 11: TypeVector 10(float) 3
13: TypeRuntimeArray 12(fvec3) 12: TypeRuntimeArray 11(fvec3)
14(outb): TypeStruct 11(float) 11(float) 11(float) 13 13(outb): TypeStruct 10(float) 10(float) 10(float) 12
15: TypePointer Uniform 14(outb) 14: TypePointer Uniform 13(outb)
16(outbname): 15(ptr) Variable Uniform 15(outbname): 14(ptr) Variable Uniform
17: TypeInt 32 1 16: TypeInt 32 1
18: 17(int) Constant 0 17: 16(int) Constant 0
19: TypePointer WorkgroupLocal 11(float) 18: TypePointer WorkgroupLocal 10(float)
20(s): 19(ptr) Variable WorkgroupLocal 19(s): 18(ptr) Variable WorkgroupLocal
22: TypePointer Uniform 11(float) 21: TypePointer Uniform 10(float)
24: TypeVector 11(float) 4 23: TypeVector 10(float) 4
25(outbna): TypeStruct 17(int) 24(fvec4) 24(outbna): TypeStruct 16(int) 23(fvec4)
26: TypePointer Uniform 25(outbna) 25: TypePointer Uniform 24(outbna)
27(outbnamena): 26(ptr) Variable Uniform 26(outbnamena): 25(ptr) Variable Uniform
28: 17(int) Constant 1 27: 16(int) Constant 1
31: TypePointer Uniform 24(fvec4) 30: TypePointer Uniform 23(fvec4)
33: 17(int) Constant 3 32: 16(int) Constant 3
34: 17(int) Constant 18 33: 16(int) Constant 18
35: TypePointer Uniform 12(fvec3) 34: TypePointer Uniform 11(fvec3)
39: 17(int) Constant 17 38: 16(int) Constant 17
40: 11(float) Constant 1077936128 39: 10(float) Constant 1077936128
41: 12(fvec3) ConstantComposite 40 40 40 40: 11(fvec3) ConstantComposite 39 39 39
43: TypePointer WorkgroupLocal 17(int) 42: TypePointer WorkgroupLocal 16(int)
44(i): 43(ptr) Variable WorkgroupLocal 43(i): 42(ptr) Variable WorkgroupLocal
49: TypeRuntimeArray 24(fvec4) 48: TypeRuntimeArray 23(fvec4)
50(outs): TypeStruct 17(int) 49 49(outs): TypeStruct 16(int) 48
51: TypePointer Uniform 50(outs) 50: TypePointer Uniform 49(outs)
52(outnames): 51(ptr) Variable Uniform 51(outnames): 50(ptr) Variable Uniform
53: TypeVector 7(int) 3 52: TypeVector 6(int) 3
54: TypePointer Input 53(ivec3) 53: TypePointer Input 52(ivec3)
55(gl_LocalInvocationID): 54(ptr) Variable Input 54(gl_LocalInvocationID): 53(ptr) Variable Input
62: TypePointer Uniform 17(int) 61: TypePointer Uniform 16(int)
64: 7(int) Constant 16 63: 6(int) Constant 16
65: 7(int) Constant 32 64: 6(int) Constant 32
66: 7(int) Constant 4 65: 6(int) Constant 4
67: 53(ivec3) ConstantComposite 64 65 66 66: 52(ivec3) ConstantComposite 63 64 65
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
MemoryBarrier 8 9 MemoryBarrier 7 8
ControlBarrier 8 8 10 ControlBarrier 7 7 9
21: 11(float) Load 20(s) 20: 10(float) Load 19(s)
23: 22(ptr) AccessChain 16(outbname) 18 22: 21(ptr) AccessChain 15(outbname) 17
Store 23 21 Store 22 20
29: 11(float) Load 20(s) 28: 10(float) Load 19(s)
30: 24(fvec4) CompositeConstruct 29 29 29 29 29: 23(fvec4) CompositeConstruct 28 28 28 28
32: 31(ptr) AccessChain 27(outbnamena) 28 31: 30(ptr) AccessChain 26(outbnamena) 27
Store 32 30 Store 31 29
36: 35(ptr) AccessChain 16(outbname) 33 34 35: 34(ptr) AccessChain 15(outbname) 32 33
37: 12(fvec3) Load 36 36: 11(fvec3) Load 35
38: 11(float) CompositeExtract 37 0 37: 10(float) CompositeExtract 36 0
Store 20(s) 38 Store 19(s) 37
42: 35(ptr) AccessChain 16(outbname) 33 39 41: 34(ptr) AccessChain 15(outbname) 32 38
Store 42 41 Store 41 40
45: 17(int) Load 44(i) 44: 16(int) Load 43(i)
46: 11(float) Load 20(s) 45: 10(float) Load 19(s)
47: 12(fvec3) CompositeConstruct 46 46 46 46: 11(fvec3) CompositeConstruct 45 45 45
48: 35(ptr) AccessChain 16(outbname) 33 45 47: 34(ptr) AccessChain 15(outbname) 32 44
Store 48 47 Store 47 46
56: 53(ivec3) Load 55(gl_LocalInvocationID) 55: 52(ivec3) Load 54(gl_LocalInvocationID)
57: 7(int) CompositeExtract 56 0 56: 6(int) CompositeExtract 55 0
58: 11(float) Load 20(s) 57: 10(float) Load 19(s)
59: 24(fvec4) CompositeConstruct 58 58 58 58 58: 23(fvec4) CompositeConstruct 57 57 57 57
60: 31(ptr) AccessChain 52(outnames) 28 57 59: 30(ptr) AccessChain 51(outnames) 27 56
Store 60 59 Store 59 58
61: 17(int) ArrayLength 16(outbname) 60: 16(int) ArrayLength 15(outbname)
63: 62(ptr) AccessChain 52(outnames) 18 62: 61(ptr) AccessChain 51(outnames) 17
Store 63 61 Store 62 60
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked geometry stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 33 // Id's are bound by 32
Source GLSL 330 Source GLSL 330
SourceExtension "GL_ARB_separate_shader_objects" SourceExtension "GL_ARB_separate_shader_objects"
@ -18,57 +18,55 @@ Linked geometry stage:
ExecutionMode 4 OutputTriangleStrip ExecutionMode 4 OutputTriangleStrip
ExecutionMode 4 OutputVertices 3 ExecutionMode 4 OutputVertices 3
Name 4 "main" Name 4 "main"
Name 12 "gl_PerVertex" Name 11 "gl_PerVertex"
MemberName 12(gl_PerVertex) 0 "gl_Position" MemberName 11(gl_PerVertex) 0 "gl_Position"
MemberName 12(gl_PerVertex) 1 "gl_ClipDistance" MemberName 11(gl_PerVertex) 1 "gl_ClipDistance"
Name 14 "" Name 13 ""
Name 17 "gl_PerVertex" Name 16 "gl_PerVertex"
MemberName 17(gl_PerVertex) 0 "gl_Position" MemberName 16(gl_PerVertex) 0 "gl_Position"
MemberName 17(gl_PerVertex) 1 "gl_ClipDistance" MemberName 16(gl_PerVertex) 1 "gl_ClipDistance"
Name 21 "gl_in" Name 20 "gl_in"
MemberDecorate 12(gl_PerVertex) 0 BuiltIn Position MemberDecorate 11(gl_PerVertex) 0 BuiltIn Position
MemberDecorate 12(gl_PerVertex) 1 BuiltIn ClipDistance MemberDecorate 11(gl_PerVertex) 1 BuiltIn ClipDistance
Decorate 12(gl_PerVertex) Block Decorate 11(gl_PerVertex) Block
Decorate 12(gl_PerVertex) Stream 0 Decorate 11(gl_PerVertex) Stream 0
Decorate 14 Stream 0 Decorate 13 Stream 0
MemberDecorate 17(gl_PerVertex) 0 BuiltIn Position MemberDecorate 16(gl_PerVertex) 0 BuiltIn Position
MemberDecorate 17(gl_PerVertex) 1 BuiltIn ClipDistance MemberDecorate 16(gl_PerVertex) 1 BuiltIn ClipDistance
Decorate 17(gl_PerVertex) Block Decorate 16(gl_PerVertex) Block
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 4 7: TypeVector 6(float) 4
9: TypeInt 32 0 8: TypeInt 32 0
10: 9(int) Constant 1 9: 8(int) Constant 1
11: TypeArray 7(float) 10 10: TypeArray 6(float) 9
12(gl_PerVertex): TypeStruct 8(fvec4) 11 11(gl_PerVertex): TypeStruct 7(fvec4) 10
13: TypePointer Output 12(gl_PerVertex) 12: TypePointer Output 11(gl_PerVertex)
14: 13(ptr) Variable Output 13: 12(ptr) Variable Output
15: TypeInt 32 1 14: TypeInt 32 1
16: 15(int) Constant 0 15: 14(int) Constant 0
17(gl_PerVertex): TypeStruct 8(fvec4) 11 16(gl_PerVertex): TypeStruct 7(fvec4) 10
18: 9(int) Constant 3 17: 8(int) Constant 3
19: TypeArray 17(gl_PerVertex) 18 18: TypeArray 16(gl_PerVertex) 17
20: TypePointer Input 19 19: TypePointer Input 18
21(gl_in): 20(ptr) Variable Input 20(gl_in): 19(ptr) Variable Input
22: 15(int) Constant 1 21: 14(int) Constant 1
23: TypePointer Input 8(fvec4) 22: TypePointer Input 7(fvec4)
26: TypePointer Output 8(fvec4) 25: TypePointer Output 7(fvec4)
28: TypePointer Input 7(float) 27: TypePointer Input 6(float)
31: TypePointer Output 7(float) 30: TypePointer Output 6(float)
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
24: 23(ptr) AccessChain 21(gl_in) 22 16 23: 22(ptr) AccessChain 20(gl_in) 21 15
25: 8(fvec4) Load 24 24: 7(fvec4) Load 23
27: 26(ptr) AccessChain 14 16 26: 25(ptr) AccessChain 13 15
Store 27 25 Store 26 24
29: 28(ptr) AccessChain 21(gl_in) 22 22 16 28: 27(ptr) AccessChain 20(gl_in) 21 21 15
30: 7(float) Load 29 29: 6(float) Load 28
32: 31(ptr) AccessChain 14 22 16 31: 30(ptr) AccessChain 13 21 15
Store 32 30 Store 31 29
EmitVertex EmitVertex
EndPrimitive EndPrimitive
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -7,7 +7,7 @@ Linked tessellation control stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 91 // Id's are bound by 90
Source GLSL 400 Source GLSL 400
SourceExtension "GL_ARB_separate_shader_objects" SourceExtension "GL_ARB_separate_shader_objects"
@ -17,164 +17,162 @@ Linked tessellation control stage:
EntryPoint TessellationControl 4 "main" EntryPoint TessellationControl 4 "main"
ExecutionMode 4 OutputVertices 4 ExecutionMode 4 OutputVertices 4
Name 4 "main" Name 4 "main"
Name 13 "a" Name 12 "a"
Name 18 "p" Name 17 "p"
Name 20 "gl_PerVertex" Name 19 "gl_PerVertex"
MemberName 20(gl_PerVertex) 0 "gl_Position" MemberName 19(gl_PerVertex) 0 "gl_Position"
MemberName 20(gl_PerVertex) 1 "gl_PointSize" MemberName 19(gl_PerVertex) 1 "gl_PointSize"
MemberName 20(gl_PerVertex) 2 "gl_ClipDistance" MemberName 19(gl_PerVertex) 2 "gl_ClipDistance"
Name 24 "gl_in" Name 23 "gl_in"
Name 31 "ps" Name 30 "ps"
Name 35 "cd" Name 34 "cd"
Name 39 "pvi" Name 38 "pvi"
Name 41 "gl_PatchVerticesIn" Name 40 "gl_PatchVerticesIn"
Name 43 "pid" Name 42 "pid"
Name 44 "gl_PrimitiveID" Name 43 "gl_PrimitiveID"
Name 46 "iid" Name 45 "iid"
Name 47 "gl_InvocationID" Name 46 "gl_InvocationID"
Name 49 "gl_PerVertex" Name 48 "gl_PerVertex"
MemberName 49(gl_PerVertex) 0 "gl_Position" MemberName 48(gl_PerVertex) 0 "gl_Position"
MemberName 49(gl_PerVertex) 1 "gl_PointSize" MemberName 48(gl_PerVertex) 1 "gl_PointSize"
MemberName 49(gl_PerVertex) 2 "gl_ClipDistance" MemberName 48(gl_PerVertex) 2 "gl_ClipDistance"
Name 53 "gl_out" Name 52 "gl_out"
Name 64 "gl_TessLevelOuter" Name 63 "gl_TessLevelOuter"
Name 71 "gl_TessLevelInner" Name 70 "gl_TessLevelInner"
Name 76 "outa" Name 75 "outa"
Name 77 "patchOut" Name 76 "patchOut"
Name 81 "inb" Name 80 "inb"
Name 82 "ind" Name 81 "ind"
Name 85 "ivla" Name 84 "ivla"
Name 86 "ivlb" Name 85 "ivlb"
Name 89 "ovla" Name 88 "ovla"
Name 90 "ovlb" Name 89 "ovlb"
Decorate 20(gl_PerVertex) Block Decorate 19(gl_PerVertex) Block
Decorate 41(gl_PatchVerticesIn) BuiltIn PatchVertices Decorate 40(gl_PatchVerticesIn) BuiltIn PatchVertices
Decorate 44(gl_PrimitiveID) BuiltIn PrimitiveId Decorate 43(gl_PrimitiveID) BuiltIn PrimitiveId
Decorate 47(gl_InvocationID) BuiltIn InvocationId Decorate 46(gl_InvocationID) BuiltIn InvocationId
MemberDecorate 49(gl_PerVertex) 0 BuiltIn Position MemberDecorate 48(gl_PerVertex) 0 BuiltIn Position
MemberDecorate 49(gl_PerVertex) 1 BuiltIn PointSize MemberDecorate 48(gl_PerVertex) 1 BuiltIn PointSize
MemberDecorate 49(gl_PerVertex) 2 BuiltIn ClipDistance MemberDecorate 48(gl_PerVertex) 2 BuiltIn ClipDistance
Decorate 49(gl_PerVertex) Block Decorate 48(gl_PerVertex) Block
Decorate 64(gl_TessLevelOuter) Patch Decorate 63(gl_TessLevelOuter) Patch
Decorate 64(gl_TessLevelOuter) BuiltIn TessLevelOuter Decorate 63(gl_TessLevelOuter) BuiltIn TessLevelOuter
Decorate 71(gl_TessLevelInner) Patch Decorate 70(gl_TessLevelInner) Patch
Decorate 71(gl_TessLevelInner) BuiltIn TessLevelInner Decorate 70(gl_TessLevelInner) BuiltIn TessLevelInner
Decorate 76(outa) NoStaticUse Decorate 75(outa) NoStaticUse
Decorate 77(patchOut) Patch Decorate 76(patchOut) Patch
Decorate 77(patchOut) NoStaticUse Decorate 76(patchOut) NoStaticUse
Decorate 81(inb) NoStaticUse Decorate 80(inb) NoStaticUse
Decorate 82(ind) NoStaticUse Decorate 81(ind) NoStaticUse
Decorate 85(ivla) Location 3 Decorate 84(ivla) Location 3
Decorate 85(ivla) NoStaticUse Decorate 84(ivla) NoStaticUse
Decorate 86(ivlb) Location 4 Decorate 85(ivlb) Location 4
Decorate 86(ivlb) NoStaticUse Decorate 85(ivlb) NoStaticUse
Decorate 89(ovla) Location 3 Decorate 88(ovla) Location 3
Decorate 89(ovla) NoStaticUse Decorate 88(ovla) NoStaticUse
Decorate 90(ovlb) Location 4 Decorate 89(ovlb) Location 4
Decorate 90(ovlb) NoStaticUse Decorate 89(ovlb) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeInt 32 0 6: TypeInt 32 0
8: 7(int) Constant 1 7: 6(int) Constant 1
9: 7(int) Constant 1023 8: 6(int) Constant 1023
10: 7(int) Constant 0 9: 6(int) Constant 0
11: TypeInt 32 1 10: TypeInt 32 1
12: TypePointer Function 11(int) 11: TypePointer Function 10(int)
14: 11(int) Constant 5392 13: 10(int) Constant 5392
15: TypeFloat 32 14: TypeFloat 32
16: TypeVector 15(float) 4 15: TypeVector 14(float) 4
17: TypePointer Function 16(fvec4) 16: TypePointer Function 15(fvec4)
19: TypeArray 15(float) 8 18: TypeArray 14(float) 7
20(gl_PerVertex): TypeStruct 16(fvec4) 15(float) 19 19(gl_PerVertex): TypeStruct 15(fvec4) 14(float) 18
21: 7(int) Constant 32 20: 6(int) Constant 32
22: TypeArray 20(gl_PerVertex) 21 21: TypeArray 19(gl_PerVertex) 20
23: TypePointer Input 22 22: TypePointer Input 21
24(gl_in): 23(ptr) Variable Input 23(gl_in): 22(ptr) Variable Input
25: 11(int) Constant 1 24: 10(int) Constant 1
26: 11(int) Constant 0 25: 10(int) Constant 0
27: TypePointer Input 16(fvec4) 26: TypePointer Input 15(fvec4)
30: TypePointer Function 15(float) 29: TypePointer Function 14(float)
32: TypePointer Input 15(float) 31: TypePointer Input 14(float)
36: 11(int) Constant 2 35: 10(int) Constant 2
40: TypePointer Input 11(int) 39: TypePointer Input 10(int)
41(gl_PatchVerticesIn): 40(ptr) Variable Input 40(gl_PatchVerticesIn): 39(ptr) Variable Input
44(gl_PrimitiveID): 40(ptr) Variable Input 43(gl_PrimitiveID): 39(ptr) Variable Input
47(gl_InvocationID): 40(ptr) Variable Input 46(gl_InvocationID): 39(ptr) Variable Input
49(gl_PerVertex): TypeStruct 16(fvec4) 15(float) 19 48(gl_PerVertex): TypeStruct 15(fvec4) 14(float) 18
50: 7(int) Constant 4 49: 6(int) Constant 4
51: TypeArray 49(gl_PerVertex) 50 50: TypeArray 48(gl_PerVertex) 49
52: TypePointer Output 51 51: TypePointer Output 50
53(gl_out): 52(ptr) Variable Output 52(gl_out): 51(ptr) Variable Output
55: TypePointer Output 16(fvec4) 54: TypePointer Output 15(fvec4)
58: TypePointer Output 15(float) 57: TypePointer Output 14(float)
62: TypeArray 15(float) 50 61: TypeArray 14(float) 49
63: TypePointer Output 62 62: TypePointer Output 61
64(gl_TessLevelOuter): 63(ptr) Variable Output 63(gl_TessLevelOuter): 62(ptr) Variable Output
65: 11(int) Constant 3 64: 10(int) Constant 3
66: 15(float) Constant 1078774989 65: 14(float) Constant 1078774989
68: 7(int) Constant 2 67: 6(int) Constant 2
69: TypeArray 15(float) 68 68: TypeArray 14(float) 67
70: TypePointer Output 69 69: TypePointer Output 68
71(gl_TessLevelInner): 70(ptr) Variable Output 70(gl_TessLevelInner): 69(ptr) Variable Output
72: 15(float) Constant 1067869798 71: 14(float) Constant 1067869798
74: TypeArray 11(int) 50 73: TypeArray 10(int) 49
75: TypePointer PrivateGlobal 74 74: TypePointer PrivateGlobal 73
76(outa): 75(ptr) Variable PrivateGlobal 75(outa): 74(ptr) Variable PrivateGlobal
77(patchOut): 55(ptr) Variable Output 76(patchOut): 54(ptr) Variable Output
78: TypeVector 15(float) 2 77: TypeVector 14(float) 2
79: TypeArray 78(fvec2) 21 78: TypeArray 77(fvec2) 20
80: TypePointer Input 79 79: TypePointer Input 78
81(inb): 80(ptr) Variable Input 80(inb): 79(ptr) Variable Input
82(ind): 80(ptr) Variable Input 81(ind): 79(ptr) Variable Input
83: TypeArray 16(fvec4) 21 82: TypeArray 15(fvec4) 20
84: TypePointer Input 83 83: TypePointer Input 82
85(ivla): 84(ptr) Variable Input 84(ivla): 83(ptr) Variable Input
86(ivlb): 84(ptr) Variable Input 85(ivlb): 83(ptr) Variable Input
87: TypeArray 16(fvec4) 50 86: TypeArray 15(fvec4) 49
88: TypePointer Output 87 87: TypePointer Output 86
89(ovla): 88(ptr) Variable Output 88(ovla): 87(ptr) Variable Output
90(ovlb): 88(ptr) Variable Output 89(ovlb): 87(ptr) Variable Output
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
13(a): 12(ptr) Variable Function 12(a): 11(ptr) Variable Function
18(p): 17(ptr) Variable Function 17(p): 16(ptr) Variable Function
31(ps): 30(ptr) Variable Function 30(ps): 29(ptr) Variable Function
35(cd): 30(ptr) Variable Function 34(cd): 29(ptr) Variable Function
39(pvi): 12(ptr) Variable Function 38(pvi): 11(ptr) Variable Function
43(pid): 12(ptr) Variable Function 42(pid): 11(ptr) Variable Function
46(iid): 12(ptr) Variable Function 45(iid): 11(ptr) Variable Function
MemoryBarrier 8 9 MemoryBarrier 7 8
ControlBarrier 8 8 10 ControlBarrier 7 7 9
Store 13(a) 14 Store 12(a) 13
28: 27(ptr) AccessChain 24(gl_in) 25 26 27: 26(ptr) AccessChain 23(gl_in) 24 25
29: 16(fvec4) Load 28 28: 15(fvec4) Load 27
Store 18(p) 29 Store 17(p) 28
33: 32(ptr) AccessChain 24(gl_in) 25 25 32: 31(ptr) AccessChain 23(gl_in) 24 24
34: 15(float) Load 33 33: 14(float) Load 32
Store 31(ps) 34 Store 30(ps) 33
37: 32(ptr) AccessChain 24(gl_in) 25 36 36 36: 31(ptr) AccessChain 23(gl_in) 24 35 35
38: 15(float) Load 37 37: 14(float) Load 36
Store 35(cd) 38 Store 34(cd) 37
42: 11(int) Load 41(gl_PatchVerticesIn) 41: 10(int) Load 40(gl_PatchVerticesIn)
Store 39(pvi) 42 Store 38(pvi) 41
45: 11(int) Load 44(gl_PrimitiveID) 44: 10(int) Load 43(gl_PrimitiveID)
Store 43(pid) 45 Store 42(pid) 44
48: 11(int) Load 47(gl_InvocationID) 47: 10(int) Load 46(gl_InvocationID)
Store 46(iid) 48 Store 45(iid) 47
54: 16(fvec4) Load 18(p) 53: 15(fvec4) Load 17(p)
56: 55(ptr) AccessChain 53(gl_out) 25 26 55: 54(ptr) AccessChain 52(gl_out) 24 25
Store 56 54 Store 55 53
57: 15(float) Load 31(ps) 56: 14(float) Load 30(ps)
59: 58(ptr) AccessChain 53(gl_out) 25 25 58: 57(ptr) AccessChain 52(gl_out) 24 24
Store 59 57 Store 58 56
60: 15(float) Load 35(cd) 59: 14(float) Load 34(cd)
61: 58(ptr) AccessChain 53(gl_out) 25 36 25 60: 57(ptr) AccessChain 52(gl_out) 24 35 24
Store 61 60 Store 60 59
67: 58(ptr) AccessChain 64(gl_TessLevelOuter) 65 66: 57(ptr) AccessChain 63(gl_TessLevelOuter) 64
Store 67 66 Store 66 65
73: 58(ptr) AccessChain 71(gl_TessLevelInner) 25 72: 57(ptr) AccessChain 70(gl_TessLevelInner) 24
Store 73 72 Store 72 71
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -7,7 +7,7 @@ Linked tessellation evaluation stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 99 // Id's are bound by 98
Source GLSL 400 Source GLSL 400
SourceExtension "GL_ARB_separate_shader_objects" SourceExtension "GL_ARB_separate_shader_objects"
@ -17,177 +17,175 @@ Linked tessellation evaluation stage:
EntryPoint TessellationEvaluation 4 "main" EntryPoint TessellationEvaluation 4 "main"
ExecutionMode 4 InputTriangles ExecutionMode 4 InputTriangles
Name 4 "main" Name 4 "main"
Name 9 "a" Name 8 "a"
Name 14 "p" Name 13 "p"
Name 18 "gl_PerVertex" Name 17 "gl_PerVertex"
MemberName 18(gl_PerVertex) 0 "gl_Position" MemberName 17(gl_PerVertex) 0 "gl_Position"
MemberName 18(gl_PerVertex) 1 "gl_PointSize" MemberName 17(gl_PerVertex) 1 "gl_PointSize"
MemberName 18(gl_PerVertex) 2 "gl_ClipDistance" MemberName 17(gl_PerVertex) 2 "gl_ClipDistance"
Name 22 "gl_in" Name 21 "gl_in"
Name 29 "ps" Name 28 "ps"
Name 33 "cd" Name 32 "cd"
Name 37 "pvi" Name 36 "pvi"
Name 39 "gl_PatchVerticesIn" Name 38 "gl_PatchVerticesIn"
Name 41 "pid" Name 40 "pid"
Name 42 "gl_PrimitiveID" Name 41 "gl_PrimitiveID"
Name 46 "tc" Name 45 "tc"
Name 48 "gl_TessCoord" Name 47 "gl_TessCoord"
Name 50 "tlo" Name 49 "tlo"
Name 54 "gl_TessLevelOuter" Name 53 "gl_TessLevelOuter"
Name 58 "tli" Name 57 "tli"
Name 62 "gl_TessLevelInner" Name 61 "gl_TessLevelInner"
Name 67 "gl_PerVertex" Name 66 "gl_PerVertex"
MemberName 67(gl_PerVertex) 0 "gl_Position" MemberName 66(gl_PerVertex) 0 "gl_Position"
MemberName 67(gl_PerVertex) 1 "gl_PointSize" MemberName 66(gl_PerVertex) 1 "gl_PointSize"
MemberName 67(gl_PerVertex) 2 "gl_ClipDistance" MemberName 66(gl_PerVertex) 2 "gl_ClipDistance"
Name 69 "" Name 68 ""
Name 78 "patchIn" Name 77 "patchIn"
Name 82 "inb" Name 81 "inb"
Name 83 "ind" Name 82 "ind"
Name 84 "testblb" Name 83 "testblb"
MemberName 84(testblb) 0 "f" MemberName 83(testblb) 0 "f"
Name 87 "blb" Name 86 "blb"
Name 88 "testbld" Name 87 "testbld"
MemberName 88(testbld) 0 "f" MemberName 87(testbld) 0 "f"
Name 91 "bld" Name 90 "bld"
Name 94 "ivla" Name 93 "ivla"
Name 95 "ivlb" Name 94 "ivlb"
Name 98 "ovla" Name 97 "ovla"
Decorate 18(gl_PerVertex) Block Decorate 17(gl_PerVertex) Block
Decorate 39(gl_PatchVerticesIn) BuiltIn PatchVertices Decorate 38(gl_PatchVerticesIn) BuiltIn PatchVertices
Decorate 42(gl_PrimitiveID) BuiltIn PrimitiveId Decorate 41(gl_PrimitiveID) BuiltIn PrimitiveId
Decorate 48(gl_TessCoord) BuiltIn TessCoord Decorate 47(gl_TessCoord) BuiltIn TessCoord
Decorate 54(gl_TessLevelOuter) Patch Decorate 53(gl_TessLevelOuter) Patch
Decorate 54(gl_TessLevelOuter) BuiltIn TessLevelOuter Decorate 53(gl_TessLevelOuter) BuiltIn TessLevelOuter
Decorate 62(gl_TessLevelInner) Patch Decorate 61(gl_TessLevelInner) Patch
Decorate 62(gl_TessLevelInner) BuiltIn TessLevelInner Decorate 61(gl_TessLevelInner) BuiltIn TessLevelInner
MemberDecorate 67(gl_PerVertex) 0 BuiltIn Position MemberDecorate 66(gl_PerVertex) 0 BuiltIn Position
MemberDecorate 67(gl_PerVertex) 1 BuiltIn PointSize MemberDecorate 66(gl_PerVertex) 1 BuiltIn PointSize
MemberDecorate 67(gl_PerVertex) 2 BuiltIn ClipDistance MemberDecorate 66(gl_PerVertex) 2 BuiltIn ClipDistance
Decorate 67(gl_PerVertex) Block Decorate 66(gl_PerVertex) Block
Decorate 78(patchIn) Patch Decorate 77(patchIn) Patch
Decorate 78(patchIn) NoStaticUse Decorate 77(patchIn) NoStaticUse
Decorate 82(inb) NoStaticUse Decorate 81(inb) NoStaticUse
Decorate 83(ind) NoStaticUse Decorate 82(ind) NoStaticUse
Decorate 84(testblb) Block Decorate 83(testblb) Block
Decorate 87(blb) NoStaticUse Decorate 86(blb) NoStaticUse
Decorate 88(testbld) Block Decorate 87(testbld) Block
Decorate 91(bld) NoStaticUse Decorate 90(bld) NoStaticUse
Decorate 94(ivla) Location 23 Decorate 93(ivla) Location 23
Decorate 94(ivla) NoStaticUse Decorate 93(ivla) NoStaticUse
Decorate 95(ivlb) Location 24 Decorate 94(ivlb) Location 24
Decorate 95(ivlb) NoStaticUse Decorate 94(ivlb) NoStaticUse
Decorate 98(ovla) Location 23 Decorate 97(ovla) Location 23
Decorate 98(ovla) NoStaticUse Decorate 97(ovla) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeInt 32 1 6: TypeInt 32 1
8: TypePointer Function 7(int) 7: TypePointer Function 6(int)
10: 7(int) Constant 1512 9: 6(int) Constant 1512
11: TypeFloat 32 10: TypeFloat 32
12: TypeVector 11(float) 4 11: TypeVector 10(float) 4
13: TypePointer Function 12(fvec4) 12: TypePointer Function 11(fvec4)
15: TypeInt 32 0 14: TypeInt 32 0
16: 15(int) Constant 1 15: 14(int) Constant 1
17: TypeArray 11(float) 16 16: TypeArray 10(float) 15
18(gl_PerVertex): TypeStruct 12(fvec4) 11(float) 17 17(gl_PerVertex): TypeStruct 11(fvec4) 10(float) 16
19: 15(int) Constant 32 18: 14(int) Constant 32
20: TypeArray 18(gl_PerVertex) 19 19: TypeArray 17(gl_PerVertex) 18
21: TypePointer Input 20 20: TypePointer Input 19
22(gl_in): 21(ptr) Variable Input 21(gl_in): 20(ptr) Variable Input
23: 7(int) Constant 1 22: 6(int) Constant 1
24: 7(int) Constant 0 23: 6(int) Constant 0
25: TypePointer Input 12(fvec4) 24: TypePointer Input 11(fvec4)
28: TypePointer Function 11(float) 27: TypePointer Function 10(float)
30: TypePointer Input 11(float) 29: TypePointer Input 10(float)
34: 7(int) Constant 2 33: 6(int) Constant 2
38: TypePointer Input 7(int) 37: TypePointer Input 6(int)
39(gl_PatchVerticesIn): 38(ptr) Variable Input 38(gl_PatchVerticesIn): 37(ptr) Variable Input
42(gl_PrimitiveID): 38(ptr) Variable Input 41(gl_PrimitiveID): 37(ptr) Variable Input
44: TypeVector 11(float) 3 43: TypeVector 10(float) 3
45: TypePointer Function 44(fvec3) 44: TypePointer Function 43(fvec3)
47: TypePointer Input 44(fvec3) 46: TypePointer Input 43(fvec3)
48(gl_TessCoord): 47(ptr) Variable Input 47(gl_TessCoord): 46(ptr) Variable Input
51: 15(int) Constant 4 50: 14(int) Constant 4
52: TypeArray 11(float) 51 51: TypeArray 10(float) 50
53: TypePointer Input 52 52: TypePointer Input 51
54(gl_TessLevelOuter): 53(ptr) Variable Input 53(gl_TessLevelOuter): 52(ptr) Variable Input
55: 7(int) Constant 3 54: 6(int) Constant 3
59: 15(int) Constant 2 58: 14(int) Constant 2
60: TypeArray 11(float) 59 59: TypeArray 10(float) 58
61: TypePointer Input 60 60: TypePointer Input 59
62(gl_TessLevelInner): 61(ptr) Variable Input 61(gl_TessLevelInner): 60(ptr) Variable Input
65: 15(int) Constant 3 64: 14(int) Constant 3
66: TypeArray 11(float) 65 65: TypeArray 10(float) 64
67(gl_PerVertex): TypeStruct 12(fvec4) 11(float) 66 66(gl_PerVertex): TypeStruct 11(fvec4) 10(float) 65
68: TypePointer Output 67(gl_PerVertex) 67: TypePointer Output 66(gl_PerVertex)
69: 68(ptr) Variable Output 68: 67(ptr) Variable Output
71: TypePointer Output 12(fvec4) 70: TypePointer Output 11(fvec4)
74: TypePointer Output 11(float) 73: TypePointer Output 10(float)
78(patchIn): 25(ptr) Variable Input 77(patchIn): 24(ptr) Variable Input
79: TypeVector 11(float) 2 78: TypeVector 10(float) 2
80: TypeArray 79(fvec2) 19 79: TypeArray 78(fvec2) 18
81: TypePointer Input 80 80: TypePointer Input 79
82(inb): 81(ptr) Variable Input 81(inb): 80(ptr) Variable Input
83(ind): 81(ptr) Variable Input 82(ind): 80(ptr) Variable Input
84(testblb): TypeStruct 7(int) 83(testblb): TypeStruct 6(int)
85: TypeArray 84(testblb) 19 84: TypeArray 83(testblb) 18
86: TypePointer Input 85 85: TypePointer Input 84
87(blb): 86(ptr) Variable Input 86(blb): 85(ptr) Variable Input
88(testbld): TypeStruct 7(int) 87(testbld): TypeStruct 6(int)
89: TypeArray 88(testbld) 19 88: TypeArray 87(testbld) 18
90: TypePointer Input 89 89: TypePointer Input 88
91(bld): 90(ptr) Variable Input 90(bld): 89(ptr) Variable Input
92: TypeArray 12(fvec4) 19 91: TypeArray 11(fvec4) 18
93: TypePointer Input 92 92: TypePointer Input 91
94(ivla): 93(ptr) Variable Input 93(ivla): 92(ptr) Variable Input
95(ivlb): 93(ptr) Variable Input 94(ivlb): 92(ptr) Variable Input
96: TypeArray 12(fvec4) 59 95: TypeArray 11(fvec4) 58
97: TypePointer Output 96 96: TypePointer Output 95
98(ovla): 97(ptr) Variable Output 97(ovla): 96(ptr) Variable Output
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
9(a): 8(ptr) Variable Function 8(a): 7(ptr) Variable Function
14(p): 13(ptr) Variable Function 13(p): 12(ptr) Variable Function
29(ps): 28(ptr) Variable Function 28(ps): 27(ptr) Variable Function
33(cd): 28(ptr) Variable Function 32(cd): 27(ptr) Variable Function
37(pvi): 8(ptr) Variable Function 36(pvi): 7(ptr) Variable Function
41(pid): 8(ptr) Variable Function 40(pid): 7(ptr) Variable Function
46(tc): 45(ptr) Variable Function 45(tc): 44(ptr) Variable Function
50(tlo): 28(ptr) Variable Function 49(tlo): 27(ptr) Variable Function
58(tli): 28(ptr) Variable Function 57(tli): 27(ptr) Variable Function
Store 9(a) 10 Store 8(a) 9
26: 25(ptr) AccessChain 22(gl_in) 23 24 25: 24(ptr) AccessChain 21(gl_in) 22 23
27: 12(fvec4) Load 26 26: 11(fvec4) Load 25
Store 14(p) 27 Store 13(p) 26
31: 30(ptr) AccessChain 22(gl_in) 23 23 30: 29(ptr) AccessChain 21(gl_in) 22 22
32: 11(float) Load 31 31: 10(float) Load 30
Store 29(ps) 32 Store 28(ps) 31
35: 30(ptr) AccessChain 22(gl_in) 23 34 34 34: 29(ptr) AccessChain 21(gl_in) 22 33 33
36: 11(float) Load 35 35: 10(float) Load 34
Store 33(cd) 36 Store 32(cd) 35
40: 7(int) Load 39(gl_PatchVerticesIn) 39: 6(int) Load 38(gl_PatchVerticesIn)
Store 37(pvi) 40 Store 36(pvi) 39
43: 7(int) Load 42(gl_PrimitiveID) 42: 6(int) Load 41(gl_PrimitiveID)
Store 41(pid) 43 Store 40(pid) 42
49: 44(fvec3) Load 48(gl_TessCoord) 48: 43(fvec3) Load 47(gl_TessCoord)
Store 46(tc) 49 Store 45(tc) 48
56: 30(ptr) AccessChain 54(gl_TessLevelOuter) 55 55: 29(ptr) AccessChain 53(gl_TessLevelOuter) 54
57: 11(float) Load 56 56: 10(float) Load 55
Store 50(tlo) 57 Store 49(tlo) 56
63: 30(ptr) AccessChain 62(gl_TessLevelInner) 23 62: 29(ptr) AccessChain 61(gl_TessLevelInner) 22
64: 11(float) Load 63 63: 10(float) Load 62
Store 58(tli) 64 Store 57(tli) 63
70: 12(fvec4) Load 14(p) 69: 11(fvec4) Load 13(p)
72: 71(ptr) AccessChain 69 24 71: 70(ptr) AccessChain 68 23
Store 72 70 Store 71 69
73: 11(float) Load 29(ps) 72: 10(float) Load 28(ps)
75: 74(ptr) AccessChain 69 23 74: 73(ptr) AccessChain 68 22
Store 75 73 Store 74 72
76: 11(float) Load 33(cd) 75: 10(float) Load 32(cd)
77: 74(ptr) AccessChain 69 34 34 76: 73(ptr) AccessChain 68 33 33
Store 77 76 Store 76 75
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -7,7 +7,7 @@ Linked vertex stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 63 // Id's are bound by 62
Source GLSL 430 Source GLSL 430
Capability Shader Capability Shader
@ -15,122 +15,120 @@ Linked vertex stage:
MemoryModel Logical GLSL450 MemoryModel Logical GLSL450
EntryPoint Vertex 4 "main" EntryPoint Vertex 4 "main"
Name 4 "main" Name 4 "main"
Name 11 "gl_PerVertex" Name 10 "gl_PerVertex"
MemberName 11(gl_PerVertex) 0 "gl_ClipDistance" MemberName 10(gl_PerVertex) 0 "gl_ClipDistance"
Name 13 "" Name 12 ""
Name 24 "bad" Name 23 "bad"
Name 35 "badorder3" Name 34 "badorder3"
Name 39 "f" Name 38 "f"
Name 43 "uv4" Name 42 "uv4"
Name 44 "badorder" Name 43 "badorder"
Name 45 "badorder2" Name 44 "badorder2"
Name 46 "boundblock" Name 45 "boundblock"
MemberName 46(boundblock) 0 "aoeu" MemberName 45(boundblock) 0 "aoeu"
Name 48 "boundInst" Name 47 "boundInst"
Name 49 "anonblock" Name 48 "anonblock"
MemberName 49(anonblock) 0 "aoeu" MemberName 48(anonblock) 0 "aoeu"
Name 51 "" Name 50 ""
Name 55 "sampb1" Name 54 "sampb1"
Name 58 "sampb2" Name 57 "sampb2"
Name 59 "sampb4" Name 58 "sampb4"
Name 61 "gl_VertexID" Name 60 "gl_VertexID"
Name 62 "gl_InstanceID" Name 61 "gl_InstanceID"
MemberDecorate 11(gl_PerVertex) 0 BuiltIn ClipDistance MemberDecorate 10(gl_PerVertex) 0 BuiltIn ClipDistance
Decorate 11(gl_PerVertex) Block Decorate 10(gl_PerVertex) Block
Decorate 35(badorder3) Flat Decorate 34(badorder3) Flat
Decorate 43(uv4) Location 4 Decorate 42(uv4) Location 4
Decorate 43(uv4) NoStaticUse Decorate 42(uv4) NoStaticUse
Decorate 29 NoStaticUse Decorate 28 NoStaticUse
Decorate 29 NoStaticUse Decorate 28 NoStaticUse
Decorate 44(badorder) NoStaticUse Decorate 43(badorder) NoStaticUse
Decorate 45(badorder2) Smooth Decorate 44(badorder2) Smooth
Decorate 45(badorder2) Invariant Decorate 44(badorder2) Invariant
Decorate 45(badorder2) NoStaticUse Decorate 44(badorder2) NoStaticUse
Decorate 46(boundblock) GLSLShared Decorate 45(boundblock) GLSLShared
Decorate 46(boundblock) Block Decorate 45(boundblock) Block
Decorate 48(boundInst) Binding 3 Decorate 47(boundInst) Binding 3
Decorate 48(boundInst) NoStaticUse Decorate 47(boundInst) NoStaticUse
Decorate 49(anonblock) GLSLShared Decorate 48(anonblock) GLSLShared
Decorate 49(anonblock) Block Decorate 48(anonblock) Block
Decorate 51 Binding 7 Decorate 50 Binding 7
Decorate 51 NoStaticUse Decorate 50 NoStaticUse
Decorate 55(sampb1) Binding 4 Decorate 54(sampb1) Binding 4
Decorate 55(sampb1) NoStaticUse Decorate 54(sampb1) NoStaticUse
Decorate 58(sampb2) Binding 5 Decorate 57(sampb2) Binding 5
Decorate 58(sampb2) NoStaticUse Decorate 57(sampb2) NoStaticUse
Decorate 59(sampb4) Binding 31 Decorate 58(sampb4) Binding 31
Decorate 59(sampb4) NoStaticUse Decorate 58(sampb4) NoStaticUse
Decorate 61(gl_VertexID) BuiltIn VertexId Decorate 60(gl_VertexID) BuiltIn VertexId
Decorate 61(gl_VertexID) NoStaticUse Decorate 60(gl_VertexID) NoStaticUse
Decorate 62(gl_InstanceID) BuiltIn InstanceId Decorate 61(gl_InstanceID) BuiltIn InstanceId
Decorate 62(gl_InstanceID) NoStaticUse Decorate 61(gl_InstanceID) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeInt 32 0 7: TypeInt 32 0
9: 8(int) Constant 3 8: 7(int) Constant 3
10: TypeArray 7(float) 9 9: TypeArray 6(float) 8
11(gl_PerVertex): TypeStruct 10 10(gl_PerVertex): TypeStruct 9
12: TypePointer Output 11(gl_PerVertex) 11: TypePointer Output 10(gl_PerVertex)
13: 12(ptr) Variable Output 12: 11(ptr) Variable Output
14: TypeInt 32 1 13: TypeInt 32 1
15: 14(int) Constant 0 14: 13(int) Constant 0
16: 14(int) Constant 2 15: 13(int) Constant 2
17: 7(float) Constant 1080872141 16: 6(float) Constant 1080872141
18: TypePointer Output 7(float) 17: TypePointer Output 6(float)
20: TypeVector 7(float) 4 19: TypeVector 6(float) 4
21: 8(int) Constant 10 20: 7(int) Constant 10
22: TypeArray 20(fvec4) 21 21: TypeArray 19(fvec4) 20
23: TypePointer Input 22 22: TypePointer Input 21
24(bad): 23(ptr) Variable Input 23(bad): 22(ptr) Variable Input
25: TypePointer Input 20(fvec4) 24: TypePointer Input 19(fvec4)
29: 7(float) Constant 1082549862 28: 6(float) Constant 1082549862
30: TypeBool 29: TypeBool
34: TypePointer Output 20(fvec4) 33: TypePointer Output 19(fvec4)
35(badorder3): 34(ptr) Variable Output 34(badorder3): 33(ptr) Variable Output
38: TypePointer UniformConstant 7(float) 37: TypePointer UniformConstant 6(float)
39(f): 38(ptr) Variable UniformConstant 38(f): 37(ptr) Variable UniformConstant
42: TypePointer UniformConstant 20(fvec4) 41: TypePointer UniformConstant 19(fvec4)
43(uv4): 42(ptr) Variable UniformConstant 42(uv4): 41(ptr) Variable UniformConstant
44(badorder): 25(ptr) Variable Input 43(badorder): 24(ptr) Variable Input
45(badorder2): 34(ptr) Variable Output 44(badorder2): 33(ptr) Variable Output
46(boundblock): TypeStruct 14(int) 45(boundblock): TypeStruct 13(int)
47: TypePointer Uniform 46(boundblock) 46: TypePointer Uniform 45(boundblock)
48(boundInst): 47(ptr) Variable Uniform 47(boundInst): 46(ptr) Variable Uniform
49(anonblock): TypeStruct 14(int) 48(anonblock): TypeStruct 13(int)
50: TypePointer Uniform 49(anonblock) 49: TypePointer Uniform 48(anonblock)
51: 50(ptr) Variable Uniform 50: 49(ptr) Variable Uniform
52: TypeImage 7(float) 2D sampled format:Unknown 51: TypeImage 6(float) 2D sampled format:Unknown
53: TypeSampledImage 52 52: TypeSampledImage 51
54: TypePointer UniformConstant 53 53: TypePointer UniformConstant 52
55(sampb1): 54(ptr) Variable UniformConstant 54(sampb1): 53(ptr) Variable UniformConstant
56: TypeArray 53 21 55: TypeArray 52 20
57: TypePointer UniformConstant 56 56: TypePointer UniformConstant 55
58(sampb2): 57(ptr) Variable UniformConstant 57(sampb2): 56(ptr) Variable UniformConstant
59(sampb4): 54(ptr) Variable UniformConstant 58(sampb4): 53(ptr) Variable UniformConstant
60: TypePointer Input 14(int) 59: TypePointer Input 13(int)
61(gl_VertexID): 60(ptr) Variable Input 60(gl_VertexID): 59(ptr) Variable Input
62(gl_InstanceID): 60(ptr) Variable Input 61(gl_InstanceID): 59(ptr) Variable Input
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
19: 18(ptr) AccessChain 13 15 16 18: 17(ptr) AccessChain 12 14 15
Store 19 17 Store 18 16
26: 25(ptr) AccessChain 24(bad) 15 25: 24(ptr) AccessChain 23(bad) 14
27: 20(fvec4) Load 26 26: 19(fvec4) Load 25
28: 7(float) CompositeExtract 27 0 27: 6(float) CompositeExtract 26 0
31: 30(bool) FOrdEqual 28 29 30: 29(bool) FOrdEqual 27 28
SelectionMerge 33 None SelectionMerge 32 None
BranchConditional 31 32 33 BranchConditional 30 31 32
32: Label 31: Label
36: 25(ptr) AccessChain 24(bad) 15 35: 24(ptr) AccessChain 23(bad) 14
37: 20(fvec4) Load 36 36: 19(fvec4) Load 35
Store 35(badorder3) 37 Store 34(badorder3) 36
Branch 33 Branch 32
33: Label 32: Label
40: 7(float) Load 39(f) 39: 6(float) Load 38(f)
41: 18(ptr) AccessChain 13 15 15 40: 17(ptr) AccessChain 12 14 14
Store 41 40 Store 40 39
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -7,7 +7,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 104 // Id's are bound by 103
Source GLSL 430 Source GLSL 430
Capability Shader Capability Shader
@ -16,139 +16,137 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 18 "foo(f1[5][7];" Name 17 "foo(f1[5][7];"
Name 17 "a" Name 16 "a"
Name 21 "r" Name 20 "r"
Name 39 "outfloat" Name 38 "outfloat"
Name 42 "g4" Name 41 "g4"
Name 44 "g5" Name 43 "g5"
Name 45 "param" Name 44 "param"
Name 48 "u" Name 47 "u"
Name 52 "param" Name 51 "param"
Name 66 "many" Name 65 "many"
Name 68 "i" Name 67 "i"
Name 70 "j" Name 69 "j"
Name 72 "k" Name 71 "k"
Name 78 "infloat" Name 77 "infloat"
Name 94 "uAofA" Name 93 "uAofA"
MemberName 94(uAofA) 0 "f" MemberName 93(uAofA) 0 "f"
Name 98 "nameAofA" Name 97 "nameAofA"
Decorate 44(g5) Smooth Decorate 43(g5) Smooth
Decorate 78(infloat) Smooth Decorate 77(infloat) Smooth
Decorate 94(uAofA) GLSLShared Decorate 93(uAofA) GLSLShared
Decorate 94(uAofA) Block Decorate 93(uAofA) Block
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeInt 32 0 7: TypeInt 32 0
9: 8(int) Constant 7 8: 7(int) Constant 7
10: TypeArray 7(float) 9 9: TypeArray 6(float) 8
11: 8(int) Constant 5 10: 7(int) Constant 5
12: TypeArray 10 11 11: TypeArray 9 10
13: TypePointer Function 12 12: TypePointer Function 11
14: 8(int) Constant 4 13: 7(int) Constant 4
15: TypeArray 10 14 14: TypeArray 9 13
16: TypeFunction 15 13(ptr) 15: TypeFunction 14 12(ptr)
20: TypePointer Function 10 19: TypePointer Function 9
22: TypeInt 32 1 21: TypeInt 32 1
23: 22(int) Constant 2 22: 21(int) Constant 2
26: 22(int) Constant 0 25: 21(int) Constant 0
29: 22(int) Constant 1 28: 21(int) Constant 1
33: 22(int) Constant 3 32: 21(int) Constant 3
38: TypePointer Output 7(float) 37: TypePointer Output 6(float)
39(outfloat): 38(ptr) Variable Output 38(outfloat): 37(ptr) Variable Output
40: 7(float) Constant 0 39: 6(float) Constant 0
41: TypePointer PrivateGlobal 15 40: TypePointer PrivateGlobal 14
42(g4): 41(ptr) Variable PrivateGlobal 41(g4): 40(ptr) Variable PrivateGlobal
43: TypePointer Input 12 42: TypePointer Input 11
44(g5): 43(ptr) Variable Input 43(g5): 42(ptr) Variable Input
49: 7(float) Constant 1077936128 48: 6(float) Constant 1077936128
50: TypePointer Function 7(float) 49: TypePointer Function 6(float)
55: 8(int) Constant 6 54: 7(int) Constant 6
56: TypeArray 7(float) 55 55: TypeArray 6(float) 54
57: TypeArray 56 11 56: TypeArray 55 10
58: TypeArray 57 14 57: TypeArray 56 13
59: 8(int) Constant 3 58: 7(int) Constant 3
60: TypeArray 58 59 59: TypeArray 57 58
61: 8(int) Constant 2 60: 7(int) Constant 2
62: TypeArray 60 61 61: TypeArray 59 60
63: 8(int) Constant 1 62: 7(int) Constant 1
64: TypeArray 62 63 63: TypeArray 61 62
65: TypePointer PrivateGlobal 64 64: TypePointer PrivateGlobal 63
66(many): 65(ptr) Variable PrivateGlobal 65(many): 64(ptr) Variable PrivateGlobal
67: TypePointer UniformConstant 22(int) 66: TypePointer UniformConstant 21(int)
68(i): 67(ptr) Variable UniformConstant 67(i): 66(ptr) Variable UniformConstant
70(j): 67(ptr) Variable UniformConstant 69(j): 66(ptr) Variable UniformConstant
72(k): 67(ptr) Variable UniformConstant 71(k): 66(ptr) Variable UniformConstant
77: TypePointer Input 7(float) 76: TypePointer Input 6(float)
78(infloat): 77(ptr) Variable Input 77(infloat): 76(ptr) Variable Input
80: TypePointer PrivateGlobal 7(float) 79: TypePointer PrivateGlobal 6(float)
92: TypeArray 7(float) 14 91: TypeArray 6(float) 13
93: TypeArray 92 61 92: TypeArray 91 60
94(uAofA): TypeStruct 93 93(uAofA): TypeStruct 92
95: TypeArray 94(uAofA) 11 94: TypeArray 93(uAofA) 10
96: TypeArray 95 59 95: TypeArray 94 58
97: TypePointer Uniform 96 96: TypePointer Uniform 95
98(nameAofA): 97(ptr) Variable Uniform 97(nameAofA): 96(ptr) Variable Uniform
99: TypePointer Uniform 7(float) 98: TypePointer Uniform 6(float)
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
45(param): 13(ptr) Variable Function 44(param): 12(ptr) Variable Function
48(u): 13(ptr) Variable Function 47(u): 12(ptr) Variable Function
52(param): 13(ptr) Variable Function 51(param): 12(ptr) Variable Function
Store 39(outfloat) 40 Store 38(outfloat) 39
46: 12 Load 44(g5) 45: 11 Load 43(g5)
Store 45(param) 46 Store 44(param) 45
47: 15 FunctionCall 18(foo(f1[5][7];) 45(param) 46: 14 FunctionCall 17(foo(f1[5][7];) 44(param)
Store 42(g4) 47 Store 41(g4) 46
51: 50(ptr) AccessChain 48(u) 23 23 50: 49(ptr) AccessChain 47(u) 22 22
Store 51 49 Store 50 48
53: 12 Load 48(u) 52: 11 Load 47(u)
Store 52(param) 53 Store 51(param) 52
54: 15 FunctionCall 18(foo(f1[5][7];) 52(param) 53: 14 FunctionCall 17(foo(f1[5][7];) 51(param)
69: 22(int) Load 68(i) 68: 21(int) Load 67(i)
71: 22(int) Load 70(j) 70: 21(int) Load 69(j)
73: 22(int) Load 72(k) 72: 21(int) Load 71(k)
74: 22(int) Load 68(i) 73: 21(int) Load 67(i)
75: 22(int) Load 70(j) 74: 21(int) Load 69(j)
76: 22(int) Load 72(k) 75: 21(int) Load 71(k)
79: 7(float) Load 78(infloat) 78: 6(float) Load 77(infloat)
81: 80(ptr) AccessChain 66(many) 69 71 73 74 75 76 80: 79(ptr) AccessChain 65(many) 68 70 72 73 74 75
Store 81 79 Store 80 78
82: 22(int) Load 70(j) 81: 21(int) Load 69(j)
83: 22(int) Load 70(j) 82: 21(int) Load 69(j)
84: 22(int) Load 70(j) 83: 21(int) Load 69(j)
85: 22(int) Load 70(j) 84: 21(int) Load 69(j)
86: 22(int) Load 70(j) 85: 21(int) Load 69(j)
87: 22(int) Load 70(j) 86: 21(int) Load 69(j)
88: 80(ptr) AccessChain 66(many) 82 83 84 85 86 87 87: 79(ptr) AccessChain 65(many) 81 82 83 84 85 86
89: 7(float) Load 88 88: 6(float) Load 87
90: 7(float) Load 39(outfloat) 89: 6(float) Load 38(outfloat)
91: 7(float) FAdd 90 89 90: 6(float) FAdd 89 88
Store 39(outfloat) 91 Store 38(outfloat) 90
100: 99(ptr) AccessChain 98(nameAofA) 29 23 26 26 33 99: 98(ptr) AccessChain 97(nameAofA) 28 22 25 25 32
101: 7(float) Load 100 100: 6(float) Load 99
102: 7(float) Load 39(outfloat) 101: 6(float) Load 38(outfloat)
103: 7(float) FAdd 102 101 102: 6(float) FAdd 101 100
Store 39(outfloat) 103 Store 38(outfloat) 102
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd
18(foo(f1[5][7];): 15 Function None 16 17(foo(f1[5][7];): 14 Function None 15
17(a): 13(ptr) FunctionParameter 16(a): 12(ptr) FunctionParameter
19: Label 18: Label
21(r): 20(ptr) Variable Function 20(r): 19(ptr) Variable Function
24: 20(ptr) AccessChain 17(a) 23 23: 19(ptr) AccessChain 16(a) 22
25: 10 Load 24 24: 9 Load 23
Store 21(r) 25 Store 20(r) 24
27: 20(ptr) AccessChain 17(a) 26 26: 19(ptr) AccessChain 16(a) 25
28: 10 Load 27 27: 9 Load 26
30: 20(ptr) AccessChain 17(a) 29 29: 19(ptr) AccessChain 16(a) 28
31: 10 Load 30 30: 9 Load 29
32: 10 Load 21(r) 31: 9 Load 20(r)
34: 20(ptr) AccessChain 17(a) 33 33: 19(ptr) AccessChain 16(a) 32
35: 10 Load 34 34: 9 Load 33
36: 15 CompositeConstruct 28 31 32 35 35: 14 CompositeConstruct 27 30 31 34
ReturnValue 36 ReturnValue 35
FunctionEnd FunctionEnd

File diff suppressed because it is too large Load Diff

View File

@ -7,7 +7,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 198 // Id's are bound by 197
Source GLSL 420 Source GLSL 420
Capability Shader Capability Shader
@ -16,309 +16,307 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 9 "S" Name 8 "S"
MemberName 9(S) 0 "color" MemberName 8(S) 0 "color"
Name 12 "GetColor1(struct-S-vf31;" Name 11 "GetColor1(struct-S-vf31;"
Name 11 "i" Name 10 "i"
Name 19 "GetColor2(struct-S-vf31;i1;" Name 18 "GetColor2(struct-S-vf31;i1;"
Name 17 "i" Name 16 "i"
Name 18 "comp" Name 17 "comp"
Name 23 "GetColor3(struct-S-vf31;i1;" Name 22 "GetColor3(struct-S-vf31;i1;"
Name 21 "i" Name 20 "i"
Name 22 "comp" Name 21 "comp"
Name 27 "GetColor4(struct-S-vf31;i1;" Name 26 "GetColor4(struct-S-vf31;i1;"
Name 25 "i" Name 24 "i"
Name 26 "comp" Name 25 "comp"
Name 31 "GetColor5(struct-S-vf31;i1;" Name 30 "GetColor5(struct-S-vf31;i1;"
Name 29 "i" Name 28 "i"
Name 30 "comp" Name 29 "comp"
Name 35 "GetColor6(struct-S-vf31;i1;" Name 34 "GetColor6(struct-S-vf31;i1;"
Name 33 "i" Name 32 "i"
Name 34 "comp" Name 33 "comp"
Name 39 "GetColor7(struct-S-vf31;i1;" Name 38 "GetColor7(struct-S-vf31;i1;"
Name 37 "i" Name 36 "i"
Name 38 "comp" Name 37 "comp"
Name 43 "GetColor8(struct-S-vf31;i1;" Name 42 "GetColor8(struct-S-vf31;i1;"
Name 41 "i" Name 40 "i"
Name 42 "comp" Name 41 "comp"
Name 47 "GetColor9(struct-S-vf31;i1;" Name 46 "GetColor9(struct-S-vf31;i1;"
Name 45 "i" Name 44 "i"
Name 46 "comp" Name 45 "comp"
Name 51 "GetColor10(struct-S-vf31;i1;" Name 50 "GetColor10(struct-S-vf31;i1;"
Name 49 "i" Name 48 "i"
Name 50 "comp" Name 49 "comp"
Name 55 "GetColor11(struct-S-vf31;i1;" Name 54 "GetColor11(struct-S-vf31;i1;"
Name 53 "i" Name 52 "i"
Name 54 "comp" Name 53 "comp"
Name 59 "GetColor12(struct-S-vf31;i1;" Name 58 "GetColor12(struct-S-vf31;i1;"
Name 57 "i" Name 56 "i"
Name 58 "comp" Name 57 "comp"
Name 63 "GetColor13(struct-S-vf31;i1;" Name 62 "GetColor13(struct-S-vf31;i1;"
Name 61 "i" Name 60 "i"
Name 62 "comp" Name 61 "comp"
Name 66 "OutColor" Name 65 "OutColor"
Name 145 "s" Name 144 "s"
Name 150 "u" Name 149 "u"
Name 151 "param" Name 150 "param"
Name 155 "param" Name 154 "param"
Name 159 "param" Name 158 "param"
Name 163 "param" Name 162 "param"
Name 167 "param" Name 166 "param"
Name 171 "param" Name 170 "param"
Name 175 "param" Name 174 "param"
Name 179 "param" Name 178 "param"
Name 183 "param" Name 182 "param"
Name 187 "param" Name 186 "param"
Name 191 "param" Name 190 "param"
Name 195 "param" Name 194 "param"
Decorate 66(OutColor) Location 0 Decorate 65(OutColor) Location 0
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 3 7: TypeVector 6(float) 3
9(S): TypeStruct 8(fvec3) 8(S): TypeStruct 7(fvec3)
10: TypeFunction 2 9(S) 9: TypeFunction 2 8(S)
14: TypeInt 32 1 13: TypeInt 32 1
15: TypePointer Function 14(int) 14: TypePointer Function 13(int)
16: TypeFunction 2 9(S) 15(ptr) 15: TypeFunction 2 8(S) 14(ptr)
65: TypePointer Output 8(fvec3) 64: TypePointer Output 7(fvec3)
66(OutColor): 65(ptr) Variable Output 65(OutColor): 64(ptr) Variable Output
67: 14(int) Constant 0 66: 13(int) Constant 0
68: TypeInt 32 0 67: TypeInt 32 0
69: 68(int) Constant 0 68: 67(int) Constant 0
96: TypeVector 7(float) 2 95: TypeVector 6(float) 2
110: 68(int) Constant 2 109: 67(int) Constant 2
142: 7(float) Constant 0 141: 6(float) Constant 0
143: 8(fvec3) ConstantComposite 142 142 142 142: 7(fvec3) ConstantComposite 141 141 141
144: TypePointer Function 9(S) 143: TypePointer Function 8(S)
149: TypePointer UniformConstant 14(int) 148: TypePointer UniformConstant 13(int)
150(u): 149(ptr) Variable UniformConstant 149(u): 148(ptr) Variable UniformConstant
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
145(s): 144(ptr) Variable Function 144(s): 143(ptr) Variable Function
151(param): 15(ptr) Variable Function 150(param): 14(ptr) Variable Function
155(param): 15(ptr) Variable Function 154(param): 14(ptr) Variable Function
159(param): 15(ptr) Variable Function 158(param): 14(ptr) Variable Function
163(param): 15(ptr) Variable Function 162(param): 14(ptr) Variable Function
167(param): 15(ptr) Variable Function 166(param): 14(ptr) Variable Function
171(param): 15(ptr) Variable Function 170(param): 14(ptr) Variable Function
175(param): 15(ptr) Variable Function 174(param): 14(ptr) Variable Function
179(param): 15(ptr) Variable Function 178(param): 14(ptr) Variable Function
183(param): 15(ptr) Variable Function 182(param): 14(ptr) Variable Function
187(param): 15(ptr) Variable Function 186(param): 14(ptr) Variable Function
191(param): 15(ptr) Variable Function 190(param): 14(ptr) Variable Function
195(param): 15(ptr) Variable Function 194(param): 14(ptr) Variable Function
Store 66(OutColor) 143 Store 65(OutColor) 142
146: 9(S) Load 145(s) 145: 8(S) Load 144(s)
147: 2 FunctionCall 12(GetColor1(struct-S-vf31;) 146 146: 2 FunctionCall 11(GetColor1(struct-S-vf31;) 145
148: 9(S) Load 145(s) 147: 8(S) Load 144(s)
152: 14(int) Load 150(u) 151: 13(int) Load 149(u)
Store 151(param) 152 Store 150(param) 151
153: 2 FunctionCall 19(GetColor2(struct-S-vf31;i1;) 148 151(param) 152: 2 FunctionCall 18(GetColor2(struct-S-vf31;i1;) 147 150(param)
154: 9(S) Load 145(s) 153: 8(S) Load 144(s)
156: 14(int) Load 150(u) 155: 13(int) Load 149(u)
Store 155(param) 156 Store 154(param) 155
157: 2 FunctionCall 23(GetColor3(struct-S-vf31;i1;) 154 155(param) 156: 2 FunctionCall 22(GetColor3(struct-S-vf31;i1;) 153 154(param)
158: 9(S) Load 145(s) 157: 8(S) Load 144(s)
160: 14(int) Load 150(u) 159: 13(int) Load 149(u)
Store 159(param) 160 Store 158(param) 159
161: 2 FunctionCall 27(GetColor4(struct-S-vf31;i1;) 158 159(param) 160: 2 FunctionCall 26(GetColor4(struct-S-vf31;i1;) 157 158(param)
162: 9(S) Load 145(s) 161: 8(S) Load 144(s)
164: 14(int) Load 150(u) 163: 13(int) Load 149(u)
Store 163(param) 164 Store 162(param) 163
165: 2 FunctionCall 31(GetColor5(struct-S-vf31;i1;) 162 163(param) 164: 2 FunctionCall 30(GetColor5(struct-S-vf31;i1;) 161 162(param)
166: 9(S) Load 145(s) 165: 8(S) Load 144(s)
168: 14(int) Load 150(u) 167: 13(int) Load 149(u)
Store 167(param) 168 Store 166(param) 167
169: 2 FunctionCall 35(GetColor6(struct-S-vf31;i1;) 166 167(param) 168: 2 FunctionCall 34(GetColor6(struct-S-vf31;i1;) 165 166(param)
170: 9(S) Load 145(s) 169: 8(S) Load 144(s)
172: 14(int) Load 150(u) 171: 13(int) Load 149(u)
Store 171(param) 172 Store 170(param) 171
173: 2 FunctionCall 39(GetColor7(struct-S-vf31;i1;) 170 171(param) 172: 2 FunctionCall 38(GetColor7(struct-S-vf31;i1;) 169 170(param)
174: 9(S) Load 145(s) 173: 8(S) Load 144(s)
176: 14(int) Load 150(u) 175: 13(int) Load 149(u)
Store 175(param) 176 Store 174(param) 175
177: 2 FunctionCall 43(GetColor8(struct-S-vf31;i1;) 174 175(param) 176: 2 FunctionCall 42(GetColor8(struct-S-vf31;i1;) 173 174(param)
178: 9(S) Load 145(s) 177: 8(S) Load 144(s)
180: 14(int) Load 150(u) 179: 13(int) Load 149(u)
Store 179(param) 180 Store 178(param) 179
181: 2 FunctionCall 47(GetColor9(struct-S-vf31;i1;) 178 179(param) 180: 2 FunctionCall 46(GetColor9(struct-S-vf31;i1;) 177 178(param)
182: 9(S) Load 145(s) 181: 8(S) Load 144(s)
184: 14(int) Load 150(u) 183: 13(int) Load 149(u)
Store 183(param) 184 Store 182(param) 183
185: 2 FunctionCall 51(GetColor10(struct-S-vf31;i1;) 182 183(param) 184: 2 FunctionCall 50(GetColor10(struct-S-vf31;i1;) 181 182(param)
186: 9(S) Load 145(s) 185: 8(S) Load 144(s)
188: 14(int) Load 150(u) 187: 13(int) Load 149(u)
Store 187(param) 188 Store 186(param) 187
189: 2 FunctionCall 55(GetColor11(struct-S-vf31;i1;) 186 187(param) 188: 2 FunctionCall 54(GetColor11(struct-S-vf31;i1;) 185 186(param)
190: 9(S) Load 145(s) 189: 8(S) Load 144(s)
192: 14(int) Load 150(u) 191: 13(int) Load 149(u)
Store 191(param) 192 Store 190(param) 191
193: 2 FunctionCall 59(GetColor12(struct-S-vf31;i1;) 190 191(param) 192: 2 FunctionCall 58(GetColor12(struct-S-vf31;i1;) 189 190(param)
194: 9(S) Load 145(s) 193: 8(S) Load 144(s)
196: 14(int) Load 150(u) 195: 13(int) Load 149(u)
Store 195(param) 196 Store 194(param) 195
197: 2 FunctionCall 63(GetColor13(struct-S-vf31;i1;) 194 195(param) 196: 2 FunctionCall 62(GetColor13(struct-S-vf31;i1;) 193 194(param)
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd
12(GetColor1(struct-S-vf31;): 2 Function None 10 11(GetColor1(struct-S-vf31;): 2 Function None 9
11(i): 9(S) FunctionParameter 10(i): 8(S) FunctionParameter
13: Label 12: Label
70: 7(float) CompositeExtract 11(i) 0 0 69: 6(float) CompositeExtract 10(i) 0 0
71: 8(fvec3) Load 66(OutColor) 70: 7(fvec3) Load 65(OutColor)
72: 8(fvec3) CompositeConstruct 70 70 70 71: 7(fvec3) CompositeConstruct 69 69 69
73: 8(fvec3) FAdd 71 72 72: 7(fvec3) FAdd 70 71
Store 66(OutColor) 73 Store 65(OutColor) 72
Return Return
FunctionEnd FunctionEnd
19(GetColor2(struct-S-vf31;i1;): 2 Function None 16 18(GetColor2(struct-S-vf31;i1;): 2 Function None 15
17(i): 9(S) FunctionParameter 16(i): 8(S) FunctionParameter
18(comp): 15(ptr) FunctionParameter 17(comp): 14(ptr) FunctionParameter
20: Label 19: Label
74: 14(int) Load 18(comp) 73: 13(int) Load 17(comp)
75: 8(fvec3) CompositeExtract 17(i) 0 74: 7(fvec3) CompositeExtract 16(i) 0
76: 7(float) VectorExtractDynamic 75 74 75: 6(float) VectorExtractDynamic 74 73
77: 8(fvec3) Load 66(OutColor) 76: 7(fvec3) Load 65(OutColor)
78: 8(fvec3) CompositeConstruct 76 76 76 77: 7(fvec3) CompositeConstruct 75 75 75
79: 8(fvec3) FAdd 77 78 78: 7(fvec3) FAdd 76 77
Store 66(OutColor) 79 Store 65(OutColor) 78
Return Return
FunctionEnd FunctionEnd
23(GetColor3(struct-S-vf31;i1;): 2 Function None 16 22(GetColor3(struct-S-vf31;i1;): 2 Function None 15
21(i): 9(S) FunctionParameter 20(i): 8(S) FunctionParameter
22(comp): 15(ptr) FunctionParameter 21(comp): 14(ptr) FunctionParameter
24: Label 23: Label
80: 14(int) Load 22(comp) 79: 13(int) Load 21(comp)
81: 8(fvec3) CompositeExtract 21(i) 0 80: 7(fvec3) CompositeExtract 20(i) 0
82: 7(float) VectorExtractDynamic 81 80 81: 6(float) VectorExtractDynamic 80 79
83: 8(fvec3) Load 66(OutColor) 82: 7(fvec3) Load 65(OutColor)
84: 8(fvec3) CompositeConstruct 82 82 82 83: 7(fvec3) CompositeConstruct 81 81 81
85: 8(fvec3) FAdd 83 84 84: 7(fvec3) FAdd 82 83
Store 66(OutColor) 85 Store 65(OutColor) 84
Return Return
FunctionEnd FunctionEnd
27(GetColor4(struct-S-vf31;i1;): 2 Function None 16 26(GetColor4(struct-S-vf31;i1;): 2 Function None 15
25(i): 9(S) FunctionParameter 24(i): 8(S) FunctionParameter
26(comp): 15(ptr) FunctionParameter 25(comp): 14(ptr) FunctionParameter
28: Label 27: Label
86: 14(int) Load 26(comp) 85: 13(int) Load 25(comp)
87: 8(fvec3) CompositeExtract 25(i) 0 86: 7(fvec3) CompositeExtract 24(i) 0
88: 7(float) VectorExtractDynamic 87 86 87: 6(float) VectorExtractDynamic 86 85
89: 8(fvec3) Load 66(OutColor) 88: 7(fvec3) Load 65(OutColor)
90: 8(fvec3) CompositeConstruct 88 88 88 89: 7(fvec3) CompositeConstruct 87 87 87
91: 8(fvec3) FAdd 89 90 90: 7(fvec3) FAdd 88 89
Store 66(OutColor) 91 Store 65(OutColor) 90
Return Return
FunctionEnd FunctionEnd
31(GetColor5(struct-S-vf31;i1;): 2 Function None 16 30(GetColor5(struct-S-vf31;i1;): 2 Function None 15
29(i): 9(S) FunctionParameter 28(i): 8(S) FunctionParameter
30(comp): 15(ptr) FunctionParameter 29(comp): 14(ptr) FunctionParameter
32: Label 31: Label
92: 8(fvec3) CompositeExtract 29(i) 0 91: 7(fvec3) CompositeExtract 28(i) 0
93: 8(fvec3) Load 66(OutColor) 92: 7(fvec3) Load 65(OutColor)
94: 8(fvec3) FAdd 93 92 93: 7(fvec3) FAdd 92 91
Store 66(OutColor) 94 Store 65(OutColor) 93
Return Return
FunctionEnd FunctionEnd
35(GetColor6(struct-S-vf31;i1;): 2 Function None 16 34(GetColor6(struct-S-vf31;i1;): 2 Function None 15
33(i): 9(S) FunctionParameter 32(i): 8(S) FunctionParameter
34(comp): 15(ptr) FunctionParameter 33(comp): 14(ptr) FunctionParameter
36: Label 35: Label
95: 14(int) Load 34(comp) 94: 13(int) Load 33(comp)
97: 8(fvec3) CompositeExtract 33(i) 0 96: 7(fvec3) CompositeExtract 32(i) 0
98: 96(fvec2) VectorShuffle 97 97 1 0 97: 95(fvec2) VectorShuffle 96 96 1 0
99: 7(float) VectorExtractDynamic 98 95 98: 6(float) VectorExtractDynamic 97 94
100: 8(fvec3) Load 66(OutColor) 99: 7(fvec3) Load 65(OutColor)
101: 8(fvec3) CompositeConstruct 99 99 99 100: 7(fvec3) CompositeConstruct 98 98 98
102: 8(fvec3) FAdd 100 101 101: 7(fvec3) FAdd 99 100
Store 66(OutColor) 102 Store 65(OutColor) 101
Return Return
FunctionEnd FunctionEnd
39(GetColor7(struct-S-vf31;i1;): 2 Function None 16 38(GetColor7(struct-S-vf31;i1;): 2 Function None 15
37(i): 9(S) FunctionParameter 36(i): 8(S) FunctionParameter
38(comp): 15(ptr) FunctionParameter 37(comp): 14(ptr) FunctionParameter
40: Label 39: Label
103: 8(fvec3) CompositeExtract 37(i) 0 102: 7(fvec3) CompositeExtract 36(i) 0
104: 96(fvec2) VectorShuffle 103 103 0 1 103: 95(fvec2) VectorShuffle 102 102 0 1
105: 8(fvec3) Load 66(OutColor) 104: 7(fvec3) Load 65(OutColor)
106: 96(fvec2) VectorShuffle 105 105 0 1 105: 95(fvec2) VectorShuffle 104 104 0 1
107: 96(fvec2) FAdd 106 104 106: 95(fvec2) FAdd 105 103
108: 8(fvec3) Load 66(OutColor) 107: 7(fvec3) Load 65(OutColor)
109: 8(fvec3) VectorShuffle 108 107 3 4 2 108: 7(fvec3) VectorShuffle 107 106 3 4 2
Store 66(OutColor) 109 Store 65(OutColor) 108
Return Return
FunctionEnd FunctionEnd
43(GetColor8(struct-S-vf31;i1;): 2 Function None 16 42(GetColor8(struct-S-vf31;i1;): 2 Function None 15
41(i): 9(S) FunctionParameter 40(i): 8(S) FunctionParameter
42(comp): 15(ptr) FunctionParameter 41(comp): 14(ptr) FunctionParameter
44: Label 43: Label
111: 7(float) CompositeExtract 41(i) 0 2 110: 6(float) CompositeExtract 40(i) 0 2
112: 8(fvec3) Load 66(OutColor) 111: 7(fvec3) Load 65(OutColor)
113: 8(fvec3) CompositeConstruct 111 111 111 112: 7(fvec3) CompositeConstruct 110 110 110
114: 8(fvec3) FAdd 112 113 113: 7(fvec3) FAdd 111 112
Store 66(OutColor) 114 Store 65(OutColor) 113
Return Return
FunctionEnd FunctionEnd
47(GetColor9(struct-S-vf31;i1;): 2 Function None 16 46(GetColor9(struct-S-vf31;i1;): 2 Function None 15
45(i): 9(S) FunctionParameter 44(i): 8(S) FunctionParameter
46(comp): 15(ptr) FunctionParameter 45(comp): 14(ptr) FunctionParameter
48: Label 47: Label
115: 8(fvec3) CompositeExtract 45(i) 0 114: 7(fvec3) CompositeExtract 44(i) 0
116: 8(fvec3) Load 66(OutColor) 115: 7(fvec3) Load 65(OutColor)
117: 8(fvec3) VectorShuffle 116 116 2 0 1 116: 7(fvec3) VectorShuffle 115 115 2 0 1
118: 8(fvec3) FAdd 117 115 117: 7(fvec3) FAdd 116 114
119: 8(fvec3) Load 66(OutColor) 118: 7(fvec3) Load 65(OutColor)
120: 8(fvec3) VectorShuffle 119 118 4 5 3 119: 7(fvec3) VectorShuffle 118 117 4 5 3
Store 66(OutColor) 120 Store 65(OutColor) 119
Return Return
FunctionEnd FunctionEnd
51(GetColor10(struct-S-vf31;i1;): 2 Function None 16 50(GetColor10(struct-S-vf31;i1;): 2 Function None 15
49(i): 9(S) FunctionParameter 48(i): 8(S) FunctionParameter
50(comp): 15(ptr) FunctionParameter 49(comp): 14(ptr) FunctionParameter
52: Label 51: Label
121: 8(fvec3) CompositeExtract 49(i) 0 120: 7(fvec3) CompositeExtract 48(i) 0
122: 96(fvec2) VectorShuffle 121 121 0 1 121: 95(fvec2) VectorShuffle 120 120 0 1
123: 8(fvec3) Load 66(OutColor) 122: 7(fvec3) Load 65(OutColor)
124: 96(fvec2) VectorShuffle 123 123 2 1 123: 95(fvec2) VectorShuffle 122 122 2 1
125: 96(fvec2) FAdd 124 122 124: 95(fvec2) FAdd 123 121
126: 8(fvec3) Load 66(OutColor) 125: 7(fvec3) Load 65(OutColor)
127: 8(fvec3) VectorShuffle 126 125 0 4 3 126: 7(fvec3) VectorShuffle 125 124 0 4 3
Store 66(OutColor) 127 Store 65(OutColor) 126
Return Return
FunctionEnd FunctionEnd
55(GetColor11(struct-S-vf31;i1;): 2 Function None 16 54(GetColor11(struct-S-vf31;i1;): 2 Function None 15
53(i): 9(S) FunctionParameter 52(i): 8(S) FunctionParameter
54(comp): 15(ptr) FunctionParameter 53(comp): 14(ptr) FunctionParameter
56: Label 55: Label
128: 8(fvec3) CompositeExtract 53(i) 0 127: 7(fvec3) CompositeExtract 52(i) 0
129: 96(fvec2) VectorShuffle 128 128 0 1 128: 95(fvec2) VectorShuffle 127 127 0 1
130: 8(fvec3) Load 66(OutColor) 129: 7(fvec3) Load 65(OutColor)
131: 96(fvec2) VectorShuffle 130 130 0 2 130: 95(fvec2) VectorShuffle 129 129 0 2
132: 96(fvec2) FAdd 131 129 131: 95(fvec2) FAdd 130 128
133: 8(fvec3) Load 66(OutColor) 132: 7(fvec3) Load 65(OutColor)
134: 8(fvec3) VectorShuffle 133 132 3 1 4 133: 7(fvec3) VectorShuffle 132 131 3 1 4
Store 66(OutColor) 134 Store 65(OutColor) 133
Return Return
FunctionEnd FunctionEnd
59(GetColor12(struct-S-vf31;i1;): 2 Function None 16 58(GetColor12(struct-S-vf31;i1;): 2 Function None 15
57(i): 9(S) FunctionParameter 56(i): 8(S) FunctionParameter
58(comp): 15(ptr) FunctionParameter 57(comp): 14(ptr) FunctionParameter
60: Label 59: Label
135: 14(int) Load 58(comp) 134: 13(int) Load 57(comp)
136: 7(float) CompositeExtract 57(i) 0 0 135: 6(float) CompositeExtract 56(i) 0 0
137: 8(fvec3) Load 66(OutColor) 136: 7(fvec3) Load 65(OutColor)
138: 7(float) VectorExtractDynamic 137 135 137: 6(float) VectorExtractDynamic 136 134
139: 7(float) FAdd 138 136 138: 6(float) FAdd 137 135
140: 8(fvec3) Load 66(OutColor) 139: 7(fvec3) Load 65(OutColor)
141: 8(fvec3) VectorInsertDynamic 140 139 135 140: 7(fvec3) VectorInsertDynamic 139 138 134
Store 66(OutColor) 141 Store 65(OutColor) 140
Return Return
FunctionEnd FunctionEnd
63(GetColor13(struct-S-vf31;i1;): 2 Function None 16 62(GetColor13(struct-S-vf31;i1;): 2 Function None 15
61(i): 9(S) FunctionParameter 60(i): 8(S) FunctionParameter
62(comp): 15(ptr) FunctionParameter 61(comp): 14(ptr) FunctionParameter
64: Label 63: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 81 // Id's are bound by 80
Source GLSL 110 Source GLSL 110
Capability Shader Capability Shader
@ -14,119 +14,117 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 10 "white" Name 9 "white"
Name 13 "black" Name 12 "black"
Name 16 "color" Name 15 "color"
Name 19 "x" Name 18 "x"
Name 22 "tex_coord" Name 21 "tex_coord"
Name 28 "y" Name 27 "y"
Name 33 "radius" Name 32 "radius"
Name 56 "gl_FragColor" Name 55 "gl_FragColor"
Decorate 22(tex_coord) Smooth Decorate 21(tex_coord) Smooth
Decorate 56(gl_FragColor) BuiltIn FragColor Decorate 55(gl_FragColor) BuiltIn FragColor
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 4 7: TypeVector 6(float) 4
9: TypePointer Function 8(fvec4) 8: TypePointer Function 7(fvec4)
11: 7(float) Constant 1065353216 10: 6(float) Constant 1065353216
12: 8(fvec4) ConstantComposite 11 11 11 11 11: 7(fvec4) ConstantComposite 10 10 10 10
14: 7(float) Constant 1045220557 13: 6(float) Constant 1045220557
15: 8(fvec4) ConstantComposite 14 14 14 14 14: 7(fvec4) ConstantComposite 13 13 13 13
18: TypePointer Function 7(float) 17: TypePointer Function 6(float)
20: TypeVector 7(float) 2 19: TypeVector 6(float) 2
21: TypePointer Input 20(fvec2) 20: TypePointer Input 19(fvec2)
22(tex_coord): 21(ptr) Variable Input 21(tex_coord): 20(ptr) Variable Input
25: 7(float) Constant 1073741824 24: 6(float) Constant 1073741824
43: TypeBool 42: TypeBool
48: 7(float) Constant 1066192077 47: 6(float) Constant 1066192077
55: TypePointer Output 8(fvec4) 54: TypePointer Output 7(fvec4)
56(gl_FragColor): 55(ptr) Variable Output 55(gl_FragColor): 54(ptr) Variable Output
59: 7(float) Constant 1067030938 58: 6(float) Constant 1067030938
68: 7(float) Constant 1061158912 67: 6(float) Constant 1061158912
73: 7(float) Constant 1098907648 72: 6(float) Constant 1098907648
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
10(white): 9(ptr) Variable Function 9(white): 8(ptr) Variable Function
13(black): 9(ptr) Variable Function 12(black): 8(ptr) Variable Function
16(color): 9(ptr) Variable Function 15(color): 8(ptr) Variable Function
19(x): 18(ptr) Variable Function 18(x): 17(ptr) Variable Function
28(y): 18(ptr) Variable Function 27(y): 17(ptr) Variable Function
33(radius): 18(ptr) Variable Function 32(radius): 17(ptr) Variable Function
Store 10(white) 12 Store 9(white) 11
Store 13(black) 15 Store 12(black) 14
17: 8(fvec4) Load 10(white) 16: 7(fvec4) Load 9(white)
Store 16(color) 17 Store 15(color) 16
23: 20(fvec2) Load 22(tex_coord) 22: 19(fvec2) Load 21(tex_coord)
24: 7(float) CompositeExtract 23 0 23: 6(float) CompositeExtract 22 0
26: 7(float) FMul 24 25 25: 6(float) FMul 23 24
27: 7(float) FSub 26 11 26: 6(float) FSub 25 10
Store 19(x) 27 Store 18(x) 26
29: 20(fvec2) Load 22(tex_coord) 28: 19(fvec2) Load 21(tex_coord)
30: 7(float) CompositeExtract 29 1 29: 6(float) CompositeExtract 28 1
31: 7(float) FMul 30 25 30: 6(float) FMul 29 24
32: 7(float) FSub 31 11 31: 6(float) FSub 30 10
Store 28(y) 32 Store 27(y) 31
34: 7(float) Load 19(x) 33: 6(float) Load 18(x)
35: 7(float) Load 19(x) 34: 6(float) Load 18(x)
36: 7(float) FMul 34 35 35: 6(float) FMul 33 34
37: 7(float) Load 28(y) 36: 6(float) Load 27(y)
38: 7(float) Load 28(y) 37: 6(float) Load 27(y)
39: 7(float) FMul 37 38 38: 6(float) FMul 36 37
40: 7(float) FAdd 36 39 39: 6(float) FAdd 35 38
41: 7(float) ExtInst 1(GLSL.std.450) 31(Sqrt) 40 40: 6(float) ExtInst 1(GLSL.std.450) 31(Sqrt) 39
Store 33(radius) 41 Store 32(radius) 40
42: 7(float) Load 33(radius) 41: 6(float) Load 32(radius)
44: 43(bool) FOrdGreaterThan 42 11 43: 42(bool) FOrdGreaterThan 41 10
SelectionMerge 46 None SelectionMerge 45 None
BranchConditional 44 45 46 BranchConditional 43 44 45
45: Label 44: Label
47: 7(float) Load 33(radius) 46: 6(float) Load 32(radius)
49: 43(bool) FOrdGreaterThan 47 48 48: 42(bool) FOrdGreaterThan 46 47
SelectionMerge 51 None SelectionMerge 50 None
BranchConditional 49 50 51 BranchConditional 48 49 50
50: Label 49: Label
52: 8(fvec4) Load 16(color) 51: 7(fvec4) Load 15(color)
53: 8(fvec4) CompositeConstruct 11 11 11 11 52: 7(fvec4) CompositeConstruct 10 10 10 10
54: 8(fvec4) FAdd 52 53 53: 7(fvec4) FAdd 51 52
Store 16(color) 54 Store 15(color) 53
Branch 51 Branch 50
51: Label 50: Label
57: 8(fvec4) Load 16(color) 56: 7(fvec4) Load 15(color)
Store 56(gl_FragColor) 57 Store 55(gl_FragColor) 56
58: 7(float) Load 33(radius) 57: 6(float) Load 32(radius)
60: 43(bool) FOrdGreaterThan 58 59 59: 42(bool) FOrdGreaterThan 57 58
SelectionMerge 62 None SelectionMerge 61 None
BranchConditional 60 61 62 BranchConditional 59 60 61
61: Label 60: Label
63: 8(fvec4) Load 16(color) 62: 7(fvec4) Load 15(color)
64: 8(fvec4) CompositeConstruct 11 11 11 11 63: 7(fvec4) CompositeConstruct 10 10 10 10
65: 8(fvec4) FAdd 63 64 64: 7(fvec4) FAdd 62 63
Store 16(color) 65 Store 15(color) 64
Branch 62 Branch 61
62: Label 61: Label
Branch 46 Branch 45
46: Label 45: Label
Kill Kill
66: Label 65: Label
67: 7(float) Load 33(radius) 66: 6(float) Load 32(radius)
69: 43(bool) FOrdGreaterThanEqual 67 68 68: 42(bool) FOrdGreaterThanEqual 66 67
SelectionMerge 71 None SelectionMerge 70 None
BranchConditional 69 70 71 BranchConditional 68 69 70
70: Label 69: Label
72: 7(float) Load 33(radius) 71: 6(float) Load 32(radius)
74: 7(float) ExtInst 1(GLSL.std.450) 26(Pow) 72 73 73: 6(float) ExtInst 1(GLSL.std.450) 26(Pow) 71 72
75: 7(float) FDiv 74 25 74: 6(float) FDiv 73 24
76: 7(float) ExtInst 1(GLSL.std.450) 4(FAbs) 75 75: 6(float) ExtInst 1(GLSL.std.450) 4(FAbs) 74
77: 8(fvec4) Load 16(color) 76: 7(fvec4) Load 15(color)
78: 8(fvec4) CompositeConstruct 76 76 76 76 77: 7(fvec4) CompositeConstruct 75 75 75 75
79: 8(fvec4) FSub 77 78 78: 7(fvec4) FSub 76 77
Store 16(color) 79 Store 15(color) 78
Branch 71 Branch 70
71: Label 70: Label
80: 8(fvec4) Load 16(color) 79: 7(fvec4) Load 15(color)
Store 56(gl_FragColor) 80 Store 55(gl_FragColor) 79
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 37 // Id's are bound by 36
Source GLSL 110 Source GLSL 110
Capability Shader Capability Shader
@ -14,53 +14,51 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 10 "white" Name 9 "white"
Name 13 "black" Name 12 "black"
Name 16 "color" Name 15 "color"
Name 19 "x" Name 18 "x"
Name 22 "tex_coord" Name 21 "tex_coord"
Name 28 "y" Name 27 "y"
Name 35 "gl_FragColor" Name 34 "gl_FragColor"
Decorate 22(tex_coord) Smooth Decorate 21(tex_coord) Smooth
Decorate 35(gl_FragColor) BuiltIn FragColor Decorate 34(gl_FragColor) BuiltIn FragColor
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 4 7: TypeVector 6(float) 4
9: TypePointer Function 8(fvec4) 8: TypePointer Function 7(fvec4)
11: 7(float) Constant 1065353216 10: 6(float) Constant 1065353216
12: 8(fvec4) ConstantComposite 11 11 11 11 11: 7(fvec4) ConstantComposite 10 10 10 10
14: 7(float) Constant 1045220557 13: 6(float) Constant 1045220557
15: 8(fvec4) ConstantComposite 14 14 14 14 14: 7(fvec4) ConstantComposite 13 13 13 13
18: TypePointer Function 7(float) 17: TypePointer Function 6(float)
20: TypeVector 7(float) 2 19: TypeVector 6(float) 2
21: TypePointer Input 20(fvec2) 20: TypePointer Input 19(fvec2)
22(tex_coord): 21(ptr) Variable Input 21(tex_coord): 20(ptr) Variable Input
25: 7(float) Constant 1073741824 24: 6(float) Constant 1073741824
34: TypePointer Output 8(fvec4) 33: TypePointer Output 7(fvec4)
35(gl_FragColor): 34(ptr) Variable Output 34(gl_FragColor): 33(ptr) Variable Output
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
10(white): 9(ptr) Variable Function 9(white): 8(ptr) Variable Function
13(black): 9(ptr) Variable Function 12(black): 8(ptr) Variable Function
16(color): 9(ptr) Variable Function 15(color): 8(ptr) Variable Function
19(x): 18(ptr) Variable Function 18(x): 17(ptr) Variable Function
28(y): 18(ptr) Variable Function 27(y): 17(ptr) Variable Function
Store 10(white) 12 Store 9(white) 11
Store 13(black) 15 Store 12(black) 14
17: 8(fvec4) Load 10(white) 16: 7(fvec4) Load 9(white)
Store 16(color) 17 Store 15(color) 16
23: 20(fvec2) Load 22(tex_coord) 22: 19(fvec2) Load 21(tex_coord)
24: 7(float) CompositeExtract 23 0 23: 6(float) CompositeExtract 22 0
26: 7(float) FMul 24 25 25: 6(float) FMul 23 24
27: 7(float) FSub 26 11 26: 6(float) FSub 25 10
Store 19(x) 27 Store 18(x) 26
29: 20(fvec2) Load 22(tex_coord) 28: 19(fvec2) Load 21(tex_coord)
30: 7(float) CompositeExtract 29 1 29: 6(float) CompositeExtract 28 1
31: 7(float) FMul 30 25 30: 6(float) FMul 29 24
32: 7(float) FSub 31 11 31: 6(float) FSub 30 10
Store 28(y) 32 Store 27(y) 31
Kill Kill
6: Label
Return
FunctionEnd FunctionEnd

View File

@ -8,7 +8,7 @@ Linked compute stage:
TBD functionality: Is atomic_uint an opaque handle in the uniform storage class, or an addresses in the atomic storage class? TBD functionality: Is atomic_uint an opaque handle in the uniform storage class, or an addresses in the atomic storage class?
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 75 // Id's are bound by 74
Source ESSL 310 Source ESSL 310
Capability Shader Capability Shader
@ -16,113 +16,111 @@ TBD functionality: Is atomic_uint an opaque handle in the uniform storage class,
MemoryModel Logical GLSL450 MemoryModel Logical GLSL450
EntryPoint GLCompute 4 "main" EntryPoint GLCompute 4 "main"
Name 4 "main" Name 4 "main"
Name 11 "func(au1;" Name 10 "func(au1;"
Name 10 "c" Name 9 "c"
Name 13 "atoms(" Name 12 "atoms("
Name 22 "counter" Name 21 "counter"
Name 23 "param" Name 22 "param"
Name 26 "val" Name 25 "val"
Name 30 "countArr" Name 29 "countArr"
Name 39 "origi" Name 38 "origi"
Name 41 "atomi" Name 40 "atomi"
Name 45 "origu" Name 44 "origu"
Name 47 "atomu" Name 46 "atomu"
Name 49 "value" Name 48 "value"
Name 72 "arrX" Name 71 "arrX"
Name 73 "arrY" Name 72 "arrY"
Name 74 "arrZ" Name 73 "arrZ"
Decorate 22(counter) Binding 0 Decorate 21(counter) Binding 0
Decorate 30(countArr) Binding 0 Decorate 29(countArr) Binding 0
Decorate 72(arrX) NoStaticUse Decorate 71(arrX) NoStaticUse
Decorate 73(arrY) NoStaticUse Decorate 72(arrY) NoStaticUse
Decorate 74(arrZ) NoStaticUse Decorate 73(arrZ) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeInt 32 0 6: TypeInt 32 0
8: TypePointer Function 7(int) 7: TypePointer Function 6(int)
9: TypeFunction 7(int) 8(ptr) 8: TypeFunction 6(int) 7(ptr)
16: 7(int) Constant 1 15: 6(int) Constant 1
17: 7(int) Constant 0 16: 6(int) Constant 0
20: 7(int) Constant 256 19: 6(int) Constant 256
21: TypePointer UniformConstant 7(int) 20: TypePointer UniformConstant 6(int)
22(counter): 21(ptr) Variable UniformConstant 21(counter): 20(ptr) Variable UniformConstant
27: 7(int) Constant 4 26: 6(int) Constant 4
28: TypeArray 7(int) 27 27: TypeArray 6(int) 26
29: TypePointer UniformConstant 28 28: TypePointer UniformConstant 27
30(countArr): 29(ptr) Variable UniformConstant 29(countArr): 28(ptr) Variable UniformConstant
31: TypeInt 32 1 30: TypeInt 32 1
32: 31(int) Constant 2 31: 30(int) Constant 2
38: TypePointer Function 31(int) 37: TypePointer Function 30(int)
40: TypePointer WorkgroupLocal 31(int) 39: TypePointer WorkgroupLocal 30(int)
41(atomi): 40(ptr) Variable WorkgroupLocal 40(atomi): 39(ptr) Variable WorkgroupLocal
43: 31(int) Constant 3 42: 30(int) Constant 3
46: TypePointer WorkgroupLocal 7(int) 45: TypePointer WorkgroupLocal 6(int)
47(atomu): 46(ptr) Variable WorkgroupLocal 46(atomu): 45(ptr) Variable WorkgroupLocal
49(value): 21(ptr) Variable UniformConstant 48(value): 20(ptr) Variable UniformConstant
53: 7(int) Constant 7 52: 6(int) Constant 7
61: 31(int) Constant 7 60: 30(int) Constant 7
67: 7(int) Constant 10 66: 6(int) Constant 10
70: TypeArray 31(int) 16 69: TypeArray 30(int) 15
71: TypePointer PrivateGlobal 70 70: TypePointer PrivateGlobal 69
72(arrX): 71(ptr) Variable PrivateGlobal 71(arrX): 70(ptr) Variable PrivateGlobal
73(arrY): 71(ptr) Variable PrivateGlobal 72(arrY): 70(ptr) Variable PrivateGlobal
74(arrZ): 71(ptr) Variable PrivateGlobal 73(arrZ): 70(ptr) Variable PrivateGlobal
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
23(param): 8(ptr) Variable Function 22(param): 7(ptr) Variable Function
26(val): 8(ptr) Variable Function 25(val): 7(ptr) Variable Function
MemoryBarrier 16 20 MemoryBarrier 15 19
24: 7(int) Load 22(counter) 23: 6(int) Load 21(counter)
Store 23(param) 24 Store 22(param) 23
25: 7(int) FunctionCall 11(func(au1;) 23(param) 24: 6(int) FunctionCall 10(func(au1;) 22(param)
33: 21(ptr) AccessChain 30(countArr) 32 32: 20(ptr) AccessChain 29(countArr) 31
34: 7(int) Load 33 33: 6(int) Load 32
35: 7(int) AtomicLoad 34 16 17 34: 6(int) AtomicLoad 33 15 16
Store 26(val) 35 Store 25(val) 34
36: 7(int) Load 22(counter) 35: 6(int) Load 21(counter)
37: 7(int) AtomicIDecrement 36 16 17 36: 6(int) AtomicIDecrement 35 15 16
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd
11(func(au1;): 7(int) Function None 9 10(func(au1;): 6(int) Function None 8
10(c): 8(ptr) FunctionParameter 9(c): 7(ptr) FunctionParameter
12: Label 11: Label
15: 7(int) Load 10(c) 14: 6(int) Load 9(c)
18: 7(int) AtomicIIncrement 15 16 17 17: 6(int) AtomicIIncrement 14 15 16
ReturnValue 18 ReturnValue 17
FunctionEnd FunctionEnd
13(atoms(): 2 Function None 3 12(atoms(): 2 Function None 3
14: Label 13: Label
39(origi): 38(ptr) Variable Function 38(origi): 37(ptr) Variable Function
45(origu): 8(ptr) Variable Function 44(origu): 7(ptr) Variable Function
42: 31(int) Load 41(atomi) 41: 30(int) Load 40(atomi)
44: 31(int) AtomicIAdd 42 16 17 43 43: 30(int) AtomicIAdd 41 15 16 42
Store 39(origi) 44 Store 38(origi) 43
48: 7(int) Load 47(atomu) 47: 6(int) Load 46(atomu)
50: 7(int) Load 49(value) 49: 6(int) Load 48(value)
51: 7(int) AtomicAnd 48 16 17 50 50: 6(int) AtomicAnd 47 15 16 49
Store 45(origu) 51 Store 44(origu) 50
52: 7(int) Load 47(atomu) 51: 6(int) Load 46(atomu)
54: 7(int) AtomicOr 52 16 17 53 53: 6(int) AtomicOr 51 15 16 52
Store 45(origu) 54 Store 44(origu) 53
55: 7(int) Load 47(atomu) 54: 6(int) Load 46(atomu)
56: 7(int) AtomicXor 55 16 17 53 55: 6(int) AtomicXor 54 15 16 52
Store 45(origu) 56 Store 44(origu) 55
57: 7(int) Load 47(atomu) 56: 6(int) Load 46(atomu)
58: 7(int) Load 49(value) 57: 6(int) Load 48(value)
59: 7(int) AtomicSMin 57 16 17 58 58: 6(int) AtomicSMin 56 15 16 57
Store 45(origu) 59 Store 44(origu) 58
60: 31(int) Load 41(atomi) 59: 30(int) Load 40(atomi)
62: 31(int) AtomicSMax 60 16 17 61 61: 30(int) AtomicSMax 59 15 16 60
Store 39(origi) 62 Store 38(origi) 61
63: 31(int) Load 41(atomi) 62: 30(int) Load 40(atomi)
64: 31(int) Load 39(origi) 63: 30(int) Load 38(origi)
65: 31(int) AtomicExchange 63 16 17 64 64: 30(int) AtomicExchange 62 15 16 63
Store 39(origi) 65 Store 38(origi) 64
66: 7(int) Load 47(atomu) 65: 6(int) Load 46(atomu)
68: 7(int) Load 49(value) 67: 6(int) Load 48(value)
69: 7(int) AtomicCompareExchange 66 16 17 67 68 68: 6(int) AtomicCompareExchange 65 15 16 16 67 66
Store 45(origu) 69 Store 44(origu) 68
Return Return
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 37 // Id's are bound by 36
Source GLSL 110 Source GLSL 110
Capability Shader Capability Shader
@ -14,51 +14,49 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 10 "v" Name 9 "v"
Name 14 "tex" Name 13 "tex"
Name 18 "coord" Name 17 "coord"
Name 35 "gl_FragColor" Name 34 "gl_FragColor"
Decorate 18(coord) Smooth Decorate 17(coord) Smooth
Decorate 35(gl_FragColor) BuiltIn FragColor Decorate 34(gl_FragColor) BuiltIn FragColor
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 4 7: TypeVector 6(float) 4
9: TypePointer Function 8(fvec4) 8: TypePointer Function 7(fvec4)
11: TypeImage 7(float) 2D sampled format:Unknown 10: TypeImage 6(float) 2D sampled format:Unknown
12: TypeSampledImage 11 11: TypeSampledImage 10
13: TypePointer UniformConstant 12 12: TypePointer UniformConstant 11
14(tex): 13(ptr) Variable UniformConstant 13(tex): 12(ptr) Variable UniformConstant
16: TypeVector 7(float) 2 15: TypeVector 6(float) 2
17: TypePointer Input 16(fvec2) 16: TypePointer Input 15(fvec2)
18(coord): 17(ptr) Variable Input 17(coord): 16(ptr) Variable Input
22: 7(float) Constant 1036831949 21: 6(float) Constant 1036831949
23: 7(float) Constant 1045220557 22: 6(float) Constant 1045220557
24: 7(float) Constant 1050253722 23: 6(float) Constant 1050253722
25: 7(float) Constant 1053609165 24: 6(float) Constant 1053609165
26: 8(fvec4) ConstantComposite 22 23 24 25 25: 7(fvec4) ConstantComposite 21 22 23 24
27: TypeBool 26: TypeBool
28: TypeVector 27(bool) 4 27: TypeVector 26(bool) 4
34: TypePointer Output 8(fvec4) 33: TypePointer Output 7(fvec4)
35(gl_FragColor): 34(ptr) Variable Output 34(gl_FragColor): 33(ptr) Variable Output
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
10(v): 9(ptr) Variable Function 9(v): 8(ptr) Variable Function
15: 12 Load 14(tex) 14: 11 Load 13(tex)
19: 16(fvec2) Load 18(coord) 18: 15(fvec2) Load 17(coord)
20: 8(fvec4) ImageSampleImplicitLod 15 19 19: 7(fvec4) ImageSampleImplicitLod 14 18
Store 10(v) 20 Store 9(v) 19
21: 8(fvec4) Load 10(v) 20: 7(fvec4) Load 9(v)
29: 28(bvec4) FOrdEqual 21 26 28: 27(bvec4) FOrdEqual 20 25
30: 27(bool) All 29 29: 26(bool) All 28
SelectionMerge 32 None SelectionMerge 31 None
BranchConditional 30 31 32 BranchConditional 29 30 31
31: Label 30: Label
Kill Kill
32: Label 31: Label
36: 8(fvec4) Load 10(v) 35: 7(fvec4) Load 9(v)
Store 35(gl_FragColor) 36 Store 34(gl_FragColor) 35
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

File diff suppressed because it is too large Load Diff

View File

@ -7,7 +7,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 21 // Id's are bound by 20
Source GLSL 130 Source GLSL 130
Capability Shader Capability Shader
@ -16,30 +16,28 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 13 "gl_FragData" Name 12 "gl_FragData"
Name 17 "Color" Name 16 "Color"
Decorate 13(gl_FragData) BuiltIn FragColor Decorate 12(gl_FragData) BuiltIn FragColor
Decorate 17(Color) Smooth Decorate 16(Color) Smooth
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 4 7: TypeVector 6(float) 4
9: TypeInt 32 0 8: TypeInt 32 0
10: 9(int) Constant 32 9: 8(int) Constant 32
11: TypeArray 8(fvec4) 10 10: TypeArray 7(fvec4) 9
12: TypePointer Output 11 11: TypePointer Output 10
13(gl_FragData): 12(ptr) Variable Output 12(gl_FragData): 11(ptr) Variable Output
14: TypeInt 32 1 13: TypeInt 32 1
15: 14(int) Constant 1 14: 13(int) Constant 1
16: TypePointer Input 8(fvec4) 15: TypePointer Input 7(fvec4)
17(Color): 16(ptr) Variable Input 16(Color): 15(ptr) Variable Input
19: TypePointer Output 8(fvec4) 18: TypePointer Output 7(fvec4)
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
18: 8(fvec4) Load 17(Color) 17: 7(fvec4) Load 16(Color)
20: 19(ptr) AccessChain 13(gl_FragData) 15 19: 18(ptr) AccessChain 12(gl_FragData) 14
Store 20 18 Store 19 17
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -7,7 +7,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 23 // Id's are bound by 22
Source GLSL 130 Source GLSL 130
Capability Shader Capability Shader
@ -16,33 +16,31 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 13 "gl_FragData" Name 12 "gl_FragData"
Name 16 "i" Name 15 "i"
Name 19 "Color" Name 18 "Color"
Decorate 13(gl_FragData) BuiltIn FragColor Decorate 12(gl_FragData) BuiltIn FragColor
Decorate 19(Color) Smooth Decorate 18(Color) Smooth
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 4 7: TypeVector 6(float) 4
9: TypeInt 32 0 8: TypeInt 32 0
10: 9(int) Constant 32 9: 8(int) Constant 32
11: TypeArray 8(fvec4) 10 10: TypeArray 7(fvec4) 9
12: TypePointer Output 11 11: TypePointer Output 10
13(gl_FragData): 12(ptr) Variable Output 12(gl_FragData): 11(ptr) Variable Output
14: TypeInt 32 1 13: TypeInt 32 1
15: TypePointer UniformConstant 14(int) 14: TypePointer UniformConstant 13(int)
16(i): 15(ptr) Variable UniformConstant 15(i): 14(ptr) Variable UniformConstant
18: TypePointer Input 8(fvec4) 17: TypePointer Input 7(fvec4)
19(Color): 18(ptr) Variable Input 18(Color): 17(ptr) Variable Input
21: TypePointer Output 8(fvec4) 20: TypePointer Output 7(fvec4)
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
17: 14(int) Load 16(i) 16: 13(int) Load 15(i)
20: 8(fvec4) Load 19(Color) 19: 7(fvec4) Load 18(Color)
22: 21(ptr) AccessChain 13(gl_FragData) 17 21: 20(ptr) AccessChain 12(gl_FragData) 16
Store 22 20 Store 21 19
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -8,7 +8,7 @@ Linked vertex stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 39 // Id's are bound by 38
Source GLSL 130 Source GLSL 130
Capability Shader Capability Shader
@ -16,60 +16,58 @@ Linked vertex stage:
MemoryModel Logical GLSL450 MemoryModel Logical GLSL450
EntryPoint Vertex 4 "main" EntryPoint Vertex 4 "main"
Name 4 "main" Name 4 "main"
Name 9 "i" Name 8 "i"
Name 24 "colorOut" Name 23 "colorOut"
Name 27 "color" Name 26 "color"
Name 33 "gl_Position" Name 32 "gl_Position"
Name 38 "gl_VertexID" Name 37 "gl_VertexID"
Decorate 24(colorOut) Smooth Decorate 23(colorOut) Smooth
Decorate 33(gl_Position) BuiltIn Position Decorate 32(gl_Position) BuiltIn Position
Decorate 38(gl_VertexID) BuiltIn VertexId Decorate 37(gl_VertexID) BuiltIn VertexId
Decorate 38(gl_VertexID) NoStaticUse Decorate 37(gl_VertexID) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeInt 32 1 6: TypeInt 32 1
8: TypePointer Function 7(int) 7: TypePointer Function 6(int)
10: 7(int) Constant 1 9: 6(int) Constant 1
15: 7(int) Constant 5 14: 6(int) Constant 5
16: TypeBool 15: TypeBool
18: TypeFloat 32 17: TypeFloat 32
19: TypeVector 18(float) 4 18: TypeVector 17(float) 4
20: TypeInt 32 0 19: TypeInt 32 0
21: 20(int) Constant 6 20: 19(int) Constant 6
22: TypeArray 19(fvec4) 21 21: TypeArray 18(fvec4) 20
23: TypePointer Output 22 22: TypePointer Output 21
24(colorOut): 23(ptr) Variable Output 23(colorOut): 22(ptr) Variable Output
26: TypePointer Input 19(fvec4) 25: TypePointer Input 18(fvec4)
27(color): 26(ptr) Variable Input 26(color): 25(ptr) Variable Input
29: TypePointer Output 19(fvec4) 28: TypePointer Output 18(fvec4)
33(gl_Position): 29(ptr) Variable Output 32(gl_Position): 28(ptr) Variable Output
34: 7(int) Constant 2 33: 6(int) Constant 2
37: TypePointer Input 7(int) 36: TypePointer Input 6(int)
38(gl_VertexID): 37(ptr) Variable Input 37(gl_VertexID): 36(ptr) Variable Input
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
9(i): 8(ptr) Variable Function 8(i): 7(ptr) Variable Function
Store 9(i) 10 Store 8(i) 9
Branch 11 Branch 10
10: Label
13: 6(int) Load 8(i)
16: 15(bool) SLessThan 13 14
LoopMerge 11 None
BranchConditional 16 12 11
12: Label
24: 6(int) Load 8(i)
27: 18(fvec4) Load 26(color)
29: 28(ptr) AccessChain 23(colorOut) 24
Store 29 27
30: 6(int) Load 8(i)
31: 6(int) IAdd 30 9
Store 8(i) 31
Branch 10
11: Label 11: Label
14: 7(int) Load 9(i) 34: 28(ptr) AccessChain 23(colorOut) 33
17: 16(bool) SLessThan 14 15 35: 18(fvec4) Load 34
LoopMerge 12 None Store 32(gl_Position) 35
BranchConditional 17 13 12
13: Label
25: 7(int) Load 9(i)
28: 19(fvec4) Load 27(color)
30: 29(ptr) AccessChain 24(colorOut) 25
Store 30 28
31: 7(int) Load 9(i)
32: 7(int) IAdd 31 10
Store 9(i) 32
Branch 11
12: Label
35: 29(ptr) AccessChain 24(colorOut) 34
36: 19(fvec4) Load 35
Store 33(gl_Position) 36
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -8,7 +8,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 19 // Id's are bound by 18
Source GLSL 130 Source GLSL 130
Capability Shader Capability Shader
@ -17,33 +17,31 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 9 "gl_FragDepth" Name 8 "gl_FragDepth"
Name 11 "Depth" Name 10 "Depth"
Name 15 "gl_FragColor" Name 14 "gl_FragColor"
Name 17 "Color" Name 16 "Color"
Decorate 9(gl_FragDepth) BuiltIn FragDepth Decorate 8(gl_FragDepth) BuiltIn FragDepth
Decorate 11(Depth) Smooth Decorate 10(Depth) Smooth
Decorate 15(gl_FragColor) BuiltIn FragColor Decorate 14(gl_FragColor) BuiltIn FragColor
Decorate 17(Color) Smooth Decorate 16(Color) Smooth
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypePointer Output 7(float) 7: TypePointer Output 6(float)
9(gl_FragDepth): 8(ptr) Variable Output 8(gl_FragDepth): 7(ptr) Variable Output
10: TypePointer Input 7(float) 9: TypePointer Input 6(float)
11(Depth): 10(ptr) Variable Input 10(Depth): 9(ptr) Variable Input
13: TypeVector 7(float) 4 12: TypeVector 6(float) 4
14: TypePointer Output 13(fvec4) 13: TypePointer Output 12(fvec4)
15(gl_FragColor): 14(ptr) Variable Output 14(gl_FragColor): 13(ptr) Variable Output
16: TypePointer Input 13(fvec4) 15: TypePointer Input 12(fvec4)
17(Color): 16(ptr) Variable Input 16(Color): 15(ptr) Variable Input
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
12: 7(float) Load 11(Depth) 11: 6(float) Load 10(Depth)
Store 9(gl_FragDepth) 12 Store 8(gl_FragDepth) 11
18: 13(fvec4) Load 17(Color) 17: 12(fvec4) Load 16(Color)
Store 15(gl_FragColor) 18 Store 14(gl_FragColor) 17
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 81 // Id's are bound by 80
Source GLSL 110 Source GLSL 110
Capability Shader Capability Shader
@ -14,117 +14,115 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 10 "white" Name 9 "white"
Name 13 "black" Name 12 "black"
Name 16 "color" Name 15 "color"
Name 19 "x" Name 18 "x"
Name 22 "tex_coord" Name 21 "tex_coord"
Name 28 "y" Name 27 "y"
Name 33 "radius" Name 32 "radius"
Name 56 "gl_FragColor" Name 55 "gl_FragColor"
Decorate 22(tex_coord) Smooth Decorate 21(tex_coord) Smooth
Decorate 56(gl_FragColor) BuiltIn FragColor Decorate 55(gl_FragColor) BuiltIn FragColor
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 4 7: TypeVector 6(float) 4
9: TypePointer Function 8(fvec4) 8: TypePointer Function 7(fvec4)
11: 7(float) Constant 1065353216 10: 6(float) Constant 1065353216
12: 8(fvec4) ConstantComposite 11 11 11 11 11: 7(fvec4) ConstantComposite 10 10 10 10
14: 7(float) Constant 1045220557 13: 6(float) Constant 1045220557
15: 8(fvec4) ConstantComposite 14 14 14 14 14: 7(fvec4) ConstantComposite 13 13 13 13
18: TypePointer Function 7(float) 17: TypePointer Function 6(float)
20: TypeVector 7(float) 2 19: TypeVector 6(float) 2
21: TypePointer Input 20(fvec2) 20: TypePointer Input 19(fvec2)
22(tex_coord): 21(ptr) Variable Input 21(tex_coord): 20(ptr) Variable Input
25: 7(float) Constant 1073741824 24: 6(float) Constant 1073741824
43: TypeBool 42: TypeBool
48: 7(float) Constant 1066192077 47: 6(float) Constant 1066192077
55: TypePointer Output 8(fvec4) 54: TypePointer Output 7(fvec4)
56(gl_FragColor): 55(ptr) Variable Output 55(gl_FragColor): 54(ptr) Variable Output
59: 7(float) Constant 1067030938 58: 6(float) Constant 1067030938
68: 7(float) Constant 1061158912 67: 6(float) Constant 1061158912
73: 7(float) Constant 1098907648 72: 6(float) Constant 1098907648
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
10(white): 9(ptr) Variable Function 9(white): 8(ptr) Variable Function
13(black): 9(ptr) Variable Function 12(black): 8(ptr) Variable Function
16(color): 9(ptr) Variable Function 15(color): 8(ptr) Variable Function
19(x): 18(ptr) Variable Function 18(x): 17(ptr) Variable Function
28(y): 18(ptr) Variable Function 27(y): 17(ptr) Variable Function
33(radius): 18(ptr) Variable Function 32(radius): 17(ptr) Variable Function
Store 10(white) 12 Store 9(white) 11
Store 13(black) 15 Store 12(black) 14
17: 8(fvec4) Load 10(white) 16: 7(fvec4) Load 9(white)
Store 16(color) 17 Store 15(color) 16
23: 20(fvec2) Load 22(tex_coord) 22: 19(fvec2) Load 21(tex_coord)
24: 7(float) CompositeExtract 23 0 23: 6(float) CompositeExtract 22 0
26: 7(float) FMul 24 25 25: 6(float) FMul 23 24
27: 7(float) FSub 26 11 26: 6(float) FSub 25 10
Store 19(x) 27 Store 18(x) 26
29: 20(fvec2) Load 22(tex_coord) 28: 19(fvec2) Load 21(tex_coord)
30: 7(float) CompositeExtract 29 1 29: 6(float) CompositeExtract 28 1
31: 7(float) FMul 30 25 30: 6(float) FMul 29 24
32: 7(float) FSub 31 11 31: 6(float) FSub 30 10
Store 28(y) 32 Store 27(y) 31
34: 7(float) Load 19(x) 33: 6(float) Load 18(x)
35: 7(float) Load 19(x) 34: 6(float) Load 18(x)
36: 7(float) FMul 34 35 35: 6(float) FMul 33 34
37: 7(float) Load 28(y) 36: 6(float) Load 27(y)
38: 7(float) Load 28(y) 37: 6(float) Load 27(y)
39: 7(float) FMul 37 38 38: 6(float) FMul 36 37
40: 7(float) FAdd 36 39 39: 6(float) FAdd 35 38
41: 7(float) ExtInst 1(GLSL.std.450) 31(Sqrt) 40 40: 6(float) ExtInst 1(GLSL.std.450) 31(Sqrt) 39
Store 33(radius) 41 Store 32(radius) 40
42: 7(float) Load 33(radius) 41: 6(float) Load 32(radius)
44: 43(bool) FOrdGreaterThan 42 11 43: 42(bool) FOrdGreaterThan 41 10
SelectionMerge 46 None SelectionMerge 45 None
BranchConditional 44 45 46 BranchConditional 43 44 45
45: Label 44: Label
47: 7(float) Load 33(radius) 46: 6(float) Load 32(radius)
49: 43(bool) FOrdGreaterThan 47 48 48: 42(bool) FOrdGreaterThan 46 47
SelectionMerge 51 None SelectionMerge 50 None
BranchConditional 49 50 51 BranchConditional 48 49 50
50: Label 49: Label
52: 8(fvec4) Load 16(color) 51: 7(fvec4) Load 15(color)
53: 8(fvec4) CompositeConstruct 11 11 11 11 52: 7(fvec4) CompositeConstruct 10 10 10 10
54: 8(fvec4) FAdd 52 53 53: 7(fvec4) FAdd 51 52
Store 16(color) 54 Store 15(color) 53
Branch 51 Branch 50
51: Label 50: Label
57: 8(fvec4) Load 16(color) 56: 7(fvec4) Load 15(color)
Store 56(gl_FragColor) 57 Store 55(gl_FragColor) 56
58: 7(float) Load 33(radius) 57: 6(float) Load 32(radius)
60: 43(bool) FOrdGreaterThan 58 59 59: 42(bool) FOrdGreaterThan 57 58
SelectionMerge 62 None SelectionMerge 61 None
BranchConditional 60 61 62 BranchConditional 59 60 61
61: Label 60: Label
63: 8(fvec4) Load 16(color) 62: 7(fvec4) Load 15(color)
64: 8(fvec4) CompositeConstruct 11 11 11 11 63: 7(fvec4) CompositeConstruct 10 10 10 10
65: 8(fvec4) FAdd 63 64 64: 7(fvec4) FAdd 62 63
Store 16(color) 65 Store 15(color) 64
Branch 62 Branch 61
62: Label 61: Label
Kill Kill
46: Label 45: Label
67: 7(float) Load 33(radius) 66: 6(float) Load 32(radius)
69: 43(bool) FOrdGreaterThanEqual 67 68 68: 42(bool) FOrdGreaterThanEqual 66 67
SelectionMerge 71 None SelectionMerge 70 None
BranchConditional 69 70 71 BranchConditional 68 69 70
70: Label 69: Label
72: 7(float) Load 33(radius) 71: 6(float) Load 32(radius)
74: 7(float) ExtInst 1(GLSL.std.450) 26(Pow) 72 73 73: 6(float) ExtInst 1(GLSL.std.450) 26(Pow) 71 72
75: 7(float) FDiv 74 25 74: 6(float) FDiv 73 24
76: 7(float) ExtInst 1(GLSL.std.450) 4(FAbs) 75 75: 6(float) ExtInst 1(GLSL.std.450) 4(FAbs) 74
77: 8(fvec4) Load 16(color) 76: 7(fvec4) Load 15(color)
78: 8(fvec4) CompositeConstruct 76 76 76 76 77: 7(fvec4) CompositeConstruct 75 75 75 75
79: 8(fvec4) FSub 77 78 78: 7(fvec4) FSub 76 77
Store 16(color) 79 Store 15(color) 78
Branch 71 Branch 70
71: Label 70: Label
80: 8(fvec4) Load 16(color) 79: 7(fvec4) Load 15(color)
Store 56(gl_FragColor) 80 Store 55(gl_FragColor) 79
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked vertex stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 30 // Id's are bound by 29
Source ESSL 300 Source ESSL 300
Capability Shader Capability Shader
@ -13,52 +13,50 @@ Linked vertex stage:
MemoryModel Logical GLSL450 MemoryModel Logical GLSL450
EntryPoint Vertex 4 "main" EntryPoint Vertex 4 "main"
Name 4 "main" Name 4 "main"
Name 9 "i" Name 8 "i"
Name 28 "gl_VertexID" Name 27 "gl_VertexID"
Name 29 "gl_InstanceID" Name 28 "gl_InstanceID"
Decorate 28(gl_VertexID) BuiltIn VertexId Decorate 27(gl_VertexID) BuiltIn VertexId
Decorate 28(gl_VertexID) NoStaticUse Decorate 27(gl_VertexID) NoStaticUse
Decorate 29(gl_InstanceID) BuiltIn InstanceId Decorate 28(gl_InstanceID) BuiltIn InstanceId
Decorate 29(gl_InstanceID) NoStaticUse Decorate 28(gl_InstanceID) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeInt 32 1 6: TypeInt 32 1
8: TypePointer Function 7(int) 7: TypePointer Function 6(int)
10: 7(int) Constant 0 9: 6(int) Constant 0
15: TypeBool 14: TypeBool
16: 15(bool) ConstantTrue 15: 14(bool) ConstantTrue
20: 7(int) Constant 10 19: 6(int) Constant 10
24: 7(int) Constant 1 23: 6(int) Constant 1
26: 15(bool) ConstantFalse 25: 14(bool) ConstantFalse
27: TypePointer Input 7(int) 26: TypePointer Input 6(int)
28(gl_VertexID): 27(ptr) Variable Input 27(gl_VertexID): 26(ptr) Variable Input
29(gl_InstanceID): 27(ptr) Variable Input 28(gl_InstanceID): 26(ptr) Variable Input
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
9(i): 8(ptr) Variable Function 8(i): 7(ptr) Variable Function
Store 9(i) 10 Store 8(i) 9
Branch 11 Branch 10
11: Label 10: Label
14: 15(bool) Phi 16 5 26 13 13: 14(bool) Phi 15 5 25 12
LoopMerge 12 None LoopMerge 11 None
Branch 17 Branch 16
17: Label 16: Label
SelectionMerge 13 None SelectionMerge 12 None
BranchConditional 14 13 18 BranchConditional 13 12 17
18: Label 17: Label
19: 7(int) Load 9(i) 18: 6(int) Load 8(i)
21: 15(bool) SLessThan 19 20 20: 14(bool) SLessThan 18 19
SelectionMerge 22 None SelectionMerge 21 None
BranchConditional 21 22 12 BranchConditional 20 21 11
22: Label 21: Label
Branch 13 Branch 12
13: Label
23: 7(int) Load 9(i)
25: 7(int) IAdd 23 24
Store 9(i) 25
Branch 11
12: Label 12: Label
Branch 6 22: 6(int) Load 8(i)
6: Label 24: 6(int) IAdd 22 23
Store 8(i) 24
Branch 10
11: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked vertex stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 52 // Id's are bound by 51
Source ESSL 300 Source ESSL 300
Capability Shader Capability Shader
@ -13,96 +13,94 @@ Linked vertex stage:
MemoryModel Logical GLSL450 MemoryModel Logical GLSL450
EntryPoint Vertex 4 "main" EntryPoint Vertex 4 "main"
Name 4 "main" Name 4 "main"
Name 9 "i" Name 8 "i"
Name 25 "A" Name 24 "A"
Name 31 "B" Name 30 "B"
Name 34 "C" Name 33 "C"
Name 40 "D" Name 39 "D"
Name 43 "E" Name 42 "E"
Name 45 "F" Name 44 "F"
Name 47 "G" Name 46 "G"
Name 50 "gl_VertexID" Name 49 "gl_VertexID"
Name 51 "gl_InstanceID" Name 50 "gl_InstanceID"
Decorate 50(gl_VertexID) BuiltIn VertexId Decorate 49(gl_VertexID) BuiltIn VertexId
Decorate 50(gl_VertexID) NoStaticUse Decorate 49(gl_VertexID) NoStaticUse
Decorate 51(gl_InstanceID) BuiltIn InstanceId Decorate 50(gl_InstanceID) BuiltIn InstanceId
Decorate 51(gl_InstanceID) NoStaticUse Decorate 50(gl_InstanceID) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeInt 32 1 6: TypeInt 32 1
8: TypePointer Function 7(int) 7: TypePointer Function 6(int)
10: 7(int) Constant 0 9: 6(int) Constant 0
15: TypeBool 14: TypeBool
16: 15(bool) ConstantTrue 15: 14(bool) ConstantTrue
20: 7(int) Constant 1 19: 6(int) Constant 1
22: 7(int) Constant 19 21: 6(int) Constant 19
27: 7(int) Constant 2 26: 6(int) Constant 2
32: 15(bool) ConstantFalse 31: 14(bool) ConstantFalse
36: 7(int) Constant 5 35: 6(int) Constant 5
41: 7(int) Constant 3 40: 6(int) Constant 3
44: 7(int) Constant 42 43: 6(int) Constant 42
46: 7(int) Constant 99 45: 6(int) Constant 99
48: 7(int) Constant 12 47: 6(int) Constant 12
49: TypePointer Input 7(int) 48: TypePointer Input 6(int)
50(gl_VertexID): 49(ptr) Variable Input 49(gl_VertexID): 48(ptr) Variable Input
51(gl_InstanceID): 49(ptr) Variable Input 50(gl_InstanceID): 48(ptr) Variable Input
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
9(i): 8(ptr) Variable Function 8(i): 7(ptr) Variable Function
25(A): 8(ptr) Variable Function 24(A): 7(ptr) Variable Function
31(B): 8(ptr) Variable Function 30(B): 7(ptr) Variable Function
34(C): 8(ptr) Variable Function 33(C): 7(ptr) Variable Function
40(D): 8(ptr) Variable Function 39(D): 7(ptr) Variable Function
43(E): 8(ptr) Variable Function 42(E): 7(ptr) Variable Function
45(F): 8(ptr) Variable Function 44(F): 7(ptr) Variable Function
47(G): 8(ptr) Variable Function 46(G): 7(ptr) Variable Function
Store 9(i) 10 Store 8(i) 9
Branch 11 Branch 10
11: Label 10: Label
14: 15(bool) Phi 16 5 32 29 32 39 13: 14(bool) Phi 15 5 31 28 31 38
LoopMerge 12 None LoopMerge 11 None
Branch 17 Branch 16
17: Label 16: Label
SelectionMerge 13 None SelectionMerge 12 None
BranchConditional 14 13 18 BranchConditional 13 12 17
18: Label 17: Label
19: 7(int) Load 9(i) 18: 6(int) Load 8(i)
21: 7(int) IAdd 19 20 20: 6(int) IAdd 18 19
Store 9(i) 21 Store 8(i) 20
23: 15(bool) SLessThan 21 22 22: 14(bool) SLessThan 20 21
SelectionMerge 24 None SelectionMerge 23 None
BranchConditional 23 24 12 BranchConditional 22 23 11
24: Label 23: Label
Branch 13
13: Label
Store 25(A) 10
26: 7(int) Load 9(i)
28: 15(bool) IEqual 26 27
SelectionMerge 30 None
BranchConditional 28 29 30
29: Label
Store 31(B) 20
Branch 11
33: Label
Store 34(C) 27
Branch 30
30: Label
35: 7(int) Load 9(i)
37: 15(bool) IEqual 35 36
SelectionMerge 39 None
BranchConditional 37 38 39
38: Label
Store 40(D) 41
Branch 12 Branch 12
42: Label
Store 43(E) 44
Branch 39
39: Label
Store 45(F) 46
Branch 11
12: Label 12: Label
Store 47(G) 48 Store 24(A) 9
Branch 6 25: 6(int) Load 8(i)
6: Label 27: 14(bool) IEqual 25 26
SelectionMerge 29 None
BranchConditional 27 28 29
28: Label
Store 30(B) 19
Branch 10
32: Label
Store 33(C) 26
Branch 29
29: Label
34: 6(int) Load 8(i)
36: 14(bool) IEqual 34 35
SelectionMerge 38 None
BranchConditional 36 37 38
37: Label
Store 39(D) 40
Branch 11
41: Label
Store 42(E) 43
Branch 38
38: Label
Store 44(F) 45
Branch 10
11: Label
Store 46(G) 47
Return Return
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 38 // Id's are bound by 37
Source GLSL 110 Source GLSL 110
Capability Shader Capability Shader
@ -14,61 +14,59 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 10 "color" Name 9 "color"
Name 12 "BaseColor" Name 11 "BaseColor"
Name 25 "d" Name 24 "d"
Name 30 "bigColor" Name 29 "bigColor"
Name 36 "gl_FragColor" Name 35 "gl_FragColor"
Decorate 12(BaseColor) Smooth Decorate 11(BaseColor) Smooth
Decorate 36(gl_FragColor) BuiltIn FragColor Decorate 35(gl_FragColor) BuiltIn FragColor
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 4 7: TypeVector 6(float) 4
9: TypePointer Function 8(fvec4) 8: TypePointer Function 7(fvec4)
11: TypePointer Input 8(fvec4) 10: TypePointer Input 7(fvec4)
12(BaseColor): 11(ptr) Variable Input 11(BaseColor): 10(ptr) Variable Input
18: TypeBool 17: TypeBool
19: 18(bool) ConstantTrue 18: 17(bool) ConstantTrue
24: TypePointer UniformConstant 7(float) 23: TypePointer UniformConstant 6(float)
25(d): 24(ptr) Variable UniformConstant 24(d): 23(ptr) Variable UniformConstant
29: TypePointer UniformConstant 8(fvec4) 28: TypePointer UniformConstant 7(fvec4)
30(bigColor): 29(ptr) Variable UniformConstant 29(bigColor): 28(ptr) Variable UniformConstant
34: 18(bool) ConstantFalse 33: 17(bool) ConstantFalse
35: TypePointer Output 8(fvec4) 34: TypePointer Output 7(fvec4)
36(gl_FragColor): 35(ptr) Variable Output 35(gl_FragColor): 34(ptr) Variable Output
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
10(color): 9(ptr) Variable Function 9(color): 8(ptr) Variable Function
13: 8(fvec4) Load 12(BaseColor) 12: 7(fvec4) Load 11(BaseColor)
Store 10(color) 13 Store 9(color) 12
Branch 14 Branch 13
14: Label 13: Label
17: 18(bool) Phi 19 5 34 16 16: 17(bool) Phi 18 5 33 15
LoopMerge 15 None LoopMerge 14 None
Branch 20 Branch 19
20: Label 19: Label
SelectionMerge 16 None SelectionMerge 15 None
BranchConditional 17 16 21 BranchConditional 16 15 20
21: Label 20: Label
22: 8(fvec4) Load 10(color) 21: 7(fvec4) Load 9(color)
23: 7(float) CompositeExtract 22 0 22: 6(float) CompositeExtract 21 0
26: 7(float) Load 25(d) 25: 6(float) Load 24(d)
27: 18(bool) FOrdLessThan 23 26 26: 17(bool) FOrdLessThan 22 25
SelectionMerge 28 None SelectionMerge 27 None
BranchConditional 27 28 15 BranchConditional 26 27 14
28: Label 27: Label
Branch 16 Branch 15
16: Label
31: 8(fvec4) Load 30(bigColor)
32: 8(fvec4) Load 10(color)
33: 8(fvec4) FAdd 32 31
Store 10(color) 33
Branch 14
15: Label 15: Label
37: 8(fvec4) Load 10(color) 30: 7(fvec4) Load 29(bigColor)
Store 36(gl_FragColor) 37 31: 7(fvec4) Load 9(color)
Branch 6 32: 7(fvec4) FAdd 31 30
6: Label Store 9(color) 32
Branch 13
14: Label
36: 7(fvec4) Load 9(color)
Store 35(gl_FragColor) 36
Return Return
FunctionEnd FunctionEnd

View File

@ -7,7 +7,7 @@ Linked compute stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 63 // Id's are bound by 62
Source GLSL 430 Source GLSL 430
Capability Shader Capability Shader
@ -15,95 +15,93 @@ Linked compute stage:
MemoryModel Logical GLSL450 MemoryModel Logical GLSL450
EntryPoint GLCompute 4 "main" EntryPoint GLCompute 4 "main"
Name 4 "main" Name 4 "main"
Name 9 "bufName" Name 8 "bufName"
MemberName 9(bufName) 0 "f" MemberName 8(bufName) 0 "f"
MemberName 9(bufName) 1 "d" MemberName 8(bufName) 1 "d"
Name 11 "bufInst" Name 10 "bufInst"
Name 23 "storePos" Name 22 "storePos"
Name 27 "gl_GlobalInvocationID" Name 26 "gl_GlobalInvocationID"
Name 33 "localCoef" Name 32 "localCoef"
Name 34 "gl_LocalInvocationID" Name 33 "gl_LocalInvocationID"
Name 50 "aa" Name 49 "aa"
Name 55 "globalCoef" Name 54 "globalCoef"
Name 59 "roll" Name 58 "roll"
Name 62 "destTex" Name 61 "destTex"
Decorate 9(bufName) GLSLShared Decorate 8(bufName) GLSLShared
Decorate 9(bufName) BufferBlock Decorate 8(bufName) BufferBlock
Decorate 27(gl_GlobalInvocationID) BuiltIn GlobalInvocationId Decorate 26(gl_GlobalInvocationID) BuiltIn GlobalInvocationId
Decorate 34(gl_LocalInvocationID) BuiltIn LocalInvocationId Decorate 33(gl_LocalInvocationID) BuiltIn LocalInvocationId
Decorate 14 NoStaticUse Decorate 13 NoStaticUse
Decorate 57 NoStaticUse Decorate 56 NoStaticUse
Decorate 14 NoStaticUse Decorate 13 NoStaticUse
Decorate 14 NoStaticUse Decorate 13 NoStaticUse
Decorate 59(roll) NoStaticUse Decorate 58(roll) NoStaticUse
Decorate 62(destTex) NoStaticUse Decorate 61(destTex) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeFloat 64 7: TypeFloat 64
9(bufName): TypeStruct 7(float) 8(float) 8(bufName): TypeStruct 6(float) 7(float)
10: TypePointer Uniform 9(bufName) 9: TypePointer Uniform 8(bufName)
11(bufInst): 10(ptr) Variable Uniform 10(bufInst): 9(ptr) Variable Uniform
12: TypeInt 32 1 11: TypeInt 32 1
13: 12(int) Constant 1 12: 11(int) Constant 1
14: 8(float) Constant 1413754136 1074340347 13: 7(float) Constant 1413754136 1074340347
15: TypePointer Uniform 8(float) 14: TypePointer Uniform 7(float)
17: 12(int) Constant 0 16: 11(int) Constant 0
18: 7(float) Constant 1095307129 17: 6(float) Constant 1095307129
19: TypePointer Uniform 7(float) 18: TypePointer Uniform 6(float)
21: TypeVector 12(int) 2 20: TypeVector 11(int) 2
22: TypePointer Function 21(ivec2) 21: TypePointer Function 20(ivec2)
24: TypeInt 32 0 23: TypeInt 32 0
25: TypeVector 24(int) 3 24: TypeVector 23(int) 3
26: TypePointer Input 25(ivec3) 25: TypePointer Input 24(ivec3)
27(gl_GlobalInvocationID): 26(ptr) Variable Input 26(gl_GlobalInvocationID): 25(ptr) Variable Input
28: TypeVector 24(int) 2 27: TypeVector 23(int) 2
32: TypePointer Function 8(float) 31: TypePointer Function 7(float)
34(gl_LocalInvocationID): 26(ptr) Variable Input 33(gl_LocalInvocationID): 25(ptr) Variable Input
38: 12(int) Constant 8 37: 11(int) Constant 8
41: TypeVector 7(float) 2 40: TypeVector 6(float) 2
43: 7(float) Constant 1090519040 42: 6(float) Constant 1090519040
48: TypeVector 8(float) 4 47: TypeVector 7(float) 4
49: TypePointer Function 48(fvec4) 48: TypePointer Function 47(fvec4)
51: 8(float) Constant 2576980378 1071225241 50: 7(float) Constant 2576980378 1071225241
52: 8(float) Constant 2576980378 1070176665 51: 7(float) Constant 2576980378 1070176665
53: 8(float) Constant 858993459 1070805811 52: 7(float) Constant 858993459 1070805811
54: 48(fvec4) ConstantComposite 51 52 53 51 53: 47(fvec4) ConstantComposite 50 51 52 50
56: 8(float) Constant 0 1072693248 55: 7(float) Constant 0 1072693248
57: 8(float) Constant 3229815407 1074340298 56: 7(float) Constant 3229815407 1074340298
58: TypePointer UniformConstant 8(float) 57: TypePointer UniformConstant 7(float)
59(roll): 58(ptr) Variable UniformConstant 58(roll): 57(ptr) Variable UniformConstant
60: TypeImage 7(float) 2D nonsampled format:Unknown 59: TypeImage 6(float) 2D nonsampled format:Unknown
61: TypePointer UniformConstant 60 60: TypePointer UniformConstant 59
62(destTex): 61(ptr) Variable UniformConstant 61(destTex): 60(ptr) Variable UniformConstant
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
23(storePos): 22(ptr) Variable Function 22(storePos): 21(ptr) Variable Function
33(localCoef): 32(ptr) Variable Function 32(localCoef): 31(ptr) Variable Function
50(aa): 49(ptr) Variable Function 49(aa): 48(ptr) Variable Function
55(globalCoef): 32(ptr) Variable Function 54(globalCoef): 31(ptr) Variable Function
16: 15(ptr) AccessChain 11(bufInst) 13 15: 14(ptr) AccessChain 10(bufInst) 12
Store 16 14 Store 15 13
20: 19(ptr) AccessChain 11(bufInst) 17 19: 18(ptr) AccessChain 10(bufInst) 16
Store 20 18 Store 19 17
29: 25(ivec3) Load 27(gl_GlobalInvocationID) 28: 24(ivec3) Load 26(gl_GlobalInvocationID)
30: 28(ivec2) VectorShuffle 29 29 0 1 29: 27(ivec2) VectorShuffle 28 28 0 1
31: 21(ivec2) Bitcast 30 30: 20(ivec2) Bitcast 29
Store 23(storePos) 31 Store 22(storePos) 30
35: 25(ivec3) Load 34(gl_LocalInvocationID) 34: 24(ivec3) Load 33(gl_LocalInvocationID)
36: 28(ivec2) VectorShuffle 35 35 0 1 35: 27(ivec2) VectorShuffle 34 34 0 1
37: 21(ivec2) Bitcast 36 36: 20(ivec2) Bitcast 35
39: 21(ivec2) CompositeConstruct 38 38 38: 20(ivec2) CompositeConstruct 37 37
40: 21(ivec2) ISub 37 39 39: 20(ivec2) ISub 36 38
42: 41(fvec2) ConvertSToF 40 41: 40(fvec2) ConvertSToF 39
44: 41(fvec2) CompositeConstruct 43 43 43: 40(fvec2) CompositeConstruct 42 42
45: 41(fvec2) FDiv 42 44 44: 40(fvec2) FDiv 41 43
46: 7(float) ExtInst 1(GLSL.std.450) 65(Length) 45 45: 6(float) ExtInst 1(GLSL.std.450) 65(Length) 44
47: 8(float) FConvert 46 46: 7(float) FConvert 45
Store 33(localCoef) 47 Store 32(localCoef) 46
Store 50(aa) 54 Store 49(aa) 53
Store 55(globalCoef) 56 Store 54(globalCoef) 55
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 112 // Id's are bound by 111
Source GLSL 110 Source GLSL 110
Capability Shader Capability Shader
@ -14,167 +14,165 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 10 "color" Name 9 "color"
Name 12 "BaseColor" Name 11 "BaseColor"
Name 14 "color2" Name 13 "color2"
Name 16 "otherColor" Name 15 "otherColor"
Name 19 "c" Name 18 "c"
Name 22 "d" Name 21 "d"
Name 28 "bigColor" Name 27 "bigColor"
Name 33 "smallColor" Name 32 "smallColor"
Name 39 "minimum" Name 38 "minimum"
Name 53 "threshhold" Name 52 "threshhold"
Name 64 "threshhold2" Name 63 "threshhold2"
Name 78 "b" Name 77 "b"
Name 107 "gl_FragColor" Name 106 "gl_FragColor"
Name 111 "threshhold3" Name 110 "threshhold3"
Decorate 12(BaseColor) Smooth Decorate 11(BaseColor) Smooth
Decorate 19(c) Smooth Decorate 18(c) Smooth
Decorate 107(gl_FragColor) BuiltIn FragColor Decorate 106(gl_FragColor) BuiltIn FragColor
Decorate 111(threshhold3) NoStaticUse Decorate 110(threshhold3) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 4 7: TypeVector 6(float) 4
9: TypePointer Function 8(fvec4) 8: TypePointer Function 7(fvec4)
11: TypePointer Input 8(fvec4) 10: TypePointer Input 7(fvec4)
12(BaseColor): 11(ptr) Variable Input 11(BaseColor): 10(ptr) Variable Input
15: TypePointer UniformConstant 8(fvec4) 14: TypePointer UniformConstant 7(fvec4)
16(otherColor): 15(ptr) Variable UniformConstant 15(otherColor): 14(ptr) Variable UniformConstant
18: TypePointer Input 7(float) 17: TypePointer Input 6(float)
19(c): 18(ptr) Variable Input 18(c): 17(ptr) Variable Input
21: TypePointer UniformConstant 7(float) 20: TypePointer UniformConstant 6(float)
22(d): 21(ptr) Variable UniformConstant 21(d): 20(ptr) Variable UniformConstant
24: TypeBool 23: TypeBool
28(bigColor): 15(ptr) Variable UniformConstant 27(bigColor): 14(ptr) Variable UniformConstant
33(smallColor): 15(ptr) Variable UniformConstant 32(smallColor): 14(ptr) Variable UniformConstant
39(minimum): 21(ptr) Variable UniformConstant 38(minimum): 20(ptr) Variable UniformConstant
47: 7(float) Constant 1065353216 46: 6(float) Constant 1065353216
53(threshhold): 21(ptr) Variable UniformConstant 52(threshhold): 20(ptr) Variable UniformConstant
64(threshhold2): 21(ptr) Variable UniformConstant 63(threshhold2): 20(ptr) Variable UniformConstant
77: TypePointer UniformConstant 24(bool) 76: TypePointer UniformConstant 23(bool)
78(b): 77(ptr) Variable UniformConstant 77(b): 76(ptr) Variable UniformConstant
106: TypePointer Output 8(fvec4) 105: TypePointer Output 7(fvec4)
107(gl_FragColor): 106(ptr) Variable Output 106(gl_FragColor): 105(ptr) Variable Output
111(threshhold3): 21(ptr) Variable UniformConstant 110(threshhold3): 20(ptr) Variable UniformConstant
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
10(color): 9(ptr) Variable Function 9(color): 8(ptr) Variable Function
14(color2): 9(ptr) Variable Function 13(color2): 8(ptr) Variable Function
13: 8(fvec4) Load 12(BaseColor) 12: 7(fvec4) Load 11(BaseColor)
Store 10(color) 13 Store 9(color) 12
17: 8(fvec4) Load 16(otherColor) 16: 7(fvec4) Load 15(otherColor)
Store 14(color2) 17 Store 13(color2) 16
20: 7(float) Load 19(c) 19: 6(float) Load 18(c)
23: 7(float) Load 22(d) 22: 6(float) Load 21(d)
25: 24(bool) FOrdGreaterThan 20 23 24: 23(bool) FOrdGreaterThan 19 22
SelectionMerge 27 None SelectionMerge 26 None
BranchConditional 25 26 32 BranchConditional 24 25 31
26: Label 25: Label
29: 8(fvec4) Load 28(bigColor) 28: 7(fvec4) Load 27(bigColor)
30: 8(fvec4) Load 10(color) 29: 7(fvec4) Load 9(color)
31: 8(fvec4) FAdd 30 29 30: 7(fvec4) FAdd 29 28
Store 10(color) 31 Store 9(color) 30
Branch 27 Branch 26
32: Label 31: Label
34: 8(fvec4) Load 33(smallColor) 33: 7(fvec4) Load 32(smallColor)
35: 8(fvec4) Load 10(color) 34: 7(fvec4) Load 9(color)
36: 8(fvec4) FAdd 35 34 35: 7(fvec4) FAdd 34 33
Store 10(color) 36 Store 9(color) 35
Branch 27 Branch 26
27: Label 26: Label
37: 8(fvec4) Load 10(color) 36: 7(fvec4) Load 9(color)
38: 7(float) CompositeExtract 37 2 37: 6(float) CompositeExtract 36 2
40: 7(float) Load 39(minimum) 39: 6(float) Load 38(minimum)
41: 24(bool) FOrdLessThan 38 40 40: 23(bool) FOrdLessThan 37 39
SelectionMerge 43 None SelectionMerge 42 None
BranchConditional 41 42 43 BranchConditional 40 41 42
42: Label 41: Label
Branch 6 Return
43: Label 42: Label
45: 8(fvec4) Load 10(color) 44: 7(fvec4) Load 9(color)
46: 7(float) CompositeExtract 45 2 45: 6(float) CompositeExtract 44 2
48: 7(float) FAdd 46 47 47: 6(float) FAdd 45 46
49: 8(fvec4) Load 10(color) 48: 7(fvec4) Load 9(color)
50: 8(fvec4) CompositeInsert 48 49 2 49: 7(fvec4) CompositeInsert 47 48 2
Store 10(color) 50 Store 9(color) 49
51: 8(fvec4) Load 10(color) 50: 7(fvec4) Load 9(color)
52: 7(float) CompositeExtract 51 2 51: 6(float) CompositeExtract 50 2
54: 7(float) Load 53(threshhold) 53: 6(float) Load 52(threshhold)
55: 24(bool) FOrdGreaterThan 52 54 54: 23(bool) FOrdGreaterThan 51 53
SelectionMerge 57 None SelectionMerge 56 None
BranchConditional 55 56 57 BranchConditional 54 55 56
56: Label 55: Label
Kill Kill
57: Label 56: Label
59: 8(fvec4) Load 10(color) 58: 7(fvec4) Load 9(color)
60: 8(fvec4) CompositeConstruct 47 47 47 47 59: 7(fvec4) CompositeConstruct 46 46 46 46
61: 8(fvec4) FAdd 59 60 60: 7(fvec4) FAdd 58 59
Store 10(color) 61 Store 9(color) 60
62: 8(fvec4) Load 10(color) 61: 7(fvec4) Load 9(color)
63: 7(float) CompositeExtract 62 3 62: 6(float) CompositeExtract 61 3
65: 7(float) Load 64(threshhold2) 64: 6(float) Load 63(threshhold2)
66: 24(bool) FOrdGreaterThan 63 65 65: 23(bool) FOrdGreaterThan 62 64
SelectionMerge 68 None SelectionMerge 67 None
BranchConditional 66 67 99 BranchConditional 65 66 98
67: Label 66: Label
69: 8(fvec4) Load 10(color) 68: 7(fvec4) Load 9(color)
70: 7(float) CompositeExtract 69 2 69: 6(float) CompositeExtract 68 2
71: 7(float) Load 64(threshhold2) 70: 6(float) Load 63(threshhold2)
72: 24(bool) FOrdGreaterThan 70 71 71: 23(bool) FOrdGreaterThan 69 70
SelectionMerge 74 None SelectionMerge 73 None
BranchConditional 72 73 76 BranchConditional 71 72 75
73: Label 72: Label
Branch 6 Return
76: Label 75: Label
79: 24(bool) Load 78(b) 78: 23(bool) Load 77(b)
SelectionMerge 81 None SelectionMerge 80 None
BranchConditional 79 80 87 BranchConditional 78 79 86
80: Label 79: Label
82: 8(fvec4) Load 10(color) 81: 7(fvec4) Load 9(color)
83: 7(float) CompositeExtract 82 2 82: 6(float) CompositeExtract 81 2
84: 7(float) FAdd 83 47 83: 6(float) FAdd 82 46
85: 8(fvec4) Load 10(color) 84: 7(fvec4) Load 9(color)
86: 8(fvec4) CompositeInsert 84 85 2 85: 7(fvec4) CompositeInsert 83 84 2
Store 10(color) 86 Store 9(color) 85
Branch 81 Branch 80
87: Label 86: Label
88: 8(fvec4) Load 10(color) 87: 7(fvec4) Load 9(color)
89: 7(float) CompositeExtract 88 0 88: 6(float) CompositeExtract 87 0
90: 7(float) Load 39(minimum) 89: 6(float) Load 38(minimum)
91: 24(bool) FOrdLessThan 89 90 90: 23(bool) FOrdLessThan 88 89
SelectionMerge 93 None SelectionMerge 92 None
BranchConditional 91 92 95 BranchConditional 90 91 94
92: Label 91: Label
Kill Kill
95: Label 94: Label
96: 8(fvec4) Load 10(color) 95: 7(fvec4) Load 9(color)
97: 8(fvec4) CompositeConstruct 47 47 47 47 96: 7(fvec4) CompositeConstruct 46 46 46 46
98: 8(fvec4) FAdd 96 97 97: 7(fvec4) FAdd 95 96
Store 10(color) 98 Store 9(color) 97
Branch 93 Branch 92
93: Label 92: Label
Branch 81 Branch 80
81: Label 80: Label
Branch 74 Branch 73
74: Label 73: Label
Branch 68 Branch 67
99: Label 98: Label
100: 24(bool) Load 78(b) 99: 23(bool) Load 77(b)
SelectionMerge 102 None SelectionMerge 101 None
BranchConditional 100 101 104 BranchConditional 99 100 103
101: Label 100: Label
Kill Kill
104: Label 103: Label
Branch 6 Return
102: Label 101: Label
Branch 68 Branch 67
68: Label 67: Label
108: 8(fvec4) Load 10(color) 107: 7(fvec4) Load 9(color)
109: 8(fvec4) Load 14(color2) 108: 7(fvec4) Load 13(color2)
110: 8(fvec4) FMul 108 109 109: 7(fvec4) FMul 107 108
Store 107(gl_FragColor) 110 Store 106(gl_FragColor) 109
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 42 // Id's are bound by 41
Source GLSL 120 Source GLSL 120
Capability Shader Capability Shader
@ -14,67 +14,65 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 10 "color" Name 9 "color"
Name 12 "BaseColor" Name 11 "BaseColor"
Name 14 "color2" Name 13 "color2"
Name 16 "otherColor" Name 15 "otherColor"
Name 19 "c" Name 18 "c"
Name 22 "d" Name 21 "d"
Name 28 "bigColor" Name 27 "bigColor"
Name 33 "smallColor" Name 32 "smallColor"
Name 38 "gl_FragColor" Name 37 "gl_FragColor"
Decorate 12(BaseColor) Smooth Decorate 11(BaseColor) Smooth
Decorate 19(c) Smooth Decorate 18(c) Smooth
Decorate 38(gl_FragColor) BuiltIn FragColor Decorate 37(gl_FragColor) BuiltIn FragColor
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 4 7: TypeVector 6(float) 4
9: TypePointer Function 8(fvec4) 8: TypePointer Function 7(fvec4)
11: TypePointer Input 8(fvec4) 10: TypePointer Input 7(fvec4)
12(BaseColor): 11(ptr) Variable Input 11(BaseColor): 10(ptr) Variable Input
15: TypePointer UniformConstant 8(fvec4) 14: TypePointer UniformConstant 7(fvec4)
16(otherColor): 15(ptr) Variable UniformConstant 15(otherColor): 14(ptr) Variable UniformConstant
18: TypePointer Input 7(float) 17: TypePointer Input 6(float)
19(c): 18(ptr) Variable Input 18(c): 17(ptr) Variable Input
21: TypePointer UniformConstant 7(float) 20: TypePointer UniformConstant 6(float)
22(d): 21(ptr) Variable UniformConstant 21(d): 20(ptr) Variable UniformConstant
24: TypeBool 23: TypeBool
28(bigColor): 15(ptr) Variable UniformConstant 27(bigColor): 14(ptr) Variable UniformConstant
33(smallColor): 15(ptr) Variable UniformConstant 32(smallColor): 14(ptr) Variable UniformConstant
37: TypePointer Output 8(fvec4) 36: TypePointer Output 7(fvec4)
38(gl_FragColor): 37(ptr) Variable Output 37(gl_FragColor): 36(ptr) Variable Output
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
10(color): 9(ptr) Variable Function 9(color): 8(ptr) Variable Function
14(color2): 9(ptr) Variable Function 13(color2): 8(ptr) Variable Function
13: 8(fvec4) Load 12(BaseColor) 12: 7(fvec4) Load 11(BaseColor)
Store 10(color) 13 Store 9(color) 12
17: 8(fvec4) Load 16(otherColor) 16: 7(fvec4) Load 15(otherColor)
Store 14(color2) 17 Store 13(color2) 16
20: 7(float) Load 19(c) 19: 6(float) Load 18(c)
23: 7(float) Load 22(d) 22: 6(float) Load 21(d)
25: 24(bool) FOrdGreaterThan 20 23 24: 23(bool) FOrdGreaterThan 19 22
SelectionMerge 27 None SelectionMerge 26 None
BranchConditional 25 26 32 BranchConditional 24 25 31
26: Label 25: Label
29: 8(fvec4) Load 28(bigColor) 28: 7(fvec4) Load 27(bigColor)
30: 8(fvec4) Load 10(color) 29: 7(fvec4) Load 9(color)
31: 8(fvec4) FAdd 30 29 30: 7(fvec4) FAdd 29 28
Store 10(color) 31 Store 9(color) 30
Branch 27 Branch 26
32: Label 31: Label
34: 8(fvec4) Load 33(smallColor) 33: 7(fvec4) Load 32(smallColor)
35: 8(fvec4) Load 10(color) 34: 7(fvec4) Load 9(color)
36: 8(fvec4) FAdd 35 34 35: 7(fvec4) FAdd 34 33
Store 10(color) 36 Store 9(color) 35
Branch 27 Branch 26
27: Label 26: Label
39: 8(fvec4) Load 10(color) 38: 7(fvec4) Load 9(color)
40: 8(fvec4) Load 14(color2) 39: 7(fvec4) Load 13(color2)
41: 8(fvec4) FMul 39 40 40: 7(fvec4) FMul 38 39
Store 38(gl_FragColor) 41 Store 37(gl_FragColor) 40
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked vertex stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 49 // Id's are bound by 48
Source ESSL 300 Source ESSL 300
Capability Shader Capability Shader
@ -13,89 +13,87 @@ Linked vertex stage:
MemoryModel Logical GLSL450 MemoryModel Logical GLSL450
EntryPoint Vertex 4 "main" EntryPoint Vertex 4 "main"
Name 4 "main" Name 4 "main"
Name 9 "i" Name 8 "i"
Name 18 "A" Name 17 "A"
Name 26 "B" Name 25 "B"
Name 30 "C" Name 29 "C"
Name 37 "D" Name 36 "D"
Name 39 "E" Name 38 "E"
Name 40 "F" Name 39 "F"
Name 44 "G" Name 43 "G"
Name 47 "gl_VertexID" Name 46 "gl_VertexID"
Name 48 "gl_InstanceID" Name 47 "gl_InstanceID"
Decorate 47(gl_VertexID) BuiltIn VertexId Decorate 46(gl_VertexID) BuiltIn VertexId
Decorate 47(gl_VertexID) NoStaticUse Decorate 46(gl_VertexID) NoStaticUse
Decorate 48(gl_InstanceID) BuiltIn InstanceId Decorate 47(gl_InstanceID) BuiltIn InstanceId
Decorate 48(gl_InstanceID) NoStaticUse Decorate 47(gl_InstanceID) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeInt 32 1 6: TypeInt 32 1
8: TypePointer Function 7(int) 7: TypePointer Function 6(int)
10: 7(int) Constant 0 9: 6(int) Constant 0
15: 7(int) Constant 10 14: 6(int) Constant 10
16: TypeBool 15: TypeBool
19: 7(int) Constant 1 18: 6(int) Constant 1
21: 7(int) Constant 2 20: 6(int) Constant 2
32: 7(int) Constant 3 31: 6(int) Constant 3
41: 7(int) Constant 12 40: 6(int) Constant 12
45: 7(int) Constant 99 44: 6(int) Constant 99
46: TypePointer Input 7(int) 45: TypePointer Input 6(int)
47(gl_VertexID): 46(ptr) Variable Input 46(gl_VertexID): 45(ptr) Variable Input
48(gl_InstanceID): 46(ptr) Variable Input 47(gl_InstanceID): 45(ptr) Variable Input
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
9(i): 8(ptr) Variable Function 8(i): 7(ptr) Variable Function
18(A): 8(ptr) Variable Function 17(A): 7(ptr) Variable Function
26(B): 8(ptr) Variable Function 25(B): 7(ptr) Variable Function
30(C): 8(ptr) Variable Function 29(C): 7(ptr) Variable Function
37(D): 8(ptr) Variable Function 36(D): 7(ptr) Variable Function
39(E): 8(ptr) Variable Function 38(E): 7(ptr) Variable Function
40(F): 8(ptr) Variable Function 39(F): 7(ptr) Variable Function
44(G): 8(ptr) Variable Function 43(G): 7(ptr) Variable Function
Store 9(i) 10 Store 8(i) 9
Branch 11 Branch 10
11: Label 10: Label
14: 7(int) Load 9(i) 13: 6(int) Load 8(i)
17: 16(bool) SLessThan 14 15 16: 15(bool) SLessThan 13 14
LoopMerge 12 None LoopMerge 11 None
BranchConditional 17 13 12 BranchConditional 16 12 11
13: Label 12: Label
Store 18(A) 19 Store 17(A) 18
20: 7(int) Load 9(i) 19: 6(int) Load 8(i)
22: 7(int) SMod 20 21 21: 6(int) SMod 19 20
23: 16(bool) IEqual 22 10 22: 15(bool) IEqual 21 9
SelectionMerge 25 None SelectionMerge 24 None
BranchConditional 23 24 25 BranchConditional 22 23 24
24: Label 23: Label
Store 26(B) 19 Store 25(B) 18
27: 7(int) Load 9(i) 26: 6(int) Load 8(i)
28: 7(int) IAdd 27 19 27: 6(int) IAdd 26 18
Store 9(i) 28 Store 8(i) 27
Branch 10
28: Label
Store 29(C) 18
Branch 24
24: Label
30: 6(int) Load 8(i)
32: 6(int) SMod 30 31
33: 15(bool) IEqual 32 9
SelectionMerge 35 None
BranchConditional 33 34 35
34: Label
Store 36(D) 18
Branch 11 Branch 11
29: Label 37: Label
Store 30(C) 19 Store 38(E) 18
Branch 25 Branch 35
25: Label 35: Label
31: 7(int) Load 9(i) Store 39(F) 40
33: 7(int) SMod 31 32 41: 6(int) Load 8(i)
34: 16(bool) IEqual 33 10 42: 6(int) IAdd 41 18
SelectionMerge 36 None Store 8(i) 42
BranchConditional 34 35 36 Branch 10
35: Label 11: Label
Store 37(D) 19 Store 43(G) 44
Branch 12
38: Label
Store 39(E) 19
Branch 36
36: Label
Store 40(F) 41
42: 7(int) Load 9(i)
43: 7(int) IAdd 42 19
Store 9(i) 43
Branch 11
12: Label
Store 44(G) 45
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked vertex stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 26 // Id's are bound by 25
Source ESSL 300 Source ESSL 300
Capability Shader Capability Shader
@ -13,45 +13,43 @@ Linked vertex stage:
MemoryModel Logical GLSL450 MemoryModel Logical GLSL450
EntryPoint Vertex 4 "main" EntryPoint Vertex 4 "main"
Name 4 "main" Name 4 "main"
Name 9 "i" Name 8 "i"
Name 18 "j" Name 17 "j"
Name 24 "gl_VertexID" Name 23 "gl_VertexID"
Name 25 "gl_InstanceID" Name 24 "gl_InstanceID"
Decorate 24(gl_VertexID) BuiltIn VertexId Decorate 23(gl_VertexID) BuiltIn VertexId
Decorate 24(gl_VertexID) NoStaticUse Decorate 23(gl_VertexID) NoStaticUse
Decorate 25(gl_InstanceID) BuiltIn InstanceId Decorate 24(gl_InstanceID) BuiltIn InstanceId
Decorate 25(gl_InstanceID) NoStaticUse Decorate 24(gl_InstanceID) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeInt 32 1 6: TypeInt 32 1
8: TypePointer Function 7(int) 7: TypePointer Function 6(int)
10: 7(int) Constant 0 9: 6(int) Constant 0
15: 7(int) Constant 10 14: 6(int) Constant 10
16: TypeBool 15: TypeBool
19: 7(int) Constant 12 18: 6(int) Constant 12
21: 7(int) Constant 1 20: 6(int) Constant 1
23: TypePointer Input 7(int) 22: TypePointer Input 6(int)
24(gl_VertexID): 23(ptr) Variable Input 23(gl_VertexID): 22(ptr) Variable Input
25(gl_InstanceID): 23(ptr) Variable Input 24(gl_InstanceID): 22(ptr) Variable Input
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
9(i): 8(ptr) Variable Function 8(i): 7(ptr) Variable Function
18(j): 8(ptr) Variable Function 17(j): 7(ptr) Variable Function
Store 9(i) 10 Store 8(i) 9
Branch 11 Branch 10
10: Label
13: 6(int) Load 8(i)
16: 15(bool) SLessThan 13 14
LoopMerge 11 None
BranchConditional 16 12 11
12: Label
Store 17(j) 18
19: 6(int) Load 8(i)
21: 6(int) IAdd 19 20
Store 8(i) 21
Branch 10
11: Label 11: Label
14: 7(int) Load 9(i)
17: 16(bool) SLessThan 14 15
LoopMerge 12 None
BranchConditional 17 13 12
13: Label
Store 18(j) 19
20: 7(int) Load 9(i)
22: 7(int) IAdd 20 21
Store 9(i) 22
Branch 11
12: Label
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 123 // Id's are bound by 122
Source GLSL 130 Source GLSL 130
Capability Shader Capability Shader
@ -14,186 +14,184 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 10 "color" Name 9 "color"
Name 12 "BaseColor" Name 11 "BaseColor"
Name 16 "i" Name 15 "i"
Name 23 "Count" Name 22 "Count"
Name 28 "bigColor" Name 27 "bigColor"
Name 36 "gl_FragColor" Name 35 "gl_FragColor"
Name 39 "sum" Name 38 "sum"
Name 41 "i" Name 40 "i"
Name 51 "v4" Name 50 "v4"
Name 60 "i" Name 59 "i"
Name 66 "tv4" Name 65 "tv4"
Name 84 "r" Name 83 "r"
Name 90 "i" Name 89 "i"
Name 98 "f" Name 97 "f"
Name 111 "i" Name 110 "i"
Decorate 12(BaseColor) Smooth Decorate 11(BaseColor) Smooth
Decorate 36(gl_FragColor) BuiltIn FragColor Decorate 35(gl_FragColor) BuiltIn FragColor
Decorate 98(f) Smooth Decorate 97(f) Smooth
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 4 7: TypeVector 6(float) 4
9: TypePointer Function 8(fvec4) 8: TypePointer Function 7(fvec4)
11: TypePointer Input 8(fvec4) 10: TypePointer Input 7(fvec4)
12(BaseColor): 11(ptr) Variable Input 11(BaseColor): 10(ptr) Variable Input
14: TypeInt 32 1 13: TypeInt 32 1
15: TypePointer Function 14(int) 14: TypePointer Function 13(int)
17: 14(int) Constant 0 16: 13(int) Constant 0
22: TypePointer UniformConstant 14(int) 21: TypePointer UniformConstant 13(int)
23(Count): 22(ptr) Variable UniformConstant 22(Count): 21(ptr) Variable UniformConstant
25: TypeBool 24: TypeBool
27: TypePointer UniformConstant 8(fvec4) 26: TypePointer UniformConstant 7(fvec4)
28(bigColor): 27(ptr) Variable UniformConstant 27(bigColor): 26(ptr) Variable UniformConstant
33: 14(int) Constant 1 32: 13(int) Constant 1
35: TypePointer Output 8(fvec4) 34: TypePointer Output 7(fvec4)
36(gl_FragColor): 35(ptr) Variable Output 35(gl_FragColor): 34(ptr) Variable Output
38: TypePointer Function 7(float) 37: TypePointer Function 6(float)
40: 7(float) Constant 0 39: 6(float) Constant 0
46: 14(int) Constant 4 45: 13(int) Constant 4
48: TypeInt 32 0 47: TypeInt 32 0
49: TypeVector 48(int) 4 48: TypeVector 47(int) 4
50: TypePointer UniformConstant 49(ivec4) 49: TypePointer UniformConstant 48(ivec4)
51(v4): 50(ptr) Variable UniformConstant 50(v4): 49(ptr) Variable UniformConstant
71: 48(int) Constant 4 70: 47(int) Constant 4
85: TypeVector 7(float) 3 84: TypeVector 6(float) 3
97: TypePointer Input 7(float) 96: TypePointer Input 6(float)
98(f): 97(ptr) Variable Input 97(f): 96(ptr) Variable Input
116: 14(int) Constant 16 115: 13(int) Constant 16
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
10(color): 9(ptr) Variable Function 9(color): 8(ptr) Variable Function
16(i): 15(ptr) Variable Function 15(i): 14(ptr) Variable Function
39(sum): 38(ptr) Variable Function 38(sum): 37(ptr) Variable Function
41(i): 15(ptr) Variable Function 40(i): 14(ptr) Variable Function
60(i): 15(ptr) Variable Function 59(i): 14(ptr) Variable Function
66(tv4): 9(ptr) Variable Function 65(tv4): 8(ptr) Variable Function
84(r): 9(ptr) Variable Function 83(r): 8(ptr) Variable Function
90(i): 15(ptr) Variable Function 89(i): 14(ptr) Variable Function
111(i): 15(ptr) Variable Function 110(i): 14(ptr) Variable Function
13: 8(fvec4) Load 12(BaseColor) 12: 7(fvec4) Load 11(BaseColor)
Store 10(color) 13 Store 9(color) 12
Store 16(i) 17 Store 15(i) 16
Branch 18 Branch 17
17: Label
20: 13(int) Load 15(i)
23: 13(int) Load 22(Count)
25: 24(bool) SLessThan 20 23
LoopMerge 18 None
BranchConditional 25 19 18
19: Label
28: 7(fvec4) Load 27(bigColor)
29: 7(fvec4) Load 9(color)
30: 7(fvec4) FAdd 29 28
Store 9(color) 30
31: 13(int) Load 15(i)
33: 13(int) IAdd 31 32
Store 15(i) 33
Branch 17
18: Label 18: Label
21: 14(int) Load 16(i) 36: 7(fvec4) Load 9(color)
24: 14(int) Load 23(Count) Store 35(gl_FragColor) 36
26: 25(bool) SLessThan 21 24 Store 38(sum) 39
LoopMerge 19 None Store 40(i) 16
BranchConditional 26 20 19 Branch 41
20: Label 41: Label
29: 8(fvec4) Load 28(bigColor) 44: 13(int) Load 40(i)
30: 8(fvec4) Load 10(color) 46: 24(bool) SLessThan 44 45
31: 8(fvec4) FAdd 30 29 LoopMerge 42 None
Store 10(color) 31 BranchConditional 46 43 42
32: 14(int) Load 16(i) 43: Label
34: 14(int) IAdd 32 33 51: 13(int) Load 40(i)
Store 16(i) 34 52: 48(ivec4) Load 50(v4)
Branch 18 53: 47(int) VectorExtractDynamic 52 51
19: Label 54: 6(float) ConvertUToF 53
37: 8(fvec4) Load 10(color) 55: 6(float) Load 38(sum)
Store 36(gl_FragColor) 37 56: 6(float) FAdd 55 54
Store 39(sum) 40 Store 38(sum) 56
Store 41(i) 17 57: 13(int) Load 40(i)
Branch 42 58: 13(int) IAdd 57 32
Store 40(i) 58
Branch 41
42: Label 42: Label
45: 14(int) Load 41(i) Store 59(i) 16
47: 25(bool) SLessThan 45 46 Branch 60
LoopMerge 43 None 60: Label
BranchConditional 47 44 43 63: 13(int) Load 59(i)
44: Label 64: 24(bool) SLessThan 63 45
52: 14(int) Load 41(i) LoopMerge 61 None
53: 49(ivec4) Load 51(v4) BranchConditional 64 62 61
54: 48(int) VectorExtractDynamic 53 52 62: Label
55: 7(float) ConvertUToF 54 66: 13(int) Load 59(i)
56: 7(float) Load 39(sum) 67: 13(int) Load 59(i)
57: 7(float) FAdd 56 55 68: 48(ivec4) Load 50(v4)
Store 39(sum) 57 69: 47(int) VectorExtractDynamic 68 67
58: 14(int) Load 41(i) 71: 47(int) IMul 69 70
59: 14(int) IAdd 58 33 72: 6(float) ConvertUToF 71
Store 41(i) 59 73: 7(fvec4) Load 65(tv4)
Branch 42 74: 7(fvec4) VectorInsertDynamic 73 72 66
43: Label Store 65(tv4) 74
Store 60(i) 17 75: 13(int) Load 59(i)
Branch 61 76: 13(int) IAdd 75 32
Store 59(i) 76
Branch 60
61: Label 61: Label
64: 14(int) Load 60(i) 77: 6(float) Load 38(sum)
65: 25(bool) SLessThan 64 46 78: 7(fvec4) CompositeConstruct 77 77 77 77
LoopMerge 62 None 79: 7(fvec4) Load 65(tv4)
BranchConditional 65 63 62 80: 7(fvec4) FAdd 78 79
63: Label 81: 7(fvec4) Load 35(gl_FragColor)
67: 14(int) Load 60(i) 82: 7(fvec4) FAdd 81 80
68: 14(int) Load 60(i) Store 35(gl_FragColor) 82
69: 49(ivec4) Load 51(v4) 85: 7(fvec4) Load 11(BaseColor)
70: 48(int) VectorExtractDynamic 69 68 86: 84(fvec3) VectorShuffle 85 85 0 1 2
72: 48(int) IMul 70 71 87: 7(fvec4) Load 83(r)
73: 7(float) ConvertUToF 72 88: 7(fvec4) VectorShuffle 87 86 4 5 6 3
74: 8(fvec4) Load 66(tv4) Store 83(r) 88
75: 8(fvec4) VectorInsertDynamic 74 73 67 Store 89(i) 16
Store 66(tv4) 75 Branch 90
76: 14(int) Load 60(i) 90: Label
77: 14(int) IAdd 76 33 93: 13(int) Load 89(i)
Store 60(i) 77 94: 13(int) Load 22(Count)
Branch 61 95: 24(bool) SLessThan 93 94
62: Label LoopMerge 91 None
78: 7(float) Load 39(sum) BranchConditional 95 92 91
79: 8(fvec4) CompositeConstruct 78 78 78 78 92: Label
80: 8(fvec4) Load 66(tv4) 98: 6(float) Load 97(f)
81: 8(fvec4) FAdd 79 80 99: 7(fvec4) Load 83(r)
82: 8(fvec4) Load 36(gl_FragColor) 100: 7(fvec4) CompositeInsert 98 99 3
83: 8(fvec4) FAdd 82 81 Store 83(r) 100
Store 36(gl_FragColor) 83 101: 13(int) Load 89(i)
86: 8(fvec4) Load 12(BaseColor) 102: 13(int) IAdd 101 32
87: 85(fvec3) VectorShuffle 86 86 0 1 2 Store 89(i) 102
88: 8(fvec4) Load 84(r) Branch 90
89: 8(fvec4) VectorShuffle 88 87 4 5 6 3
Store 84(r) 89
Store 90(i) 17
Branch 91
91: Label 91: Label
94: 14(int) Load 90(i) 103: 7(fvec4) Load 83(r)
95: 14(int) Load 23(Count) 104: 84(fvec3) VectorShuffle 103 103 0 1 2
96: 25(bool) SLessThan 94 95 105: 7(fvec4) Load 35(gl_FragColor)
LoopMerge 92 None 106: 84(fvec3) VectorShuffle 105 105 0 1 2
BranchConditional 96 93 92 107: 84(fvec3) FAdd 106 104
93: Label 108: 7(fvec4) Load 35(gl_FragColor)
99: 7(float) Load 98(f) 109: 7(fvec4) VectorShuffle 108 107 4 5 6 3
100: 8(fvec4) Load 84(r) Store 35(gl_FragColor) 109
101: 8(fvec4) CompositeInsert 99 100 3 Store 110(i) 16
Store 84(r) 101 Branch 111
102: 14(int) Load 90(i) 111: Label
103: 14(int) IAdd 102 33 114: 13(int) Load 110(i)
Store 90(i) 103 116: 24(bool) SLessThan 114 115
Branch 91 LoopMerge 112 None
92: Label BranchConditional 116 113 112
104: 8(fvec4) Load 84(r) 113: Label
105: 85(fvec3) VectorShuffle 104 104 0 1 2 117: 6(float) Load 97(f)
106: 8(fvec4) Load 36(gl_FragColor) 118: 7(fvec4) Load 35(gl_FragColor)
107: 85(fvec3) VectorShuffle 106 106 0 1 2 119: 7(fvec4) VectorTimesScalar 118 117
108: 85(fvec3) FAdd 107 105 Store 35(gl_FragColor) 119
109: 8(fvec4) Load 36(gl_FragColor) 120: 13(int) Load 110(i)
110: 8(fvec4) VectorShuffle 109 108 4 5 6 3 121: 13(int) IAdd 120 45
Store 36(gl_FragColor) 110 Store 110(i) 121
Store 111(i) 17 Branch 111
Branch 112
112: Label 112: Label
115: 14(int) Load 111(i)
117: 25(bool) SLessThan 115 116
LoopMerge 113 None
BranchConditional 117 114 113
114: Label
118: 7(float) Load 98(f)
119: 8(fvec4) Load 36(gl_FragColor)
120: 8(fvec4) VectorTimesScalar 119 118
Store 36(gl_FragColor) 120
121: 14(int) Load 111(i)
122: 14(int) IAdd 121 46
Store 111(i) 122
Branch 112
113: Label
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 58 // Id's are bound by 57
Source ESSL 100 Source ESSL 100
Capability Shader Capability Shader
@ -14,93 +14,91 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 7 "bar(" Name 6 "bar("
Name 11 "unreachableReturn(" Name 10 "unreachableReturn("
Name 17 "foo(vf4;" Name 16 "foo(vf4;"
Name 16 "bar" Name 15 "bar"
Name 19 "color" Name 18 "color"
Name 21 "BaseColor" Name 20 "BaseColor"
Name 22 "param" Name 21 "param"
Name 28 "f" Name 27 "f"
Name 31 "gl_FragColor" Name 30 "gl_FragColor"
Name 37 "d" Name 36 "d"
Name 57 "bigColor" Name 56 "bigColor"
Decorate 19(color) RelaxedPrecision Decorate 18(color) RelaxedPrecision
Decorate 21(BaseColor) RelaxedPrecision Decorate 20(BaseColor) RelaxedPrecision
Decorate 21(BaseColor) Smooth Decorate 20(BaseColor) Smooth
Decorate 28(f) RelaxedPrecision Decorate 27(f) RelaxedPrecision
Decorate 31(gl_FragColor) RelaxedPrecision Decorate 30(gl_FragColor) RelaxedPrecision
Decorate 31(gl_FragColor) BuiltIn FragColor Decorate 30(gl_FragColor) BuiltIn FragColor
Decorate 37(d) RelaxedPrecision Decorate 36(d) RelaxedPrecision
Decorate 57(bigColor) RelaxedPrecision Decorate 56(bigColor) RelaxedPrecision
Decorate 57(bigColor) NoStaticUse Decorate 56(bigColor) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
9: TypeFloat 32 8: TypeFloat 32
10: TypeFunction 9(float) 9: TypeFunction 8(float)
13: TypeVector 9(float) 4 12: TypeVector 8(float) 4
14: TypePointer Function 13(fvec4) 13: TypePointer Function 12(fvec4)
15: TypeFunction 9(float) 14(ptr) 14: TypeFunction 8(float) 13(ptr)
20: TypePointer Input 13(fvec4) 19: TypePointer Input 12(fvec4)
21(BaseColor): 20(ptr) Variable Input 20(BaseColor): 19(ptr) Variable Input
27: TypePointer Function 9(float) 26: TypePointer Function 8(float)
30: TypePointer Output 13(fvec4) 29: TypePointer Output 12(fvec4)
31(gl_FragColor): 30(ptr) Variable Output 30(gl_FragColor): 29(ptr) Variable Output
36: TypePointer UniformConstant 9(float) 35: TypePointer UniformConstant 8(float)
37(d): 36(ptr) Variable UniformConstant 36(d): 35(ptr) Variable UniformConstant
39: 9(float) Constant 1082549862 38: 8(float) Constant 1082549862
40: TypeBool 39: TypeBool
44: 9(float) Constant 1067030938 43: 8(float) Constant 1067030938
47: 9(float) Constant 1083179008 46: 8(float) Constant 1083179008
56: TypePointer UniformConstant 13(fvec4) 55: TypePointer UniformConstant 12(fvec4)
57(bigColor): 56(ptr) Variable UniformConstant 56(bigColor): 55(ptr) Variable UniformConstant
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
19(color): 14(ptr) Variable Function 18(color): 13(ptr) Variable Function
22(param): 14(ptr) Variable Function 21(param): 13(ptr) Variable Function
28(f): 27(ptr) Variable Function 27(f): 26(ptr) Variable Function
23: 13(fvec4) Load 21(BaseColor) 22: 12(fvec4) Load 20(BaseColor)
Store 22(param) 23 Store 21(param) 22
24: 9(float) FunctionCall 17(foo(vf4;) 22(param) 23: 8(float) FunctionCall 16(foo(vf4;) 21(param)
25: 13(fvec4) CompositeConstruct 24 24 24 24 24: 12(fvec4) CompositeConstruct 23 23 23 23
Store 19(color) 25 Store 18(color) 24
26: 2 FunctionCall 7(bar() 25: 2 FunctionCall 6(bar()
29: 9(float) FunctionCall 11(unreachableReturn() 28: 8(float) FunctionCall 10(unreachableReturn()
Store 28(f) 29 Store 27(f) 28
32: 13(fvec4) Load 19(color) 31: 12(fvec4) Load 18(color)
33: 9(float) Load 28(f) 32: 8(float) Load 27(f)
34: 13(fvec4) VectorTimesScalar 32 33 33: 12(fvec4) VectorTimesScalar 31 32
Store 31(gl_FragColor) 34 Store 30(gl_FragColor) 33
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd
7(bar(): 2 Function None 3 6(bar(): 2 Function None 3
8: Label 7: Label
Return Return
FunctionEnd FunctionEnd
11(unreachableReturn(): 9(float) Function None 10 10(unreachableReturn(): 8(float) Function None 9
12: Label 11: Label
35: 2 FunctionCall 7(bar() 34: 2 FunctionCall 6(bar()
38: 9(float) Load 37(d) 37: 8(float) Load 36(d)
41: 40(bool) FOrdLessThan 38 39 40: 39(bool) FOrdLessThan 37 38
SelectionMerge 43 None SelectionMerge 42 None
BranchConditional 41 42 46 BranchConditional 40 41 45
42: Label 41: Label
ReturnValue 44 ReturnValue 43
46: Label 45: Label
ReturnValue 47 ReturnValue 46
43: Label 42: Label
49: 9(float) Undef 48: 8(float) Undef
ReturnValue 49 ReturnValue 48
FunctionEnd FunctionEnd
17(foo(vf4;): 9(float) Function None 15 16(foo(vf4;): 8(float) Function None 14
16(bar): 14(ptr) FunctionParameter 15(bar): 13(ptr) FunctionParameter
18: Label 17: Label
50: 13(fvec4) Load 16(bar) 49: 12(fvec4) Load 15(bar)
51: 9(float) CompositeExtract 50 0 50: 8(float) CompositeExtract 49 0
52: 13(fvec4) Load 16(bar) 51: 12(fvec4) Load 15(bar)
53: 9(float) CompositeExtract 52 1 52: 8(float) CompositeExtract 51 1
54: 9(float) FAdd 51 53 53: 8(float) FAdd 50 52
ReturnValue 54 ReturnValue 53
FunctionEnd FunctionEnd

View File

@ -7,7 +7,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 74 // Id's are bound by 73
Source GLSL 130 Source GLSL 130
Capability Shader Capability Shader
@ -16,113 +16,111 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 12 "foo(vf4;" Name 11 "foo(vf4;"
Name 11 "bar" Name 10 "bar"
Name 14 "bar(" Name 13 "bar("
Name 17 "unreachableReturn(" Name 16 "unreachableReturn("
Name 19 "missingReturn(" Name 18 "missingReturn("
Name 22 "h" Name 21 "h"
Name 31 "d" Name 30 "d"
Name 52 "color" Name 51 "color"
Name 54 "BaseColor" Name 53 "BaseColor"
Name 55 "param" Name 54 "param"
Name 61 "f" Name 60 "f"
Name 63 "g" Name 62 "g"
Name 66 "gl_FragColor" Name 65 "gl_FragColor"
Name 73 "bigColor" Name 72 "bigColor"
Decorate 54(BaseColor) Smooth Decorate 53(BaseColor) Smooth
Decorate 66(gl_FragColor) BuiltIn FragColor Decorate 65(gl_FragColor) BuiltIn FragColor
Decorate 73(bigColor) NoStaticUse Decorate 72(bigColor) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 4 7: TypeVector 6(float) 4
9: TypePointer Function 8(fvec4) 8: TypePointer Function 7(fvec4)
10: TypeFunction 7(float) 9(ptr) 9: TypeFunction 6(float) 8(ptr)
16: TypeFunction 7(float) 15: TypeFunction 6(float)
21: TypePointer PrivateGlobal 7(float) 20: TypePointer PrivateGlobal 6(float)
22(h): 21(ptr) Variable PrivateGlobal 21(h): 20(ptr) Variable PrivateGlobal
23: 7(float) Constant 0 22: 6(float) Constant 0
30: TypePointer UniformConstant 7(float) 29: TypePointer UniformConstant 6(float)
31(d): 30(ptr) Variable UniformConstant 30(d): 29(ptr) Variable UniformConstant
33: 7(float) Constant 1082549862 32: 6(float) Constant 1082549862
34: TypeBool 33: TypeBool
38: 7(float) Constant 1067030938 37: 6(float) Constant 1067030938
41: 7(float) Constant 1083179008 40: 6(float) Constant 1083179008
49: 7(float) Constant 1081711002 48: 6(float) Constant 1081711002
53: TypePointer Input 8(fvec4) 52: TypePointer Input 7(fvec4)
54(BaseColor): 53(ptr) Variable Input 53(BaseColor): 52(ptr) Variable Input
60: TypePointer Function 7(float) 59: TypePointer Function 6(float)
65: TypePointer Output 8(fvec4) 64: TypePointer Output 7(fvec4)
66(gl_FragColor): 65(ptr) Variable Output 65(gl_FragColor): 64(ptr) Variable Output
72: TypePointer UniformConstant 8(fvec4) 71: TypePointer UniformConstant 7(fvec4)
73(bigColor): 72(ptr) Variable UniformConstant 72(bigColor): 71(ptr) Variable UniformConstant
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
52(color): 9(ptr) Variable Function 51(color): 8(ptr) Variable Function
55(param): 9(ptr) Variable Function 54(param): 8(ptr) Variable Function
61(f): 60(ptr) Variable Function 60(f): 59(ptr) Variable Function
63(g): 60(ptr) Variable Function 62(g): 59(ptr) Variable Function
Store 22(h) 23 Store 21(h) 22
56: 8(fvec4) Load 54(BaseColor) 55: 7(fvec4) Load 53(BaseColor)
Store 55(param) 56 Store 54(param) 55
57: 7(float) FunctionCall 12(foo(vf4;) 55(param) 56: 6(float) FunctionCall 11(foo(vf4;) 54(param)
58: 8(fvec4) CompositeConstruct 57 57 57 57 57: 7(fvec4) CompositeConstruct 56 56 56 56
Store 52(color) 58 Store 51(color) 57
59: 2 FunctionCall 14(bar() 58: 2 FunctionCall 13(bar()
62: 7(float) FunctionCall 17(unreachableReturn() 61: 6(float) FunctionCall 16(unreachableReturn()
Store 61(f) 62 Store 60(f) 61
64: 7(float) FunctionCall 19(missingReturn() 63: 6(float) FunctionCall 18(missingReturn()
Store 63(g) 64 Store 62(g) 63
67: 8(fvec4) Load 52(color) 66: 7(fvec4) Load 51(color)
68: 7(float) Load 61(f) 67: 6(float) Load 60(f)
69: 8(fvec4) VectorTimesScalar 67 68 68: 7(fvec4) VectorTimesScalar 66 67
70: 7(float) Load 22(h) 69: 6(float) Load 21(h)
71: 8(fvec4) VectorTimesScalar 69 70 70: 7(fvec4) VectorTimesScalar 68 69
Store 66(gl_FragColor) 71 Store 65(gl_FragColor) 70
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd
12(foo(vf4;): 7(float) Function None 10 11(foo(vf4;): 6(float) Function None 9
11(bar): 9(ptr) FunctionParameter 10(bar): 8(ptr) FunctionParameter
13: Label 12: Label
24: 8(fvec4) Load 11(bar) 23: 7(fvec4) Load 10(bar)
25: 7(float) CompositeExtract 24 0 24: 6(float) CompositeExtract 23 0
26: 8(fvec4) Load 11(bar) 25: 7(fvec4) Load 10(bar)
27: 7(float) CompositeExtract 26 1 26: 6(float) CompositeExtract 25 1
28: 7(float) FAdd 25 27 27: 6(float) FAdd 24 26
ReturnValue 28 ReturnValue 27
FunctionEnd FunctionEnd
14(bar(): 2 Function None 3 13(bar(): 2 Function None 3
15: Label 14: Label
Return Return
FunctionEnd FunctionEnd
17(unreachableReturn(): 7(float) Function None 16 16(unreachableReturn(): 6(float) Function None 15
18: Label 17: Label
32: 7(float) Load 31(d) 31: 6(float) Load 30(d)
35: 34(bool) FOrdLessThan 32 33 34: 33(bool) FOrdLessThan 31 32
SelectionMerge 37 None SelectionMerge 36 None
BranchConditional 35 36 40 BranchConditional 34 35 39
36: Label 35: Label
ReturnValue 38 ReturnValue 37
40: Label 39: Label
ReturnValue 41 ReturnValue 40
37: Label 36: Label
43: 7(float) Undef 42: 6(float) Undef
ReturnValue 43 ReturnValue 42
FunctionEnd FunctionEnd
19(missingReturn(): 7(float) Function None 16 18(missingReturn(): 6(float) Function None 15
20: Label 19: Label
44: 7(float) Load 31(d) 43: 6(float) Load 30(d)
45: 34(bool) FOrdLessThan 44 41 44: 33(bool) FOrdLessThan 43 40
SelectionMerge 47 None SelectionMerge 46 None
BranchConditional 45 46 47 BranchConditional 44 45 46
46: Label 45: Label
48: 7(float) Load 31(d) 47: 6(float) Load 30(d)
Store 22(h) 48 Store 21(h) 47
ReturnValue 49 ReturnValue 48
47: Label 46: Label
51: 7(float) Undef 50: 6(float) Undef
ReturnValue 51 ReturnValue 50
FunctionEnd FunctionEnd

View File

@ -7,7 +7,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 159 // Id's are bound by 158
Source GLSL 400 Source GLSL 400
Capability Shader Capability Shader
@ -16,225 +16,223 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 16 "foo(i1;i1;i1;i1;i1;i1;" Name 15 "foo(i1;i1;i1;i1;i1;i1;"
Name 10 "a" Name 9 "a"
Name 11 "b" Name 10 "b"
Name 12 "c" Name 11 "c"
Name 13 "d" Name 12 "d"
Name 14 "e" Name 13 "e"
Name 15 "f" Name 14 "f"
Name 26 "foo2(f1;vf3;i1;" Name 25 "foo2(f1;vf3;i1;"
Name 23 "a" Name 22 "a"
Name 24 "b" Name 23 "b"
Name 25 "r" Name 24 "r"
Name 29 "foo3(" Name 28 "foo3("
Name 31 "sum" Name 30 "sum"
Name 73 "u" Name 72 "u"
Name 85 "t" Name 84 "t"
Name 88 "s" Name 87 "s"
MemberName 88(s) 0 "t" MemberName 87(s) 0 "t"
Name 90 "f" Name 89 "f"
Name 97 "color" Name 96 "color"
Name 103 "e" Name 102 "e"
Name 103 "param"
Name 104 "param" Name 104 "param"
Name 105 "param" Name 105 "param"
Name 106 "param" Name 106 "param"
Name 107 "param" Name 125 "ret"
Name 126 "ret" Name 127 "tempReturn"
Name 128 "tempReturn" Name 132 "tempArg"
Name 133 "tempArg" Name 133 "param"
Name 134 "param" Name 134 "param"
Name 135 "param" Name 135 "param"
Name 136 "param" Name 138 "arg"
Name 139 "arg" Name 154 "gl_FragColor"
Name 155 "gl_FragColor" Decorate 154(gl_FragColor) BuiltIn FragColor
Decorate 155(gl_FragColor) BuiltIn FragColor
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeInt 32 1 6: TypeInt 32 1
8: TypePointer Function 7(int) 7: TypePointer Function 6(int)
9: TypeFunction 7(int) 8(ptr) 7(int) 8(ptr) 7(int) 8(ptr) 8(ptr) 8: TypeFunction 6(int) 7(ptr) 6(int) 7(ptr) 6(int) 7(ptr) 7(ptr)
18: TypeFloat 32 17: TypeFloat 32
19: TypePointer Function 18(float) 18: TypePointer Function 17(float)
20: TypeVector 18(float) 3 19: TypeVector 17(float) 3
21: TypePointer Function 20(fvec3) 20: TypePointer Function 19(fvec3)
22: TypeFunction 7(int) 19(ptr) 21(ptr) 8(ptr) 21: TypeFunction 6(int) 18(ptr) 20(ptr) 7(ptr)
28: TypeFunction 7(int) 27: TypeFunction 6(int)
39: 7(int) Constant 64 38: 6(int) Constant 64
44: 7(int) Constant 1024 43: 6(int) Constant 1024
62: 18(float) Constant 1077936128 61: 17(float) Constant 1077936128
66: 18(float) Constant 1084227584 65: 17(float) Constant 1084227584
72: TypePointer UniformConstant 18(float) 71: TypePointer UniformConstant 17(float)
73(u): 72(ptr) Variable UniformConstant 72(u): 71(ptr) Variable UniformConstant
75: 18(float) Constant 1078774989 74: 17(float) Constant 1078774989
76: TypeBool 75: TypeBool
81: 7(int) Constant 1000000 80: 6(int) Constant 1000000
83: 7(int) Constant 2000000 82: 6(int) Constant 2000000
86: 7(int) Constant 2 85: 6(int) Constant 2
87: TypeVector 7(int) 4 86: TypeVector 6(int) 4
88(s): TypeStruct 87(ivec4) 87(s): TypeStruct 86(ivec4)
89: TypePointer Function 88(s) 88: TypePointer Function 87(s)
91: 7(int) Constant 0 90: 6(int) Constant 0
92: 7(int) Constant 32 91: 6(int) Constant 32
93: TypePointer Function 87(ivec4) 92: TypePointer Function 86(ivec4)
98: 7(int) Constant 1 97: 6(int) Constant 1
102: 7(int) Constant 8 101: 6(int) Constant 8
117: 7(int) Constant 128 116: 6(int) Constant 128
127: TypePointer PrivateGlobal 7(int) 126: TypePointer PrivateGlobal 6(int)
128(tempReturn): 127(ptr) Variable PrivateGlobal 127(tempReturn): 126(ptr) Variable PrivateGlobal
129: 18(float) Constant 1082130432 128: 17(float) Constant 1082130432
130: 18(float) Constant 1065353216 129: 17(float) Constant 1065353216
131: 18(float) Constant 1073741824 130: 17(float) Constant 1073741824
132: 20(fvec3) ConstantComposite 130 131 62 131: 19(fvec3) ConstantComposite 129 130 61
153: TypeVector 18(float) 4 152: TypeVector 17(float) 4
154: TypePointer Output 153(fvec4) 153: TypePointer Output 152(fvec4)
155(gl_FragColor): 154(ptr) Variable Output 154(gl_FragColor): 153(ptr) Variable Output
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
85(t): 8(ptr) Variable Function 84(t): 7(ptr) Variable Function
90(f): 89(ptr) Variable Function 89(f): 88(ptr) Variable Function
97(color): 8(ptr) Variable Function 96(color): 7(ptr) Variable Function
103(e): 8(ptr) Variable Function 102(e): 7(ptr) Variable Function
104(param): 8(ptr) Variable Function 103(param): 7(ptr) Variable Function
105(param): 8(ptr) Variable Function 104(param): 7(ptr) Variable Function
106(param): 8(ptr) Variable Function 105(param): 7(ptr) Variable Function
107(param): 8(ptr) Variable Function 106(param): 7(ptr) Variable Function
126(ret): 19(ptr) Variable Function 125(ret): 18(ptr) Variable Function
133(tempArg): 8(ptr) Variable Function 132(tempArg): 7(ptr) Variable Function
134(param): 19(ptr) Variable Function 133(param): 18(ptr) Variable Function
135(param): 21(ptr) Variable Function 134(param): 20(ptr) Variable Function
136(param): 8(ptr) Variable Function 135(param): 7(ptr) Variable Function
139(arg): 19(ptr) Variable Function 138(arg): 18(ptr) Variable Function
Store 85(t) 86 Store 84(t) 85
94: 93(ptr) AccessChain 90(f) 91 93: 92(ptr) AccessChain 89(f) 90
95: 87(ivec4) Load 94 94: 86(ivec4) Load 93
96: 87(ivec4) CompositeInsert 92 95 1 95: 86(ivec4) CompositeInsert 91 94 1
Store 94 96 Store 93 95
99: 7(int) Load 85(t) 98: 6(int) Load 84(t)
100: 7(int) Load 85(t) 99: 6(int) Load 84(t)
101: 7(int) IAdd 99 100 100: 6(int) IAdd 98 99
Store 104(param) 98 Store 103(param) 97
Store 105(param) 101 Store 104(param) 100
108: 93(ptr) AccessChain 90(f) 91 107: 92(ptr) AccessChain 89(f) 90
109: 87(ivec4) Load 108 108: 86(ivec4) Load 107
110: 7(int) CompositeExtract 109 1 109: 6(int) CompositeExtract 108 1
Store 107(param) 110 Store 106(param) 109
111: 7(int) FunctionCall 16(foo(i1;i1;i1;i1;i1;i1;) 104(param) 86 105(param) 102 106(param) 107(param) 110: 6(int) FunctionCall 15(foo(i1;i1;i1;i1;i1;i1;) 103(param) 85 104(param) 101 105(param) 106(param)
112: 7(int) Load 106(param) 111: 6(int) Load 105(param)
Store 103(e) 112 Store 102(e) 111
113: 7(int) Load 107(param) 112: 6(int) Load 106(param)
114: 93(ptr) AccessChain 90(f) 91 113: 92(ptr) AccessChain 89(f) 90
115: 87(ivec4) Load 114 114: 86(ivec4) Load 113
116: 87(ivec4) CompositeInsert 113 115 1 115: 86(ivec4) CompositeInsert 112 114 1
Store 114 116 Store 113 115
Store 97(color) 111 Store 96(color) 110
118: 7(int) Load 103(e) 117: 6(int) Load 102(e)
119: 93(ptr) AccessChain 90(f) 91 118: 92(ptr) AccessChain 89(f) 90
120: 87(ivec4) Load 119 119: 86(ivec4) Load 118
121: 7(int) CompositeExtract 120 1 120: 6(int) CompositeExtract 119 1
122: 7(int) IAdd 118 121 121: 6(int) IAdd 117 120
123: 7(int) IMul 117 122 122: 6(int) IMul 116 121
124: 7(int) Load 97(color) 123: 6(int) Load 96(color)
125: 7(int) IAdd 124 123 124: 6(int) IAdd 123 122
Store 97(color) 125 Store 96(color) 124
Store 134(param) 129 Store 133(param) 128
Store 135(param) 132 Store 134(param) 131
137: 7(int) FunctionCall 26(foo2(f1;vf3;i1;) 134(param) 135(param) 136(param) 136: 6(int) FunctionCall 25(foo2(f1;vf3;i1;) 133(param) 134(param) 135(param)
138: 7(int) Load 136(param) 137: 6(int) Load 135(param)
Store 133(tempArg) 138 Store 132(tempArg) 137
Store 128(tempReturn) 137 Store 127(tempReturn) 136
140: 7(int) Load 133(tempArg) 139: 6(int) Load 132(tempArg)
141: 18(float) ConvertSToF 140 140: 17(float) ConvertSToF 139
Store 139(arg) 141 Store 138(arg) 140
142: 7(int) Load 128(tempReturn) 141: 6(int) Load 127(tempReturn)
143: 18(float) ConvertSToF 142 142: 17(float) ConvertSToF 141
Store 126(ret) 143 Store 125(ret) 142
144: 18(float) Load 126(ret) 143: 17(float) Load 125(ret)
145: 18(float) Load 139(arg) 144: 17(float) Load 138(arg)
146: 18(float) FAdd 144 145 145: 17(float) FAdd 143 144
147: 7(int) ConvertFToS 146 146: 6(int) ConvertFToS 145
148: 7(int) Load 97(color) 147: 6(int) Load 96(color)
149: 7(int) IAdd 148 147 148: 6(int) IAdd 147 146
Store 97(color) 149 Store 96(color) 148
150: 7(int) FunctionCall 29(foo3() 149: 6(int) FunctionCall 28(foo3()
151: 7(int) Load 97(color) 150: 6(int) Load 96(color)
152: 7(int) IAdd 151 150 151: 6(int) IAdd 150 149
Store 97(color) 152 Store 96(color) 151
156: 7(int) Load 97(color) 155: 6(int) Load 96(color)
157: 18(float) ConvertSToF 156 156: 17(float) ConvertSToF 155
158: 153(fvec4) CompositeConstruct 157 157 157 157 157: 152(fvec4) CompositeConstruct 156 156 156 156
Store 155(gl_FragColor) 158 Store 154(gl_FragColor) 157
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd
16(foo(i1;i1;i1;i1;i1;i1;): 7(int) Function None 9 15(foo(i1;i1;i1;i1;i1;i1;): 6(int) Function None 8
10(a): 8(ptr) FunctionParameter 9(a): 7(ptr) FunctionParameter
11(b): 7(int) FunctionParameter 10(b): 6(int) FunctionParameter
12(c): 8(ptr) FunctionParameter 11(c): 7(ptr) FunctionParameter
13(d): 7(int) FunctionParameter 12(d): 6(int) FunctionParameter
14(e): 8(ptr) FunctionParameter 13(e): 7(ptr) FunctionParameter
15(f): 8(ptr) FunctionParameter 14(f): 7(ptr) FunctionParameter
17: Label 16: Label
31(sum): 8(ptr) Variable Function 30(sum): 7(ptr) Variable Function
32: 7(int) Load 10(a) 31: 6(int) Load 9(a)
33: 7(int) IAdd 32 11(b) 32: 6(int) IAdd 31 10(b)
34: 7(int) Load 12(c) 33: 6(int) Load 11(c)
35: 7(int) IAdd 33 34 34: 6(int) IAdd 32 33
36: 7(int) IAdd 35 13(d) 35: 6(int) IAdd 34 12(d)
37: 7(int) Load 15(f) 36: 6(int) Load 14(f)
38: 7(int) IAdd 36 37 37: 6(int) IAdd 35 36
Store 31(sum) 38 Store 30(sum) 37
40: 7(int) Load 10(a) 39: 6(int) Load 9(a)
41: 7(int) IMul 40 39 40: 6(int) IMul 39 38
Store 10(a) 41 Store 9(a) 40
42: 7(int) Load 12(c) 41: 6(int) Load 11(c)
43: 7(int) IMul 42 39 42: 6(int) IMul 41 38
Store 12(c) 43 Store 11(c) 42
Store 14(e) 44 Store 13(e) 43
45: 7(int) Load 15(f) 44: 6(int) Load 14(f)
46: 7(int) IMul 45 39 45: 6(int) IMul 44 38
Store 15(f) 46 Store 14(f) 45
47: 7(int) Load 10(a) 46: 6(int) Load 9(a)
48: 7(int) IMul 39 11(b) 47: 6(int) IMul 38 10(b)
49: 7(int) IAdd 47 48 48: 6(int) IAdd 46 47
50: 7(int) Load 12(c) 49: 6(int) Load 11(c)
51: 7(int) IAdd 49 50 50: 6(int) IAdd 48 49
52: 7(int) IMul 39 13(d) 51: 6(int) IMul 38 12(d)
53: 7(int) IAdd 51 52 52: 6(int) IAdd 50 51
54: 7(int) Load 14(e) 53: 6(int) Load 13(e)
55: 7(int) IAdd 53 54 54: 6(int) IAdd 52 53
56: 7(int) Load 15(f) 55: 6(int) Load 14(f)
57: 7(int) IAdd 55 56 56: 6(int) IAdd 54 55
58: 7(int) Load 31(sum) 57: 6(int) Load 30(sum)
59: 7(int) IAdd 58 57 58: 6(int) IAdd 57 56
Store 31(sum) 59 Store 30(sum) 58
60: 7(int) Load 31(sum) 59: 6(int) Load 30(sum)
ReturnValue 60 ReturnValue 59
FunctionEnd FunctionEnd
26(foo2(f1;vf3;i1;): 7(int) Function None 22 25(foo2(f1;vf3;i1;): 6(int) Function None 21
23(a): 19(ptr) FunctionParameter 22(a): 18(ptr) FunctionParameter
24(b): 21(ptr) FunctionParameter 23(b): 20(ptr) FunctionParameter
25(r): 8(ptr) FunctionParameter 24(r): 7(ptr) FunctionParameter
27: Label 26: Label
63: 18(float) Load 23(a) 62: 17(float) Load 22(a)
64: 18(float) FMul 62 63 63: 17(float) FMul 61 62
65: 7(int) ConvertFToS 64 64: 6(int) ConvertFToS 63
Store 25(r) 65 Store 24(r) 64
67: 20(fvec3) Load 24(b) 66: 19(fvec3) Load 23(b)
68: 18(float) CompositeExtract 67 1 67: 17(float) CompositeExtract 66 1
69: 18(float) FMul 66 68 68: 17(float) FMul 65 67
70: 7(int) ConvertFToS 69 69: 6(int) ConvertFToS 68
ReturnValue 70 ReturnValue 69
FunctionEnd FunctionEnd
29(foo3(): 7(int) Function None 28 28(foo3(): 6(int) Function None 27
30: Label 29: Label
74: 18(float) Load 73(u) 73: 17(float) Load 72(u)
77: 76(bool) FOrdGreaterThan 74 75 76: 75(bool) FOrdGreaterThan 73 74
SelectionMerge 79 None SelectionMerge 78 None
BranchConditional 77 78 79 BranchConditional 76 77 78
78: Label 77: Label
Kill Kill
79: Label 78: Label
ReturnValue 83 ReturnValue 82
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 34 // Id's are bound by 33
Source GLSL 120 Source GLSL 120
Capability Shader Capability Shader
@ -14,47 +14,45 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 10 "t" Name 9 "t"
Name 15 "v" Name 14 "v"
Name 27 "gl_FragColor" Name 26 "gl_FragColor"
Name 33 "u" Name 32 "u"
Decorate 15(v) Smooth Decorate 14(v) Smooth
Decorate 27(gl_FragColor) BuiltIn FragColor Decorate 26(gl_FragColor) BuiltIn FragColor
Decorate 33(u) NoStaticUse Decorate 32(u) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 2 7: TypeVector 6(float) 2
9: TypePointer Function 8(fvec2) 8: TypePointer Function 7(fvec2)
11: TypeInt 32 0 10: TypeInt 32 0
12: 11(int) Constant 2 11: 10(int) Constant 2
13: TypeArray 8(fvec2) 12 12: TypeArray 7(fvec2) 11
14: TypePointer Input 13 13: TypePointer Input 12
15(v): 14(ptr) Variable Input 14(v): 13(ptr) Variable Input
16: TypeInt 32 1 15: TypeInt 32 1
17: 16(int) Constant 0 16: 15(int) Constant 0
18: TypePointer Input 8(fvec2) 17: TypePointer Input 7(fvec2)
21: 16(int) Constant 1 20: 15(int) Constant 1
25: TypeVector 7(float) 4 24: TypeVector 6(float) 4
26: TypePointer Output 25(fvec4) 25: TypePointer Output 24(fvec4)
27(gl_FragColor): 26(ptr) Variable Output 26(gl_FragColor): 25(ptr) Variable Output
28: 7(float) Constant 1106247680 27: 6(float) Constant 1106247680
29: 25(fvec4) ConstantComposite 28 28 28 28 28: 24(fvec4) ConstantComposite 27 27 27 27
30: 11(int) Constant 3 29: 10(int) Constant 3
31: TypeArray 25(fvec4) 30 30: TypeArray 24(fvec4) 29
32: TypePointer UniformConstant 31 31: TypePointer UniformConstant 30
33(u): 32(ptr) Variable UniformConstant 32(u): 31(ptr) Variable UniformConstant
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
10(t): 9(ptr) Variable Function 9(t): 8(ptr) Variable Function
19: 18(ptr) AccessChain 15(v) 17 18: 17(ptr) AccessChain 14(v) 16
20: 8(fvec2) Load 19 19: 7(fvec2) Load 18
22: 18(ptr) AccessChain 15(v) 21 21: 17(ptr) AccessChain 14(v) 20
23: 8(fvec2) Load 22 22: 7(fvec2) Load 21
24: 8(fvec2) FAdd 20 23 23: 7(fvec2) FAdd 19 22
Store 10(t) 24 Store 9(t) 23
Store 27(gl_FragColor) 29 Store 26(gl_FragColor) 28
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -8,7 +8,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 135 // Id's are bound by 134
Source GLSL 130 Source GLSL 130
Capability Shader Capability Shader
@ -17,205 +17,203 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 9 "s1" Name 8 "s1"
MemberName 9(s1) 0 "i" MemberName 8(s1) 0 "i"
MemberName 9(s1) 1 "f" MemberName 8(s1) 1 "f"
Name 11 "s2" Name 10 "s2"
MemberName 11(s2) 0 "i" MemberName 10(s2) 0 "i"
MemberName 11(s2) 1 "f" MemberName 10(s2) 1 "f"
MemberName 11(s2) 2 "s1_1" MemberName 10(s2) 2 "s1_1"
MemberName 11(s2) 3 "bleh" MemberName 10(s2) 3 "bleh"
Name 13 "locals2" Name 12 "locals2"
Name 14 "s3" Name 13 "s3"
MemberName 14(s3) 0 "s2_1" MemberName 13(s3) 0 "s2_1"
MemberName 14(s3) 1 "i" MemberName 13(s3) 1 "i"
MemberName 14(s3) 2 "f" MemberName 13(s3) 2 "f"
MemberName 14(s3) 3 "s1_1" MemberName 13(s3) 3 "s1_1"
Name 16 "foo3" Name 15 "foo3"
Name 37 "localFArray" Name 36 "localFArray"
Name 41 "coord" Name 40 "coord"
Name 48 "localIArray" Name 47 "localIArray"
Name 67 "x" Name 66 "x"
Name 69 "localArray" Name 68 "localArray"
Name 74 "i" Name 73 "i"
Name 81 "a" Name 80 "a"
Name 87 "condition" Name 86 "condition"
Name 95 "color" Name 94 "color"
Name 105 "gl_FragColor" Name 104 "gl_FragColor"
Name 125 "sampler" Name 124 "sampler"
Name 131 "foo" Name 130 "foo"
Name 132 "foo2" Name 131 "foo2"
Name 134 "uFloatArray" Name 133 "uFloatArray"
Decorate 41(coord) Smooth Decorate 40(coord) Smooth
Decorate 95(color) Smooth Decorate 94(color) Smooth
Decorate 105(gl_FragColor) BuiltIn FragColor Decorate 104(gl_FragColor) BuiltIn FragColor
Decorate 131(foo) NoStaticUse Decorate 130(foo) NoStaticUse
Decorate 132(foo2) NoStaticUse Decorate 131(foo2) NoStaticUse
Decorate 134(uFloatArray) NoStaticUse Decorate 133(uFloatArray) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeInt 32 1 6: TypeInt 32 1
8: TypeFloat 32 7: TypeFloat 32
9(s1): TypeStruct 7(int) 8(float) 8(s1): TypeStruct 6(int) 7(float)
10: TypeVector 8(float) 4 9: TypeVector 7(float) 4
11(s2): TypeStruct 7(int) 8(float) 9(s1) 10(fvec4) 10(s2): TypeStruct 6(int) 7(float) 8(s1) 9(fvec4)
12: TypePointer Function 11(s2) 11: TypePointer Function 10(s2)
14(s3): TypeStruct 11(s2) 7(int) 8(float) 9(s1) 13(s3): TypeStruct 10(s2) 6(int) 7(float) 8(s1)
15: TypePointer UniformConstant 14(s3) 14: TypePointer UniformConstant 13(s3)
16(foo3): 15(ptr) Variable UniformConstant 15(foo3): 14(ptr) Variable UniformConstant
17: 7(int) Constant 0 16: 6(int) Constant 0
18: TypePointer UniformConstant 11(s2) 17: TypePointer UniformConstant 10(s2)
21: TypePointer UniformConstant 7(int) 20: TypePointer UniformConstant 6(int)
24: TypeBool 23: TypeBool
28: 7(int) Constant 2 27: 6(int) Constant 2
29: 7(int) Constant 1 28: 6(int) Constant 1
30: 8(float) Constant 1065353216 29: 7(float) Constant 1065353216
31: TypePointer Function 8(float) 30: TypePointer Function 7(float)
33: TypeInt 32 0 32: TypeInt 32 0
34: 33(int) Constant 16 33: 32(int) Constant 16
35: TypeArray 8(float) 34 34: TypeArray 7(float) 33
36: TypePointer Function 35 35: TypePointer Function 34
38: 7(int) Constant 4 37: 6(int) Constant 4
39: TypeVector 8(float) 2 38: TypeVector 7(float) 2
40: TypePointer Input 39(fvec2) 39: TypePointer Input 38(fvec2)
41(coord): 40(ptr) Variable Input 40(coord): 39(ptr) Variable Input
45: 33(int) Constant 8 44: 32(int) Constant 8
46: TypeArray 7(int) 45 45: TypeArray 6(int) 44
47: TypePointer Function 46 46: TypePointer Function 45
51: TypePointer Function 7(int) 50: TypePointer Function 6(int)
68: 7(int) Constant 5 67: 6(int) Constant 5
79: 7(int) Constant 16 78: 6(int) Constant 16
83: 8(float) Constant 0 82: 7(float) Constant 0
87(condition): 21(ptr) Variable UniformConstant 86(condition): 20(ptr) Variable UniformConstant
93: 7(int) Constant 3 92: 6(int) Constant 3
94: TypePointer Input 10(fvec4) 93: TypePointer Input 9(fvec4)
95(color): 94(ptr) Variable Input 94(color): 93(ptr) Variable Input
97: TypePointer Function 10(fvec4) 96: TypePointer Function 9(fvec4)
104: TypePointer Output 10(fvec4) 103: TypePointer Output 9(fvec4)
105(gl_FragColor): 104(ptr) Variable Output 104(gl_FragColor): 103(ptr) Variable Output
122: TypeImage 8(float) 2D sampled format:Unknown 121: TypeImage 7(float) 2D sampled format:Unknown
123: TypeSampledImage 122 122: TypeSampledImage 121
124: TypePointer UniformConstant 123 123: TypePointer UniformConstant 122
125(sampler): 124(ptr) Variable UniformConstant 124(sampler): 123(ptr) Variable UniformConstant
130: TypePointer UniformConstant 9(s1) 129: TypePointer UniformConstant 8(s1)
131(foo): 130(ptr) Variable UniformConstant 130(foo): 129(ptr) Variable UniformConstant
132(foo2): 18(ptr) Variable UniformConstant 131(foo2): 17(ptr) Variable UniformConstant
133: TypePointer UniformConstant 35 132: TypePointer UniformConstant 34
134(uFloatArray): 133(ptr) Variable UniformConstant 133(uFloatArray): 132(ptr) Variable UniformConstant
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
13(locals2): 12(ptr) Variable Function 12(locals2): 11(ptr) Variable Function
37(localFArray): 36(ptr) Variable Function 36(localFArray): 35(ptr) Variable Function
48(localIArray): 47(ptr) Variable Function 47(localIArray): 46(ptr) Variable Function
67(x): 51(ptr) Variable Function 66(x): 50(ptr) Variable Function
69(localArray): 36(ptr) Variable Function 68(localArray): 35(ptr) Variable Function
74(i): 51(ptr) Variable Function 73(i): 50(ptr) Variable Function
81(a): 36(ptr) Variable Function 80(a): 35(ptr) Variable Function
19: 18(ptr) AccessChain 16(foo3) 17 18: 17(ptr) AccessChain 15(foo3) 16
20: 11(s2) Load 19 19: 10(s2) Load 18
Store 13(locals2) 20 Store 12(locals2) 19
22: 21(ptr) AccessChain 16(foo3) 17 17 21: 20(ptr) AccessChain 15(foo3) 16 16
23: 7(int) Load 22 22: 6(int) Load 21
25: 24(bool) SGreaterThan 23 17 24: 23(bool) SGreaterThan 22 16
SelectionMerge 27 None SelectionMerge 26 None
BranchConditional 25 26 53 BranchConditional 24 25 52
26: Label 25: Label
32: 31(ptr) AccessChain 13(locals2) 28 29 31: 30(ptr) AccessChain 12(locals2) 27 28
Store 32 30 Store 31 29
42: 39(fvec2) Load 41(coord) 41: 38(fvec2) Load 40(coord)
43: 8(float) CompositeExtract 42 0 42: 7(float) CompositeExtract 41 0
44: 31(ptr) AccessChain 37(localFArray) 38 43: 30(ptr) AccessChain 36(localFArray) 37
Store 44 43 Store 43 42
49: 21(ptr) AccessChain 16(foo3) 17 17 48: 20(ptr) AccessChain 15(foo3) 16 16
50: 7(int) Load 49 49: 6(int) Load 48
52: 51(ptr) AccessChain 48(localIArray) 28 51: 50(ptr) AccessChain 47(localIArray) 27
Store 52 50 Store 51 49
Branch 27 Branch 26
53: Label 52: Label
54: 39(fvec2) Load 41(coord) 53: 38(fvec2) Load 40(coord)
55: 8(float) CompositeExtract 54 0 54: 7(float) CompositeExtract 53 0
56: 31(ptr) AccessChain 13(locals2) 28 29 55: 30(ptr) AccessChain 12(locals2) 27 28
Store 56 55 Store 55 54
57: 31(ptr) AccessChain 37(localFArray) 38 56: 30(ptr) AccessChain 36(localFArray) 37
Store 57 30 Store 56 29
58: 51(ptr) AccessChain 48(localIArray) 28 57: 50(ptr) AccessChain 47(localIArray) 27
Store 58 17 Store 57 16
Branch 27 Branch 26
27: Label 26: Label
59: 51(ptr) AccessChain 48(localIArray) 28 58: 50(ptr) AccessChain 47(localIArray) 27
60: 7(int) Load 59 59: 6(int) Load 58
61: 24(bool) IEqual 60 17 60: 23(bool) IEqual 59 16
SelectionMerge 63 None SelectionMerge 62 None
BranchConditional 61 62 63 BranchConditional 60 61 62
62: Label 61: Label
64: 31(ptr) AccessChain 37(localFArray) 38 63: 30(ptr) AccessChain 36(localFArray) 37
65: 8(float) Load 64 64: 7(float) Load 63
66: 8(float) FAdd 65 30 65: 7(float) FAdd 64 29
Store 64 66 Store 63 65
Branch 63 Branch 62
63: Label 62: Label
Store 67(x) 68 Store 66(x) 67
70: 7(int) Load 67(x) 69: 6(int) Load 66(x)
71: 39(fvec2) Load 41(coord) 70: 38(fvec2) Load 40(coord)
72: 8(float) CompositeExtract 71 0 71: 7(float) CompositeExtract 70 0
73: 31(ptr) AccessChain 69(localArray) 70 72: 30(ptr) AccessChain 68(localArray) 69
Store 73 72 Store 72 71
Store 74(i) 17 Store 73(i) 16
Branch 75 Branch 74
74: Label
77: 6(int) Load 73(i)
79: 23(bool) SLessThan 77 78
LoopMerge 75 None
BranchConditional 79 76 75
76: Label
81: 6(int) Load 73(i)
83: 30(ptr) AccessChain 80(a) 81
Store 83 82
84: 6(int) Load 73(i)
85: 6(int) IAdd 84 28
Store 73(i) 85
Branch 74
75: Label 75: Label
78: 7(int) Load 74(i) 87: 6(int) Load 86(condition)
80: 24(bool) SLessThan 78 79 88: 23(bool) IEqual 87 28
LoopMerge 76 None SelectionMerge 90 None
BranchConditional 80 77 76 BranchConditional 88 89 90
77: Label 89: Label
82: 7(int) Load 74(i) 91: 34 Load 68(localArray)
84: 31(ptr) AccessChain 81(a) 82 Store 80(a) 91
Store 84 83 Branch 90
85: 7(int) Load 74(i) 90: Label
86: 7(int) IAdd 85 29 95: 9(fvec4) Load 94(color)
Store 74(i) 86 97: 96(ptr) AccessChain 12(locals2) 92
Branch 75 Store 97 95
76: Label 98: 38(fvec2) Load 40(coord)
88: 7(int) Load 87(condition) 99: 7(float) CompositeExtract 98 1
89: 24(bool) IEqual 88 29 100: 96(ptr) AccessChain 12(locals2) 92
SelectionMerge 91 None 101: 9(fvec4) Load 100
BranchConditional 89 90 91 102: 9(fvec4) CompositeInsert 99 101 2
90: Label Store 100 102
92: 35 Load 69(localArray) 105: 96(ptr) AccessChain 12(locals2) 92
Store 81(a) 92 106: 9(fvec4) Load 105
Branch 91 107: 30(ptr) AccessChain 36(localFArray) 37
91: Label 108: 7(float) Load 107
96: 10(fvec4) Load 95(color) 109: 30(ptr) AccessChain 12(locals2) 27 28
98: 97(ptr) AccessChain 13(locals2) 93 110: 7(float) Load 109
Store 98 96 111: 7(float) FAdd 108 110
99: 39(fvec2) Load 41(coord) 112: 6(int) Load 66(x)
100: 8(float) CompositeExtract 99 1 113: 30(ptr) AccessChain 68(localArray) 112
101: 97(ptr) AccessChain 13(locals2) 93 114: 7(float) Load 113
102: 10(fvec4) Load 101 115: 7(float) FAdd 111 114
103: 10(fvec4) CompositeInsert 100 102 2 116: 6(int) Load 66(x)
Store 101 103 117: 30(ptr) AccessChain 80(a) 116
106: 97(ptr) AccessChain 13(locals2) 93 118: 7(float) Load 117
107: 10(fvec4) Load 106 119: 7(float) FAdd 115 118
108: 31(ptr) AccessChain 37(localFArray) 38 120: 9(fvec4) VectorTimesScalar 106 119
109: 8(float) Load 108 125: 122 Load 124(sampler)
110: 31(ptr) AccessChain 13(locals2) 28 29 126: 38(fvec2) Load 40(coord)
111: 8(float) Load 110 127: 9(fvec4) ImageSampleImplicitLod 125 126
112: 8(float) FAdd 109 111 128: 9(fvec4) FMul 120 127
113: 7(int) Load 67(x) Store 104(gl_FragColor) 128
114: 31(ptr) AccessChain 69(localArray) 113
115: 8(float) Load 114
116: 8(float) FAdd 112 115
117: 7(int) Load 67(x)
118: 31(ptr) AccessChain 81(a) 117
119: 8(float) Load 118
120: 8(float) FAdd 116 119
121: 10(fvec4) VectorTimesScalar 107 120
126: 123 Load 125(sampler)
127: 39(fvec2) Load 41(coord)
128: 10(fvec4) ImageSampleImplicitLod 126 127
129: 10(fvec4) FMul 121 128
Store 105(gl_FragColor) 129
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

File diff suppressed because it is too large Load Diff

View File

@ -7,7 +7,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 196 // Id's are bound by 195
Source GLSL 130 Source GLSL 130
Capability Shader Capability Shader
@ -16,344 +16,342 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 10 "color" Name 9 "color"
Name 12 "BaseColor" Name 11 "BaseColor"
Name 25 "d4" Name 24 "d4"
Name 30 "bigColor4" Name 29 "bigColor4"
Name 84 "d13" Name 83 "d13"
Name 149 "gl_FragColor" Name 148 "gl_FragColor"
Name 151 "bigColor" Name 150 "bigColor"
Name 152 "bigColor1_1" Name 151 "bigColor1_1"
Name 153 "bigColor1_2" Name 152 "bigColor1_2"
Name 154 "bigColor1_3" Name 153 "bigColor1_3"
Name 155 "bigColor2" Name 154 "bigColor2"
Name 156 "bigColor3" Name 155 "bigColor3"
Name 157 "bigColor5" Name 156 "bigColor5"
Name 158 "bigColor6" Name 157 "bigColor6"
Name 159 "bigColor7" Name 158 "bigColor7"
Name 160 "bigColor8" Name 159 "bigColor8"
Name 161 "d" Name 160 "d"
Name 162 "d2" Name 161 "d2"
Name 163 "d3" Name 162 "d3"
Name 164 "d5" Name 163 "d5"
Name 165 "d6" Name 164 "d6"
Name 166 "d7" Name 165 "d7"
Name 167 "d8" Name 166 "d8"
Name 168 "d9" Name 167 "d9"
Name 169 "d10" Name 168 "d10"
Name 170 "d11" Name 169 "d11"
Name 171 "d12" Name 170 "d12"
Name 172 "d14" Name 171 "d14"
Name 173 "d15" Name 172 "d15"
Name 174 "d16" Name 173 "d16"
Name 175 "d17" Name 174 "d17"
Name 176 "d18" Name 175 "d18"
Name 177 "d19" Name 176 "d19"
Name 178 "d20" Name 177 "d20"
Name 179 "d21" Name 178 "d21"
Name 180 "d22" Name 179 "d22"
Name 181 "d23" Name 180 "d23"
Name 182 "d24" Name 181 "d24"
Name 183 "d25" Name 182 "d25"
Name 184 "d26" Name 183 "d26"
Name 185 "d27" Name 184 "d27"
Name 186 "d28" Name 185 "d28"
Name 187 "d29" Name 186 "d29"
Name 188 "d30" Name 187 "d30"
Name 189 "d31" Name 188 "d31"
Name 190 "d32" Name 189 "d32"
Name 191 "d33" Name 190 "d33"
Name 192 "d34" Name 191 "d34"
Name 195 "Count" Name 194 "Count"
Decorate 12(BaseColor) Smooth Decorate 11(BaseColor) Smooth
Decorate 149(gl_FragColor) BuiltIn FragColor Decorate 148(gl_FragColor) BuiltIn FragColor
Decorate 151(bigColor) NoStaticUse Decorate 150(bigColor) NoStaticUse
Decorate 152(bigColor1_1) NoStaticUse Decorate 151(bigColor1_1) NoStaticUse
Decorate 153(bigColor1_2) NoStaticUse Decorate 152(bigColor1_2) NoStaticUse
Decorate 154(bigColor1_3) NoStaticUse Decorate 153(bigColor1_3) NoStaticUse
Decorate 155(bigColor2) NoStaticUse Decorate 154(bigColor2) NoStaticUse
Decorate 156(bigColor3) NoStaticUse Decorate 155(bigColor3) NoStaticUse
Decorate 157(bigColor5) NoStaticUse Decorate 156(bigColor5) NoStaticUse
Decorate 158(bigColor6) NoStaticUse Decorate 157(bigColor6) NoStaticUse
Decorate 159(bigColor7) NoStaticUse Decorate 158(bigColor7) NoStaticUse
Decorate 160(bigColor8) NoStaticUse Decorate 159(bigColor8) NoStaticUse
Decorate 161(d) NoStaticUse Decorate 160(d) NoStaticUse
Decorate 162(d2) NoStaticUse Decorate 161(d2) NoStaticUse
Decorate 163(d3) NoStaticUse Decorate 162(d3) NoStaticUse
Decorate 164(d5) NoStaticUse Decorate 163(d5) NoStaticUse
Decorate 165(d6) NoStaticUse Decorate 164(d6) NoStaticUse
Decorate 166(d7) NoStaticUse Decorate 165(d7) NoStaticUse
Decorate 167(d8) NoStaticUse Decorate 166(d8) NoStaticUse
Decorate 168(d9) NoStaticUse Decorate 167(d9) NoStaticUse
Decorate 169(d10) NoStaticUse Decorate 168(d10) NoStaticUse
Decorate 170(d11) NoStaticUse Decorate 169(d11) NoStaticUse
Decorate 171(d12) NoStaticUse Decorate 170(d12) NoStaticUse
Decorate 172(d14) NoStaticUse Decorate 171(d14) NoStaticUse
Decorate 173(d15) NoStaticUse Decorate 172(d15) NoStaticUse
Decorate 174(d16) NoStaticUse Decorate 173(d16) NoStaticUse
Decorate 175(d17) NoStaticUse Decorate 174(d17) NoStaticUse
Decorate 176(d18) NoStaticUse Decorate 175(d18) NoStaticUse
Decorate 177(d19) NoStaticUse Decorate 176(d19) NoStaticUse
Decorate 178(d20) NoStaticUse Decorate 177(d20) NoStaticUse
Decorate 179(d21) NoStaticUse Decorate 178(d21) NoStaticUse
Decorate 180(d22) NoStaticUse Decorate 179(d22) NoStaticUse
Decorate 181(d23) NoStaticUse Decorate 180(d23) NoStaticUse
Decorate 182(d24) NoStaticUse Decorate 181(d24) NoStaticUse
Decorate 183(d25) NoStaticUse Decorate 182(d25) NoStaticUse
Decorate 184(d26) NoStaticUse Decorate 183(d26) NoStaticUse
Decorate 185(d27) NoStaticUse Decorate 184(d27) NoStaticUse
Decorate 186(d28) NoStaticUse Decorate 185(d28) NoStaticUse
Decorate 187(d29) NoStaticUse Decorate 186(d29) NoStaticUse
Decorate 188(d30) NoStaticUse Decorate 187(d30) NoStaticUse
Decorate 189(d31) NoStaticUse Decorate 188(d31) NoStaticUse
Decorate 190(d32) NoStaticUse Decorate 189(d32) NoStaticUse
Decorate 191(d33) NoStaticUse Decorate 190(d33) NoStaticUse
Decorate 192(d34) NoStaticUse Decorate 191(d34) NoStaticUse
Decorate 195(Count) NoStaticUse Decorate 194(Count) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 4 7: TypeVector 6(float) 4
9: TypePointer Function 8(fvec4) 8: TypePointer Function 7(fvec4)
11: TypePointer Input 8(fvec4) 10: TypePointer Input 7(fvec4)
12(BaseColor): 11(ptr) Variable Input 11(BaseColor): 10(ptr) Variable Input
18: TypeBool 17: TypeBool
19: 18(bool) ConstantTrue 18: 17(bool) ConstantTrue
24: TypePointer UniformConstant 7(float) 23: TypePointer UniformConstant 6(float)
25(d4): 24(ptr) Variable UniformConstant 24(d4): 23(ptr) Variable UniformConstant
29: TypePointer UniformConstant 8(fvec4) 28: TypePointer UniformConstant 7(fvec4)
30(bigColor4): 29(ptr) Variable UniformConstant 29(bigColor4): 28(ptr) Variable UniformConstant
40: 7(float) Constant 1073741824 39: 6(float) Constant 1073741824
54: 7(float) Constant 1065353216 53: 6(float) Constant 1065353216
58: 18(bool) ConstantFalse 57: 17(bool) ConstantFalse
84(d13): 24(ptr) Variable UniformConstant 83(d13): 23(ptr) Variable UniformConstant
148: TypePointer Output 8(fvec4) 147: TypePointer Output 7(fvec4)
149(gl_FragColor): 148(ptr) Variable Output 148(gl_FragColor): 147(ptr) Variable Output
151(bigColor): 29(ptr) Variable UniformConstant 150(bigColor): 28(ptr) Variable UniformConstant
152(bigColor1_1): 29(ptr) Variable UniformConstant 151(bigColor1_1): 28(ptr) Variable UniformConstant
153(bigColor1_2): 29(ptr) Variable UniformConstant 152(bigColor1_2): 28(ptr) Variable UniformConstant
154(bigColor1_3): 29(ptr) Variable UniformConstant 153(bigColor1_3): 28(ptr) Variable UniformConstant
155(bigColor2): 29(ptr) Variable UniformConstant 154(bigColor2): 28(ptr) Variable UniformConstant
156(bigColor3): 29(ptr) Variable UniformConstant 155(bigColor3): 28(ptr) Variable UniformConstant
157(bigColor5): 29(ptr) Variable UniformConstant 156(bigColor5): 28(ptr) Variable UniformConstant
158(bigColor6): 29(ptr) Variable UniformConstant 157(bigColor6): 28(ptr) Variable UniformConstant
159(bigColor7): 29(ptr) Variable UniformConstant 158(bigColor7): 28(ptr) Variable UniformConstant
160(bigColor8): 29(ptr) Variable UniformConstant 159(bigColor8): 28(ptr) Variable UniformConstant
161(d): 24(ptr) Variable UniformConstant 160(d): 23(ptr) Variable UniformConstant
162(d2): 24(ptr) Variable UniformConstant 161(d2): 23(ptr) Variable UniformConstant
163(d3): 24(ptr) Variable UniformConstant 162(d3): 23(ptr) Variable UniformConstant
164(d5): 24(ptr) Variable UniformConstant 163(d5): 23(ptr) Variable UniformConstant
165(d6): 24(ptr) Variable UniformConstant 164(d6): 23(ptr) Variable UniformConstant
166(d7): 24(ptr) Variable UniformConstant 165(d7): 23(ptr) Variable UniformConstant
167(d8): 24(ptr) Variable UniformConstant 166(d8): 23(ptr) Variable UniformConstant
168(d9): 24(ptr) Variable UniformConstant 167(d9): 23(ptr) Variable UniformConstant
169(d10): 24(ptr) Variable UniformConstant 168(d10): 23(ptr) Variable UniformConstant
170(d11): 24(ptr) Variable UniformConstant 169(d11): 23(ptr) Variable UniformConstant
171(d12): 24(ptr) Variable UniformConstant 170(d12): 23(ptr) Variable UniformConstant
172(d14): 24(ptr) Variable UniformConstant 171(d14): 23(ptr) Variable UniformConstant
173(d15): 24(ptr) Variable UniformConstant 172(d15): 23(ptr) Variable UniformConstant
174(d16): 24(ptr) Variable UniformConstant 173(d16): 23(ptr) Variable UniformConstant
175(d17): 24(ptr) Variable UniformConstant 174(d17): 23(ptr) Variable UniformConstant
176(d18): 24(ptr) Variable UniformConstant 175(d18): 23(ptr) Variable UniformConstant
177(d19): 24(ptr) Variable UniformConstant 176(d19): 23(ptr) Variable UniformConstant
178(d20): 24(ptr) Variable UniformConstant 177(d20): 23(ptr) Variable UniformConstant
179(d21): 24(ptr) Variable UniformConstant 178(d21): 23(ptr) Variable UniformConstant
180(d22): 24(ptr) Variable UniformConstant 179(d22): 23(ptr) Variable UniformConstant
181(d23): 24(ptr) Variable UniformConstant 180(d23): 23(ptr) Variable UniformConstant
182(d24): 24(ptr) Variable UniformConstant 181(d24): 23(ptr) Variable UniformConstant
183(d25): 24(ptr) Variable UniformConstant 182(d25): 23(ptr) Variable UniformConstant
184(d26): 24(ptr) Variable UniformConstant 183(d26): 23(ptr) Variable UniformConstant
185(d27): 24(ptr) Variable UniformConstant 184(d27): 23(ptr) Variable UniformConstant
186(d28): 24(ptr) Variable UniformConstant 185(d28): 23(ptr) Variable UniformConstant
187(d29): 24(ptr) Variable UniformConstant 186(d29): 23(ptr) Variable UniformConstant
188(d30): 24(ptr) Variable UniformConstant 187(d30): 23(ptr) Variable UniformConstant
189(d31): 24(ptr) Variable UniformConstant 188(d31): 23(ptr) Variable UniformConstant
190(d32): 24(ptr) Variable UniformConstant 189(d32): 23(ptr) Variable UniformConstant
191(d33): 24(ptr) Variable UniformConstant 190(d33): 23(ptr) Variable UniformConstant
192(d34): 24(ptr) Variable UniformConstant 191(d34): 23(ptr) Variable UniformConstant
193: TypeInt 32 1 192: TypeInt 32 1
194: TypePointer UniformConstant 193(int) 193: TypePointer UniformConstant 192(int)
195(Count): 194(ptr) Variable UniformConstant 194(Count): 193(ptr) Variable UniformConstant
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
10(color): 9(ptr) Variable Function 9(color): 8(ptr) Variable Function
13: 8(fvec4) Load 12(BaseColor) 12: 7(fvec4) Load 11(BaseColor)
Store 10(color) 13 Store 9(color) 12
Branch 14 Branch 13
14: Label 13: Label
17: 18(bool) Phi 19 5 58 50 58 65 16: 17(bool) Phi 18 5 57 49 57 64
LoopMerge 15 None LoopMerge 14 None
Branch 20 Branch 19
20: Label 19: Label
SelectionMerge 16 None SelectionMerge 15 None
BranchConditional 17 16 21 BranchConditional 16 15 20
21: Label 20: Label
22: 8(fvec4) Load 10(color) 21: 7(fvec4) Load 9(color)
23: 7(float) CompositeExtract 22 2 22: 6(float) CompositeExtract 21 2
26: 7(float) Load 25(d4) 25: 6(float) Load 24(d4)
27: 18(bool) FOrdLessThan 23 26 26: 17(bool) FOrdLessThan 22 25
SelectionMerge 28 None SelectionMerge 27 None
BranchConditional 27 28 15 BranchConditional 26 27 14
28: Label 27: Label
Branch 16 Branch 15
16: Label
31: 8(fvec4) Load 30(bigColor4)
32: 8(fvec4) Load 10(color)
33: 8(fvec4) FAdd 32 31
Store 10(color) 33
34: 8(fvec4) Load 10(color)
35: 7(float) CompositeExtract 34 0
36: 7(float) Load 25(d4)
37: 18(bool) FOrdLessThan 35 36
SelectionMerge 39 None
BranchConditional 37 38 39
38: Label
41: 8(fvec4) Load 10(color)
42: 7(float) CompositeExtract 41 2
43: 7(float) FAdd 42 40
44: 8(fvec4) Load 10(color)
45: 8(fvec4) CompositeInsert 43 44 2
Store 10(color) 45
46: 8(fvec4) Load 10(color)
47: 7(float) CompositeExtract 46 2
48: 7(float) Load 25(d4)
49: 18(bool) FOrdLessThan 47 48
SelectionMerge 51 None
BranchConditional 49 50 51
50: Label
52: 8(fvec4) Load 10(color)
53: 7(float) CompositeExtract 52 0
55: 7(float) FAdd 53 54
56: 8(fvec4) Load 10(color)
57: 8(fvec4) CompositeInsert 55 56 0
Store 10(color) 57
Branch 14
51: Label
Branch 39
39: Label
60: 8(fvec4) Load 10(color)
61: 7(float) CompositeExtract 60 1
62: 7(float) Load 25(d4)
63: 18(bool) FOrdLessThan 61 62
SelectionMerge 65 None
BranchConditional 63 64 72
64: Label
66: 7(float) Load 25(d4)
67: 8(fvec4) Load 10(color)
68: 7(float) CompositeExtract 67 1
69: 7(float) FAdd 68 66
70: 8(fvec4) Load 10(color)
71: 8(fvec4) CompositeInsert 69 70 1
Store 10(color) 71
Branch 65
72: Label
73: 7(float) Load 25(d4)
74: 8(fvec4) Load 10(color)
75: 7(float) CompositeExtract 74 0
76: 7(float) FAdd 75 73
77: 8(fvec4) Load 10(color)
78: 8(fvec4) CompositeInsert 76 77 0
Store 10(color) 78
Branch 65
65: Label
Branch 14
15: Label 15: Label
Branch 79 30: 7(fvec4) Load 29(bigColor4)
31: 7(fvec4) Load 9(color)
32: 7(fvec4) FAdd 31 30
Store 9(color) 32
33: 7(fvec4) Load 9(color)
34: 6(float) CompositeExtract 33 0
35: 6(float) Load 24(d4)
36: 17(bool) FOrdLessThan 34 35
SelectionMerge 38 None
BranchConditional 36 37 38
37: Label
40: 7(fvec4) Load 9(color)
41: 6(float) CompositeExtract 40 2
42: 6(float) FAdd 41 39
43: 7(fvec4) Load 9(color)
44: 7(fvec4) CompositeInsert 42 43 2
Store 9(color) 44
45: 7(fvec4) Load 9(color)
46: 6(float) CompositeExtract 45 2
47: 6(float) Load 24(d4)
48: 17(bool) FOrdLessThan 46 47
SelectionMerge 50 None
BranchConditional 48 49 50
49: Label
51: 7(fvec4) Load 9(color)
52: 6(float) CompositeExtract 51 0
54: 6(float) FAdd 52 53
55: 7(fvec4) Load 9(color)
56: 7(fvec4) CompositeInsert 54 55 0
Store 9(color) 56
Branch 13
50: Label
Branch 38
38: Label
59: 7(fvec4) Load 9(color)
60: 6(float) CompositeExtract 59 1
61: 6(float) Load 24(d4)
62: 17(bool) FOrdLessThan 60 61
SelectionMerge 64 None
BranchConditional 62 63 71
63: Label
65: 6(float) Load 24(d4)
66: 7(fvec4) Load 9(color)
67: 6(float) CompositeExtract 66 1
68: 6(float) FAdd 67 65
69: 7(fvec4) Load 9(color)
70: 7(fvec4) CompositeInsert 68 69 1
Store 9(color) 70
Branch 64
71: Label
72: 6(float) Load 24(d4)
73: 7(fvec4) Load 9(color)
74: 6(float) CompositeExtract 73 0
75: 6(float) FAdd 74 72
76: 7(fvec4) Load 9(color)
77: 7(fvec4) CompositeInsert 75 76 0
Store 9(color) 77
Branch 64
64: Label
Branch 13
14: Label
Branch 78
78: Label
81: 7(fvec4) Load 9(color)
82: 6(float) CompositeExtract 81 3
84: 6(float) Load 83(d13)
85: 17(bool) FOrdLessThan 82 84
LoopMerge 79 None
BranchConditional 85 80 79
80: Label
86: 7(fvec4) Load 9(color)
87: 6(float) CompositeExtract 86 2
88: 6(float) Load 83(d13)
89: 17(bool) FOrdLessThan 87 88
SelectionMerge 91 None
BranchConditional 89 90 95
90: Label
92: 7(fvec4) Load 9(color)
93: 7(fvec4) CompositeConstruct 53 53 53 53
94: 7(fvec4) FAdd 92 93
Store 9(color) 94
Branch 91
95: Label
96: 7(fvec4) Load 9(color)
97: 7(fvec4) CompositeConstruct 53 53 53 53
98: 7(fvec4) FSub 96 97
Store 9(color) 98
Branch 91
91: Label
99: 7(fvec4) Load 29(bigColor4)
100: 7(fvec4) Load 9(color)
101: 7(fvec4) FAdd 100 99
Store 9(color) 101
102: 7(fvec4) Load 9(color)
103: 6(float) CompositeExtract 102 0
104: 6(float) Load 24(d4)
105: 17(bool) FOrdLessThan 103 104
SelectionMerge 107 None
BranchConditional 105 106 107
106: Label
108: 7(fvec4) Load 9(color)
109: 6(float) CompositeExtract 108 2
110: 6(float) FAdd 109 39
111: 7(fvec4) Load 9(color)
112: 7(fvec4) CompositeInsert 110 111 2
Store 9(color) 112
113: 7(fvec4) Load 9(color)
114: 6(float) CompositeExtract 113 2
115: 6(float) Load 24(d4)
116: 17(bool) FOrdLessThan 114 115
SelectionMerge 118 None
BranchConditional 116 117 118
117: Label
119: 7(fvec4) Load 9(color)
120: 6(float) CompositeExtract 119 0
121: 6(float) FAdd 120 53
122: 7(fvec4) Load 9(color)
123: 7(fvec4) CompositeInsert 121 122 0
Store 9(color) 123
Branch 78
118: Label
Branch 107
107: Label
125: 7(fvec4) Load 9(color)
126: 6(float) CompositeExtract 125 1
127: 6(float) Load 24(d4)
128: 17(bool) FOrdLessThan 126 127
SelectionMerge 130 None
BranchConditional 128 129 137
129: Label
131: 6(float) Load 24(d4)
132: 7(fvec4) Load 9(color)
133: 6(float) CompositeExtract 132 1
134: 6(float) FAdd 133 131
135: 7(fvec4) Load 9(color)
136: 7(fvec4) CompositeInsert 134 135 1
Store 9(color) 136
Branch 130
137: Label
138: 6(float) Load 24(d4)
139: 7(fvec4) Load 9(color)
140: 6(float) CompositeExtract 139 0
141: 6(float) FAdd 140 138
142: 7(fvec4) Load 9(color)
143: 7(fvec4) CompositeInsert 141 142 0
Store 9(color) 143
Branch 130
130: Label
Branch 78
79: Label 79: Label
82: 8(fvec4) Load 10(color) 144: 7(fvec4) Load 9(color)
83: 7(float) CompositeExtract 82 3 145: 7(fvec4) CompositeConstruct 53 53 53 53
85: 7(float) Load 84(d13) 146: 7(fvec4) FAdd 144 145
86: 18(bool) FOrdLessThan 83 85 Store 9(color) 146
LoopMerge 80 None 149: 7(fvec4) Load 9(color)
BranchConditional 86 81 80 Store 148(gl_FragColor) 149
81: Label
87: 8(fvec4) Load 10(color)
88: 7(float) CompositeExtract 87 2
89: 7(float) Load 84(d13)
90: 18(bool) FOrdLessThan 88 89
SelectionMerge 92 None
BranchConditional 90 91 96
91: Label
93: 8(fvec4) Load 10(color)
94: 8(fvec4) CompositeConstruct 54 54 54 54
95: 8(fvec4) FAdd 93 94
Store 10(color) 95
Branch 92
96: Label
97: 8(fvec4) Load 10(color)
98: 8(fvec4) CompositeConstruct 54 54 54 54
99: 8(fvec4) FSub 97 98
Store 10(color) 99
Branch 92
92: Label
100: 8(fvec4) Load 30(bigColor4)
101: 8(fvec4) Load 10(color)
102: 8(fvec4) FAdd 101 100
Store 10(color) 102
103: 8(fvec4) Load 10(color)
104: 7(float) CompositeExtract 103 0
105: 7(float) Load 25(d4)
106: 18(bool) FOrdLessThan 104 105
SelectionMerge 108 None
BranchConditional 106 107 108
107: Label
109: 8(fvec4) Load 10(color)
110: 7(float) CompositeExtract 109 2
111: 7(float) FAdd 110 40
112: 8(fvec4) Load 10(color)
113: 8(fvec4) CompositeInsert 111 112 2
Store 10(color) 113
114: 8(fvec4) Load 10(color)
115: 7(float) CompositeExtract 114 2
116: 7(float) Load 25(d4)
117: 18(bool) FOrdLessThan 115 116
SelectionMerge 119 None
BranchConditional 117 118 119
118: Label
120: 8(fvec4) Load 10(color)
121: 7(float) CompositeExtract 120 0
122: 7(float) FAdd 121 54
123: 8(fvec4) Load 10(color)
124: 8(fvec4) CompositeInsert 122 123 0
Store 10(color) 124
Branch 79
119: Label
Branch 108
108: Label
126: 8(fvec4) Load 10(color)
127: 7(float) CompositeExtract 126 1
128: 7(float) Load 25(d4)
129: 18(bool) FOrdLessThan 127 128
SelectionMerge 131 None
BranchConditional 129 130 138
130: Label
132: 7(float) Load 25(d4)
133: 8(fvec4) Load 10(color)
134: 7(float) CompositeExtract 133 1
135: 7(float) FAdd 134 132
136: 8(fvec4) Load 10(color)
137: 8(fvec4) CompositeInsert 135 136 1
Store 10(color) 137
Branch 131
138: Label
139: 7(float) Load 25(d4)
140: 8(fvec4) Load 10(color)
141: 7(float) CompositeExtract 140 0
142: 7(float) FAdd 141 139
143: 8(fvec4) Load 10(color)
144: 8(fvec4) CompositeInsert 142 143 0
Store 10(color) 144
Branch 131
131: Label
Branch 79
80: Label
145: 8(fvec4) Load 10(color)
146: 8(fvec4) CompositeConstruct 54 54 54 54
147: 8(fvec4) FAdd 145 146
Store 10(color) 147
150: 8(fvec4) Load 10(color)
Store 149(gl_FragColor) 150
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked vertex stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 94 // Id's are bound by 93
Source GLSL 130 Source GLSL 130
Capability Shader Capability Shader
@ -13,128 +13,126 @@ Linked vertex stage:
MemoryModel Logical GLSL450 MemoryModel Logical GLSL450
EntryPoint Vertex 4 "main" EntryPoint Vertex 4 "main"
Name 4 "main" Name 4 "main"
Name 15 "xf(mf33;vf3;" Name 14 "xf(mf33;vf3;"
Name 13 "m" Name 12 "m"
Name 14 "v" Name 13 "v"
Name 22 "Mat3(mf44;" Name 21 "Mat3(mf44;"
Name 21 "m" Name 20 "m"
Name 27 "mxv(mf44;vf3;" Name 26 "mxv(mf44;vf3;"
Name 25 "m4" Name 24 "m4"
Name 26 "v" Name 25 "v"
Name 64 "param" Name 63 "param"
Name 70 "gl_Position" Name 69 "gl_Position"
Name 72 "m4" Name 71 "m4"
Name 74 "v3" Name 73 "v3"
Name 75 "param" Name 74 "param"
Name 77 "param" Name 76 "param"
Name 81 "m3" Name 80 "m3"
Name 82 "param" Name 81 "param"
Name 84 "param" Name 83 "param"
Name 93 "gl_VertexID" Name 92 "gl_VertexID"
Decorate 70(gl_Position) BuiltIn Position Decorate 69(gl_Position) BuiltIn Position
Decorate 93(gl_VertexID) BuiltIn VertexId Decorate 92(gl_VertexID) BuiltIn VertexId
Decorate 93(gl_VertexID) NoStaticUse Decorate 92(gl_VertexID) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 3 7: TypeVector 6(float) 3
9: TypeMatrix 8(fvec3) 3 8: TypeMatrix 7(fvec3) 3
10: TypePointer Function 9 9: TypePointer Function 8
11: TypePointer Function 8(fvec3) 10: TypePointer Function 7(fvec3)
12: TypeFunction 8(fvec3) 10(ptr) 11(ptr) 11: TypeFunction 7(fvec3) 9(ptr) 10(ptr)
17: TypeVector 7(float) 4 16: TypeVector 6(float) 4
18: TypeMatrix 17(fvec4) 4 17: TypeMatrix 16(fvec4) 4
19: TypePointer Function 18 18: TypePointer Function 17
20: TypeFunction 9 19(ptr) 19: TypeFunction 8 18(ptr)
24: TypeFunction 8(fvec3) 19(ptr) 11(ptr) 23: TypeFunction 7(fvec3) 18(ptr) 10(ptr)
33: TypeInt 32 1 32: TypeInt 32 1
34: 33(int) Constant 0 33: 32(int) Constant 0
35: TypePointer Function 17(fvec4) 34: TypePointer Function 16(fvec4)
39: 33(int) Constant 1 38: 32(int) Constant 1
43: 33(int) Constant 2 42: 32(int) Constant 2
47: 7(float) Constant 1065353216 46: 6(float) Constant 1065353216
48: 7(float) Constant 0 47: 6(float) Constant 0
69: TypePointer Output 17(fvec4) 68: TypePointer Output 16(fvec4)
70(gl_Position): 69(ptr) Variable Output 69(gl_Position): 68(ptr) Variable Output
71: TypePointer UniformConstant 18 70: TypePointer UniformConstant 17
72(m4): 71(ptr) Variable UniformConstant 71(m4): 70(ptr) Variable UniformConstant
73: TypePointer Input 8(fvec3) 72: TypePointer Input 7(fvec3)
74(v3): 73(ptr) Variable Input 73(v3): 72(ptr) Variable Input
80: TypePointer UniformConstant 9 79: TypePointer UniformConstant 8
81(m3): 80(ptr) Variable UniformConstant 80(m3): 79(ptr) Variable UniformConstant
92: TypePointer Input 33(int) 91: TypePointer Input 32(int)
93(gl_VertexID): 92(ptr) Variable Input 92(gl_VertexID): 91(ptr) Variable Input
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
75(param): 19(ptr) Variable Function 74(param): 18(ptr) Variable Function
77(param): 11(ptr) Variable Function 76(param): 10(ptr) Variable Function
82(param): 10(ptr) Variable Function 81(param): 9(ptr) Variable Function
84(param): 11(ptr) Variable Function 83(param): 10(ptr) Variable Function
76: 18 Load 72(m4) 75: 17 Load 71(m4)
Store 75(param) 76 Store 74(param) 75
78: 8(fvec3) Load 74(v3) 77: 7(fvec3) Load 73(v3)
Store 77(param) 78 Store 76(param) 77
79: 8(fvec3) FunctionCall 27(mxv(mf44;vf3;) 75(param) 77(param) 78: 7(fvec3) FunctionCall 26(mxv(mf44;vf3;) 74(param) 76(param)
83: 9 Load 81(m3) 82: 8 Load 80(m3)
Store 82(param) 83 Store 81(param) 82
85: 8(fvec3) Load 74(v3) 84: 7(fvec3) Load 73(v3)
Store 84(param) 85 Store 83(param) 84
86: 8(fvec3) FunctionCall 15(xf(mf33;vf3;) 82(param) 84(param) 85: 7(fvec3) FunctionCall 14(xf(mf33;vf3;) 81(param) 83(param)
87: 8(fvec3) FAdd 79 86 86: 7(fvec3) FAdd 78 85
88: 7(float) CompositeExtract 87 0 87: 6(float) CompositeExtract 86 0
89: 7(float) CompositeExtract 87 1 88: 6(float) CompositeExtract 86 1
90: 7(float) CompositeExtract 87 2 89: 6(float) CompositeExtract 86 2
91: 17(fvec4) CompositeConstruct 88 89 90 47 90: 16(fvec4) CompositeConstruct 87 88 89 46
Store 70(gl_Position) 91 Store 69(gl_Position) 90
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd
15(xf(mf33;vf3;): 8(fvec3) Function None 12 14(xf(mf33;vf3;): 7(fvec3) Function None 11
13(m): 10(ptr) FunctionParameter 12(m): 9(ptr) FunctionParameter
14(v): 11(ptr) FunctionParameter 13(v): 10(ptr) FunctionParameter
16: Label 15: Label
29: 8(fvec3) Load 14(v) 28: 7(fvec3) Load 13(v)
30: 9 Load 13(m) 29: 8 Load 12(m)
31: 8(fvec3) VectorTimesMatrix 29 30 30: 7(fvec3) VectorTimesMatrix 28 29
ReturnValue 31 ReturnValue 30
FunctionEnd FunctionEnd
22(Mat3(mf44;): 9 Function None 20 21(Mat3(mf44;): 8 Function None 19
21(m): 19(ptr) FunctionParameter 20(m): 18(ptr) FunctionParameter
23: Label 22: Label
36: 35(ptr) AccessChain 21(m) 34 35: 34(ptr) AccessChain 20(m) 33
37: 17(fvec4) Load 36 36: 16(fvec4) Load 35
38: 8(fvec3) VectorShuffle 37 37 0 1 2 37: 7(fvec3) VectorShuffle 36 36 0 1 2
40: 35(ptr) AccessChain 21(m) 39 39: 34(ptr) AccessChain 20(m) 38
41: 17(fvec4) Load 40 40: 16(fvec4) Load 39
42: 8(fvec3) VectorShuffle 41 41 0 1 2 41: 7(fvec3) VectorShuffle 40 40 0 1 2
44: 35(ptr) AccessChain 21(m) 43 43: 34(ptr) AccessChain 20(m) 42
45: 17(fvec4) Load 44 44: 16(fvec4) Load 43
46: 8(fvec3) VectorShuffle 45 45 0 1 2 45: 7(fvec3) VectorShuffle 44 44 0 1 2
49: 7(float) CompositeExtract 38 0 48: 6(float) CompositeExtract 37 0
50: 7(float) CompositeExtract 38 1 49: 6(float) CompositeExtract 37 1
51: 7(float) CompositeExtract 38 2 50: 6(float) CompositeExtract 37 2
52: 7(float) CompositeExtract 42 0 51: 6(float) CompositeExtract 41 0
53: 7(float) CompositeExtract 42 1 52: 6(float) CompositeExtract 41 1
54: 7(float) CompositeExtract 42 2 53: 6(float) CompositeExtract 41 2
55: 7(float) CompositeExtract 46 0 54: 6(float) CompositeExtract 45 0
56: 7(float) CompositeExtract 46 1 55: 6(float) CompositeExtract 45 1
57: 7(float) CompositeExtract 46 2 56: 6(float) CompositeExtract 45 2
58: 8(fvec3) CompositeConstruct 49 50 51 57: 7(fvec3) CompositeConstruct 48 49 50
59: 8(fvec3) CompositeConstruct 52 53 54 58: 7(fvec3) CompositeConstruct 51 52 53
60: 8(fvec3) CompositeConstruct 55 56 57 59: 7(fvec3) CompositeConstruct 54 55 56
61: 9 CompositeConstruct 58 59 60 60: 8 CompositeConstruct 57 58 59
ReturnValue 61 ReturnValue 60
FunctionEnd FunctionEnd
27(mxv(mf44;vf3;): 8(fvec3) Function None 24 26(mxv(mf44;vf3;): 7(fvec3) Function None 23
25(m4): 19(ptr) FunctionParameter 24(m4): 18(ptr) FunctionParameter
26(v): 11(ptr) FunctionParameter 25(v): 10(ptr) FunctionParameter
28: Label 27: Label
64(param): 19(ptr) Variable Function 63(param): 18(ptr) Variable Function
63: 8(fvec3) Load 26(v) 62: 7(fvec3) Load 25(v)
65: 18 Load 25(m4) 64: 17 Load 24(m4)
Store 64(param) 65 Store 63(param) 64
66: 9 FunctionCall 22(Mat3(mf44;) 64(param) 65: 8 FunctionCall 21(Mat3(mf44;) 63(param)
67: 8(fvec3) VectorTimesMatrix 63 66 66: 7(fvec3) VectorTimesMatrix 62 65
ReturnValue 67 ReturnValue 66
FunctionEnd FunctionEnd

View File

@ -7,7 +7,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 256 // Id's are bound by 255
Source GLSL 430 Source GLSL 430
Capability Shader Capability Shader
@ -16,330 +16,328 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 10 "v" Name 9 "v"
Name 14 "s2D" Name 13 "s2D"
Name 18 "c2D" Name 17 "c2D"
Name 24 "s3D" Name 23 "s3D"
Name 27 "c4D" Name 26 "c4D"
Name 35 "s2DArray" Name 34 "s2DArray"
Name 39 "c3D" Name 38 "c3D"
Name 48 "s2DShadow" Name 47 "s2DShadow"
Name 56 "c1D" Name 55 "c1D"
Name 68 "ic3D" Name 67 "ic3D"
Name 71 "ic1D" Name 70 "ic1D"
Name 78 "ic2D" Name 77 "ic2D"
Name 103 "sCube" Name 102 "sCube"
Name 114 "s2DArrayShadow" Name 113 "s2DArrayShadow"
Name 142 "iv" Name 141 "iv"
Name 146 "is2D" Name 145 "is2D"
Name 181 "is3D" Name 180 "is3D"
Name 193 "isCube" Name 192 "isCube"
Name 205 "is2DArray" Name 204 "is2DArray"
Name 215 "iv2" Name 214 "iv2"
Name 219 "sCubeShadow" Name 218 "sCubeShadow"
Name 224 "FragData" Name 223 "FragData"
Name 236 "is2Dms" Name 235 "is2Dms"
Name 241 "us2D" Name 240 "us2D"
Name 245 "us3D" Name 244 "us3D"
Name 249 "usCube" Name 248 "usCube"
Name 253 "us2DArray" Name 252 "us2DArray"
Name 255 "ic4D" Name 254 "ic4D"
Decorate 18(c2D) Smooth Decorate 17(c2D) Smooth
Decorate 27(c4D) Smooth Decorate 26(c4D) Smooth
Decorate 39(c3D) Smooth Decorate 38(c3D) Smooth
Decorate 56(c1D) Smooth Decorate 55(c1D) Smooth
Decorate 68(ic3D) Flat Decorate 67(ic3D) Flat
Decorate 71(ic1D) Flat Decorate 70(ic1D) Flat
Decorate 78(ic2D) Flat Decorate 77(ic2D) Flat
Decorate 236(is2Dms) NoStaticUse Decorate 235(is2Dms) NoStaticUse
Decorate 241(us2D) NoStaticUse Decorate 240(us2D) NoStaticUse
Decorate 245(us3D) NoStaticUse Decorate 244(us3D) NoStaticUse
Decorate 249(usCube) NoStaticUse Decorate 248(usCube) NoStaticUse
Decorate 253(us2DArray) NoStaticUse Decorate 252(us2DArray) NoStaticUse
Decorate 255(ic4D) Flat Decorate 254(ic4D) Flat
Decorate 255(ic4D) NoStaticUse Decorate 254(ic4D) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 4 7: TypeVector 6(float) 4
9: TypePointer Function 8(fvec4) 8: TypePointer Function 7(fvec4)
11: TypeImage 7(float) 2D sampled format:Unknown 10: TypeImage 6(float) 2D sampled format:Unknown
12: TypeSampledImage 11 11: TypeSampledImage 10
13: TypePointer UniformConstant 12 12: TypePointer UniformConstant 11
14(s2D): 13(ptr) Variable UniformConstant 13(s2D): 12(ptr) Variable UniformConstant
16: TypeVector 7(float) 2 15: TypeVector 6(float) 2
17: TypePointer Input 16(fvec2) 16: TypePointer Input 15(fvec2)
18(c2D): 17(ptr) Variable Input 17(c2D): 16(ptr) Variable Input
21: TypeImage 7(float) 3D sampled format:Unknown 20: TypeImage 6(float) 3D sampled format:Unknown
22: TypeSampledImage 21 21: TypeSampledImage 20
23: TypePointer UniformConstant 22 22: TypePointer UniformConstant 21
24(s3D): 23(ptr) Variable UniformConstant 23(s3D): 22(ptr) Variable UniformConstant
26: TypePointer Input 8(fvec4) 25: TypePointer Input 7(fvec4)
27(c4D): 26(ptr) Variable Input 26(c4D): 25(ptr) Variable Input
32: TypeImage 7(float) 2D array sampled format:Unknown 31: TypeImage 6(float) 2D array sampled format:Unknown
33: TypeSampledImage 32 32: TypeSampledImage 31
34: TypePointer UniformConstant 33 33: TypePointer UniformConstant 32
35(s2DArray): 34(ptr) Variable UniformConstant 34(s2DArray): 33(ptr) Variable UniformConstant
37: TypeVector 7(float) 3 36: TypeVector 6(float) 3
38: TypePointer Input 37(fvec3) 37: TypePointer Input 36(fvec3)
39(c3D): 38(ptr) Variable Input 38(c3D): 37(ptr) Variable Input
41: 7(float) Constant 1067030938 40: 6(float) Constant 1067030938
45: TypeImage 7(float) 2D depth sampled format:Unknown 44: TypeImage 6(float) 2D depth sampled format:Unknown
46: TypeSampledImage 45 45: TypeSampledImage 44
47: TypePointer UniformConstant 46 46: TypePointer UniformConstant 45
48(s2DShadow): 47(ptr) Variable UniformConstant 47(s2DShadow): 46(ptr) Variable UniformConstant
51: TypeInt 32 1 50: TypeInt 32 1
52: TypeVector 51(int) 2 51: TypeVector 50(int) 2
53: 51(int) Constant 3 52: 50(int) Constant 3
54: 52(ivec2) ConstantComposite 53 53 53: 51(ivec2) ConstantComposite 52 52
55: TypePointer Input 7(float) 54: TypePointer Input 6(float)
56(c1D): 55(ptr) Variable Input 55(c1D): 54(ptr) Variable Input
66: TypeVector 51(int) 3 65: TypeVector 50(int) 3
67: TypePointer Input 66(ivec3) 66: TypePointer Input 65(ivec3)
68(ic3D): 67(ptr) Variable Input 67(ic3D): 66(ptr) Variable Input
70: TypePointer Input 51(int) 69: TypePointer Input 50(int)
71(ic1D): 70(ptr) Variable Input 70(ic1D): 69(ptr) Variable Input
77: TypePointer Input 52(ivec2) 76: TypePointer Input 51(ivec2)
78(ic2D): 77(ptr) Variable Input 77(ic2D): 76(ptr) Variable Input
80: 51(int) Constant 4 79: 50(int) Constant 4
100: TypeImage 7(float) Cube sampled format:Unknown 99: TypeImage 6(float) Cube sampled format:Unknown
101: TypeSampledImage 100 100: TypeSampledImage 99
102: TypePointer UniformConstant 101 101: TypePointer UniformConstant 100
103(sCube): 102(ptr) Variable UniformConstant 102(sCube): 101(ptr) Variable UniformConstant
111: TypeImage 7(float) 2D depth array sampled format:Unknown 110: TypeImage 6(float) 2D depth array sampled format:Unknown
112: TypeSampledImage 111 111: TypeSampledImage 110
113: TypePointer UniformConstant 112 112: TypePointer UniformConstant 111
114(s2DArrayShadow): 113(ptr) Variable UniformConstant 113(s2DArrayShadow): 112(ptr) Variable UniformConstant
140: TypeVector 51(int) 4 139: TypeVector 50(int) 4
141: TypePointer Function 140(ivec4) 140: TypePointer Function 139(ivec4)
143: TypeImage 51(int) 2D sampled format:Unknown 142: TypeImage 50(int) 2D sampled format:Unknown
144: TypeSampledImage 143 143: TypeSampledImage 142
145: TypePointer UniformConstant 144 144: TypePointer UniformConstant 143
146(is2D): 145(ptr) Variable UniformConstant 145(is2D): 144(ptr) Variable UniformConstant
178: TypeImage 51(int) 3D sampled format:Unknown 177: TypeImage 50(int) 3D sampled format:Unknown
179: TypeSampledImage 178 178: TypeSampledImage 177
180: TypePointer UniformConstant 179 179: TypePointer UniformConstant 178
181(is3D): 180(ptr) Variable UniformConstant 180(is3D): 179(ptr) Variable UniformConstant
184: 7(float) Constant 1082549862 183: 6(float) Constant 1082549862
190: TypeImage 51(int) Cube sampled format:Unknown 189: TypeImage 50(int) Cube sampled format:Unknown
191: TypeSampledImage 190 190: TypeSampledImage 189
192: TypePointer UniformConstant 191 191: TypePointer UniformConstant 190
193(isCube): 192(ptr) Variable UniformConstant 192(isCube): 191(ptr) Variable UniformConstant
202: TypeImage 51(int) 2D array sampled format:Unknown 201: TypeImage 50(int) 2D array sampled format:Unknown
203: TypeSampledImage 202 202: TypeSampledImage 201
204: TypePointer UniformConstant 203 203: TypePointer UniformConstant 202
205(is2DArray): 204(ptr) Variable UniformConstant 204(is2DArray): 203(ptr) Variable UniformConstant
214: TypePointer Function 52(ivec2) 213: TypePointer Function 51(ivec2)
216: TypeImage 7(float) Cube depth sampled format:Unknown 215: TypeImage 6(float) Cube depth sampled format:Unknown
217: TypeSampledImage 216 216: TypeSampledImage 215
218: TypePointer UniformConstant 217 217: TypePointer UniformConstant 216
219(sCubeShadow): 218(ptr) Variable UniformConstant 218(sCubeShadow): 217(ptr) Variable UniformConstant
221: 51(int) Constant 2 220: 50(int) Constant 2
223: TypePointer Output 8(fvec4) 222: TypePointer Output 7(fvec4)
224(FragData): 223(ptr) Variable Output 223(FragData): 222(ptr) Variable Output
228: 7(float) Constant 0 227: 6(float) Constant 0
233: TypeImage 51(int) 2D multi-sampled sampled format:Unknown 232: TypeImage 50(int) 2D multi-sampled sampled format:Unknown
234: TypeSampledImage 233 233: TypeSampledImage 232
235: TypePointer UniformConstant 234 234: TypePointer UniformConstant 233
236(is2Dms): 235(ptr) Variable UniformConstant 235(is2Dms): 234(ptr) Variable UniformConstant
237: TypeInt 32 0 236: TypeInt 32 0
238: TypeImage 237(int) 2D sampled format:Unknown 237: TypeImage 236(int) 2D sampled format:Unknown
239: TypeSampledImage 238 238: TypeSampledImage 237
240: TypePointer UniformConstant 239 239: TypePointer UniformConstant 238
241(us2D): 240(ptr) Variable UniformConstant 240(us2D): 239(ptr) Variable UniformConstant
242: TypeImage 237(int) 3D sampled format:Unknown 241: TypeImage 236(int) 3D sampled format:Unknown
243: TypeSampledImage 242 242: TypeSampledImage 241
244: TypePointer UniformConstant 243 243: TypePointer UniformConstant 242
245(us3D): 244(ptr) Variable UniformConstant 244(us3D): 243(ptr) Variable UniformConstant
246: TypeImage 237(int) Cube sampled format:Unknown 245: TypeImage 236(int) Cube sampled format:Unknown
247: TypeSampledImage 246 246: TypeSampledImage 245
248: TypePointer UniformConstant 247 247: TypePointer UniformConstant 246
249(usCube): 248(ptr) Variable UniformConstant 248(usCube): 247(ptr) Variable UniformConstant
250: TypeImage 237(int) 2D array sampled format:Unknown 249: TypeImage 236(int) 2D array sampled format:Unknown
251: TypeSampledImage 250 250: TypeSampledImage 249
252: TypePointer UniformConstant 251 251: TypePointer UniformConstant 250
253(us2DArray): 252(ptr) Variable UniformConstant 252(us2DArray): 251(ptr) Variable UniformConstant
254: TypePointer Input 140(ivec4) 253: TypePointer Input 139(ivec4)
255(ic4D): 254(ptr) Variable Input 254(ic4D): 253(ptr) Variable Input
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
10(v): 9(ptr) Variable Function 9(v): 8(ptr) Variable Function
142(iv): 141(ptr) Variable Function 141(iv): 140(ptr) Variable Function
215(iv2): 214(ptr) Variable Function 214(iv2): 213(ptr) Variable Function
15: 12 Load 14(s2D) 14: 11 Load 13(s2D)
19: 16(fvec2) Load 18(c2D) 18: 15(fvec2) Load 17(c2D)
20: 8(fvec4) ImageSampleImplicitLod 15 19 19: 7(fvec4) ImageSampleImplicitLod 14 18
Store 10(v) 20 Store 9(v) 19
25: 22 Load 24(s3D) 24: 21 Load 23(s3D)
28: 8(fvec4) Load 27(c4D) 27: 7(fvec4) Load 26(c4D)
29: 8(fvec4) ImageSampleProjImplicitLod 25 28 28: 7(fvec4) ImageSampleProjImplicitLod 24 27
30: 8(fvec4) Load 10(v) 29: 7(fvec4) Load 9(v)
31: 8(fvec4) FAdd 30 29 30: 7(fvec4) FAdd 29 28
Store 10(v) 31 Store 9(v) 30
36: 33 Load 35(s2DArray) 35: 32 Load 34(s2DArray)
40: 37(fvec3) Load 39(c3D) 39: 36(fvec3) Load 38(c3D)
42: 8(fvec4) ImageSampleExplicitLod 36 40 41 41: 7(fvec4) ImageSampleExplicitLod 35 39 40
43: 8(fvec4) Load 10(v) 42: 7(fvec4) Load 9(v)
44: 8(fvec4) FAdd 43 42 43: 7(fvec4) FAdd 42 41
Store 10(v) 44 Store 9(v) 43
49: 46 Load 48(s2DShadow) 48: 45 Load 47(s2DShadow)
50: 37(fvec3) Load 39(c3D) 49: 36(fvec3) Load 38(c3D)
57: 7(float) Load 56(c1D) 56: 6(float) Load 55(c1D)
58: 7(float) CompositeExtract 50 2 57: 6(float) CompositeExtract 49 2
59: 7(float) ImageSampleDrefImplicitLod 49 50 58 57 54 58: 6(float) ImageSampleDrefImplicitLod 48 49 57 56 53
60: 8(fvec4) Load 10(v) 59: 7(fvec4) Load 9(v)
61: 7(float) CompositeExtract 60 1 60: 6(float) CompositeExtract 59 1
62: 7(float) FAdd 61 59 61: 6(float) FAdd 60 58
63: 8(fvec4) Load 10(v) 62: 7(fvec4) Load 9(v)
64: 8(fvec4) CompositeInsert 62 63 1 63: 7(fvec4) CompositeInsert 61 62 1
Store 10(v) 64 Store 9(v) 63
65: 22 Load 24(s3D) 64: 21 Load 23(s3D)
69: 66(ivec3) Load 68(ic3D) 68: 65(ivec3) Load 67(ic3D)
72: 51(int) Load 71(ic1D) 71: 50(int) Load 70(ic1D)
73: 8(fvec4) ImageFetch 65 69 72: 7(fvec4) ImageFetch 64 68
74: 8(fvec4) Load 10(v) 73: 7(fvec4) Load 9(v)
75: 8(fvec4) FAdd 74 73 74: 7(fvec4) FAdd 73 72
Store 10(v) 75 Store 9(v) 74
76: 12 Load 14(s2D) 75: 11 Load 13(s2D)
79: 52(ivec2) Load 78(ic2D) 78: 51(ivec2) Load 77(ic2D)
81: 8(fvec4) ImageFetch 76 79 80 80: 7(fvec4) ImageFetch 75 78 79
82: 8(fvec4) Load 10(v) 81: 7(fvec4) Load 9(v)
83: 8(fvec4) FAdd 82 81 82: 7(fvec4) FAdd 81 80
Store 10(v) 83 Store 9(v) 82
84: 46 Load 48(s2DShadow) 83: 45 Load 47(s2DShadow)
85: 37(fvec3) Load 39(c3D) 84: 36(fvec3) Load 38(c3D)
86: 7(float) Load 56(c1D) 85: 6(float) Load 55(c1D)
87: 7(float) CompositeExtract 85 2 86: 6(float) CompositeExtract 84 2
88: 7(float) ImageSampleDrefExplicitLod 84 85 87 86 54 87: 6(float) ImageSampleDrefExplicitLod 83 84 86 85 53
89: 8(fvec4) Load 10(v) 88: 7(fvec4) Load 9(v)
90: 7(float) CompositeExtract 89 1 89: 6(float) CompositeExtract 88 1
91: 7(float) FAdd 90 88 90: 6(float) FAdd 89 87
92: 8(fvec4) Load 10(v) 91: 7(fvec4) Load 9(v)
93: 8(fvec4) CompositeInsert 91 92 1 92: 7(fvec4) CompositeInsert 90 91 1
Store 10(v) 93 Store 9(v) 92
94: 12 Load 14(s2D) 93: 11 Load 13(s2D)
95: 37(fvec3) Load 39(c3D) 94: 36(fvec3) Load 38(c3D)
96: 7(float) Load 56(c1D) 95: 6(float) Load 55(c1D)
97: 8(fvec4) ImageSampleProjExplicitLod 94 95 96 54 96: 7(fvec4) ImageSampleProjExplicitLod 93 94 95 53
98: 8(fvec4) Load 10(v) 97: 7(fvec4) Load 9(v)
99: 8(fvec4) FAdd 98 97 98: 7(fvec4) FAdd 97 96
Store 10(v) 99 Store 9(v) 98
104: 101 Load 103(sCube) 103: 100 Load 102(sCube)
105: 37(fvec3) Load 39(c3D) 104: 36(fvec3) Load 38(c3D)
106: 37(fvec3) Load 39(c3D) 105: 36(fvec3) Load 38(c3D)
107: 37(fvec3) Load 39(c3D) 106: 36(fvec3) Load 38(c3D)
108: 8(fvec4) ImageSampleExplicitLod 104 105 106 107 107: 7(fvec4) ImageSampleExplicitLod 103 104 105 106
109: 8(fvec4) Load 10(v) 108: 7(fvec4) Load 9(v)
110: 8(fvec4) FAdd 109 108 109: 7(fvec4) FAdd 108 107
Store 10(v) 110 Store 9(v) 109
115: 112 Load 114(s2DArrayShadow) 114: 111 Load 113(s2DArrayShadow)
116: 8(fvec4) Load 27(c4D) 115: 7(fvec4) Load 26(c4D)
117: 16(fvec2) Load 18(c2D) 116: 15(fvec2) Load 17(c2D)
118: 16(fvec2) Load 18(c2D) 117: 15(fvec2) Load 17(c2D)
119: 7(float) CompositeExtract 116 3 118: 6(float) CompositeExtract 115 3
120: 7(float) ImageSampleDrefExplicitLod 115 116 119 117 118 54 119: 6(float) ImageSampleDrefExplicitLod 114 115 118 116 117 53
121: 8(fvec4) Load 10(v) 120: 7(fvec4) Load 9(v)
122: 7(float) CompositeExtract 121 0 121: 6(float) CompositeExtract 120 0
123: 7(float) FAdd 122 120 122: 6(float) FAdd 121 119
124: 8(fvec4) Load 10(v) 123: 7(fvec4) Load 9(v)
125: 8(fvec4) CompositeInsert 123 124 0 124: 7(fvec4) CompositeInsert 122 123 0
Store 10(v) 125 Store 9(v) 124
126: 22 Load 24(s3D) 125: 21 Load 23(s3D)
127: 8(fvec4) Load 27(c4D) 126: 7(fvec4) Load 26(c4D)
128: 37(fvec3) Load 39(c3D) 127: 36(fvec3) Load 38(c3D)
129: 37(fvec3) Load 39(c3D) 128: 36(fvec3) Load 38(c3D)
130: 8(fvec4) ImageSampleProjExplicitLod 126 127 128 129 129: 7(fvec4) ImageSampleProjExplicitLod 125 126 127 128
131: 8(fvec4) Load 10(v) 130: 7(fvec4) Load 9(v)
132: 8(fvec4) FAdd 131 130 131: 7(fvec4) FAdd 130 129
Store 10(v) 132 Store 9(v) 131
133: 12 Load 14(s2D) 132: 11 Load 13(s2D)
134: 37(fvec3) Load 39(c3D) 133: 36(fvec3) Load 38(c3D)
135: 16(fvec2) Load 18(c2D) 134: 15(fvec2) Load 17(c2D)
136: 16(fvec2) Load 18(c2D) 135: 15(fvec2) Load 17(c2D)
137: 8(fvec4) ImageSampleProjExplicitLod 133 134 135 136 54 136: 7(fvec4) ImageSampleProjExplicitLod 132 133 134 135 53
138: 8(fvec4) Load 10(v) 137: 7(fvec4) Load 9(v)
139: 8(fvec4) FAdd 138 137 138: 7(fvec4) FAdd 137 136
Store 10(v) 139 Store 9(v) 138
147: 144 Load 146(is2D) 146: 143 Load 145(is2D)
148: 16(fvec2) Load 18(c2D) 147: 15(fvec2) Load 17(c2D)
149: 140(ivec4) ImageSampleImplicitLod 147 148 148: 139(ivec4) ImageSampleImplicitLod 146 147
Store 142(iv) 149 Store 141(iv) 148
150: 140(ivec4) Load 142(iv) 149: 139(ivec4) Load 141(iv)
151: 8(fvec4) ConvertSToF 150 150: 7(fvec4) ConvertSToF 149
152: 8(fvec4) Load 10(v) 151: 7(fvec4) Load 9(v)
153: 8(fvec4) FAdd 152 151 152: 7(fvec4) FAdd 151 150
Store 10(v) 153 Store 9(v) 152
154: 144 Load 146(is2D) 153: 143 Load 145(is2D)
155: 8(fvec4) Load 27(c4D) 154: 7(fvec4) Load 26(c4D)
156: 140(ivec4) ImageSampleProjImplicitLod 154 155 54 155: 139(ivec4) ImageSampleProjImplicitLod 153 154 53
Store 142(iv) 156 Store 141(iv) 155
157: 140(ivec4) Load 142(iv) 156: 139(ivec4) Load 141(iv)
158: 8(fvec4) ConvertSToF 157 157: 7(fvec4) ConvertSToF 156
159: 8(fvec4) Load 10(v) 158: 7(fvec4) Load 9(v)
160: 8(fvec4) FAdd 159 158 159: 7(fvec4) FAdd 158 157
Store 10(v) 160 Store 9(v) 159
161: 144 Load 146(is2D) 160: 143 Load 145(is2D)
162: 37(fvec3) Load 39(c3D) 161: 36(fvec3) Load 38(c3D)
163: 7(float) Load 56(c1D) 162: 6(float) Load 55(c1D)
164: 140(ivec4) ImageSampleProjExplicitLod 161 162 163 163: 139(ivec4) ImageSampleProjExplicitLod 160 161 162
Store 142(iv) 164 Store 141(iv) 163
165: 140(ivec4) Load 142(iv) 164: 139(ivec4) Load 141(iv)
166: 8(fvec4) ConvertSToF 165 165: 7(fvec4) ConvertSToF 164
167: 8(fvec4) Load 10(v) 166: 7(fvec4) Load 9(v)
168: 8(fvec4) FAdd 167 166 167: 7(fvec4) FAdd 166 165
Store 10(v) 168 Store 9(v) 167
169: 144 Load 146(is2D) 168: 143 Load 145(is2D)
170: 37(fvec3) Load 39(c3D) 169: 36(fvec3) Load 38(c3D)
171: 16(fvec2) Load 18(c2D) 170: 15(fvec2) Load 17(c2D)
172: 16(fvec2) Load 18(c2D) 171: 15(fvec2) Load 17(c2D)
173: 140(ivec4) ImageSampleProjExplicitLod 169 170 171 172 172: 139(ivec4) ImageSampleProjExplicitLod 168 169 170 171
Store 142(iv) 173 Store 141(iv) 172
174: 140(ivec4) Load 142(iv) 173: 139(ivec4) Load 141(iv)
175: 8(fvec4) ConvertSToF 174 174: 7(fvec4) ConvertSToF 173
176: 8(fvec4) Load 10(v) 175: 7(fvec4) Load 9(v)
177: 8(fvec4) FAdd 176 175 176: 7(fvec4) FAdd 175 174
Store 10(v) 177 Store 9(v) 176
182: 179 Load 181(is3D) 181: 178 Load 180(is3D)
183: 37(fvec3) Load 39(c3D) 182: 36(fvec3) Load 38(c3D)
185: 140(ivec4) ImageSampleImplicitLod 182 183 184 184: 139(ivec4) ImageSampleImplicitLod 181 182 183
Store 142(iv) 185 Store 141(iv) 184
186: 140(ivec4) Load 142(iv) 185: 139(ivec4) Load 141(iv)
187: 8(fvec4) ConvertSToF 186 186: 7(fvec4) ConvertSToF 185
188: 8(fvec4) Load 10(v) 187: 7(fvec4) Load 9(v)
189: 8(fvec4) FAdd 188 187 188: 7(fvec4) FAdd 187 186
Store 10(v) 189 Store 9(v) 188
194: 191 Load 193(isCube) 193: 190 Load 192(isCube)
195: 37(fvec3) Load 39(c3D) 194: 36(fvec3) Load 38(c3D)
196: 7(float) Load 56(c1D) 195: 6(float) Load 55(c1D)
197: 140(ivec4) ImageSampleExplicitLod 194 195 196 196: 139(ivec4) ImageSampleExplicitLod 193 194 195
Store 142(iv) 197 Store 141(iv) 196
198: 140(ivec4) Load 142(iv) 197: 139(ivec4) Load 141(iv)
199: 8(fvec4) ConvertSToF 198 198: 7(fvec4) ConvertSToF 197
200: 8(fvec4) Load 10(v) 199: 7(fvec4) Load 9(v)
201: 8(fvec4) FAdd 200 199 200: 7(fvec4) FAdd 199 198
Store 10(v) 201 Store 9(v) 200
206: 203 Load 205(is2DArray) 205: 202 Load 204(is2DArray)
207: 66(ivec3) Load 68(ic3D) 206: 65(ivec3) Load 67(ic3D)
208: 51(int) Load 71(ic1D) 207: 50(int) Load 70(ic1D)
209: 140(ivec4) ImageFetch 206 207 208: 139(ivec4) ImageFetch 205 206
Store 142(iv) 209 Store 141(iv) 208
210: 140(ivec4) Load 142(iv) 209: 139(ivec4) Load 141(iv)
211: 8(fvec4) ConvertSToF 210 210: 7(fvec4) ConvertSToF 209
212: 8(fvec4) Load 10(v) 211: 7(fvec4) Load 9(v)
213: 8(fvec4) FAdd 212 211 212: 7(fvec4) FAdd 211 210
Store 10(v) 213 Store 9(v) 212
220: 217 Load 219(sCubeShadow) 219: 216 Load 218(sCubeShadow)
222: 52(ivec2) ImageQuerySizeLod 220 221 221: 51(ivec2) ImageQuerySizeLod 219 220
Store 215(iv2) 222 Store 214(iv2) 221
225: 8(fvec4) Load 10(v) 224: 7(fvec4) Load 9(v)
226: 52(ivec2) Load 215(iv2) 225: 51(ivec2) Load 214(iv2)
227: 16(fvec2) ConvertSToF 226 226: 15(fvec2) ConvertSToF 225
229: 7(float) CompositeExtract 227 0 228: 6(float) CompositeExtract 226 0
230: 7(float) CompositeExtract 227 1 229: 6(float) CompositeExtract 226 1
231: 8(fvec4) CompositeConstruct 229 230 228 228 230: 7(fvec4) CompositeConstruct 228 229 227 227
232: 8(fvec4) FAdd 225 231 231: 7(fvec4) FAdd 224 230
Store 224(FragData) 232 Store 223(FragData) 231
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked vertex stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 91 // Id's are bound by 90
Source GLSL 120 Source GLSL 120
Capability Shader Capability Shader
@ -13,109 +13,107 @@ Linked vertex stage:
MemoryModel Logical GLSL450 MemoryModel Logical GLSL450
EntryPoint Vertex 4 "main" EntryPoint Vertex 4 "main"
Name 4 "main" Name 4 "main"
Name 10 "a" Name 9 "a"
Name 13 "v3" Name 12 "v3"
Name 17 "m23" Name 16 "m23"
Name 20 "b" Name 19 "b"
Name 23 "m32" Name 22 "m32"
Name 29 "gl_Position" Name 28 "gl_Position"
Name 56 "v4" Name 55 "v4"
Decorate 29(gl_Position) BuiltIn Position Decorate 28(gl_Position) BuiltIn Position
Decorate 75 NoStaticUse Decorate 74 NoStaticUse
Decorate 79 NoStaticUse Decorate 78 NoStaticUse
Decorate 90 NoStaticUse Decorate 89 NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 2 7: TypeVector 6(float) 2
9: TypePointer Function 8(fvec2) 8: TypePointer Function 7(fvec2)
11: TypeVector 7(float) 3 10: TypeVector 6(float) 3
12: TypePointer Input 11(fvec3) 11: TypePointer Input 10(fvec3)
13(v3): 12(ptr) Variable Input 12(v3): 11(ptr) Variable Input
15: TypeMatrix 11(fvec3) 2 14: TypeMatrix 10(fvec3) 2
16: TypePointer Function 15 15: TypePointer Function 14
21: TypeMatrix 8(fvec2) 3 20: TypeMatrix 7(fvec2) 3
22: TypePointer UniformConstant 21 21: TypePointer UniformConstant 20
23(m32): 22(ptr) Variable UniformConstant 22(m32): 21(ptr) Variable UniformConstant
27: TypeVector 7(float) 4 26: TypeVector 6(float) 4
28: TypePointer Output 27(fvec4) 27: TypePointer Output 26(fvec4)
29(gl_Position): 28(ptr) Variable Output 28(gl_Position): 27(ptr) Variable Output
32: TypeMatrix 11(fvec3) 3 31: TypeMatrix 10(fvec3) 3
36: 7(float) Constant 0 35: 6(float) Constant 0
41: TypeMatrix 27(fvec4) 4 40: TypeMatrix 26(fvec4) 4
42: 7(float) Constant 1077936128 41: 6(float) Constant 1077936128
43: 7(float) Constant 1086324736 42: 6(float) Constant 1086324736
44: 27(fvec4) ConstantComposite 42 43 36 36 43: 26(fvec4) ConstantComposite 41 42 35 35
45: 7(float) Constant 1091567616 44: 6(float) Constant 1091567616
46: 7(float) Constant 1094713344 45: 6(float) Constant 1094713344
47: 27(fvec4) ConstantComposite 45 46 36 36 46: 26(fvec4) ConstantComposite 44 45 35 35
48: 7(float) Constant 1097859072 47: 6(float) Constant 1097859072
49: 7(float) Constant 1099956224 48: 6(float) Constant 1099956224
50: 27(fvec4) ConstantComposite 48 49 36 36 49: 26(fvec4) ConstantComposite 47 48 35 35
51: 7(float) Constant 1101529088 50: 6(float) Constant 1101529088
52: 7(float) Constant 1103101952 51: 6(float) Constant 1103101952
53: 27(fvec4) ConstantComposite 51 52 36 36 52: 26(fvec4) ConstantComposite 50 51 35 35
54: 41 ConstantComposite 44 47 50 53 53: 40 ConstantComposite 43 46 49 52
55: TypePointer Input 27(fvec4) 54: TypePointer Input 26(fvec4)
56(v4): 55(ptr) Variable Input 55(v4): 54(ptr) Variable Input
60: 7(float) Constant 1112014848 59: 6(float) Constant 1112014848
61: 7(float) Constant 1121714176 60: 6(float) Constant 1121714176
62: 7(float) Constant 1126825984 61: 6(float) Constant 1126825984
63: 7(float) Constant 1130758144 62: 6(float) Constant 1130758144
64: 27(fvec4) ConstantComposite 60 61 62 63 63: 26(fvec4) ConstantComposite 59 60 61 62
66: 7(float) Constant 1106247680 65: 6(float) Constant 1106247680
67: 7(float) Constant 1114636288 66: 6(float) Constant 1114636288
68: 27(fvec4) ConstantComposite 66 67 36 36 67: 26(fvec4) ConstantComposite 65 66 35 35
70: 7(float) Constant 1101004800 69: 6(float) Constant 1101004800
71: 7(float) Constant 1092616192 70: 6(float) Constant 1092616192
72: 7(float) Constant 1084227584 71: 6(float) Constant 1084227584
73: 27(fvec4) ConstantComposite 70 71 43 72 72: 26(fvec4) ConstantComposite 69 70 42 71
75: 8(fvec2) ConstantComposite 71 70 74: 7(fvec2) ConstantComposite 70 69
76: TypeMatrix 27(fvec4) 2 75: TypeMatrix 26(fvec4) 2
77: 27(fvec4) ConstantComposite 42 36 36 36 76: 26(fvec4) ConstantComposite 41 35 35 35
78: 27(fvec4) ConstantComposite 36 42 36 36 77: 26(fvec4) ConstantComposite 35 41 35 35
79: 76 ConstantComposite 77 78 78: 75 ConstantComposite 76 77
80: TypeMatrix 8(fvec2) 4 79: TypeMatrix 7(fvec2) 4
81: 7(float) Constant 1065353216 80: 6(float) Constant 1065353216
82: 7(float) Constant 1073741824 81: 6(float) Constant 1073741824
83: 8(fvec2) ConstantComposite 81 82 82: 7(fvec2) ConstantComposite 80 81
84: 7(float) Constant 1082130432 83: 6(float) Constant 1082130432
85: 8(fvec2) ConstantComposite 42 84 84: 7(fvec2) ConstantComposite 41 83
86: 8(fvec2) ConstantComposite 72 43 85: 7(fvec2) ConstantComposite 71 42
87: 7(float) Constant 1088421888 86: 6(float) Constant 1088421888
88: 7(float) Constant 1090519040 87: 6(float) Constant 1090519040
89: 8(fvec2) ConstantComposite 87 88 88: 7(fvec2) ConstantComposite 86 87
90: 80 ConstantComposite 83 85 86 89 89: 79 ConstantComposite 82 84 85 88
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
10(a): 9(ptr) Variable Function 9(a): 8(ptr) Variable Function
17(m23): 16(ptr) Variable Function 16(m23): 15(ptr) Variable Function
20(b): 9(ptr) Variable Function 19(b): 8(ptr) Variable Function
14: 11(fvec3) Load 13(v3) 13: 10(fvec3) Load 12(v3)
18: 15 Load 17(m23) 17: 14 Load 16(m23)
19: 8(fvec2) VectorTimesMatrix 14 18 18: 7(fvec2) VectorTimesMatrix 13 17
Store 10(a) 19 Store 9(a) 18
24: 21 Load 23(m32) 23: 20 Load 22(m32)
25: 11(fvec3) Load 13(v3) 24: 10(fvec3) Load 12(v3)
26: 8(fvec2) MatrixTimesVector 24 25 25: 7(fvec2) MatrixTimesVector 23 24
Store 20(b) 26 Store 19(b) 25
30: 15 Load 17(m23) 29: 14 Load 16(m23)
31: 21 Load 23(m32) 30: 20 Load 22(m32)
33: 32 MatrixTimesMatrix 30 31 32: 31 MatrixTimesMatrix 29 30
34: 11(fvec3) Load 13(v3) 33: 10(fvec3) Load 12(v3)
35: 11(fvec3) MatrixTimesVector 33 34 34: 10(fvec3) MatrixTimesVector 32 33
37: 7(float) CompositeExtract 35 0 36: 6(float) CompositeExtract 34 0
38: 7(float) CompositeExtract 35 1 37: 6(float) CompositeExtract 34 1
39: 7(float) CompositeExtract 35 2 38: 6(float) CompositeExtract 34 2
40: 27(fvec4) CompositeConstruct 37 38 39 36 39: 26(fvec4) CompositeConstruct 36 37 38 35
57: 27(fvec4) Load 56(v4) 56: 26(fvec4) Load 55(v4)
58: 27(fvec4) MatrixTimesVector 54 57 57: 26(fvec4) MatrixTimesVector 53 56
59: 27(fvec4) FAdd 40 58 58: 26(fvec4) FAdd 39 57
65: 27(fvec4) FAdd 59 64 64: 26(fvec4) FAdd 58 63
69: 27(fvec4) FAdd 65 68 68: 26(fvec4) FAdd 64 67
74: 27(fvec4) FAdd 69 73 73: 26(fvec4) FAdd 68 72
Store 29(gl_Position) 74 Store 28(gl_Position) 73
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 111 // Id's are bound by 110
Source ESSL 300 Source ESSL 300
Capability Shader Capability Shader
@ -14,164 +14,162 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 13 "foo(vf3;" Name 12 "foo(vf3;"
Name 12 "mv3" Name 11 "mv3"
Name 20 "boolfun(vb2;" Name 19 "boolfun(vb2;"
Name 19 "bv2" Name 18 "bv2"
Name 24 "highfin" Name 23 "highfin"
Name 37 "sum" Name 36 "sum"
Name 39 "uniform_medium" Name 38 "uniform_medium"
Name 41 "uniform_high" Name 40 "uniform_high"
Name 47 "uniform_low" Name 46 "uniform_low"
Name 52 "arg1" Name 51 "arg1"
Name 54 "arg2" Name 53 "arg2"
Name 56 "d" Name 55 "d"
Name 58 "lowfin" Name 57 "lowfin"
Name 60 "mediumfin" Name 59 "mediumfin"
Name 64 "global_highp" Name 63 "global_highp"
Name 68 "local_highp" Name 67 "local_highp"
Name 72 "mediumfout" Name 71 "mediumfout"
Name 101 "ub2" Name 100 "ub2"
Name 102 "param" Name 101 "param"
Decorate 24(highfin) Smooth Decorate 23(highfin) Smooth
Decorate 37(sum) RelaxedPrecision Decorate 36(sum) RelaxedPrecision
Decorate 39(uniform_medium) RelaxedPrecision Decorate 38(uniform_medium) RelaxedPrecision
Decorate 47(uniform_low) RelaxedPrecision Decorate 46(uniform_low) RelaxedPrecision
Decorate 52(arg1) RelaxedPrecision Decorate 51(arg1) RelaxedPrecision
Decorate 54(arg2) RelaxedPrecision Decorate 53(arg2) RelaxedPrecision
Decorate 56(d) RelaxedPrecision Decorate 55(d) RelaxedPrecision
Decorate 58(lowfin) RelaxedPrecision Decorate 57(lowfin) RelaxedPrecision
Decorate 58(lowfin) Smooth Decorate 57(lowfin) Smooth
Decorate 60(mediumfin) RelaxedPrecision Decorate 59(mediumfin) RelaxedPrecision
Decorate 60(mediumfin) Smooth Decorate 59(mediumfin) Smooth
Decorate 72(mediumfout) RelaxedPrecision Decorate 71(mediumfout) RelaxedPrecision
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 3 7: TypeVector 6(float) 3
9: TypePointer Function 8(fvec3) 8: TypePointer Function 7(fvec3)
10: TypeVector 7(float) 2 9: TypeVector 6(float) 2
11: TypeFunction 10(fvec2) 9(ptr) 10: TypeFunction 9(fvec2) 8(ptr)
15: TypeBool 14: TypeBool
16: TypeVector 15(bool) 2 15: TypeVector 14(bool) 2
17: TypePointer Function 16(bvec2) 16: TypePointer Function 15(bvec2)
18: TypeFunction 15(bool) 17(ptr) 17: TypeFunction 14(bool) 16(ptr)
22: TypeVector 7(float) 4 21: TypeVector 6(float) 4
23: TypePointer Input 22(fvec4) 22: TypePointer Input 21(fvec4)
24(highfin): 23(ptr) Variable Input 23(highfin): 22(ptr) Variable Input
29: 15(bool) ConstantFalse 28: 14(bool) ConstantFalse
30: 15(bool) ConstantTrue 29: 14(bool) ConstantTrue
31: 16(bvec2) ConstantComposite 29 30 30: 15(bvec2) ConstantComposite 28 29
35: TypeInt 32 1 34: TypeInt 32 1
36: TypePointer Function 35(int) 35: TypePointer Function 34(int)
38: TypePointer UniformConstant 35(int) 37: TypePointer UniformConstant 34(int)
39(uniform_medium): 38(ptr) Variable UniformConstant 38(uniform_medium): 37(ptr) Variable UniformConstant
41(uniform_high): 38(ptr) Variable UniformConstant 40(uniform_high): 37(ptr) Variable UniformConstant
47(uniform_low): 38(ptr) Variable UniformConstant 46(uniform_low): 37(ptr) Variable UniformConstant
51: TypePointer Function 7(float) 50: TypePointer Function 6(float)
53: 7(float) Constant 1078774989 52: 6(float) Constant 1078774989
55: 7(float) Constant 1232730691 54: 6(float) Constant 1232730691
57: TypePointer Input 7(float) 56: TypePointer Input 6(float)
58(lowfin): 57(ptr) Variable Input 57(lowfin): 56(ptr) Variable Input
60(mediumfin): 57(ptr) Variable Input 59(mediumfin): 56(ptr) Variable Input
63: TypePointer PrivateGlobal 7(float) 62: TypePointer PrivateGlobal 6(float)
64(global_highp): 63(ptr) Variable PrivateGlobal 63(global_highp): 62(ptr) Variable PrivateGlobal
67: TypePointer Function 22(fvec4) 66: TypePointer Function 21(fvec4)
71: TypePointer Output 22(fvec4) 70: TypePointer Output 21(fvec4)
72(mediumfout): 71(ptr) Variable Output 71(mediumfout): 70(ptr) Variable Output
81: 35(int) Constant 4 80: 34(int) Constant 4
83: TypeVector 35(int) 2 82: TypeVector 34(int) 2
100: TypePointer UniformConstant 16(bvec2) 99: TypePointer UniformConstant 15(bvec2)
101(ub2): 100(ptr) Variable UniformConstant 100(ub2): 99(ptr) Variable UniformConstant
108: 7(float) Constant 1065353216 107: 6(float) Constant 1065353216
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
37(sum): 36(ptr) Variable Function 36(sum): 35(ptr) Variable Function
52(arg1): 51(ptr) Variable Function 51(arg1): 50(ptr) Variable Function
54(arg2): 51(ptr) Variable Function 53(arg2): 50(ptr) Variable Function
56(d): 51(ptr) Variable Function 55(d): 50(ptr) Variable Function
68(local_highp): 67(ptr) Variable Function 67(local_highp): 66(ptr) Variable Function
102(param): 17(ptr) Variable Function 101(param): 16(ptr) Variable Function
40: 35(int) Load 39(uniform_medium) 39: 34(int) Load 38(uniform_medium)
42: 35(int) Load 41(uniform_high) 41: 34(int) Load 40(uniform_high)
43: 35(int) IAdd 40 42 42: 34(int) IAdd 39 41
Store 37(sum) 43 Store 36(sum) 42
44: 35(int) Load 41(uniform_high) 43: 34(int) Load 40(uniform_high)
45: 35(int) Load 37(sum) 44: 34(int) Load 36(sum)
46: 35(int) IAdd 45 44 45: 34(int) IAdd 44 43
Store 37(sum) 46 Store 36(sum) 45
48: 35(int) Load 47(uniform_low) 47: 34(int) Load 46(uniform_low)
49: 35(int) Load 37(sum) 48: 34(int) Load 36(sum)
50: 35(int) IAdd 49 48 49: 34(int) IAdd 48 47
Store 37(sum) 50 Store 36(sum) 49
Store 52(arg1) 53 Store 51(arg1) 52
Store 54(arg2) 55 Store 53(arg2) 54
59: 7(float) Load 58(lowfin) 58: 6(float) Load 57(lowfin)
61: 7(float) Load 60(mediumfin) 60: 6(float) Load 59(mediumfin)
62: 7(float) ExtInst 1(GLSL.std.450) 66(Distance) 59 61 61: 6(float) ExtInst 1(GLSL.std.450) 66(Distance) 58 60
Store 56(d) 62 Store 55(d) 61
65: 22(fvec4) Load 24(highfin) 64: 21(fvec4) Load 23(highfin)
66: 7(float) ExtInst 1(GLSL.std.450) 65(Length) 65 65: 6(float) ExtInst 1(GLSL.std.450) 65(Length) 64
Store 64(global_highp) 66 Store 63(global_highp) 65
69: 7(float) Load 64(global_highp) 68: 6(float) Load 63(global_highp)
70: 22(fvec4) CompositeConstruct 69 69 69 69 69: 21(fvec4) CompositeConstruct 68 68 68 68
Store 68(local_highp) 70 Store 67(local_highp) 69
73: 7(float) Load 56(d) 72: 6(float) Load 55(d)
74: 7(float) ExtInst 1(GLSL.std.450) 13(Sin) 73 73: 6(float) ExtInst 1(GLSL.std.450) 13(Sin) 72
75: 22(fvec4) CompositeConstruct 74 74 74 74 74: 21(fvec4) CompositeConstruct 73 73 73 73
76: 7(float) Load 54(arg2) 75: 6(float) Load 53(arg2)
77: 22(fvec4) CompositeConstruct 76 76 76 76 76: 21(fvec4) CompositeConstruct 75 75 75 75
78: 22(fvec4) FAdd 75 77 77: 21(fvec4) FAdd 74 76
79: 22(fvec4) Load 68(local_highp) 78: 21(fvec4) Load 67(local_highp)
80: 22(fvec4) FAdd 78 79 79: 21(fvec4) FAdd 77 78
Store 72(mediumfout) 80 Store 71(mediumfout) 79
82: 35(int) Load 47(uniform_low) 81: 34(int) Load 46(uniform_low)
84: 83(ivec2) CompositeConstruct 82 82 83: 82(ivec2) CompositeConstruct 81 81
85: 35(int) Load 41(uniform_high) 84: 34(int) Load 40(uniform_high)
86: 83(ivec2) CompositeConstruct 85 85 85: 82(ivec2) CompositeConstruct 84 84
87: 83(ivec2) IMul 84 86 86: 82(ivec2) IMul 83 85
88: 35(int) Load 41(uniform_high) 87: 34(int) Load 40(uniform_high)
89: 83(ivec2) CompositeConstruct 88 88 88: 82(ivec2) CompositeConstruct 87 87
90: 83(ivec2) IAdd 87 89 89: 82(ivec2) IAdd 86 88
91: 35(int) CompositeExtract 90 0 90: 34(int) CompositeExtract 89 0
92: 35(int) IAdd 81 91 91: 34(int) IAdd 80 90
93: 35(int) Load 37(sum) 92: 34(int) Load 36(sum)
94: 35(int) IAdd 93 92 93: 34(int) IAdd 92 91
Store 37(sum) 94 Store 36(sum) 93
95: 35(int) Load 37(sum) 94: 34(int) Load 36(sum)
96: 7(float) ConvertSToF 95 95: 6(float) ConvertSToF 94
97: 22(fvec4) CompositeConstruct 96 96 96 96 96: 21(fvec4) CompositeConstruct 95 95 95 95
98: 22(fvec4) Load 72(mediumfout) 97: 21(fvec4) Load 71(mediumfout)
99: 22(fvec4) FAdd 98 97 98: 21(fvec4) FAdd 97 96
Store 72(mediumfout) 99 Store 71(mediumfout) 98
103: 16(bvec2) Load 101(ub2) 102: 15(bvec2) Load 100(ub2)
Store 102(param) 103 Store 101(param) 102
104: 15(bool) FunctionCall 20(boolfun(vb2;) 102(param) 103: 14(bool) FunctionCall 19(boolfun(vb2;) 101(param)
SelectionMerge 106 None SelectionMerge 105 None
BranchConditional 104 105 106 BranchConditional 103 104 105
105: Label 104: Label
107: 22(fvec4) Load 72(mediumfout) 106: 21(fvec4) Load 71(mediumfout)
109: 22(fvec4) CompositeConstruct 108 108 108 108 108: 21(fvec4) CompositeConstruct 107 107 107 107
110: 22(fvec4) FAdd 107 109 109: 21(fvec4) FAdd 106 108
Store 72(mediumfout) 110 Store 71(mediumfout) 109
Branch 106 Branch 105
106: Label 105: Label
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd
13(foo(vf3;): 10(fvec2) Function None 11 12(foo(vf3;): 9(fvec2) Function None 10
12(mv3): 9(ptr) FunctionParameter 11(mv3): 8(ptr) FunctionParameter
14: Label 13: Label
25: 22(fvec4) Load 24(highfin) 24: 21(fvec4) Load 23(highfin)
26: 10(fvec2) VectorShuffle 25 25 0 1 25: 9(fvec2) VectorShuffle 24 24 0 1
ReturnValue 26 ReturnValue 25
FunctionEnd FunctionEnd
20(boolfun(vb2;): 15(bool) Function None 18 19(boolfun(vb2;): 14(bool) Function None 17
19(bv2): 17(ptr) FunctionParameter 18(bv2): 16(ptr) FunctionParameter
21: Label 20: Label
28: 16(bvec2) Load 19(bv2) 27: 15(bvec2) Load 18(bv2)
32: 16(bvec2) IEqual 28 31 31: 15(bvec2) IEqual 27 30
33: 15(bool) All 32 32: 14(bool) All 31
ReturnValue 33 ReturnValue 32
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 97 // Id's are bound by 96
Source GLSL 140 Source GLSL 140
Capability Shader Capability Shader
@ -14,139 +14,137 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 9 "index" Name 8 "index"
Name 15 "s" Name 14 "s"
MemberName 15(s) 0 "y" MemberName 14(s) 0 "y"
Name 17 "str" Name 16 "str"
Name 23 "t" Name 22 "t"
Name 51 "x" Name 50 "x"
Name 62 "y" Name 61 "y"
Name 67 "z" Name 66 "z"
Name 74 "v" Name 73 "v"
Name 93 "gl_FragColor" Name 92 "gl_FragColor"
Decorate 93(gl_FragColor) BuiltIn FragColor Decorate 92(gl_FragColor) BuiltIn FragColor
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeInt 32 1 6: TypeInt 32 1
8: TypePointer Function 7(int) 7: TypePointer Function 6(int)
10: 7(int) Constant 5 9: 6(int) Constant 5
11: TypeFloat 32 10: TypeFloat 32
12: TypeInt 32 0 11: TypeInt 32 0
13: 12(int) Constant 5 12: 11(int) Constant 5
14: TypeArray 11(float) 13 13: TypeArray 10(float) 12
15(s): TypeStruct 14 14(s): TypeStruct 13
16: TypePointer Function 15(s) 15: TypePointer Function 14(s)
18: 7(int) Constant 0 17: 6(int) Constant 0
19: 7(int) Constant 4 18: 6(int) Constant 4
20: 11(float) Constant 1073741824 19: 10(float) Constant 1073741824
21: TypePointer Function 11(float) 20: TypePointer Function 10(float)
25: 7(int) Constant 1 24: 6(int) Constant 1
29: 11(float) Constant 1065353216 28: 10(float) Constant 1065353216
72: TypeVector 11(float) 4 71: TypeVector 10(float) 4
73: TypePointer Function 72(fvec4) 72: TypePointer Function 71(fvec4)
75: 11(float) Constant 1077936128 74: 10(float) Constant 1077936128
76: 11(float) Constant 1082130432 75: 10(float) Constant 1082130432
77: 72(fvec4) ConstantComposite 29 20 75 76 76: 71(fvec4) ConstantComposite 28 19 74 75
92: TypePointer Output 72(fvec4) 91: TypePointer Output 71(fvec4)
93(gl_FragColor): 92(ptr) Variable Output 92(gl_FragColor): 91(ptr) Variable Output
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
9(index): 8(ptr) Variable Function 8(index): 7(ptr) Variable Function
17(str): 16(ptr) Variable Function 16(str): 15(ptr) Variable Function
23(t): 21(ptr) Variable Function 22(t): 20(ptr) Variable Function
51(x): 21(ptr) Variable Function 50(x): 20(ptr) Variable Function
62(y): 21(ptr) Variable Function 61(y): 20(ptr) Variable Function
67(z): 21(ptr) Variable Function 66(z): 20(ptr) Variable Function
74(v): 73(ptr) Variable Function 73(v): 72(ptr) Variable Function
Store 9(index) 10 Store 8(index) 9
22: 21(ptr) AccessChain 17(str) 18 19 21: 20(ptr) AccessChain 16(str) 17 18
Store 22 20 Store 21 19
24: 7(int) Load 9(index) 23: 6(int) Load 8(index)
26: 7(int) ISub 24 25 25: 6(int) ISub 23 24
Store 9(index) 26 Store 8(index) 25
27: 21(ptr) AccessChain 17(str) 18 26 26: 20(ptr) AccessChain 16(str) 17 25
28: 11(float) Load 27 27: 10(float) Load 26
30: 11(float) FAdd 28 29 29: 10(float) FAdd 27 28
Store 27 30 Store 26 29
Store 23(t) 30 Store 22(t) 29
31: 11(float) Load 23(t) 30: 10(float) Load 22(t)
32: 21(ptr) AccessChain 17(str) 18 19 31: 20(ptr) AccessChain 16(str) 17 18
33: 11(float) Load 32 32: 10(float) Load 31
34: 11(float) FAdd 33 31 33: 10(float) FAdd 32 30
35: 21(ptr) AccessChain 17(str) 18 19 34: 20(ptr) AccessChain 16(str) 17 18
Store 35 34 Store 34 33
36: 21(ptr) AccessChain 17(str) 18 19 35: 20(ptr) AccessChain 16(str) 17 18
37: 11(float) Load 36 36: 10(float) Load 35
38: 11(float) FSub 37 29 37: 10(float) FSub 36 28
Store 36 38 Store 35 37
Store 23(t) 37 Store 22(t) 36
39: 7(int) Load 9(index) 38: 6(int) Load 8(index)
40: 7(int) IAdd 39 25 39: 6(int) IAdd 38 24
Store 9(index) 40 Store 8(index) 39
41: 11(float) Load 23(t) 40: 10(float) Load 22(t)
42: 21(ptr) AccessChain 17(str) 18 39 41: 20(ptr) AccessChain 16(str) 17 38
43: 11(float) Load 42 42: 10(float) Load 41
44: 11(float) FAdd 43 41 43: 10(float) FAdd 42 40
45: 21(ptr) AccessChain 17(str) 18 39 44: 20(ptr) AccessChain 16(str) 17 38
Store 45 44 Store 44 43
46: 7(int) Load 9(index) 45: 6(int) Load 8(index)
47: 7(int) ISub 46 25 46: 6(int) ISub 45 24
Store 9(index) 47 Store 8(index) 46
48: 21(ptr) AccessChain 17(str) 18 47 47: 20(ptr) AccessChain 16(str) 17 46
49: 11(float) Load 48 48: 10(float) Load 47
50: 11(float) FSub 49 29 49: 10(float) FSub 48 28
Store 48 50 Store 47 49
52: 21(ptr) AccessChain 17(str) 18 19 51: 20(ptr) AccessChain 16(str) 17 18
53: 11(float) Load 52 52: 10(float) Load 51
Store 51(x) 53 Store 50(x) 52
54: 11(float) Load 51(x) 53: 10(float) Load 50(x)
55: 11(float) FAdd 54 29 54: 10(float) FAdd 53 28
Store 51(x) 55 Store 50(x) 54
56: 11(float) Load 51(x) 55: 10(float) Load 50(x)
57: 11(float) FSub 56 29 56: 10(float) FSub 55 28
Store 51(x) 57 Store 50(x) 56
58: 11(float) Load 51(x) 57: 10(float) Load 50(x)
59: 11(float) FAdd 58 29 58: 10(float) FAdd 57 28
Store 51(x) 59 Store 50(x) 58
60: 11(float) Load 51(x) 59: 10(float) Load 50(x)
61: 11(float) FSub 60 29 60: 10(float) FSub 59 28
Store 51(x) 61 Store 50(x) 60
63: 11(float) Load 51(x) 62: 10(float) Load 50(x)
64: 11(float) Load 51(x) 63: 10(float) Load 50(x)
65: 11(float) FAdd 64 29 64: 10(float) FAdd 63 28
Store 51(x) 65 Store 50(x) 64
66: 11(float) FMul 63 65 65: 10(float) FMul 62 64
Store 62(y) 66 Store 61(y) 65
68: 11(float) Load 62(y) 67: 10(float) Load 61(y)
69: 11(float) Load 51(x) 68: 10(float) Load 50(x)
70: 11(float) FSub 69 29 69: 10(float) FSub 68 28
Store 51(x) 70 Store 50(x) 69
71: 11(float) FMul 68 69 70: 10(float) FMul 67 68
Store 67(z) 71 Store 66(z) 70
Store 74(v) 77 Store 73(v) 76
78: 72(fvec4) Load 74(v) 77: 71(fvec4) Load 73(v)
79: 11(float) CompositeExtract 78 2 78: 10(float) CompositeExtract 77 2
80: 11(float) FSub 79 29 79: 10(float) FSub 78 28
81: 72(fvec4) Load 74(v) 80: 71(fvec4) Load 73(v)
82: 72(fvec4) CompositeInsert 80 81 2 81: 71(fvec4) CompositeInsert 79 80 2
Store 74(v) 82 Store 73(v) 81
83: 72(fvec4) Load 74(v) 82: 71(fvec4) Load 73(v)
84: 72(fvec4) CompositeInsert 79 83 1 83: 71(fvec4) CompositeInsert 78 82 1
Store 74(v) 84 Store 73(v) 83
85: 72(fvec4) Load 74(v) 84: 71(fvec4) Load 73(v)
86: 11(float) CompositeExtract 85 3 85: 10(float) CompositeExtract 84 3
87: 11(float) FSub 86 29 86: 10(float) FSub 85 28
88: 72(fvec4) Load 74(v) 87: 71(fvec4) Load 73(v)
89: 72(fvec4) CompositeInsert 87 88 3 88: 71(fvec4) CompositeInsert 86 87 3
Store 74(v) 89 Store 73(v) 88
90: 72(fvec4) Load 74(v) 89: 71(fvec4) Load 73(v)
91: 72(fvec4) CompositeInsert 87 90 0 90: 71(fvec4) CompositeInsert 86 89 0
Store 74(v) 91 Store 73(v) 90
94: 11(float) Load 67(z) 93: 10(float) Load 66(z)
95: 72(fvec4) Load 74(v) 94: 71(fvec4) Load 73(v)
96: 72(fvec4) VectorTimesScalar 95 94 95: 71(fvec4) VectorTimesScalar 94 93
Store 93(gl_FragColor) 96 Store 92(gl_FragColor) 95
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -7,7 +7,7 @@ Linked vertex stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 26 // Id's are bound by 25
Source GLSL 430 Source GLSL 430
Capability Shader Capability Shader
@ -15,52 +15,50 @@ Linked vertex stage:
MemoryModel Logical GLSL450 MemoryModel Logical GLSL450
EntryPoint Vertex 4 "main" EntryPoint Vertex 4 "main"
Name 4 "main" Name 4 "main"
Name 10 "outVc" Name 9 "outVc"
Name 12 "inV" Name 11 "inV"
Name 14 "outVs" Name 13 "outVs"
Name 16 "outVf" Name 15 "outVf"
Name 18 "outVn" Name 17 "outVn"
Name 20 "outVcn" Name 19 "outVcn"
Name 24 "gl_VertexID" Name 23 "gl_VertexID"
Name 25 "gl_InstanceID" Name 24 "gl_InstanceID"
Decorate 10(outVc) Smooth Decorate 9(outVc) Smooth
Decorate 14(outVs) Smooth Decorate 13(outVs) Smooth
Decorate 16(outVf) Flat Decorate 15(outVf) Flat
Decorate 18(outVn) Noperspective Decorate 17(outVn) Noperspective
Decorate 20(outVcn) Noperspective Decorate 19(outVcn) Noperspective
Decorate 24(gl_VertexID) BuiltIn VertexId Decorate 23(gl_VertexID) BuiltIn VertexId
Decorate 24(gl_VertexID) NoStaticUse Decorate 23(gl_VertexID) NoStaticUse
Decorate 25(gl_InstanceID) BuiltIn InstanceId Decorate 24(gl_InstanceID) BuiltIn InstanceId
Decorate 25(gl_InstanceID) NoStaticUse Decorate 24(gl_InstanceID) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 4 7: TypeVector 6(float) 4
9: TypePointer Output 8(fvec4) 8: TypePointer Output 7(fvec4)
10(outVc): 9(ptr) Variable Output 9(outVc): 8(ptr) Variable Output
11: TypePointer Input 8(fvec4) 10: TypePointer Input 7(fvec4)
12(inV): 11(ptr) Variable Input 11(inV): 10(ptr) Variable Input
14(outVs): 9(ptr) Variable Output 13(outVs): 8(ptr) Variable Output
16(outVf): 9(ptr) Variable Output 15(outVf): 8(ptr) Variable Output
18(outVn): 9(ptr) Variable Output 17(outVn): 8(ptr) Variable Output
20(outVcn): 9(ptr) Variable Output 19(outVcn): 8(ptr) Variable Output
22: TypeInt 32 1 21: TypeInt 32 1
23: TypePointer Input 22(int) 22: TypePointer Input 21(int)
24(gl_VertexID): 23(ptr) Variable Input 23(gl_VertexID): 22(ptr) Variable Input
25(gl_InstanceID): 23(ptr) Variable Input 24(gl_InstanceID): 22(ptr) Variable Input
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
13: 8(fvec4) Load 12(inV) 12: 7(fvec4) Load 11(inV)
Store 10(outVc) 13 Store 9(outVc) 12
15: 8(fvec4) Load 12(inV) 14: 7(fvec4) Load 11(inV)
Store 14(outVs) 15 Store 13(outVs) 14
17: 8(fvec4) Load 12(inV) 16: 7(fvec4) Load 11(inV)
Store 16(outVf) 17 Store 15(outVf) 16
19: 8(fvec4) Load 12(inV) 18: 7(fvec4) Load 11(inV)
Store 18(outVn) 19 Store 17(outVn) 18
21: 8(fvec4) Load 12(inV) 20: 7(fvec4) Load 11(inV)
Store 20(outVcn) 21 Store 19(outVcn) 20
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -0,0 +1,282 @@
spv.queryL.frag
Warning, version 430 is not yet complete; most version-specific features are present, but some are missing.
Linked fragment stage:
// Module Version 99
// Generated by (magic number): 51a00bb
// Id's are bound by 211
Source GLSL 430
Capability Shader
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft
Name 4 "main"
Name 9 "lod"
Name 13 "samp1D"
Name 16 "pf"
Name 23 "isamp2D"
Name 25 "pf2"
Name 34 "usamp3D"
Name 38 "pf3"
Name 46 "sampCube"
Name 55 "isamp1DA"
Name 64 "usamp2DA"
Name 73 "isampCubeA"
Name 82 "samp1Ds"
Name 91 "samp2Ds"
Name 100 "sampCubes"
Name 109 "samp1DAs"
Name 118 "samp2DAs"
Name 127 "sampCubeAs"
Name 134 "levels"
Name 140 "usamp2D"
Name 148 "isamp3D"
Name 156 "isampCube"
Name 168 "samp2DA"
Name 176 "usampCubeA"
Name 206 "sampBuf"
Name 210 "sampRect"
Decorate 206(sampBuf) NoStaticUse
Decorate 210(sampRect) NoStaticUse
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
7: TypeVector 6(float) 2
8: TypePointer Function 7(fvec2)
10: TypeImage 6(float) 1D sampled format:Unknown
11: TypeSampledImage 10
12: TypePointer UniformConstant 11
13(samp1D): 12(ptr) Variable UniformConstant
15: TypePointer Function 6(float)
19: TypeInt 32 1
20: TypeImage 19(int) 2D sampled format:Unknown
21: TypeSampledImage 20
22: TypePointer UniformConstant 21
23(isamp2D): 22(ptr) Variable UniformConstant
30: TypeInt 32 0
31: TypeImage 30(int) 3D sampled format:Unknown
32: TypeSampledImage 31
33: TypePointer UniformConstant 32
34(usamp3D): 33(ptr) Variable UniformConstant
36: TypeVector 6(float) 3
37: TypePointer Function 36(fvec3)
43: TypeImage 6(float) Cube sampled format:Unknown
44: TypeSampledImage 43
45: TypePointer UniformConstant 44
46(sampCube): 45(ptr) Variable UniformConstant
52: TypeImage 19(int) 1D array sampled format:Unknown
53: TypeSampledImage 52
54: TypePointer UniformConstant 53
55(isamp1DA): 54(ptr) Variable UniformConstant
61: TypeImage 30(int) 2D array sampled format:Unknown
62: TypeSampledImage 61
63: TypePointer UniformConstant 62
64(usamp2DA): 63(ptr) Variable UniformConstant
70: TypeImage 19(int) Cube array sampled format:Unknown
71: TypeSampledImage 70
72: TypePointer UniformConstant 71
73(isampCubeA): 72(ptr) Variable UniformConstant
79: TypeImage 6(float) 1D depth sampled format:Unknown
80: TypeSampledImage 79
81: TypePointer UniformConstant 80
82(samp1Ds): 81(ptr) Variable UniformConstant
88: TypeImage 6(float) 2D depth sampled format:Unknown
89: TypeSampledImage 88
90: TypePointer UniformConstant 89
91(samp2Ds): 90(ptr) Variable UniformConstant
97: TypeImage 6(float) Cube depth sampled format:Unknown
98: TypeSampledImage 97
99: TypePointer UniformConstant 98
100(sampCubes): 99(ptr) Variable UniformConstant
106: TypeImage 6(float) 1D depth array sampled format:Unknown
107: TypeSampledImage 106
108: TypePointer UniformConstant 107
109(samp1DAs): 108(ptr) Variable UniformConstant
115: TypeImage 6(float) 2D depth array sampled format:Unknown
116: TypeSampledImage 115
117: TypePointer UniformConstant 116
118(samp2DAs): 117(ptr) Variable UniformConstant
124: TypeImage 6(float) Cube depth array sampled format:Unknown
125: TypeSampledImage 124
126: TypePointer UniformConstant 125
127(sampCubeAs): 126(ptr) Variable UniformConstant
133: TypePointer Function 19(int)
137: TypeImage 30(int) 2D sampled format:Unknown
138: TypeSampledImage 137
139: TypePointer UniformConstant 138
140(usamp2D): 139(ptr) Variable UniformConstant
145: TypeImage 19(int) 3D sampled format:Unknown
146: TypeSampledImage 145
147: TypePointer UniformConstant 146
148(isamp3D): 147(ptr) Variable UniformConstant
153: TypeImage 19(int) Cube sampled format:Unknown
154: TypeSampledImage 153
155: TypePointer UniformConstant 154
156(isampCube): 155(ptr) Variable UniformConstant
165: TypeImage 6(float) 2D array sampled format:Unknown
166: TypeSampledImage 165
167: TypePointer UniformConstant 166
168(samp2DA): 167(ptr) Variable UniformConstant
173: TypeImage 30(int) Cube array sampled format:Unknown
174: TypeSampledImage 173
175: TypePointer UniformConstant 174
176(usampCubeA): 175(ptr) Variable UniformConstant
203: TypeImage 6(float) Buffer sampled format:Unknown
204: TypeSampledImage 203
205: TypePointer UniformConstant 204
206(sampBuf): 205(ptr) Variable UniformConstant
207: TypeImage 6(float) Rect sampled format:Unknown
208: TypeSampledImage 207
209: TypePointer UniformConstant 208
210(sampRect): 209(ptr) Variable UniformConstant
4(main): 2 Function None 3
5: Label
9(lod): 8(ptr) Variable Function
16(pf): 15(ptr) Variable Function
25(pf2): 8(ptr) Variable Function
38(pf3): 37(ptr) Variable Function
134(levels): 133(ptr) Variable Function
14: 11 Load 13(samp1D)
17: 6(float) Load 16(pf)
18: 7(fvec2) ImageQueryLod 14 17
Store 9(lod) 18
24: 21 Load 23(isamp2D)
26: 7(fvec2) Load 25(pf2)
27: 7(fvec2) ImageQueryLod 24 26
28: 7(fvec2) Load 9(lod)
29: 7(fvec2) FAdd 28 27
Store 9(lod) 29
35: 32 Load 34(usamp3D)
39: 36(fvec3) Load 38(pf3)
40: 7(fvec2) ImageQueryLod 35 39
41: 7(fvec2) Load 9(lod)
42: 7(fvec2) FAdd 41 40
Store 9(lod) 42
47: 44 Load 46(sampCube)
48: 36(fvec3) Load 38(pf3)
49: 7(fvec2) ImageQueryLod 47 48
50: 7(fvec2) Load 9(lod)
51: 7(fvec2) FAdd 50 49
Store 9(lod) 51
56: 53 Load 55(isamp1DA)
57: 6(float) Load 16(pf)
58: 7(fvec2) ImageQueryLod 56 57
59: 7(fvec2) Load 9(lod)
60: 7(fvec2) FAdd 59 58
Store 9(lod) 60
65: 62 Load 64(usamp2DA)
66: 7(fvec2) Load 25(pf2)
67: 7(fvec2) ImageQueryLod 65 66
68: 7(fvec2) Load 9(lod)
69: 7(fvec2) FAdd 68 67
Store 9(lod) 69
74: 71 Load 73(isampCubeA)
75: 36(fvec3) Load 38(pf3)
76: 7(fvec2) ImageQueryLod 74 75
77: 7(fvec2) Load 9(lod)
78: 7(fvec2) FAdd 77 76
Store 9(lod) 78
83: 80 Load 82(samp1Ds)
84: 6(float) Load 16(pf)
85: 7(fvec2) ImageQueryLod 83 84
86: 7(fvec2) Load 9(lod)
87: 7(fvec2) FAdd 86 85
Store 9(lod) 87
92: 89 Load 91(samp2Ds)
93: 7(fvec2) Load 25(pf2)
94: 7(fvec2) ImageQueryLod 92 93
95: 7(fvec2) Load 9(lod)
96: 7(fvec2) FAdd 95 94
Store 9(lod) 96
101: 98 Load 100(sampCubes)
102: 36(fvec3) Load 38(pf3)
103: 7(fvec2) ImageQueryLod 101 102
104: 7(fvec2) Load 9(lod)
105: 7(fvec2) FAdd 104 103
Store 9(lod) 105
110: 107 Load 109(samp1DAs)
111: 6(float) Load 16(pf)
112: 7(fvec2) ImageQueryLod 110 111
113: 7(fvec2) Load 9(lod)
114: 7(fvec2) FAdd 113 112
Store 9(lod) 114
119: 116 Load 118(samp2DAs)
120: 7(fvec2) Load 25(pf2)
121: 7(fvec2) ImageQueryLod 119 120
122: 7(fvec2) Load 9(lod)
123: 7(fvec2) FAdd 122 121
Store 9(lod) 123
128: 125 Load 127(sampCubeAs)
129: 36(fvec3) Load 38(pf3)
130: 7(fvec2) ImageQueryLod 128 129
131: 7(fvec2) Load 9(lod)
132: 7(fvec2) FAdd 131 130
Store 9(lod) 132
135: 11 Load 13(samp1D)
136: 19(int) ImageQueryLevels 135
Store 134(levels) 136
141: 138 Load 140(usamp2D)
142: 19(int) ImageQueryLevels 141
143: 19(int) Load 134(levels)
144: 19(int) IAdd 143 142
Store 134(levels) 144
149: 146 Load 148(isamp3D)
150: 19(int) ImageQueryLevels 149
151: 19(int) Load 134(levels)
152: 19(int) IAdd 151 150
Store 134(levels) 152
157: 154 Load 156(isampCube)
158: 19(int) ImageQueryLevels 157
159: 19(int) Load 134(levels)
160: 19(int) IAdd 159 158
Store 134(levels) 160
161: 53 Load 55(isamp1DA)
162: 19(int) ImageQueryLevels 161
163: 19(int) Load 134(levels)
164: 19(int) IAdd 163 162
Store 134(levels) 164
169: 166 Load 168(samp2DA)
170: 19(int) ImageQueryLevels 169
171: 19(int) Load 134(levels)
172: 19(int) IAdd 171 170
Store 134(levels) 172
177: 174 Load 176(usampCubeA)
178: 19(int) ImageQueryLevels 177
179: 19(int) Load 134(levels)
180: 19(int) IAdd 179 178
Store 134(levels) 180
181: 80 Load 82(samp1Ds)
182: 19(int) ImageQueryLevels 181
Store 134(levels) 182
183: 89 Load 91(samp2Ds)
184: 19(int) ImageQueryLevels 183
185: 19(int) Load 134(levels)
186: 19(int) IAdd 185 184
Store 134(levels) 186
187: 98 Load 100(sampCubes)
188: 19(int) ImageQueryLevels 187
189: 19(int) Load 134(levels)
190: 19(int) IAdd 189 188
Store 134(levels) 190
191: 107 Load 109(samp1DAs)
192: 19(int) ImageQueryLevels 191
193: 19(int) Load 134(levels)
194: 19(int) IAdd 193 192
Store 134(levels) 194
195: 116 Load 118(samp2DAs)
196: 19(int) ImageQueryLevels 195
197: 19(int) Load 134(levels)
198: 19(int) IAdd 197 196
Store 134(levels) 198
199: 125 Load 127(sampCubeAs)
200: 19(int) ImageQueryLevels 199
201: 19(int) Load 134(levels)
202: 19(int) IAdd 201 200
Store 134(levels) 202
Return
FunctionEnd

View File

@ -7,7 +7,7 @@ Linked vertex stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 26 // Id's are bound by 25
Source GLSL 450 Source GLSL 450
Capability Shader Capability Shader
@ -15,50 +15,48 @@ Linked vertex stage:
MemoryModel Logical GLSL450 MemoryModel Logical GLSL450
EntryPoint Vertex 4 "main" EntryPoint Vertex 4 "main"
Name 4 "main" Name 4 "main"
Name 10 "color" Name 9 "color"
Name 11 "setBuf" Name 10 "setBuf"
MemberName 11(setBuf) 0 "color" MemberName 10(setBuf) 0 "color"
Name 13 "setBufInst" Name 12 "setBufInst"
Name 22 "sampler" Name 21 "sampler"
Name 24 "gl_VertexID" Name 23 "gl_VertexID"
Name 25 "gl_InstanceID" Name 24 "gl_InstanceID"
Decorate 10(color) Smooth Decorate 9(color) Smooth
Decorate 11(setBuf) GLSLShared Decorate 10(setBuf) GLSLShared
Decorate 11(setBuf) BufferBlock Decorate 10(setBuf) BufferBlock
Decorate 13(setBufInst) DescriptorSet 0 Decorate 12(setBufInst) DescriptorSet 0
Decorate 13(setBufInst) Binding 8 Decorate 12(setBufInst) Binding 8
Decorate 22(sampler) DescriptorSet 4 Decorate 21(sampler) DescriptorSet 4
Decorate 22(sampler) Binding 7 Decorate 21(sampler) Binding 7
Decorate 22(sampler) NoStaticUse Decorate 21(sampler) NoStaticUse
Decorate 24(gl_VertexID) BuiltIn VertexId Decorate 23(gl_VertexID) BuiltIn VertexId
Decorate 24(gl_VertexID) NoStaticUse Decorate 23(gl_VertexID) NoStaticUse
Decorate 25(gl_InstanceID) BuiltIn InstanceId Decorate 24(gl_InstanceID) BuiltIn InstanceId
Decorate 25(gl_InstanceID) NoStaticUse Decorate 24(gl_InstanceID) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 4 7: TypeVector 6(float) 4
9: TypePointer Output 8(fvec4) 8: TypePointer Output 7(fvec4)
10(color): 9(ptr) Variable Output 9(color): 8(ptr) Variable Output
11(setBuf): TypeStruct 8(fvec4) 10(setBuf): TypeStruct 7(fvec4)
12: TypePointer Uniform 11(setBuf) 11: TypePointer Uniform 10(setBuf)
13(setBufInst): 12(ptr) Variable Uniform 12(setBufInst): 11(ptr) Variable Uniform
14: TypeInt 32 1 13: TypeInt 32 1
15: 14(int) Constant 0 14: 13(int) Constant 0
16: TypePointer Uniform 8(fvec4) 15: TypePointer Uniform 7(fvec4)
19: TypeImage 7(float) 2D sampled format:Unknown 18: TypeImage 6(float) 2D sampled format:Unknown
20: TypeSampledImage 19 19: TypeSampledImage 18
21: TypePointer UniformConstant 20 20: TypePointer UniformConstant 19
22(sampler): 21(ptr) Variable UniformConstant 21(sampler): 20(ptr) Variable UniformConstant
23: TypePointer Input 14(int) 22: TypePointer Input 13(int)
24(gl_VertexID): 23(ptr) Variable Input 23(gl_VertexID): 22(ptr) Variable Input
25(gl_InstanceID): 23(ptr) Variable Input 24(gl_InstanceID): 22(ptr) Variable Input
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
17: 16(ptr) AccessChain 13(setBufInst) 15 16: 15(ptr) AccessChain 12(setBufInst) 14
18: 8(fvec4) Load 17 17: 7(fvec4) Load 16
Store 10(color) 18 Store 9(color) 17
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -7,7 +7,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 23 // Id's are bound by 22
Source GLSL 150 Source GLSL 150
Capability Shader Capability Shader
@ -16,38 +16,36 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 10 "foo(" Name 9 "foo("
Name 13 "BaseColor" Name 12 "BaseColor"
Name 17 "gl_FragColor" Name 16 "gl_FragColor"
Name 20 "bigColor" Name 19 "bigColor"
Name 22 "d" Name 21 "d"
Decorate 13(BaseColor) Smooth Decorate 12(BaseColor) Smooth
Decorate 17(gl_FragColor) BuiltIn FragColor Decorate 16(gl_FragColor) BuiltIn FragColor
Decorate 20(bigColor) NoStaticUse Decorate 19(bigColor) NoStaticUse
Decorate 22(d) NoStaticUse Decorate 21(d) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 4 7: TypeVector 6(float) 4
9: TypeFunction 8(fvec4) 8: TypeFunction 7(fvec4)
12: TypePointer Input 8(fvec4) 11: TypePointer Input 7(fvec4)
13(BaseColor): 12(ptr) Variable Input 12(BaseColor): 11(ptr) Variable Input
16: TypePointer Output 8(fvec4) 15: TypePointer Output 7(fvec4)
17(gl_FragColor): 16(ptr) Variable Output 16(gl_FragColor): 15(ptr) Variable Output
19: TypePointer UniformConstant 8(fvec4) 18: TypePointer UniformConstant 7(fvec4)
20(bigColor): 19(ptr) Variable UniformConstant 19(bigColor): 18(ptr) Variable UniformConstant
21: TypePointer UniformConstant 7(float) 20: TypePointer UniformConstant 6(float)
22(d): 21(ptr) Variable UniformConstant 21(d): 20(ptr) Variable UniformConstant
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
18: 8(fvec4) FunctionCall 10(foo() 17: 7(fvec4) FunctionCall 9(foo()
Store 17(gl_FragColor) 18 Store 16(gl_FragColor) 17
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd
10(foo(): 8(fvec4) Function None 9 9(foo(): 7(fvec4) Function None 8
11: Label 10: Label
14: 8(fvec4) Load 13(BaseColor) 13: 7(fvec4) Load 12(BaseColor)
ReturnValue 14 ReturnValue 13
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked vertex stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 44 // Id's are bound by 43
Source GLSL 330 Source GLSL 330
Capability Shader Capability Shader
@ -13,64 +13,62 @@ Linked vertex stage:
MemoryModel Logical GLSL450 MemoryModel Logical GLSL450
EntryPoint Vertex 4 "main" EntryPoint Vertex 4 "main"
Name 4 "main" Name 4 "main"
Name 10 "glPos" Name 9 "glPos"
Name 13 "mvp" Name 12 "mvp"
Name 16 "v" Name 15 "v"
Name 20 "f" Name 19 "f"
Name 24 "am3" Name 23 "am3"
Name 35 "arraym" Name 34 "arraym"
Name 42 "gl_VertexID" Name 41 "gl_VertexID"
Name 43 "gl_InstanceID" Name 42 "gl_InstanceID"
Decorate 10(glPos) Smooth Decorate 9(glPos) Smooth
Decorate 20(f) Smooth Decorate 19(f) Smooth
Decorate 42(gl_VertexID) BuiltIn VertexId Decorate 41(gl_VertexID) BuiltIn VertexId
Decorate 42(gl_VertexID) NoStaticUse Decorate 41(gl_VertexID) NoStaticUse
Decorate 43(gl_InstanceID) BuiltIn InstanceId Decorate 42(gl_InstanceID) BuiltIn InstanceId
Decorate 43(gl_InstanceID) NoStaticUse Decorate 42(gl_InstanceID) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 4 7: TypeVector 6(float) 4
9: TypePointer Output 8(fvec4) 8: TypePointer Output 7(fvec4)
10(glPos): 9(ptr) Variable Output 9(glPos): 8(ptr) Variable Output
11: TypeMatrix 8(fvec4) 4 10: TypeMatrix 7(fvec4) 4
12: TypePointer UniformConstant 11 11: TypePointer UniformConstant 10
13(mvp): 12(ptr) Variable UniformConstant 12(mvp): 11(ptr) Variable UniformConstant
15: TypePointer Input 8(fvec4) 14: TypePointer Input 7(fvec4)
16(v): 15(ptr) Variable Input 15(v): 14(ptr) Variable Input
19: TypePointer Output 7(float) 18: TypePointer Output 6(float)
20(f): 19(ptr) Variable Output 19(f): 18(ptr) Variable Output
21: TypeVector 7(float) 3 20: TypeVector 6(float) 3
22: TypeMatrix 21(fvec3) 3 21: TypeMatrix 20(fvec3) 3
23: TypePointer Input 22 22: TypePointer Input 21
24(am3): 23(ptr) Variable Input 23(am3): 22(ptr) Variable Input
25: TypeInt 32 1 24: TypeInt 32 1
26: 25(int) Constant 2 25: 24(int) Constant 2
27: TypePointer Input 21(fvec3) 26: TypePointer Input 20(fvec3)
31: TypeInt 32 0 30: TypeInt 32 0
32: 31(int) Constant 3 31: 30(int) Constant 3
33: TypeArray 11 32 32: TypeArray 10 31
34: TypePointer Input 33 33: TypePointer Input 32
35(arraym): 34(ptr) Variable Input 34(arraym): 33(ptr) Variable Input
36: 25(int) Constant 1 35: 24(int) Constant 1
41: TypePointer Input 25(int) 40: TypePointer Input 24(int)
42(gl_VertexID): 41(ptr) Variable Input 41(gl_VertexID): 40(ptr) Variable Input
43(gl_InstanceID): 41(ptr) Variable Input 42(gl_InstanceID): 40(ptr) Variable Input
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
14: 11 Load 13(mvp) 13: 10 Load 12(mvp)
17: 8(fvec4) Load 16(v) 16: 7(fvec4) Load 15(v)
18: 8(fvec4) MatrixTimesVector 14 17 17: 7(fvec4) MatrixTimesVector 13 16
Store 10(glPos) 18 Store 9(glPos) 17
28: 27(ptr) AccessChain 24(am3) 26 27: 26(ptr) AccessChain 23(am3) 25
29: 21(fvec3) Load 28 28: 20(fvec3) Load 27
30: 7(float) CompositeExtract 29 1 29: 6(float) CompositeExtract 28 1
37: 15(ptr) AccessChain 35(arraym) 36 26 36: 14(ptr) AccessChain 34(arraym) 35 25
38: 8(fvec4) Load 37 37: 7(fvec4) Load 36
39: 7(float) CompositeExtract 38 3 38: 6(float) CompositeExtract 37 3
40: 7(float) FAdd 30 39 39: 6(float) FAdd 29 38
Store 20(f) 40 Store 19(f) 39
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -7,7 +7,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 51 // Id's are bound by 50
Source GLSL 130 Source GLSL 130
Capability Shader Capability Shader
@ -16,84 +16,82 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 9 "lunarStruct1" Name 8 "lunarStruct1"
MemberName 9(lunarStruct1) 0 "i" MemberName 8(lunarStruct1) 0 "i"
MemberName 9(lunarStruct1) 1 "f" MemberName 8(lunarStruct1) 1 "f"
Name 10 "lunarStruct2" Name 9 "lunarStruct2"
MemberName 10(lunarStruct2) 0 "i" MemberName 9(lunarStruct2) 0 "i"
MemberName 10(lunarStruct2) 1 "f" MemberName 9(lunarStruct2) 1 "f"
MemberName 10(lunarStruct2) 2 "s1_1" MemberName 9(lunarStruct2) 2 "s1_1"
Name 11 "lunarStruct3" Name 10 "lunarStruct3"
MemberName 11(lunarStruct3) 0 "s2_1" MemberName 10(lunarStruct3) 0 "s2_1"
MemberName 11(lunarStruct3) 1 "i" MemberName 10(lunarStruct3) 1 "i"
MemberName 11(lunarStruct3) 2 "f" MemberName 10(lunarStruct3) 2 "f"
MemberName 11(lunarStruct3) 3 "s1_1" MemberName 10(lunarStruct3) 3 "s1_1"
Name 13 "foo3" Name 12 "foo3"
Name 23 "locals2" Name 22 "locals2"
Name 28 "foo2" Name 27 "foo2"
Name 32 "gl_FragColor" Name 31 "gl_FragColor"
Name 41 "sampler" Name 40 "sampler"
Name 45 "coord" Name 44 "coord"
Name 50 "foo" Name 49 "foo"
Decorate 32(gl_FragColor) BuiltIn FragColor Decorate 31(gl_FragColor) BuiltIn FragColor
Decorate 45(coord) Smooth Decorate 44(coord) Smooth
Decorate 50(foo) NoStaticUse Decorate 49(foo) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeInt 32 1 6: TypeInt 32 1
8: TypeFloat 32 7: TypeFloat 32
9(lunarStruct1): TypeStruct 7(int) 8(float) 8(lunarStruct1): TypeStruct 6(int) 7(float)
10(lunarStruct2): TypeStruct 7(int) 8(float) 9(lunarStruct1) 9(lunarStruct2): TypeStruct 6(int) 7(float) 8(lunarStruct1)
11(lunarStruct3): TypeStruct 10(lunarStruct2) 7(int) 8(float) 9(lunarStruct1) 10(lunarStruct3): TypeStruct 9(lunarStruct2) 6(int) 7(float) 8(lunarStruct1)
12: TypePointer UniformConstant 11(lunarStruct3) 11: TypePointer UniformConstant 10(lunarStruct3)
13(foo3): 12(ptr) Variable UniformConstant 12(foo3): 11(ptr) Variable UniformConstant
14: 7(int) Constant 0 13: 6(int) Constant 0
15: TypePointer UniformConstant 7(int) 14: TypePointer UniformConstant 6(int)
18: TypeBool 17: TypeBool
22: TypePointer Function 10(lunarStruct2) 21: TypePointer Function 9(lunarStruct2)
24: TypePointer UniformConstant 10(lunarStruct2) 23: TypePointer UniformConstant 9(lunarStruct2)
28(foo2): 24(ptr) Variable UniformConstant 27(foo2): 23(ptr) Variable UniformConstant
30: TypeVector 8(float) 4 29: TypeVector 7(float) 4
31: TypePointer Output 30(fvec4) 30: TypePointer Output 29(fvec4)
32(gl_FragColor): 31(ptr) Variable Output 31(gl_FragColor): 30(ptr) Variable Output
33: 7(int) Constant 2 32: 6(int) Constant 2
34: 7(int) Constant 1 33: 6(int) Constant 1
35: TypePointer Function 8(float) 34: TypePointer Function 7(float)
38: TypeImage 8(float) 2D sampled format:Unknown 37: TypeImage 7(float) 2D sampled format:Unknown
39: TypeSampledImage 38 38: TypeSampledImage 37
40: TypePointer UniformConstant 39 39: TypePointer UniformConstant 38
41(sampler): 40(ptr) Variable UniformConstant 40(sampler): 39(ptr) Variable UniformConstant
43: TypeVector 8(float) 2 42: TypeVector 7(float) 2
44: TypePointer Input 43(fvec2) 43: TypePointer Input 42(fvec2)
45(coord): 44(ptr) Variable Input 44(coord): 43(ptr) Variable Input
49: TypePointer UniformConstant 9(lunarStruct1) 48: TypePointer UniformConstant 8(lunarStruct1)
50(foo): 49(ptr) Variable UniformConstant 49(foo): 48(ptr) Variable UniformConstant
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
23(locals2): 22(ptr) Variable Function 22(locals2): 21(ptr) Variable Function
16: 15(ptr) AccessChain 13(foo3) 14 14 15: 14(ptr) AccessChain 12(foo3) 13 13
17: 7(int) Load 16 16: 6(int) Load 15
19: 18(bool) SGreaterThan 17 14 18: 17(bool) SGreaterThan 16 13
SelectionMerge 21 None SelectionMerge 20 None
BranchConditional 19 20 27 BranchConditional 18 19 26
20: Label 19: Label
25: 24(ptr) AccessChain 13(foo3) 14 24: 23(ptr) AccessChain 12(foo3) 13
26:10(lunarStruct2) Load 25 25:9(lunarStruct2) Load 24
Store 23(locals2) 26 Store 22(locals2) 25
Branch 21 Branch 20
27: Label 26: Label
29:10(lunarStruct2) Load 28(foo2) 28:9(lunarStruct2) Load 27(foo2)
Store 23(locals2) 29 Store 22(locals2) 28
Branch 21 Branch 20
21: Label 20: Label
36: 35(ptr) AccessChain 23(locals2) 33 34 35: 34(ptr) AccessChain 22(locals2) 32 33
37: 8(float) Load 36 36: 7(float) Load 35
42: 39 Load 41(sampler) 41: 38 Load 40(sampler)
46: 43(fvec2) Load 45(coord) 45: 42(fvec2) Load 44(coord)
47: 30(fvec4) ImageSampleImplicitLod 42 46 46: 29(fvec4) ImageSampleImplicitLod 41 45
48: 30(fvec4) VectorTimesScalar 47 37 47: 29(fvec4) VectorTimesScalar 46 36
Store 32(gl_FragColor) 48 Store 31(gl_FragColor) 47
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -7,7 +7,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 121 // Id's are bound by 120
Source GLSL 130 Source GLSL 130
Capability Shader Capability Shader
@ -16,179 +16,177 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 9 "s0" Name 8 "s0"
MemberName 9(s0) 0 "i" MemberName 8(s0) 0 "i"
Name 10 "s1" Name 9 "s1"
MemberName 10(s1) 0 "i" MemberName 9(s1) 0 "i"
MemberName 10(s1) 1 "f" MemberName 9(s1) 1 "f"
MemberName 10(s1) 2 "s0_1" MemberName 9(s1) 2 "s0_1"
Name 11 "s2" Name 10 "s2"
MemberName 11(s2) 0 "i" MemberName 10(s2) 0 "i"
MemberName 11(s2) 1 "f" MemberName 10(s2) 1 "f"
MemberName 11(s2) 2 "s1_1" MemberName 10(s2) 2 "s1_1"
Name 15 "s3" Name 14 "s3"
MemberName 15(s3) 0 "s2_1" MemberName 14(s3) 0 "s2_1"
MemberName 15(s3) 1 "i" MemberName 14(s3) 1 "i"
MemberName 15(s3) 2 "f" MemberName 14(s3) 2 "f"
MemberName 15(s3) 3 "s1_1" MemberName 14(s3) 3 "s1_1"
Name 17 "foo3" Name 16 "foo3"
Name 28 "locals2" Name 27 "locals2"
Name 41 "fArray" Name 40 "fArray"
Name 47 "locals1Array" Name 46 "locals1Array"
Name 50 "foo1" Name 49 "foo1"
Name 54 "locals0" Name 53 "locals0"
Name 55 "s00" Name 54 "s00"
MemberName 55(s00) 0 "s0_0" MemberName 54(s00) 0 "s0_0"
Name 57 "locals00" Name 56 "locals00"
Name 62 "coord" Name 61 "coord"
Name 69 "foo0" Name 68 "foo0"
Name 84 "foo00" Name 83 "foo00"
Name 97 "gl_FragColor" Name 96 "gl_FragColor"
Name 114 "sampler" Name 113 "sampler"
Name 120 "foo2" Name 119 "foo2"
Decorate 62(coord) Smooth Decorate 61(coord) Smooth
Decorate 97(gl_FragColor) BuiltIn FragColor Decorate 96(gl_FragColor) BuiltIn FragColor
Decorate 120(foo2) NoStaticUse Decorate 119(foo2) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeInt 32 1 6: TypeInt 32 1
8: TypeFloat 32 7: TypeFloat 32
9(s0): TypeStruct 7(int) 8(s0): TypeStruct 6(int)
10(s1): TypeStruct 7(int) 8(float) 9(s0) 9(s1): TypeStruct 6(int) 7(float) 8(s0)
11(s2): TypeStruct 7(int) 8(float) 10(s1) 10(s2): TypeStruct 6(int) 7(float) 9(s1)
12: TypeInt 32 0 11: TypeInt 32 0
13: 12(int) Constant 12 12: 11(int) Constant 12
14: TypeArray 11(s2) 13 13: TypeArray 10(s2) 12
15(s3): TypeStruct 14 7(int) 8(float) 10(s1) 14(s3): TypeStruct 13 6(int) 7(float) 9(s1)
16: TypePointer UniformConstant 15(s3) 15: TypePointer UniformConstant 14(s3)
17(foo3): 16(ptr) Variable UniformConstant 16(foo3): 15(ptr) Variable UniformConstant
18: 7(int) Constant 0 17: 6(int) Constant 0
19: 7(int) Constant 9 18: 6(int) Constant 9
20: TypePointer UniformConstant 7(int) 19: TypePointer UniformConstant 6(int)
23: TypeBool 22: TypeBool
27: TypePointer Function 11(s2) 26: TypePointer Function 10(s2)
29: 7(int) Constant 1 28: 6(int) Constant 1
30: 8(float) Constant 1065353216 29: 7(float) Constant 1065353216
31: TypePointer Function 8(float) 30: TypePointer Function 7(float)
33: 7(int) Constant 2 32: 6(int) Constant 2
34: 9(s0) ConstantComposite 18 33: 8(s0) ConstantComposite 17
35: 10(s1) ConstantComposite 18 30 34 34: 9(s1) ConstantComposite 17 29 33
36: TypePointer Function 10(s1) 35: TypePointer Function 9(s1)
38: 12(int) Constant 6 37: 11(int) Constant 6
39: TypeArray 8(float) 38 38: TypeArray 7(float) 37
40: TypePointer Function 39 39: TypePointer Function 38
42: 8(float) Constant 0 41: 7(float) Constant 0
43: 39 ConstantComposite 42 42 42 42 42 42 42: 38 ConstantComposite 41 41 41 41 41 41
44: 12(int) Constant 10 43: 11(int) Constant 10
45: TypeArray 10(s1) 44 44: TypeArray 9(s1) 43
46: TypePointer Function 45 45: TypePointer Function 44
48: 7(int) Constant 6 47: 6(int) Constant 6
49: TypePointer UniformConstant 10(s1) 48: TypePointer UniformConstant 9(s1)
50(foo1): 49(ptr) Variable UniformConstant 49(foo1): 48(ptr) Variable UniformConstant
53: TypePointer Function 9(s0) 52: TypePointer Function 8(s0)
55(s00): TypeStruct 9(s0) 54(s00): TypeStruct 8(s0)
56: TypePointer Function 55(s00) 55: TypePointer Function 54(s00)
58: 55(s00) ConstantComposite 34 57: 54(s00) ConstantComposite 33
60: TypeVector 8(float) 2 59: TypeVector 7(float) 2
61: TypePointer Input 60(fvec2) 60: TypePointer Input 59(fvec2)
62(coord): 61(ptr) Variable Input 61(coord): 60(ptr) Variable Input
68: TypePointer UniformConstant 9(s0) 67: TypePointer UniformConstant 8(s0)
69(foo0): 68(ptr) Variable UniformConstant 68(foo0): 67(ptr) Variable UniformConstant
73: 8(float) Constant 1073741824 72: 7(float) Constant 1073741824
74: 8(float) Constant 1077936128 73: 7(float) Constant 1077936128
75: 8(float) Constant 1082130432 74: 7(float) Constant 1082130432
76: 8(float) Constant 1084227584 75: 7(float) Constant 1084227584
77: 39 ConstantComposite 42 30 73 74 75 76 76: 38 ConstantComposite 41 29 72 73 74 75
83: TypePointer UniformConstant 55(s00) 82: TypePointer UniformConstant 54(s00)
84(foo00): 83(ptr) Variable UniformConstant 83(foo00): 82(ptr) Variable UniformConstant
86: TypePointer Function 7(int) 85: TypePointer Function 6(int)
89: 7(int) Constant 5 88: 6(int) Constant 5
95: TypeVector 8(float) 4 94: TypeVector 7(float) 4
96: TypePointer Output 95(fvec4) 95: TypePointer Output 94(fvec4)
97(gl_FragColor): 96(ptr) Variable Output 96(gl_FragColor): 95(ptr) Variable Output
104: 7(int) Constant 3 103: 6(int) Constant 3
111: TypeImage 8(float) 2D sampled format:Unknown 110: TypeImage 7(float) 2D sampled format:Unknown
112: TypeSampledImage 111 111: TypeSampledImage 110
113: TypePointer UniformConstant 112 112: TypePointer UniformConstant 111
114(sampler): 113(ptr) Variable UniformConstant 113(sampler): 112(ptr) Variable UniformConstant
119: TypePointer UniformConstant 11(s2) 118: TypePointer UniformConstant 10(s2)
120(foo2): 119(ptr) Variable UniformConstant 119(foo2): 118(ptr) Variable UniformConstant
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
28(locals2): 27(ptr) Variable Function 27(locals2): 26(ptr) Variable Function
41(fArray): 40(ptr) Variable Function 40(fArray): 39(ptr) Variable Function
47(locals1Array): 46(ptr) Variable Function 46(locals1Array): 45(ptr) Variable Function
54(locals0): 53(ptr) Variable Function 53(locals0): 52(ptr) Variable Function
57(locals00): 56(ptr) Variable Function 56(locals00): 55(ptr) Variable Function
21: 20(ptr) AccessChain 17(foo3) 18 19 18 20: 19(ptr) AccessChain 16(foo3) 17 18 17
22: 7(int) Load 21 21: 6(int) Load 20
24: 23(bool) SGreaterThan 22 18 23: 22(bool) SGreaterThan 21 17
SelectionMerge 26 None SelectionMerge 25 None
BranchConditional 24 25 59 BranchConditional 23 24 58
25: Label 24: Label
32: 31(ptr) AccessChain 28(locals2) 29 31: 30(ptr) AccessChain 27(locals2) 28
Store 32 30 Store 31 29
37: 36(ptr) AccessChain 28(locals2) 33 36: 35(ptr) AccessChain 27(locals2) 32
Store 37 35 Store 36 34
Store 41(fArray) 43 Store 40(fArray) 42
51: 10(s1) Load 50(foo1) 50: 9(s1) Load 49(foo1)
52: 36(ptr) AccessChain 47(locals1Array) 48 51: 35(ptr) AccessChain 46(locals1Array) 47
Store 52 51 Store 51 50
Store 54(locals0) 34 Store 53(locals0) 33
Store 57(locals00) 58 Store 56(locals00) 57
Branch 26 Branch 25
59: Label 58: Label
63: 60(fvec2) Load 62(coord) 62: 59(fvec2) Load 61(coord)
64: 8(float) CompositeExtract 63 0 63: 7(float) CompositeExtract 62 0
65: 31(ptr) AccessChain 28(locals2) 29 64: 30(ptr) AccessChain 27(locals2) 28
Store 65 64 Store 64 63
66: 60(fvec2) Load 62(coord) 65: 59(fvec2) Load 61(coord)
67: 8(float) CompositeExtract 66 1 66: 7(float) CompositeExtract 65 1
70: 9(s0) Load 69(foo0) 69: 8(s0) Load 68(foo0)
71: 10(s1) CompositeConstruct 29 67 70 70: 9(s1) CompositeConstruct 28 66 69
72: 36(ptr) AccessChain 28(locals2) 33 71: 35(ptr) AccessChain 27(locals2) 32
Store 72 71 Store 71 70
Store 41(fArray) 77 Store 40(fArray) 76
78: 36(ptr) AccessChain 28(locals2) 33 77: 35(ptr) AccessChain 27(locals2) 32
79: 10(s1) Load 78 78: 9(s1) Load 77
80: 36(ptr) AccessChain 47(locals1Array) 48 79: 35(ptr) AccessChain 46(locals1Array) 47
Store 80 79 Store 79 78
81: 68(ptr) AccessChain 50(foo1) 33 80: 67(ptr) AccessChain 49(foo1) 32
82: 9(s0) Load 81 81: 8(s0) Load 80
Store 54(locals0) 82 Store 53(locals0) 81
85: 55(s00) Load 84(foo00) 84: 54(s00) Load 83(foo00)
Store 57(locals00) 85 Store 56(locals00) 84
Branch 26 Branch 25
26: Label 25: Label
87: 86(ptr) AccessChain 54(locals0) 18 86: 85(ptr) AccessChain 53(locals0) 17
88: 7(int) Load 87 87: 6(int) Load 86
90: 23(bool) SGreaterThan 88 89 89: 22(bool) SGreaterThan 87 88
SelectionMerge 92 None SelectionMerge 91 None
BranchConditional 90 91 92 BranchConditional 89 90 91
91: Label 90: Label
93: 53(ptr) AccessChain 57(locals00) 18 92: 52(ptr) AccessChain 56(locals00) 17
94: 9(s0) Load 93 93: 8(s0) Load 92
Store 54(locals0) 94 Store 53(locals0) 93
Branch 92 Branch 91
92: Label 91: Label
98: 86(ptr) AccessChain 54(locals0) 18 97: 85(ptr) AccessChain 53(locals0) 17
99: 7(int) Load 98 98: 6(int) Load 97
100: 8(float) ConvertSToF 99 99: 7(float) ConvertSToF 98
101: 31(ptr) AccessChain 47(locals1Array) 48 29 100: 30(ptr) AccessChain 46(locals1Array) 47 28
102: 8(float) Load 101 101: 7(float) Load 100
103: 8(float) FAdd 100 102 102: 7(float) FAdd 99 101
105: 31(ptr) AccessChain 41(fArray) 104 104: 30(ptr) AccessChain 40(fArray) 103
106: 8(float) Load 105 105: 7(float) Load 104
107: 8(float) FAdd 103 106 106: 7(float) FAdd 102 105
108: 31(ptr) AccessChain 28(locals2) 33 29 107: 30(ptr) AccessChain 27(locals2) 32 28
109: 8(float) Load 108 108: 7(float) Load 107
110: 8(float) FAdd 107 109 109: 7(float) FAdd 106 108
115: 112 Load 114(sampler) 114: 111 Load 113(sampler)
116: 60(fvec2) Load 62(coord) 115: 59(fvec2) Load 61(coord)
117: 95(fvec4) ImageSampleImplicitLod 115 116 116: 94(fvec4) ImageSampleImplicitLod 114 115
118: 95(fvec4) VectorTimesScalar 117 110 117: 94(fvec4) VectorTimesScalar 116 109
Store 97(gl_FragColor) 118 Store 96(gl_FragColor) 117
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -7,7 +7,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 62 // Id's are bound by 61
Source GLSL 130 Source GLSL 130
Capability Shader Capability Shader
@ -16,91 +16,89 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 9 "scale" Name 8 "scale"
Name 19 "lunarStruct1" Name 18 "lunarStruct1"
MemberName 19(lunarStruct1) 0 "i" MemberName 18(lunarStruct1) 0 "i"
MemberName 19(lunarStruct1) 1 "f" MemberName 18(lunarStruct1) 1 "f"
MemberName 19(lunarStruct1) 2 "color" MemberName 18(lunarStruct1) 2 "color"
Name 22 "lunarStruct2" Name 21 "lunarStruct2"
MemberName 22(lunarStruct2) 0 "i" MemberName 21(lunarStruct2) 0 "i"
MemberName 22(lunarStruct2) 1 "f" MemberName 21(lunarStruct2) 1 "f"
MemberName 22(lunarStruct2) 2 "s1_1" MemberName 21(lunarStruct2) 2 "s1_1"
Name 25 "foo2" Name 24 "foo2"
Name 47 "gl_FragColor" Name 46 "gl_FragColor"
Name 52 "sampler" Name 51 "sampler"
Name 56 "coord" Name 55 "coord"
Name 61 "foo" Name 60 "foo"
Decorate 47(gl_FragColor) BuiltIn FragColor Decorate 46(gl_FragColor) BuiltIn FragColor
Decorate 56(coord) Smooth Decorate 55(coord) Smooth
Decorate 61(foo) NoStaticUse Decorate 60(foo) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypePointer Function 7(float) 7: TypePointer Function 6(float)
10: 7(float) Constant 0 9: 6(float) Constant 0
11: TypeInt 32 1 10: TypeInt 32 1
12: TypeInt 32 0 11: TypeInt 32 0
13: 12(int) Constant 5 12: 11(int) Constant 5
14: TypeArray 11(int) 13 13: TypeArray 10(int) 12
15: 12(int) Constant 4 14: 11(int) Constant 4
16: TypeArray 7(float) 15 15: TypeArray 6(float) 14
17: TypeVector 7(float) 4 16: TypeVector 6(float) 4
18: TypeArray 17(fvec4) 13 17: TypeArray 16(fvec4) 12
19(lunarStruct1): TypeStruct 11(int) 16 18 18(lunarStruct1): TypeStruct 10(int) 15 17
20: 12(int) Constant 7 19: 11(int) Constant 7
21: TypeArray 19(lunarStruct1) 20 20: TypeArray 18(lunarStruct1) 19
22(lunarStruct2): TypeStruct 14 7(float) 21 21(lunarStruct2): TypeStruct 13 6(float) 20
23: TypeArray 22(lunarStruct2) 13 22: TypeArray 21(lunarStruct2) 12
24: TypePointer UniformConstant 23 23: TypePointer UniformConstant 22
25(foo2): 24(ptr) Variable UniformConstant 24(foo2): 23(ptr) Variable UniformConstant
26: 11(int) Constant 3 25: 10(int) Constant 3
27: 11(int) Constant 0 26: 10(int) Constant 0
28: 11(int) Constant 4 27: 10(int) Constant 4
29: TypePointer UniformConstant 11(int) 28: TypePointer UniformConstant 10(int)
32: TypeBool 31: TypeBool
36: 11(int) Constant 2 35: 10(int) Constant 2
37: TypePointer UniformConstant 17(fvec4) 36: TypePointer UniformConstant 16(fvec4)
42: 11(int) Constant 1 41: 10(int) Constant 1
43: TypePointer UniformConstant 7(float) 42: TypePointer UniformConstant 6(float)
46: TypePointer Output 17(fvec4) 45: TypePointer Output 16(fvec4)
47(gl_FragColor): 46(ptr) Variable Output 46(gl_FragColor): 45(ptr) Variable Output
49: TypeImage 7(float) 2D sampled format:Unknown 48: TypeImage 6(float) 2D sampled format:Unknown
50: TypeSampledImage 49 49: TypeSampledImage 48
51: TypePointer UniformConstant 50 50: TypePointer UniformConstant 49
52(sampler): 51(ptr) Variable UniformConstant 51(sampler): 50(ptr) Variable UniformConstant
54: TypeVector 7(float) 2 53: TypeVector 6(float) 2
55: TypePointer Input 54(fvec2) 54: TypePointer Input 53(fvec2)
56(coord): 55(ptr) Variable Input 55(coord): 54(ptr) Variable Input
60: TypePointer UniformConstant 19(lunarStruct1) 59: TypePointer UniformConstant 18(lunarStruct1)
61(foo): 60(ptr) Variable UniformConstant 60(foo): 59(ptr) Variable UniformConstant
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
9(scale): 8(ptr) Variable Function 8(scale): 7(ptr) Variable Function
Store 9(scale) 10 Store 8(scale) 9
30: 29(ptr) AccessChain 25(foo2) 26 27 28 29: 28(ptr) AccessChain 24(foo2) 25 26 27
31: 11(int) Load 30 30: 10(int) Load 29
33: 32(bool) SGreaterThan 31 27 32: 31(bool) SGreaterThan 30 26
SelectionMerge 35 None SelectionMerge 34 None
BranchConditional 33 34 41 BranchConditional 32 33 40
34: Label 33: Label
38: 37(ptr) AccessChain 25(foo2) 26 36 36 36 26 37: 36(ptr) AccessChain 24(foo2) 25 35 35 35 25
39: 17(fvec4) Load 38 38: 16(fvec4) Load 37
40: 7(float) CompositeExtract 39 0 39: 6(float) CompositeExtract 38 0
Store 9(scale) 40 Store 8(scale) 39
Branch 35 Branch 34
41: Label 40: Label
44: 43(ptr) AccessChain 25(foo2) 26 36 36 42 26 43: 42(ptr) AccessChain 24(foo2) 25 35 35 41 25
45: 7(float) Load 44 44: 6(float) Load 43
Store 9(scale) 45 Store 8(scale) 44
Branch 35 Branch 34
35: Label 34: Label
48: 7(float) Load 9(scale) 47: 6(float) Load 8(scale)
53: 50 Load 52(sampler) 52: 49 Load 51(sampler)
57: 54(fvec2) Load 56(coord) 56: 53(fvec2) Load 55(coord)
58: 17(fvec4) ImageSampleImplicitLod 53 57 57: 16(fvec4) ImageSampleImplicitLod 52 56
59: 17(fvec4) VectorTimesScalar 58 48 58: 16(fvec4) VectorTimesScalar 57 47
Store 47(gl_FragColor) 59 Store 46(gl_FragColor) 58
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -10,7 +10,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 261 // Id's are bound by 260
Source ESSL 310 Source ESSL 310
Capability Shader Capability Shader
@ -19,382 +19,380 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 16 "foo1(vf4;vf4;i1;" Name 15 "foo1(vf4;vf4;i1;"
Name 13 "v1" Name 12 "v1"
Name 14 "v2" Name 13 "v2"
Name 15 "i1" Name 14 "i1"
Name 21 "foo2(vf4;vf4;i1;" Name 20 "foo2(vf4;vf4;i1;"
Name 18 "v1" Name 17 "v1"
Name 19 "v2" Name 18 "v2"
Name 20 "i1" Name 19 "i1"
Name 59 "local" Name 58 "local"
Name 61 "c" Name 60 "c"
Name 72 "f" Name 71 "f"
Name 74 "x" Name 73 "x"
Name 128 "d" Name 127 "d"
Name 154 "i" Name 153 "i"
Name 172 "j" Name 171 "j"
Name 222 "color" Name 221 "color"
Name 228 "v" Name 227 "v"
Name 229 "param" Name 228 "param"
Name 231 "param" Name 230 "param"
Name 233 "param" Name 232 "param"
Name 239 "param" Name 238 "param"
Name 241 "param" Name 240 "param"
Name 243 "param" Name 242 "param"
Decorate 59(local) RelaxedPrecision Decorate 58(local) RelaxedPrecision
Decorate 61(c) RelaxedPrecision Decorate 60(c) RelaxedPrecision
Decorate 72(f) RelaxedPrecision Decorate 71(f) RelaxedPrecision
Decorate 74(x) RelaxedPrecision Decorate 73(x) RelaxedPrecision
Decorate 74(x) Smooth Decorate 73(x) Smooth
Decorate 128(d) RelaxedPrecision Decorate 127(d) RelaxedPrecision
Decorate 154(i) RelaxedPrecision Decorate 153(i) RelaxedPrecision
Decorate 172(j) RelaxedPrecision Decorate 171(j) RelaxedPrecision
Decorate 222(color) RelaxedPrecision Decorate 221(color) RelaxedPrecision
Decorate 228(v) RelaxedPrecision Decorate 227(v) RelaxedPrecision
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 4 7: TypeVector 6(float) 4
9: TypePointer Function 8(fvec4) 8: TypePointer Function 7(fvec4)
10: TypeInt 32 1 9: TypeInt 32 1
11: TypePointer Function 10(int) 10: TypePointer Function 9(int)
12: TypeFunction 8(fvec4) 9(ptr) 9(ptr) 11(ptr) 11: TypeFunction 7(fvec4) 8(ptr) 8(ptr) 10(ptr)
37: 7(float) Constant 0 36: 6(float) Constant 0
38: 8(fvec4) ConstantComposite 37 37 37 37 37: 7(fvec4) ConstantComposite 36 36 36 36
48: 7(float) Constant 1065353216 47: 6(float) Constant 1065353216
49: 8(fvec4) ConstantComposite 48 48 48 48 48: 7(fvec4) ConstantComposite 47 47 47 47
60: TypePointer UniformConstant 10(int) 59: TypePointer UniformConstant 9(int)
61(c): 60(ptr) Variable UniformConstant 60(c): 59(ptr) Variable UniformConstant
64: 10(int) Constant 1 63: 9(int) Constant 1
71: TypePointer Function 7(float) 70: TypePointer Function 6(float)
73: TypePointer Input 7(float) 72: TypePointer Input 6(float)
74(x): 73(ptr) Variable Input 73(x): 72(ptr) Variable Input
128(d): 60(ptr) Variable UniformConstant 127(d): 59(ptr) Variable UniformConstant
155: 10(int) Constant 0 154: 9(int) Constant 0
160: 10(int) Constant 10 159: 9(int) Constant 10
161: TypeBool 160: TypeBool
173: 10(int) Constant 20 172: 9(int) Constant 20
178: 10(int) Constant 30 177: 9(int) Constant 30
183: 7(float) Constant 1120429670 182: 6(float) Constant 1120429670
203: 7(float) Constant 1079739679 202: 6(float) Constant 1079739679
221: TypePointer Output 7(float) 220: TypePointer Output 6(float)
222(color): 221(ptr) Variable Output 221(color): 220(ptr) Variable Output
227: TypePointer UniformConstant 8(fvec4) 226: TypePointer UniformConstant 7(fvec4)
228(v): 227(ptr) Variable UniformConstant 227(v): 226(ptr) Variable UniformConstant
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
59(local): 11(ptr) Variable Function 58(local): 10(ptr) Variable Function
72(f): 71(ptr) Variable Function 71(f): 70(ptr) Variable Function
154(i): 11(ptr) Variable Function 153(i): 10(ptr) Variable Function
172(j): 11(ptr) Variable Function 171(j): 10(ptr) Variable Function
229(param): 9(ptr) Variable Function 228(param): 8(ptr) Variable Function
231(param): 9(ptr) Variable Function 230(param): 8(ptr) Variable Function
233(param): 11(ptr) Variable Function 232(param): 10(ptr) Variable Function
239(param): 9(ptr) Variable Function 238(param): 8(ptr) Variable Function
241(param): 9(ptr) Variable Function 240(param): 8(ptr) Variable Function
243(param): 11(ptr) Variable Function 242(param): 10(ptr) Variable Function
62: 10(int) Load 61(c) 61: 9(int) Load 60(c)
Store 59(local) 62 Store 58(local) 61
63: 10(int) Load 59(local) 62: 9(int) Load 58(local)
65: 10(int) IAdd 63 64 64: 9(int) IAdd 62 63
Store 59(local) 65 Store 58(local) 64
66: 10(int) Load 61(c) 65: 9(int) Load 60(c)
SelectionMerge 70 None SelectionMerge 69 None
Switch 66 69 Switch 65 68
case 1: 67 case 1: 66
case 2: 68 case 2: 67
66: Label
74: 6(float) Load 73(x)
75: 6(float) ExtInst 1(GLSL.std.450) 13(Sin) 74
Store 71(f) 75
Branch 69
67: Label 67: Label
75: 7(float) Load 74(x) 77: 6(float) Load 73(x)
76: 7(float) ExtInst 1(GLSL.std.450) 13(Sin) 75 78: 6(float) ExtInst 1(GLSL.std.450) 14(Cos) 77
Store 72(f) 76 Store 71(f) 78
Branch 70 Branch 69
68: Label 68: Label
78: 7(float) Load 74(x) 80: 6(float) Load 73(x)
79: 7(float) ExtInst 1(GLSL.std.450) 14(Cos) 78 81: 6(float) ExtInst 1(GLSL.std.450) 15(Tan) 80
Store 72(f) 79 Store 71(f) 81
Branch 70 Branch 69
69: Label 69: Label
81: 7(float) Load 74(x) 83: 9(int) Load 60(c)
82: 7(float) ExtInst 1(GLSL.std.450) 15(Tan) 81 SelectionMerge 87 None
Store 72(f) 82 Switch 83 86
Branch 70 case 1: 84
70: Label case 2: 85
84: 10(int) Load 61(c) 84: Label
SelectionMerge 88 None 88: 6(float) Load 73(x)
Switch 84 87 89: 6(float) ExtInst 1(GLSL.std.450) 13(Sin) 88
case 1: 85 90: 6(float) Load 71(f)
case 2: 86 91: 6(float) FAdd 90 89
Store 71(f) 91
Branch 85
85: Label 85: Label
89: 7(float) Load 74(x) 92: 6(float) Load 73(x)
90: 7(float) ExtInst 1(GLSL.std.450) 13(Sin) 89 93: 6(float) ExtInst 1(GLSL.std.450) 14(Cos) 92
91: 7(float) Load 72(f) 94: 6(float) Load 71(f)
92: 7(float) FAdd 91 90 95: 6(float) FAdd 94 93
Store 72(f) 92 Store 71(f) 95
Branch 86 Branch 87
86: Label 86: Label
93: 7(float) Load 74(x) 97: 6(float) Load 73(x)
94: 7(float) ExtInst 1(GLSL.std.450) 14(Cos) 93 98: 6(float) ExtInst 1(GLSL.std.450) 15(Tan) 97
95: 7(float) Load 72(f) 99: 6(float) Load 71(f)
96: 7(float) FAdd 95 94 100: 6(float) FAdd 99 98
Store 72(f) 96 Store 71(f) 100
Branch 88 Branch 87
87: Label 87: Label
98: 7(float) Load 74(x) 102: 9(int) Load 60(c)
99: 7(float) ExtInst 1(GLSL.std.450) 15(Tan) 98 SelectionMerge 105 None
100: 7(float) Load 72(f) Switch 102 105
101: 7(float) FAdd 100 99 case 1: 103
Store 72(f) 101 case 2: 104
Branch 88 103: Label
88: Label 106: 6(float) Load 73(x)
103: 10(int) Load 61(c) 107: 6(float) ExtInst 1(GLSL.std.450) 13(Sin) 106
SelectionMerge 106 None 108: 6(float) Load 71(f)
Switch 103 106 109: 6(float) FAdd 108 107
case 1: 104 Store 71(f) 109
case 2: 105 Branch 105
104: Label 104: Label
107: 7(float) Load 74(x) 111: 6(float) Load 73(x)
108: 7(float) ExtInst 1(GLSL.std.450) 13(Sin) 107 112: 6(float) ExtInst 1(GLSL.std.450) 14(Cos) 111
109: 7(float) Load 72(f) 113: 6(float) Load 71(f)
110: 7(float) FAdd 109 108 114: 6(float) FAdd 113 112
Store 72(f) 110 Store 71(f) 114
Branch 106 Branch 105
105: Label 105: Label
112: 7(float) Load 74(x) 117: 9(int) Load 60(c)
113: 7(float) ExtInst 1(GLSL.std.450) 14(Cos) 112 SelectionMerge 121 None
114: 7(float) Load 72(f) Switch 117 120
115: 7(float) FAdd 114 113 case 1: 118
Store 72(f) 115 case 2: 119
Branch 106 118: Label
106: Label 122: 6(float) Load 73(x)
118: 10(int) Load 61(c) 123: 6(float) ExtInst 1(GLSL.std.450) 13(Sin) 122
SelectionMerge 122 None 124: 6(float) Load 71(f)
Switch 118 121 125: 6(float) FAdd 124 123
case 1: 119 Store 71(f) 125
case 2: 120 Branch 121
119: Label 119: Label
123: 7(float) Load 74(x) 128: 9(int) Load 127(d)
124: 7(float) ExtInst 1(GLSL.std.450) 13(Sin) 123 SelectionMerge 131 None
125: 7(float) Load 72(f) Switch 128 131
126: 7(float) FAdd 125 124 case 1: 129
Store 72(f) 126 case 2: 130
Branch 122 129: Label
120: Label 132: 6(float) Load 73(x)
129: 10(int) Load 128(d) 133: 6(float) Load 73(x)
SelectionMerge 132 None 134: 6(float) FMul 132 133
Switch 129 132 135: 6(float) Load 73(x)
case 1: 130 136: 6(float) FMul 134 135
case 2: 131 137: 6(float) Load 71(f)
138: 6(float) FAdd 137 136
Store 71(f) 138
Branch 131
130: Label 130: Label
133: 7(float) Load 74(x) 140: 6(float) Load 73(x)
134: 7(float) Load 74(x) 141: 6(float) Load 73(x)
135: 7(float) FMul 133 134 142: 6(float) FMul 140 141
136: 7(float) Load 74(x) 143: 6(float) Load 71(f)
137: 7(float) FMul 135 136 144: 6(float) FAdd 143 142
138: 7(float) Load 72(f) Store 71(f) 144
139: 7(float) FAdd 138 137 Branch 131
Store 72(f) 139 131: Label
Branch 132 Branch 121
131: Label 120: Label
141: 7(float) Load 74(x) 148: 6(float) Load 73(x)
142: 7(float) Load 74(x) 149: 6(float) ExtInst 1(GLSL.std.450) 15(Tan) 148
143: 7(float) FMul 141 142 150: 6(float) Load 71(f)
144: 7(float) Load 72(f) 151: 6(float) FAdd 150 149
145: 7(float) FAdd 144 143 Store 71(f) 151
Store 72(f) 145 Branch 121
Branch 132 121: Label
132: Label Store 153(i) 154
Branch 122 Branch 155
121: Label 155: Label
149: 7(float) Load 74(x) 158: 9(int) Load 153(i)
150: 7(float) ExtInst 1(GLSL.std.450) 15(Tan) 149 161: 160(bool) SLessThan 158 159
151: 7(float) Load 72(f) LoopMerge 156 None
152: 7(float) FAdd 151 150 BranchConditional 161 157 156
Store 72(f) 152 157: Label
Branch 122 162: 9(int) Load 60(c)
122: Label SelectionMerge 166 None
Store 154(i) 155 Switch 162 165
Branch 156 case 1: 163
156: Label case 2: 164
159: 10(int) Load 154(i) 163: Label
162: 161(bool) SLessThan 159 160 167: 6(float) Load 73(x)
LoopMerge 157 None 168: 6(float) ExtInst 1(GLSL.std.450) 13(Sin) 167
BranchConditional 162 158 157 169: 6(float) Load 71(f)
158: Label 170: 6(float) FAdd 169 168
163: 10(int) Load 61(c) Store 71(f) 170
SelectionMerge 167 None Store 171(j) 172
Switch 163 166 Branch 173
case 1: 164 173: Label
case 2: 165 176: 9(int) Load 171(j)
164: Label 178: 160(bool) SLessThan 176 177
168: 7(float) Load 74(x) LoopMerge 174 None
169: 7(float) ExtInst 1(GLSL.std.450) 13(Sin) 168 BranchConditional 178 175 174
170: 7(float) Load 72(f) 175: Label
171: 7(float) FAdd 170 169 179: 6(float) Load 71(f)
Store 72(f) 171 180: 6(float) FAdd 179 47
Store 172(j) 173 Store 71(f) 180
Branch 174 181: 6(float) Load 71(f)
183: 160(bool) FOrdLessThan 181 182
SelectionMerge 185 None
BranchConditional 183 184 185
184: Label
Branch 174
185: Label
187: 9(int) Load 171(j)
188: 9(int) IAdd 187 63
Store 171(j) 188
Branch 173
174: Label 174: Label
177: 10(int) Load 172(j) Branch 166
179: 161(bool) SLessThan 177 178 164: Label
LoopMerge 175 None 190: 6(float) Load 73(x)
BranchConditional 179 176 175 191: 6(float) ExtInst 1(GLSL.std.450) 14(Cos) 190
176: Label 192: 6(float) Load 71(f)
180: 7(float) Load 72(f) 193: 6(float) FAdd 192 191
181: 7(float) FAdd 180 48 Store 71(f) 193
Store 72(f) 181 Branch 166
182: 7(float) Load 72(f)
184: 161(bool) FOrdLessThan 182 183
SelectionMerge 186 None
BranchConditional 184 185 186
185: Label
Branch 175
186: Label
188: 10(int) Load 172(j)
189: 10(int) IAdd 188 64
Store 172(j) 189
Branch 174
175: Label
Branch 167
165: Label 165: Label
191: 7(float) Load 74(x) 196: 6(float) Load 73(x)
192: 7(float) ExtInst 1(GLSL.std.450) 14(Cos) 191 197: 6(float) ExtInst 1(GLSL.std.450) 15(Tan) 196
193: 7(float) Load 72(f) 198: 6(float) Load 71(f)
194: 7(float) FAdd 193 192 199: 6(float) FAdd 198 197
Store 72(f) 194 Store 71(f) 199
Branch 167 Branch 166
166: Label 166: Label
197: 7(float) Load 74(x) 201: 6(float) Load 71(f)
198: 7(float) ExtInst 1(GLSL.std.450) 15(Tan) 197 203: 160(bool) FOrdLessThan 201 202
199: 7(float) Load 72(f) SelectionMerge 205 None
200: 7(float) FAdd 199 198 BranchConditional 203 204 205
Store 72(f) 200 204: Label
Branch 167 Branch 156
167: Label 205: Label
202: 7(float) Load 72(f) 207: 9(int) Load 153(i)
204: 161(bool) FOrdLessThan 202 203 208: 9(int) IAdd 207 63
SelectionMerge 206 None Store 153(i) 208
BranchConditional 204 205 206 Branch 155
205: Label 156: Label
Branch 157 209: 9(int) Load 60(c)
206: Label SelectionMerge 212 None
208: 10(int) Load 154(i) Switch 209 212
209: 10(int) IAdd 208 64 case 1: 210
Store 154(i) 209 case 2: 211
Branch 156 210: Label
157: Label 213: 6(float) Load 73(x)
210: 10(int) Load 61(c) 214: 6(float) ExtInst 1(GLSL.std.450) 13(Sin) 213
SelectionMerge 213 None 215: 6(float) Load 71(f)
Switch 210 213 216: 6(float) FAdd 215 214
case 1: 211 Store 71(f) 216
case 2: 212 Branch 212
211: Label 211: Label
214: 7(float) Load 74(x) Branch 212
215: 7(float) ExtInst 1(GLSL.std.450) 13(Sin) 214 212: Label
216: 7(float) Load 72(f) 222: 6(float) Load 71(f)
217: 7(float) FAdd 216 215 223: 9(int) Load 58(local)
Store 72(f) 217 224: 6(float) ConvertSToF 223
Branch 213 225: 6(float) FAdd 222 224
212: Label Store 221(color) 225
Branch 213 229: 7(fvec4) Load 227(v)
213: Label Store 228(param) 229
223: 7(float) Load 72(f) 231: 7(fvec4) Load 227(v)
224: 10(int) Load 59(local) Store 230(param) 231
225: 7(float) ConvertSToF 224 233: 9(int) Load 60(c)
226: 7(float) FAdd 223 225 Store 232(param) 233
Store 222(color) 226 234: 7(fvec4) FunctionCall 15(foo1(vf4;vf4;i1;) 228(param) 230(param) 232(param)
230: 8(fvec4) Load 228(v) 235: 6(float) CompositeExtract 234 1
Store 229(param) 230 236: 6(float) Load 221(color)
232: 8(fvec4) Load 228(v) 237: 6(float) FAdd 236 235
Store 231(param) 232 Store 221(color) 237
234: 10(int) Load 61(c) 239: 7(fvec4) Load 227(v)
Store 233(param) 234 Store 238(param) 239
235: 8(fvec4) FunctionCall 16(foo1(vf4;vf4;i1;) 229(param) 231(param) 233(param) 241: 7(fvec4) Load 227(v)
236: 7(float) CompositeExtract 235 1 Store 240(param) 241
237: 7(float) Load 222(color) 243: 9(int) Load 60(c)
238: 7(float) FAdd 237 236 Store 242(param) 243
Store 222(color) 238 244: 7(fvec4) FunctionCall 20(foo2(vf4;vf4;i1;) 238(param) 240(param) 242(param)
240: 8(fvec4) Load 228(v) 245: 6(float) CompositeExtract 244 2
Store 239(param) 240 246: 6(float) Load 221(color)
242: 8(fvec4) Load 228(v) 247: 6(float) FAdd 246 245
Store 241(param) 242 Store 221(color) 247
244: 10(int) Load 61(c) 248: 9(int) Load 60(c)
Store 243(param) 244 SelectionMerge 251 None
245: 8(fvec4) FunctionCall 21(foo2(vf4;vf4;i1;) 239(param) 241(param) 243(param) Switch 248 250
246: 7(float) CompositeExtract 245 2 case 0: 249
247: 7(float) Load 222(color) 249: Label
248: 7(float) FAdd 247 246 Branch 251
Store 222(color) 248
249: 10(int) Load 61(c)
SelectionMerge 252 None
Switch 249 251
case 0: 250
250: Label 250: Label
Branch 252 Branch 251
251: Label 251: Label
Branch 252 255: 9(int) Load 60(c)
252: Label SelectionMerge 257 None
256: 10(int) Load 61(c) Switch 255 256
SelectionMerge 258 None 256: Label
Switch 256 257 Branch 257
257: Label 257: Label
Branch 258
258: Label
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd
16(foo1(vf4;vf4;i1;): 8(fvec4) Function None 12 15(foo1(vf4;vf4;i1;): 7(fvec4) Function None 11
13(v1): 9(ptr) FunctionParameter 12(v1): 8(ptr) FunctionParameter
14(v2): 9(ptr) FunctionParameter 13(v2): 8(ptr) FunctionParameter
15(i1): 11(ptr) FunctionParameter 14(i1): 10(ptr) FunctionParameter
17: Label 16: Label
23: 10(int) Load 15(i1) 22: 9(int) Load 14(i1)
SelectionMerge 27 None SelectionMerge 26 None
Switch 23 27 Switch 22 26
case 0: 24 case 0: 23
case 2: 25 case 2: 24
case 1: 25 case 1: 24
case 3: 26 case 3: 25
23: Label
27: 7(fvec4) Load 12(v1)
ReturnValue 27
24: Label 24: Label
28: 8(fvec4) Load 13(v1) 29: 7(fvec4) Load 13(v2)
ReturnValue 28 ReturnValue 29
25: Label 25: Label
30: 8(fvec4) Load 14(v2) 31: 7(fvec4) Load 12(v1)
ReturnValue 30 32: 7(fvec4) Load 13(v2)
26: Label 33: 7(fvec4) FMul 31 32
32: 8(fvec4) Load 13(v1) ReturnValue 33
33: 8(fvec4) Load 14(v2) 26: Label
34: 8(fvec4) FMul 32 33 ReturnValue 37
ReturnValue 34
27: Label
ReturnValue 38
FunctionEnd FunctionEnd
21(foo2(vf4;vf4;i1;): 8(fvec4) Function None 12 20(foo2(vf4;vf4;i1;): 7(fvec4) Function None 11
18(v1): 9(ptr) FunctionParameter 17(v1): 8(ptr) FunctionParameter
19(v2): 9(ptr) FunctionParameter 18(v2): 8(ptr) FunctionParameter
20(i1): 11(ptr) FunctionParameter 19(i1): 10(ptr) FunctionParameter
22: Label 21: Label
40: 10(int) Load 20(i1) 39: 9(int) Load 19(i1)
SelectionMerge 45 None SelectionMerge 44 None
Switch 40 45 Switch 39 44
case 0: 41 case 0: 40
case 2: 42 case 2: 41
case 1: 43 case 1: 42
case 3: 44 case 3: 43
40: Label
45: 7(fvec4) Load 17(v1)
ReturnValue 45
41: Label 41: Label
46: 8(fvec4) Load 18(v1) ReturnValue 48
ReturnValue 46
42: Label 42: Label
ReturnValue 49 50: 7(fvec4) Load 18(v2)
ReturnValue 50
43: Label 43: Label
51: 8(fvec4) Load 19(v2) 52: 7(fvec4) Load 17(v1)
ReturnValue 51 53: 7(fvec4) Load 18(v2)
44: Label 54: 7(fvec4) FMul 52 53
53: 8(fvec4) Load 18(v1) ReturnValue 54
54: 8(fvec4) Load 19(v2) 44: Label
55: 8(fvec4) FMul 53 54 ReturnValue 37
ReturnValue 55
45: Label
ReturnValue 38
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 112 // Id's are bound by 111
Source GLSL 110 Source GLSL 110
Capability Shader Capability Shader
@ -14,165 +14,163 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 9 "blendscale" Name 8 "blendscale"
Name 13 "w" Name 12 "w"
Name 15 "u" Name 14 "u"
Name 17 "w_dep" Name 16 "w_dep"
Name 19 "w_reorder" Name 18 "w_reorder"
Name 21 "w2" Name 20 "w2"
Name 23 "w_flow" Name 22 "w_flow"
Name 30 "t" Name 29 "t"
Name 49 "w_undef" Name 48 "w_undef"
Name 56 "p" Name 55 "p"
Name 70 "gl_FragColor" Name 69 "gl_FragColor"
Name 82 "c" Name 81 "c"
Name 84 "rep" Name 83 "rep"
Name 111 "blend" Name 110 "blend"
Decorate 30(t) Smooth Decorate 29(t) Smooth
Decorate 70(gl_FragColor) BuiltIn FragColor Decorate 69(gl_FragColor) BuiltIn FragColor
Decorate 111(blend) NoStaticUse Decorate 110(blend) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypePointer Function 7(float) 7: TypePointer Function 6(float)
10: 7(float) Constant 1071971828 9: 6(float) Constant 1071971828
11: TypeVector 7(float) 4 10: TypeVector 6(float) 4
12: TypePointer Function 11(fvec4) 11: TypePointer Function 10(fvec4)
14: TypePointer UniformConstant 11(fvec4) 13: TypePointer UniformConstant 10(fvec4)
15(u): 14(ptr) Variable UniformConstant 14(u): 13(ptr) Variable UniformConstant
28: TypeVector 7(float) 2 27: TypeVector 6(float) 2
29: TypePointer Input 28(fvec2) 28: TypePointer Input 27(fvec2)
30(t): 29(ptr) Variable Input 29(t): 28(ptr) Variable Input
54: TypeBool 53: TypeBool
55: TypePointer UniformConstant 54(bool) 54: TypePointer UniformConstant 53(bool)
56(p): 55(ptr) Variable UniformConstant 55(p): 54(ptr) Variable UniformConstant
69: TypePointer Output 11(fvec4) 68: TypePointer Output 10(fvec4)
70(gl_FragColor): 69(ptr) Variable Output 69(gl_FragColor): 68(ptr) Variable Output
81: TypePointer Function 28(fvec2) 80: TypePointer Function 27(fvec2)
85: 7(float) Constant 0 84: 6(float) Constant 0
86: 7(float) Constant 1065353216 85: 6(float) Constant 1065353216
87: 11(fvec4) ConstantComposite 85 85 85 86 86: 10(fvec4) ConstantComposite 84 84 84 85
93: 7(float) Constant 3212836864 92: 6(float) Constant 3212836864
104: 7(float) Constant 1079613850 103: 6(float) Constant 1079613850
110: TypePointer UniformConstant 7(float) 109: TypePointer UniformConstant 6(float)
111(blend): 110(ptr) Variable UniformConstant 110(blend): 109(ptr) Variable UniformConstant
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
9(blendscale): 8(ptr) Variable Function 8(blendscale): 7(ptr) Variable Function
13(w): 12(ptr) Variable Function 12(w): 11(ptr) Variable Function
17(w_dep): 12(ptr) Variable Function 16(w_dep): 11(ptr) Variable Function
19(w_reorder): 12(ptr) Variable Function 18(w_reorder): 11(ptr) Variable Function
21(w2): 12(ptr) Variable Function 20(w2): 11(ptr) Variable Function
23(w_flow): 12(ptr) Variable Function 22(w_flow): 11(ptr) Variable Function
49(w_undef): 12(ptr) Variable Function 48(w_undef): 11(ptr) Variable Function
82(c): 81(ptr) Variable Function 81(c): 80(ptr) Variable Function
84(rep): 12(ptr) Variable Function 83(rep): 11(ptr) Variable Function
Store 9(blendscale) 10 Store 8(blendscale) 9
16: 11(fvec4) Load 15(u) 15: 10(fvec4) Load 14(u)
Store 13(w) 16 Store 12(w) 15
18: 11(fvec4) Load 15(u) 17: 10(fvec4) Load 14(u)
Store 17(w_dep) 18 Store 16(w_dep) 17
20: 11(fvec4) Load 15(u) 19: 10(fvec4) Load 14(u)
Store 19(w_reorder) 20 Store 18(w_reorder) 19
22: 11(fvec4) Load 15(u) 21: 10(fvec4) Load 14(u)
Store 21(w2) 22 Store 20(w2) 21
24: 11(fvec4) Load 15(u) 23: 10(fvec4) Load 14(u)
Store 23(w_flow) 24 Store 22(w_flow) 23
25: 7(float) Load 9(blendscale) 24: 6(float) Load 8(blendscale)
26: 11(fvec4) Load 19(w_reorder) 25: 10(fvec4) Load 18(w_reorder)
27: 11(fvec4) CompositeInsert 25 26 2 26: 10(fvec4) CompositeInsert 24 25 2
Store 19(w_reorder) 27 Store 18(w_reorder) 26
31: 28(fvec2) Load 30(t) 30: 27(fvec2) Load 29(t)
32: 11(fvec4) Load 13(w) 31: 10(fvec4) Load 12(w)
33: 11(fvec4) VectorShuffle 32 31 0 5 2 4 32: 10(fvec4) VectorShuffle 31 30 0 5 2 4
Store 13(w) 33 Store 12(w) 32
34: 7(float) Load 9(blendscale) 33: 6(float) Load 8(blendscale)
35: 11(fvec4) Load 19(w_reorder) 34: 10(fvec4) Load 18(w_reorder)
36: 11(fvec4) CompositeInsert 34 35 0 35: 10(fvec4) CompositeInsert 33 34 0
Store 19(w_reorder) 36 Store 18(w_reorder) 35
37: 11(fvec4) Load 15(u) 36: 10(fvec4) Load 14(u)
38: 11(fvec4) VectorShuffle 37 37 2 3 0 1 37: 10(fvec4) VectorShuffle 36 36 2 3 0 1
Store 21(w2) 38 Store 20(w2) 37
39: 7(float) Load 9(blendscale) 38: 6(float) Load 8(blendscale)
40: 11(fvec4) Load 19(w_reorder) 39: 10(fvec4) Load 18(w_reorder)
41: 11(fvec4) CompositeInsert 39 40 1 40: 10(fvec4) CompositeInsert 38 39 1
Store 19(w_reorder) 41 Store 18(w_reorder) 40
42: 11(fvec4) Load 21(w2) 41: 10(fvec4) Load 20(w2)
43: 28(fvec2) VectorShuffle 42 42 0 2 42: 27(fvec2) VectorShuffle 41 41 0 2
44: 11(fvec4) Load 17(w_dep) 43: 10(fvec4) Load 16(w_dep)
45: 11(fvec4) VectorShuffle 44 43 4 5 2 3 44: 10(fvec4) VectorShuffle 43 42 4 5 2 3
Store 17(w_dep) 45 Store 16(w_dep) 44
46: 28(fvec2) Load 30(t) 45: 27(fvec2) Load 29(t)
47: 11(fvec4) Load 17(w_dep) 46: 10(fvec4) Load 16(w_dep)
48: 11(fvec4) VectorShuffle 47 46 0 1 4 5 47: 10(fvec4) VectorShuffle 46 45 0 1 4 5
Store 17(w_dep) 48 Store 16(w_dep) 47
50: 11(fvec4) Load 15(u) 49: 10(fvec4) Load 14(u)
51: 28(fvec2) VectorShuffle 50 50 2 3 50: 27(fvec2) VectorShuffle 49 49 2 3
52: 11(fvec4) Load 49(w_undef) 51: 10(fvec4) Load 48(w_undef)
53: 11(fvec4) VectorShuffle 52 51 4 5 2 3 52: 10(fvec4) VectorShuffle 51 50 4 5 2 3
Store 49(w_undef) 53 Store 48(w_undef) 52
57: 54(bool) Load 56(p) 56: 53(bool) Load 55(p)
SelectionMerge 59 None SelectionMerge 58 None
BranchConditional 57 58 64 BranchConditional 56 57 63
58: Label 57: Label
60: 28(fvec2) Load 30(t) 59: 27(fvec2) Load 29(t)
61: 7(float) CompositeExtract 60 0 60: 6(float) CompositeExtract 59 0
62: 11(fvec4) Load 23(w_flow) 61: 10(fvec4) Load 22(w_flow)
63: 11(fvec4) CompositeInsert 61 62 0 62: 10(fvec4) CompositeInsert 60 61 0
Store 23(w_flow) 63 Store 22(w_flow) 62
Branch 59 Branch 58
64: Label 63: Label
65: 28(fvec2) Load 30(t) 64: 27(fvec2) Load 29(t)
66: 7(float) CompositeExtract 65 1 65: 6(float) CompositeExtract 64 1
67: 11(fvec4) Load 23(w_flow) 66: 10(fvec4) Load 22(w_flow)
68: 11(fvec4) CompositeInsert 66 67 0 67: 10(fvec4) CompositeInsert 65 66 0
Store 23(w_flow) 68 Store 22(w_flow) 67
Branch 59 Branch 58
59: Label 58: Label
71: 11(fvec4) Load 19(w_reorder) 70: 10(fvec4) Load 18(w_reorder)
72: 11(fvec4) Load 49(w_undef) 71: 10(fvec4) Load 48(w_undef)
73: 11(fvec4) Load 13(w) 72: 10(fvec4) Load 12(w)
74: 11(fvec4) Load 21(w2) 73: 10(fvec4) Load 20(w2)
75: 11(fvec4) FMul 73 74 74: 10(fvec4) FMul 72 73
76: 11(fvec4) Load 17(w_dep) 75: 10(fvec4) Load 16(w_dep)
77: 11(fvec4) FMul 75 76 76: 10(fvec4) FMul 74 75
78: 11(fvec4) Load 23(w_flow) 77: 10(fvec4) Load 22(w_flow)
79: 11(fvec4) FMul 77 78 78: 10(fvec4) FMul 76 77
80: 11(fvec4) ExtInst 1(GLSL.std.450) 46(Mix) 71 72 79 79: 10(fvec4) ExtInst 1(GLSL.std.450) 46(Mix) 70 71 78
Store 70(gl_FragColor) 80 Store 69(gl_FragColor) 79
83: 28(fvec2) Load 30(t) 82: 27(fvec2) Load 29(t)
Store 82(c) 83 Store 81(c) 82
Store 84(rep) 87 Store 83(rep) 86
88: 28(fvec2) Load 82(c) 87: 27(fvec2) Load 81(c)
89: 7(float) CompositeExtract 88 0 88: 6(float) CompositeExtract 87 0
90: 54(bool) FOrdLessThan 89 85 89: 53(bool) FOrdLessThan 88 84
SelectionMerge 92 None SelectionMerge 91 None
BranchConditional 90 91 92 BranchConditional 89 90 91
91: Label 90: Label
94: 28(fvec2) Load 82(c) 93: 27(fvec2) Load 81(c)
95: 7(float) CompositeExtract 94 0 94: 6(float) CompositeExtract 93 0
96: 7(float) FMul 95 93 95: 6(float) FMul 94 92
97: 28(fvec2) Load 82(c) 96: 27(fvec2) Load 81(c)
98: 28(fvec2) CompositeInsert 96 97 0 97: 27(fvec2) CompositeInsert 95 96 0
Store 82(c) 98 Store 81(c) 97
Branch 92 Branch 91
92: Label 91: Label
99: 28(fvec2) Load 82(c) 98: 27(fvec2) Load 81(c)
100: 7(float) CompositeExtract 99 0 99: 6(float) CompositeExtract 98 0
101: 54(bool) FOrdLessThanEqual 100 86 100: 53(bool) FOrdLessThanEqual 99 85
SelectionMerge 103 None SelectionMerge 102 None
BranchConditional 101 102 103 BranchConditional 100 101 102
102: Label 101: Label
105: 11(fvec4) Load 84(rep) 104: 10(fvec4) Load 83(rep)
106: 11(fvec4) CompositeInsert 104 105 0 105: 10(fvec4) CompositeInsert 103 104 0
Store 84(rep) 106 Store 83(rep) 105
Branch 103 Branch 102
103: Label 102: Label
107: 11(fvec4) Load 84(rep) 106: 10(fvec4) Load 83(rep)
108: 11(fvec4) Load 70(gl_FragColor) 107: 10(fvec4) Load 69(gl_FragColor)
109: 11(fvec4) FAdd 108 107 108: 10(fvec4) FAdd 107 106
Store 70(gl_FragColor) 109 Store 69(gl_FragColor) 108
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 56 // Id's are bound by 55
Source GLSL 110 Source GLSL 110
Capability Shader Capability Shader
@ -14,78 +14,76 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 9 "blendscale" Name 8 "blendscale"
Name 13 "v" Name 12 "v"
Name 17 "texSampler2D" Name 16 "texSampler2D"
Name 21 "t" Name 20 "t"
Name 24 "scale" Name 23 "scale"
Name 31 "w" Name 30 "w"
Name 35 "texSampler3D" Name 34 "texSampler3D"
Name 39 "coords" Name 38 "coords"
Name 45 "gl_FragColor" Name 44 "gl_FragColor"
Name 48 "u" Name 47 "u"
Name 51 "blend" Name 50 "blend"
Decorate 21(t) Smooth Decorate 20(t) Smooth
Decorate 39(coords) Smooth Decorate 38(coords) Smooth
Decorate 45(gl_FragColor) BuiltIn FragColor Decorate 44(gl_FragColor) BuiltIn FragColor
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypePointer Function 7(float) 7: TypePointer Function 6(float)
10: 7(float) Constant 1071971828 9: 6(float) Constant 1071971828
11: TypeVector 7(float) 4 10: TypeVector 6(float) 4
12: TypePointer Function 11(fvec4) 11: TypePointer Function 10(fvec4)
14: TypeImage 7(float) 2D sampled format:Unknown 13: TypeImage 6(float) 2D sampled format:Unknown
15: TypeSampledImage 14 14: TypeSampledImage 13
16: TypePointer UniformConstant 15 15: TypePointer UniformConstant 14
17(texSampler2D): 16(ptr) Variable UniformConstant 16(texSampler2D): 15(ptr) Variable UniformConstant
19: TypeVector 7(float) 2 18: TypeVector 6(float) 2
20: TypePointer Input 19(fvec2) 19: TypePointer Input 18(fvec2)
21(t): 20(ptr) Variable Input 20(t): 19(ptr) Variable Input
23: TypePointer UniformConstant 19(fvec2) 22: TypePointer UniformConstant 18(fvec2)
24(scale): 23(ptr) Variable UniformConstant 23(scale): 22(ptr) Variable UniformConstant
32: TypeImage 7(float) 3D sampled format:Unknown 31: TypeImage 6(float) 3D sampled format:Unknown
33: TypeSampledImage 32 32: TypeSampledImage 31
34: TypePointer UniformConstant 33 33: TypePointer UniformConstant 32
35(texSampler3D): 34(ptr) Variable UniformConstant 34(texSampler3D): 33(ptr) Variable UniformConstant
37: TypeVector 7(float) 3 36: TypeVector 6(float) 3
38: TypePointer Input 37(fvec3) 37: TypePointer Input 36(fvec3)
39(coords): 38(ptr) Variable Input 38(coords): 37(ptr) Variable Input
44: TypePointer Output 11(fvec4) 43: TypePointer Output 10(fvec4)
45(gl_FragColor): 44(ptr) Variable Output 44(gl_FragColor): 43(ptr) Variable Output
47: TypePointer UniformConstant 11(fvec4) 46: TypePointer UniformConstant 10(fvec4)
48(u): 47(ptr) Variable UniformConstant 47(u): 46(ptr) Variable UniformConstant
50: TypePointer UniformConstant 7(float) 49: TypePointer UniformConstant 6(float)
51(blend): 50(ptr) Variable UniformConstant 50(blend): 49(ptr) Variable UniformConstant
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
9(blendscale): 8(ptr) Variable Function 8(blendscale): 7(ptr) Variable Function
13(v): 12(ptr) Variable Function 12(v): 11(ptr) Variable Function
31(w): 12(ptr) Variable Function 30(w): 11(ptr) Variable Function
Store 9(blendscale) 10 Store 8(blendscale) 9
18: 15 Load 17(texSampler2D) 17: 14 Load 16(texSampler2D)
22: 19(fvec2) Load 21(t) 21: 18(fvec2) Load 20(t)
25: 19(fvec2) Load 24(scale) 24: 18(fvec2) Load 23(scale)
26: 19(fvec2) FAdd 22 25 25: 18(fvec2) FAdd 21 24
27: 19(fvec2) Load 24(scale) 26: 18(fvec2) Load 23(scale)
28: 19(fvec2) FDiv 26 27 27: 18(fvec2) FDiv 25 26
29: 11(fvec4) ImageSampleImplicitLod 18 28 28: 10(fvec4) ImageSampleImplicitLod 17 27
30: 11(fvec4) VectorShuffle 29 29 3 2 1 0 29: 10(fvec4) VectorShuffle 28 28 3 2 1 0
Store 13(v) 30 Store 12(v) 29
36: 33 Load 35(texSampler3D) 35: 32 Load 34(texSampler3D)
40: 37(fvec3) Load 39(coords) 39: 36(fvec3) Load 38(coords)
41: 11(fvec4) ImageSampleImplicitLod 36 40 40: 10(fvec4) ImageSampleImplicitLod 35 39
42: 11(fvec4) Load 13(v) 41: 10(fvec4) Load 12(v)
43: 11(fvec4) FAdd 41 42 42: 10(fvec4) FAdd 40 41
Store 31(w) 43 Store 30(w) 42
46: 11(fvec4) Load 31(w) 45: 10(fvec4) Load 30(w)
49: 11(fvec4) Load 48(u) 48: 10(fvec4) Load 47(u)
52: 7(float) Load 51(blend) 51: 6(float) Load 50(blend)
53: 7(float) Load 9(blendscale) 52: 6(float) Load 8(blendscale)
54: 7(float) FMul 52 53 53: 6(float) FMul 51 52
55: 11(fvec4) ExtInst 1(GLSL.std.450) 46(Mix) 46 49 54 54: 10(fvec4) ExtInst 1(GLSL.std.450) 46(Mix) 45 48 53
Store 45(gl_FragColor) 55 Store 44(gl_FragColor) 54
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -7,7 +7,7 @@ Linked vertex stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 28 // Id's are bound by 27
Source GLSL 130 Source GLSL 130
Capability Shader Capability Shader
@ -15,44 +15,42 @@ Linked vertex stage:
MemoryModel Logical GLSL450 MemoryModel Logical GLSL450
EntryPoint Vertex 4 "main" EntryPoint Vertex 4 "main"
Name 4 "main" Name 4 "main"
Name 10 "uv" Name 9 "uv"
Name 12 "uv_in" Name 11 "uv_in"
Name 16 "gl_Position" Name 15 "gl_Position"
Name 19 "transform" Name 18 "transform"
Name 22 "position" Name 21 "position"
Name 27 "gl_VertexID" Name 26 "gl_VertexID"
Decorate 10(uv) Smooth Decorate 9(uv) Smooth
Decorate 16(gl_Position) BuiltIn Position Decorate 15(gl_Position) BuiltIn Position
Decorate 27(gl_VertexID) BuiltIn VertexId Decorate 26(gl_VertexID) BuiltIn VertexId
Decorate 27(gl_VertexID) NoStaticUse Decorate 26(gl_VertexID) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 2 7: TypeVector 6(float) 2
9: TypePointer Output 8(fvec2) 8: TypePointer Output 7(fvec2)
10(uv): 9(ptr) Variable Output 9(uv): 8(ptr) Variable Output
11: TypePointer Input 8(fvec2) 10: TypePointer Input 7(fvec2)
12(uv_in): 11(ptr) Variable Input 11(uv_in): 10(ptr) Variable Input
14: TypeVector 7(float) 4 13: TypeVector 6(float) 4
15: TypePointer Output 14(fvec4) 14: TypePointer Output 13(fvec4)
16(gl_Position): 15(ptr) Variable Output 15(gl_Position): 14(ptr) Variable Output
17: TypeMatrix 14(fvec4) 4 16: TypeMatrix 13(fvec4) 4
18: TypePointer UniformConstant 17 17: TypePointer UniformConstant 16
19(transform): 18(ptr) Variable UniformConstant 18(transform): 17(ptr) Variable UniformConstant
21: TypePointer Input 14(fvec4) 20: TypePointer Input 13(fvec4)
22(position): 21(ptr) Variable Input 21(position): 20(ptr) Variable Input
25: TypeInt 32 1 24: TypeInt 32 1
26: TypePointer Input 25(int) 25: TypePointer Input 24(int)
27(gl_VertexID): 26(ptr) Variable Input 26(gl_VertexID): 25(ptr) Variable Input
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
13: 8(fvec2) Load 12(uv_in) 12: 7(fvec2) Load 11(uv_in)
Store 10(uv) 13 Store 9(uv) 12
20: 17 Load 19(transform) 19: 16 Load 18(transform)
23: 14(fvec4) Load 22(position) 22: 13(fvec4) Load 21(position)
24: 14(fvec4) MatrixTimesVector 20 23 23: 13(fvec4) MatrixTimesVector 19 22
Store 16(gl_Position) 24 Store 15(gl_Position) 23
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -8,7 +8,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 283 // Id's are bound by 290
Source GLSL 130 Source GLSL 130
Capability Shader Capability Shader
@ -17,359 +17,365 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 9 "blendscale" Name 8 "blendscale"
Name 11 "bias" Name 10 "bias"
Name 13 "lod" Name 12 "lod"
Name 15 "proj" Name 14 "proj"
Name 16 "coords1D" Name 15 "coords1D"
Name 19 "coords3D" Name 18 "coords3D"
Name 25 "coords4D" Name 24 "coords4D"
Name 27 "color" Name 26 "color"
Name 33 "texSampler1D" Name 32 "texSampler1D"
Name 48 "coords2D" Name 47 "coords2D"
Name 73 "texSampler2D" Name 72 "texSampler2D"
Name 99 "texSampler3D" Name 98 "texSampler3D"
Name 125 "texSamplerCube" Name 124 "texSamplerCube"
Name 140 "shadowSampler1D" Name 139 "shadowSampler1D"
Name 157 "shadowSampler2D" Name 158 "shadowSampler2D"
Name 200 "iCoords2D" Name 207 "iCoords2D"
Name 205 "iLod" Name 212 "iLod"
Name 214 "gradX" Name 221 "gradX"
Name 217 "gradY" Name 224 "gradY"
Name 269 "gl_FragColor" Name 276 "gl_FragColor"
Name 272 "u" Name 279 "u"
Name 275 "blend" Name 282 "blend"
Name 281 "scale" Name 288 "scale"
Name 282 "t" Name 289 "t"
Decorate 48(coords2D) Smooth Decorate 47(coords2D) Smooth
Decorate 269(gl_FragColor) BuiltIn FragColor Decorate 276(gl_FragColor) BuiltIn FragColor
Decorate 281(scale) NoStaticUse Decorate 288(scale) NoStaticUse
Decorate 282(t) Smooth Decorate 289(t) Smooth
Decorate 282(t) NoStaticUse Decorate 289(t) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypePointer Function 7(float) 7: TypePointer Function 6(float)
10: 7(float) Constant 1071971828 9: 6(float) Constant 1071971828
12: 7(float) Constant 1073741824 11: 6(float) Constant 1073741824
14: 7(float) Constant 1077936128 13: 6(float) Constant 1077936128
17: TypeVector 7(float) 3 16: TypeVector 6(float) 3
18: TypePointer Function 17(fvec3) 17: TypePointer Function 16(fvec3)
20: 7(float) Constant 1076753334 19: 6(float) Constant 1076753334
21: 7(float) Constant 1079836148 20: 6(float) Constant 1079836148
22: 17(fvec3) ConstantComposite 10 20 21 21: 16(fvec3) ConstantComposite 9 19 20
23: TypeVector 7(float) 4 22: TypeVector 6(float) 4
24: TypePointer Function 23(fvec4) 23: TypePointer Function 22(fvec4)
26: 23(fvec4) ConstantComposite 10 20 21 12 25: 22(fvec4) ConstantComposite 9 19 20 11
28: 7(float) Constant 0 27: 6(float) Constant 0
29: 23(fvec4) ConstantComposite 28 28 28 28 28: 22(fvec4) ConstantComposite 27 27 27 27
30: TypeImage 7(float) 1D sampled format:Unknown 29: TypeImage 6(float) 1D sampled format:Unknown
31: TypeSampledImage 30 30: TypeSampledImage 29
32: TypePointer UniformConstant 31 31: TypePointer UniformConstant 30
33(texSampler1D): 32(ptr) Variable UniformConstant 32(texSampler1D): 31(ptr) Variable UniformConstant
46: TypeVector 7(float) 2 45: TypeVector 6(float) 2
47: TypePointer Input 46(fvec2) 46: TypePointer Input 45(fvec2)
48(coords2D): 47(ptr) Variable Input 47(coords2D): 46(ptr) Variable Input
70: TypeImage 7(float) 2D sampled format:Unknown 69: TypeImage 6(float) 2D sampled format:Unknown
71: TypeSampledImage 70 70: TypeSampledImage 69
72: TypePointer UniformConstant 71 71: TypePointer UniformConstant 70
73(texSampler2D): 72(ptr) Variable UniformConstant 72(texSampler2D): 71(ptr) Variable UniformConstant
96: TypeImage 7(float) 3D sampled format:Unknown 95: TypeImage 6(float) 3D sampled format:Unknown
97: TypeSampledImage 96 96: TypeSampledImage 95
98: TypePointer UniformConstant 97 97: TypePointer UniformConstant 96
99(texSampler3D): 98(ptr) Variable UniformConstant 98(texSampler3D): 97(ptr) Variable UniformConstant
122: TypeImage 7(float) Cube sampled format:Unknown 121: TypeImage 6(float) Cube sampled format:Unknown
123: TypeSampledImage 122 122: TypeSampledImage 121
124: TypePointer UniformConstant 123 123: TypePointer UniformConstant 122
125(texSamplerCube): 124(ptr) Variable UniformConstant 124(texSamplerCube): 123(ptr) Variable UniformConstant
137: TypeImage 7(float) 1D depth sampled format:Unknown 136: TypeImage 6(float) 1D depth sampled format:Unknown
138: TypeSampledImage 137 137: TypeSampledImage 136
139: TypePointer UniformConstant 138 138: TypePointer UniformConstant 137
140(shadowSampler1D): 139(ptr) Variable UniformConstant 139(shadowSampler1D): 138(ptr) Variable UniformConstant
154: TypeImage 7(float) 2D depth sampled format:Unknown 155: TypeImage 6(float) 2D depth sampled format:Unknown
155: TypeSampledImage 154 156: TypeSampledImage 155
156: TypePointer UniformConstant 155 157: TypePointer UniformConstant 156
157(shadowSampler2D): 156(ptr) Variable UniformConstant 158(shadowSampler2D): 157(ptr) Variable UniformConstant
197: TypeInt 32 1 204: TypeInt 32 1
198: TypeVector 197(int) 2 205: TypeVector 204(int) 2
199: TypePointer Function 198(ivec2) 206: TypePointer Function 205(ivec2)
201: 197(int) Constant 0 208: 204(int) Constant 0
202: 197(int) Constant 5 209: 204(int) Constant 5
203: 198(ivec2) ConstantComposite 201 202 210: 205(ivec2) ConstantComposite 208 209
204: TypePointer Function 197(int) 211: TypePointer Function 204(int)
206: 197(int) Constant 1 213: 204(int) Constant 1
213: TypePointer Function 46(fvec2) 220: TypePointer Function 45(fvec2)
242: 197(int) Constant 3 249: 204(int) Constant 3
243: 197(int) Constant 4294967289 250: 204(int) Constant 4294967289
244: 198(ivec2) ConstantComposite 242 243 251: 205(ivec2) ConstantComposite 249 250
268: TypePointer Output 23(fvec4) 275: TypePointer Output 22(fvec4)
269(gl_FragColor): 268(ptr) Variable Output 276(gl_FragColor): 275(ptr) Variable Output
271: TypePointer UniformConstant 23(fvec4) 278: TypePointer UniformConstant 22(fvec4)
272(u): 271(ptr) Variable UniformConstant 279(u): 278(ptr) Variable UniformConstant
274: TypePointer UniformConstant 7(float) 281: TypePointer UniformConstant 6(float)
275(blend): 274(ptr) Variable UniformConstant 282(blend): 281(ptr) Variable UniformConstant
280: TypePointer UniformConstant 46(fvec2) 287: TypePointer UniformConstant 45(fvec2)
281(scale): 280(ptr) Variable UniformConstant 288(scale): 287(ptr) Variable UniformConstant
282(t): 47(ptr) Variable Input 289(t): 46(ptr) Variable Input
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
9(blendscale): 8(ptr) Variable Function 8(blendscale): 7(ptr) Variable Function
11(bias): 8(ptr) Variable Function 10(bias): 7(ptr) Variable Function
13(lod): 8(ptr) Variable Function 12(lod): 7(ptr) Variable Function
15(proj): 8(ptr) Variable Function 14(proj): 7(ptr) Variable Function
16(coords1D): 8(ptr) Variable Function 15(coords1D): 7(ptr) Variable Function
19(coords3D): 18(ptr) Variable Function 18(coords3D): 17(ptr) Variable Function
25(coords4D): 24(ptr) Variable Function 24(coords4D): 23(ptr) Variable Function
27(color): 24(ptr) Variable Function 26(color): 23(ptr) Variable Function
200(iCoords2D): 199(ptr) Variable Function 207(iCoords2D): 206(ptr) Variable Function
205(iLod): 204(ptr) Variable Function 212(iLod): 211(ptr) Variable Function
214(gradX): 213(ptr) Variable Function 221(gradX): 220(ptr) Variable Function
217(gradY): 213(ptr) Variable Function 224(gradY): 220(ptr) Variable Function
Store 9(blendscale) 10 Store 8(blendscale) 9
Store 11(bias) 12 Store 10(bias) 11
Store 13(lod) 14 Store 12(lod) 13
Store 15(proj) 12 Store 14(proj) 11
Store 16(coords1D) 10 Store 15(coords1D) 9
Store 19(coords3D) 22 Store 18(coords3D) 21
Store 25(coords4D) 26 Store 24(coords4D) 25
Store 27(color) 29 Store 26(color) 28
34: 31 Load 33(texSampler1D) 33: 30 Load 32(texSampler1D)
35: 7(float) Load 16(coords1D) 34: 6(float) Load 15(coords1D)
36: 23(fvec4) ImageSampleImplicitLod 34 35 35: 22(fvec4) ImageSampleImplicitLod 33 34
37: 23(fvec4) Load 27(color) 36: 22(fvec4) Load 26(color)
38: 23(fvec4) FAdd 37 36 37: 22(fvec4) FAdd 36 35
Store 27(color) 38 Store 26(color) 37
39: 31 Load 33(texSampler1D) 38: 30 Load 32(texSampler1D)
40: 7(float) Load 16(coords1D) 39: 6(float) Load 15(coords1D)
41: 7(float) Load 11(bias) 40: 6(float) Load 10(bias)
42: 23(fvec4) ImageSampleImplicitLod 39 40 41 41: 22(fvec4) ImageSampleImplicitLod 38 39 40
43: 23(fvec4) Load 27(color) 42: 22(fvec4) Load 26(color)
44: 23(fvec4) FAdd 43 42 43: 22(fvec4) FAdd 42 41
Store 27(color) 44 Store 26(color) 43
45: 31 Load 33(texSampler1D) 44: 30 Load 32(texSampler1D)
49: 46(fvec2) Load 48(coords2D) 48: 45(fvec2) Load 47(coords2D)
50: 23(fvec4) ImageSampleProjImplicitLod 45 49 49: 22(fvec4) ImageSampleProjImplicitLod 44 48
51: 23(fvec4) Load 27(color) 50: 22(fvec4) Load 26(color)
52: 23(fvec4) FAdd 51 50 51: 22(fvec4) FAdd 50 49
Store 27(color) 52 Store 26(color) 51
53: 31 Load 33(texSampler1D) 52: 30 Load 32(texSampler1D)
54: 23(fvec4) Load 25(coords4D) 53: 22(fvec4) Load 24(coords4D)
55: 23(fvec4) ImageSampleProjImplicitLod 53 54 54: 22(fvec4) ImageSampleProjImplicitLod 52 53
56: 23(fvec4) Load 27(color) 55: 22(fvec4) Load 26(color)
57: 23(fvec4) FAdd 56 55 56: 22(fvec4) FAdd 55 54
Store 27(color) 57 Store 26(color) 56
58: 31 Load 33(texSampler1D) 57: 30 Load 32(texSampler1D)
59: 46(fvec2) Load 48(coords2D) 58: 45(fvec2) Load 47(coords2D)
60: 7(float) Load 11(bias) 59: 6(float) Load 10(bias)
61: 23(fvec4) ImageSampleProjImplicitLod 58 59 60 60: 22(fvec4) ImageSampleProjImplicitLod 57 58 59
62: 23(fvec4) Load 27(color) 61: 22(fvec4) Load 26(color)
63: 23(fvec4) FAdd 62 61 62: 22(fvec4) FAdd 61 60
Store 27(color) 63 Store 26(color) 62
64: 31 Load 33(texSampler1D) 63: 30 Load 32(texSampler1D)
65: 23(fvec4) Load 25(coords4D) 64: 22(fvec4) Load 24(coords4D)
66: 7(float) Load 11(bias) 65: 6(float) Load 10(bias)
67: 23(fvec4) ImageSampleProjImplicitLod 64 65 66 66: 22(fvec4) ImageSampleProjImplicitLod 63 64 65
68: 23(fvec4) Load 27(color) 67: 22(fvec4) Load 26(color)
69: 23(fvec4) FAdd 68 67 68: 22(fvec4) FAdd 67 66
Store 27(color) 69 Store 26(color) 68
74: 71 Load 73(texSampler2D) 73: 70 Load 72(texSampler2D)
75: 46(fvec2) Load 48(coords2D) 74: 45(fvec2) Load 47(coords2D)
76: 23(fvec4) ImageSampleImplicitLod 74 75 75: 22(fvec4) ImageSampleImplicitLod 73 74
77: 23(fvec4) Load 27(color) 76: 22(fvec4) Load 26(color)
78: 23(fvec4) FAdd 77 76 77: 22(fvec4) FAdd 76 75
Store 27(color) 78 Store 26(color) 77
79: 71 Load 73(texSampler2D) 78: 70 Load 72(texSampler2D)
80: 46(fvec2) Load 48(coords2D) 79: 45(fvec2) Load 47(coords2D)
81: 7(float) Load 11(bias) 80: 6(float) Load 10(bias)
82: 23(fvec4) ImageSampleImplicitLod 79 80 81 81: 22(fvec4) ImageSampleImplicitLod 78 79 80
83: 23(fvec4) Load 27(color) 82: 22(fvec4) Load 26(color)
84: 23(fvec4) FAdd 83 82 83: 22(fvec4) FAdd 82 81
Store 27(color) 84 Store 26(color) 83
85: 71 Load 73(texSampler2D) 84: 70 Load 72(texSampler2D)
86: 17(fvec3) Load 19(coords3D) 85: 16(fvec3) Load 18(coords3D)
87: 23(fvec4) ImageSampleProjImplicitLod 85 86 86: 22(fvec4) ImageSampleProjImplicitLod 84 85
88: 23(fvec4) Load 27(color) 87: 22(fvec4) Load 26(color)
89: 23(fvec4) FAdd 88 87 88: 22(fvec4) FAdd 87 86
Store 27(color) 89 Store 26(color) 88
90: 71 Load 73(texSampler2D) 89: 70 Load 72(texSampler2D)
91: 23(fvec4) Load 25(coords4D) 90: 22(fvec4) Load 24(coords4D)
92: 7(float) Load 11(bias) 91: 6(float) Load 10(bias)
93: 23(fvec4) ImageSampleProjImplicitLod 90 91 92 92: 22(fvec4) ImageSampleProjImplicitLod 89 90 91
94: 23(fvec4) Load 27(color) 93: 22(fvec4) Load 26(color)
95: 23(fvec4) FAdd 94 93 94: 22(fvec4) FAdd 93 92
Store 27(color) 95 Store 26(color) 94
100: 97 Load 99(texSampler3D) 99: 96 Load 98(texSampler3D)
101: 17(fvec3) Load 19(coords3D) 100: 16(fvec3) Load 18(coords3D)
102: 23(fvec4) ImageSampleImplicitLod 100 101 101: 22(fvec4) ImageSampleImplicitLod 99 100
103: 23(fvec4) Load 27(color) 102: 22(fvec4) Load 26(color)
104: 23(fvec4) FAdd 103 102 103: 22(fvec4) FAdd 102 101
Store 27(color) 104 Store 26(color) 103
105: 97 Load 99(texSampler3D) 104: 96 Load 98(texSampler3D)
106: 17(fvec3) Load 19(coords3D) 105: 16(fvec3) Load 18(coords3D)
107: 7(float) Load 11(bias) 106: 6(float) Load 10(bias)
108: 23(fvec4) ImageSampleImplicitLod 105 106 107 107: 22(fvec4) ImageSampleImplicitLod 104 105 106
109: 23(fvec4) Load 27(color) 108: 22(fvec4) Load 26(color)
110: 23(fvec4) FAdd 109 108 109: 22(fvec4) FAdd 108 107
Store 27(color) 110 Store 26(color) 109
111: 97 Load 99(texSampler3D) 110: 96 Load 98(texSampler3D)
112: 23(fvec4) Load 25(coords4D) 111: 22(fvec4) Load 24(coords4D)
113: 23(fvec4) ImageSampleProjImplicitLod 111 112 112: 22(fvec4) ImageSampleProjImplicitLod 110 111
114: 23(fvec4) Load 27(color) 113: 22(fvec4) Load 26(color)
115: 23(fvec4) FAdd 114 113 114: 22(fvec4) FAdd 113 112
Store 27(color) 115 Store 26(color) 114
116: 97 Load 99(texSampler3D) 115: 96 Load 98(texSampler3D)
117: 23(fvec4) Load 25(coords4D) 116: 22(fvec4) Load 24(coords4D)
118: 7(float) Load 11(bias) 117: 6(float) Load 10(bias)
119: 23(fvec4) ImageSampleProjImplicitLod 116 117 118 118: 22(fvec4) ImageSampleProjImplicitLod 115 116 117
120: 23(fvec4) Load 27(color) 119: 22(fvec4) Load 26(color)
121: 23(fvec4) FAdd 120 119 120: 22(fvec4) FAdd 119 118
Store 27(color) 121 Store 26(color) 120
126: 123 Load 125(texSamplerCube) 125: 122 Load 124(texSamplerCube)
127: 17(fvec3) Load 19(coords3D) 126: 16(fvec3) Load 18(coords3D)
128: 23(fvec4) ImageSampleImplicitLod 126 127 127: 22(fvec4) ImageSampleImplicitLod 125 126
129: 23(fvec4) Load 27(color) 128: 22(fvec4) Load 26(color)
130: 23(fvec4) FAdd 129 128 129: 22(fvec4) FAdd 128 127
Store 27(color) 130 Store 26(color) 129
131: 123 Load 125(texSamplerCube) 130: 122 Load 124(texSamplerCube)
132: 17(fvec3) Load 19(coords3D) 131: 16(fvec3) Load 18(coords3D)
133: 7(float) Load 11(bias) 132: 6(float) Load 10(bias)
134: 23(fvec4) ImageSampleImplicitLod 131 132 133 133: 22(fvec4) ImageSampleImplicitLod 130 131 132
135: 23(fvec4) Load 27(color) 134: 22(fvec4) Load 26(color)
136: 23(fvec4) FAdd 135 134 135: 22(fvec4) FAdd 134 133
Store 27(color) 136 Store 26(color) 135
141: 138 Load 140(shadowSampler1D) 140: 137 Load 139(shadowSampler1D)
142: 17(fvec3) Load 19(coords3D) 141: 16(fvec3) Load 18(coords3D)
143: 7(float) CompositeExtract 142 2 142: 6(float) CompositeExtract 141 2
144: 23(fvec4) ImageSampleDrefImplicitLod 141 142 143 143: 6(float) ImageSampleDrefImplicitLod 140 141 142
145: 23(fvec4) Load 27(color) 144: 22(fvec4) CompositeConstruct 143 143 143 143
146: 23(fvec4) FAdd 145 144 145: 22(fvec4) Load 26(color)
Store 27(color) 146 146: 22(fvec4) FAdd 145 144
147: 138 Load 140(shadowSampler1D) Store 26(color) 146
148: 17(fvec3) Load 19(coords3D) 147: 137 Load 139(shadowSampler1D)
149: 7(float) Load 11(bias) 148: 16(fvec3) Load 18(coords3D)
150: 7(float) CompositeExtract 148 2 149: 6(float) Load 10(bias)
151: 23(fvec4) ImageSampleDrefImplicitLod 147 148 150 149 150: 6(float) CompositeExtract 148 2
152: 23(fvec4) Load 27(color) 151: 6(float) ImageSampleDrefImplicitLod 147 148 150 149
153: 23(fvec4) FAdd 152 151 152: 22(fvec4) CompositeConstruct 151 151 151 151
Store 27(color) 153 153: 22(fvec4) Load 26(color)
158: 155 Load 157(shadowSampler2D) 154: 22(fvec4) FAdd 153 152
159: 17(fvec3) Load 19(coords3D) Store 26(color) 154
160: 7(float) CompositeExtract 159 2 159: 156 Load 158(shadowSampler2D)
161: 23(fvec4) ImageSampleDrefImplicitLod 158 159 160 160: 16(fvec3) Load 18(coords3D)
162: 23(fvec4) Load 27(color) 161: 6(float) CompositeExtract 160 2
163: 23(fvec4) FAdd 162 161 162: 6(float) ImageSampleDrefImplicitLod 159 160 161
Store 27(color) 163 163: 22(fvec4) CompositeConstruct 162 162 162 162
164: 155 Load 157(shadowSampler2D) 164: 22(fvec4) Load 26(color)
165: 17(fvec3) Load 19(coords3D) 165: 22(fvec4) FAdd 164 163
166: 7(float) Load 11(bias) Store 26(color) 165
167: 7(float) CompositeExtract 165 2 166: 156 Load 158(shadowSampler2D)
168: 23(fvec4) ImageSampleDrefImplicitLod 164 165 167 166 167: 16(fvec3) Load 18(coords3D)
169: 23(fvec4) Load 27(color) 168: 6(float) Load 10(bias)
170: 23(fvec4) FAdd 169 168 169: 6(float) CompositeExtract 167 2
Store 27(color) 170 170: 6(float) ImageSampleDrefImplicitLod 166 167 169 168
171: 138 Load 140(shadowSampler1D) 171: 22(fvec4) CompositeConstruct 170 170 170 170
172: 23(fvec4) Load 25(coords4D) 172: 22(fvec4) Load 26(color)
173: 7(float) CompositeExtract 172 3 173: 22(fvec4) FAdd 172 171
174: 23(fvec4) ImageSampleProjDrefImplicitLod 171 172 173 Store 26(color) 173
175: 23(fvec4) Load 27(color) 174: 137 Load 139(shadowSampler1D)
176: 23(fvec4) FAdd 175 174 175: 22(fvec4) Load 24(coords4D)
Store 27(color) 176 176: 6(float) CompositeExtract 175 3
177: 138 Load 140(shadowSampler1D) 177: 6(float) ImageSampleProjDrefImplicitLod 174 175 176
178: 23(fvec4) Load 25(coords4D) 178: 22(fvec4) CompositeConstruct 177 177 177 177
179: 7(float) Load 11(bias) 179: 22(fvec4) Load 26(color)
180: 7(float) CompositeExtract 178 3 180: 22(fvec4) FAdd 179 178
181: 23(fvec4) ImageSampleProjDrefImplicitLod 177 178 180 179 Store 26(color) 180
182: 23(fvec4) Load 27(color) 181: 137 Load 139(shadowSampler1D)
183: 23(fvec4) FAdd 182 181 182: 22(fvec4) Load 24(coords4D)
Store 27(color) 183 183: 6(float) Load 10(bias)
184: 155 Load 157(shadowSampler2D) 184: 6(float) CompositeExtract 182 3
185: 23(fvec4) Load 25(coords4D) 185: 6(float) ImageSampleProjDrefImplicitLod 181 182 184 183
186: 7(float) CompositeExtract 185 3 186: 22(fvec4) CompositeConstruct 185 185 185 185
187: 23(fvec4) ImageSampleProjDrefImplicitLod 184 185 186 187: 22(fvec4) Load 26(color)
188: 23(fvec4) Load 27(color) 188: 22(fvec4) FAdd 187 186
189: 23(fvec4) FAdd 188 187 Store 26(color) 188
Store 27(color) 189 189: 156 Load 158(shadowSampler2D)
190: 155 Load 157(shadowSampler2D) 190: 22(fvec4) Load 24(coords4D)
191: 23(fvec4) Load 25(coords4D) 191: 6(float) CompositeExtract 190 3
192: 7(float) Load 11(bias) 192: 6(float) ImageSampleProjDrefImplicitLod 189 190 191
193: 7(float) CompositeExtract 191 3 193: 22(fvec4) CompositeConstruct 192 192 192 192
194: 23(fvec4) ImageSampleProjDrefImplicitLod 190 191 193 192 194: 22(fvec4) Load 26(color)
195: 23(fvec4) Load 27(color) 195: 22(fvec4) FAdd 194 193
196: 23(fvec4) FAdd 195 194 Store 26(color) 195
Store 27(color) 196 196: 156 Load 158(shadowSampler2D)
Store 200(iCoords2D) 203 197: 22(fvec4) Load 24(coords4D)
Store 205(iLod) 206 198: 6(float) Load 10(bias)
207: 71 Load 73(texSampler2D) 199: 6(float) CompositeExtract 197 3
208: 198(ivec2) Load 200(iCoords2D) 200: 6(float) ImageSampleProjDrefImplicitLod 196 197 199 198
209: 197(int) Load 205(iLod) 201: 22(fvec4) CompositeConstruct 200 200 200 200
210: 23(fvec4) ImageFetch 207 208 202: 22(fvec4) Load 26(color)
211: 23(fvec4) Load 27(color) 203: 22(fvec4) FAdd 202 201
212: 23(fvec4) FAdd 211 210 Store 26(color) 203
Store 27(color) 212 Store 207(iCoords2D) 210
215: 46(fvec2) Load 48(coords2D) Store 212(iLod) 213
216: 46(fvec2) DPdx 215 214: 70 Load 72(texSampler2D)
Store 214(gradX) 216 215: 205(ivec2) Load 207(iCoords2D)
218: 46(fvec2) Load 48(coords2D) 216: 204(int) Load 212(iLod)
219: 46(fvec2) DPdy 218 217: 22(fvec4) ImageFetch 214 215
Store 217(gradY) 219 218: 22(fvec4) Load 26(color)
220: 71 Load 73(texSampler2D) 219: 22(fvec4) FAdd 218 217
221: 46(fvec2) Load 48(coords2D) Store 26(color) 219
222: 46(fvec2) Load 214(gradX) 222: 45(fvec2) Load 47(coords2D)
223: 46(fvec2) Load 217(gradY) 223: 45(fvec2) DPdx 222
224: 23(fvec4) ImageSampleExplicitLod 220 221 222 223 Store 221(gradX) 223
225: 23(fvec4) Load 27(color) 225: 45(fvec2) Load 47(coords2D)
226: 23(fvec4) FAdd 225 224 226: 45(fvec2) DPdy 225
Store 27(color) 226 Store 224(gradY) 226
227: 71 Load 73(texSampler2D) 227: 70 Load 72(texSampler2D)
228: 46(fvec2) Load 48(coords2D) 228: 45(fvec2) Load 47(coords2D)
229: 7(float) Load 15(proj) 229: 45(fvec2) Load 221(gradX)
230: 7(float) CompositeExtract 228 0 230: 45(fvec2) Load 224(gradY)
231: 7(float) CompositeExtract 228 1 231: 22(fvec4) ImageSampleExplicitLod 227 228 229 230
232: 17(fvec3) CompositeConstruct 230 231 229 232: 22(fvec4) Load 26(color)
233: 46(fvec2) Load 214(gradX) 233: 22(fvec4) FAdd 232 231
234: 46(fvec2) Load 217(gradY) Store 26(color) 233
235: 23(fvec4) ImageSampleProjExplicitLod 227 232 233 234 234: 70 Load 72(texSampler2D)
236: 23(fvec4) Load 27(color) 235: 45(fvec2) Load 47(coords2D)
237: 23(fvec4) FAdd 236 235 236: 6(float) Load 14(proj)
Store 27(color) 237 237: 6(float) CompositeExtract 235 0
238: 71 Load 73(texSampler2D) 238: 6(float) CompositeExtract 235 1
239: 46(fvec2) Load 48(coords2D) 239: 16(fvec3) CompositeConstruct 237 238 236
240: 46(fvec2) Load 214(gradX) 240: 45(fvec2) Load 221(gradX)
241: 46(fvec2) Load 217(gradY) 241: 45(fvec2) Load 224(gradY)
245: 23(fvec4) ImageSampleExplicitLod 238 239 240 241 244 242: 22(fvec4) ImageSampleProjExplicitLod 234 239 240 241
246: 23(fvec4) Load 27(color) 243: 22(fvec4) Load 26(color)
247: 23(fvec4) FAdd 246 245 244: 22(fvec4) FAdd 243 242
Store 27(color) 247 Store 26(color) 244
248: 71 Load 73(texSampler2D) 245: 70 Load 72(texSampler2D)
249: 17(fvec3) Load 19(coords3D) 246: 45(fvec2) Load 47(coords2D)
250: 46(fvec2) Load 214(gradX) 247: 45(fvec2) Load 221(gradX)
251: 46(fvec2) Load 217(gradY) 248: 45(fvec2) Load 224(gradY)
252: 23(fvec4) ImageSampleProjExplicitLod 248 249 250 251 244 252: 22(fvec4) ImageSampleExplicitLod 245 246 247 248 251
253: 23(fvec4) Load 27(color) 253: 22(fvec4) Load 26(color)
254: 23(fvec4) FAdd 253 252 254: 22(fvec4) FAdd 253 252
Store 27(color) 254 Store 26(color) 254
255: 155 Load 157(shadowSampler2D) 255: 70 Load 72(texSampler2D)
256: 46(fvec2) Load 48(coords2D) 256: 16(fvec3) Load 18(coords3D)
257: 7(float) Load 13(lod) 257: 45(fvec2) Load 221(gradX)
258: 7(float) CompositeExtract 256 0 258: 45(fvec2) Load 224(gradY)
259: 7(float) CompositeExtract 256 1 259: 22(fvec4) ImageSampleProjExplicitLod 255 256 257 258 251
260: 17(fvec3) CompositeConstruct 258 259 257 260: 22(fvec4) Load 26(color)
261: 46(fvec2) Load 214(gradX) 261: 22(fvec4) FAdd 260 259
262: 46(fvec2) Load 217(gradY) Store 26(color) 261
263: 7(float) CompositeExtract 260 2 262: 156 Load 158(shadowSampler2D)
264: 7(float) ImageSampleDrefExplicitLod 255 260 263 261 262 263: 45(fvec2) Load 47(coords2D)
265: 23(fvec4) Load 27(color) 264: 6(float) Load 12(lod)
266: 23(fvec4) CompositeConstruct 264 264 264 264 265: 6(float) CompositeExtract 263 0
267: 23(fvec4) FAdd 265 266 266: 6(float) CompositeExtract 263 1
Store 27(color) 267 267: 16(fvec3) CompositeConstruct 265 266 264
270: 23(fvec4) Load 27(color) 268: 45(fvec2) Load 221(gradX)
273: 23(fvec4) Load 272(u) 269: 45(fvec2) Load 224(gradY)
276: 7(float) Load 275(blend) 270: 6(float) CompositeExtract 267 2
277: 7(float) Load 9(blendscale) 271: 6(float) ImageSampleDrefExplicitLod 262 267 270 268 269
278: 7(float) FMul 276 277 272: 22(fvec4) Load 26(color)
279: 23(fvec4) ExtInst 1(GLSL.std.450) 46(Mix) 270 273 278 273: 22(fvec4) CompositeConstruct 271 271 271 271
Store 269(gl_FragColor) 279 274: 22(fvec4) FAdd 272 273
Branch 6 Store 26(color) 274
6: Label 277: 22(fvec4) Load 26(color)
280: 22(fvec4) Load 279(u)
283: 6(float) Load 282(blend)
284: 6(float) Load 8(blendscale)
285: 6(float) FMul 283 284
286: 22(fvec4) ExtInst 1(GLSL.std.450) 46(Mix) 277 280 285
Store 276(gl_FragColor) 286
Return Return
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked vertex stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 142 // Id's are bound by 145
Source GLSL 130 Source GLSL 130
Capability Shader Capability Shader
@ -13,182 +13,184 @@ Linked vertex stage:
MemoryModel Logical GLSL450 MemoryModel Logical GLSL450
EntryPoint Vertex 4 "main" EntryPoint Vertex 4 "main"
Name 4 "main" Name 4 "main"
Name 9 "lod" Name 8 "lod"
Name 11 "coords1D" Name 10 "coords1D"
Name 15 "coords3D" Name 14 "coords3D"
Name 21 "coords4D" Name 20 "coords4D"
Name 24 "color" Name 23 "color"
Name 30 "texSampler1D" Name 29 "texSampler1D"
Name 40 "coords2D" Name 39 "coords2D"
Name 55 "texSampler2D" Name 54 "texSampler2D"
Name 77 "texSampler3D" Name 76 "texSampler3D"
Name 93 "texSamplerCube" Name 92 "texSamplerCube"
Name 103 "shadowSampler1D" Name 102 "shadowSampler1D"
Name 114 "shadowSampler2D" Name 114 "shadowSampler2D"
Name 137 "gl_Position" Name 140 "gl_Position"
Name 141 "gl_VertexID" Name 144 "gl_VertexID"
Decorate 137(gl_Position) BuiltIn Position Decorate 140(gl_Position) BuiltIn Position
Decorate 141(gl_VertexID) BuiltIn VertexId Decorate 144(gl_VertexID) BuiltIn VertexId
Decorate 141(gl_VertexID) NoStaticUse Decorate 144(gl_VertexID) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypePointer Function 7(float) 7: TypePointer Function 6(float)
10: 7(float) Constant 1077936128 9: 6(float) Constant 1077936128
12: 7(float) Constant 1071971828 11: 6(float) Constant 1071971828
13: TypeVector 7(float) 3 12: TypeVector 6(float) 3
14: TypePointer Function 13(fvec3) 13: TypePointer Function 12(fvec3)
16: 7(float) Constant 1076753334 15: 6(float) Constant 1076753334
17: 7(float) Constant 1079836148 16: 6(float) Constant 1079836148
18: 13(fvec3) ConstantComposite 12 16 17 17: 12(fvec3) ConstantComposite 11 15 16
19: TypeVector 7(float) 4 18: TypeVector 6(float) 4
20: TypePointer Function 19(fvec4) 19: TypePointer Function 18(fvec4)
22: 7(float) Constant 1073741824 21: 6(float) Constant 1073741824
23: 19(fvec4) ConstantComposite 12 16 17 22 22: 18(fvec4) ConstantComposite 11 15 16 21
25: 7(float) Constant 0 24: 6(float) Constant 0
26: 19(fvec4) ConstantComposite 25 25 25 25 25: 18(fvec4) ConstantComposite 24 24 24 24
27: TypeImage 7(float) 1D sampled format:Unknown 26: TypeImage 6(float) 1D sampled format:Unknown
28: TypeSampledImage 27 27: TypeSampledImage 26
29: TypePointer UniformConstant 28 28: TypePointer UniformConstant 27
30(texSampler1D): 29(ptr) Variable UniformConstant 29(texSampler1D): 28(ptr) Variable UniformConstant
38: TypeVector 7(float) 2 37: TypeVector 6(float) 2
39: TypePointer Input 38(fvec2) 38: TypePointer Input 37(fvec2)
40(coords2D): 39(ptr) Variable Input 39(coords2D): 38(ptr) Variable Input
52: TypeImage 7(float) 2D sampled format:Unknown 51: TypeImage 6(float) 2D sampled format:Unknown
53: TypeSampledImage 52 52: TypeSampledImage 51
54: TypePointer UniformConstant 53 53: TypePointer UniformConstant 52
55(texSampler2D): 54(ptr) Variable UniformConstant 54(texSampler2D): 53(ptr) Variable UniformConstant
74: TypeImage 7(float) 3D sampled format:Unknown 73: TypeImage 6(float) 3D sampled format:Unknown
75: TypeSampledImage 74 74: TypeSampledImage 73
76: TypePointer UniformConstant 75 75: TypePointer UniformConstant 74
77(texSampler3D): 76(ptr) Variable UniformConstant 76(texSampler3D): 75(ptr) Variable UniformConstant
90: TypeImage 7(float) Cube sampled format:Unknown 89: TypeImage 6(float) Cube sampled format:Unknown
91: TypeSampledImage 90 90: TypeSampledImage 89
92: TypePointer UniformConstant 91 91: TypePointer UniformConstant 90
93(texSamplerCube): 92(ptr) Variable UniformConstant 92(texSamplerCube): 91(ptr) Variable UniformConstant
100: TypeImage 7(float) 1D depth sampled format:Unknown 99: TypeImage 6(float) 1D depth sampled format:Unknown
101: TypeSampledImage 100 100: TypeSampledImage 99
102: TypePointer UniformConstant 101 101: TypePointer UniformConstant 100
103(shadowSampler1D): 102(ptr) Variable UniformConstant 102(shadowSampler1D): 101(ptr) Variable UniformConstant
111: TypeImage 7(float) 2D depth sampled format:Unknown 111: TypeImage 6(float) 2D depth sampled format:Unknown
112: TypeSampledImage 111 112: TypeSampledImage 111
113: TypePointer UniformConstant 112 113: TypePointer UniformConstant 112
114(shadowSampler2D): 113(ptr) Variable UniformConstant 114(shadowSampler2D): 113(ptr) Variable UniformConstant
136: TypePointer Output 19(fvec4) 139: TypePointer Output 18(fvec4)
137(gl_Position): 136(ptr) Variable Output 140(gl_Position): 139(ptr) Variable Output
139: TypeInt 32 1 142: TypeInt 32 1
140: TypePointer Input 139(int) 143: TypePointer Input 142(int)
141(gl_VertexID): 140(ptr) Variable Input 144(gl_VertexID): 143(ptr) Variable Input
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
9(lod): 8(ptr) Variable Function 8(lod): 7(ptr) Variable Function
11(coords1D): 8(ptr) Variable Function 10(coords1D): 7(ptr) Variable Function
15(coords3D): 14(ptr) Variable Function 14(coords3D): 13(ptr) Variable Function
21(coords4D): 20(ptr) Variable Function 20(coords4D): 19(ptr) Variable Function
24(color): 20(ptr) Variable Function 23(color): 19(ptr) Variable Function
Store 9(lod) 10 Store 8(lod) 9
Store 11(coords1D) 12 Store 10(coords1D) 11
Store 15(coords3D) 18 Store 14(coords3D) 17
Store 21(coords4D) 23 Store 20(coords4D) 22
Store 24(color) 26 Store 23(color) 25
31: 28 Load 30(texSampler1D) 30: 27 Load 29(texSampler1D)
32: 7(float) Load 11(coords1D) 31: 6(float) Load 10(coords1D)
33: 7(float) Load 9(lod) 32: 6(float) Load 8(lod)
34: 19(fvec4) ImageSampleExplicitLod 31 32 33 33: 18(fvec4) ImageSampleExplicitLod 30 31 32
35: 19(fvec4) Load 24(color) 34: 18(fvec4) Load 23(color)
36: 19(fvec4) FAdd 35 34 35: 18(fvec4) FAdd 34 33
Store 24(color) 36 Store 23(color) 35
37: 28 Load 30(texSampler1D) 36: 27 Load 29(texSampler1D)
41: 38(fvec2) Load 40(coords2D) 40: 37(fvec2) Load 39(coords2D)
42: 7(float) Load 9(lod) 41: 6(float) Load 8(lod)
43: 19(fvec4) ImageSampleProjExplicitLod 37 41 42 42: 18(fvec4) ImageSampleProjExplicitLod 36 40 41
44: 19(fvec4) Load 24(color) 43: 18(fvec4) Load 23(color)
45: 19(fvec4) FAdd 44 43 44: 18(fvec4) FAdd 43 42
Store 24(color) 45 Store 23(color) 44
46: 28 Load 30(texSampler1D) 45: 27 Load 29(texSampler1D)
47: 19(fvec4) Load 21(coords4D) 46: 18(fvec4) Load 20(coords4D)
48: 7(float) Load 9(lod) 47: 6(float) Load 8(lod)
49: 19(fvec4) ImageSampleProjExplicitLod 46 47 48 48: 18(fvec4) ImageSampleProjExplicitLod 45 46 47
50: 19(fvec4) Load 24(color) 49: 18(fvec4) Load 23(color)
51: 19(fvec4) FAdd 50 49 50: 18(fvec4) FAdd 49 48
Store 24(color) 51 Store 23(color) 50
56: 53 Load 55(texSampler2D) 55: 52 Load 54(texSampler2D)
57: 38(fvec2) Load 40(coords2D) 56: 37(fvec2) Load 39(coords2D)
58: 7(float) Load 9(lod) 57: 6(float) Load 8(lod)
59: 19(fvec4) ImageSampleExplicitLod 56 57 58 58: 18(fvec4) ImageSampleExplicitLod 55 56 57
60: 19(fvec4) Load 24(color) 59: 18(fvec4) Load 23(color)
61: 19(fvec4) FAdd 60 59 60: 18(fvec4) FAdd 59 58
Store 24(color) 61 Store 23(color) 60
62: 53 Load 55(texSampler2D) 61: 52 Load 54(texSampler2D)
63: 13(fvec3) Load 15(coords3D) 62: 12(fvec3) Load 14(coords3D)
64: 7(float) Load 9(lod) 63: 6(float) Load 8(lod)
65: 19(fvec4) ImageSampleProjExplicitLod 62 63 64 64: 18(fvec4) ImageSampleProjExplicitLod 61 62 63
66: 19(fvec4) Load 24(color) 65: 18(fvec4) Load 23(color)
67: 19(fvec4) FAdd 66 65 66: 18(fvec4) FAdd 65 64
Store 24(color) 67 Store 23(color) 66
68: 53 Load 55(texSampler2D) 67: 52 Load 54(texSampler2D)
69: 19(fvec4) Load 21(coords4D) 68: 18(fvec4) Load 20(coords4D)
70: 7(float) Load 9(lod) 69: 6(float) Load 8(lod)
71: 19(fvec4) ImageSampleProjExplicitLod 68 69 70 70: 18(fvec4) ImageSampleProjExplicitLod 67 68 69
72: 19(fvec4) Load 24(color) 71: 18(fvec4) Load 23(color)
73: 19(fvec4) FAdd 72 71 72: 18(fvec4) FAdd 71 70
Store 24(color) 73 Store 23(color) 72
78: 75 Load 77(texSampler3D) 77: 74 Load 76(texSampler3D)
79: 13(fvec3) Load 15(coords3D) 78: 12(fvec3) Load 14(coords3D)
80: 7(float) Load 9(lod) 79: 6(float) Load 8(lod)
81: 19(fvec4) ImageSampleExplicitLod 78 79 80 80: 18(fvec4) ImageSampleExplicitLod 77 78 79
82: 19(fvec4) Load 24(color) 81: 18(fvec4) Load 23(color)
83: 19(fvec4) FAdd 82 81 82: 18(fvec4) FAdd 81 80
Store 24(color) 83 Store 23(color) 82
84: 75 Load 77(texSampler3D) 83: 74 Load 76(texSampler3D)
85: 19(fvec4) Load 21(coords4D) 84: 18(fvec4) Load 20(coords4D)
86: 7(float) Load 9(lod) 85: 6(float) Load 8(lod)
87: 19(fvec4) ImageSampleProjExplicitLod 84 85 86 86: 18(fvec4) ImageSampleProjExplicitLod 83 84 85
88: 19(fvec4) Load 24(color) 87: 18(fvec4) Load 23(color)
89: 19(fvec4) FAdd 88 87 88: 18(fvec4) FAdd 87 86
Store 24(color) 89 Store 23(color) 88
94: 91 Load 93(texSamplerCube) 93: 90 Load 92(texSamplerCube)
95: 13(fvec3) Load 15(coords3D) 94: 12(fvec3) Load 14(coords3D)
96: 7(float) Load 9(lod) 95: 6(float) Load 8(lod)
97: 19(fvec4) ImageSampleExplicitLod 94 95 96 96: 18(fvec4) ImageSampleExplicitLod 93 94 95
98: 19(fvec4) Load 24(color) 97: 18(fvec4) Load 23(color)
99: 19(fvec4) FAdd 98 97 98: 18(fvec4) FAdd 97 96
Store 24(color) 99 Store 23(color) 98
104: 101 Load 103(shadowSampler1D) 103: 100 Load 102(shadowSampler1D)
105: 13(fvec3) Load 15(coords3D) 104: 12(fvec3) Load 14(coords3D)
106: 7(float) Load 9(lod) 105: 6(float) Load 8(lod)
107: 7(float) CompositeExtract 105 2 106: 6(float) CompositeExtract 104 2
108: 19(fvec4) ImageSampleDrefExplicitLod 104 105 107 106 107: 6(float) ImageSampleDrefExplicitLod 103 104 106 105
109: 19(fvec4) Load 24(color) 108: 18(fvec4) CompositeConstruct 107 107 107 107
110: 19(fvec4) FAdd 109 108 109: 18(fvec4) Load 23(color)
Store 24(color) 110 110: 18(fvec4) FAdd 109 108
Store 23(color) 110
115: 112 Load 114(shadowSampler2D) 115: 112 Load 114(shadowSampler2D)
116: 13(fvec3) Load 15(coords3D) 116: 12(fvec3) Load 14(coords3D)
117: 7(float) Load 9(lod) 117: 6(float) Load 8(lod)
118: 7(float) CompositeExtract 116 2 118: 6(float) CompositeExtract 116 2
119: 19(fvec4) ImageSampleDrefExplicitLod 115 116 118 117 119: 6(float) ImageSampleDrefExplicitLod 115 116 118 117
120: 19(fvec4) Load 24(color) 120: 18(fvec4) CompositeConstruct 119 119 119 119
121: 19(fvec4) FAdd 120 119 121: 18(fvec4) Load 23(color)
Store 24(color) 121 122: 18(fvec4) FAdd 121 120
122: 101 Load 103(shadowSampler1D) Store 23(color) 122
123: 19(fvec4) Load 21(coords4D) 123: 100 Load 102(shadowSampler1D)
124: 7(float) Load 9(lod) 124: 18(fvec4) Load 20(coords4D)
125: 7(float) CompositeExtract 123 3 125: 6(float) Load 8(lod)
126: 19(fvec4) ImageSampleProjDrefExplicitLod 122 123 125 124 126: 6(float) CompositeExtract 124 3
127: 19(fvec4) Load 24(color) 127: 6(float) ImageSampleProjDrefExplicitLod 123 124 126 125
128: 19(fvec4) FAdd 127 126 128: 18(fvec4) CompositeConstruct 127 127 127 127
Store 24(color) 128 129: 18(fvec4) Load 23(color)
129: 112 Load 114(shadowSampler2D) 130: 18(fvec4) FAdd 129 128
130: 19(fvec4) Load 21(coords4D) Store 23(color) 130
131: 7(float) Load 9(lod) 131: 112 Load 114(shadowSampler2D)
132: 7(float) CompositeExtract 130 3 132: 18(fvec4) Load 20(coords4D)
133: 19(fvec4) ImageSampleProjDrefExplicitLod 129 130 132 131 133: 6(float) Load 8(lod)
134: 19(fvec4) Load 24(color) 134: 6(float) CompositeExtract 132 3
135: 19(fvec4) FAdd 134 133 135: 6(float) ImageSampleProjDrefExplicitLod 131 132 134 133
Store 24(color) 135 136: 18(fvec4) CompositeConstruct 135 135 135 135
138: 19(fvec4) Load 24(color) 137: 18(fvec4) Load 23(color)
Store 137(gl_Position) 138 138: 18(fvec4) FAdd 137 136
Branch 6 Store 23(color) 138
6: Label 141: 18(fvec4) Load 23(color)
Store 140(gl_Position) 141
Return Return
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 264 // Id's are bound by 263
Source GLSL 130 Source GLSL 130
Capability Shader Capability Shader
@ -14,333 +14,331 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 9 "b" Name 8 "b"
Name 11 "u_b" Name 10 "u_b"
Name 13 "i_b" Name 12 "i_b"
Name 18 "b2" Name 17 "b2"
Name 20 "u_b2" Name 19 "u_b2"
Name 23 "i_b2" Name 22 "i_b2"
Name 36 "b3" Name 35 "b3"
Name 38 "u_b3" Name 37 "u_b3"
Name 41 "i_b3" Name 40 "i_b3"
Name 60 "b4" Name 59 "b4"
Name 62 "u_b4" Name 61 "u_b4"
Name 65 "i_b4" Name 64 "i_b4"
Name 90 "i" Name 89 "i"
Name 92 "u_i" Name 91 "u_i"
Name 95 "i_i" Name 94 "i_i"
Name 100 "i2" Name 99 "i2"
Name 102 "u_i2" Name 101 "u_i2"
Name 105 "i_i2" Name 104 "i_i2"
Name 110 "i3" Name 109 "i3"
Name 112 "u_i3" Name 111 "u_i3"
Name 115 "i_i3" Name 114 "i_i3"
Name 120 "i4" Name 119 "i4"
Name 122 "u_i4" Name 121 "u_i4"
Name 125 "i_i4" Name 124 "i_i4"
Name 130 "f" Name 129 "f"
Name 132 "u_f" Name 131 "u_f"
Name 135 "i_f" Name 134 "i_f"
Name 140 "f2" Name 139 "f2"
Name 142 "u_f2" Name 141 "u_f2"
Name 145 "i_f2" Name 144 "i_f2"
Name 150 "f3" Name 149 "f3"
Name 152 "u_f3" Name 151 "u_f3"
Name 155 "i_f3" Name 154 "i_f3"
Name 160 "f4" Name 159 "f4"
Name 162 "u_f4" Name 161 "u_f4"
Name 165 "i_f4" Name 164 "i_f4"
Name 169 "gl_FragColor" Name 168 "gl_FragColor"
Decorate 95(i_i) Flat Decorate 94(i_i) Flat
Decorate 105(i_i2) Flat Decorate 104(i_i2) Flat
Decorate 115(i_i3) Flat Decorate 114(i_i3) Flat
Decorate 125(i_i4) Flat Decorate 124(i_i4) Flat
Decorate 135(i_f) Smooth Decorate 134(i_f) Smooth
Decorate 145(i_f2) Smooth Decorate 144(i_f2) Smooth
Decorate 155(i_f3) Smooth Decorate 154(i_f3) Smooth
Decorate 165(i_f4) Smooth Decorate 164(i_f4) Smooth
Decorate 169(gl_FragColor) BuiltIn FragColor Decorate 168(gl_FragColor) BuiltIn FragColor
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeBool 6: TypeBool
8: TypePointer Function 7(bool) 7: TypePointer Function 6(bool)
10: TypePointer UniformConstant 7(bool) 9: TypePointer UniformConstant 6(bool)
11(u_b): 10(ptr) Variable UniformConstant 10(u_b): 9(ptr) Variable UniformConstant
13(i_b): 10(ptr) Variable UniformConstant 12(i_b): 9(ptr) Variable UniformConstant
16: TypeVector 7(bool) 2 15: TypeVector 6(bool) 2
17: TypePointer Function 16(bvec2) 16: TypePointer Function 15(bvec2)
19: TypePointer UniformConstant 16(bvec2) 18: TypePointer UniformConstant 15(bvec2)
20(u_b2): 19(ptr) Variable UniformConstant 19(u_b2): 18(ptr) Variable UniformConstant
23(i_b2): 19(ptr) Variable UniformConstant 22(i_b2): 18(ptr) Variable UniformConstant
34: TypeVector 7(bool) 3 33: TypeVector 6(bool) 3
35: TypePointer Function 34(bvec3) 34: TypePointer Function 33(bvec3)
37: TypePointer UniformConstant 34(bvec3) 36: TypePointer UniformConstant 33(bvec3)
38(u_b3): 37(ptr) Variable UniformConstant 37(u_b3): 36(ptr) Variable UniformConstant
41(i_b3): 37(ptr) Variable UniformConstant 40(i_b3): 36(ptr) Variable UniformConstant
58: TypeVector 7(bool) 4 57: TypeVector 6(bool) 4
59: TypePointer Function 58(bvec4) 58: TypePointer Function 57(bvec4)
61: TypePointer UniformConstant 58(bvec4) 60: TypePointer UniformConstant 57(bvec4)
62(u_b4): 61(ptr) Variable UniformConstant 61(u_b4): 60(ptr) Variable UniformConstant
65(i_b4): 61(ptr) Variable UniformConstant 64(i_b4): 60(ptr) Variable UniformConstant
88: TypeInt 32 1 87: TypeInt 32 1
89: TypePointer Function 88(int) 88: TypePointer Function 87(int)
91: TypePointer UniformConstant 88(int) 90: TypePointer UniformConstant 87(int)
92(u_i): 91(ptr) Variable UniformConstant 91(u_i): 90(ptr) Variable UniformConstant
94: TypePointer Input 88(int) 93: TypePointer Input 87(int)
95(i_i): 94(ptr) Variable Input 94(i_i): 93(ptr) Variable Input
98: TypeVector 88(int) 2 97: TypeVector 87(int) 2
99: TypePointer Function 98(ivec2) 98: TypePointer Function 97(ivec2)
101: TypePointer UniformConstant 98(ivec2) 100: TypePointer UniformConstant 97(ivec2)
102(u_i2): 101(ptr) Variable UniformConstant 101(u_i2): 100(ptr) Variable UniformConstant
104: TypePointer Input 98(ivec2) 103: TypePointer Input 97(ivec2)
105(i_i2): 104(ptr) Variable Input 104(i_i2): 103(ptr) Variable Input
108: TypeVector 88(int) 3 107: TypeVector 87(int) 3
109: TypePointer Function 108(ivec3) 108: TypePointer Function 107(ivec3)
111: TypePointer UniformConstant 108(ivec3) 110: TypePointer UniformConstant 107(ivec3)
112(u_i3): 111(ptr) Variable UniformConstant 111(u_i3): 110(ptr) Variable UniformConstant
114: TypePointer Input 108(ivec3) 113: TypePointer Input 107(ivec3)
115(i_i3): 114(ptr) Variable Input 114(i_i3): 113(ptr) Variable Input
118: TypeVector 88(int) 4 117: TypeVector 87(int) 4
119: TypePointer Function 118(ivec4) 118: TypePointer Function 117(ivec4)
121: TypePointer UniformConstant 118(ivec4) 120: TypePointer UniformConstant 117(ivec4)
122(u_i4): 121(ptr) Variable UniformConstant 121(u_i4): 120(ptr) Variable UniformConstant
124: TypePointer Input 118(ivec4) 123: TypePointer Input 117(ivec4)
125(i_i4): 124(ptr) Variable Input 124(i_i4): 123(ptr) Variable Input
128: TypeFloat 32 127: TypeFloat 32
129: TypePointer Function 128(float) 128: TypePointer Function 127(float)
131: TypePointer UniformConstant 128(float) 130: TypePointer UniformConstant 127(float)
132(u_f): 131(ptr) Variable UniformConstant 131(u_f): 130(ptr) Variable UniformConstant
134: TypePointer Input 128(float) 133: TypePointer Input 127(float)
135(i_f): 134(ptr) Variable Input 134(i_f): 133(ptr) Variable Input
138: TypeVector 128(float) 2 137: TypeVector 127(float) 2
139: TypePointer Function 138(fvec2) 138: TypePointer Function 137(fvec2)
141: TypePointer UniformConstant 138(fvec2) 140: TypePointer UniformConstant 137(fvec2)
142(u_f2): 141(ptr) Variable UniformConstant 141(u_f2): 140(ptr) Variable UniformConstant
144: TypePointer Input 138(fvec2) 143: TypePointer Input 137(fvec2)
145(i_f2): 144(ptr) Variable Input 144(i_f2): 143(ptr) Variable Input
148: TypeVector 128(float) 3 147: TypeVector 127(float) 3
149: TypePointer Function 148(fvec3) 148: TypePointer Function 147(fvec3)
151: TypePointer UniformConstant 148(fvec3) 150: TypePointer UniformConstant 147(fvec3)
152(u_f3): 151(ptr) Variable UniformConstant 151(u_f3): 150(ptr) Variable UniformConstant
154: TypePointer Input 148(fvec3) 153: TypePointer Input 147(fvec3)
155(i_f3): 154(ptr) Variable Input 154(i_f3): 153(ptr) Variable Input
158: TypeVector 128(float) 4 157: TypeVector 127(float) 4
159: TypePointer Function 158(fvec4) 158: TypePointer Function 157(fvec4)
161: TypePointer UniformConstant 158(fvec4) 160: TypePointer UniformConstant 157(fvec4)
162(u_f4): 161(ptr) Variable UniformConstant 161(u_f4): 160(ptr) Variable UniformConstant
164: TypePointer Input 158(fvec4) 163: TypePointer Input 157(fvec4)
165(i_f4): 164(ptr) Variable Input 164(i_f4): 163(ptr) Variable Input
168: TypePointer Output 158(fvec4) 167: TypePointer Output 157(fvec4)
169(gl_FragColor): 168(ptr) Variable Output 168(gl_FragColor): 167(ptr) Variable Output
261: 128(float) Constant 1065353216 260: 127(float) Constant 1065353216
262: 158(fvec4) ConstantComposite 261 261 261 261 261: 157(fvec4) ConstantComposite 260 260 260 260
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
9(b): 8(ptr) Variable Function 8(b): 7(ptr) Variable Function
18(b2): 17(ptr) Variable Function 17(b2): 16(ptr) Variable Function
36(b3): 35(ptr) Variable Function 35(b3): 34(ptr) Variable Function
60(b4): 59(ptr) Variable Function 59(b4): 58(ptr) Variable Function
90(i): 89(ptr) Variable Function 89(i): 88(ptr) Variable Function
100(i2): 99(ptr) Variable Function 99(i2): 98(ptr) Variable Function
110(i3): 109(ptr) Variable Function 109(i3): 108(ptr) Variable Function
120(i4): 119(ptr) Variable Function 119(i4): 118(ptr) Variable Function
130(f): 129(ptr) Variable Function 129(f): 128(ptr) Variable Function
140(f2): 139(ptr) Variable Function 139(f2): 138(ptr) Variable Function
150(f3): 149(ptr) Variable Function 149(f3): 148(ptr) Variable Function
160(f4): 159(ptr) Variable Function 159(f4): 158(ptr) Variable Function
170: 159(ptr) Variable Function 169: 158(ptr) Variable Function
12: 7(bool) Load 11(u_b) 11: 6(bool) Load 10(u_b)
14: 7(bool) Load 13(i_b) 13: 6(bool) Load 12(i_b)
15: 7(bool) LogicalAnd 12 14 14: 6(bool) LogicalAnd 11 13
Store 9(b) 15 Store 8(b) 14
21: 16(bvec2) Load 20(u_b2) 20: 15(bvec2) Load 19(u_b2)
22: 7(bool) CompositeExtract 21 0 21: 6(bool) CompositeExtract 20 0
24: 16(bvec2) Load 23(i_b2) 23: 15(bvec2) Load 22(i_b2)
25: 7(bool) CompositeExtract 24 0 24: 6(bool) CompositeExtract 23 0
26: 7(bool) LogicalAnd 22 25 25: 6(bool) LogicalAnd 21 24
27: 16(bvec2) Load 20(u_b2) 26: 15(bvec2) Load 19(u_b2)
28: 7(bool) CompositeExtract 27 1 27: 6(bool) CompositeExtract 26 1
29: 7(bool) LogicalAnd 26 28 28: 6(bool) LogicalAnd 25 27
30: 16(bvec2) Load 23(i_b2) 29: 15(bvec2) Load 22(i_b2)
31: 7(bool) CompositeExtract 30 1 30: 6(bool) CompositeExtract 29 1
32: 7(bool) LogicalAnd 29 31 31: 6(bool) LogicalAnd 28 30
33: 16(bvec2) CompositeConstruct 32 32 32: 15(bvec2) CompositeConstruct 31 31
Store 18(b2) 33 Store 17(b2) 32
39: 34(bvec3) Load 38(u_b3) 38: 33(bvec3) Load 37(u_b3)
40: 7(bool) CompositeExtract 39 0 39: 6(bool) CompositeExtract 38 0
42: 34(bvec3) Load 41(i_b3) 41: 33(bvec3) Load 40(i_b3)
43: 7(bool) CompositeExtract 42 0 42: 6(bool) CompositeExtract 41 0
44: 7(bool) LogicalAnd 40 43 43: 6(bool) LogicalAnd 39 42
45: 34(bvec3) Load 38(u_b3) 44: 33(bvec3) Load 37(u_b3)
46: 7(bool) CompositeExtract 45 1 45: 6(bool) CompositeExtract 44 1
47: 7(bool) LogicalAnd 44 46 46: 6(bool) LogicalAnd 43 45
48: 34(bvec3) Load 41(i_b3) 47: 33(bvec3) Load 40(i_b3)
49: 7(bool) CompositeExtract 48 1 48: 6(bool) CompositeExtract 47 1
50: 7(bool) LogicalAnd 47 49 49: 6(bool) LogicalAnd 46 48
51: 34(bvec3) Load 38(u_b3) 50: 33(bvec3) Load 37(u_b3)
52: 7(bool) CompositeExtract 51 2 51: 6(bool) CompositeExtract 50 2
53: 7(bool) LogicalAnd 50 52 52: 6(bool) LogicalAnd 49 51
54: 34(bvec3) Load 41(i_b3) 53: 33(bvec3) Load 40(i_b3)
55: 7(bool) CompositeExtract 54 2 54: 6(bool) CompositeExtract 53 2
56: 7(bool) LogicalAnd 53 55 55: 6(bool) LogicalAnd 52 54
57: 34(bvec3) CompositeConstruct 56 56 56 56: 33(bvec3) CompositeConstruct 55 55 55
Store 36(b3) 57 Store 35(b3) 56
63: 58(bvec4) Load 62(u_b4) 62: 57(bvec4) Load 61(u_b4)
64: 7(bool) CompositeExtract 63 0 63: 6(bool) CompositeExtract 62 0
66: 58(bvec4) Load 65(i_b4) 65: 57(bvec4) Load 64(i_b4)
67: 7(bool) CompositeExtract 66 0 66: 6(bool) CompositeExtract 65 0
68: 7(bool) LogicalAnd 64 67 67: 6(bool) LogicalAnd 63 66
69: 58(bvec4) Load 62(u_b4) 68: 57(bvec4) Load 61(u_b4)
70: 7(bool) CompositeExtract 69 1 69: 6(bool) CompositeExtract 68 1
71: 7(bool) LogicalAnd 68 70 70: 6(bool) LogicalAnd 67 69
72: 58(bvec4) Load 65(i_b4) 71: 57(bvec4) Load 64(i_b4)
73: 7(bool) CompositeExtract 72 1 72: 6(bool) CompositeExtract 71 1
74: 7(bool) LogicalAnd 71 73 73: 6(bool) LogicalAnd 70 72
75: 58(bvec4) Load 62(u_b4) 74: 57(bvec4) Load 61(u_b4)
76: 7(bool) CompositeExtract 75 2 75: 6(bool) CompositeExtract 74 2
77: 7(bool) LogicalAnd 74 76 76: 6(bool) LogicalAnd 73 75
78: 58(bvec4) Load 65(i_b4) 77: 57(bvec4) Load 64(i_b4)
79: 7(bool) CompositeExtract 78 2 78: 6(bool) CompositeExtract 77 2
80: 7(bool) LogicalAnd 77 79 79: 6(bool) LogicalAnd 76 78
81: 58(bvec4) Load 62(u_b4) 80: 57(bvec4) Load 61(u_b4)
82: 7(bool) CompositeExtract 81 3 81: 6(bool) CompositeExtract 80 3
83: 7(bool) LogicalAnd 80 82 82: 6(bool) LogicalAnd 79 81
84: 58(bvec4) Load 65(i_b4) 83: 57(bvec4) Load 64(i_b4)
85: 7(bool) CompositeExtract 84 3 84: 6(bool) CompositeExtract 83 3
86: 7(bool) LogicalAnd 83 85 85: 6(bool) LogicalAnd 82 84
87: 58(bvec4) CompositeConstruct 86 86 86 86 86: 57(bvec4) CompositeConstruct 85 85 85 85
Store 60(b4) 87 Store 59(b4) 86
93: 88(int) Load 92(u_i) 92: 87(int) Load 91(u_i)
96: 88(int) Load 95(i_i) 95: 87(int) Load 94(i_i)
97: 88(int) IAdd 93 96 96: 87(int) IAdd 92 95
Store 90(i) 97 Store 89(i) 96
103: 98(ivec2) Load 102(u_i2) 102: 97(ivec2) Load 101(u_i2)
106: 98(ivec2) Load 105(i_i2) 105: 97(ivec2) Load 104(i_i2)
107: 98(ivec2) IAdd 103 106 106: 97(ivec2) IAdd 102 105
Store 100(i2) 107 Store 99(i2) 106
113: 108(ivec3) Load 112(u_i3) 112: 107(ivec3) Load 111(u_i3)
116: 108(ivec3) Load 115(i_i3) 115: 107(ivec3) Load 114(i_i3)
117: 108(ivec3) IAdd 113 116 116: 107(ivec3) IAdd 112 115
Store 110(i3) 117 Store 109(i3) 116
123: 118(ivec4) Load 122(u_i4) 122: 117(ivec4) Load 121(u_i4)
126: 118(ivec4) Load 125(i_i4) 125: 117(ivec4) Load 124(i_i4)
127: 118(ivec4) IAdd 123 126 126: 117(ivec4) IAdd 122 125
Store 120(i4) 127 Store 119(i4) 126
133: 128(float) Load 132(u_f) 132: 127(float) Load 131(u_f)
136: 128(float) Load 135(i_f) 135: 127(float) Load 134(i_f)
137: 128(float) FAdd 133 136 136: 127(float) FAdd 132 135
Store 130(f) 137 Store 129(f) 136
143: 138(fvec2) Load 142(u_f2) 142: 137(fvec2) Load 141(u_f2)
146: 138(fvec2) Load 145(i_f2) 145: 137(fvec2) Load 144(i_f2)
147: 138(fvec2) FAdd 143 146 146: 137(fvec2) FAdd 142 145
Store 140(f2) 147 Store 139(f2) 146
153: 148(fvec3) Load 152(u_f3) 152: 147(fvec3) Load 151(u_f3)
156: 148(fvec3) Load 155(i_f3) 155: 147(fvec3) Load 154(i_f3)
157: 148(fvec3) FAdd 153 156 156: 147(fvec3) FAdd 152 155
Store 150(f3) 157 Store 149(f3) 156
163: 158(fvec4) Load 162(u_f4) 162: 157(fvec4) Load 161(u_f4)
166: 158(fvec4) Load 165(i_f4) 165: 157(fvec4) Load 164(i_f4)
167: 158(fvec4) FAdd 163 166 166: 157(fvec4) FAdd 162 165
Store 160(f4) 167 Store 159(f4) 166
171: 7(bool) Load 9(b) 170: 6(bool) Load 8(b)
172: 16(bvec2) Load 18(b2) 171: 15(bvec2) Load 17(b2)
173: 7(bool) CompositeExtract 172 0 172: 6(bool) CompositeExtract 171 0
174: 7(bool) LogicalOr 171 173 173: 6(bool) LogicalOr 170 172
175: 16(bvec2) Load 18(b2) 174: 15(bvec2) Load 17(b2)
176: 7(bool) CompositeExtract 175 1 175: 6(bool) CompositeExtract 174 1
177: 7(bool) LogicalOr 174 176 176: 6(bool) LogicalOr 173 175
178: 34(bvec3) Load 36(b3) 177: 33(bvec3) Load 35(b3)
179: 7(bool) CompositeExtract 178 0 178: 6(bool) CompositeExtract 177 0
180: 7(bool) LogicalOr 177 179 179: 6(bool) LogicalOr 176 178
181: 34(bvec3) Load 36(b3) 180: 33(bvec3) Load 35(b3)
182: 7(bool) CompositeExtract 181 1 181: 6(bool) CompositeExtract 180 1
183: 7(bool) LogicalOr 180 182 182: 6(bool) LogicalOr 179 181
184: 34(bvec3) Load 36(b3) 183: 33(bvec3) Load 35(b3)
185: 7(bool) CompositeExtract 184 2 184: 6(bool) CompositeExtract 183 2
186: 7(bool) LogicalOr 183 185 185: 6(bool) LogicalOr 182 184
187: 58(bvec4) Load 60(b4) 186: 57(bvec4) Load 59(b4)
188: 7(bool) CompositeExtract 187 0 187: 6(bool) CompositeExtract 186 0
189: 7(bool) LogicalOr 186 188 188: 6(bool) LogicalOr 185 187
190: 58(bvec4) Load 60(b4) 189: 57(bvec4) Load 59(b4)
191: 7(bool) CompositeExtract 190 1 190: 6(bool) CompositeExtract 189 1
192: 7(bool) LogicalOr 189 191 191: 6(bool) LogicalOr 188 190
193: 58(bvec4) Load 60(b4) 192: 57(bvec4) Load 59(b4)
194: 7(bool) CompositeExtract 193 2 193: 6(bool) CompositeExtract 192 2
195: 7(bool) LogicalOr 192 194 194: 6(bool) LogicalOr 191 193
196: 58(bvec4) Load 60(b4) 195: 57(bvec4) Load 59(b4)
197: 7(bool) CompositeExtract 196 3 196: 6(bool) CompositeExtract 195 3
198: 7(bool) LogicalOr 195 197 197: 6(bool) LogicalOr 194 196
SelectionMerge 200 None SelectionMerge 199 None
BranchConditional 198 199 260 BranchConditional 197 198 259
199: Label 198: Label
201: 88(int) Load 90(i) 200: 87(int) Load 89(i)
202: 98(ivec2) Load 100(i2) 201: 97(ivec2) Load 99(i2)
203: 88(int) CompositeExtract 202 0 202: 87(int) CompositeExtract 201 0
204: 88(int) IAdd 201 203 203: 87(int) IAdd 200 202
205: 98(ivec2) Load 100(i2) 204: 97(ivec2) Load 99(i2)
206: 88(int) CompositeExtract 205 1 205: 87(int) CompositeExtract 204 1
207: 88(int) IAdd 204 206 206: 87(int) IAdd 203 205
208: 108(ivec3) Load 110(i3) 207: 107(ivec3) Load 109(i3)
209: 88(int) CompositeExtract 208 0 208: 87(int) CompositeExtract 207 0
210: 88(int) IAdd 207 209 209: 87(int) IAdd 206 208
211: 108(ivec3) Load 110(i3) 210: 107(ivec3) Load 109(i3)
212: 88(int) CompositeExtract 211 1 211: 87(int) CompositeExtract 210 1
213: 88(int) IAdd 210 212 212: 87(int) IAdd 209 211
214: 108(ivec3) Load 110(i3) 213: 107(ivec3) Load 109(i3)
215: 88(int) CompositeExtract 214 2 214: 87(int) CompositeExtract 213 2
216: 88(int) IAdd 213 215 215: 87(int) IAdd 212 214
217: 118(ivec4) Load 120(i4) 216: 117(ivec4) Load 119(i4)
218: 88(int) CompositeExtract 217 0 217: 87(int) CompositeExtract 216 0
219: 88(int) IAdd 216 218 218: 87(int) IAdd 215 217
220: 118(ivec4) Load 120(i4) 219: 117(ivec4) Load 119(i4)
221: 88(int) CompositeExtract 220 1 220: 87(int) CompositeExtract 219 1
222: 88(int) IAdd 219 221 221: 87(int) IAdd 218 220
223: 118(ivec4) Load 120(i4) 222: 117(ivec4) Load 119(i4)
224: 88(int) CompositeExtract 223 2 223: 87(int) CompositeExtract 222 2
225: 88(int) IAdd 222 224 224: 87(int) IAdd 221 223
226: 118(ivec4) Load 120(i4) 225: 117(ivec4) Load 119(i4)
227: 88(int) CompositeExtract 226 3 226: 87(int) CompositeExtract 225 3
228: 88(int) IAdd 225 227 227: 87(int) IAdd 224 226
229: 128(float) ConvertSToF 228 228: 127(float) ConvertSToF 227
230: 128(float) Load 130(f) 229: 127(float) Load 129(f)
231: 128(float) FAdd 229 230 230: 127(float) FAdd 228 229
232: 138(fvec2) Load 140(f2) 231: 137(fvec2) Load 139(f2)
233: 128(float) CompositeExtract 232 0 232: 127(float) CompositeExtract 231 0
234: 128(float) FAdd 231 233 233: 127(float) FAdd 230 232
235: 138(fvec2) Load 140(f2) 234: 137(fvec2) Load 139(f2)
236: 128(float) CompositeExtract 235 1 235: 127(float) CompositeExtract 234 1
237: 128(float) FAdd 234 236 236: 127(float) FAdd 233 235
238: 148(fvec3) Load 150(f3) 237: 147(fvec3) Load 149(f3)
239: 128(float) CompositeExtract 238 0 238: 127(float) CompositeExtract 237 0
240: 128(float) FAdd 237 239 239: 127(float) FAdd 236 238
241: 148(fvec3) Load 150(f3) 240: 147(fvec3) Load 149(f3)
242: 128(float) CompositeExtract 241 1 241: 127(float) CompositeExtract 240 1
243: 128(float) FAdd 240 242 242: 127(float) FAdd 239 241
244: 148(fvec3) Load 150(f3) 243: 147(fvec3) Load 149(f3)
245: 128(float) CompositeExtract 244 2 244: 127(float) CompositeExtract 243 2
246: 128(float) FAdd 243 245 245: 127(float) FAdd 242 244
247: 158(fvec4) Load 160(f4) 246: 157(fvec4) Load 159(f4)
248: 128(float) CompositeExtract 247 0 247: 127(float) CompositeExtract 246 0
249: 128(float) FAdd 246 248 248: 127(float) FAdd 245 247
250: 158(fvec4) Load 160(f4) 249: 157(fvec4) Load 159(f4)
251: 128(float) CompositeExtract 250 1 250: 127(float) CompositeExtract 249 1
252: 128(float) FAdd 249 251 251: 127(float) FAdd 248 250
253: 158(fvec4) Load 160(f4) 252: 157(fvec4) Load 159(f4)
254: 128(float) CompositeExtract 253 2 253: 127(float) CompositeExtract 252 2
255: 128(float) FAdd 252 254 254: 127(float) FAdd 251 253
256: 158(fvec4) Load 160(f4) 255: 157(fvec4) Load 159(f4)
257: 128(float) CompositeExtract 256 3 256: 127(float) CompositeExtract 255 3
258: 128(float) FAdd 255 257 257: 127(float) FAdd 254 256
259: 158(fvec4) CompositeConstruct 258 258 258 258 258: 157(fvec4) CompositeConstruct 257 257 257 257
Store 170 259 Store 169 258
Branch 200 Branch 199
260: Label 259: Label
Store 170 262 Store 169 261
Branch 200 Branch 199
200: Label 199: Label
263: 158(fvec4) Load 170 262: 157(fvec4) Load 169
Store 169(gl_FragColor) 263 Store 168(gl_FragColor) 262
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 207 // Id's are bound by 206
Source ESSL 300 Source ESSL 300
Capability Shader Capability Shader
@ -14,344 +14,342 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 9 "count" Name 8 "count"
Name 13 "u" Name 12 "u"
Name 16 "t" Name 15 "t"
Name 54 "shiftedii" Name 53 "shiftedii"
Name 56 "shiftedui" Name 55 "shiftedui"
Name 58 "shiftediu" Name 57 "shiftediu"
Name 59 "shifteduu" Name 58 "shifteduu"
Name 67 "c" Name 66 "c"
Name 71 "usampler" Name 70 "usampler"
Name 76 "tc" Name 75 "tc"
Name 109 "af" Name 108 "af"
Name 113 "ab" Name 112 "ab"
Name 117 "ai" Name 116 "ai"
Name 152 "mask1" Name 151 "mask1"
Name 154 "mask2" Name 153 "mask2"
Name 156 "mask3" Name 155 "mask3"
Name 160 "mask4" Name 159 "mask4"
Name 200 "f" Name 199 "f"
Name 202 "v" Name 201 "v"
Name 204 "i" Name 203 "i"
Name 206 "b" Name 205 "b"
Decorate 9(count) RelaxedPrecision Decorate 8(count) RelaxedPrecision
Decorate 13(u) RelaxedPrecision Decorate 12(u) RelaxedPrecision
Decorate 16(t) RelaxedPrecision Decorate 15(t) RelaxedPrecision
Decorate 16(t) Flat Decorate 15(t) Flat
Decorate 54(shiftedii) RelaxedPrecision Decorate 53(shiftedii) RelaxedPrecision
Decorate 56(shiftedui) RelaxedPrecision Decorate 55(shiftedui) RelaxedPrecision
Decorate 58(shiftediu) RelaxedPrecision Decorate 57(shiftediu) RelaxedPrecision
Decorate 59(shifteduu) RelaxedPrecision Decorate 58(shifteduu) RelaxedPrecision
Decorate 67(c) RelaxedPrecision Decorate 66(c) RelaxedPrecision
Decorate 71(usampler) RelaxedPrecision Decorate 70(usampler) RelaxedPrecision
Decorate 76(tc) RelaxedPrecision Decorate 75(tc) RelaxedPrecision
Decorate 76(tc) Smooth Decorate 75(tc) Smooth
Decorate 109(af) RelaxedPrecision Decorate 108(af) RelaxedPrecision
Decorate 117(ai) RelaxedPrecision Decorate 116(ai) RelaxedPrecision
Decorate 152(mask1) RelaxedPrecision Decorate 151(mask1) RelaxedPrecision
Decorate 154(mask2) RelaxedPrecision Decorate 153(mask2) RelaxedPrecision
Decorate 156(mask3) RelaxedPrecision Decorate 155(mask3) RelaxedPrecision
Decorate 160(mask4) RelaxedPrecision Decorate 159(mask4) RelaxedPrecision
Decorate 200(f) RelaxedPrecision Decorate 199(f) RelaxedPrecision
Decorate 200(f) Smooth Decorate 199(f) Smooth
Decorate 200(f) NoStaticUse Decorate 199(f) NoStaticUse
Decorate 202(v) RelaxedPrecision Decorate 201(v) RelaxedPrecision
Decorate 202(v) NoStaticUse Decorate 201(v) NoStaticUse
Decorate 204(i) RelaxedPrecision Decorate 203(i) RelaxedPrecision
Decorate 204(i) NoStaticUse Decorate 203(i) NoStaticUse
Decorate 206(b) NoStaticUse Decorate 205(b) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeInt 32 1 6: TypeInt 32 1
8: TypePointer Function 7(int) 7: TypePointer Function 6(int)
10: 7(int) Constant 1 9: 6(int) Constant 1
11: TypeInt 32 0 10: TypeInt 32 0
12: TypePointer Function 11(int) 11: TypePointer Function 10(int)
14: TypeVector 11(int) 2 13: TypeVector 10(int) 2
15: TypePointer Input 14(ivec2) 14: TypePointer Input 13(ivec2)
16(t): 15(ptr) Variable Input 15(t): 14(ptr) Variable Input
19: 11(int) Constant 3 18: 10(int) Constant 3
21: TypeBool 20: TypeBool
22: 21(bool) ConstantTrue 21: 20(bool) ConstantTrue
25: 7(int) Constant 2 24: 6(int) Constant 2
30: 7(int) Constant 3 29: 6(int) Constant 3
33: 21(bool) ConstantFalse 32: 20(bool) ConstantFalse
36: 7(int) Constant 5 35: 6(int) Constant 5
41: 7(int) Constant 7 40: 6(int) Constant 7
46: 7(int) Constant 11 45: 6(int) Constant 11
51: 7(int) Constant 13 50: 6(int) Constant 13
55: 7(int) Constant 4294967295 54: 6(int) Constant 4294967295
57: 11(int) Constant 4194303 56: 10(int) Constant 4194303
65: TypeVector 11(int) 4 64: TypeVector 10(int) 4
66: TypePointer Output 65(ivec4) 65: TypePointer Output 64(ivec4)
67(c): 66(ptr) Variable Output 66(c): 65(ptr) Variable Output
68: TypeImage 11(int) 2D sampled format:Unknown 67: TypeImage 10(int) 2D sampled format:Unknown
69: TypeSampledImage 68 68: TypeSampledImage 67
70: TypePointer UniformConstant 69 69: TypePointer UniformConstant 68
71(usampler): 70(ptr) Variable UniformConstant 70(usampler): 69(ptr) Variable UniformConstant
73: TypeFloat 32 72: TypeFloat 32
74: TypeVector 73(float) 2 73: TypeVector 72(float) 2
75: TypePointer Input 74(fvec2) 74: TypePointer Input 73(fvec2)
76(tc): 75(ptr) Variable Input 75(tc): 74(ptr) Variable Input
86: 73(float) Constant 1065353216 85: 72(float) Constant 1065353216
98: 73(float) Constant 1073741824 97: 72(float) Constant 1073741824
99: 74(fvec2) ConstantComposite 98 98 98: 73(fvec2) ConstantComposite 97 97
104: 11(int) Constant 4 103: 10(int) Constant 4
108: TypePointer Function 73(float) 107: TypePointer Function 72(float)
112: TypePointer Function 21(bool) 111: TypePointer Function 20(bool)
115: 11(int) Constant 0 114: 10(int) Constant 0
123: 11(int) Constant 1 122: 10(int) Constant 1
134: 7(int) Constant 17 133: 6(int) Constant 17
139: 7(int) Constant 19 138: 6(int) Constant 19
144: 7(int) Constant 23 143: 6(int) Constant 23
149: 7(int) Constant 27 148: 6(int) Constant 27
153: 11(int) Constant 161 152: 10(int) Constant 161
155: 11(int) Constant 2576 154: 10(int) Constant 2576
158: 7(int) Constant 4 157: 6(int) Constant 4
161: 11(int) Constant 2737 160: 10(int) Constant 2737
199: TypePointer Input 73(float) 198: TypePointer Input 72(float)
200(f): 199(ptr) Variable Input 199(f): 198(ptr) Variable Input
201: TypePointer UniformConstant 65(ivec4) 200: TypePointer UniformConstant 64(ivec4)
202(v): 201(ptr) Variable UniformConstant 201(v): 200(ptr) Variable UniformConstant
203: TypePointer UniformConstant 7(int) 202: TypePointer UniformConstant 6(int)
204(i): 203(ptr) Variable UniformConstant 203(i): 202(ptr) Variable UniformConstant
205: TypePointer UniformConstant 21(bool) 204: TypePointer UniformConstant 20(bool)
206(b): 205(ptr) Variable UniformConstant 205(b): 204(ptr) Variable UniformConstant
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
9(count): 8(ptr) Variable Function 8(count): 7(ptr) Variable Function
13(u): 12(ptr) Variable Function 12(u): 11(ptr) Variable Function
54(shiftedii): 8(ptr) Variable Function 53(shiftedii): 7(ptr) Variable Function
56(shiftedui): 12(ptr) Variable Function 55(shiftedui): 11(ptr) Variable Function
58(shiftediu): 8(ptr) Variable Function 57(shiftediu): 7(ptr) Variable Function
59(shifteduu): 12(ptr) Variable Function 58(shifteduu): 11(ptr) Variable Function
109(af): 108(ptr) Variable Function 108(af): 107(ptr) Variable Function
113(ab): 112(ptr) Variable Function 112(ab): 111(ptr) Variable Function
117(ai): 8(ptr) Variable Function 116(ai): 7(ptr) Variable Function
152(mask1): 12(ptr) Variable Function 151(mask1): 11(ptr) Variable Function
154(mask2): 12(ptr) Variable Function 153(mask2): 11(ptr) Variable Function
156(mask3): 12(ptr) Variable Function 155(mask3): 11(ptr) Variable Function
160(mask4): 12(ptr) Variable Function 159(mask4): 11(ptr) Variable Function
Store 9(count) 10 Store 8(count) 9
17: 14(ivec2) Load 16(t) 16: 13(ivec2) Load 15(t)
18: 11(int) CompositeExtract 17 1 17: 10(int) CompositeExtract 16 1
20: 11(int) IAdd 18 19 19: 10(int) IAdd 17 18
Store 13(u) 20 Store 12(u) 19
SelectionMerge 24 None SelectionMerge 23 None
BranchConditional 22 23 24 BranchConditional 21 22 23
23: Label 22: Label
26: 7(int) Load 9(count) 25: 6(int) Load 8(count)
27: 7(int) IMul 26 25 26: 6(int) IMul 25 24
Store 9(count) 27 Store 8(count) 26
Branch 24 Branch 23
24: Label 23: Label
SelectionMerge 29 None SelectionMerge 28 None
BranchConditional 22 28 29 BranchConditional 21 27 28
28: Label 27: Label
31: 7(int) Load 9(count) 30: 6(int) Load 8(count)
32: 7(int) IMul 31 30 31: 6(int) IMul 30 29
Store 9(count) 32 Store 8(count) 31
Branch 29 Branch 28
29: Label 28: Label
SelectionMerge 35 None SelectionMerge 34 None
BranchConditional 33 34 35 BranchConditional 32 33 34
34: Label 33: Label
37: 7(int) Load 9(count) 36: 6(int) Load 8(count)
38: 7(int) IMul 37 36 37: 6(int) IMul 36 35
Store 9(count) 38 Store 8(count) 37
Branch 35 Branch 34
35: Label 34: Label
SelectionMerge 40 None SelectionMerge 39 None
BranchConditional 22 39 40 BranchConditional 21 38 39
39: Label 38: Label
42: 7(int) Load 9(count) 41: 6(int) Load 8(count)
43: 7(int) IMul 42 41 42: 6(int) IMul 41 40
Store 9(count) 43 Store 8(count) 42
Branch 40 Branch 39
40: Label 39: Label
SelectionMerge 45 None SelectionMerge 44 None
BranchConditional 22 44 45 BranchConditional 21 43 44
44: Label 43: Label
47: 7(int) Load 9(count) 46: 6(int) Load 8(count)
48: 7(int) IMul 47 46 47: 6(int) IMul 46 45
Store 9(count) 48 Store 8(count) 47
Branch 45 Branch 44
45: Label 44: Label
SelectionMerge 50 None SelectionMerge 49 None
BranchConditional 33 49 50 BranchConditional 32 48 49
49: Label 48: Label
52: 7(int) Load 9(count) 51: 6(int) Load 8(count)
53: 7(int) IMul 52 51 52: 6(int) IMul 51 50
Store 9(count) 53 Store 8(count) 52
Branch 50 Branch 49
50: Label 49: Label
Store 54(shiftedii) 55 Store 53(shiftedii) 54
Store 56(shiftedui) 57 Store 55(shiftedui) 56
Store 58(shiftediu) 55 Store 57(shiftediu) 54
Store 59(shifteduu) 57 Store 58(shifteduu) 56
60: 7(int) Load 54(shiftedii) 59: 6(int) Load 53(shiftedii)
61: 7(int) Load 58(shiftediu) 60: 6(int) Load 57(shiftediu)
62: 21(bool) IEqual 60 61 61: 20(bool) IEqual 59 60
SelectionMerge 64 None SelectionMerge 63 None
BranchConditional 62 63 64 BranchConditional 61 62 63
63: Label 62: Label
72: 69 Load 71(usampler) 71: 68 Load 70(usampler)
77: 74(fvec2) Load 76(tc) 76: 73(fvec2) Load 75(tc)
78: 65(ivec4) ImageSampleImplicitLod 72 77 77: 64(ivec4) ImageSampleImplicitLod 71 76
Store 67(c) 78 Store 66(c) 77
Branch 64 Branch 63
64: Label 63: Label
79: 11(int) Load 56(shiftedui) 78: 10(int) Load 55(shiftedui)
80: 11(int) Load 59(shifteduu) 79: 10(int) Load 58(shifteduu)
81: 21(bool) IEqual 79 80 80: 20(bool) IEqual 78 79
SelectionMerge 83 None SelectionMerge 82 None
BranchConditional 81 82 83 BranchConditional 80 81 82
82: Label 81: Label
84: 69 Load 71(usampler) 83: 68 Load 70(usampler)
85: 74(fvec2) Load 76(tc) 84: 73(fvec2) Load 75(tc)
87: 74(fvec2) CompositeConstruct 86 86 86: 73(fvec2) CompositeConstruct 85 85
88: 74(fvec2) FAdd 85 87 87: 73(fvec2) FAdd 84 86
89: 65(ivec4) ImageSampleImplicitLod 84 88 88: 64(ivec4) ImageSampleImplicitLod 83 87
Store 67(c) 89 Store 66(c) 88
Branch 83 Branch 82
83: Label 82: Label
90: 7(int) Load 54(shiftedii) 89: 6(int) Load 53(shiftedii)
91: 11(int) Load 56(shiftedui) 90: 10(int) Load 55(shiftedui)
92: 7(int) Bitcast 91 91: 6(int) Bitcast 90
93: 21(bool) IEqual 90 92 92: 20(bool) IEqual 89 91
SelectionMerge 95 None SelectionMerge 94 None
BranchConditional 93 94 95 BranchConditional 92 93 94
94: Label 93: Label
96: 69 Load 71(usampler) 95: 68 Load 70(usampler)
97: 74(fvec2) Load 76(tc) 96: 73(fvec2) Load 75(tc)
100: 74(fvec2) FSub 97 99 99: 73(fvec2) FSub 96 98
101: 65(ivec4) ImageSampleImplicitLod 96 100 100: 64(ivec4) ImageSampleImplicitLod 95 99
Store 67(c) 101 Store 66(c) 100
Branch 95 Branch 94
95: Label 94: Label
102: 14(ivec2) Load 16(t) 101: 13(ivec2) Load 15(t)
103: 11(int) CompositeExtract 102 0 102: 10(int) CompositeExtract 101 0
105: 21(bool) UGreaterThan 103 104 104: 20(bool) UGreaterThan 102 103
SelectionMerge 107 None SelectionMerge 106 None
BranchConditional 105 106 107 BranchConditional 104 105 106
106: Label 105: Label
110: 11(int) Load 13(u) 109: 10(int) Load 12(u)
111: 73(float) ConvertUToF 110 110: 72(float) ConvertUToF 109
Store 109(af) 111 Store 108(af) 110
114: 11(int) Load 13(u) 113: 10(int) Load 12(u)
116: 21(bool) INotEqual 114 115 115: 20(bool) INotEqual 113 114
Store 113(ab) 116 Store 112(ab) 115
118: 11(int) Load 13(u) 117: 10(int) Load 12(u)
119: 7(int) Bitcast 118 118: 6(int) Bitcast 117
Store 117(ai) 119 Store 116(ai) 118
120: 73(float) Load 109(af) 119: 72(float) Load 108(af)
121: 11(int) ConvertFToU 120 120: 10(int) ConvertFToU 119
122: 21(bool) Load 113(ab) 121: 20(bool) Load 112(ab)
124: 11(int) Select 122 123 115 123: 10(int) Select 121 122 114
125: 7(int) Load 117(ai) 124: 6(int) Load 116(ai)
126: 11(int) Bitcast 125 125: 10(int) Bitcast 124
127: 7(int) Load 9(count) 126: 6(int) Load 8(count)
128: 11(int) Bitcast 127 127: 10(int) Bitcast 126
129: 65(ivec4) CompositeConstruct 121 124 126 128 128: 64(ivec4) CompositeConstruct 120 123 125 127
130: 65(ivec4) Load 67(c) 129: 64(ivec4) Load 66(c)
131: 65(ivec4) IAdd 130 129 130: 64(ivec4) IAdd 129 128
Store 67(c) 131 Store 66(c) 130
Branch 107 Branch 106
107: Label 106: Label
SelectionMerge 133 None SelectionMerge 132 None
BranchConditional 22 132 133 BranchConditional 21 131 132
132: Label 131: Label
135: 7(int) Load 9(count) 134: 6(int) Load 8(count)
136: 7(int) IMul 135 134 135: 6(int) IMul 134 133
Store 9(count) 136 Store 8(count) 135
Branch 133 Branch 132
133: Label 132: Label
SelectionMerge 138 None SelectionMerge 137 None
BranchConditional 33 137 138 BranchConditional 32 136 137
137: Label 136: Label
140: 7(int) Load 9(count) 139: 6(int) Load 8(count)
141: 7(int) IMul 140 139 140: 6(int) IMul 139 138
Store 9(count) 141 Store 8(count) 140
Branch 138 Branch 137
138: Label 137: Label
SelectionMerge 143 None SelectionMerge 142 None
BranchConditional 22 142 143 BranchConditional 21 141 142
142: Label 141: Label
145: 7(int) Load 9(count) 144: 6(int) Load 8(count)
146: 7(int) IMul 145 144 145: 6(int) IMul 144 143
Store 9(count) 146 Store 8(count) 145
Branch 143 Branch 142
143: Label 142: Label
SelectionMerge 148 None SelectionMerge 147 None
BranchConditional 22 147 148 BranchConditional 21 146 147
147: Label 146: Label
150: 7(int) Load 9(count) 149: 6(int) Load 8(count)
151: 7(int) IMul 150 149 150: 6(int) IMul 149 148
Store 9(count) 151 Store 8(count) 150
Branch 148 Branch 147
148: Label 147: Label
Store 152(mask1) 153 Store 151(mask1) 152
Store 154(mask2) 155 Store 153(mask2) 154
157: 11(int) Load 152(mask1) 156: 10(int) Load 151(mask1)
159: 11(int) ShiftLeftLogical 157 158 158: 10(int) ShiftLeftLogical 156 157
Store 156(mask3) 159 Store 155(mask3) 158
Store 160(mask4) 161 Store 159(mask4) 160
162: 11(int) Load 156(mask3) 161: 10(int) Load 155(mask3)
163: 11(int) Load 154(mask2) 162: 10(int) Load 153(mask2)
164: 21(bool) IEqual 162 163 163: 20(bool) IEqual 161 162
SelectionMerge 166 None SelectionMerge 165 None
BranchConditional 164 165 166 BranchConditional 163 164 165
165: Label 164: Label
167: 7(int) Load 9(count) 166: 6(int) Load 8(count)
168: 7(int) IMul 167 25 167: 6(int) IMul 166 24
Store 9(count) 168 Store 8(count) 167
Branch 166 Branch 165
166: Label 165: Label
169: 11(int) Load 156(mask3) 168: 10(int) Load 155(mask3)
170: 11(int) Load 152(mask1) 169: 10(int) Load 151(mask1)
171: 11(int) BitwiseAnd 169 170 170: 10(int) BitwiseAnd 168 169
172: 21(bool) INotEqual 171 115 171: 20(bool) INotEqual 170 114
SelectionMerge 174 None SelectionMerge 173 None
BranchConditional 172 173 174 BranchConditional 171 172 173
173: Label 172: Label
175: 7(int) Load 9(count) 174: 6(int) Load 8(count)
176: 7(int) IMul 175 30 175: 6(int) IMul 174 29
Store 9(count) 176 Store 8(count) 175
Branch 174 Branch 173
174: Label 173: Label
177: 11(int) Load 152(mask1) 176: 10(int) Load 151(mask1)
178: 11(int) Load 156(mask3) 177: 10(int) Load 155(mask3)
179: 11(int) BitwiseOr 177 178 178: 10(int) BitwiseOr 176 177
180: 11(int) Load 160(mask4) 179: 10(int) Load 159(mask4)
181: 21(bool) IEqual 179 180 180: 20(bool) IEqual 178 179
SelectionMerge 183 None SelectionMerge 182 None
BranchConditional 181 182 183 BranchConditional 180 181 182
182: Label 181: Label
184: 7(int) Load 9(count) 183: 6(int) Load 8(count)
185: 7(int) IMul 184 36 184: 6(int) IMul 183 35
Store 9(count) 185 Store 8(count) 184
Branch 183 Branch 182
183: Label 182: Label
186: 11(int) Load 152(mask1) 185: 10(int) Load 151(mask1)
187: 11(int) Load 160(mask4) 186: 10(int) Load 159(mask4)
188: 11(int) BitwiseXor 186 187 187: 10(int) BitwiseXor 185 186
189: 21(bool) IEqual 188 155 188: 20(bool) IEqual 187 154
SelectionMerge 191 None SelectionMerge 190 None
BranchConditional 189 190 191 BranchConditional 188 189 190
190: Label 189: Label
192: 7(int) Load 9(count) 191: 6(int) Load 8(count)
193: 7(int) IMul 192 41 192: 6(int) IMul 191 40
Store 9(count) 193 Store 8(count) 192
Branch 191 Branch 190
191: Label 190: Label
194: 7(int) Load 9(count) 193: 6(int) Load 8(count)
195: 11(int) Bitcast 194 194: 10(int) Bitcast 193
196: 65(ivec4) CompositeConstruct 195 195 195 195 195: 64(ivec4) CompositeConstruct 194 194 194 194
197: 65(ivec4) Load 67(c) 196: 64(ivec4) Load 66(c)
198: 65(ivec4) IAdd 197 196 197: 64(ivec4) IAdd 196 195
Store 67(c) 198 Store 66(c) 197
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 53 // Id's are bound by 52
Source GLSL 130 Source GLSL 130
Capability Shader Capability Shader
@ -14,69 +14,67 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 10 "texColor" Name 9 "texColor"
Name 15 "color" Name 14 "color"
Name 26 "inColor" Name 25 "inColor"
Name 36 "alpha" Name 35 "alpha"
Name 47 "gl_FragColor" Name 46 "gl_FragColor"
Name 52 "texSampler2D" Name 51 "texSampler2D"
Decorate 47(gl_FragColor) BuiltIn FragColor Decorate 46(gl_FragColor) BuiltIn FragColor
Decorate 52(texSampler2D) NoStaticUse Decorate 51(texSampler2D) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 4 7: TypeVector 6(float) 4
9: TypePointer Function 8(fvec4) 8: TypePointer Function 7(fvec4)
11: TypeInt 32 0 10: TypeInt 32 0
12: 11(int) Constant 6 11: 10(int) Constant 6
13: TypeArray 8(fvec4) 12 12: TypeArray 7(fvec4) 11
14: TypePointer UniformConstant 13 13: TypePointer UniformConstant 12
15(color): 14(ptr) Variable UniformConstant 14(color): 13(ptr) Variable UniformConstant
16: TypeInt 32 1 15: TypeInt 32 1
17: 16(int) Constant 1 16: 15(int) Constant 1
18: TypePointer UniformConstant 8(fvec4) 17: TypePointer UniformConstant 7(fvec4)
24: TypeVector 7(float) 3 23: TypeVector 6(float) 3
25: TypePointer UniformConstant 24(fvec3) 24: TypePointer UniformConstant 23(fvec3)
26(inColor): 25(ptr) Variable UniformConstant 25(inColor): 24(ptr) Variable UniformConstant
33: 11(int) Constant 16 32: 10(int) Constant 16
34: TypeArray 7(float) 33 33: TypeArray 6(float) 32
35: TypePointer UniformConstant 34 34: TypePointer UniformConstant 33
36(alpha): 35(ptr) Variable UniformConstant 35(alpha): 34(ptr) Variable UniformConstant
37: 16(int) Constant 12 36: 15(int) Constant 12
38: TypePointer UniformConstant 7(float) 37: TypePointer UniformConstant 6(float)
46: TypePointer Output 8(fvec4) 45: TypePointer Output 7(fvec4)
47(gl_FragColor): 46(ptr) Variable Output 46(gl_FragColor): 45(ptr) Variable Output
49: TypeImage 7(float) 2D sampled format:Unknown 48: TypeImage 6(float) 2D sampled format:Unknown
50: TypeSampledImage 49 49: TypeSampledImage 48
51: TypePointer UniformConstant 50 50: TypePointer UniformConstant 49
52(texSampler2D): 51(ptr) Variable UniformConstant 51(texSampler2D): 50(ptr) Variable UniformConstant
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
10(texColor): 9(ptr) Variable Function 9(texColor): 8(ptr) Variable Function
19: 18(ptr) AccessChain 15(color) 17 18: 17(ptr) AccessChain 14(color) 16
20: 8(fvec4) Load 19 19: 7(fvec4) Load 18
21: 18(ptr) AccessChain 15(color) 17 20: 17(ptr) AccessChain 14(color) 16
22: 8(fvec4) Load 21 21: 7(fvec4) Load 20
23: 8(fvec4) FAdd 20 22 22: 7(fvec4) FAdd 19 21
Store 10(texColor) 23 Store 9(texColor) 22
27: 24(fvec3) Load 26(inColor) 26: 23(fvec3) Load 25(inColor)
28: 8(fvec4) Load 10(texColor) 27: 7(fvec4) Load 9(texColor)
29: 24(fvec3) VectorShuffle 28 28 0 1 2 28: 23(fvec3) VectorShuffle 27 27 0 1 2
30: 24(fvec3) FAdd 29 27 29: 23(fvec3) FAdd 28 26
31: 8(fvec4) Load 10(texColor) 30: 7(fvec4) Load 9(texColor)
32: 8(fvec4) VectorShuffle 31 30 4 5 6 3 31: 7(fvec4) VectorShuffle 30 29 4 5 6 3
Store 10(texColor) 32 Store 9(texColor) 31
39: 38(ptr) AccessChain 36(alpha) 37 38: 37(ptr) AccessChain 35(alpha) 36
40: 7(float) Load 39 39: 6(float) Load 38
41: 8(fvec4) Load 10(texColor) 40: 7(fvec4) Load 9(texColor)
42: 7(float) CompositeExtract 41 3 41: 6(float) CompositeExtract 40 3
43: 7(float) FAdd 42 40 42: 6(float) FAdd 41 39
44: 8(fvec4) Load 10(texColor) 43: 7(fvec4) Load 9(texColor)
45: 8(fvec4) CompositeInsert 43 44 3 44: 7(fvec4) CompositeInsert 42 43 3
Store 10(texColor) 45 Store 9(texColor) 44
48: 8(fvec4) Load 10(texColor) 47: 7(fvec4) Load 9(texColor)
Store 47(gl_FragColor) 48 Store 46(gl_FragColor) 47
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -7,7 +7,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 94 // Id's are bound by 93
Source GLSL 130 Source GLSL 130
Capability Shader Capability Shader
@ -16,133 +16,131 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 9 "iLocal" Name 8 "iLocal"
Name 11 "Count" Name 10 "Count"
Name 14 "lunarStruct1" Name 13 "lunarStruct1"
MemberName 14(lunarStruct1) 0 "i" MemberName 13(lunarStruct1) 0 "i"
MemberName 14(lunarStruct1) 1 "f" MemberName 13(lunarStruct1) 1 "f"
Name 15 "lunarStruct2" Name 14 "lunarStruct2"
MemberName 15(lunarStruct2) 0 "i" MemberName 14(lunarStruct2) 0 "i"
MemberName 15(lunarStruct2) 1 "f" MemberName 14(lunarStruct2) 1 "f"
MemberName 15(lunarStruct2) 2 "s1_1" MemberName 14(lunarStruct2) 2 "s1_1"
Name 19 "lunarStruct3" Name 18 "lunarStruct3"
MemberName 19(lunarStruct3) 0 "s2_1" MemberName 18(lunarStruct3) 0 "s2_1"
MemberName 19(lunarStruct3) 1 "i" MemberName 18(lunarStruct3) 1 "i"
MemberName 19(lunarStruct3) 2 "f" MemberName 18(lunarStruct3) 2 "f"
MemberName 19(lunarStruct3) 3 "s1_1" MemberName 18(lunarStruct3) 3 "s1_1"
Name 21 "foo3" Name 20 "foo3"
Name 31 "scale" Name 30 "scale"
Name 35 "foo2" Name 34 "foo2"
Name 37 "foo" Name 36 "foo"
Name 55 "gl_FragColor" Name 54 "gl_FragColor"
Name 60 "sampler" Name 59 "sampler"
Name 64 "coord" Name 63 "coord"
Name 70 "constructed" Name 69 "constructed"
Decorate 55(gl_FragColor) BuiltIn FragColor Decorate 54(gl_FragColor) BuiltIn FragColor
Decorate 64(coord) Smooth Decorate 63(coord) Smooth
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeInt 32 1 6: TypeInt 32 1
8: TypePointer Function 7(int) 7: TypePointer Function 6(int)
10: TypePointer UniformConstant 7(int) 9: TypePointer UniformConstant 6(int)
11(Count): 10(ptr) Variable UniformConstant 10(Count): 9(ptr) Variable UniformConstant
13: TypeFloat 32 12: TypeFloat 32
14(lunarStruct1): TypeStruct 7(int) 13(float) 13(lunarStruct1): TypeStruct 6(int) 12(float)
15(lunarStruct2): TypeStruct 7(int) 13(float) 14(lunarStruct1) 14(lunarStruct2): TypeStruct 6(int) 12(float) 13(lunarStruct1)
16: TypeInt 32 0 15: TypeInt 32 0
17: 16(int) Constant 3 16: 15(int) Constant 3
18: TypeArray 15(lunarStruct2) 17 17: TypeArray 14(lunarStruct2) 16
19(lunarStruct3): TypeStruct 18 7(int) 13(float) 14(lunarStruct1) 18(lunarStruct3): TypeStruct 17 6(int) 12(float) 13(lunarStruct1)
20: TypePointer UniformConstant 19(lunarStruct3) 19: TypePointer UniformConstant 18(lunarStruct3)
21(foo3): 20(ptr) Variable UniformConstant 20(foo3): 19(ptr) Variable UniformConstant
22: 7(int) Constant 0 21: 6(int) Constant 0
23: 7(int) Constant 1 22: 6(int) Constant 1
26: TypeBool 25: TypeBool
30: TypePointer Function 13(float) 29: TypePointer Function 12(float)
32: 16(int) Constant 5 31: 15(int) Constant 5
33: TypeArray 15(lunarStruct2) 32 32: TypeArray 14(lunarStruct2) 31
34: TypePointer UniformConstant 33 33: TypePointer UniformConstant 32
35(foo2): 34(ptr) Variable UniformConstant 34(foo2): 33(ptr) Variable UniformConstant
36: TypePointer UniformConstant 14(lunarStruct1) 35: TypePointer UniformConstant 13(lunarStruct1)
37(foo): 36(ptr) Variable UniformConstant 36(foo): 35(ptr) Variable UniformConstant
42: 7(int) Constant 2 41: 6(int) Constant 2
47: TypePointer UniformConstant 13(float) 46: TypePointer UniformConstant 12(float)
53: TypeVector 13(float) 4 52: TypeVector 12(float) 4
54: TypePointer Output 53(fvec4) 53: TypePointer Output 52(fvec4)
55(gl_FragColor): 54(ptr) Variable Output 54(gl_FragColor): 53(ptr) Variable Output
57: TypeImage 13(float) 2D sampled format:Unknown 56: TypeImage 12(float) 2D sampled format:Unknown
58: TypeSampledImage 57 57: TypeSampledImage 56
59: TypePointer UniformConstant 58 58: TypePointer UniformConstant 57
60(sampler): 59(ptr) Variable UniformConstant 59(sampler): 58(ptr) Variable UniformConstant
62: TypeVector 13(float) 2 61: TypeVector 12(float) 2
63: TypePointer Input 62(fvec2) 62: TypePointer Input 61(fvec2)
64(coord): 63(ptr) Variable Input 63(coord): 62(ptr) Variable Input
68: TypeArray 62(fvec2) 17 67: TypeArray 61(fvec2) 16
69: TypePointer Function 68 68: TypePointer Function 67
74: 13(float) Constant 1065353216 73: 12(float) Constant 1065353216
75: 13(float) Constant 1073741824 74: 12(float) Constant 1073741824
76: 62(fvec2) ConstantComposite 74 75 75: 61(fvec2) ConstantComposite 73 74
80: TypePointer Function 62(fvec2) 79: TypePointer Function 61(fvec2)
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
9(iLocal): 8(ptr) Variable Function 8(iLocal): 7(ptr) Variable Function
31(scale): 30(ptr) Variable Function 30(scale): 29(ptr) Variable Function
70(constructed): 69(ptr) Variable Function 69(constructed): 68(ptr) Variable Function
12: 7(int) Load 11(Count) 11: 6(int) Load 10(Count)
Store 9(iLocal) 12 Store 8(iLocal) 11
24: 10(ptr) AccessChain 21(foo3) 22 23 22 23: 9(ptr) AccessChain 20(foo3) 21 22 21
25: 7(int) Load 24 24: 6(int) Load 23
27: 26(bool) SGreaterThan 25 22 26: 25(bool) SGreaterThan 24 21
SelectionMerge 29 None SelectionMerge 28 None
BranchConditional 27 28 50 BranchConditional 26 27 49
28: Label 27: Label
38: 10(ptr) AccessChain 37(foo) 22 37: 9(ptr) AccessChain 36(foo) 21
39: 7(int) Load 38 38: 6(int) Load 37
40: 10(ptr) AccessChain 21(foo3) 22 39 22 39: 9(ptr) AccessChain 20(foo3) 21 38 21
41: 7(int) Load 40 40: 6(int) Load 39
43: 7(int) IAdd 41 42 42: 6(int) IAdd 40 41
44: 7(int) Load 9(iLocal) 43: 6(int) Load 8(iLocal)
45: 7(int) IAdd 44 23 44: 6(int) IAdd 43 22
Store 9(iLocal) 45 Store 8(iLocal) 44
46: 7(int) IAdd 43 45 45: 6(int) IAdd 42 44
48: 47(ptr) AccessChain 35(foo2) 46 42 23 47: 46(ptr) AccessChain 34(foo2) 45 41 22
49: 13(float) Load 48 48: 12(float) Load 47
Store 31(scale) 49 Store 30(scale) 48
Branch 29 Branch 28
50: Label 49: Label
51: 47(ptr) AccessChain 21(foo3) 22 22 42 23 50: 46(ptr) AccessChain 20(foo3) 21 21 41 22
52: 13(float) Load 51 51: 12(float) Load 50
Store 31(scale) 52 Store 30(scale) 51
Branch 29 Branch 28
29: Label 28: Label
56: 13(float) Load 31(scale) 55: 12(float) Load 30(scale)
61: 58 Load 60(sampler) 60: 57 Load 59(sampler)
65: 62(fvec2) Load 64(coord) 64: 61(fvec2) Load 63(coord)
66: 53(fvec4) ImageSampleImplicitLod 61 65 65: 52(fvec4) ImageSampleImplicitLod 60 64
67: 53(fvec4) VectorTimesScalar 66 56 66: 52(fvec4) VectorTimesScalar 65 55
Store 55(gl_FragColor) 67 Store 54(gl_FragColor) 66
71: 62(fvec2) Load 64(coord) 70: 61(fvec2) Load 63(coord)
72: 13(float) Load 31(scale) 71: 12(float) Load 30(scale)
73: 62(fvec2) CompositeConstruct 72 72 72: 61(fvec2) CompositeConstruct 71 71
77: 68 CompositeConstruct 71 73 76 76: 67 CompositeConstruct 70 72 75
Store 70(constructed) 77 Store 69(constructed) 76
78: 10(ptr) AccessChain 37(foo) 22 77: 9(ptr) AccessChain 36(foo) 21
79: 7(int) Load 78 78: 6(int) Load 77
81: 80(ptr) AccessChain 70(constructed) 79 80: 79(ptr) AccessChain 69(constructed) 78
82: 62(fvec2) Load 81 81: 61(fvec2) Load 80
83: 10(ptr) AccessChain 37(foo) 22 82: 9(ptr) AccessChain 36(foo) 21
84: 7(int) Load 83 83: 6(int) Load 82
85: 80(ptr) AccessChain 70(constructed) 84 84: 79(ptr) AccessChain 69(constructed) 83
86: 62(fvec2) Load 85 85: 61(fvec2) Load 84
87: 13(float) CompositeExtract 82 0 86: 12(float) CompositeExtract 81 0
88: 13(float) CompositeExtract 82 1 87: 12(float) CompositeExtract 81 1
89: 13(float) CompositeExtract 86 0 88: 12(float) CompositeExtract 85 0
90: 13(float) CompositeExtract 86 1 89: 12(float) CompositeExtract 85 1
91: 53(fvec4) CompositeConstruct 87 88 89 90 90: 52(fvec4) CompositeConstruct 86 87 88 89
92: 53(fvec4) Load 55(gl_FragColor) 91: 52(fvec4) Load 54(gl_FragColor)
93: 53(fvec4) FAdd 92 91 92: 52(fvec4) FAdd 91 90
Store 55(gl_FragColor) 93 Store 54(gl_FragColor) 92
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -10,7 +10,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 62 // Id's are bound by 61
Source GLSL 130 Source GLSL 130
Capability Shader Capability Shader
@ -19,82 +19,80 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 10 "texColor" Name 9 "texColor"
Name 14 "texSampler2D" Name 13 "texSampler2D"
Name 20 "gl_TexCoord" Name 19 "gl_TexCoord"
Name 35 "color" Name 34 "color"
Name 40 "alpha" Name 39 "alpha"
Name 45 "gl_FragColor" Name 44 "gl_FragColor"
Name 49 "foo" Name 48 "foo"
Decorate 20(gl_TexCoord) Smooth Decorate 19(gl_TexCoord) Smooth
Decorate 35(color) Smooth Decorate 34(color) Smooth
Decorate 40(alpha) Smooth Decorate 39(alpha) Smooth
Decorate 45(gl_FragColor) BuiltIn FragColor Decorate 44(gl_FragColor) BuiltIn FragColor
Decorate 49(foo) Smooth Decorate 48(foo) Smooth
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 4 7: TypeVector 6(float) 4
9: TypePointer Function 8(fvec4) 8: TypePointer Function 7(fvec4)
11: TypeImage 7(float) 2D sampled format:Unknown 10: TypeImage 6(float) 2D sampled format:Unknown
12: TypeSampledImage 11 11: TypeSampledImage 10
13: TypePointer UniformConstant 12 12: TypePointer UniformConstant 11
14(texSampler2D): 13(ptr) Variable UniformConstant 13(texSampler2D): 12(ptr) Variable UniformConstant
16: TypeInt 32 0 15: TypeInt 32 0
17: 16(int) Constant 6 16: 15(int) Constant 6
18: TypeArray 8(fvec4) 17 17: TypeArray 7(fvec4) 16
19: TypePointer Input 18 18: TypePointer Input 17
20(gl_TexCoord): 19(ptr) Variable Input 19(gl_TexCoord): 18(ptr) Variable Input
21: TypeInt 32 1 20: TypeInt 32 1
22: 21(int) Constant 4 21: 20(int) Constant 4
23: TypePointer Input 8(fvec4) 22: TypePointer Input 7(fvec4)
26: 21(int) Constant 5 25: 20(int) Constant 5
30: TypeVector 7(float) 2 29: TypeVector 6(float) 2
35(color): 23(ptr) Variable Input 34(color): 22(ptr) Variable Input
39: TypePointer Input 7(float) 38: TypePointer Input 6(float)
40(alpha): 39(ptr) Variable Input 39(alpha): 38(ptr) Variable Input
44: TypePointer Output 8(fvec4) 43: TypePointer Output 7(fvec4)
45(gl_FragColor): 44(ptr) Variable Output 44(gl_FragColor): 43(ptr) Variable Output
46: 16(int) Constant 3 45: 15(int) Constant 3
47: TypeArray 8(fvec4) 46 46: TypeArray 7(fvec4) 45
48: TypePointer Input 47 47: TypePointer Input 46
49(foo): 48(ptr) Variable Input 48(foo): 47(ptr) Variable Input
50: 21(int) Constant 1 49: 20(int) Constant 1
53: 21(int) Constant 0 52: 20(int) Constant 0
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
10(texColor): 9(ptr) Variable Function 9(texColor): 8(ptr) Variable Function
15: 12 Load 14(texSampler2D) 14: 11 Load 13(texSampler2D)
24: 23(ptr) AccessChain 20(gl_TexCoord) 22 23: 22(ptr) AccessChain 19(gl_TexCoord) 21
25: 8(fvec4) Load 24 24: 7(fvec4) Load 23
27: 23(ptr) AccessChain 20(gl_TexCoord) 26 26: 22(ptr) AccessChain 19(gl_TexCoord) 25
28: 8(fvec4) Load 27 27: 7(fvec4) Load 26
29: 8(fvec4) FAdd 25 28 28: 7(fvec4) FAdd 24 27
31: 7(float) CompositeExtract 29 0 30: 6(float) CompositeExtract 28 0
32: 7(float) CompositeExtract 29 1 31: 6(float) CompositeExtract 28 1
33: 30(fvec2) CompositeConstruct 31 32 32: 29(fvec2) CompositeConstruct 30 31
34: 8(fvec4) ImageSampleImplicitLod 15 33 33: 7(fvec4) ImageSampleImplicitLod 14 32
Store 10(texColor) 34 Store 9(texColor) 33
36: 8(fvec4) Load 35(color) 35: 7(fvec4) Load 34(color)
37: 8(fvec4) Load 10(texColor) 36: 7(fvec4) Load 9(texColor)
38: 8(fvec4) FAdd 37 36 37: 7(fvec4) FAdd 36 35
Store 10(texColor) 38 Store 9(texColor) 37
41: 7(float) Load 40(alpha) 40: 6(float) Load 39(alpha)
42: 8(fvec4) Load 10(texColor) 41: 7(fvec4) Load 9(texColor)
43: 8(fvec4) CompositeInsert 41 42 3 42: 7(fvec4) CompositeInsert 40 41 3
Store 10(texColor) 43 Store 9(texColor) 42
51: 23(ptr) AccessChain 49(foo) 50 50: 22(ptr) AccessChain 48(foo) 49
52: 8(fvec4) Load 51 51: 7(fvec4) Load 50
54: 23(ptr) AccessChain 20(gl_TexCoord) 53 53: 22(ptr) AccessChain 19(gl_TexCoord) 52
55: 8(fvec4) Load 54 54: 7(fvec4) Load 53
56: 8(fvec4) FAdd 52 55 55: 7(fvec4) FAdd 51 54
57: 23(ptr) AccessChain 20(gl_TexCoord) 22 56: 22(ptr) AccessChain 19(gl_TexCoord) 21
58: 8(fvec4) Load 57 57: 7(fvec4) Load 56
59: 8(fvec4) FAdd 56 58 58: 7(fvec4) FAdd 55 57
60: 8(fvec4) Load 10(texColor) 59: 7(fvec4) Load 9(texColor)
61: 8(fvec4) FAdd 59 60 60: 7(fvec4) FAdd 58 59
Store 45(gl_FragColor) 61 Store 44(gl_FragColor) 60
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -10,7 +10,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 70 // Id's are bound by 69
Source GLSL 130 Source GLSL 130
Capability Shader Capability Shader
@ -19,92 +19,90 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 10 "texColor" Name 9 "texColor"
Name 14 "texSampler2D" Name 13 "texSampler2D"
Name 20 "userIn" Name 19 "userIn"
Name 23 "b" Name 22 "b"
Name 31 "gl_TexCoord" Name 30 "gl_TexCoord"
Name 32 "a" Name 31 "a"
Name 46 "color" Name 45 "color"
Name 51 "alpha" Name 50 "alpha"
Name 56 "gl_FragColor" Name 55 "gl_FragColor"
Decorate 20(userIn) Smooth Decorate 19(userIn) Smooth
Decorate 31(gl_TexCoord) Smooth Decorate 30(gl_TexCoord) Smooth
Decorate 46(color) Smooth Decorate 45(color) Smooth
Decorate 51(alpha) Smooth Decorate 50(alpha) Smooth
Decorate 56(gl_FragColor) BuiltIn FragColor Decorate 55(gl_FragColor) BuiltIn FragColor
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 4 7: TypeVector 6(float) 4
9: TypePointer Function 8(fvec4) 8: TypePointer Function 7(fvec4)
11: TypeImage 7(float) 2D sampled format:Unknown 10: TypeImage 6(float) 2D sampled format:Unknown
12: TypeSampledImage 11 11: TypeSampledImage 10
13: TypePointer UniformConstant 12 12: TypePointer UniformConstant 11
14(texSampler2D): 13(ptr) Variable UniformConstant 13(texSampler2D): 12(ptr) Variable UniformConstant
16: TypeInt 32 0 15: TypeInt 32 0
17: 16(int) Constant 2 16: 15(int) Constant 2
18: TypeArray 8(fvec4) 17 17: TypeArray 7(fvec4) 16
19: TypePointer Input 18 18: TypePointer Input 17
20(userIn): 19(ptr) Variable Input 19(userIn): 18(ptr) Variable Input
21: TypeInt 32 1 20: TypeInt 32 1
22: TypePointer UniformConstant 21(int) 21: TypePointer UniformConstant 20(int)
23(b): 22(ptr) Variable UniformConstant 22(b): 21(ptr) Variable UniformConstant
25: TypePointer Input 8(fvec4) 24: TypePointer Input 7(fvec4)
28: 16(int) Constant 6 27: 15(int) Constant 6
29: TypeArray 8(fvec4) 28 28: TypeArray 7(fvec4) 27
30: TypePointer Input 29 29: TypePointer Input 28
31(gl_TexCoord): 30(ptr) Variable Input 30(gl_TexCoord): 29(ptr) Variable Input
32(a): 22(ptr) Variable UniformConstant 31(a): 21(ptr) Variable UniformConstant
37: 21(int) Constant 5 36: 20(int) Constant 5
41: TypeVector 7(float) 2 40: TypeVector 6(float) 2
46(color): 25(ptr) Variable Input 45(color): 24(ptr) Variable Input
50: TypePointer Input 7(float) 49: TypePointer Input 6(float)
51(alpha): 50(ptr) Variable Input 50(alpha): 49(ptr) Variable Input
55: TypePointer Output 8(fvec4) 54: TypePointer Output 7(fvec4)
56(gl_FragColor): 55(ptr) Variable Output 55(gl_FragColor): 54(ptr) Variable Output
57: 21(int) Constant 0 56: 20(int) Constant 0
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
10(texColor): 9(ptr) Variable Function 9(texColor): 8(ptr) Variable Function
15: 12 Load 14(texSampler2D) 14: 11 Load 13(texSampler2D)
24: 21(int) Load 23(b) 23: 20(int) Load 22(b)
26: 25(ptr) AccessChain 20(userIn) 24 25: 24(ptr) AccessChain 19(userIn) 23
27: 8(fvec4) Load 26 26: 7(fvec4) Load 25
33: 21(int) Load 32(a) 32: 20(int) Load 31(a)
34: 25(ptr) AccessChain 31(gl_TexCoord) 33 33: 24(ptr) AccessChain 30(gl_TexCoord) 32
35: 8(fvec4) Load 34 34: 7(fvec4) Load 33
36: 8(fvec4) FAdd 27 35 35: 7(fvec4) FAdd 26 34
38: 25(ptr) AccessChain 31(gl_TexCoord) 37 37: 24(ptr) AccessChain 30(gl_TexCoord) 36
39: 8(fvec4) Load 38 38: 7(fvec4) Load 37
40: 8(fvec4) FAdd 36 39 39: 7(fvec4) FAdd 35 38
42: 7(float) CompositeExtract 40 0 41: 6(float) CompositeExtract 39 0
43: 7(float) CompositeExtract 40 1 42: 6(float) CompositeExtract 39 1
44: 41(fvec2) CompositeConstruct 42 43 43: 40(fvec2) CompositeConstruct 41 42
45: 8(fvec4) ImageSampleImplicitLod 15 44 44: 7(fvec4) ImageSampleImplicitLod 14 43
Store 10(texColor) 45 Store 9(texColor) 44
47: 8(fvec4) Load 46(color) 46: 7(fvec4) Load 45(color)
48: 8(fvec4) Load 10(texColor) 47: 7(fvec4) Load 9(texColor)
49: 8(fvec4) FAdd 48 47 48: 7(fvec4) FAdd 47 46
Store 10(texColor) 49 Store 9(texColor) 48
52: 7(float) Load 51(alpha) 51: 6(float) Load 50(alpha)
53: 8(fvec4) Load 10(texColor) 52: 7(fvec4) Load 9(texColor)
54: 8(fvec4) CompositeInsert 52 53 3 53: 7(fvec4) CompositeInsert 51 52 3
Store 10(texColor) 54 Store 9(texColor) 53
58: 25(ptr) AccessChain 31(gl_TexCoord) 57 57: 24(ptr) AccessChain 30(gl_TexCoord) 56
59: 8(fvec4) Load 58 58: 7(fvec4) Load 57
60: 21(int) Load 23(b) 59: 20(int) Load 22(b)
61: 25(ptr) AccessChain 31(gl_TexCoord) 60 60: 24(ptr) AccessChain 30(gl_TexCoord) 59
62: 8(fvec4) Load 61 61: 7(fvec4) Load 60
63: 8(fvec4) FAdd 59 62 62: 7(fvec4) FAdd 58 61
64: 8(fvec4) Load 10(texColor) 63: 7(fvec4) Load 9(texColor)
65: 8(fvec4) FAdd 63 64 64: 7(fvec4) FAdd 62 63
66: 21(int) Load 32(a) 65: 20(int) Load 31(a)
67: 25(ptr) AccessChain 20(userIn) 66 66: 24(ptr) AccessChain 19(userIn) 65
68: 8(fvec4) Load 67 67: 7(fvec4) Load 66
69: 8(fvec4) FAdd 65 68 68: 7(fvec4) FAdd 64 67
Store 56(gl_FragColor) 69 Store 55(gl_FragColor) 68
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 43 // Id's are bound by 42
Source GLSL 120 Source GLSL 120
Capability Shader Capability Shader
@ -14,67 +14,65 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 7 "foo(" Name 6 "foo("
Name 9 "foo2(" Name 8 "foo2("
Name 13 "bar" Name 12 "bar"
Name 23 "outColor" Name 22 "outColor"
Name 25 "bigColor" Name 24 "bigColor"
Name 36 "gl_FragColor" Name 35 "gl_FragColor"
Name 40 "BaseColor" Name 39 "BaseColor"
Name 42 "d" Name 41 "d"
Decorate 36(gl_FragColor) BuiltIn FragColor Decorate 35(gl_FragColor) BuiltIn FragColor
Decorate 40(BaseColor) Smooth Decorate 39(BaseColor) Smooth
Decorate 40(BaseColor) NoStaticUse Decorate 39(BaseColor) NoStaticUse
Decorate 42(d) NoStaticUse Decorate 41(d) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
11: TypeFloat 32 10: TypeFloat 32
12: TypePointer PrivateGlobal 11(float) 11: TypePointer PrivateGlobal 10(float)
13(bar): 12(ptr) Variable PrivateGlobal 12(bar): 11(ptr) Variable PrivateGlobal
14: 11(float) Constant 1073741824 13: 10(float) Constant 1073741824
16: 11(float) Constant 1065353216 15: 10(float) Constant 1065353216
21: TypeVector 11(float) 4 20: TypeVector 10(float) 4
22: TypePointer Function 21(fvec4) 21: TypePointer Function 20(fvec4)
24: TypePointer UniformConstant 21(fvec4) 23: TypePointer UniformConstant 20(fvec4)
25(bigColor): 24(ptr) Variable UniformConstant 24(bigColor): 23(ptr) Variable UniformConstant
35: TypePointer Output 21(fvec4) 34: TypePointer Output 20(fvec4)
36(gl_FragColor): 35(ptr) Variable Output 35(gl_FragColor): 34(ptr) Variable Output
39: TypePointer Input 21(fvec4) 38: TypePointer Input 20(fvec4)
40(BaseColor): 39(ptr) Variable Input 39(BaseColor): 38(ptr) Variable Input
41: TypePointer UniformConstant 11(float) 40: TypePointer UniformConstant 10(float)
42(d): 41(ptr) Variable UniformConstant 41(d): 40(ptr) Variable UniformConstant
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
23(outColor): 22(ptr) Variable Function 22(outColor): 21(ptr) Variable Function
Store 13(bar) 14 Store 12(bar) 13
26: 21(fvec4) Load 25(bigColor) 25: 20(fvec4) Load 24(bigColor)
Store 23(outColor) 26 Store 22(outColor) 25
27: 2 FunctionCall 7(foo() 26: 2 FunctionCall 6(foo()
28: 2 FunctionCall 9(foo2() 27: 2 FunctionCall 8(foo2()
29: 11(float) Load 13(bar) 28: 10(float) Load 12(bar)
30: 21(fvec4) Load 23(outColor) 29: 20(fvec4) Load 22(outColor)
31: 11(float) CompositeExtract 30 0 30: 10(float) CompositeExtract 29 0
32: 11(float) FAdd 31 29 31: 10(float) FAdd 30 28
33: 21(fvec4) Load 23(outColor) 32: 20(fvec4) Load 22(outColor)
34: 21(fvec4) CompositeInsert 32 33 0 33: 20(fvec4) CompositeInsert 31 32 0
Store 23(outColor) 34 Store 22(outColor) 33
37: 21(fvec4) Load 23(outColor) 36: 20(fvec4) Load 22(outColor)
Store 36(gl_FragColor) 37 Store 35(gl_FragColor) 36
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd
7(foo(): 2 Function None 3 6(foo(): 2 Function None 3
8: Label 7: Label
15: 11(float) Load 13(bar) 14: 10(float) Load 12(bar)
17: 11(float) FAdd 15 16 16: 10(float) FAdd 14 15
Store 13(bar) 17 Store 12(bar) 16
Return Return
FunctionEnd FunctionEnd
9(foo2(): 2 Function None 3 8(foo2(): 2 Function None 3
10: Label 9: Label
19: 11(float) Load 13(bar) 18: 10(float) Load 12(bar)
20: 11(float) FAdd 19 16 19: 10(float) FAdd 18 15
Store 13(bar) 20 Store 12(bar) 19
Return Return
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked vertex stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 43 // Id's are bound by 42
Source ESSL 300 Source ESSL 300
Capability Shader Capability Shader
@ -13,78 +13,76 @@ Linked vertex stage:
MemoryModel Logical GLSL450 MemoryModel Logical GLSL450
EntryPoint Vertex 4 "main" EntryPoint Vertex 4 "main"
Name 4 "main" Name 4 "main"
Name 9 "i" Name 8 "i"
Name 18 "A" Name 17 "A"
Name 26 "B" Name 25 "B"
Name 28 "C" Name 27 "C"
Name 38 "D" Name 37 "D"
Name 41 "gl_VertexID" Name 40 "gl_VertexID"
Name 42 "gl_InstanceID" Name 41 "gl_InstanceID"
Decorate 41(gl_VertexID) BuiltIn VertexId Decorate 40(gl_VertexID) BuiltIn VertexId
Decorate 41(gl_VertexID) NoStaticUse Decorate 40(gl_VertexID) NoStaticUse
Decorate 42(gl_InstanceID) BuiltIn InstanceId Decorate 41(gl_InstanceID) BuiltIn InstanceId
Decorate 42(gl_InstanceID) NoStaticUse Decorate 41(gl_InstanceID) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeInt 32 1 6: TypeInt 32 1
8: TypePointer Function 7(int) 7: TypePointer Function 6(int)
10: 7(int) Constant 0 9: 6(int) Constant 0
15: 7(int) Constant 10 14: 6(int) Constant 10
16: TypeBool 15: TypeBool
19: 7(int) Constant 1 18: 6(int) Constant 1
21: 7(int) Constant 2 20: 6(int) Constant 2
30: 7(int) Constant 5 29: 6(int) Constant 5
39: 7(int) Constant 3 38: 6(int) Constant 3
40: TypePointer Input 7(int) 39: TypePointer Input 6(int)
41(gl_VertexID): 40(ptr) Variable Input 40(gl_VertexID): 39(ptr) Variable Input
42(gl_InstanceID): 40(ptr) Variable Input 41(gl_InstanceID): 39(ptr) Variable Input
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
9(i): 8(ptr) Variable Function 8(i): 7(ptr) Variable Function
18(A): 8(ptr) Variable Function 17(A): 7(ptr) Variable Function
26(B): 8(ptr) Variable Function 25(B): 7(ptr) Variable Function
28(C): 8(ptr) Variable Function 27(C): 7(ptr) Variable Function
38(D): 8(ptr) Variable Function 37(D): 7(ptr) Variable Function
Store 9(i) 10 Store 8(i) 9
Branch 11 Branch 10
11: Label 10: Label
14: 7(int) Load 9(i) 13: 6(int) Load 8(i)
17: 16(bool) SLessThan 14 15 16: 15(bool) SLessThan 13 14
LoopMerge 12 None LoopMerge 11 None
BranchConditional 17 13 12 BranchConditional 16 12 11
13: Label 12: Label
Store 18(A) 19 Store 17(A) 18
20: 7(int) Load 9(i) 19: 6(int) Load 8(i)
22: 7(int) SMod 20 21 21: 6(int) SMod 19 20
23: 16(bool) IEqual 22 10 22: 15(bool) IEqual 21 9
SelectionMerge 25 None SelectionMerge 24 None
BranchConditional 23 24 25 BranchConditional 22 23 24
24: Label 23: Label
Store 26(B) 21 Store 25(B) 20
Branch 10
26: Label
Store 27(C) 20
Branch 24
24: Label
28: 6(int) Load 8(i)
30: 6(int) SMod 28 29
31: 15(bool) IEqual 30 9
SelectionMerge 33 None
BranchConditional 31 32 33
32: Label
Store 25(B) 20
Branch 11 Branch 11
27: Label 34: Label
Store 28(C) 21 Store 27(C) 20
Branch 25 Branch 33
25: Label 33: Label
29: 7(int) Load 9(i) 35: 6(int) Load 8(i)
31: 7(int) SMod 29 30 36: 6(int) IAdd 35 18
32: 16(bool) IEqual 31 10 Store 8(i) 36
SelectionMerge 34 None Branch 10
BranchConditional 32 33 34 11: Label
33: Label Store 37(D) 38
Store 26(B) 21
Branch 12
35: Label
Store 28(C) 21
Branch 34
34: Label
36: 7(int) Load 9(i)
37: 7(int) IAdd 36 19
Store 9(i) 37
Branch 11
12: Label
Store 38(D) 39
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked vertex stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 24 // Id's are bound by 23
Source ESSL 300 Source ESSL 300
Capability Shader Capability Shader
@ -13,41 +13,39 @@ Linked vertex stage:
MemoryModel Logical GLSL450 MemoryModel Logical GLSL450
EntryPoint Vertex 4 "main" EntryPoint Vertex 4 "main"
Name 4 "main" Name 4 "main"
Name 9 "i" Name 8 "i"
Name 22 "gl_VertexID" Name 21 "gl_VertexID"
Name 23 "gl_InstanceID" Name 22 "gl_InstanceID"
Decorate 22(gl_VertexID) BuiltIn VertexId Decorate 21(gl_VertexID) BuiltIn VertexId
Decorate 22(gl_VertexID) NoStaticUse Decorate 21(gl_VertexID) NoStaticUse
Decorate 23(gl_InstanceID) BuiltIn InstanceId Decorate 22(gl_InstanceID) BuiltIn InstanceId
Decorate 23(gl_InstanceID) NoStaticUse Decorate 22(gl_InstanceID) NoStaticUse
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeInt 32 1 6: TypeInt 32 1
8: TypePointer Function 7(int) 7: TypePointer Function 6(int)
10: 7(int) Constant 0 9: 6(int) Constant 0
15: 7(int) Constant 10 14: 6(int) Constant 10
16: TypeBool 15: TypeBool
19: 7(int) Constant 1 18: 6(int) Constant 1
21: TypePointer Input 7(int) 20: TypePointer Input 6(int)
22(gl_VertexID): 21(ptr) Variable Input 21(gl_VertexID): 20(ptr) Variable Input
23(gl_InstanceID): 21(ptr) Variable Input 22(gl_InstanceID): 20(ptr) Variable Input
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
9(i): 8(ptr) Variable Function 8(i): 7(ptr) Variable Function
Store 9(i) 10 Store 8(i) 9
Branch 11 Branch 10
10: Label
13: 6(int) Load 8(i)
16: 15(bool) SLessThan 13 14
LoopMerge 11 None
BranchConditional 16 12 11
12: Label
17: 6(int) Load 8(i)
19: 6(int) IAdd 17 18
Store 8(i) 19
Branch 10
11: Label 11: Label
14: 7(int) Load 9(i)
17: 16(bool) SLessThan 14 15
LoopMerge 12 None
BranchConditional 17 13 12
13: Label
18: 7(int) Load 9(i)
20: 7(int) IAdd 18 19
Store 9(i) 20
Branch 11
12: Label
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

View File

@ -5,7 +5,7 @@ Linked fragment stage:
// Module Version 99 // Module Version 99
// Generated by (magic number): 51a00bb // Generated by (magic number): 51a00bb
// Id's are bound by 32 // Id's are bound by 31
Source GLSL 110 Source GLSL 110
Capability Shader Capability Shader
@ -14,50 +14,48 @@ Linked fragment stage:
EntryPoint Fragment 4 "main" EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft ExecutionMode 4 OriginLowerLeft
Name 4 "main" Name 4 "main"
Name 10 "color" Name 9 "color"
Name 12 "BaseColor" Name 11 "BaseColor"
Name 20 "d" Name 19 "d"
Name 25 "bigColor" Name 24 "bigColor"
Name 30 "gl_FragColor" Name 29 "gl_FragColor"
Decorate 12(BaseColor) Smooth Decorate 11(BaseColor) Smooth
Decorate 30(gl_FragColor) BuiltIn FragColor Decorate 29(gl_FragColor) BuiltIn FragColor
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
7: TypeFloat 32 6: TypeFloat 32
8: TypeVector 7(float) 4 7: TypeVector 6(float) 4
9: TypePointer Function 8(fvec4) 8: TypePointer Function 7(fvec4)
11: TypePointer Input 8(fvec4) 10: TypePointer Input 7(fvec4)
12(BaseColor): 11(ptr) Variable Input 11(BaseColor): 10(ptr) Variable Input
19: TypePointer UniformConstant 7(float) 18: TypePointer UniformConstant 6(float)
20(d): 19(ptr) Variable UniformConstant 19(d): 18(ptr) Variable UniformConstant
22: TypeBool 21: TypeBool
24: TypePointer UniformConstant 8(fvec4) 23: TypePointer UniformConstant 7(fvec4)
25(bigColor): 24(ptr) Variable UniformConstant 24(bigColor): 23(ptr) Variable UniformConstant
29: TypePointer Output 8(fvec4) 28: TypePointer Output 7(fvec4)
30(gl_FragColor): 29(ptr) Variable Output 29(gl_FragColor): 28(ptr) Variable Output
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
10(color): 9(ptr) Variable Function 9(color): 8(ptr) Variable Function
13: 8(fvec4) Load 12(BaseColor) 12: 7(fvec4) Load 11(BaseColor)
Store 10(color) 13 Store 9(color) 12
Branch 14 Branch 13
13: Label
16: 7(fvec4) Load 9(color)
17: 6(float) CompositeExtract 16 0
20: 6(float) Load 19(d)
22: 21(bool) FOrdLessThan 17 20
LoopMerge 14 None
BranchConditional 22 15 14
15: Label
25: 7(fvec4) Load 24(bigColor)
26: 7(fvec4) Load 9(color)
27: 7(fvec4) FAdd 26 25
Store 9(color) 27
Branch 13
14: Label 14: Label
17: 8(fvec4) Load 10(color) 30: 7(fvec4) Load 9(color)
18: 7(float) CompositeExtract 17 0 Store 29(gl_FragColor) 30
21: 7(float) Load 20(d)
23: 22(bool) FOrdLessThan 18 21
LoopMerge 15 None
BranchConditional 23 16 15
16: Label
26: 8(fvec4) Load 25(bigColor)
27: 8(fvec4) Load 10(color)
28: 8(fvec4) FAdd 27 26
Store 10(color) 28
Branch 14
15: Label
31: 8(fvec4) Load 10(color)
Store 30(gl_FragColor) 31
Branch 6
6: Label
Return Return
FunctionEnd FunctionEnd

64
Test/spv.queryL.frag Normal file
View File

@ -0,0 +1,64 @@
#version 430 core
uniform sampler1D samp1D;
uniform isampler2D isamp2D;
uniform usampler2D usamp2D;
uniform isampler3D isamp3D;
uniform usampler3D usamp3D;
uniform samplerCube sampCube;
uniform isamplerCube isampCube;
uniform isampler1DArray isamp1DA;
uniform sampler2DArray samp2DA;
uniform usampler2DArray usamp2DA;
uniform isamplerCubeArray isampCubeA;
uniform usamplerCubeArray usampCubeA;
uniform sampler1DShadow samp1Ds;
uniform sampler2DShadow samp2Ds;
uniform samplerCubeShadow sampCubes;
uniform sampler1DArrayShadow samp1DAs;
uniform sampler2DArrayShadow samp2DAs;
uniform samplerCubeArrayShadow sampCubeAs;
uniform samplerBuffer sampBuf;
uniform sampler2DRect sampRect;
void main()
{
vec2 lod;
float pf;
vec2 pf2;
vec3 pf3;
lod = textureQueryLod(samp1D, pf);
lod += textureQueryLod(isamp2D, pf2);
lod += textureQueryLod(usamp3D, pf3);
lod += textureQueryLod(sampCube, pf3);
lod += textureQueryLod(isamp1DA, pf);
lod += textureQueryLod(usamp2DA, pf2);
lod += textureQueryLod(isampCubeA, pf3);
lod += textureQueryLod(samp1Ds, pf);
lod += textureQueryLod(samp2Ds, pf2);
lod += textureQueryLod(sampCubes, pf3);
lod += textureQueryLod(samp1DAs, pf);
lod += textureQueryLod(samp2DAs, pf2);
lod += textureQueryLod(sampCubeAs, pf3);
int levels;
levels = textureQueryLevels(samp1D);
levels += textureQueryLevels(usamp2D);
levels += textureQueryLevels(isamp3D);
levels += textureQueryLevels(isampCube);
levels += textureQueryLevels(isamp1DA);
levels += textureQueryLevels(samp2DA);
levels += textureQueryLevels(usampCubeA);
levels = textureQueryLevels(samp1Ds);
levels += textureQueryLevels(samp2Ds);
levels += textureQueryLevels(sampCubes);
levels += textureQueryLevels(samp1DAs);
levels += textureQueryLevels(samp2DAs);
levels += textureQueryLevels(sampCubeAs);
}

View File

@ -80,3 +80,4 @@ spv.voidFunction.frag
spv.whileLoop.frag spv.whileLoop.frag
spv.atomic.comp spv.atomic.comp
spv.AofA.frag spv.AofA.frag
spv.queryL.frag

View File

@ -8,27 +8,27 @@ Key:
Summary of main missing features: Summary of main missing features:
AEP AEP
- GL_KHR_blend_equation_advanced + GL_KHR_blend_equation_advanced
- GL_OES_sample_variables + GL_OES_sample_variables
- GL_OES_shader_image_atomic + GL_OES_shader_image_atomic
- GL_OES_shader_multisample_interpolation + GL_OES_shader_multisample_interpolation
- GL_OES_texture_storage_multisample_2d_array + GL_OES_texture_storage_multisample_2d_array
+ GL_EXT_geometry_shader + GL_EXT_geometry_shader
+ GL_EXT_geometry_point_size + GL_EXT_geometry_point_size
+ GL_EXT_gpu_shader5 + GL_EXT_gpu_shader5
- GL_EXT_primitive_bounding_box + GL_EXT_primitive_bounding_box
+ GL_EXT_shader_io_blocks + GL_EXT_shader_io_blocks
+ GL_EXT_tessellation_shader + GL_EXT_tessellation_shader
+ GL_EXT_tessellation_point_size + GL_EXT_tessellation_point_size
- GL_EXT_texture_buffer + GL_EXT_texture_buffer
- GL_EXT_texture_cube_map_array + GL_EXT_texture_cube_map_array
Missing features in ES 3.1 Missing features in ES 3.1
[johnkslang] Arrays of arrays + Arrays of arrays
- .length() on run-time array + .length() on run-time array
Missing desktop features that are in EAP Missing desktop features that are in EAP
- per-sample shading + per-sample shading
- "precise" - "precise"
Missing desktop features, non AEP Missing desktop features, non AEP
@ -36,7 +36,7 @@ Missing desktop features, non AEP
- built-in functions for type 'double' - built-in functions for type 'double'
- second-generation function-overloading disambiguation algorithm (version 400) - second-generation function-overloading disambiguation algorithm (version 400)
- Preprocessor token pasting (##), ## does macro expansion after pasting not before - Preprocessor token pasting (##), ## does macro expansion after pasting not before
- textureQueryLevels and textureQueryLod + textureQueryLevels and textureQueryLod
Bugs Bugs
- implicitly-sized gl_ClipDistance[] (at least in tessellation shaders) with sizes greater than one are not getting sizes greater than one - implicitly-sized gl_ClipDistance[] (at least in tessellation shaders) with sizes greater than one are not getting sizes greater than one
@ -196,7 +196,7 @@ Shader Functionality to Implement/Finish
+ bitfieldExtract() and bitfieldInsert() + bitfieldExtract() and bitfieldInsert()
+ bitfieldReverse() + bitfieldReverse()
+ bitCount(), findLSB(), andfindMSB() + bitCount(), findLSB(), andfindMSB()
- New built-in to query LOD, textureQueryLod(). + New built-in to query LOD, textureQueryLod().
- New overloaded function matching algorithm, handling selection from many valid multiple choices. - New overloaded function matching algorithm, handling selection from many valid multiple choices.
+ Texture gather functions that return four texels with a single call. + Texture gather functions that return four texels with a single call.
+ textureGather() + textureGather()
@ -286,7 +286,7 @@ Shader Functionality to Implement/Finish
- For layout qualifiers, - For layout qualifiers,
+ make negative output locations a compile-time error, once integer expressions are allowed in layouts + make negative output locations a compile-time error, once integer expressions are allowed in layouts
- make indexes outside the range [0,1] a compile-time error. - make indexes outside the range [0,1] a compile-time error.
- Add textureQueryLevels() built-ins to query the number of mipmap levels, as per the + Add textureQueryLevels() built-ins to query the number of mipmap levels, as per the
GL_ARB_texture_query_levels extension. GL_ARB_texture_query_levels extension.
+ Make gl_Layer and gl_ViewportIndex also be inputs to the fragment shader, as per the + Make gl_Layer and gl_ViewportIndex also be inputs to the fragment shader, as per the
GL_ARB_fragment_layer_viewport extension. GL_ARB_fragment_layer_viewport extension.

View File

@ -513,8 +513,8 @@ public:
int layoutOffset; int layoutOffset;
int layoutAlign; int layoutAlign;
unsigned int layoutLocation : 7; unsigned int layoutLocation :12;
static const unsigned int layoutLocationEnd = 0x3F; static const unsigned int layoutLocationEnd = 0xFFF;
unsigned int layoutComponent : 3; unsigned int layoutComponent : 3;
static const unsigned int layoutComponentEnd = 4; static const unsigned int layoutComponentEnd = 4;
@ -574,7 +574,7 @@ public:
} }
bool hasLocation() const bool hasLocation() const
{ {
return layoutLocation != layoutLocationEnd; return layoutLocation != layoutLocationEnd;
} }
bool hasComponent() const bool hasComponent() const
{ {

View File

@ -2,5 +2,5 @@
// For the version, it uses the latest git tag followed by the number of commits. // For the version, it uses the latest git tag followed by the number of commits.
// For the date, it uses the current date (when then script is run). // For the date, it uses the current date (when then script is run).
#define GLSLANG_REVISION "3.0.750" #define GLSLANG_REVISION "3.0.756"
#define GLSLANG_DATE "13-Sep-2015" #define GLSLANG_DATE "15-Sep-2015"

View File

@ -1848,7 +1848,8 @@ void TBuiltIns::initialize(int version, EProfile profile)
if (version >= 130) if (version >= 130)
add2ndGenerationSamplingImaging(version, profile); add2ndGenerationSamplingImaging(version, profile);
// printf("%s\n", commonBuiltins.c_str()); //printf("%s\n", commonBuiltins.c_str());
//printf("%s\n", stageBuiltins[EShLangFragment].c_str());
} }
// //
@ -1946,21 +1947,21 @@ void TBuiltIns::add2ndGenerationSamplingImaging(int version, EProfile profile)
// //
void TBuiltIns::addQueryFunctions(TSampler sampler, TString& typeName, int version, EProfile profile) void TBuiltIns::addQueryFunctions(TSampler sampler, TString& typeName, int version, EProfile profile)
{ {
//
// textureSize
//
if (sampler.image && ((profile == EEsProfile && version < 310) || (profile != EEsProfile && version < 430))) if (sampler.image && ((profile == EEsProfile && version < 310) || (profile != EEsProfile && version < 430)))
return; return;
//
// textureSize() and imageSize()
//
int sizeDims = dimMap[sampler.dim] + (sampler.arrayed ? 1 : 0) - (sampler.dim == EsdCube ? 1 : 0);
if (profile == EEsProfile) if (profile == EEsProfile)
commonBuiltins.append("highp "); commonBuiltins.append("highp ");
int dims = dimMap[sampler.dim] + (sampler.arrayed ? 1 : 0) - (sampler.dim == EsdCube ? 1 : 0); if (sizeDims == 1)
if (dims == 1)
commonBuiltins.append("int"); commonBuiltins.append("int");
else { else {
commonBuiltins.append("ivec"); commonBuiltins.append("ivec");
commonBuiltins.append(postfixes[dims]); commonBuiltins.append(postfixes[sizeDims]);
} }
if (sampler.image) if (sampler.image)
commonBuiltins.append(" imageSize(readonly writeonly volatile coherent "); commonBuiltins.append(" imageSize(readonly writeonly volatile coherent ");
@ -1972,6 +1973,10 @@ void TBuiltIns::addQueryFunctions(TSampler sampler, TString& typeName, int versi
else else
commonBuiltins.append(");\n"); commonBuiltins.append(");\n");
//
// textureSamples() and imageSamples()
//
// GL_ARB_shader_texture_image_samples // GL_ARB_shader_texture_image_samples
// TODO: spec issue? there are no memory qualifiers; how to query a writeonly/readonly image, etc? // TODO: spec issue? there are no memory qualifiers; how to query a writeonly/readonly image, etc?
if (profile != EEsProfile && version >= 430 && sampler.ms) { if (profile != EEsProfile && version >= 430 && sampler.ms) {
@ -1983,6 +1988,32 @@ void TBuiltIns::addQueryFunctions(TSampler sampler, TString& typeName, int versi
commonBuiltins.append(typeName); commonBuiltins.append(typeName);
commonBuiltins.append(");\n"); commonBuiltins.append(");\n");
} }
//
// textureQueryLod(), fragment stage only
//
if (profile != EEsProfile && version >= 400 && ! sampler.image && sampler.dim != EsdRect && ! sampler.ms && sampler.dim != EsdBuffer) {
stageBuiltins[EShLangFragment].append("vec2 textureQueryLod(");
stageBuiltins[EShLangFragment].append(typeName);
if (dimMap[sampler.dim] == 1)
stageBuiltins[EShLangFragment].append(", float");
else {
stageBuiltins[EShLangFragment].append(", vec");
stageBuiltins[EShLangFragment].append(postfixes[dimMap[sampler.dim]]);
}
stageBuiltins[EShLangFragment].append(");\n");
}
//
// textureQueryLevels()
//
if (profile != EEsProfile && version >= 430 && ! sampler.image && sampler.dim != EsdRect && ! sampler.ms && sampler.dim != EsdBuffer) {
commonBuiltins.append("int textureQueryLevels(");
commonBuiltins.append(typeName);
commonBuiltins.append(");\n");
}
} }
// //