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) {
spv::Block* lastMainBlock = shaderEntry->getLastBlock();
builder.setBuildPoint(lastMainBlock);
builder.leaveFunction(true);
builder.leaveFunction();
}
}
@ -854,7 +854,7 @@ bool TGlslangToSpvTraverser::visitAggregate(glslang::TVisit visit, glslang::TInt
} else {
if (inMain)
mainTerminated = true;
builder.leaveFunction(inMain);
builder.leaveFunction();
inMain = false;
}
@ -1276,12 +1276,10 @@ bool TGlslangToSpvTraverser::visitBranch(glslang::TVisit /* visit */, glslang::T
builder.createLoopContinue();
break;
case glslang::EOpReturn:
if (inMain)
builder.makeMainReturn();
else if (node->getExpression())
if (node->getExpression())
builder.makeReturn(false, builder.accessChainLoad(convertGlslangToSpvType(node->getExpression()->getType())));
else
builder.makeReturn();
builder.makeReturn(false);
builder.clearAccessChain();
break;
@ -2528,14 +2526,21 @@ spv::Id TGlslangToSpvTraverser::createAtomicOperation(glslang::TOperator op, spv
// Sort out the operands
// - mapping from glslang -> SPV
// - 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
auto opIt = operands.begin(); // walk the glslang operands
spvAtomicOperands.push_back(*(opIt++));
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?
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.
// For some ops, there are none, for some 1, for compare-exchange, 2.
// Add the rest of the operands, skipping any that were dealt with above.
for (; opIt != operands.end(); ++opIt)
spvAtomicOperands.push_back(*opIt);

View File

@ -65,8 +65,7 @@ Builder::Builder(unsigned int userNumber) :
builderNumber(userNumber << 16 | SpvBuilderMagic),
buildPoint(0),
uniqueId(0),
mainFunction(0),
stageExit(0)
mainFunction(0)
{
clearAccessChain();
}
@ -723,19 +722,10 @@ Function* Builder::makeMain()
std::vector<Id> params;
mainFunction = makeFunctionEntry(makeVoidType(), "main", params, &entry);
stageExit = new Block(getUniqueId(), *mainFunction);
return mainFunction;
}
// Comments in header
void Builder::closeMain()
{
setBuildPoint(stageExit);
stageExit->addInstruction(new Instruction(NoResult, NoType, OpReturn));
mainFunction->addBlock(stageExit);
}
// Comments in header
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
void Builder::makeReturn(bool implicit, Id retVal, bool isMain)
void Builder::makeReturn(bool implicit, Id retVal)
{
if (isMain && retVal)
MissingFunctionality("return value from main()");
if (isMain)
createBranch(stageExit);
else if (retVal) {
if (retVal) {
Instruction* inst = new Instruction(NoResult, NoType, OpReturnValue);
inst->addIdOperand(retVal);
buildPoint->addInstruction(inst);
@ -775,7 +760,7 @@ void Builder::makeReturn(bool implicit, Id retVal, bool isMain)
}
// Comments in header
void Builder::leaveFunction(bool main)
void Builder::leaveFunction()
{
Block* block = buildPoint;
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
// explicit return, just remove it.
function.popBlock(block);
} else if (main)
makeMainReturn(true);
else {
// We're get a return instruction at the end of the current block,
} else {
// We'll add a return instruction at the end of the current block,
// 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
// followed by an unreachable block, which was handled above.
@ -805,9 +788,6 @@ void Builder::leaveFunction(bool main)
}
}
}
if (main)
closeMain();
}
// 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);
for (int op = 0; op < optArgNum; ++op)
textureInst->addIdOperand(texArgs[op]);
@ -1244,7 +1241,14 @@ Id Builder::createTextureCall(Decoration precision, Id resultType, bool fetch, b
setPrecision(textureInst->getResultId(), precision);
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

View File

@ -195,23 +195,16 @@ public:
// Make the main function.
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.
// Return the function, pass back the entry.
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
// value (if applicable). In the case of an implicit return, no post-return
// block is inserted.
void makeReturn(bool implicit = false, Id retVal = 0, bool isMain = false);
// Create a return. An 'implicit' return is one not appearing in the source
// code. In the case of an implicit return, no post-return block is inserted.
void makeReturn(bool implicit, Id retVal = 0);
// Generate all the code needed to finish up a function.
void leaveFunction(bool main);
void leaveFunction();
// Create a discard.
void makeDiscard();
@ -516,7 +509,6 @@ protected:
Block* buildPoint;
Id uniqueId;
Function* mainFunction;
Block* stageExit;
AccessChain accessChain;
// 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) out; // ERROR, need a variable
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
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;
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 {
layout(offset = 16) int foo; // ERROR
} 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(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:127: 'location/component/index' : cannot declare a default, use a full declaration
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
@ -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 'outVar' (layout(location=0 index=0 ) out 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:? 'inVar' (smooth in 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:? '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:? '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:? '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:? 'indexBlockI' (layout(location=26 index=0 ) out block{out int a})
0:? 'samp1D' (uniform sampler1D)
0:? 'samp2Ds' (uniform sampler2DShadow)
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 'outVar' (layout(location=0 index=0 ) out 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:? 'inVar' (smooth in 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:? '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:? '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:? '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:? '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: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: 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
@ -402,6 +406,76 @@ ERROR: node is still EOpNull!
0:140 'outp' (out 4-component vector of float)
0:140 Constant:
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:? 'c2D' (smooth in 2-component vector of float)
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:? 's1' (smooth in 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:
@ -806,6 +895,76 @@ ERROR: node is still EOpNull!
0:140 'outp' (out 4-component vector of float)
0:140 Constant:
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:? 'c2D' (smooth in 2-component vector of float)
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:? 's1' (smooth in 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: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: 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
@ -165,6 +169,11 @@ ERROR: node is still EOpNull!
0:100 'i2' (temp 2-component vector of int)
0:100 findMSB (global 2-component vector of int)
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:? '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})
@ -182,6 +191,8 @@ ERROR: node is still EOpNull!
0:? 'inbls' (in 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:? 'samp1D' (uniform sampler1D)
0:? 'samp2Ds' (uniform sampler2DShadow)
Linked geometry stage:
@ -331,6 +342,11 @@ ERROR: node is still EOpNull!
0:100 'i2' (temp 2-component vector of int)
0:100 findMSB (global 2-component vector of int)
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:? '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})
@ -348,4 +364,6 @@ ERROR: node is still EOpNull!
0:? 'inbls' (in 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:? '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: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: 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
@ -239,6 +243,11 @@ ERROR: node is still EOpNull!
0:135 'qualim2' (layout(r32i ) coherent volatile readonly uniform iimage2D)
0:136 Function Call: passr(iI21; (global void)
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:? 'v2' (smooth out 2-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:? 'i6bad' (layout(r8ui ) uniform iimage2D)
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_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:136 Function Call: passr(iI21; (global void)
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:? 'v2' (smooth out 2-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:? 'i6bad' (layout(r8ui ) uniform iimage2D)
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_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: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: 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
@ -139,6 +143,63 @@ ERROR: node is still EOpNull!
0:181 's' (temp int)
0:181 imageQuerySamples (global int)
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:? 'v4' (layout(location=3 ) temp 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:? 'ii2dms' (layout(rgba32i ) uniform iimage2DMS)
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_InstanceID' (gl_InstanceId int InstanceId)
@ -271,6 +347,63 @@ ERROR: node is still EOpNull!
0:181 's' (temp int)
0:181 imageQuerySamples (global int)
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:? 'v4' (layout(location=3 ) temp 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:? 'ii2dms' (layout(rgba32i ) uniform iimage2DMS)
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_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:? '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:? '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:? 'be' (layout(location=50 component=3 ) smooth out int)
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:? '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:? '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:? 'be' (layout(location=50 component=3 ) smooth out int)
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
// Generated by (magic number): 51a00bb
// Id's are bound by 48
// Id's are bound by 47
Source ESSL 100
Capability Shader
@ -14,75 +14,73 @@ Linked fragment stage:
EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft
Name 4 "main"
Name 9 "foo("
Name 12 "face1"
Name 14 "face2"
Name 18 "z"
Name 22 "low"
Name 27 "high"
Name 37 "gl_FragColor"
Decorate 12(face1) RelaxedPrecision
Decorate 14(face2) RelaxedPrecision
Decorate 18(z) RelaxedPrecision
Decorate 22(low) RelaxedPrecision
Decorate 27(high) RelaxedPrecision
Decorate 37(gl_FragColor) RelaxedPrecision
Decorate 37(gl_FragColor) BuiltIn FragColor
Name 8 "foo("
Name 11 "face1"
Name 13 "face2"
Name 17 "z"
Name 21 "low"
Name 26 "high"
Name 36 "gl_FragColor"
Decorate 11(face1) RelaxedPrecision
Decorate 13(face2) RelaxedPrecision
Decorate 17(z) RelaxedPrecision
Decorate 21(low) RelaxedPrecision
Decorate 26(high) RelaxedPrecision
Decorate 36(gl_FragColor) RelaxedPrecision
Decorate 36(gl_FragColor) BuiltIn FragColor
2: TypeVoid
3: TypeFunction 2
7: TypeFloat 32
8: TypeFunction 7(float)
11: TypePointer PrivateGlobal 7(float)
12(face1): 11(ptr) Variable PrivateGlobal
13: 7(float) Constant 1093664768
14(face2): 11(ptr) Variable PrivateGlobal
15: 7(float) Constant 3221225472
16: TypeInt 32 1
17: TypePointer Function 16(int)
19: 16(int) Constant 3
20: 16(int) Constant 2
21: TypePointer UniformConstant 16(int)
22(low): 21(ptr) Variable UniformConstant
25: 16(int) Constant 1
27(high): 21(ptr) Variable UniformConstant
29: TypeBool
35: TypeVector 7(float) 4
36: TypePointer Output 35(fvec4)
37(gl_FragColor): 36(ptr) Variable Output
6: TypeFloat 32
7: TypeFunction 6(float)
10: TypePointer PrivateGlobal 6(float)
11(face1): 10(ptr) Variable PrivateGlobal
12: 6(float) Constant 1093664768
13(face2): 10(ptr) Variable PrivateGlobal
14: 6(float) Constant 3221225472
15: TypeInt 32 1
16: TypePointer Function 15(int)
18: 15(int) Constant 3
19: 15(int) Constant 2
20: TypePointer UniformConstant 15(int)
21(low): 20(ptr) Variable UniformConstant
24: 15(int) Constant 1
26(high): 20(ptr) Variable UniformConstant
28: TypeBool
34: TypeVector 6(float) 4
35: TypePointer Output 34(fvec4)
36(gl_FragColor): 35(ptr) Variable Output
4(main): 2 Function None 3
5: Label
18(z): 17(ptr) Variable Function
Store 12(face1) 13
Store 14(face2) 15
Store 18(z) 19
23: 16(int) Load 22(low)
24: 16(int) IMul 20 23
26: 16(int) IAdd 24 25
28: 16(int) Load 27(high)
30: 29(bool) SLessThan 26 28
SelectionMerge 32 None
BranchConditional 30 31 32
31: Label
33: 16(int) Load 18(z)
34: 16(int) IAdd 33 25
Store 18(z) 34
Branch 32
32: Label
38: 7(float) Load 12(face1)
39: 16(int) Load 18(z)
40: 7(float) ConvertSToF 39
41: 35(fvec4) CompositeConstruct 40 40 40 40
42: 35(fvec4) VectorTimesScalar 41 38
43: 7(float) FunctionCall 9(foo()
44: 35(fvec4) CompositeConstruct 43 43 43 43
45: 35(fvec4) FAdd 42 44
Store 37(gl_FragColor) 45
Branch 6
6: Label
17(z): 16(ptr) Variable Function
Store 11(face1) 12
Store 13(face2) 14
Store 17(z) 18
22: 15(int) Load 21(low)
23: 15(int) IMul 19 22
25: 15(int) IAdd 23 24
27: 15(int) Load 26(high)
29: 28(bool) SLessThan 25 27
SelectionMerge 31 None
BranchConditional 29 30 31
30: Label
32: 15(int) Load 17(z)
33: 15(int) IAdd 32 24
Store 17(z) 33
Branch 31
31: Label
37: 6(float) Load 11(face1)
38: 15(int) Load 17(z)
39: 6(float) ConvertSToF 38
40: 34(fvec4) CompositeConstruct 39 39 39 39
41: 34(fvec4) VectorTimesScalar 40 37
42: 6(float) FunctionCall 8(foo()
43: 34(fvec4) CompositeConstruct 42 42 42 42
44: 34(fvec4) FAdd 41 43
Store 36(gl_FragColor) 44
Return
FunctionEnd
9(foo(): 7(float) Function None 8
10: Label
46: 7(float) Load 14(face2)
ReturnValue 46
8(foo(): 6(float) Function None 7
9: Label
45: 6(float) Load 13(face2)
ReturnValue 45
FunctionEnd

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

File diff suppressed because it is too large Load Diff

View File

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

View File

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

View File

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

View File

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

File diff suppressed because it is too large Load Diff

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

File diff suppressed because it is too large Load Diff

View File

@ -7,7 +7,7 @@ Linked fragment stage:
// Module Version 99
// Generated by (magic number): 51a00bb
// Id's are bound by 196
// Id's are bound by 195
Source GLSL 130
Capability Shader
@ -16,344 +16,342 @@ Linked fragment stage:
EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft
Name 4 "main"
Name 10 "color"
Name 12 "BaseColor"
Name 25 "d4"
Name 30 "bigColor4"
Name 84 "d13"
Name 149 "gl_FragColor"
Name 151 "bigColor"
Name 152 "bigColor1_1"
Name 153 "bigColor1_2"
Name 154 "bigColor1_3"
Name 155 "bigColor2"
Name 156 "bigColor3"
Name 157 "bigColor5"
Name 158 "bigColor6"
Name 159 "bigColor7"
Name 160 "bigColor8"
Name 161 "d"
Name 162 "d2"
Name 163 "d3"
Name 164 "d5"
Name 165 "d6"
Name 166 "d7"
Name 167 "d8"
Name 168 "d9"
Name 169 "d10"
Name 170 "d11"
Name 171 "d12"
Name 172 "d14"
Name 173 "d15"
Name 174 "d16"
Name 175 "d17"
Name 176 "d18"
Name 177 "d19"
Name 178 "d20"
Name 179 "d21"
Name 180 "d22"
Name 181 "d23"
Name 182 "d24"
Name 183 "d25"
Name 184 "d26"
Name 185 "d27"
Name 186 "d28"
Name 187 "d29"
Name 188 "d30"
Name 189 "d31"
Name 190 "d32"
Name 191 "d33"
Name 192 "d34"
Name 195 "Count"
Decorate 12(BaseColor) Smooth
Decorate 149(gl_FragColor) BuiltIn FragColor
Decorate 151(bigColor) NoStaticUse
Decorate 152(bigColor1_1) NoStaticUse
Decorate 153(bigColor1_2) NoStaticUse
Decorate 154(bigColor1_3) NoStaticUse
Decorate 155(bigColor2) NoStaticUse
Decorate 156(bigColor3) NoStaticUse
Decorate 157(bigColor5) NoStaticUse
Decorate 158(bigColor6) NoStaticUse
Decorate 159(bigColor7) NoStaticUse
Decorate 160(bigColor8) NoStaticUse
Decorate 161(d) NoStaticUse
Decorate 162(d2) NoStaticUse
Decorate 163(d3) NoStaticUse
Decorate 164(d5) NoStaticUse
Decorate 165(d6) NoStaticUse
Decorate 166(d7) NoStaticUse
Decorate 167(d8) NoStaticUse
Decorate 168(d9) NoStaticUse
Decorate 169(d10) NoStaticUse
Decorate 170(d11) NoStaticUse
Decorate 171(d12) NoStaticUse
Decorate 172(d14) NoStaticUse
Decorate 173(d15) NoStaticUse
Decorate 174(d16) NoStaticUse
Decorate 175(d17) NoStaticUse
Decorate 176(d18) NoStaticUse
Decorate 177(d19) NoStaticUse
Decorate 178(d20) NoStaticUse
Decorate 179(d21) NoStaticUse
Decorate 180(d22) NoStaticUse
Decorate 181(d23) NoStaticUse
Decorate 182(d24) NoStaticUse
Decorate 183(d25) NoStaticUse
Decorate 184(d26) NoStaticUse
Decorate 185(d27) NoStaticUse
Decorate 186(d28) NoStaticUse
Decorate 187(d29) NoStaticUse
Decorate 188(d30) NoStaticUse
Decorate 189(d31) NoStaticUse
Decorate 190(d32) NoStaticUse
Decorate 191(d33) NoStaticUse
Decorate 192(d34) NoStaticUse
Decorate 195(Count) NoStaticUse
Name 9 "color"
Name 11 "BaseColor"
Name 24 "d4"
Name 29 "bigColor4"
Name 83 "d13"
Name 148 "gl_FragColor"
Name 150 "bigColor"
Name 151 "bigColor1_1"
Name 152 "bigColor1_2"
Name 153 "bigColor1_3"
Name 154 "bigColor2"
Name 155 "bigColor3"
Name 156 "bigColor5"
Name 157 "bigColor6"
Name 158 "bigColor7"
Name 159 "bigColor8"
Name 160 "d"
Name 161 "d2"
Name 162 "d3"
Name 163 "d5"
Name 164 "d6"
Name 165 "d7"
Name 166 "d8"
Name 167 "d9"
Name 168 "d10"
Name 169 "d11"
Name 170 "d12"
Name 171 "d14"
Name 172 "d15"
Name 173 "d16"
Name 174 "d17"
Name 175 "d18"
Name 176 "d19"
Name 177 "d20"
Name 178 "d21"
Name 179 "d22"
Name 180 "d23"
Name 181 "d24"
Name 182 "d25"
Name 183 "d26"
Name 184 "d27"
Name 185 "d28"
Name 186 "d29"
Name 187 "d30"
Name 188 "d31"
Name 189 "d32"
Name 190 "d33"
Name 191 "d34"
Name 194 "Count"
Decorate 11(BaseColor) Smooth
Decorate 148(gl_FragColor) BuiltIn FragColor
Decorate 150(bigColor) NoStaticUse
Decorate 151(bigColor1_1) NoStaticUse
Decorate 152(bigColor1_2) NoStaticUse
Decorate 153(bigColor1_3) NoStaticUse
Decorate 154(bigColor2) NoStaticUse
Decorate 155(bigColor3) NoStaticUse
Decorate 156(bigColor5) NoStaticUse
Decorate 157(bigColor6) NoStaticUse
Decorate 158(bigColor7) NoStaticUse
Decorate 159(bigColor8) NoStaticUse
Decorate 160(d) NoStaticUse
Decorate 161(d2) NoStaticUse
Decorate 162(d3) NoStaticUse
Decorate 163(d5) NoStaticUse
Decorate 164(d6) NoStaticUse
Decorate 165(d7) NoStaticUse
Decorate 166(d8) NoStaticUse
Decorate 167(d9) NoStaticUse
Decorate 168(d10) NoStaticUse
Decorate 169(d11) NoStaticUse
Decorate 170(d12) NoStaticUse
Decorate 171(d14) NoStaticUse
Decorate 172(d15) NoStaticUse
Decorate 173(d16) NoStaticUse
Decorate 174(d17) NoStaticUse
Decorate 175(d18) NoStaticUse
Decorate 176(d19) NoStaticUse
Decorate 177(d20) NoStaticUse
Decorate 178(d21) NoStaticUse
Decorate 179(d22) NoStaticUse
Decorate 180(d23) NoStaticUse
Decorate 181(d24) NoStaticUse
Decorate 182(d25) NoStaticUse
Decorate 183(d26) NoStaticUse
Decorate 184(d27) NoStaticUse
Decorate 185(d28) NoStaticUse
Decorate 186(d29) NoStaticUse
Decorate 187(d30) NoStaticUse
Decorate 188(d31) NoStaticUse
Decorate 189(d32) NoStaticUse
Decorate 190(d33) NoStaticUse
Decorate 191(d34) NoStaticUse
Decorate 194(Count) NoStaticUse
2: TypeVoid
3: TypeFunction 2
7: TypeFloat 32
8: TypeVector 7(float) 4
9: TypePointer Function 8(fvec4)
11: TypePointer Input 8(fvec4)
12(BaseColor): 11(ptr) Variable Input
18: TypeBool
19: 18(bool) ConstantTrue
24: TypePointer UniformConstant 7(float)
25(d4): 24(ptr) Variable UniformConstant
29: TypePointer UniformConstant 8(fvec4)
30(bigColor4): 29(ptr) Variable UniformConstant
40: 7(float) Constant 1073741824
54: 7(float) Constant 1065353216
58: 18(bool) ConstantFalse
84(d13): 24(ptr) Variable UniformConstant
148: TypePointer Output 8(fvec4)
149(gl_FragColor): 148(ptr) Variable Output
151(bigColor): 29(ptr) Variable UniformConstant
152(bigColor1_1): 29(ptr) Variable UniformConstant
153(bigColor1_2): 29(ptr) Variable UniformConstant
154(bigColor1_3): 29(ptr) Variable UniformConstant
155(bigColor2): 29(ptr) Variable UniformConstant
156(bigColor3): 29(ptr) Variable UniformConstant
157(bigColor5): 29(ptr) Variable UniformConstant
158(bigColor6): 29(ptr) Variable UniformConstant
159(bigColor7): 29(ptr) Variable UniformConstant
160(bigColor8): 29(ptr) Variable UniformConstant
161(d): 24(ptr) Variable UniformConstant
162(d2): 24(ptr) Variable UniformConstant
163(d3): 24(ptr) Variable UniformConstant
164(d5): 24(ptr) Variable UniformConstant
165(d6): 24(ptr) Variable UniformConstant
166(d7): 24(ptr) Variable UniformConstant
167(d8): 24(ptr) Variable UniformConstant
168(d9): 24(ptr) Variable UniformConstant
169(d10): 24(ptr) Variable UniformConstant
170(d11): 24(ptr) Variable UniformConstant
171(d12): 24(ptr) Variable UniformConstant
172(d14): 24(ptr) Variable UniformConstant
173(d15): 24(ptr) Variable UniformConstant
174(d16): 24(ptr) Variable UniformConstant
175(d17): 24(ptr) Variable UniformConstant
176(d18): 24(ptr) Variable UniformConstant
177(d19): 24(ptr) Variable UniformConstant
178(d20): 24(ptr) Variable UniformConstant
179(d21): 24(ptr) Variable UniformConstant
180(d22): 24(ptr) Variable UniformConstant
181(d23): 24(ptr) Variable UniformConstant
182(d24): 24(ptr) Variable UniformConstant
183(d25): 24(ptr) Variable UniformConstant
184(d26): 24(ptr) Variable UniformConstant
185(d27): 24(ptr) Variable UniformConstant
186(d28): 24(ptr) Variable UniformConstant
187(d29): 24(ptr) Variable UniformConstant
188(d30): 24(ptr) Variable UniformConstant
189(d31): 24(ptr) Variable UniformConstant
190(d32): 24(ptr) Variable UniformConstant
191(d33): 24(ptr) Variable UniformConstant
192(d34): 24(ptr) Variable UniformConstant
193: TypeInt 32 1
194: TypePointer UniformConstant 193(int)
195(Count): 194(ptr) Variable UniformConstant
6: TypeFloat 32
7: TypeVector 6(float) 4
8: TypePointer Function 7(fvec4)
10: TypePointer Input 7(fvec4)
11(BaseColor): 10(ptr) Variable Input
17: TypeBool
18: 17(bool) ConstantTrue
23: TypePointer UniformConstant 6(float)
24(d4): 23(ptr) Variable UniformConstant
28: TypePointer UniformConstant 7(fvec4)
29(bigColor4): 28(ptr) Variable UniformConstant
39: 6(float) Constant 1073741824
53: 6(float) Constant 1065353216
57: 17(bool) ConstantFalse
83(d13): 23(ptr) Variable UniformConstant
147: TypePointer Output 7(fvec4)
148(gl_FragColor): 147(ptr) Variable Output
150(bigColor): 28(ptr) Variable UniformConstant
151(bigColor1_1): 28(ptr) Variable UniformConstant
152(bigColor1_2): 28(ptr) Variable UniformConstant
153(bigColor1_3): 28(ptr) Variable UniformConstant
154(bigColor2): 28(ptr) Variable UniformConstant
155(bigColor3): 28(ptr) Variable UniformConstant
156(bigColor5): 28(ptr) Variable UniformConstant
157(bigColor6): 28(ptr) Variable UniformConstant
158(bigColor7): 28(ptr) Variable UniformConstant
159(bigColor8): 28(ptr) Variable UniformConstant
160(d): 23(ptr) Variable UniformConstant
161(d2): 23(ptr) Variable UniformConstant
162(d3): 23(ptr) Variable UniformConstant
163(d5): 23(ptr) Variable UniformConstant
164(d6): 23(ptr) Variable UniformConstant
165(d7): 23(ptr) Variable UniformConstant
166(d8): 23(ptr) Variable UniformConstant
167(d9): 23(ptr) Variable UniformConstant
168(d10): 23(ptr) Variable UniformConstant
169(d11): 23(ptr) Variable UniformConstant
170(d12): 23(ptr) Variable UniformConstant
171(d14): 23(ptr) Variable UniformConstant
172(d15): 23(ptr) Variable UniformConstant
173(d16): 23(ptr) Variable UniformConstant
174(d17): 23(ptr) Variable UniformConstant
175(d18): 23(ptr) Variable UniformConstant
176(d19): 23(ptr) Variable UniformConstant
177(d20): 23(ptr) Variable UniformConstant
178(d21): 23(ptr) Variable UniformConstant
179(d22): 23(ptr) Variable UniformConstant
180(d23): 23(ptr) Variable UniformConstant
181(d24): 23(ptr) Variable UniformConstant
182(d25): 23(ptr) Variable UniformConstant
183(d26): 23(ptr) Variable UniformConstant
184(d27): 23(ptr) Variable UniformConstant
185(d28): 23(ptr) Variable UniformConstant
186(d29): 23(ptr) Variable UniformConstant
187(d30): 23(ptr) Variable UniformConstant
188(d31): 23(ptr) Variable UniformConstant
189(d32): 23(ptr) Variable UniformConstant
190(d33): 23(ptr) Variable UniformConstant
191(d34): 23(ptr) Variable UniformConstant
192: TypeInt 32 1
193: TypePointer UniformConstant 192(int)
194(Count): 193(ptr) Variable UniformConstant
4(main): 2 Function None 3
5: Label
10(color): 9(ptr) Variable Function
13: 8(fvec4) Load 12(BaseColor)
Store 10(color) 13
Branch 14
14: Label
17: 18(bool) Phi 19 5 58 50 58 65
LoopMerge 15 None
Branch 20
20: Label
SelectionMerge 16 None
BranchConditional 17 16 21
21: Label
22: 8(fvec4) Load 10(color)
23: 7(float) CompositeExtract 22 2
26: 7(float) Load 25(d4)
27: 18(bool) FOrdLessThan 23 26
SelectionMerge 28 None
BranchConditional 27 28 15
28: Label
Branch 16
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
9(color): 8(ptr) Variable Function
12: 7(fvec4) Load 11(BaseColor)
Store 9(color) 12
Branch 13
13: Label
16: 17(bool) Phi 18 5 57 49 57 64
LoopMerge 14 None
Branch 19
19: Label
SelectionMerge 15 None
BranchConditional 16 15 20
20: Label
21: 7(fvec4) Load 9(color)
22: 6(float) CompositeExtract 21 2
25: 6(float) Load 24(d4)
26: 17(bool) FOrdLessThan 22 25
SelectionMerge 27 None
BranchConditional 26 27 14
27: Label
Branch 15
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
82: 8(fvec4) Load 10(color)
83: 7(float) CompositeExtract 82 3
85: 7(float) Load 84(d13)
86: 18(bool) FOrdLessThan 83 85
LoopMerge 80 None
BranchConditional 86 81 80
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
144: 7(fvec4) Load 9(color)
145: 7(fvec4) CompositeConstruct 53 53 53 53
146: 7(fvec4) FAdd 144 145
Store 9(color) 146
149: 7(fvec4) Load 9(color)
Store 148(gl_FragColor) 149
Return
FunctionEnd

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -8,27 +8,27 @@ Key:
Summary of main missing features:
AEP
- GL_KHR_blend_equation_advanced
- GL_OES_sample_variables
- GL_OES_shader_image_atomic
- GL_OES_shader_multisample_interpolation
- GL_OES_texture_storage_multisample_2d_array
+ GL_KHR_blend_equation_advanced
+ GL_OES_sample_variables
+ GL_OES_shader_image_atomic
+ GL_OES_shader_multisample_interpolation
+ GL_OES_texture_storage_multisample_2d_array
+ GL_EXT_geometry_shader
+ GL_EXT_geometry_point_size
+ GL_EXT_gpu_shader5
- GL_EXT_primitive_bounding_box
+ GL_EXT_primitive_bounding_box
+ GL_EXT_shader_io_blocks
+ GL_EXT_tessellation_shader
+ GL_EXT_tessellation_point_size
- GL_EXT_texture_buffer
- GL_EXT_texture_cube_map_array
+ GL_EXT_texture_buffer
+ GL_EXT_texture_cube_map_array
Missing features in ES 3.1
[johnkslang] Arrays of arrays
- .length() on run-time array
+ Arrays of arrays
+ .length() on run-time array
Missing desktop features that are in EAP
- per-sample shading
+ per-sample shading
- "precise"
Missing desktop features, non AEP
@ -36,7 +36,7 @@ Missing desktop features, non AEP
- built-in functions for type 'double'
- second-generation function-overloading disambiguation algorithm (version 400)
- Preprocessor token pasting (##), ## does macro expansion after pasting not before
- textureQueryLevels and textureQueryLod
+ textureQueryLevels and textureQueryLod
Bugs
- 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()
+ bitfieldReverse()
+ 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.
+ Texture gather functions that return four texels with a single call.
+ textureGather()
@ -286,7 +286,7 @@ Shader Functionality to Implement/Finish
- For layout qualifiers,
+ 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.
- 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.
+ Make gl_Layer and gl_ViewportIndex also be inputs to the fragment shader, as per the
GL_ARB_fragment_layer_viewport extension.

View File

@ -513,8 +513,8 @@ public:
int layoutOffset;
int layoutAlign;
unsigned int layoutLocation : 7;
static const unsigned int layoutLocationEnd = 0x3F;
unsigned int layoutLocation :12;
static const unsigned int layoutLocationEnd = 0xFFF;
unsigned int layoutComponent : 3;
static const unsigned int layoutComponentEnd = 4;
@ -574,7 +574,7 @@ public:
}
bool hasLocation() const
{
return layoutLocation != layoutLocationEnd;
return layoutLocation != layoutLocationEnd;
}
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 date, it uses the current date (when then script is run).
#define GLSLANG_REVISION "3.0.750"
#define GLSLANG_DATE "13-Sep-2015"
#define GLSLANG_REVISION "3.0.756"
#define GLSLANG_DATE "15-Sep-2015"

View File

@ -1848,7 +1848,8 @@ void TBuiltIns::initialize(int version, EProfile profile)
if (version >= 130)
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)
{
//
// textureSize
//
if (sampler.image && ((profile == EEsProfile && version < 310) || (profile != EEsProfile && version < 430)))
return;
//
// textureSize() and imageSize()
//
int sizeDims = dimMap[sampler.dim] + (sampler.arrayed ? 1 : 0) - (sampler.dim == EsdCube ? 1 : 0);
if (profile == EEsProfile)
commonBuiltins.append("highp ");
int dims = dimMap[sampler.dim] + (sampler.arrayed ? 1 : 0) - (sampler.dim == EsdCube ? 1 : 0);
if (dims == 1)
if (sizeDims == 1)
commonBuiltins.append("int");
else {
commonBuiltins.append("ivec");
commonBuiltins.append(postfixes[dims]);
commonBuiltins.append(postfixes[sizeDims]);
}
if (sampler.image)
commonBuiltins.append(" imageSize(readonly writeonly volatile coherent ");
@ -1972,6 +1973,10 @@ void TBuiltIns::addQueryFunctions(TSampler sampler, TString& typeName, int versi
else
commonBuiltins.append(");\n");
//
// textureSamples() and imageSamples()
//
// GL_ARB_shader_texture_image_samples
// TODO: spec issue? there are no memory qualifiers; how to query a writeonly/readonly image, etc?
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(");\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");
}
}
//