Merge remote-tracking branch 'refs/remotes/KhronosGroup/master'
This commit is contained in:
commit
7583ed73ef
2
.gitignore
vendored
2
.gitignore
vendored
@ -8,4 +8,6 @@ build/
|
||||
Test/localResults/
|
||||
Test/multiThread.out
|
||||
Test/singleThread.out
|
||||
Test/vert.spv
|
||||
Test/frag.spv
|
||||
External/googletest
|
||||
|
@ -1,7 +1,7 @@
|
||||
cmake_minimum_required(VERSION 2.8.11)
|
||||
set_property(GLOBAL PROPERTY USE_FOLDERS ON)
|
||||
|
||||
option(ENABLE_AMD_EXTENSIONS "Enables support of AMD-specific extensions" OFF)
|
||||
option(ENABLE_AMD_EXTENSIONS "Enables support of AMD-specific extensions" ON)
|
||||
|
||||
enable_testing()
|
||||
|
||||
|
@ -61,7 +61,10 @@ Building
|
||||
|
||||
```bash
|
||||
cd <parent of where you want glslang to be>
|
||||
# If using SSH
|
||||
git clone git@github.com:KhronosGroup/glslang.git
|
||||
# Or if using HTTPS
|
||||
git clone https://github.com/KhronosGroup/glslang.git
|
||||
```
|
||||
|
||||
#### 2) Check-Out External Projects
|
||||
|
@ -11,9 +11,12 @@ set(SPVREMAP_SOURCES
|
||||
doc.cpp)
|
||||
|
||||
set(HEADERS
|
||||
bitutils.h
|
||||
spirv.hpp
|
||||
GLSL.std.450.h
|
||||
GLSL.ext.KHR.h
|
||||
GlslangToSpv.h
|
||||
hex_float.h
|
||||
Logger.h
|
||||
SpvBuilder.h
|
||||
spvIR.h
|
||||
@ -25,7 +28,8 @@ set(SPVREMAP_HEADERS
|
||||
doc.h)
|
||||
|
||||
if(ENABLE_AMD_EXTENSIONS)
|
||||
set(HEADERS
|
||||
list(APPEND
|
||||
HEADERS
|
||||
GLSL.ext.AMD.h)
|
||||
endif(ENABLE_AMD_EXTENSIONS)
|
||||
|
||||
|
@ -32,7 +32,7 @@ enum Decoration;
|
||||
enum Op;
|
||||
|
||||
static const int GLSLextAMDVersion = 100;
|
||||
static const int GLSLextAMDRevision = 1;
|
||||
static const int GLSLextAMDRevision = 2;
|
||||
|
||||
// SPV_AMD_shader_ballot
|
||||
static const char* const E_SPV_AMD_shader_ballot = "SPV_AMD_shader_ballot";
|
||||
@ -110,4 +110,7 @@ enum GcnShaderAMD {
|
||||
GcnShaderCountAMD
|
||||
};
|
||||
|
||||
// SPV_AMD_gpu_shader_half_float
|
||||
static const char* const E_SPV_AMD_gpu_shader_half_float = "SPV_AMD_gpu_shader_half_float";
|
||||
|
||||
#endif // #ifndef GLSLextAMD_H
|
||||
|
36
SPIRV/GLSL.ext.KHR.h
Normal file
36
SPIRV/GLSL.ext.KHR.h
Normal file
@ -0,0 +1,36 @@
|
||||
/*
|
||||
** Copyright (c) 2014-2016 The Khronos Group Inc.
|
||||
**
|
||||
** Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
** of this software and/or associated documentation files (the "Materials"),
|
||||
** to deal in the Materials without restriction, including without limitation
|
||||
** the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||
** and/or sell copies of the Materials, and to permit persons to whom the
|
||||
** Materials are furnished to do so, subject to the following conditions:
|
||||
**
|
||||
** The above copyright notice and this permission notice shall be included in
|
||||
** all copies or substantial portions of the Materials.
|
||||
**
|
||||
** MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS KHRONOS
|
||||
** STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS SPECIFICATIONS AND
|
||||
** HEADER INFORMATION ARE LOCATED AT https://www.khronos.org/registry/
|
||||
**
|
||||
** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||
** OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
** THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
** FROM,OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE USE OR OTHER DEALINGS
|
||||
** IN THE MATERIALS.
|
||||
*/
|
||||
|
||||
#ifndef GLSLextKHR_H
|
||||
#define GLSLextKHR_H
|
||||
|
||||
// SPV_KHR_shader_ballot
|
||||
static const char* const E_SPV_KHR_shader_ballot = "SPV_KHR_shader_ballot";
|
||||
|
||||
// SPV_KHR_shader_draw_parameters
|
||||
static const char* const E_SPV_KHR_shader_draw_parameters = "SPV_KHR_shader_draw_parameters";
|
||||
|
||||
#endif // #ifndef GLSLextKHR_H
|
@ -43,6 +43,7 @@
|
||||
#include "SpvBuilder.h"
|
||||
namespace spv {
|
||||
#include "GLSL.std.450.h"
|
||||
#include "GLSL.ext.KHR.h"
|
||||
#ifdef AMD_EXTENSIONS
|
||||
#include "GLSL.ext.AMD.h"
|
||||
#endif
|
||||
@ -98,7 +99,7 @@ private:
|
||||
class TGlslangToSpvTraverser : public glslang::TIntermTraverser {
|
||||
public:
|
||||
TGlslangToSpvTraverser(const glslang::TIntermediate*, spv::SpvBuildLogger* logger);
|
||||
virtual ~TGlslangToSpvTraverser();
|
||||
virtual ~TGlslangToSpvTraverser() { }
|
||||
|
||||
bool visitAggregate(glslang::TVisit, glslang::TIntermAggregate*);
|
||||
bool visitBinary(glslang::TVisit, glslang::TIntermBinary*);
|
||||
@ -110,9 +111,11 @@ public:
|
||||
bool visitLoop(glslang::TVisit, glslang::TIntermLoop*);
|
||||
bool visitBranch(glslang::TVisit visit, glslang::TIntermBranch*);
|
||||
|
||||
void finishSpv();
|
||||
void dumpSpv(std::vector<unsigned int>& out);
|
||||
|
||||
protected:
|
||||
spv::Decoration TranslateInterpolationDecoration(const glslang::TQualifier& qualifier);
|
||||
spv::Decoration TranslateAuxiliaryStorageDecoration(const glslang::TQualifier& qualifier);
|
||||
spv::BuiltIn TranslateBuiltInDecoration(glslang::TBuiltInVariable, bool memberDeclaration);
|
||||
spv::ImageFormat TranslateImageFormat(const glslang::TType& type);
|
||||
@ -154,10 +157,8 @@ protected:
|
||||
spv::Id createConversion(glslang::TOperator op, spv::Decoration precision, spv::Decoration noContraction, spv::Id destTypeId, spv::Id operand, glslang::TBasicType typeProxy);
|
||||
spv::Id makeSmearedConstant(spv::Id constant, int vectorSize);
|
||||
spv::Id createAtomicOperation(glslang::TOperator op, spv::Decoration precision, spv::Id typeId, std::vector<spv::Id>& operands, glslang::TBasicType typeProxy);
|
||||
spv::Id createInvocationsOperation(glslang::TOperator op, spv::Id typeId, spv::Id operand, glslang::TBasicType typeProxy);
|
||||
#ifdef AMD_EXTENSIONS
|
||||
spv::Id CreateInvocationsVectorOperation(spv::Op op, spv::Id typeId, spv::Id operand);
|
||||
#endif
|
||||
spv::Id createInvocationsOperation(glslang::TOperator op, spv::Id typeId, std::vector<spv::Id>& operands, glslang::TBasicType typeProxy);
|
||||
spv::Id CreateInvocationsVectorOperation(spv::Op op, spv::Id typeId, std::vector<spv::Id>& operands);
|
||||
spv::Id createMiscOperation(glslang::TOperator op, spv::Decoration precision, spv::Id typeId, std::vector<spv::Id>& operands, glslang::TBasicType typeProxy);
|
||||
spv::Id createNoArgOperation(glslang::TOperator op, spv::Decoration precision, spv::Id typeId);
|
||||
spv::Id getSymbolId(const glslang::TIntermSymbol* node);
|
||||
@ -173,6 +174,7 @@ protected:
|
||||
spv::Id getExtBuiltins(const char* name);
|
||||
|
||||
spv::Function* shaderEntry;
|
||||
spv::Function* currentFunction;
|
||||
spv::Instruction* entryPoint;
|
||||
int sequenceDepth;
|
||||
|
||||
@ -180,8 +182,8 @@ protected:
|
||||
|
||||
// There is a 1:1 mapping between a spv builder and a module; this is thread safe
|
||||
spv::Builder builder;
|
||||
bool inMain;
|
||||
bool mainTerminated;
|
||||
bool inEntryPoint;
|
||||
bool entryPointTerminated;
|
||||
bool linkageOnly; // true when visiting the set of objects in the AST present only for establishing interface, whether or not they were statically used
|
||||
std::set<spv::Id> iOSet; // all input/output variables from either static use or declaration of interface
|
||||
const glslang::TIntermediate* glslangIntermediate;
|
||||
@ -381,7 +383,7 @@ spv::Decoration TranslateLayoutDecoration(const glslang::TType& type, glslang::T
|
||||
// Translate glslang type to SPIR-V interpolation decorations.
|
||||
// Returns spv::DecorationMax when no decoration
|
||||
// should be applied.
|
||||
spv::Decoration TranslateInterpolationDecoration(const glslang::TQualifier& qualifier)
|
||||
spv::Decoration TGlslangToSpvTraverser::TranslateInterpolationDecoration(const glslang::TQualifier& qualifier)
|
||||
{
|
||||
if (qualifier.smooth)
|
||||
// Smooth decoration doesn't exist in SPIR-V 1.0
|
||||
@ -391,8 +393,10 @@ spv::Decoration TranslateInterpolationDecoration(const glslang::TQualifier& qual
|
||||
else if (qualifier.flat)
|
||||
return spv::DecorationFlat;
|
||||
#ifdef AMD_EXTENSIONS
|
||||
else if (qualifier.explicitInterp)
|
||||
else if (qualifier.explicitInterp) {
|
||||
builder.addExtension(spv::E_SPV_AMD_shader_explicit_vertex_parameter);
|
||||
return spv::DecorationExplicitInterpAMD;
|
||||
}
|
||||
#endif
|
||||
else
|
||||
return spv::DecorationMax;
|
||||
@ -498,13 +502,27 @@ spv::BuiltIn TGlslangToSpvTraverser::TranslateBuiltInDecoration(glslang::TBuiltI
|
||||
case glslang::EbvInstanceId: return spv::BuiltInInstanceId;
|
||||
case glslang::EbvVertexIndex: return spv::BuiltInVertexIndex;
|
||||
case glslang::EbvInstanceIndex: return spv::BuiltInInstanceIndex;
|
||||
|
||||
case glslang::EbvBaseVertex:
|
||||
builder.addExtension(spv::E_SPV_KHR_shader_draw_parameters);
|
||||
builder.addCapability(spv::CapabilityDrawParameters);
|
||||
return spv::BuiltInBaseVertex;
|
||||
|
||||
case glslang::EbvBaseInstance:
|
||||
builder.addExtension(spv::E_SPV_KHR_shader_draw_parameters);
|
||||
builder.addCapability(spv::CapabilityDrawParameters);
|
||||
return spv::BuiltInBaseInstance;
|
||||
|
||||
case glslang::EbvDrawId:
|
||||
// TODO: Add SPIR-V builtin ID.
|
||||
logger->missingFunctionality("shader draw parameters");
|
||||
return spv::BuiltInMax;
|
||||
case glslang::EbvPrimitiveId: return spv::BuiltInPrimitiveId;
|
||||
builder.addExtension(spv::E_SPV_KHR_shader_draw_parameters);
|
||||
builder.addCapability(spv::CapabilityDrawParameters);
|
||||
return spv::BuiltInDrawIndex;
|
||||
|
||||
case glslang::EbvPrimitiveId:
|
||||
if (glslangIntermediate->getStage() == EShLangFragment)
|
||||
builder.addCapability(spv::CapabilityGeometry);
|
||||
return spv::BuiltInPrimitiveId;
|
||||
|
||||
case glslang::EbvInvocationId: return spv::BuiltInInvocationId;
|
||||
case glslang::EbvTessLevelInner: return spv::BuiltInTessLevelInner;
|
||||
case glslang::EbvTessLevelOuter: return spv::BuiltInTessLevelOuter;
|
||||
@ -521,24 +539,70 @@ spv::BuiltIn TGlslangToSpvTraverser::TranslateBuiltInDecoration(glslang::TBuiltI
|
||||
case glslang::EbvLocalInvocationId: return spv::BuiltInLocalInvocationId;
|
||||
case glslang::EbvLocalInvocationIndex: return spv::BuiltInLocalInvocationIndex;
|
||||
case glslang::EbvGlobalInvocationId: return spv::BuiltInGlobalInvocationId;
|
||||
|
||||
case glslang::EbvSubGroupSize:
|
||||
builder.addExtension(spv::E_SPV_KHR_shader_ballot);
|
||||
builder.addCapability(spv::CapabilitySubgroupBallotKHR);
|
||||
return spv::BuiltInSubgroupSize;
|
||||
|
||||
case glslang::EbvSubGroupInvocation:
|
||||
builder.addExtension(spv::E_SPV_KHR_shader_ballot);
|
||||
builder.addCapability(spv::CapabilitySubgroupBallotKHR);
|
||||
return spv::BuiltInSubgroupLocalInvocationId;
|
||||
|
||||
case glslang::EbvSubGroupEqMask:
|
||||
builder.addExtension(spv::E_SPV_KHR_shader_ballot);
|
||||
builder.addCapability(spv::CapabilitySubgroupBallotKHR);
|
||||
return spv::BuiltInSubgroupEqMaskKHR;
|
||||
|
||||
case glslang::EbvSubGroupGeMask:
|
||||
builder.addExtension(spv::E_SPV_KHR_shader_ballot);
|
||||
builder.addCapability(spv::CapabilitySubgroupBallotKHR);
|
||||
return spv::BuiltInSubgroupGeMaskKHR;
|
||||
|
||||
case glslang::EbvSubGroupGtMask:
|
||||
builder.addExtension(spv::E_SPV_KHR_shader_ballot);
|
||||
builder.addCapability(spv::CapabilitySubgroupBallotKHR);
|
||||
return spv::BuiltInSubgroupGtMaskKHR;
|
||||
|
||||
case glslang::EbvSubGroupLeMask:
|
||||
builder.addExtension(spv::E_SPV_KHR_shader_ballot);
|
||||
builder.addCapability(spv::CapabilitySubgroupBallotKHR);
|
||||
return spv::BuiltInSubgroupLeMaskKHR;
|
||||
|
||||
case glslang::EbvSubGroupLtMask:
|
||||
// TODO: Add SPIR-V builtin ID.
|
||||
logger->missingFunctionality("shader ballot");
|
||||
return spv::BuiltInMax;
|
||||
builder.addExtension(spv::E_SPV_KHR_shader_ballot);
|
||||
builder.addCapability(spv::CapabilitySubgroupBallotKHR);
|
||||
return spv::BuiltInSubgroupLtMaskKHR;
|
||||
|
||||
#ifdef AMD_EXTENSIONS
|
||||
case glslang::EbvBaryCoordNoPersp: return spv::BuiltInBaryCoordNoPerspAMD;
|
||||
case glslang::EbvBaryCoordNoPerspCentroid: return spv::BuiltInBaryCoordNoPerspCentroidAMD;
|
||||
case glslang::EbvBaryCoordNoPerspSample: return spv::BuiltInBaryCoordNoPerspSampleAMD;
|
||||
case glslang::EbvBaryCoordSmooth: return spv::BuiltInBaryCoordSmoothAMD;
|
||||
case glslang::EbvBaryCoordSmoothCentroid: return spv::BuiltInBaryCoordSmoothCentroidAMD;
|
||||
case glslang::EbvBaryCoordSmoothSample: return spv::BuiltInBaryCoordSmoothSampleAMD;
|
||||
case glslang::EbvBaryCoordPullModel: return spv::BuiltInBaryCoordPullModelAMD;
|
||||
case glslang::EbvBaryCoordNoPersp:
|
||||
builder.addExtension(spv::E_SPV_AMD_shader_explicit_vertex_parameter);
|
||||
return spv::BuiltInBaryCoordNoPerspAMD;
|
||||
|
||||
case glslang::EbvBaryCoordNoPerspCentroid:
|
||||
builder.addExtension(spv::E_SPV_AMD_shader_explicit_vertex_parameter);
|
||||
return spv::BuiltInBaryCoordNoPerspCentroidAMD;
|
||||
|
||||
case glslang::EbvBaryCoordNoPerspSample:
|
||||
builder.addExtension(spv::E_SPV_AMD_shader_explicit_vertex_parameter);
|
||||
return spv::BuiltInBaryCoordNoPerspSampleAMD;
|
||||
|
||||
case glslang::EbvBaryCoordSmooth:
|
||||
builder.addExtension(spv::E_SPV_AMD_shader_explicit_vertex_parameter);
|
||||
return spv::BuiltInBaryCoordSmoothAMD;
|
||||
|
||||
case glslang::EbvBaryCoordSmoothCentroid:
|
||||
builder.addExtension(spv::E_SPV_AMD_shader_explicit_vertex_parameter);
|
||||
return spv::BuiltInBaryCoordSmoothCentroidAMD;
|
||||
|
||||
case glslang::EbvBaryCoordSmoothSample:
|
||||
builder.addExtension(spv::E_SPV_AMD_shader_explicit_vertex_parameter);
|
||||
return spv::BuiltInBaryCoordSmoothSampleAMD;
|
||||
|
||||
case glslang::EbvBaryCoordPullModel:
|
||||
builder.addExtension(spv::E_SPV_AMD_shader_explicit_vertex_parameter);
|
||||
return spv::BuiltInBaryCoordPullModelAMD;
|
||||
#endif
|
||||
default: return spv::BuiltInMax;
|
||||
}
|
||||
@ -702,9 +766,10 @@ bool HasNonLayoutQualifiers(const glslang::TType& type, const glslang::TQualifie
|
||||
//
|
||||
|
||||
TGlslangToSpvTraverser::TGlslangToSpvTraverser(const glslang::TIntermediate* glslangIntermediate, spv::SpvBuildLogger* buildLogger)
|
||||
: TIntermTraverser(true, false, true), shaderEntry(0), sequenceDepth(0), logger(buildLogger),
|
||||
: TIntermTraverser(true, false, true), shaderEntry(nullptr), currentFunction(nullptr),
|
||||
sequenceDepth(0), logger(buildLogger),
|
||||
builder((glslang::GetKhronosToolId() << 16) | GeneratorVersion, logger),
|
||||
inMain(false), mainTerminated(false), linkageOnly(false),
|
||||
inEntryPoint(false), entryPointTerminated(false), linkageOnly(false),
|
||||
glslangIntermediate(glslangIntermediate)
|
||||
{
|
||||
spv::ExecutionModel executionModel = TranslateExecutionModel(glslangIntermediate->getStage());
|
||||
@ -832,27 +897,27 @@ TGlslangToSpvTraverser::TGlslangToSpvTraverser(const glslang::TIntermediate* gls
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// Finish everything and dump
|
||||
void TGlslangToSpvTraverser::dumpSpv(std::vector<unsigned int>& out)
|
||||
// Finish creating SPV, after the traversal is complete.
|
||||
void TGlslangToSpvTraverser::finishSpv()
|
||||
{
|
||||
if (! entryPointTerminated) {
|
||||
builder.setBuildPoint(shaderEntry->getLastBlock());
|
||||
builder.leaveFunction();
|
||||
}
|
||||
|
||||
// finish off the entry-point SPV instruction by adding the Input/Output <id>
|
||||
for (auto it = iOSet.cbegin(); it != iOSet.cend(); ++it)
|
||||
entryPoint->addIdOperand(*it);
|
||||
|
||||
builder.eliminateDeadDecorations();
|
||||
builder.dump(out);
|
||||
}
|
||||
|
||||
TGlslangToSpvTraverser::~TGlslangToSpvTraverser()
|
||||
// Write the SPV into 'out'.
|
||||
void TGlslangToSpvTraverser::dumpSpv(std::vector<unsigned int>& out)
|
||||
{
|
||||
if (! mainTerminated) {
|
||||
spv::Block* lastMainBlock = shaderEntry->getLastBlock();
|
||||
builder.setBuildPoint(lastMainBlock);
|
||||
builder.leaveFunction();
|
||||
}
|
||||
builder.dump(out);
|
||||
}
|
||||
|
||||
//
|
||||
@ -1190,6 +1255,10 @@ bool TGlslangToSpvTraverser::visitUnary(glslang::TVisit /* visit */, glslang::TI
|
||||
one = builder.makeFloatConstant(1.0F);
|
||||
else if (node->getBasicType() == glslang::EbtDouble)
|
||||
one = builder.makeDoubleConstant(1.0);
|
||||
#ifdef AMD_EXTENSIONS
|
||||
else if (node->getBasicType() == glslang::EbtFloat16)
|
||||
one = builder.makeFloat16Constant(1.0F);
|
||||
#endif
|
||||
else if (node->getBasicType() == glslang::EbtInt64 || node->getBasicType() == glslang::EbtUint64)
|
||||
one = builder.makeInt64Constant(1);
|
||||
else
|
||||
@ -1283,7 +1352,7 @@ bool TGlslangToSpvTraverser::visitAggregate(glslang::TVisit visit, glslang::TInt
|
||||
// anything else gets there, so visit out of order, doing them all now.
|
||||
makeGlobalInitializers(node->getAsAggregate()->getSequence());
|
||||
|
||||
// Initializers are done, don't want to visit again, but functions link objects need to be processed,
|
||||
// Initializers are done, don't want to visit again, but functions and link objects need to be processed,
|
||||
// so do them manually.
|
||||
visitFunctions(node->getAsAggregate()->getSequence());
|
||||
|
||||
@ -1314,16 +1383,17 @@ bool TGlslangToSpvTraverser::visitAggregate(glslang::TVisit visit, glslang::TInt
|
||||
case glslang::EOpFunction:
|
||||
if (visit == glslang::EvPreVisit) {
|
||||
if (isShaderEntryPoint(node)) {
|
||||
inMain = true;
|
||||
inEntryPoint = true;
|
||||
builder.setBuildPoint(shaderEntry->getLastBlock());
|
||||
currentFunction = shaderEntry;
|
||||
} else {
|
||||
handleFunctionEntry(node);
|
||||
}
|
||||
} else {
|
||||
if (inMain)
|
||||
mainTerminated = true;
|
||||
if (inEntryPoint)
|
||||
entryPointTerminated = true;
|
||||
builder.leaveFunction();
|
||||
inMain = false;
|
||||
inEntryPoint = false;
|
||||
}
|
||||
|
||||
return true;
|
||||
@ -1363,6 +1433,17 @@ bool TGlslangToSpvTraverser::visitAggregate(glslang::TVisit visit, glslang::TInt
|
||||
case glslang::EOpConstructDMat4x2:
|
||||
case glslang::EOpConstructDMat4x3:
|
||||
case glslang::EOpConstructDMat4x4:
|
||||
#ifdef AMD_EXTENSIONS
|
||||
case glslang::EOpConstructF16Mat2x2:
|
||||
case glslang::EOpConstructF16Mat2x3:
|
||||
case glslang::EOpConstructF16Mat2x4:
|
||||
case glslang::EOpConstructF16Mat3x2:
|
||||
case glslang::EOpConstructF16Mat3x3:
|
||||
case glslang::EOpConstructF16Mat3x4:
|
||||
case glslang::EOpConstructF16Mat4x2:
|
||||
case glslang::EOpConstructF16Mat4x3:
|
||||
case glslang::EOpConstructF16Mat4x4:
|
||||
#endif
|
||||
isMatrix = true;
|
||||
// fall through
|
||||
case glslang::EOpConstructFloat:
|
||||
@ -1373,6 +1454,12 @@ bool TGlslangToSpvTraverser::visitAggregate(glslang::TVisit visit, glslang::TInt
|
||||
case glslang::EOpConstructDVec2:
|
||||
case glslang::EOpConstructDVec3:
|
||||
case glslang::EOpConstructDVec4:
|
||||
#ifdef AMD_EXTENSIONS
|
||||
case glslang::EOpConstructFloat16:
|
||||
case glslang::EOpConstructF16Vec2:
|
||||
case glslang::EOpConstructF16Vec3:
|
||||
case glslang::EOpConstructF16Vec4:
|
||||
#endif
|
||||
case glslang::EOpConstructBool:
|
||||
case glslang::EOpConstructBVec2:
|
||||
case glslang::EOpConstructBVec3:
|
||||
@ -1806,9 +1893,18 @@ bool TGlslangToSpvTraverser::visitBranch(glslang::TVisit /* visit */, glslang::T
|
||||
builder.createLoopContinue();
|
||||
break;
|
||||
case glslang::EOpReturn:
|
||||
if (node->getExpression())
|
||||
builder.makeReturn(false, accessChainLoad(node->getExpression()->getType()));
|
||||
else
|
||||
if (node->getExpression()) {
|
||||
const glslang::TType& glslangReturnType = node->getExpression()->getType();
|
||||
spv::Id returnId = accessChainLoad(glslangReturnType);
|
||||
if (builder.getTypeId(returnId) != currentFunction->getReturnType()) {
|
||||
builder.clearAccessChain();
|
||||
spv::Id copyId = builder.createVariable(spv::StorageClassFunction, currentFunction->getReturnType());
|
||||
builder.setAccessChainLValue(copyId);
|
||||
multiTypeStore(glslangReturnType, returnId);
|
||||
returnId = builder.createLoad(copyId);
|
||||
}
|
||||
builder.makeReturn(false, returnId);
|
||||
} else
|
||||
builder.makeReturn(false);
|
||||
|
||||
builder.clearAccessChain();
|
||||
@ -1876,7 +1972,6 @@ spv::Id TGlslangToSpvTraverser::createInvertedSwizzle(spv::Decoration precision,
|
||||
return builder.createRvalueSwizzle(precision, convertGlslangToSpvType(node.getType()), parentResult, swizzle);
|
||||
}
|
||||
|
||||
|
||||
// Convert a glslang AST swizzle node to a swizzle vector for building SPIR-V.
|
||||
void TGlslangToSpvTraverser::convertSwizzle(const glslang::TIntermAggregate& node, std::vector<unsigned>& swizzle)
|
||||
{
|
||||
@ -1911,6 +2006,13 @@ spv::Id TGlslangToSpvTraverser::convertGlslangToSpvType(const glslang::TType& ty
|
||||
case glslang::EbtDouble:
|
||||
spvType = builder.makeFloatType(64);
|
||||
break;
|
||||
#ifdef AMD_EXTENSIONS
|
||||
case glslang::EbtFloat16:
|
||||
builder.addExtension(spv::E_SPV_AMD_gpu_shader_half_float);
|
||||
builder.addCapability(spv::CapabilityFloat16);
|
||||
spvType = builder.makeFloatType(16);
|
||||
break;
|
||||
#endif
|
||||
case glslang::EbtBool:
|
||||
// "transparent" bool doesn't exist in SPIR-V. The GLSL convention is
|
||||
// a 32-bit int where non-0 means true.
|
||||
@ -2274,7 +2376,7 @@ void TGlslangToSpvTraverser::accessChainStore(const glslang::TType& type, spv::I
|
||||
// SPIR-V level.
|
||||
//
|
||||
// This especially happens when a single glslang type expands to multiple
|
||||
// SPIR-V types, like a struct that is used in an member-undecorated way as well
|
||||
// SPIR-V types, like a struct that is used in a member-undecorated way as well
|
||||
// as in a member-decorated way.
|
||||
//
|
||||
// NOTE: This function can handle any store request; if it's not special it
|
||||
@ -2532,7 +2634,7 @@ void TGlslangToSpvTraverser::visitFunctions(const glslang::TIntermSequence& glsl
|
||||
{
|
||||
for (int f = 0; f < (int)glslFunctions.size(); ++f) {
|
||||
glslang::TIntermAggregate* node = glslFunctions[f]->getAsAggregate();
|
||||
if (node && (node->getOp() == glslang::EOpFunction || node->getOp() == glslang ::EOpLinkerObjects))
|
||||
if (node && (node->getOp() == glslang::EOpFunction || node->getOp() == glslang::EOpLinkerObjects))
|
||||
node->traverse(this);
|
||||
}
|
||||
}
|
||||
@ -2541,8 +2643,8 @@ void TGlslangToSpvTraverser::handleFunctionEntry(const glslang::TIntermAggregate
|
||||
{
|
||||
// SPIR-V functions should already be in the functionMap from the prepass
|
||||
// that called makeFunctions().
|
||||
spv::Function* function = functionMap[node->getName().c_str()];
|
||||
spv::Block* functionBlock = function->getEntryBlock();
|
||||
currentFunction = functionMap[node->getName().c_str()];
|
||||
spv::Block* functionBlock = currentFunction->getEntryBlock();
|
||||
builder.setBuildPoint(functionBlock);
|
||||
}
|
||||
|
||||
@ -2667,9 +2769,10 @@ spv::Id TGlslangToSpvTraverser::createImageTextureFunctionCall(glslang::TIntermO
|
||||
|
||||
// Check for queries
|
||||
if (cracked.query) {
|
||||
// a sampled image needs to have the image extracted first
|
||||
if (builder.isSampledImage(params.sampler))
|
||||
// OpImageQueryLod works on a sampled image, for other queries the image has to be extracted first
|
||||
if (node->getOp() != glslang::EOpTextureQueryLod && builder.isSampledImage(params.sampler))
|
||||
params.sampler = builder.createUnaryOp(spv::OpImage, builder.getImageType(params.sampler), params.sampler);
|
||||
|
||||
switch (node->getOp()) {
|
||||
case glslang::EOpImageQuerySize:
|
||||
case glslang::EOpTextureQuerySize:
|
||||
@ -3015,7 +3118,11 @@ spv::Id TGlslangToSpvTraverser::createBinaryOperation(glslang::TOperator op, spv
|
||||
glslang::TBasicType typeProxy, bool reduceComparison)
|
||||
{
|
||||
bool isUnsigned = typeProxy == glslang::EbtUint || typeProxy == glslang::EbtUint64;
|
||||
#ifdef AMD_EXTENSIONS
|
||||
bool isFloat = typeProxy == glslang::EbtFloat || typeProxy == glslang::EbtDouble || typeProxy == glslang::EbtFloat16;
|
||||
#else
|
||||
bool isFloat = typeProxy == glslang::EbtFloat || typeProxy == glslang::EbtDouble;
|
||||
#endif
|
||||
bool isBool = typeProxy == glslang::EbtBool;
|
||||
|
||||
spv::Op binOp = spv::OpNop;
|
||||
@ -3341,7 +3448,11 @@ spv::Id TGlslangToSpvTraverser::createUnaryOperation(glslang::TOperator op, spv:
|
||||
int extBuiltins = -1;
|
||||
int libCall = -1;
|
||||
bool isUnsigned = typeProxy == glslang::EbtUint || typeProxy == glslang::EbtUint64;
|
||||
#ifdef AMD_EXTENSIONS
|
||||
bool isFloat = typeProxy == glslang::EbtFloat || typeProxy == glslang::EbtDouble || typeProxy == glslang::EbtFloat16;
|
||||
#else
|
||||
bool isFloat = typeProxy == glslang::EbtFloat || typeProxy == glslang::EbtDouble;
|
||||
#endif
|
||||
|
||||
switch (op) {
|
||||
case glslang::EOpNegative:
|
||||
@ -3525,6 +3636,13 @@ spv::Id TGlslangToSpvTraverser::createUnaryOperation(glslang::TOperator op, spv:
|
||||
unaryOp = spv::OpBitcast;
|
||||
break;
|
||||
|
||||
#ifdef AMD_EXTENSIONS
|
||||
case glslang::EOpPackFloat2x16:
|
||||
case glslang::EOpUnpackFloat2x16:
|
||||
unaryOp = spv::OpBitcast;
|
||||
break;
|
||||
#endif
|
||||
|
||||
case glslang::EOpDPdx:
|
||||
unaryOp = spv::OpDPdx;
|
||||
break;
|
||||
@ -3610,10 +3728,6 @@ spv::Id TGlslangToSpvTraverser::createUnaryOperation(glslang::TOperator op, spv:
|
||||
|
||||
case glslang::EOpBallot:
|
||||
case glslang::EOpReadFirstInvocation:
|
||||
logger->missingFunctionality("shader ballot");
|
||||
libCall = spv::GLSLstd450Bad;
|
||||
break;
|
||||
|
||||
case glslang::EOpAnyInvocation:
|
||||
case glslang::EOpAllInvocations:
|
||||
case glslang::EOpAllInvocationsEqual:
|
||||
@ -3625,7 +3739,11 @@ spv::Id TGlslangToSpvTraverser::createUnaryOperation(glslang::TOperator op, spv:
|
||||
case glslang::EOpMaxInvocationsNonUniform:
|
||||
case glslang::EOpAddInvocationsNonUniform:
|
||||
#endif
|
||||
return createInvocationsOperation(op, typeId, operand, typeProxy);
|
||||
{
|
||||
std::vector<spv::Id> operands;
|
||||
operands.push_back(operand);
|
||||
return createInvocationsOperation(op, typeId, operands, typeProxy);
|
||||
}
|
||||
|
||||
#ifdef AMD_EXTENSIONS
|
||||
case glslang::EOpMbcnt:
|
||||
@ -3721,22 +3839,40 @@ spv::Id TGlslangToSpvTraverser::createConversion(glslang::TOperator op, spv::Dec
|
||||
zero = makeSmearedConstant(zero, vectorSize);
|
||||
return builder.createBinOp(spv::OpFOrdNotEqual, destType, operand, zero);
|
||||
|
||||
#ifdef AMD_EXTENSIONS
|
||||
case glslang::EOpConvFloat16ToBool:
|
||||
zero = builder.makeFloat16Constant(0.0F);
|
||||
zero = makeSmearedConstant(zero, vectorSize);
|
||||
return builder.createBinOp(spv::OpFOrdNotEqual, destType, operand, zero);
|
||||
#endif
|
||||
|
||||
case glslang::EOpConvBoolToFloat:
|
||||
convOp = spv::OpSelect;
|
||||
zero = builder.makeFloatConstant(0.0);
|
||||
one = builder.makeFloatConstant(1.0);
|
||||
zero = builder.makeFloatConstant(0.0F);
|
||||
one = builder.makeFloatConstant(1.0F);
|
||||
break;
|
||||
|
||||
case glslang::EOpConvBoolToDouble:
|
||||
convOp = spv::OpSelect;
|
||||
zero = builder.makeDoubleConstant(0.0);
|
||||
one = builder.makeDoubleConstant(1.0);
|
||||
break;
|
||||
|
||||
#ifdef AMD_EXTENSIONS
|
||||
case glslang::EOpConvBoolToFloat16:
|
||||
convOp = spv::OpSelect;
|
||||
zero = builder.makeFloat16Constant(0.0F);
|
||||
one = builder.makeFloat16Constant(1.0F);
|
||||
break;
|
||||
#endif
|
||||
|
||||
case glslang::EOpConvBoolToInt:
|
||||
case glslang::EOpConvBoolToInt64:
|
||||
zero = (op == glslang::EOpConvBoolToInt64) ? builder.makeInt64Constant(0) : builder.makeIntConstant(0);
|
||||
one = (op == glslang::EOpConvBoolToInt64) ? builder.makeInt64Constant(1) : builder.makeIntConstant(1);
|
||||
convOp = spv::OpSelect;
|
||||
break;
|
||||
|
||||
case glslang::EOpConvBoolToUint:
|
||||
case glslang::EOpConvBoolToUint64:
|
||||
zero = (op == glslang::EOpConvBoolToUint64) ? builder.makeUint64Constant(0) : builder.makeUintConstant(0);
|
||||
@ -3748,6 +3884,10 @@ spv::Id TGlslangToSpvTraverser::createConversion(glslang::TOperator op, spv::Dec
|
||||
case glslang::EOpConvIntToDouble:
|
||||
case glslang::EOpConvInt64ToFloat:
|
||||
case glslang::EOpConvInt64ToDouble:
|
||||
#ifdef AMD_EXTENSIONS
|
||||
case glslang::EOpConvIntToFloat16:
|
||||
case glslang::EOpConvInt64ToFloat16:
|
||||
#endif
|
||||
convOp = spv::OpConvertSToF;
|
||||
break;
|
||||
|
||||
@ -3755,11 +3895,21 @@ spv::Id TGlslangToSpvTraverser::createConversion(glslang::TOperator op, spv::Dec
|
||||
case glslang::EOpConvUintToDouble:
|
||||
case glslang::EOpConvUint64ToFloat:
|
||||
case glslang::EOpConvUint64ToDouble:
|
||||
#ifdef AMD_EXTENSIONS
|
||||
case glslang::EOpConvUintToFloat16:
|
||||
case glslang::EOpConvUint64ToFloat16:
|
||||
#endif
|
||||
convOp = spv::OpConvertUToF;
|
||||
break;
|
||||
|
||||
case glslang::EOpConvDoubleToFloat:
|
||||
case glslang::EOpConvFloatToDouble:
|
||||
#ifdef AMD_EXTENSIONS
|
||||
case glslang::EOpConvDoubleToFloat16:
|
||||
case glslang::EOpConvFloat16ToDouble:
|
||||
case glslang::EOpConvFloatToFloat16:
|
||||
case glslang::EOpConvFloat16ToFloat:
|
||||
#endif
|
||||
convOp = spv::OpFConvert;
|
||||
if (builder.isMatrixType(destType))
|
||||
return createUnaryMatrixOperation(convOp, precision, noContraction, destType, operand, typeProxy);
|
||||
@ -3769,6 +3919,10 @@ spv::Id TGlslangToSpvTraverser::createConversion(glslang::TOperator op, spv::Dec
|
||||
case glslang::EOpConvDoubleToInt:
|
||||
case glslang::EOpConvFloatToInt64:
|
||||
case glslang::EOpConvDoubleToInt64:
|
||||
#ifdef AMD_EXTENSIONS
|
||||
case glslang::EOpConvFloat16ToInt:
|
||||
case glslang::EOpConvFloat16ToInt64:
|
||||
#endif
|
||||
convOp = spv::OpConvertFToS;
|
||||
break;
|
||||
|
||||
@ -3793,6 +3947,10 @@ spv::Id TGlslangToSpvTraverser::createConversion(glslang::TOperator op, spv::Dec
|
||||
case glslang::EOpConvDoubleToUint:
|
||||
case glslang::EOpConvFloatToUint64:
|
||||
case glslang::EOpConvDoubleToUint64:
|
||||
#ifdef AMD_EXTENSIONS
|
||||
case glslang::EOpConvFloat16ToUint:
|
||||
case glslang::EOpConvFloat16ToUint64:
|
||||
#endif
|
||||
convOp = spv::OpConvertFToU;
|
||||
break;
|
||||
|
||||
@ -3959,125 +4117,176 @@ spv::Id TGlslangToSpvTraverser::createAtomicOperation(glslang::TOperator op, spv
|
||||
}
|
||||
|
||||
// Create group invocation operations.
|
||||
spv::Id TGlslangToSpvTraverser::createInvocationsOperation(glslang::TOperator op, spv::Id typeId, spv::Id operand, glslang::TBasicType typeProxy)
|
||||
spv::Id TGlslangToSpvTraverser::createInvocationsOperation(glslang::TOperator op, spv::Id typeId, std::vector<spv::Id>& operands, glslang::TBasicType typeProxy)
|
||||
{
|
||||
#ifdef AMD_EXTENSIONS
|
||||
bool isUnsigned = typeProxy == glslang::EbtUint || typeProxy == glslang::EbtUint64;
|
||||
bool isFloat = typeProxy == glslang::EbtFloat || typeProxy == glslang::EbtDouble;
|
||||
bool isFloat = typeProxy == glslang::EbtFloat || typeProxy == glslang::EbtDouble || typeProxy == glslang::EbtFloat16;
|
||||
#endif
|
||||
|
||||
spv::Op opCode = spv::OpNop;
|
||||
|
||||
std::vector<spv::Id> spvGroupOperands;
|
||||
if (op == glslang::EOpBallot || op == glslang::EOpReadFirstInvocation) {
|
||||
builder.addExtension(spv::E_SPV_KHR_shader_ballot);
|
||||
builder.addCapability(spv::CapabilitySubgroupBallotKHR);
|
||||
} else {
|
||||
builder.addCapability(spv::CapabilityGroups);
|
||||
#ifdef AMD_EXTENSIONS
|
||||
if (op == glslang::EOpMinInvocationsNonUniform ||
|
||||
op == glslang::EOpMaxInvocationsNonUniform ||
|
||||
op == glslang::EOpAddInvocationsNonUniform)
|
||||
builder.addExtension(spv::E_SPV_AMD_shader_ballot);
|
||||
#endif
|
||||
|
||||
std::vector<spv::Id> operands;
|
||||
operands.push_back(builder.makeUintConstant(spv::ScopeSubgroup));
|
||||
spvGroupOperands.push_back(builder.makeUintConstant(spv::ScopeSubgroup));
|
||||
#ifdef AMD_EXTENSIONS
|
||||
if (op == glslang::EOpMinInvocations || op == glslang::EOpMaxInvocations || op == glslang::EOpAddInvocations ||
|
||||
op == glslang::EOpMinInvocationsNonUniform || op == glslang::EOpMaxInvocationsNonUniform || op == glslang::EOpAddInvocationsNonUniform)
|
||||
operands.push_back(spv::GroupOperationReduce);
|
||||
spvGroupOperands.push_back(spv::GroupOperationReduce);
|
||||
#endif
|
||||
operands.push_back(operand);
|
||||
}
|
||||
|
||||
for (auto opIt = operands.begin(); opIt != operands.end(); ++opIt)
|
||||
spvGroupOperands.push_back(*opIt);
|
||||
|
||||
switch (op) {
|
||||
case glslang::EOpAnyInvocation:
|
||||
opCode = spv::OpGroupAny;
|
||||
break;
|
||||
case glslang::EOpAllInvocations:
|
||||
return builder.createOp(op == glslang::EOpAnyInvocation ? spv::OpGroupAny : spv::OpGroupAll, typeId, operands);
|
||||
|
||||
opCode = spv::OpGroupAll;
|
||||
break;
|
||||
case glslang::EOpAllInvocationsEqual:
|
||||
{
|
||||
spv::Id groupAll = builder.createOp(spv::OpGroupAll, typeId, operands);
|
||||
spv::Id groupAny = builder.createOp(spv::OpGroupAny, typeId, operands);
|
||||
spv::Id groupAll = builder.createOp(spv::OpGroupAll, typeId, spvGroupOperands);
|
||||
spv::Id groupAny = builder.createOp(spv::OpGroupAny, typeId, spvGroupOperands);
|
||||
|
||||
return builder.createBinOp(spv::OpLogicalOr, typeId, groupAll,
|
||||
builder.createUnaryOp(spv::OpLogicalNot, typeId, groupAny));
|
||||
}
|
||||
|
||||
case glslang::EOpReadInvocation:
|
||||
opCode = spv::OpGroupBroadcast;
|
||||
if (builder.isVectorType(typeId))
|
||||
return CreateInvocationsVectorOperation(opCode, typeId, operands);
|
||||
break;
|
||||
case glslang::EOpReadFirstInvocation:
|
||||
opCode = spv::OpSubgroupFirstInvocationKHR;
|
||||
break;
|
||||
case glslang::EOpBallot:
|
||||
{
|
||||
// NOTE: According to the spec, the result type of "OpSubgroupBallotKHR" must be a 4 component vector of 32
|
||||
// bit integer types. The GLSL built-in function "ballotARB()" assumes the maximum number of invocations in
|
||||
// a subgroup is 64. Thus, we have to convert uvec4.xy to uint64_t as follow:
|
||||
//
|
||||
// result = Bitcast(SubgroupBallotKHR(Predicate).xy)
|
||||
//
|
||||
spv::Id uintType = builder.makeUintType(32);
|
||||
spv::Id uvec4Type = builder.makeVectorType(uintType, 4);
|
||||
spv::Id result = builder.createOp(spv::OpSubgroupBallotKHR, uvec4Type, spvGroupOperands);
|
||||
|
||||
std::vector<spv::Id> components;
|
||||
components.push_back(builder.createCompositeExtract(result, uintType, 0));
|
||||
components.push_back(builder.createCompositeExtract(result, uintType, 1));
|
||||
|
||||
spv::Id uvec2Type = builder.makeVectorType(uintType, 2);
|
||||
return builder.createUnaryOp(spv::OpBitcast, typeId,
|
||||
builder.createCompositeConstruct(uvec2Type, components));
|
||||
}
|
||||
|
||||
#ifdef AMD_EXTENSIONS
|
||||
case glslang::EOpMinInvocations:
|
||||
case glslang::EOpMaxInvocations:
|
||||
case glslang::EOpAddInvocations:
|
||||
{
|
||||
spv::Op spvOp = spv::OpNop;
|
||||
if (op == glslang::EOpMinInvocations) {
|
||||
if (isFloat)
|
||||
spvOp = spv::OpGroupFMin;
|
||||
opCode = spv::OpGroupFMin;
|
||||
else {
|
||||
if (isUnsigned)
|
||||
spvOp = spv::OpGroupUMin;
|
||||
opCode = spv::OpGroupUMin;
|
||||
else
|
||||
spvOp = spv::OpGroupSMin;
|
||||
opCode = spv::OpGroupSMin;
|
||||
}
|
||||
} else if (op == glslang::EOpMaxInvocations) {
|
||||
if (isFloat)
|
||||
spvOp = spv::OpGroupFMax;
|
||||
opCode = spv::OpGroupFMax;
|
||||
else {
|
||||
if (isUnsigned)
|
||||
spvOp = spv::OpGroupUMax;
|
||||
opCode = spv::OpGroupUMax;
|
||||
else
|
||||
spvOp = spv::OpGroupSMax;
|
||||
opCode = spv::OpGroupSMax;
|
||||
}
|
||||
} else {
|
||||
if (isFloat)
|
||||
spvOp = spv::OpGroupFAdd;
|
||||
opCode = spv::OpGroupFAdd;
|
||||
else
|
||||
spvOp = spv::OpGroupIAdd;
|
||||
opCode = spv::OpGroupIAdd;
|
||||
}
|
||||
|
||||
if (builder.isVectorType(typeId))
|
||||
return CreateInvocationsVectorOperation(spvOp, typeId, operand);
|
||||
else
|
||||
return builder.createOp(spvOp, typeId, operands);
|
||||
}
|
||||
return CreateInvocationsVectorOperation(opCode, typeId, operands);
|
||||
|
||||
break;
|
||||
case glslang::EOpMinInvocationsNonUniform:
|
||||
case glslang::EOpMaxInvocationsNonUniform:
|
||||
case glslang::EOpAddInvocationsNonUniform:
|
||||
{
|
||||
spv::Op spvOp = spv::OpNop;
|
||||
if (op == glslang::EOpMinInvocationsNonUniform) {
|
||||
if (isFloat)
|
||||
spvOp = spv::OpGroupFMinNonUniformAMD;
|
||||
opCode = spv::OpGroupFMinNonUniformAMD;
|
||||
else {
|
||||
if (isUnsigned)
|
||||
spvOp = spv::OpGroupUMinNonUniformAMD;
|
||||
opCode = spv::OpGroupUMinNonUniformAMD;
|
||||
else
|
||||
spvOp = spv::OpGroupSMinNonUniformAMD;
|
||||
opCode = spv::OpGroupSMinNonUniformAMD;
|
||||
}
|
||||
}
|
||||
else if (op == glslang::EOpMaxInvocationsNonUniform) {
|
||||
if (isFloat)
|
||||
spvOp = spv::OpGroupFMaxNonUniformAMD;
|
||||
opCode = spv::OpGroupFMaxNonUniformAMD;
|
||||
else {
|
||||
if (isUnsigned)
|
||||
spvOp = spv::OpGroupUMaxNonUniformAMD;
|
||||
opCode = spv::OpGroupUMaxNonUniformAMD;
|
||||
else
|
||||
spvOp = spv::OpGroupSMaxNonUniformAMD;
|
||||
opCode = spv::OpGroupSMaxNonUniformAMD;
|
||||
}
|
||||
}
|
||||
else {
|
||||
if (isFloat)
|
||||
spvOp = spv::OpGroupFAddNonUniformAMD;
|
||||
opCode = spv::OpGroupFAddNonUniformAMD;
|
||||
else
|
||||
spvOp = spv::OpGroupIAddNonUniformAMD;
|
||||
opCode = spv::OpGroupIAddNonUniformAMD;
|
||||
}
|
||||
|
||||
if (builder.isVectorType(typeId))
|
||||
return CreateInvocationsVectorOperation(spvOp, typeId, operand);
|
||||
else
|
||||
return builder.createOp(spvOp, typeId, operands);
|
||||
}
|
||||
return CreateInvocationsVectorOperation(opCode, typeId, operands);
|
||||
|
||||
break;
|
||||
#endif
|
||||
default:
|
||||
logger->missingFunctionality("invocation operation");
|
||||
return spv::NoResult;
|
||||
}
|
||||
|
||||
assert(opCode != spv::OpNop);
|
||||
return builder.createOp(opCode, typeId, spvGroupOperands);
|
||||
}
|
||||
|
||||
#ifdef AMD_EXTENSIONS
|
||||
// Create group invocation operations on a vector
|
||||
spv::Id TGlslangToSpvTraverser::CreateInvocationsVectorOperation(spv::Op op, spv::Id typeId, spv::Id operand)
|
||||
spv::Id TGlslangToSpvTraverser::CreateInvocationsVectorOperation(spv::Op op, spv::Id typeId, std::vector<spv::Id>& operands)
|
||||
{
|
||||
#ifdef AMD_EXTENSIONS
|
||||
assert(op == spv::OpGroupFMin || op == spv::OpGroupUMin || op == spv::OpGroupSMin ||
|
||||
op == spv::OpGroupFMax || op == spv::OpGroupUMax || op == spv::OpGroupSMax ||
|
||||
op == spv::OpGroupFAdd || op == spv::OpGroupIAdd ||
|
||||
op == spv::OpGroupFAdd || op == spv::OpGroupIAdd || op == spv::OpGroupBroadcast ||
|
||||
op == spv::OpGroupFMinNonUniformAMD || op == spv::OpGroupUMinNonUniformAMD || op == spv::OpGroupSMinNonUniformAMD ||
|
||||
op == spv::OpGroupFMaxNonUniformAMD || op == spv::OpGroupUMaxNonUniformAMD || op == spv::OpGroupSMaxNonUniformAMD ||
|
||||
op == spv::OpGroupFAddNonUniformAMD || op == spv::OpGroupIAddNonUniformAMD);
|
||||
#else
|
||||
assert(op == spv::OpGroupFMin || op == spv::OpGroupUMin || op == spv::OpGroupSMin ||
|
||||
op == spv::OpGroupFMax || op == spv::OpGroupUMax || op == spv::OpGroupSMax ||
|
||||
op == spv::OpGroupFAdd || op == spv::OpGroupIAdd || op == spv::OpGroupBroadcast);
|
||||
#endif
|
||||
|
||||
// Handle group invocation operations scalar by scalar.
|
||||
// The result type is the same type as the original type.
|
||||
@ -4087,33 +4296,41 @@ spv::Id TGlslangToSpvTraverser::CreateInvocationsVectorOperation(spv::Op op, spv
|
||||
// - make a vector out the scalar results
|
||||
|
||||
// get the types sorted out
|
||||
int numComponents = builder.getNumComponents(operand);
|
||||
spv::Id scalarType = builder.getScalarTypeId(builder.getTypeId(operand));
|
||||
int numComponents = builder.getNumComponents(operands[0]);
|
||||
spv::Id scalarType = builder.getScalarTypeId(builder.getTypeId(operands[0]));
|
||||
std::vector<spv::Id> results;
|
||||
|
||||
// do each scalar op
|
||||
for (int comp = 0; comp < numComponents; ++comp) {
|
||||
std::vector<unsigned int> indexes;
|
||||
indexes.push_back(comp);
|
||||
spv::Id scalar = builder.createCompositeExtract(operand, scalarType, indexes);
|
||||
spv::Id scalar = builder.createCompositeExtract(operands[0], scalarType, indexes);
|
||||
|
||||
std::vector<spv::Id> operands;
|
||||
operands.push_back(builder.makeUintConstant(spv::ScopeSubgroup));
|
||||
operands.push_back(spv::GroupOperationReduce);
|
||||
operands.push_back(scalar);
|
||||
std::vector<spv::Id> spvGroupOperands;
|
||||
spvGroupOperands.push_back(builder.makeUintConstant(spv::ScopeSubgroup));
|
||||
if (op == spv::OpGroupBroadcast) {
|
||||
spvGroupOperands.push_back(scalar);
|
||||
spvGroupOperands.push_back(operands[1]);
|
||||
} else {
|
||||
spvGroupOperands.push_back(spv::GroupOperationReduce);
|
||||
spvGroupOperands.push_back(scalar);
|
||||
}
|
||||
|
||||
results.push_back(builder.createOp(op, scalarType, operands));
|
||||
results.push_back(builder.createOp(op, scalarType, spvGroupOperands));
|
||||
}
|
||||
|
||||
// put the pieces together
|
||||
return builder.createCompositeConstruct(typeId, results);
|
||||
}
|
||||
#endif
|
||||
|
||||
spv::Id TGlslangToSpvTraverser::createMiscOperation(glslang::TOperator op, spv::Decoration precision, spv::Id typeId, std::vector<spv::Id>& operands, glslang::TBasicType typeProxy)
|
||||
{
|
||||
bool isUnsigned = typeProxy == glslang::EbtUint || typeProxy == glslang::EbtUint64;
|
||||
#ifdef AMD_EXTENSIONS
|
||||
bool isFloat = typeProxy == glslang::EbtFloat || typeProxy == glslang::EbtDouble || typeProxy == glslang::EbtFloat16;
|
||||
#else
|
||||
bool isFloat = typeProxy == glslang::EbtFloat || typeProxy == glslang::EbtDouble;
|
||||
#endif
|
||||
|
||||
spv::Op opCode = spv::OpNop;
|
||||
int extBuiltins = -1;
|
||||
@ -4256,9 +4473,7 @@ spv::Id TGlslangToSpvTraverser::createMiscOperation(glslang::TOperator op, spv::
|
||||
break;
|
||||
|
||||
case glslang::EOpReadInvocation:
|
||||
logger->missingFunctionality("shader ballot");
|
||||
libCall = spv::GLSLstd450Bad;
|
||||
break;
|
||||
return createInvocationsOperation(op, typeId, operands, typeProxy);
|
||||
|
||||
#ifdef AMD_EXTENSIONS
|
||||
case glslang::EOpSwizzleInvocations:
|
||||
@ -4383,7 +4598,7 @@ spv::Id TGlslangToSpvTraverser::createNoArgOperation(glslang::TOperator op, spv:
|
||||
builder.createNoResultOp(spv::OpEndPrimitive);
|
||||
return 0;
|
||||
case glslang::EOpBarrier:
|
||||
builder.createControlBarrier(spv::ScopeDevice, spv::ScopeDevice, spv::MemorySemanticsMaskNone);
|
||||
builder.createControlBarrier(spv::ScopeWorkgroup, spv::ScopeDevice, spv::MemorySemanticsMaskNone);
|
||||
return 0;
|
||||
case glslang::EOpMemoryBarrier:
|
||||
builder.createMemoryBarrier(spv::ScopeDevice, spv::MemorySemanticsAllMemory);
|
||||
@ -4645,6 +4860,11 @@ spv::Id TGlslangToSpvTraverser::createSpvConstantFromConstUnionArray(const glsla
|
||||
case glslang::EbtDouble:
|
||||
spvConsts.push_back(builder.makeDoubleConstant(zero ? 0.0 : consts[nextConst].getDConst()));
|
||||
break;
|
||||
#ifdef AMD_EXTENSIONS
|
||||
case glslang::EbtFloat16:
|
||||
spvConsts.push_back(builder.makeFloat16Constant(zero ? 0.0F : (float)consts[nextConst].getDConst()));
|
||||
break;
|
||||
#endif
|
||||
case glslang::EbtBool:
|
||||
spvConsts.push_back(builder.makeBoolConstant(zero ? false : consts[nextConst].getBConst()));
|
||||
break;
|
||||
@ -4677,6 +4897,11 @@ spv::Id TGlslangToSpvTraverser::createSpvConstantFromConstUnionArray(const glsla
|
||||
case glslang::EbtDouble:
|
||||
scalar = builder.makeDoubleConstant(zero ? 0.0 : consts[nextConst].getDConst(), specConstant);
|
||||
break;
|
||||
#ifdef AMD_EXTENSIONS
|
||||
case glslang::EbtFloat16:
|
||||
scalar = builder.makeFloat16Constant(zero ? 0.0F : (float)consts[nextConst].getDConst(), specConstant);
|
||||
break;
|
||||
#endif
|
||||
case glslang::EbtBool:
|
||||
scalar = builder.makeBoolConstant(zero ? false : consts[nextConst].getBConst(), specConstant);
|
||||
break;
|
||||
@ -4825,7 +5050,7 @@ spv::Id TGlslangToSpvTraverser::getExtBuiltins(const char* name)
|
||||
if (extBuiltinMap.find(name) != extBuiltinMap.end())
|
||||
return extBuiltinMap[name];
|
||||
else {
|
||||
builder.addExtensions(name);
|
||||
builder.addExtension(name);
|
||||
spv::Id extBuiltins = builder.import(name);
|
||||
extBuiltinMap[name] = extBuiltins;
|
||||
return extBuiltins;
|
||||
@ -4896,9 +5121,8 @@ void GlslangToSpv(const glslang::TIntermediate& intermediate, std::vector<unsign
|
||||
glslang::GetThreadPoolAllocator().push();
|
||||
|
||||
TGlslangToSpvTraverser it(&intermediate, logger);
|
||||
|
||||
root->traverse(&it);
|
||||
|
||||
it.finishSpv();
|
||||
it.dumpSpv(spirv);
|
||||
|
||||
glslang::GetThreadPoolAllocator().pop();
|
||||
|
@ -32,6 +32,10 @@
|
||||
//ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
//POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
#if _MSC_VER >= 1900
|
||||
#pragma warning(disable : 4464) // relative include path contains '..'
|
||||
#endif
|
||||
|
||||
#include "../glslang/Include/intermediate.h"
|
||||
|
||||
#include <string>
|
||||
|
@ -327,12 +327,10 @@ namespace spv {
|
||||
bound(maxBound); // reset header ID bound to as big as it now needs to be
|
||||
}
|
||||
|
||||
// Mark debug instructions for stripping
|
||||
void spirvbin_t::stripDebug()
|
||||
{
|
||||
if ((options & STRIP) == 0)
|
||||
return;
|
||||
|
||||
// build local Id and name maps
|
||||
// Strip instructions in the stripOp set: debug info.
|
||||
process(
|
||||
[&](spv::Op opCode, unsigned start) {
|
||||
// remember opcodes we want to strip later
|
||||
@ -343,6 +341,32 @@ namespace spv {
|
||||
op_fn_nop);
|
||||
}
|
||||
|
||||
// Mark instructions that refer to now-removed IDs for stripping
|
||||
void spirvbin_t::stripDeadRefs()
|
||||
{
|
||||
process(
|
||||
[&](spv::Op opCode, unsigned start) {
|
||||
// strip opcodes pointing to removed data
|
||||
switch (opCode) {
|
||||
case spv::OpName:
|
||||
case spv::OpMemberName:
|
||||
case spv::OpDecorate:
|
||||
case spv::OpMemberDecorate:
|
||||
if (idPosR.find(asId(start+1)) == idPosR.end())
|
||||
stripInst(start);
|
||||
break;
|
||||
default:
|
||||
break; // leave it alone
|
||||
}
|
||||
|
||||
return true;
|
||||
},
|
||||
op_fn_nop);
|
||||
|
||||
strip();
|
||||
}
|
||||
|
||||
// Update local maps of ID, type, etc positions
|
||||
void spirvbin_t::buildLocalMaps()
|
||||
{
|
||||
msg(2, 2, std::string("build local maps: "));
|
||||
@ -351,7 +375,6 @@ namespace spv {
|
||||
idMapL.clear();
|
||||
// preserve nameMap, so we don't clear that.
|
||||
fnPos.clear();
|
||||
fnPosDCE.clear();
|
||||
fnCalls.clear();
|
||||
typeConstPos.clear();
|
||||
idPosR.clear();
|
||||
@ -366,10 +389,6 @@ namespace spv {
|
||||
// build local Id and name maps
|
||||
process(
|
||||
[&](spv::Op opCode, unsigned start) {
|
||||
// remember opcodes we want to strip later
|
||||
if ((options & STRIP) && isStripOp(opCode))
|
||||
stripInst(start);
|
||||
|
||||
unsigned word = start+1;
|
||||
spv::Id typeId = spv::NoResult;
|
||||
|
||||
@ -957,7 +976,6 @@ namespace spv {
|
||||
if (call_it == fnCalls.end() || call_it->second == 0) {
|
||||
changed = true;
|
||||
stripRange.push_back(fn->second);
|
||||
fnPosDCE.insert(*fn);
|
||||
|
||||
// decrease counts of called functions
|
||||
process(
|
||||
@ -1011,11 +1029,15 @@ namespace spv {
|
||||
// Remove single-use function variables + associated decorations and names
|
||||
process(
|
||||
[&](spv::Op opCode, unsigned start) {
|
||||
if ((opCode == spv::OpVariable && varUseCount[asId(start+2)] == 1) ||
|
||||
(opCode == spv::OpDecorate && varUseCount[asId(start+1)] == 1) ||
|
||||
(opCode == spv::OpName && varUseCount[asId(start+1)] == 1)) {
|
||||
spv::Id id = spv::NoResult;
|
||||
if (opCode == spv::OpVariable)
|
||||
id = asId(start+2);
|
||||
if (opCode == spv::OpDecorate || opCode == spv::OpName)
|
||||
id = asId(start+1);
|
||||
|
||||
if (id != spv::NoResult && varUseCount[id] == 1)
|
||||
stripInst(start);
|
||||
}
|
||||
|
||||
return true;
|
||||
},
|
||||
op_fn_nop);
|
||||
@ -1277,25 +1299,31 @@ namespace spv {
|
||||
spv::Parameterize();
|
||||
|
||||
validate(); // validate header
|
||||
buildLocalMaps();
|
||||
buildLocalMaps(); // build ID maps
|
||||
|
||||
msg(3, 4, std::string("ID bound: ") + std::to_string(bound()));
|
||||
|
||||
if (options & STRIP) stripDebug();
|
||||
strip(); // strip out data we decided to eliminate
|
||||
if (options & OPT_LOADSTORE) optLoadStore();
|
||||
if (options & OPT_FWD_LS) forwardLoadStores();
|
||||
if (options & DCE_FUNCS) dceFuncs();
|
||||
if (options & DCE_VARS) dceVars();
|
||||
if (options & DCE_TYPES) dceTypes();
|
||||
|
||||
strip(); // strip out data we decided to eliminate
|
||||
stripDeadRefs(); // remove references to things we DCEed
|
||||
// after the last strip, we must clean any debug info referring to now-deleted data
|
||||
|
||||
if (options & MAP_TYPES) mapTypeConst();
|
||||
if (options & MAP_NAMES) mapNames();
|
||||
if (options & MAP_FUNCS) mapFnBodies();
|
||||
|
||||
if (options & MAP_ALL) {
|
||||
mapRemainder(); // map any unmapped IDs
|
||||
applyMap(); // Now remap each shader to the new IDs we've come up with
|
||||
}
|
||||
}
|
||||
|
||||
// remap from a memory image
|
||||
void spirvbin_t::remap(std::vector<std::uint32_t>& in_spv, std::uint32_t opts)
|
||||
|
@ -75,6 +75,7 @@ public:
|
||||
|
||||
#if !defined (use_cpp11)
|
||||
#include <cstdio>
|
||||
#include <cstdint>
|
||||
|
||||
namespace spv {
|
||||
class spirvbin_t : public spirvbin_base_t
|
||||
@ -238,7 +239,8 @@ private:
|
||||
|
||||
void applyMap(); // remap per local name map
|
||||
void mapRemainder(); // map any IDs we haven't touched yet
|
||||
void stripDebug(); // strip debug info
|
||||
void stripDebug(); // strip all debug info
|
||||
void stripDeadRefs(); // strips debug info for now-dead references after DCE
|
||||
void strip(); // remove debug symbols
|
||||
|
||||
std::vector<spirword_t> spv; // SPIR words
|
||||
@ -263,7 +265,6 @@ private:
|
||||
// Function start and end. use unordered_map because we'll have
|
||||
// many fewer functions than IDs.
|
||||
std::unordered_map<spv::Id, range_t> fnPos;
|
||||
std::unordered_map<spv::Id, range_t> fnPosDCE; // deleted functions
|
||||
|
||||
// Which functions are called, anywhere in the module, with a call count
|
||||
std::unordered_map<spv::Id, int> fnCalls;
|
||||
|
@ -46,6 +46,10 @@
|
||||
|
||||
#include "SpvBuilder.h"
|
||||
|
||||
#ifdef AMD_EXTENSIONS
|
||||
#include "hex_float.h"
|
||||
#endif
|
||||
|
||||
#ifndef _WIN32
|
||||
#include <cstdio>
|
||||
#endif
|
||||
@ -60,7 +64,7 @@ Builder::Builder(unsigned int magicNumber, SpvBuildLogger* buildLogger) :
|
||||
builderNumber(magicNumber),
|
||||
buildPoint(0),
|
||||
uniqueId(0),
|
||||
mainFunction(0),
|
||||
entryPointFunction(0),
|
||||
generatingOpCodeForSpecConst(false),
|
||||
logger(buildLogger)
|
||||
{
|
||||
@ -785,6 +789,36 @@ Id Builder::makeDoubleConstant(double d, bool specConstant)
|
||||
return c->getResultId();
|
||||
}
|
||||
|
||||
#ifdef AMD_EXTENSIONS
|
||||
Id Builder::makeFloat16Constant(float f16, bool specConstant)
|
||||
{
|
||||
Op opcode = specConstant ? OpSpecConstant : OpConstant;
|
||||
Id typeId = makeFloatType(16);
|
||||
|
||||
spvutils::HexFloat<spvutils::FloatProxy<float>> fVal(f16);
|
||||
spvutils::HexFloat<spvutils::FloatProxy<spvutils::Float16>> f16Val(0);
|
||||
fVal.castTo(f16Val, spvutils::kRoundToZero);
|
||||
|
||||
unsigned value = f16Val.value().getAsFloat().get_value();
|
||||
|
||||
// See if we already made it. Applies only to regular constants, because specialization constants
|
||||
// must remain distinct for the purpose of applying a SpecId decoration.
|
||||
if (!specConstant) {
|
||||
Id existing = findScalarConstant(OpTypeFloat, opcode, typeId, value);
|
||||
if (existing)
|
||||
return existing;
|
||||
}
|
||||
|
||||
Instruction* c = new Instruction(getUniqueId(), typeId, opcode);
|
||||
c->addImmediateOperand(value);
|
||||
constantsTypesGlobals.push_back(std::unique_ptr<Instruction>(c));
|
||||
groupedConstants[OpTypeFloat].push_back(c);
|
||||
module.mapInstruction(c);
|
||||
|
||||
return c->getResultId();
|
||||
}
|
||||
#endif
|
||||
|
||||
Id Builder::findCompositeConstant(Op typeClass, std::vector<Id>& comps) const
|
||||
{
|
||||
Instruction* constant = 0;
|
||||
@ -933,15 +967,15 @@ void Builder::addMemberDecoration(Id id, unsigned int member, Decoration decorat
|
||||
// Comments in header
|
||||
Function* Builder::makeEntryPoint(const char* entryPoint)
|
||||
{
|
||||
assert(! mainFunction);
|
||||
assert(! entryPointFunction);
|
||||
|
||||
Block* entry;
|
||||
std::vector<Id> params;
|
||||
std::vector<Decoration> precisions;
|
||||
|
||||
mainFunction = makeFunctionEntry(NoPrecision, makeVoidType(), entryPoint, params, precisions, &entry);
|
||||
entryPointFunction = makeFunctionEntry(NoPrecision, makeVoidType(), entryPoint, params, precisions, &entry);
|
||||
|
||||
return mainFunction;
|
||||
return entryPointFunction;
|
||||
}
|
||||
|
||||
// Comments in header
|
||||
@ -2110,6 +2144,7 @@ void Builder::accessChainPushSwizzle(std::vector<unsigned>& swizzle, Id preSwizz
|
||||
std::vector<unsigned> oldSwizzle = accessChain.swizzle;
|
||||
accessChain.swizzle.resize(0);
|
||||
for (unsigned int i = 0; i < swizzle.size(); ++i) {
|
||||
assert(swizzle[i] < oldSwizzle.size());
|
||||
accessChain.swizzle.push_back(oldSwizzle[swizzle[i]]);
|
||||
}
|
||||
} else
|
||||
@ -2318,9 +2353,9 @@ void Builder::dump(std::vector<unsigned int>& out) const
|
||||
capInst.dump(out);
|
||||
}
|
||||
|
||||
for (int e = 0; e < (int)extensions.size(); ++e) {
|
||||
for (auto it = extensions.cbegin(); it != extensions.cend(); ++it) {
|
||||
Instruction extInst(0, 0, OpExtension);
|
||||
extInst.addStringOperand(extensions[e]);
|
||||
extInst.addStringOperand(*it);
|
||||
extInst.dump(out);
|
||||
}
|
||||
|
||||
|
@ -71,7 +71,7 @@ public:
|
||||
sourceVersion = version;
|
||||
}
|
||||
void addSourceExtension(const char* ext) { sourceExtensions.push_back(ext); }
|
||||
void addExtensions(const char* ext) { extensions.push_back(ext); }
|
||||
void addExtension(const char* ext) { extensions.insert(ext); }
|
||||
Id import(const char*);
|
||||
void setMemoryModel(spv::AddressingModel addr, spv::MemoryModel mem)
|
||||
{
|
||||
@ -191,6 +191,9 @@ public:
|
||||
Id makeUint64Constant(unsigned long long u, bool specConstant = false) { return makeInt64Constant(makeUintType(64), u, specConstant); }
|
||||
Id makeFloatConstant(float f, bool specConstant = false);
|
||||
Id makeDoubleConstant(double d, bool specConstant = false);
|
||||
#ifdef AMD_EXTENSIONS
|
||||
Id makeFloat16Constant(float f16, bool specConstant = false);
|
||||
#endif
|
||||
|
||||
// Turn the array of constants into a proper spv constant of the requested type.
|
||||
Id makeCompositeConstant(Id type, std::vector<Id>& comps, bool specConst = false);
|
||||
@ -552,7 +555,7 @@ public:
|
||||
|
||||
SourceLanguage source;
|
||||
int sourceVersion;
|
||||
std::vector<const char*> extensions;
|
||||
std::set<const char*> extensions;
|
||||
std::vector<const char*> sourceExtensions;
|
||||
AddressingModel addressModel;
|
||||
MemoryModel memoryModel;
|
||||
@ -561,7 +564,7 @@ public:
|
||||
Module module;
|
||||
Block* buildPoint;
|
||||
Id uniqueId;
|
||||
Function* mainFunction;
|
||||
Function* entryPointFunction;
|
||||
bool generatingOpCodeForSpecConst;
|
||||
AccessChain accessChain;
|
||||
|
||||
|
81
SPIRV/bitutils.h
Normal file
81
SPIRV/bitutils.h
Normal file
@ -0,0 +1,81 @@
|
||||
// Copyright (c) 2015-2016 The Khronos Group Inc.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
#ifndef LIBSPIRV_UTIL_BITUTILS_H_
|
||||
#define LIBSPIRV_UTIL_BITUTILS_H_
|
||||
|
||||
#include <cstdint>
|
||||
#include <cstring>
|
||||
|
||||
namespace spvutils {
|
||||
|
||||
// Performs a bitwise copy of source to the destination type Dest.
|
||||
template <typename Dest, typename Src>
|
||||
Dest BitwiseCast(Src source) {
|
||||
Dest dest;
|
||||
static_assert(sizeof(source) == sizeof(dest),
|
||||
"BitwiseCast: Source and destination must have the same size");
|
||||
std::memcpy(&dest, &source, sizeof(dest));
|
||||
return dest;
|
||||
}
|
||||
|
||||
// SetBits<T, First, Num> returns an integer of type <T> with bits set
|
||||
// for position <First> through <First + Num - 1>, counting from the least
|
||||
// significant bit. In particular when Num == 0, no positions are set to 1.
|
||||
// A static assert will be triggered if First + Num > sizeof(T) * 8, that is,
|
||||
// a bit that will not fit in the underlying type is set.
|
||||
template <typename T, size_t First = 0, size_t Num = 0>
|
||||
struct SetBits {
|
||||
static_assert(First < sizeof(T) * 8,
|
||||
"Tried to set a bit that is shifted too far.");
|
||||
const static T get = (T(1) << First) | SetBits<T, First + 1, Num - 1>::get;
|
||||
};
|
||||
|
||||
template <typename T, size_t Last>
|
||||
struct SetBits<T, Last, 0> {
|
||||
const static T get = T(0);
|
||||
};
|
||||
|
||||
// This is all compile-time so we can put our tests right here.
|
||||
static_assert(SetBits<uint32_t, 0, 0>::get == uint32_t(0x00000000),
|
||||
"SetBits failed");
|
||||
static_assert(SetBits<uint32_t, 0, 1>::get == uint32_t(0x00000001),
|
||||
"SetBits failed");
|
||||
static_assert(SetBits<uint32_t, 31, 1>::get == uint32_t(0x80000000),
|
||||
"SetBits failed");
|
||||
static_assert(SetBits<uint32_t, 1, 2>::get == uint32_t(0x00000006),
|
||||
"SetBits failed");
|
||||
static_assert(SetBits<uint32_t, 30, 2>::get == uint32_t(0xc0000000),
|
||||
"SetBits failed");
|
||||
static_assert(SetBits<uint32_t, 0, 31>::get == uint32_t(0x7FFFFFFF),
|
||||
"SetBits failed");
|
||||
static_assert(SetBits<uint32_t, 0, 32>::get == uint32_t(0xFFFFFFFF),
|
||||
"SetBits failed");
|
||||
static_assert(SetBits<uint32_t, 16, 16>::get == uint32_t(0xFFFF0000),
|
||||
"SetBits failed");
|
||||
|
||||
static_assert(SetBits<uint64_t, 0, 1>::get == uint64_t(0x0000000000000001LL),
|
||||
"SetBits failed");
|
||||
static_assert(SetBits<uint64_t, 63, 1>::get == uint64_t(0x8000000000000000LL),
|
||||
"SetBits failed");
|
||||
static_assert(SetBits<uint64_t, 62, 2>::get == uint64_t(0xc000000000000000LL),
|
||||
"SetBits failed");
|
||||
static_assert(SetBits<uint64_t, 31, 1>::get == uint64_t(0x0000000080000000LL),
|
||||
"SetBits failed");
|
||||
static_assert(SetBits<uint64_t, 16, 16>::get == uint64_t(0x00000000FFFF0000LL),
|
||||
"SetBits failed");
|
||||
|
||||
} // namespace spvutils
|
||||
|
||||
#endif // LIBSPIRV_UTIL_BITUTILS_H_
|
@ -45,14 +45,14 @@
|
||||
#include <cstring>
|
||||
#include <algorithm>
|
||||
|
||||
#ifdef AMD_EXTENSIONS
|
||||
namespace spv {
|
||||
extern "C" {
|
||||
// Include C-based headers that don't have a namespace
|
||||
#ifdef AMD_EXTENSIONS
|
||||
#include "GLSL.ext.AMD.h"
|
||||
#endif
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
namespace spv {
|
||||
|
||||
@ -312,6 +312,16 @@ const char* BuiltInString(int builtIn)
|
||||
case BuiltInCeiling:
|
||||
default: return "Bad";
|
||||
|
||||
case 4416: return "SubgroupEqMaskKHR";
|
||||
case 4417: return "SubgroupGeMaskKHR";
|
||||
case 4418: return "SubgroupGtMaskKHR";
|
||||
case 4419: return "SubgroupLeMaskKHR";
|
||||
case 4420: return "SubgroupLtMaskKHR";
|
||||
|
||||
case 4424: return "BaseVertex";
|
||||
case 4425: return "BaseInstance";
|
||||
case 4426: return "DrawIndex";
|
||||
|
||||
#ifdef AMD_EXTENSIONS
|
||||
case 4992: return "BaryCoordNoPerspAMD";
|
||||
case 4993: return "BaryCoordNoPerspCentroidAMD";
|
||||
@ -799,6 +809,9 @@ const char* CapabilityString(int info)
|
||||
|
||||
case CapabilityCeiling:
|
||||
default: return "Bad";
|
||||
|
||||
case 4423: return "SubgroupBallotKHR";
|
||||
case 4427: return "DrawParameters";
|
||||
}
|
||||
}
|
||||
|
||||
@ -1131,6 +1144,9 @@ const char* OpcodeString(int op)
|
||||
default:
|
||||
return "Bad";
|
||||
|
||||
case 4421: return "OpSubgroupBallotKHR";
|
||||
case 4422: return "OpSubgroupFirstInvocationKHR";
|
||||
|
||||
#ifdef AMD_EXTENSIONS
|
||||
case 5000: return "OpGroupIAddNonUniformAMD";
|
||||
case 5001: return "OpGroupFAddNonUniformAMD";
|
||||
@ -1146,11 +1162,7 @@ const char* OpcodeString(int op)
|
||||
|
||||
// The set of objects that hold all the instruction/operand
|
||||
// parameterization information.
|
||||
#ifdef AMD_EXTENSIONS
|
||||
InstructionParameters InstructionDesc[OpCodeMask + 1];
|
||||
#else
|
||||
InstructionParameters InstructionDesc[OpcodeCeiling];
|
||||
#endif
|
||||
OperandParameters ExecutionModeOperands[ExecutionModeCeiling];
|
||||
OperandParameters DecorationOperands[DecorationCeiling];
|
||||
|
||||
@ -2742,6 +2754,10 @@ void Parameterize()
|
||||
InstructionDesc[OpEnqueueMarker].operands.push(OperandId, "'Wait Events'");
|
||||
InstructionDesc[OpEnqueueMarker].operands.push(OperandId, "'Ret Event'");
|
||||
|
||||
InstructionDesc[OpSubgroupBallotKHR].operands.push(OperandId, "'Predicate'");
|
||||
|
||||
InstructionDesc[OpSubgroupFirstInvocationKHR].operands.push(OperandId, "'Value'");
|
||||
|
||||
#ifdef AMD_EXTENSIONS
|
||||
InstructionDesc[OpGroupIAddNonUniformAMD].capabilities.push_back(CapabilityGroups);
|
||||
InstructionDesc[OpGroupIAddNonUniformAMD].operands.push(OperandScope, "'Execution'");
|
||||
|
1078
SPIRV/hex_float.h
Normal file
1078
SPIRV/hex_float.h
Normal file
File diff suppressed because it is too large
Load Diff
@ -47,11 +47,11 @@ namespace spv {
|
||||
typedef unsigned int Id;
|
||||
|
||||
#define SPV_VERSION 0x10000
|
||||
#define SPV_REVISION 6
|
||||
#define SPV_REVISION 8
|
||||
|
||||
static const unsigned int MagicNumber = 0x07230203;
|
||||
static const unsigned int Version = 0x00010000;
|
||||
static const unsigned int Revision = 6;
|
||||
static const unsigned int Revision = 8;
|
||||
static const unsigned int OpCodeMask = 0xffff;
|
||||
static const unsigned int WordCountShift = 16;
|
||||
|
||||
@ -420,6 +420,14 @@ enum BuiltIn {
|
||||
BuiltInSubgroupLocalInvocationId = 41,
|
||||
BuiltInVertexIndex = 42,
|
||||
BuiltInInstanceIndex = 43,
|
||||
BuiltInSubgroupEqMaskKHR = 4416,
|
||||
BuiltInSubgroupGeMaskKHR = 4417,
|
||||
BuiltInSubgroupGtMaskKHR = 4418,
|
||||
BuiltInSubgroupLeMaskKHR = 4419,
|
||||
BuiltInSubgroupLtMaskKHR = 4420,
|
||||
BuiltInBaseVertex = 4424,
|
||||
BuiltInBaseInstance = 4425,
|
||||
BuiltInDrawIndex = 4426,
|
||||
BuiltInMax = 0x7fffffff,
|
||||
};
|
||||
|
||||
@ -595,6 +603,8 @@ enum Capability {
|
||||
CapabilityStorageImageReadWithoutFormat = 55,
|
||||
CapabilityStorageImageWriteWithoutFormat = 56,
|
||||
CapabilityMultiViewport = 57,
|
||||
CapabilitySubgroupBallotKHR = 4423,
|
||||
CapabilityDrawParameters = 4427,
|
||||
CapabilityMax = 0x7fffffff,
|
||||
};
|
||||
|
||||
@ -893,6 +903,8 @@ enum Op {
|
||||
OpAtomicFlagTestAndSet = 318,
|
||||
OpAtomicFlagClear = 319,
|
||||
OpImageSparseRead = 320,
|
||||
OpSubgroupBallotKHR = 4421,
|
||||
OpSubgroupFirstInvocationKHR = 4422,
|
||||
OpMax = 0x7fffffff,
|
||||
};
|
||||
|
||||
|
@ -35,6 +35,7 @@
|
||||
#include <cstdlib>
|
||||
#include <cstring>
|
||||
#include <sstream>
|
||||
#include <cctype>
|
||||
|
||||
#include "ResourceLimits.h"
|
||||
|
||||
@ -240,208 +241,217 @@ std::string GetDefaultTBuiltInResourceString()
|
||||
|
||||
void DecodeResourceLimits(TBuiltInResource* resources, char* config)
|
||||
{
|
||||
const char* delims = " \t\n\r";
|
||||
#pragma warning(suppress: 4996)
|
||||
const char* token = strtok(config, delims);
|
||||
while (token) {
|
||||
#pragma warning(suppress: 4996)
|
||||
const char* valueStr = strtok(0, delims);
|
||||
if (valueStr == 0 || ! (valueStr[0] == '-' || (valueStr[0] >= '0' && valueStr[0] <= '9'))) {
|
||||
printf("Error: '%s' bad .conf file. Each name must be followed by one number.\n", valueStr ? valueStr : "");
|
||||
static const char* delims = " \t\n\r";
|
||||
|
||||
size_t pos = 0;
|
||||
std::string configStr(config);
|
||||
|
||||
while ((pos = configStr.find_first_not_of(delims, pos)) != std::string::npos) {
|
||||
const size_t token_s = pos;
|
||||
const size_t token_e = configStr.find_first_of(delims, token_s);
|
||||
const size_t value_s = configStr.find_first_not_of(delims, token_e);
|
||||
const size_t value_e = configStr.find_first_of(delims, value_s);
|
||||
pos = value_e;
|
||||
|
||||
// Faster to use compare(), but prefering readability.
|
||||
const std::string tokenStr = configStr.substr(token_s, token_e-token_s);
|
||||
const std::string valueStr = configStr.substr(value_s, value_e-value_s);
|
||||
|
||||
if (value_s == std::string::npos || ! (valueStr[0] == '-' || isdigit(valueStr[0]))) {
|
||||
printf("Error: '%s' bad .conf file. Each name must be followed by one number.\n",
|
||||
valueStr.c_str());
|
||||
return;
|
||||
}
|
||||
int value = atoi(valueStr);
|
||||
|
||||
if (strcmp(token, "MaxLights") == 0)
|
||||
const int value = std::atoi(valueStr.c_str());
|
||||
|
||||
if (tokenStr == "MaxLights")
|
||||
resources->maxLights = value;
|
||||
else if (strcmp(token, "MaxClipPlanes") == 0)
|
||||
else if (tokenStr == "MaxClipPlanes")
|
||||
resources->maxClipPlanes = value;
|
||||
else if (strcmp(token, "MaxTextureUnits") == 0)
|
||||
else if (tokenStr == "MaxTextureUnits")
|
||||
resources->maxTextureUnits = value;
|
||||
else if (strcmp(token, "MaxTextureCoords") == 0)
|
||||
else if (tokenStr == "MaxTextureCoords")
|
||||
resources->maxTextureCoords = value;
|
||||
else if (strcmp(token, "MaxVertexAttribs") == 0)
|
||||
else if (tokenStr == "MaxVertexAttribs")
|
||||
resources->maxVertexAttribs = value;
|
||||
else if (strcmp(token, "MaxVertexUniformComponents") == 0)
|
||||
else if (tokenStr == "MaxVertexUniformComponents")
|
||||
resources->maxVertexUniformComponents = value;
|
||||
else if (strcmp(token, "MaxVaryingFloats") == 0)
|
||||
else if (tokenStr == "MaxVaryingFloats")
|
||||
resources->maxVaryingFloats = value;
|
||||
else if (strcmp(token, "MaxVertexTextureImageUnits") == 0)
|
||||
else if (tokenStr == "MaxVertexTextureImageUnits")
|
||||
resources->maxVertexTextureImageUnits = value;
|
||||
else if (strcmp(token, "MaxCombinedTextureImageUnits") == 0)
|
||||
else if (tokenStr == "MaxCombinedTextureImageUnits")
|
||||
resources->maxCombinedTextureImageUnits = value;
|
||||
else if (strcmp(token, "MaxTextureImageUnits") == 0)
|
||||
else if (tokenStr == "MaxTextureImageUnits")
|
||||
resources->maxTextureImageUnits = value;
|
||||
else if (strcmp(token, "MaxFragmentUniformComponents") == 0)
|
||||
else if (tokenStr == "MaxFragmentUniformComponents")
|
||||
resources->maxFragmentUniformComponents = value;
|
||||
else if (strcmp(token, "MaxDrawBuffers") == 0)
|
||||
else if (tokenStr == "MaxDrawBuffers")
|
||||
resources->maxDrawBuffers = value;
|
||||
else if (strcmp(token, "MaxVertexUniformVectors") == 0)
|
||||
else if (tokenStr == "MaxVertexUniformVectors")
|
||||
resources->maxVertexUniformVectors = value;
|
||||
else if (strcmp(token, "MaxVaryingVectors") == 0)
|
||||
else if (tokenStr == "MaxVaryingVectors")
|
||||
resources->maxVaryingVectors = value;
|
||||
else if (strcmp(token, "MaxFragmentUniformVectors") == 0)
|
||||
else if (tokenStr == "MaxFragmentUniformVectors")
|
||||
resources->maxFragmentUniformVectors = value;
|
||||
else if (strcmp(token, "MaxVertexOutputVectors") == 0)
|
||||
else if (tokenStr == "MaxVertexOutputVectors")
|
||||
resources->maxVertexOutputVectors = value;
|
||||
else if (strcmp(token, "MaxFragmentInputVectors") == 0)
|
||||
else if (tokenStr == "MaxFragmentInputVectors")
|
||||
resources->maxFragmentInputVectors = value;
|
||||
else if (strcmp(token, "MinProgramTexelOffset") == 0)
|
||||
else if (tokenStr == "MinProgramTexelOffset")
|
||||
resources->minProgramTexelOffset = value;
|
||||
else if (strcmp(token, "MaxProgramTexelOffset") == 0)
|
||||
else if (tokenStr == "MaxProgramTexelOffset")
|
||||
resources->maxProgramTexelOffset = value;
|
||||
else if (strcmp(token, "MaxClipDistances") == 0)
|
||||
else if (tokenStr == "MaxClipDistances")
|
||||
resources->maxClipDistances = value;
|
||||
else if (strcmp(token, "MaxComputeWorkGroupCountX") == 0)
|
||||
else if (tokenStr == "MaxComputeWorkGroupCountX")
|
||||
resources->maxComputeWorkGroupCountX = value;
|
||||
else if (strcmp(token, "MaxComputeWorkGroupCountY") == 0)
|
||||
else if (tokenStr == "MaxComputeWorkGroupCountY")
|
||||
resources->maxComputeWorkGroupCountY = value;
|
||||
else if (strcmp(token, "MaxComputeWorkGroupCountZ") == 0)
|
||||
else if (tokenStr == "MaxComputeWorkGroupCountZ")
|
||||
resources->maxComputeWorkGroupCountZ = value;
|
||||
else if (strcmp(token, "MaxComputeWorkGroupSizeX") == 0)
|
||||
else if (tokenStr == "MaxComputeWorkGroupSizeX")
|
||||
resources->maxComputeWorkGroupSizeX = value;
|
||||
else if (strcmp(token, "MaxComputeWorkGroupSizeY") == 0)
|
||||
else if (tokenStr == "MaxComputeWorkGroupSizeY")
|
||||
resources->maxComputeWorkGroupSizeY = value;
|
||||
else if (strcmp(token, "MaxComputeWorkGroupSizeZ") == 0)
|
||||
else if (tokenStr == "MaxComputeWorkGroupSizeZ")
|
||||
resources->maxComputeWorkGroupSizeZ = value;
|
||||
else if (strcmp(token, "MaxComputeUniformComponents") == 0)
|
||||
else if (tokenStr == "MaxComputeUniformComponents")
|
||||
resources->maxComputeUniformComponents = value;
|
||||
else if (strcmp(token, "MaxComputeTextureImageUnits") == 0)
|
||||
else if (tokenStr == "MaxComputeTextureImageUnits")
|
||||
resources->maxComputeTextureImageUnits = value;
|
||||
else if (strcmp(token, "MaxComputeImageUniforms") == 0)
|
||||
else if (tokenStr == "MaxComputeImageUniforms")
|
||||
resources->maxComputeImageUniforms = value;
|
||||
else if (strcmp(token, "MaxComputeAtomicCounters") == 0)
|
||||
else if (tokenStr == "MaxComputeAtomicCounters")
|
||||
resources->maxComputeAtomicCounters = value;
|
||||
else if (strcmp(token, "MaxComputeAtomicCounterBuffers") == 0)
|
||||
else if (tokenStr == "MaxComputeAtomicCounterBuffers")
|
||||
resources->maxComputeAtomicCounterBuffers = value;
|
||||
else if (strcmp(token, "MaxVaryingComponents") == 0)
|
||||
else if (tokenStr == "MaxVaryingComponents")
|
||||
resources->maxVaryingComponents = value;
|
||||
else if (strcmp(token, "MaxVertexOutputComponents") == 0)
|
||||
else if (tokenStr == "MaxVertexOutputComponents")
|
||||
resources->maxVertexOutputComponents = value;
|
||||
else if (strcmp(token, "MaxGeometryInputComponents") == 0)
|
||||
else if (tokenStr == "MaxGeometryInputComponents")
|
||||
resources->maxGeometryInputComponents = value;
|
||||
else if (strcmp(token, "MaxGeometryOutputComponents") == 0)
|
||||
else if (tokenStr == "MaxGeometryOutputComponents")
|
||||
resources->maxGeometryOutputComponents = value;
|
||||
else if (strcmp(token, "MaxFragmentInputComponents") == 0)
|
||||
else if (tokenStr == "MaxFragmentInputComponents")
|
||||
resources->maxFragmentInputComponents = value;
|
||||
else if (strcmp(token, "MaxImageUnits") == 0)
|
||||
else if (tokenStr == "MaxImageUnits")
|
||||
resources->maxImageUnits = value;
|
||||
else if (strcmp(token, "MaxCombinedImageUnitsAndFragmentOutputs") == 0)
|
||||
else if (tokenStr == "MaxCombinedImageUnitsAndFragmentOutputs")
|
||||
resources->maxCombinedImageUnitsAndFragmentOutputs = value;
|
||||
else if (strcmp(token, "MaxCombinedShaderOutputResources") == 0)
|
||||
else if (tokenStr == "MaxCombinedShaderOutputResources")
|
||||
resources->maxCombinedShaderOutputResources = value;
|
||||
else if (strcmp(token, "MaxImageSamples") == 0)
|
||||
else if (tokenStr == "MaxImageSamples")
|
||||
resources->maxImageSamples = value;
|
||||
else if (strcmp(token, "MaxVertexImageUniforms") == 0)
|
||||
else if (tokenStr == "MaxVertexImageUniforms")
|
||||
resources->maxVertexImageUniforms = value;
|
||||
else if (strcmp(token, "MaxTessControlImageUniforms") == 0)
|
||||
else if (tokenStr == "MaxTessControlImageUniforms")
|
||||
resources->maxTessControlImageUniforms = value;
|
||||
else if (strcmp(token, "MaxTessEvaluationImageUniforms") == 0)
|
||||
else if (tokenStr == "MaxTessEvaluationImageUniforms")
|
||||
resources->maxTessEvaluationImageUniforms = value;
|
||||
else if (strcmp(token, "MaxGeometryImageUniforms") == 0)
|
||||
else if (tokenStr == "MaxGeometryImageUniforms")
|
||||
resources->maxGeometryImageUniforms = value;
|
||||
else if (strcmp(token, "MaxFragmentImageUniforms") == 0)
|
||||
else if (tokenStr == "MaxFragmentImageUniforms")
|
||||
resources->maxFragmentImageUniforms = value;
|
||||
else if (strcmp(token, "MaxCombinedImageUniforms") == 0)
|
||||
else if (tokenStr == "MaxCombinedImageUniforms")
|
||||
resources->maxCombinedImageUniforms = value;
|
||||
else if (strcmp(token, "MaxGeometryTextureImageUnits") == 0)
|
||||
else if (tokenStr == "MaxGeometryTextureImageUnits")
|
||||
resources->maxGeometryTextureImageUnits = value;
|
||||
else if (strcmp(token, "MaxGeometryOutputVertices") == 0)
|
||||
else if (tokenStr == "MaxGeometryOutputVertices")
|
||||
resources->maxGeometryOutputVertices = value;
|
||||
else if (strcmp(token, "MaxGeometryTotalOutputComponents") == 0)
|
||||
else if (tokenStr == "MaxGeometryTotalOutputComponents")
|
||||
resources->maxGeometryTotalOutputComponents = value;
|
||||
else if (strcmp(token, "MaxGeometryUniformComponents") == 0)
|
||||
else if (tokenStr == "MaxGeometryUniformComponents")
|
||||
resources->maxGeometryUniformComponents = value;
|
||||
else if (strcmp(token, "MaxGeometryVaryingComponents") == 0)
|
||||
else if (tokenStr == "MaxGeometryVaryingComponents")
|
||||
resources->maxGeometryVaryingComponents = value;
|
||||
else if (strcmp(token, "MaxTessControlInputComponents") == 0)
|
||||
else if (tokenStr == "MaxTessControlInputComponents")
|
||||
resources->maxTessControlInputComponents = value;
|
||||
else if (strcmp(token, "MaxTessControlOutputComponents") == 0)
|
||||
else if (tokenStr == "MaxTessControlOutputComponents")
|
||||
resources->maxTessControlOutputComponents = value;
|
||||
else if (strcmp(token, "MaxTessControlTextureImageUnits") == 0)
|
||||
else if (tokenStr == "MaxTessControlTextureImageUnits")
|
||||
resources->maxTessControlTextureImageUnits = value;
|
||||
else if (strcmp(token, "MaxTessControlUniformComponents") == 0)
|
||||
else if (tokenStr == "MaxTessControlUniformComponents")
|
||||
resources->maxTessControlUniformComponents = value;
|
||||
else if (strcmp(token, "MaxTessControlTotalOutputComponents") == 0)
|
||||
else if (tokenStr == "MaxTessControlTotalOutputComponents")
|
||||
resources->maxTessControlTotalOutputComponents = value;
|
||||
else if (strcmp(token, "MaxTessEvaluationInputComponents") == 0)
|
||||
else if (tokenStr == "MaxTessEvaluationInputComponents")
|
||||
resources->maxTessEvaluationInputComponents = value;
|
||||
else if (strcmp(token, "MaxTessEvaluationOutputComponents") == 0)
|
||||
else if (tokenStr == "MaxTessEvaluationOutputComponents")
|
||||
resources->maxTessEvaluationOutputComponents = value;
|
||||
else if (strcmp(token, "MaxTessEvaluationTextureImageUnits") == 0)
|
||||
else if (tokenStr == "MaxTessEvaluationTextureImageUnits")
|
||||
resources->maxTessEvaluationTextureImageUnits = value;
|
||||
else if (strcmp(token, "MaxTessEvaluationUniformComponents") == 0)
|
||||
else if (tokenStr == "MaxTessEvaluationUniformComponents")
|
||||
resources->maxTessEvaluationUniformComponents = value;
|
||||
else if (strcmp(token, "MaxTessPatchComponents") == 0)
|
||||
else if (tokenStr == "MaxTessPatchComponents")
|
||||
resources->maxTessPatchComponents = value;
|
||||
else if (strcmp(token, "MaxPatchVertices") == 0)
|
||||
else if (tokenStr == "MaxPatchVertices")
|
||||
resources->maxPatchVertices = value;
|
||||
else if (strcmp(token, "MaxTessGenLevel") == 0)
|
||||
else if (tokenStr == "MaxTessGenLevel")
|
||||
resources->maxTessGenLevel = value;
|
||||
else if (strcmp(token, "MaxViewports") == 0)
|
||||
else if (tokenStr == "MaxViewports")
|
||||
resources->maxViewports = value;
|
||||
else if (strcmp(token, "MaxVertexAtomicCounters") == 0)
|
||||
else if (tokenStr == "MaxVertexAtomicCounters")
|
||||
resources->maxVertexAtomicCounters = value;
|
||||
else if (strcmp(token, "MaxTessControlAtomicCounters") == 0)
|
||||
else if (tokenStr == "MaxTessControlAtomicCounters")
|
||||
resources->maxTessControlAtomicCounters = value;
|
||||
else if (strcmp(token, "MaxTessEvaluationAtomicCounters") == 0)
|
||||
else if (tokenStr == "MaxTessEvaluationAtomicCounters")
|
||||
resources->maxTessEvaluationAtomicCounters = value;
|
||||
else if (strcmp(token, "MaxGeometryAtomicCounters") == 0)
|
||||
else if (tokenStr == "MaxGeometryAtomicCounters")
|
||||
resources->maxGeometryAtomicCounters = value;
|
||||
else if (strcmp(token, "MaxFragmentAtomicCounters") == 0)
|
||||
else if (tokenStr == "MaxFragmentAtomicCounters")
|
||||
resources->maxFragmentAtomicCounters = value;
|
||||
else if (strcmp(token, "MaxCombinedAtomicCounters") == 0)
|
||||
else if (tokenStr == "MaxCombinedAtomicCounters")
|
||||
resources->maxCombinedAtomicCounters = value;
|
||||
else if (strcmp(token, "MaxAtomicCounterBindings") == 0)
|
||||
else if (tokenStr == "MaxAtomicCounterBindings")
|
||||
resources->maxAtomicCounterBindings = value;
|
||||
else if (strcmp(token, "MaxVertexAtomicCounterBuffers") == 0)
|
||||
else if (tokenStr == "MaxVertexAtomicCounterBuffers")
|
||||
resources->maxVertexAtomicCounterBuffers = value;
|
||||
else if (strcmp(token, "MaxTessControlAtomicCounterBuffers") == 0)
|
||||
else if (tokenStr == "MaxTessControlAtomicCounterBuffers")
|
||||
resources->maxTessControlAtomicCounterBuffers = value;
|
||||
else if (strcmp(token, "MaxTessEvaluationAtomicCounterBuffers") == 0)
|
||||
else if (tokenStr == "MaxTessEvaluationAtomicCounterBuffers")
|
||||
resources->maxTessEvaluationAtomicCounterBuffers = value;
|
||||
else if (strcmp(token, "MaxGeometryAtomicCounterBuffers") == 0)
|
||||
else if (tokenStr == "MaxGeometryAtomicCounterBuffers")
|
||||
resources->maxGeometryAtomicCounterBuffers = value;
|
||||
else if (strcmp(token, "MaxFragmentAtomicCounterBuffers") == 0)
|
||||
else if (tokenStr == "MaxFragmentAtomicCounterBuffers")
|
||||
resources->maxFragmentAtomicCounterBuffers = value;
|
||||
else if (strcmp(token, "MaxCombinedAtomicCounterBuffers") == 0)
|
||||
else if (tokenStr == "MaxCombinedAtomicCounterBuffers")
|
||||
resources->maxCombinedAtomicCounterBuffers = value;
|
||||
else if (strcmp(token, "MaxAtomicCounterBufferSize") == 0)
|
||||
else if (tokenStr == "MaxAtomicCounterBufferSize")
|
||||
resources->maxAtomicCounterBufferSize = value;
|
||||
else if (strcmp(token, "MaxTransformFeedbackBuffers") == 0)
|
||||
else if (tokenStr == "MaxTransformFeedbackBuffers")
|
||||
resources->maxTransformFeedbackBuffers = value;
|
||||
else if (strcmp(token, "MaxTransformFeedbackInterleavedComponents") == 0)
|
||||
else if (tokenStr == "MaxTransformFeedbackInterleavedComponents")
|
||||
resources->maxTransformFeedbackInterleavedComponents = value;
|
||||
else if (strcmp(token, "MaxCullDistances") == 0)
|
||||
else if (tokenStr == "MaxCullDistances")
|
||||
resources->maxCullDistances = value;
|
||||
else if (strcmp(token, "MaxCombinedClipAndCullDistances") == 0)
|
||||
else if (tokenStr == "MaxCombinedClipAndCullDistances")
|
||||
resources->maxCombinedClipAndCullDistances = value;
|
||||
else if (strcmp(token, "MaxSamples") == 0)
|
||||
else if (tokenStr == "MaxSamples")
|
||||
resources->maxSamples = value;
|
||||
|
||||
else if (strcmp(token, "nonInductiveForLoops") == 0)
|
||||
else if (tokenStr == "nonInductiveForLoops")
|
||||
resources->limits.nonInductiveForLoops = (value != 0);
|
||||
else if (strcmp(token, "whileLoops") == 0)
|
||||
else if (tokenStr == "whileLoops")
|
||||
resources->limits.whileLoops = (value != 0);
|
||||
else if (strcmp(token, "doWhileLoops") == 0)
|
||||
else if (tokenStr == "doWhileLoops")
|
||||
resources->limits.doWhileLoops = (value != 0);
|
||||
else if (strcmp(token, "generalUniformIndexing") == 0)
|
||||
else if (tokenStr == "generalUniformIndexing")
|
||||
resources->limits.generalUniformIndexing = (value != 0);
|
||||
else if (strcmp(token, "generalAttributeMatrixVectorIndexing") == 0)
|
||||
else if (tokenStr == "generalAttributeMatrixVectorIndexing")
|
||||
resources->limits.generalAttributeMatrixVectorIndexing = (value != 0);
|
||||
else if (strcmp(token, "generalVaryingIndexing") == 0)
|
||||
else if (tokenStr == "generalVaryingIndexing")
|
||||
resources->limits.generalVaryingIndexing = (value != 0);
|
||||
else if (strcmp(token, "generalSamplerIndexing") == 0)
|
||||
else if (tokenStr == "generalSamplerIndexing")
|
||||
resources->limits.generalSamplerIndexing = (value != 0);
|
||||
else if (strcmp(token, "generalVariableIndexing") == 0)
|
||||
else if (tokenStr == "generalVariableIndexing")
|
||||
resources->limits.generalVariableIndexing = (value != 0);
|
||||
else if (strcmp(token, "generalConstantMatrixVectorIndexing") == 0)
|
||||
else if (tokenStr == "generalConstantMatrixVectorIndexing")
|
||||
resources->limits.generalConstantMatrixVectorIndexing = (value != 0);
|
||||
else
|
||||
printf("Warning: unrecognized limit (%s) in configuration file.\n", token);
|
||||
printf("Warning: unrecognized limit (%s) in configuration file.\n", tokenStr.c_str());
|
||||
|
||||
#pragma warning(suppress: 4996)
|
||||
token = strtok(0, delims);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
//
|
||||
//Copyright (C) 2002-2005 3Dlabs Inc. Ltd.
|
||||
//Copyright (C) 2013 LunarG, Inc.
|
||||
//Copyright (C) 2013-2016 LunarG, Inc.
|
||||
//
|
||||
//All rights reserved.
|
||||
//
|
||||
@ -48,7 +48,9 @@
|
||||
#include "../SPIRV/disassemble.h"
|
||||
#include <cstring>
|
||||
#include <cstdlib>
|
||||
#include <cctype>
|
||||
#include <cmath>
|
||||
#include <array>
|
||||
|
||||
#include "../glslang/OSDependent/osinclude.h"
|
||||
|
||||
@ -78,6 +80,10 @@ enum TOptions {
|
||||
EOptionOutputHexadecimal = (1 << 16),
|
||||
EOptionReadHlsl = (1 << 17),
|
||||
EOptionCascadingErrors = (1 << 18),
|
||||
EOptionAutoMapBindings = (1 << 19),
|
||||
EOptionFlattenUniformArrays = (1 << 20),
|
||||
EOptionNoStorageFormat = (1 << 21),
|
||||
EOptionKeepUncalled = (1 << 22),
|
||||
};
|
||||
|
||||
//
|
||||
@ -96,7 +102,7 @@ enum TFailCode {
|
||||
//
|
||||
// Forward declarations.
|
||||
//
|
||||
EShLanguage FindLanguage(const std::string& name);
|
||||
EShLanguage FindLanguage(const std::string& name, bool parseSuffix=true);
|
||||
void CompileFile(const char* fileName, ShHandle);
|
||||
void usage();
|
||||
void FreeFileData(char** data);
|
||||
@ -155,8 +161,14 @@ int Options = 0;
|
||||
const char* ExecutableName = nullptr;
|
||||
const char* binaryFileName = nullptr;
|
||||
const char* entryPointName = nullptr;
|
||||
const char* sourceEntryPointName = nullptr;
|
||||
const char* shaderStageName = nullptr;
|
||||
|
||||
std::array<unsigned int, EShLangCount> baseSamplerBinding;
|
||||
std::array<unsigned int, EShLangCount> baseTextureBinding;
|
||||
std::array<unsigned int, EShLangCount> baseImageBinding;
|
||||
std::array<unsigned int, EShLangCount> baseUboBinding;
|
||||
|
||||
//
|
||||
// Create the default name for saving a binary if -o is not provided.
|
||||
//
|
||||
@ -204,6 +216,35 @@ void Error(const char* message)
|
||||
exit(EFailUsage);
|
||||
}
|
||||
|
||||
//
|
||||
// Process an optional binding base of the form:
|
||||
// --argname [stage] base
|
||||
// Where stage is one of the forms accepted by FindLanguage, and base is an integer
|
||||
//
|
||||
void ProcessBindingBase(int& argc, char**& argv, std::array<unsigned int, EShLangCount>& base)
|
||||
{
|
||||
if (argc < 2)
|
||||
usage();
|
||||
|
||||
if (!isdigit(argv[1][0])) {
|
||||
if (argc < 3) // this form needs one more argument
|
||||
usage();
|
||||
|
||||
// Parse form: --argname stage base
|
||||
const EShLanguage lang = FindLanguage(argv[1], false);
|
||||
base[lang] = atoi(argv[2]);
|
||||
argc-= 2;
|
||||
argv+= 2;
|
||||
} else {
|
||||
// Parse form: --argname base
|
||||
for (int lang=0; lang<EShLangCount; ++lang)
|
||||
base[lang] = atoi(argv[1]);
|
||||
|
||||
argc--;
|
||||
argv++;
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Do all command-line argument parsing. This includes building up the work-items
|
||||
// to be processed later, and saving all the command-line options.
|
||||
@ -212,6 +253,11 @@ void Error(const char* message)
|
||||
//
|
||||
void ProcessArguments(int argc, char* argv[])
|
||||
{
|
||||
baseSamplerBinding.fill(0);
|
||||
baseTextureBinding.fill(0);
|
||||
baseImageBinding.fill(0);
|
||||
baseUboBinding.fill(0);
|
||||
|
||||
ExecutableName = argv[0];
|
||||
NumWorkItems = argc; // will include some empties where the '-' options were, but it doesn't matter, they'll be 0
|
||||
Work = new glslang::TWorkItem*[NumWorkItems];
|
||||
@ -223,6 +269,56 @@ void ProcessArguments(int argc, char* argv[])
|
||||
for (; argc >= 1; argc--, argv++) {
|
||||
if (argv[0][0] == '-') {
|
||||
switch (argv[0][1]) {
|
||||
case '-':
|
||||
{
|
||||
std::string lowerword(argv[0]+2);
|
||||
std::transform(lowerword.begin(), lowerword.end(), lowerword.begin(), ::tolower);
|
||||
|
||||
// handle --word style options
|
||||
if (lowerword == "shift-sampler-bindings" || // synonyms
|
||||
lowerword == "shift-sampler-binding" ||
|
||||
lowerword == "ssb") {
|
||||
ProcessBindingBase(argc, argv, baseSamplerBinding);
|
||||
} else if (lowerword == "shift-texture-bindings" || // synonyms
|
||||
lowerword == "shift-texture-binding" ||
|
||||
lowerword == "stb") {
|
||||
ProcessBindingBase(argc, argv, baseTextureBinding);
|
||||
} else if (lowerword == "shift-image-bindings" || // synonyms
|
||||
lowerword == "shift-image-binding" ||
|
||||
lowerword == "sib") {
|
||||
ProcessBindingBase(argc, argv, baseImageBinding);
|
||||
} else if (lowerword == "shift-ubo-bindings" || // synonyms
|
||||
lowerword == "shift-ubo-binding" ||
|
||||
lowerword == "sub") {
|
||||
ProcessBindingBase(argc, argv, baseUboBinding);
|
||||
} else if (lowerword == "auto-map-bindings" || // synonyms
|
||||
lowerword == "auto-map-binding" ||
|
||||
lowerword == "amb") {
|
||||
Options |= EOptionAutoMapBindings;
|
||||
} else if (lowerword == "flatten-uniform-arrays" || // synonyms
|
||||
lowerword == "flatten-uniform-array" ||
|
||||
lowerword == "fua") {
|
||||
Options |= EOptionFlattenUniformArrays;
|
||||
} else if (lowerword == "no-storage-format" || // synonyms
|
||||
lowerword == "nsf") {
|
||||
Options |= EOptionNoStorageFormat;
|
||||
} else if (lowerword == "source-entrypoint" || // synonyms
|
||||
lowerword == "sep") {
|
||||
sourceEntryPointName = argv[1];
|
||||
if (argc > 0) {
|
||||
argc--;
|
||||
argv++;
|
||||
} else
|
||||
Error("no <entry-point> provided for --source-entrypoint");
|
||||
break;
|
||||
} else if (lowerword == "keep-uncalled" || // synonyms
|
||||
lowerword == "ku") {
|
||||
Options |= EOptionKeepUncalled;
|
||||
} else {
|
||||
usage();
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 'H':
|
||||
Options |= EOptionHumanReadableSpv;
|
||||
if ((Options & EOptionSpv) == 0) {
|
||||
@ -340,6 +436,10 @@ void ProcessArguments(int argc, char* argv[])
|
||||
// -o or -x makes no sense if there is no target binary
|
||||
if (binaryFileName && (Options & EOptionSpv) == 0)
|
||||
Error("no binary generation requested (e.g., -V)");
|
||||
|
||||
if ((Options & EOptionFlattenUniformArrays) != 0 &&
|
||||
(Options & EOptionReadHlsl) == 0)
|
||||
Error("uniform array flattening only valid when compiling HLSL source.");
|
||||
}
|
||||
|
||||
//
|
||||
@ -363,6 +463,8 @@ void SetMessageOptions(EShMessages& messages)
|
||||
messages = (EShMessages)(messages | EShMsgReadHlsl);
|
||||
if (Options & EOptionCascadingErrors)
|
||||
messages = (EShMessages)(messages | EShMsgCascadingErrors);
|
||||
if (Options & EOptionKeepUncalled)
|
||||
messages = (EShMessages)(messages | EShMsgKeepUncalled);
|
||||
}
|
||||
|
||||
//
|
||||
@ -461,6 +563,19 @@ void CompileAndLinkShaderUnits(std::vector<ShaderCompUnit> compUnits)
|
||||
shader->setStringsWithLengthsAndNames(compUnit.text, NULL, compUnit.fileNameList, 1);
|
||||
if (entryPointName) // HLSL todo: this needs to be tracked per compUnits
|
||||
shader->setEntryPoint(entryPointName);
|
||||
if (sourceEntryPointName)
|
||||
shader->setSourceEntryPoint(sourceEntryPointName);
|
||||
|
||||
shader->setShiftSamplerBinding(baseSamplerBinding[compUnit.stage]);
|
||||
shader->setShiftTextureBinding(baseTextureBinding[compUnit.stage]);
|
||||
shader->setShiftImageBinding(baseImageBinding[compUnit.stage]);
|
||||
shader->setShiftUboBinding(baseUboBinding[compUnit.stage]);
|
||||
shader->setFlattenUniformArrays((Options & EOptionFlattenUniformArrays) != 0);
|
||||
shader->setNoStorageFormat((Options & EOptionNoStorageFormat) != 0);
|
||||
|
||||
if (Options & EOptionAutoMapBindings)
|
||||
shader->setAutoMapBindings(true);
|
||||
|
||||
shaders.push_back(shader);
|
||||
|
||||
const int defaultVersion = Options & EOptionDefaultDesktop? 110: 100;
|
||||
@ -499,6 +614,12 @@ void CompileAndLinkShaderUnits(std::vector<ShaderCompUnit> compUnits)
|
||||
if (! (Options & EOptionOutputPreprocessed) && ! program.link(messages))
|
||||
LinkFailed = true;
|
||||
|
||||
// Map IO
|
||||
if (Options & EOptionSpv) {
|
||||
if (!program.mapIO())
|
||||
LinkFailed = true;
|
||||
}
|
||||
|
||||
// Report
|
||||
if (! (Options & EOptionSuppressInfolog) &&
|
||||
! (Options & EOptionMemoryLeakMode)) {
|
||||
@ -577,11 +698,11 @@ void CompileAndLinkShaderFiles()
|
||||
// they are all getting linked together.)
|
||||
glslang::TWorkItem* workItem;
|
||||
while (Worklist.remove(workItem)) {
|
||||
ShaderCompUnit compUnit = {
|
||||
ShaderCompUnit compUnit(
|
||||
FindLanguage(workItem->name),
|
||||
workItem->name,
|
||||
ReadFileData(workItem->name.c_str())
|
||||
};
|
||||
);
|
||||
|
||||
if (! compUnit.text) {
|
||||
usage();
|
||||
@ -705,15 +826,22 @@ int C_DECL main(int argc, char* argv[])
|
||||
// .frag = fragment
|
||||
// .comp = compute
|
||||
//
|
||||
EShLanguage FindLanguage(const std::string& name)
|
||||
EShLanguage FindLanguage(const std::string& name, bool parseSuffix)
|
||||
{
|
||||
size_t ext = name.rfind('.');
|
||||
size_t ext = 0;
|
||||
|
||||
// Search for a suffix on a filename: e.g, "myfile.frag". If given
|
||||
// the suffix directly, we skip looking the '.'
|
||||
if (parseSuffix) {
|
||||
ext = name.rfind('.');
|
||||
if (ext == std::string::npos) {
|
||||
usage();
|
||||
return EShLangVertex;
|
||||
}
|
||||
++ext;
|
||||
}
|
||||
|
||||
std::string suffix = name.substr(ext + 1, std::string::npos);
|
||||
std::string suffix = name.substr(ext, std::string::npos);
|
||||
if (shaderStageName)
|
||||
suffix = shaderStageName;
|
||||
|
||||
@ -831,6 +959,34 @@ void usage()
|
||||
" -v print version strings\n"
|
||||
" -w suppress warnings (except as required by #extension : warn)\n"
|
||||
" -x save 32-bit hexadecimal numbers as text, requires a binary option (e.g., -V)\n"
|
||||
"\n"
|
||||
" --shift-sampler-binding [stage] num set base binding number for samplers\n"
|
||||
" --ssb [stage] num synonym for --shift-sampler-binding\n"
|
||||
"\n"
|
||||
" --shift-texture-binding [stage] num set base binding number for textures\n"
|
||||
" --stb [stage] num synonym for --shift-texture-binding\n"
|
||||
"\n"
|
||||
" --shift-image-binding [stage] num set base binding number for images (uav)\n"
|
||||
" --sib [stage] num synonym for --shift-image-binding\n"
|
||||
"\n"
|
||||
" --shift-UBO-binding [stage] num set base binding number for UBOs\n"
|
||||
" --sub [stage] num synonym for --shift-UBO-binding\n"
|
||||
"\n"
|
||||
" --auto-map-bindings automatically bind uniform variables without\n"
|
||||
" explicit bindings.\n"
|
||||
" --amb synonym for --auto-map-bindings\n"
|
||||
"\n"
|
||||
" --flatten-uniform-arrays flatten uniform texture & sampler arrays to scalars\n"
|
||||
" --fua synonym for --flatten-uniform-arrays\n"
|
||||
"\n"
|
||||
" --no-storage-format use Unknown image format\n"
|
||||
" --nsf synonym for --no-storage-format\n"
|
||||
"\n"
|
||||
" --source-entrypoint name the given shader source function is renamed to be the entry point given in -e\n"
|
||||
" --sep synonym for --source-entrypoint\n"
|
||||
"\n"
|
||||
" --keep-uncalled don't eliminate uncalled functions when linking\n"
|
||||
" --ku synonym for --keep-uncalled\n"
|
||||
);
|
||||
|
||||
exit(EFailUsage);
|
||||
|
@ -393,13 +393,13 @@ ERROR: node is still EOpNull!
|
||||
0:? 'a' (global 3-element array of mediump int)
|
||||
0:? 'uint' (global mediump int)
|
||||
0:? 'v' (smooth in 3-element array of mediump 4-component vector of float)
|
||||
0:? 'f' (global mediump float)
|
||||
0:? 'f' (invariant global mediump float)
|
||||
0:? 'anon@0' (layout(column_major shared ) uniform block{layout(column_major shared ) uniform mediump int x})
|
||||
0:? 'fa' (global implicitly-sized array of mediump float)
|
||||
0:? 'f13' (global mediump float)
|
||||
0:? 'f13' (invariant global mediump float)
|
||||
0:? 'fi' (invariant temp mediump float)
|
||||
0:? 'av' (smooth in mediump 4-component vector of float)
|
||||
0:? 'uv2' (uniform mediump 2-component vector of float)
|
||||
0:? 'av' (invariant smooth in mediump 4-component vector of float)
|
||||
0:? 'uv2' (invariant uniform mediump 2-component vector of float)
|
||||
0:? 'uv3' (invariant uniform mediump 3-component vector of float)
|
||||
0:? 'glob2D' (global lowp sampler2D)
|
||||
0:? 'vary2D' (smooth in lowp sampler2D)
|
||||
@ -507,123 +507,6 @@ ERROR: node is still EOpNull!
|
||||
0:38 's2' (temp structure{temp mediump float f, temp 10-element array of mediump float a})
|
||||
0:38 true case is null
|
||||
0:40 'b' (temp mediump int)
|
||||
0:54 Function Definition: foo10( (global void)
|
||||
0:54 Function Parameters:
|
||||
0:67 Function Definition: f11(s21; (global void)
|
||||
0:67 Function Parameters:
|
||||
0:67 'p2d' (in lowp sampler2D)
|
||||
0:87 Function Definition: foo234( (global void)
|
||||
0:87 Function Parameters:
|
||||
0:89 Sequence
|
||||
0:89 texture (global highp 4-component vector of float)
|
||||
0:89 's3D2' (uniform highp sampler3D)
|
||||
0:89 Constant:
|
||||
0:89 0.200000
|
||||
0:89 0.200000
|
||||
0:89 0.200000
|
||||
0:89 Constant:
|
||||
0:89 0.200000
|
||||
0:90 textureProj (global highp 4-component vector of float)
|
||||
0:90 's3D2' (uniform highp sampler3D)
|
||||
0:90 direct index (smooth temp mediump 4-component vector of float)
|
||||
0:90 'v' (smooth in 3-element array of mediump 4-component vector of float)
|
||||
0:90 Constant:
|
||||
0:90 1 (const int)
|
||||
0:90 Constant:
|
||||
0:90 0.400000
|
||||
0:91 dPdx (global mediump 4-component vector of float)
|
||||
0:91 direct index (smooth temp mediump 4-component vector of float)
|
||||
0:91 'v' (smooth in 3-element array of mediump 4-component vector of float)
|
||||
0:91 Constant:
|
||||
0:91 0 (const int)
|
||||
0:92 Constant:
|
||||
0:92 0.000000
|
||||
0:93 fwidth (global mediump float)
|
||||
0:93 'f13' (invariant global mediump float)
|
||||
0:98 Function Definition: foo236( (global void)
|
||||
0:98 Function Parameters:
|
||||
0:100 Sequence
|
||||
0:100 dPdx (global mediump 4-component vector of float)
|
||||
0:100 direct index (smooth temp mediump 4-component vector of float)
|
||||
0:100 'v' (smooth in 3-element array of mediump 4-component vector of float)
|
||||
0:100 Constant:
|
||||
0:100 0 (const int)
|
||||
0:101 Constant:
|
||||
0:101 0.000000
|
||||
0:102 fwidth (global mediump float)
|
||||
0:102 'f13' (invariant global mediump float)
|
||||
0:103 move second child to first child (temp mediump float)
|
||||
0:103 'gl_FragDepth' (temp mediump float)
|
||||
0:103 'f13' (invariant global mediump float)
|
||||
0:104 move second child to first child (temp highp float)
|
||||
0:104 'gl_FragDepthEXT' (gl_FragDepth highp float FragDepth)
|
||||
0:104 'f13' (invariant global mediump float)
|
||||
0:109 Function Definition: foo239( (global void)
|
||||
0:109 Function Parameters:
|
||||
0:111 Sequence
|
||||
0:111 move second child to first child (temp mediump float)
|
||||
0:111 'gl_FragDepth' (temp mediump float)
|
||||
0:111 'f13' (invariant global mediump float)
|
||||
0:112 move second child to first child (temp highp float)
|
||||
0:112 'gl_FragDepthEXT' (gl_FragDepth highp float FragDepth)
|
||||
0:112 'f13' (invariant global mediump float)
|
||||
0:119 Function Definition: foo245( (global void)
|
||||
0:119 Function Parameters:
|
||||
0:121 Sequence
|
||||
0:121 texture (global lowp 4-component vector of float)
|
||||
0:121 'sExt' (uniform lowp samplerExternalOES)
|
||||
0:121 Constant:
|
||||
0:121 0.200000
|
||||
0:121 0.200000
|
||||
0:122 textureProj (global lowp 4-component vector of float)
|
||||
0:122 'sExt' (uniform lowp samplerExternalOES)
|
||||
0:122 Construct vec3 (temp lowp 3-component vector of float)
|
||||
0:122 'f13' (invariant global mediump float)
|
||||
0:123 textureProj (global lowp 4-component vector of float, operation at mediump)
|
||||
0:123 'sExt' (uniform lowp samplerExternalOES)
|
||||
0:123 direct index (smooth temp mediump 4-component vector of float)
|
||||
0:123 'v' (smooth in 3-element array of mediump 4-component vector of float)
|
||||
0:123 Constant:
|
||||
0:123 2 (const int)
|
||||
0:130 Function Definition: foo246( (global void)
|
||||
0:130 Function Parameters:
|
||||
0:132 Sequence
|
||||
0:132 texture (global mediump 4-component vector of float)
|
||||
0:132 'mediumExt' (uniform mediump samplerExternalOES)
|
||||
0:132 Constant:
|
||||
0:132 0.200000
|
||||
0:132 0.200000
|
||||
0:133 textureProj (global highp 4-component vector of float)
|
||||
0:133 'highExt' (uniform highp samplerExternalOES)
|
||||
0:133 direct index (smooth temp mediump 4-component vector of float)
|
||||
0:133 'v' (smooth in 3-element array of mediump 4-component vector of float)
|
||||
0:133 Constant:
|
||||
0:133 2 (const int)
|
||||
0:134 Constant:
|
||||
0:134 0.000000
|
||||
0:135 Constant:
|
||||
0:135 0.000000
|
||||
0:137 Bitwise not (temp mediump int)
|
||||
0:137 'a' (temp mediump int)
|
||||
0:138 inclusive-or (temp mediump int)
|
||||
0:138 'a' (temp mediump int)
|
||||
0:138 'a' (temp mediump int)
|
||||
0:139 bitwise and (temp mediump int)
|
||||
0:139 'a' (temp mediump int)
|
||||
0:139 'a' (temp mediump int)
|
||||
0:145 Function Definition: foo203940(i1;f1;f1; (global mediump int)
|
||||
0:145 Function Parameters:
|
||||
0:145 'a' (in mediump int)
|
||||
0:145 'b' (in mediump float)
|
||||
0:147 Sequence
|
||||
0:147 textureProjGrad (global lowp 4-component vector of float, operation at mediump)
|
||||
0:147 's2Dg' (uniform lowp sampler2D)
|
||||
0:147 Construct vec3 (temp mediump 3-component vector of float)
|
||||
0:147 'f13' (invariant global mediump float)
|
||||
0:147 'uv2' (invariant uniform mediump 2-component vector of float)
|
||||
0:147 'uv2' (invariant uniform mediump 2-component vector of float)
|
||||
0:148 Branch: Return with expression
|
||||
0:148 'a' (in mediump int)
|
||||
0:151 Sequence
|
||||
0:151 move second child to first child (temp mediump float)
|
||||
0:151 'f123' (global mediump float)
|
||||
@ -634,75 +517,6 @@ ERROR: node is still EOpNull!
|
||||
0:152 'f124' (global mediump float)
|
||||
0:152 Constant:
|
||||
0:152 50000000000.000000
|
||||
0:158 Function Definition: foo323433( (global void)
|
||||
0:158 Function Parameters:
|
||||
0:160 Sequence
|
||||
0:160 textureLod (global lowp 4-component vector of float, operation at mediump)
|
||||
0:160 's2Dg' (uniform lowp sampler2D)
|
||||
0:160 'uv2' (invariant uniform mediump 2-component vector of float)
|
||||
0:160 'f13' (invariant global mediump float)
|
||||
0:161 textureProjGrad (global lowp 4-component vector of float, operation at mediump)
|
||||
0:161 's2Dg' (uniform lowp sampler2D)
|
||||
0:161 Construct vec3 (temp mediump 3-component vector of float)
|
||||
0:161 'f13' (invariant global mediump float)
|
||||
0:161 'uv2' (invariant uniform mediump 2-component vector of float)
|
||||
0:161 'uv2' (invariant uniform mediump 2-component vector of float)
|
||||
0:162 textureGrad (global lowp 4-component vector of float, operation at mediump)
|
||||
0:162 's2Dg' (uniform lowp sampler2D)
|
||||
0:162 'uv2' (invariant uniform mediump 2-component vector of float)
|
||||
0:162 'uv2' (invariant uniform mediump 2-component vector of float)
|
||||
0:162 'uv2' (invariant uniform mediump 2-component vector of float)
|
||||
0:163 textureGrad (global lowp 4-component vector of float)
|
||||
0:163 'sCube' (uniform lowp samplerCube)
|
||||
0:163 Construct vec3 (temp lowp 3-component vector of float)
|
||||
0:163 'f13' (invariant global mediump float)
|
||||
0:163 Construct vec3 (temp lowp 3-component vector of float)
|
||||
0:163 'f13' (invariant global mediump float)
|
||||
0:163 Construct vec3 (temp lowp 3-component vector of float)
|
||||
0:163 'f13' (invariant global mediump float)
|
||||
0:167 Function Definition: fgfg(f1;i1; (global mediump int)
|
||||
0:167 Function Parameters:
|
||||
0:167 'f' (in mediump float)
|
||||
0:167 'i' (in highp int)
|
||||
0:167 Sequence
|
||||
0:167 Branch: Return with expression
|
||||
0:167 Constant:
|
||||
0:167 2 (const int)
|
||||
0:173 Function Definition: gggf(f1; (global mediump int)
|
||||
0:173 Function Parameters:
|
||||
0:173 'f' (in mediump float)
|
||||
0:173 Sequence
|
||||
0:173 Branch: Return with expression
|
||||
0:173 Constant:
|
||||
0:173 2 (const int)
|
||||
0:175 Function Definition: agggf(f1; (global mediump int)
|
||||
0:175 Function Parameters:
|
||||
0:175 'f' (in mediump float)
|
||||
0:175 Sequence
|
||||
0:175 Branch: Return with expression
|
||||
0:175 Constant:
|
||||
0:175 2 (const int)
|
||||
0:187 Function Definition: badswizzle( (global void)
|
||||
0:187 Function Parameters:
|
||||
0:? Sequence
|
||||
0:190 'a' (temp 5-element array of mediump 3-component vector of float)
|
||||
0:191 'a' (temp 5-element array of mediump 3-component vector of float)
|
||||
0:192 'a' (temp 5-element array of mediump 3-component vector of float)
|
||||
0:193 Constant:
|
||||
0:193 5 (const int)
|
||||
0:194 Constant:
|
||||
0:194 0.000000
|
||||
0:199 Function Definition: fooinittest( (global mediump float)
|
||||
0:199 Function Parameters:
|
||||
0:201 Sequence
|
||||
0:201 Branch: Return with expression
|
||||
0:201 Function Call: fooinit( (global mediump float)
|
||||
0:209 Function Definition: fooinit( (global mediump float)
|
||||
0:209 Function Parameters:
|
||||
0:211 Sequence
|
||||
0:211 Branch: Return with expression
|
||||
0:211 Constant:
|
||||
0:211 12.000000
|
||||
0:214 Sequence
|
||||
0:214 move second child to first child (temp mediump int)
|
||||
0:214 'init1' (global mediump int)
|
||||
@ -731,13 +545,13 @@ ERROR: node is still EOpNull!
|
||||
0:? 'a' (global 3-element array of mediump int)
|
||||
0:? 'uint' (global mediump int)
|
||||
0:? 'v' (smooth in 3-element array of mediump 4-component vector of float)
|
||||
0:? 'f' (global mediump float)
|
||||
0:? 'f' (invariant global mediump float)
|
||||
0:? 'anon@0' (layout(column_major shared ) uniform block{layout(column_major shared ) uniform mediump int x})
|
||||
0:? 'fa' (global 1-element array of mediump float)
|
||||
0:? 'f13' (global mediump float)
|
||||
0:? 'f13' (invariant global mediump float)
|
||||
0:? 'fi' (invariant temp mediump float)
|
||||
0:? 'av' (smooth in mediump 4-component vector of float)
|
||||
0:? 'uv2' (uniform mediump 2-component vector of float)
|
||||
0:? 'av' (invariant smooth in mediump 4-component vector of float)
|
||||
0:? 'uv2' (invariant uniform mediump 2-component vector of float)
|
||||
0:? 'uv3' (invariant uniform mediump 3-component vector of float)
|
||||
0:? 'glob2D' (global lowp sampler2D)
|
||||
0:? 'vary2D' (smooth in lowp sampler2D)
|
||||
|
@ -22,7 +22,3 @@ ERROR: 0:65: 'limitations' : Non-constant-index-expression
|
||||
ERROR: 20 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
Linked vertex stage:
|
||||
|
||||
|
||||
|
@ -128,6 +128,8 @@ ERROR: node is still EOpNull!
|
||||
|
||||
Linked vertex stage:
|
||||
|
||||
ERROR: Linking vertex stage: No function definition (body) found:
|
||||
g(
|
||||
|
||||
Shader version: 100
|
||||
ERROR: node is still EOpNull!
|
||||
@ -148,20 +150,6 @@ ERROR: node is still EOpNull!
|
||||
0:8 1.000000
|
||||
0:11 Branch: Return with expression
|
||||
0:11 'a' (in highp int)
|
||||
0:25 Function Definition: cos(f1; (global highp float)
|
||||
0:25 Function Parameters:
|
||||
0:25 'x' (in highp float)
|
||||
0:27 Sequence
|
||||
0:27 Branch: Return with expression
|
||||
0:27 Constant:
|
||||
0:27 1.000000
|
||||
0:29 Function Definition: radians(b1; (global bool)
|
||||
0:29 Function Parameters:
|
||||
0:29 'x' (in bool)
|
||||
0:31 Sequence
|
||||
0:31 Branch: Return with expression
|
||||
0:31 Constant:
|
||||
0:31 true (const bool)
|
||||
0:36 Function Definition: main( (global void)
|
||||
0:36 Function Parameters:
|
||||
0:? Sequence
|
||||
|
@ -1,9 +1,8 @@
|
||||
110scope.vert
|
||||
ERROR: 0:5: 'a' : redefinition
|
||||
ERROR: 0:34: 'f' : can't call user function from global scope
|
||||
ERROR: 0:57: 'z' : undeclared identifier
|
||||
ERROR: 0:57: 'z' : redefinition
|
||||
ERROR: 4 compilation errors. No code generated.
|
||||
ERROR: 3 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 110
|
||||
@ -131,6 +130,10 @@ ERROR: node is still EOpNull!
|
||||
|
||||
Linked vertex stage:
|
||||
|
||||
ERROR: Linking vertex stage: No function definition (body) found:
|
||||
sin(f1;
|
||||
ERROR: Linking vertex stage: No function definition (body) found:
|
||||
g(
|
||||
|
||||
Shader version: 110
|
||||
ERROR: node is still EOpNull!
|
||||
@ -151,20 +154,6 @@ ERROR: node is still EOpNull!
|
||||
0:8 1.000000
|
||||
0:11 Branch: Return with expression
|
||||
0:11 'a' (in int)
|
||||
0:25 Function Definition: cos(f1; (global float)
|
||||
0:25 Function Parameters:
|
||||
0:25 'x' (in float)
|
||||
0:27 Sequence
|
||||
0:27 Branch: Return with expression
|
||||
0:27 Constant:
|
||||
0:27 1.000000
|
||||
0:29 Function Definition: radians(b1; (global bool)
|
||||
0:29 Function Parameters:
|
||||
0:29 'x' (in bool)
|
||||
0:31 Sequence
|
||||
0:31 Branch: Return with expression
|
||||
0:31 Constant:
|
||||
0:31 true (const bool)
|
||||
0:34 Sequence
|
||||
0:34 move second child to first child (temp int)
|
||||
0:34 'gi' (global int)
|
||||
|
@ -630,537 +630,9 @@ Shader version: 120
|
||||
Requested GL_ARB_shader_texture_lod
|
||||
Requested GL_ARB_texture_rectangle
|
||||
ERROR: node is still EOpNull!
|
||||
0:21 Function Definition: main( (global void)
|
||||
0:21 Function Parameters:
|
||||
0:23 Sequence
|
||||
0:23 Sequence
|
||||
0:23 move second child to first child (temp 2X3 matrix of float)
|
||||
0:23 'm23' (temp 2X3 matrix of float)
|
||||
0:23 Construct mat2x3 (temp 2X3 matrix of float)
|
||||
0:23 'm' (uniform 4X2 matrix of float)
|
||||
0:27 Sequence
|
||||
0:27 move second child to first child (temp structure{global float f})
|
||||
0:27 'sv' (temp structure{global float f})
|
||||
0:27 Construct structure (temp structure{global float f})
|
||||
0:27 Convert int to float (temp float)
|
||||
0:27 'a' (temp int)
|
||||
0:28 Sequence
|
||||
0:28 move second child to first child (temp 2-element array of float)
|
||||
0:28 'ia' (temp 2-element array of float)
|
||||
0:28 Construct float (temp 2-element array of float)
|
||||
0:28 Constant:
|
||||
0:28 3.000000
|
||||
0:28 direct index (temp float)
|
||||
0:28 'i' (smooth in 4-component vector of float)
|
||||
0:28 Constant:
|
||||
0:28 1 (const int)
|
||||
0:29 Sequence
|
||||
0:29 move second child to first child (temp float)
|
||||
0:29 'f1' (temp float)
|
||||
0:29 Constant:
|
||||
0:29 1.000000
|
||||
0:30 Sequence
|
||||
0:30 move second child to first child (temp float)
|
||||
0:30 'f' (temp float)
|
||||
0:30 Convert int to float (temp float)
|
||||
0:30 'a' (temp int)
|
||||
0:31 move second child to first child (temp float)
|
||||
0:31 'f' (temp float)
|
||||
0:31 Convert int to float (temp float)
|
||||
0:31 'a' (temp int)
|
||||
0:33 Sequence
|
||||
0:33 move second child to first child (temp 3-component vector of float)
|
||||
0:33 'v3' (temp 3-component vector of float)
|
||||
0:33 Convert int to float (temp 3-component vector of float)
|
||||
0:33 'iv3' (temp 3-component vector of int)
|
||||
0:34 move second child to first child (temp float)
|
||||
0:34 'f' (temp float)
|
||||
0:34 add (temp float)
|
||||
0:34 'f' (temp float)
|
||||
0:34 Convert int to float (temp float)
|
||||
0:34 'a' (temp int)
|
||||
0:35 move second child to first child (temp float)
|
||||
0:35 'f' (temp float)
|
||||
0:35 subtract (temp float)
|
||||
0:35 Convert int to float (temp float)
|
||||
0:35 'a' (temp int)
|
||||
0:35 'f' (temp float)
|
||||
0:36 add second child into first child (temp float)
|
||||
0:36 'f' (temp float)
|
||||
0:36 Convert int to float (temp float)
|
||||
0:36 'a' (temp int)
|
||||
0:37 move second child to first child (temp float)
|
||||
0:37 'f' (temp float)
|
||||
0:37 subtract (temp float)
|
||||
0:37 Convert int to float (temp float)
|
||||
0:37 'a' (temp int)
|
||||
0:37 'f' (temp float)
|
||||
0:38 multiply second child into first child (temp 3-component vector of float)
|
||||
0:38 'v3' (temp 3-component vector of float)
|
||||
0:38 Convert int to float (temp 3-component vector of float)
|
||||
0:38 'iv3' (temp 3-component vector of int)
|
||||
0:39 move second child to first child (temp 3-component vector of float)
|
||||
0:39 'v3' (temp 3-component vector of float)
|
||||
0:39 divide (temp 3-component vector of float)
|
||||
0:39 Convert int to float (temp 3-component vector of float)
|
||||
0:39 'iv3' (temp 3-component vector of int)
|
||||
0:39 Constant:
|
||||
0:39 2.000000
|
||||
0:40 move second child to first child (temp 3-component vector of float)
|
||||
0:40 'v3' (temp 3-component vector of float)
|
||||
0:40 vector-scale (temp 3-component vector of float)
|
||||
0:40 Constant:
|
||||
0:40 3.000000
|
||||
0:40 Convert int to float (temp 3-component vector of float)
|
||||
0:40 'iv3' (temp 3-component vector of int)
|
||||
0:41 move second child to first child (temp 3-component vector of float)
|
||||
0:41 'v3' (temp 3-component vector of float)
|
||||
0:41 vector-scale (temp 3-component vector of float)
|
||||
0:41 Constant:
|
||||
0:41 2.000000
|
||||
0:41 'v3' (temp 3-component vector of float)
|
||||
0:42 move second child to first child (temp 3-component vector of float)
|
||||
0:42 'v3' (temp 3-component vector of float)
|
||||
0:42 subtract (temp 3-component vector of float)
|
||||
0:42 'v3' (temp 3-component vector of float)
|
||||
0:42 Constant:
|
||||
0:42 2.000000
|
||||
0:43 Test condition and select (temp void)
|
||||
0:43 Condition
|
||||
0:47 logical-or (temp bool)
|
||||
0:46 logical-or (temp bool)
|
||||
0:45 logical-or (temp bool)
|
||||
0:44 logical-or (temp bool)
|
||||
0:43 logical-or (temp bool)
|
||||
0:43 Compare Less Than (temp bool)
|
||||
0:43 'f' (temp float)
|
||||
0:43 Convert int to float (temp float)
|
||||
0:43 'a' (temp int)
|
||||
0:44 Compare Less Than or Equal (temp bool)
|
||||
0:44 Convert int to float (temp float)
|
||||
0:44 'a' (temp int)
|
||||
0:44 'f' (temp float)
|
||||
0:45 Compare Greater Than (temp bool)
|
||||
0:45 'f' (temp float)
|
||||
0:45 Convert int to float (temp float)
|
||||
0:45 'a' (temp int)
|
||||
0:46 Compare Greater Than or Equal (temp bool)
|
||||
0:46 'f' (temp float)
|
||||
0:46 Convert int to float (temp float)
|
||||
0:46 'a' (temp int)
|
||||
0:47 Compare Equal (temp bool)
|
||||
0:47 Convert int to float (temp float)
|
||||
0:47 'a' (temp int)
|
||||
0:47 'f' (temp float)
|
||||
0:48 Compare Not Equal (temp bool)
|
||||
0:48 'f' (temp float)
|
||||
0:48 Convert int to float (temp float)
|
||||
0:48 'a' (temp int)
|
||||
0:43 true case is null
|
||||
0:49 move second child to first child (temp float)
|
||||
0:49 'f' (temp float)
|
||||
0:49 Test condition and select (temp float)
|
||||
0:49 Condition
|
||||
0:49 'b' (temp bool)
|
||||
0:49 true case
|
||||
0:49 Convert int to float (temp float)
|
||||
0:49 'a' (temp int)
|
||||
0:49 false case
|
||||
0:49 'f' (temp float)
|
||||
0:50 move second child to first child (temp float)
|
||||
0:50 'f' (temp float)
|
||||
0:50 Test condition and select (temp float)
|
||||
0:50 Condition
|
||||
0:50 'b' (temp bool)
|
||||
0:50 true case
|
||||
0:50 'f' (temp float)
|
||||
0:50 false case
|
||||
0:50 Convert int to float (temp float)
|
||||
0:50 'a' (temp int)
|
||||
0:51 move second child to first child (temp float)
|
||||
0:51 'f' (temp float)
|
||||
0:51 Convert int to float (temp float)
|
||||
0:51 Test condition and select (temp int)
|
||||
0:51 Condition
|
||||
0:51 'b' (temp bool)
|
||||
0:51 true case
|
||||
0:51 'a' (temp int)
|
||||
0:51 false case
|
||||
0:51 'a' (temp int)
|
||||
0:52 Sequence
|
||||
0:52 move second child to first child (temp structure{global float f})
|
||||
0:52 'news' (temp structure{global float f})
|
||||
0:52 'sv' (temp structure{global float f})
|
||||
0:54 vector swizzle (temp 2-component vector of float)
|
||||
0:54 'i' (smooth in 4-component vector of float)
|
||||
0:54 Sequence
|
||||
0:54 Constant:
|
||||
0:54 0 (const int)
|
||||
0:54 Constant:
|
||||
0:54 1 (const int)
|
||||
0:55 'm' (uniform 4X2 matrix of float)
|
||||
0:56 'm' (uniform 4X2 matrix of float)
|
||||
0:58 'f' (temp float)
|
||||
0:59 move second child to first child (temp float)
|
||||
0:59 'f' (temp float)
|
||||
0:59 Convert int to float (temp float)
|
||||
0:59 'a' (temp int)
|
||||
0:60 'f' (temp float)
|
||||
0:61 'b' (temp bool)
|
||||
0:62 move second child to first child (temp bool)
|
||||
0:62 'b' (temp bool)
|
||||
0:62 'b' (temp bool)
|
||||
0:63 'f' (temp float)
|
||||
0:65 move second child to first child (temp 4-component vector of float)
|
||||
0:65 'gl_FragColor' (fragColor 4-component vector of float FragColor)
|
||||
0:65 texture (global 4-component vector of float)
|
||||
0:65 's2D' (uniform sampler2D)
|
||||
0:65 'centTexCoord' (centroid smooth in 2-component vector of float)
|
||||
0:? Sequence
|
||||
0:79 'gl_FragColor' (fragColor 4-component vector of float FragColor)
|
||||
0:82 direct index (temp float)
|
||||
0:82 'gl_FragColor' (fragColor 4-component vector of float FragColor)
|
||||
0:82 Constant:
|
||||
0:82 0 (const int)
|
||||
0:83 direct index (temp float)
|
||||
0:83 'gl_FragColor' (fragColor 4-component vector of float FragColor)
|
||||
0:83 Constant:
|
||||
0:83 0 (const int)
|
||||
0:84 direct index (temp float)
|
||||
0:84 'centTexCoord' (centroid smooth in 2-component vector of float)
|
||||
0:84 Constant:
|
||||
0:84 0 (const int)
|
||||
0:85 move second child to first child (temp bool)
|
||||
0:85 Comma (temp bool)
|
||||
0:85 'a' (temp int)
|
||||
0:85 'b' (temp bool)
|
||||
0:85 Constant:
|
||||
0:85 true (const bool)
|
||||
0:91 Function Definition: main( (global int)
|
||||
0:91 Function Parameters:
|
||||
0:92 Function Definition: main(i1; (global void)
|
||||
0:92 Function Parameters:
|
||||
0:92 'a' (in int)
|
||||
0:97 Function Definition: foo(f1; (global int)
|
||||
0:97 Function Parameters:
|
||||
0:97 'a' (out float)
|
||||
0:99 Sequence
|
||||
0:99 Branch: Return with expression
|
||||
0:99 Constant:
|
||||
0:99 3.200000
|
||||
0:100 Function Call: foo(f1; (global int)
|
||||
0:100 'a' (out float)
|
||||
0:103 Function Definition: gen(vf3; (global bool)
|
||||
0:103 Function Parameters:
|
||||
0:103 'v' (in 3-component vector of float)
|
||||
0:105 Sequence
|
||||
0:105 Test condition and select (temp void)
|
||||
0:105 Condition
|
||||
0:105 logical-and (temp bool)
|
||||
0:105 Compare Less Than (temp bool)
|
||||
0:105 Absolute value (global float)
|
||||
0:105 direct index (temp float)
|
||||
0:105 'v' (in 3-component vector of float)
|
||||
0:105 Constant:
|
||||
0:105 0 (const int)
|
||||
0:105 Constant:
|
||||
0:105 0.000100
|
||||
0:105 Compare Less Than (temp bool)
|
||||
0:105 Absolute value (global float)
|
||||
0:105 direct index (temp float)
|
||||
0:105 'v' (in 3-component vector of float)
|
||||
0:105 Constant:
|
||||
0:105 1 (const int)
|
||||
0:105 Constant:
|
||||
0:105 0.000100
|
||||
0:105 true case
|
||||
0:106 Branch: Return with expression
|
||||
0:106 Constant:
|
||||
0:106 true (const bool)
|
||||
0:109 Function Definition: v1( (global void)
|
||||
0:109 Function Parameters:
|
||||
0:113 Function Definition: v2( (global void)
|
||||
0:113 Function Parameters:
|
||||
0:115 Sequence
|
||||
0:115 Branch: Return
|
||||
0:118 Function Definition: atest( (global void)
|
||||
0:118 Function Parameters:
|
||||
0:120 Sequence
|
||||
0:120 Sequence
|
||||
0:120 move second child to first child (temp 4-component vector of float)
|
||||
0:120 'v' (temp 4-component vector of float)
|
||||
0:120 direct index (smooth temp 4-component vector of float TexCoord)
|
||||
0:120 'gl_TexCoord' (smooth in 6-element array of 4-component vector of float TexCoord)
|
||||
0:120 Constant:
|
||||
0:120 1 (const int)
|
||||
0:121 add second child into first child (temp 4-component vector of float)
|
||||
0:121 'v' (temp 4-component vector of float)
|
||||
0:121 direct index (smooth temp 4-component vector of float TexCoord)
|
||||
0:121 'gl_TexCoord' (smooth in 6-element array of 4-component vector of float TexCoord)
|
||||
0:121 Constant:
|
||||
0:121 3 (const int)
|
||||
0:139 Function Definition: foo123( (global void)
|
||||
0:139 Function Parameters:
|
||||
0:141 Sequence
|
||||
0:141 Sequence
|
||||
0:141 move second child to first child (temp 2X2 matrix of float)
|
||||
0:141 'r2' (temp 2X2 matrix of float)
|
||||
0:141 component-wise multiply (global 2X2 matrix of float)
|
||||
0:141 'm22' (global 2X2 matrix of float)
|
||||
0:141 'm22' (global 2X2 matrix of float)
|
||||
0:142 Sequence
|
||||
0:142 move second child to first child (temp 3X3 matrix of float)
|
||||
0:142 'r3' (temp 3X3 matrix of float)
|
||||
0:142 component-wise multiply (global 3X3 matrix of float)
|
||||
0:142 'm33' (global 3X3 matrix of float)
|
||||
0:142 'm33' (global 3X3 matrix of float)
|
||||
0:143 Sequence
|
||||
0:143 move second child to first child (temp 4X4 matrix of float)
|
||||
0:143 'r4' (temp 4X4 matrix of float)
|
||||
0:143 component-wise multiply (global 4X4 matrix of float)
|
||||
0:143 'm44' (global 4X4 matrix of float)
|
||||
0:143 'm44' (global 4X4 matrix of float)
|
||||
0:145 Sequence
|
||||
0:145 move second child to first child (temp 2X3 matrix of float)
|
||||
0:145 'r23' (temp 2X3 matrix of float)
|
||||
0:145 component-wise multiply (global 2X3 matrix of float)
|
||||
0:145 'm23' (global 2X3 matrix of float)
|
||||
0:145 'm23' (global 2X3 matrix of float)
|
||||
0:146 Sequence
|
||||
0:146 move second child to first child (temp 2X4 matrix of float)
|
||||
0:146 'r24' (temp 2X4 matrix of float)
|
||||
0:146 component-wise multiply (global 2X4 matrix of float)
|
||||
0:146 'm24' (global 2X4 matrix of float)
|
||||
0:146 'm24' (global 2X4 matrix of float)
|
||||
0:147 Sequence
|
||||
0:147 move second child to first child (temp 3X2 matrix of float)
|
||||
0:147 'r32' (temp 3X2 matrix of float)
|
||||
0:147 component-wise multiply (global 3X2 matrix of float)
|
||||
0:147 'm32' (global 3X2 matrix of float)
|
||||
0:147 'm32' (global 3X2 matrix of float)
|
||||
0:148 Sequence
|
||||
0:148 move second child to first child (temp 3X4 matrix of float)
|
||||
0:148 'r34' (temp 3X4 matrix of float)
|
||||
0:148 component-wise multiply (global 3X4 matrix of float)
|
||||
0:148 'm34' (global 3X4 matrix of float)
|
||||
0:148 'm34' (global 3X4 matrix of float)
|
||||
0:149 Sequence
|
||||
0:149 move second child to first child (temp 4X2 matrix of float)
|
||||
0:149 'r42' (temp 4X2 matrix of float)
|
||||
0:149 component-wise multiply (global 4X2 matrix of float)
|
||||
0:149 'm42' (global 4X2 matrix of float)
|
||||
0:149 'm42' (global 4X2 matrix of float)
|
||||
0:150 Sequence
|
||||
0:150 move second child to first child (temp 4X3 matrix of float)
|
||||
0:150 'r43' (temp 4X3 matrix of float)
|
||||
0:150 component-wise multiply (global 4X3 matrix of float)
|
||||
0:150 'm43' (global 4X3 matrix of float)
|
||||
0:150 'm43' (global 4X3 matrix of float)
|
||||
0:156 Function Definition: matConst( (global void)
|
||||
0:156 Function Parameters:
|
||||
0:? Sequence
|
||||
0:162 Sequence
|
||||
0:162 move second child to first child (temp 4X4 matrix of float)
|
||||
0:162 'm4g' (temp 4X4 matrix of float)
|
||||
0:162 Construct mat4 (temp 4X4 matrix of float)
|
||||
0:162 'v2' (temp 2-component vector of float)
|
||||
0:162 'v3' (temp 3-component vector of float)
|
||||
0:162 'v3' (temp 3-component vector of float)
|
||||
0:162 'v3' (temp 3-component vector of float)
|
||||
0:162 'v3' (temp 3-component vector of float)
|
||||
0:162 'v3' (temp 3-component vector of float)
|
||||
0:163 Sequence
|
||||
0:163 move second child to first child (temp 4X4 matrix of float)
|
||||
0:163 'm4' (temp 4X4 matrix of float)
|
||||
0:163 Construct mat4 (temp 4X4 matrix of float)
|
||||
0:163 'v2' (temp 2-component vector of float)
|
||||
0:163 'v3' (temp 3-component vector of float)
|
||||
0:163 'v3' (temp 3-component vector of float)
|
||||
0:163 'v3' (temp 3-component vector of float)
|
||||
0:163 'v3' (temp 3-component vector of float)
|
||||
0:163 'v2' (temp 2-component vector of float)
|
||||
0:164 Sequence
|
||||
0:164 move second child to first child (temp 3X3 matrix of float)
|
||||
0:164 'm3' (temp 3X3 matrix of float)
|
||||
0:164 Construct mat3 (temp 3X3 matrix of float)
|
||||
0:164 'm4' (temp 4X4 matrix of float)
|
||||
0:165 Sequence
|
||||
0:165 move second child to first child (temp 3X3 matrix of float)
|
||||
0:165 'm3b1' (temp 3X3 matrix of float)
|
||||
0:165 Construct mat3 (temp 3X3 matrix of float)
|
||||
0:165 'm4' (temp 4X4 matrix of float)
|
||||
0:165 'v2' (temp 2-component vector of float)
|
||||
0:166 Sequence
|
||||
0:166 move second child to first child (temp 3X3 matrix of float)
|
||||
0:166 'm3b2' (temp 3X3 matrix of float)
|
||||
0:166 Construct mat3 (temp 3X3 matrix of float)
|
||||
0:166 'm4' (temp 4X4 matrix of float)
|
||||
0:166 'm4' (temp 4X4 matrix of float)
|
||||
0:167 Sequence
|
||||
0:167 move second child to first child (temp 3X2 matrix of float)
|
||||
0:167 'm32' (temp 3X2 matrix of float)
|
||||
0:167 Construct mat3x2 (temp 3X2 matrix of float)
|
||||
0:167 'm4' (temp 4X4 matrix of float)
|
||||
0:168 Sequence
|
||||
0:168 move second child to first child (temp 4X4 matrix of float)
|
||||
0:168 'm4c' (temp 4X4 matrix of float)
|
||||
0:168 Construct mat4 (temp 4X4 matrix of float)
|
||||
0:168 'm32' (temp 3X2 matrix of float)
|
||||
0:169 Sequence
|
||||
0:169 move second child to first child (temp 3X3 matrix of float)
|
||||
0:169 'm3s' (temp 3X3 matrix of float)
|
||||
0:169 Construct mat3 (temp 3X3 matrix of float)
|
||||
0:169 direct index (temp float)
|
||||
0:169 'v2' (temp 2-component vector of float)
|
||||
0:169 Constant:
|
||||
0:169 0 (const int)
|
||||
0:171 Sequence
|
||||
0:171 move second child to first child (temp 2-element array of 3X3 matrix of float)
|
||||
0:171 'm3a1' (temp 2-element array of 3X3 matrix of float)
|
||||
0:171 Construct mat3 (temp 2-element array of 3X3 matrix of float)
|
||||
0:171 'm3s' (temp 3X3 matrix of float)
|
||||
0:171 'm3s' (temp 3X3 matrix of float)
|
||||
0:179 Function Definition: foo2323( (global void)
|
||||
0:179 Function Parameters:
|
||||
0:? Sequence
|
||||
0:184 move second child to first child (temp 4-component vector of float)
|
||||
0:184 'v' (temp 4-component vector of float)
|
||||
0:184 textureLod (global 4-component vector of float)
|
||||
0:184 's2D' (uniform sampler2D)
|
||||
0:184 'v2' (temp 2-component vector of float)
|
||||
0:184 'f' (temp float)
|
||||
0:185 move second child to first child (temp 4-component vector of float)
|
||||
0:185 'v' (temp 4-component vector of float)
|
||||
0:185 textureProjLod (global 4-component vector of float)
|
||||
0:185 's3D' (uniform sampler3D)
|
||||
0:185 'v' (temp 4-component vector of float)
|
||||
0:185 'f' (temp float)
|
||||
0:186 move second child to first child (temp 4-component vector of float)
|
||||
0:186 'v' (temp 4-component vector of float)
|
||||
0:186 textureProjLod (global 4-component vector of float)
|
||||
0:186 's1D' (uniform sampler1D)
|
||||
0:186 'v' (temp 4-component vector of float)
|
||||
0:186 'f' (temp float)
|
||||
0:187 move second child to first child (temp 4-component vector of float)
|
||||
0:187 'v' (temp 4-component vector of float)
|
||||
0:187 textureProjLod (global 4-component vector of float)
|
||||
0:187 's2DS' (uniform sampler2DShadow)
|
||||
0:187 'v' (temp 4-component vector of float)
|
||||
0:187 'f' (temp float)
|
||||
0:189 move second child to first child (temp 4-component vector of float)
|
||||
0:189 'v' (temp 4-component vector of float)
|
||||
0:189 textureGrad (global 4-component vector of float)
|
||||
0:189 's1D' (uniform sampler1D)
|
||||
0:189 'f' (temp float)
|
||||
0:189 'f' (temp float)
|
||||
0:189 'f' (temp float)
|
||||
0:190 move second child to first child (temp 4-component vector of float)
|
||||
0:190 'v' (temp 4-component vector of float)
|
||||
0:190 textureProjGrad (global 4-component vector of float)
|
||||
0:190 's2D' (uniform sampler2D)
|
||||
0:190 'v' (temp 4-component vector of float)
|
||||
0:190 'v2' (temp 2-component vector of float)
|
||||
0:190 'v2' (temp 2-component vector of float)
|
||||
0:191 move second child to first child (temp 4-component vector of float)
|
||||
0:191 'v' (temp 4-component vector of float)
|
||||
0:191 textureProjGrad (global 4-component vector of float)
|
||||
0:191 's2DS' (uniform sampler2DShadow)
|
||||
0:191 'v' (temp 4-component vector of float)
|
||||
0:191 'v2' (temp 2-component vector of float)
|
||||
0:191 'v2' (temp 2-component vector of float)
|
||||
0:196 Function Definition: foo2324( (global void)
|
||||
0:196 Function Parameters:
|
||||
0:? Sequence
|
||||
0:201 move second child to first child (temp 4-component vector of float)
|
||||
0:201 'v' (temp 4-component vector of float)
|
||||
0:201 textureLod (global 4-component vector of float)
|
||||
0:201 's2D' (uniform sampler2D)
|
||||
0:201 'v2' (temp 2-component vector of float)
|
||||
0:201 'f' (temp float)
|
||||
0:202 move second child to first child (temp 4-component vector of float)
|
||||
0:202 'v' (temp 4-component vector of float)
|
||||
0:202 textureProjLod (global 4-component vector of float)
|
||||
0:202 's3D' (uniform sampler3D)
|
||||
0:202 'v' (temp 4-component vector of float)
|
||||
0:202 'f' (temp float)
|
||||
0:203 move second child to first child (temp 4-component vector of float)
|
||||
0:203 'v' (temp 4-component vector of float)
|
||||
0:203 textureProjLod (global 4-component vector of float)
|
||||
0:203 's1D' (uniform sampler1D)
|
||||
0:203 'v' (temp 4-component vector of float)
|
||||
0:203 'f' (temp float)
|
||||
0:204 move second child to first child (temp 4-component vector of float)
|
||||
0:204 'v' (temp 4-component vector of float)
|
||||
0:204 textureProjLod (global 4-component vector of float)
|
||||
0:204 's2DS' (uniform sampler2DShadow)
|
||||
0:204 'v' (temp 4-component vector of float)
|
||||
0:204 'f' (temp float)
|
||||
0:206 move second child to first child (temp 4-component vector of float)
|
||||
0:206 'v' (temp 4-component vector of float)
|
||||
0:206 textureGrad (global 4-component vector of float)
|
||||
0:206 's1D' (uniform sampler1D)
|
||||
0:206 'f' (temp float)
|
||||
0:206 'f' (temp float)
|
||||
0:206 'f' (temp float)
|
||||
0:207 move second child to first child (temp 4-component vector of float)
|
||||
0:207 'v' (temp 4-component vector of float)
|
||||
0:207 textureProjGrad (global 4-component vector of float)
|
||||
0:207 's2D' (uniform sampler2D)
|
||||
0:207 'v' (temp 4-component vector of float)
|
||||
0:207 'v2' (temp 2-component vector of float)
|
||||
0:207 'v2' (temp 2-component vector of float)
|
||||
0:208 move second child to first child (temp 4-component vector of float)
|
||||
0:208 'v' (temp 4-component vector of float)
|
||||
0:208 textureProjGrad (global 4-component vector of float)
|
||||
0:208 's2DS' (uniform sampler2DShadow)
|
||||
0:208 'v' (temp 4-component vector of float)
|
||||
0:208 'v2' (temp 2-component vector of float)
|
||||
0:208 'v2' (temp 2-component vector of float)
|
||||
0:209 'v' (temp 4-component vector of float)
|
||||
0:214 Function Definition: foo121111( (global void)
|
||||
0:214 Function Parameters:
|
||||
0:? Sequence
|
||||
0:217 Sequence
|
||||
0:217 move second child to first child (temp 4-component vector of float)
|
||||
0:217 'v' (temp 4-component vector of float)
|
||||
0:217 texture (global 4-component vector of float)
|
||||
0:217 's2DRbad' (uniform sampler2DRect)
|
||||
0:217 'v2' (temp 2-component vector of float)
|
||||
0:225 Function Definition: foo12111( (global void)
|
||||
0:225 Function Parameters:
|
||||
0:? Sequence
|
||||
0:231 move second child to first child (temp 4-component vector of float)
|
||||
0:231 'v' (temp 4-component vector of float)
|
||||
0:231 texture (global 4-component vector of float)
|
||||
0:231 's2DR' (uniform sampler2DRect)
|
||||
0:231 'v2' (temp 2-component vector of float)
|
||||
0:232 move second child to first child (temp 4-component vector of float)
|
||||
0:232 'v' (temp 4-component vector of float)
|
||||
0:232 textureProj (global 4-component vector of float)
|
||||
0:232 's2DR' (uniform sampler2DRect)
|
||||
0:232 'v3' (temp 3-component vector of float)
|
||||
0:233 move second child to first child (temp 4-component vector of float)
|
||||
0:233 'v' (temp 4-component vector of float)
|
||||
0:233 textureProj (global 4-component vector of float)
|
||||
0:233 's2DR' (uniform sampler2DRect)
|
||||
0:233 'v4' (temp 4-component vector of float)
|
||||
0:234 move second child to first child (temp 4-component vector of float)
|
||||
0:234 'v' (temp 4-component vector of float)
|
||||
0:234 texture (global 4-component vector of float)
|
||||
0:234 's2DRS' (uniform sampler2DRectShadow)
|
||||
0:234 'v3' (temp 3-component vector of float)
|
||||
0:235 move second child to first child (temp 4-component vector of float)
|
||||
0:235 'v' (temp 4-component vector of float)
|
||||
0:235 textureProj (global 4-component vector of float)
|
||||
0:235 's2DRS' (uniform sampler2DRectShadow)
|
||||
0:235 'v4' (temp 4-component vector of float)
|
||||
0:237 move second child to first child (temp 4-component vector of float)
|
||||
0:237 'v' (temp 4-component vector of float)
|
||||
0:237 textureProjGrad (global 4-component vector of float)
|
||||
0:237 's2DRS' (uniform sampler2DRectShadow)
|
||||
0:237 'v' (temp 4-component vector of float)
|
||||
0:237 'v2' (temp 2-component vector of float)
|
||||
0:237 'v2' (temp 2-component vector of float)
|
||||
0:? Linker Objects
|
||||
0:? 'lowp' (global float)
|
||||
0:? 'mediump' (global float)
|
||||
|
@ -77,9 +77,8 @@ ERROR: 0:192: 'gl_ClipDistance' : left of '[' is not of type array, matrix, or
|
||||
ERROR: 0:192: 'assign' : l-value required (can't modify a const)
|
||||
ERROR: 0:195: 'gl_ModelViewMatrix' : identifiers starting with "gl_" are reserved
|
||||
ERROR: 0:200: 'token pasting (##)' : not supported for this version or the enabled extensions
|
||||
ERROR: 0:200: '##' : token pasting not implemented (internal error)
|
||||
ERROR: 0:200: '' : syntax error
|
||||
ERROR: 80 compilation errors. No code generated.
|
||||
ERROR: 0:203: 'token pasting (##)' : not supported for this version or the enabled extensions
|
||||
ERROR: 79 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 120
|
||||
@ -420,7 +419,6 @@ ERROR: node is still EOpNull!
|
||||
0:? 'concall' (const float)
|
||||
0:? 0.295520
|
||||
0:? 'gl_TexCoord' (smooth out 35-element array of 4-component vector of float TexCoord)
|
||||
0:? 'gl_TexCoord' (smooth out 35-element array of 4-component vector of float TexCoord)
|
||||
0:? 'c' (uniform int)
|
||||
0:? 'x' (in 2-component vector of int)
|
||||
0:? 'v2a' (in 2-component vector of float)
|
||||
@ -428,7 +426,8 @@ ERROR: node is still EOpNull!
|
||||
0:? 'c2D' (in 2-component vector of float)
|
||||
0:? 'c3D' (in 3-component vector of float)
|
||||
0:? 'v4' (uniform 4-component vector of float)
|
||||
0:? 'abc' (global int)
|
||||
0:? 'abcdef' (global int)
|
||||
0:? 'qrstuv' (global int)
|
||||
|
||||
|
||||
Linked vertex stage:
|
||||
@ -481,285 +480,6 @@ ERROR: node is still EOpNull!
|
||||
0:43 'gl_PointSize' (invariant gl_PointSize float PointSize)
|
||||
0:43 Constant:
|
||||
0:43 3.800000
|
||||
0:61 Function Definition: overloadB(f1;f1; (global void)
|
||||
0:61 Function Parameters:
|
||||
0:61 '' (in float)
|
||||
0:61 '' (const (read only) float)
|
||||
0:78 Function Definition: foo( (global void)
|
||||
0:78 Function Parameters:
|
||||
0:? Sequence
|
||||
0:83 Function Call: overloadB(f1;f1; (global void)
|
||||
0:83 'f' (temp float)
|
||||
0:83 'f' (temp float)
|
||||
0:84 Function Call: overloadB(f1;f1; (global void)
|
||||
0:84 'f' (temp float)
|
||||
0:84 Constant:
|
||||
0:84 2.000000
|
||||
0:85 Function Call: overloadB(f1;f1; (global void)
|
||||
0:85 Constant:
|
||||
0:85 1.000000
|
||||
0:85 Convert int to float (temp float)
|
||||
0:85 'i' (temp int)
|
||||
0:87 Constant:
|
||||
0:87 0.000000
|
||||
0:88 Function Call: overloadC(i1;i1; (global 2-component vector of float)
|
||||
0:88 Constant:
|
||||
0:88 1 (const int)
|
||||
0:88 'i' (temp int)
|
||||
0:89 Function Call: overloadC(vf2;vf2; (global 2-component vector of float)
|
||||
0:89 Constant:
|
||||
0:89 1.000000
|
||||
0:89 1.000000
|
||||
0:89 Constant:
|
||||
0:89 2.000000
|
||||
0:89 2.000000
|
||||
0:90 Constant:
|
||||
0:90 0.000000
|
||||
0:91 Function Call: overloadC(vf2;vf2; (global 2-component vector of float)
|
||||
0:91 Constant:
|
||||
0:91 1.000000
|
||||
0:91 1.000000
|
||||
0:91 Constant:
|
||||
0:91 2.000000
|
||||
0:91 2.000000
|
||||
0:93 Function Call: overloadD(i1;f1; (global 3-component vector of float)
|
||||
0:93 'i' (temp int)
|
||||
0:93 'f' (temp float)
|
||||
0:94 Function Call: overloadD(f1;i1; (global 3-component vector of float)
|
||||
0:94 'f' (temp float)
|
||||
0:94 'i' (temp int)
|
||||
0:95 Function Call: overloadD(f1;i1; (global 3-component vector of float)
|
||||
0:95 Convert int to float (temp float)
|
||||
0:95 'i' (temp int)
|
||||
0:95 'i' (temp int)
|
||||
0:98 Constant:
|
||||
0:98 0.000000
|
||||
0:100 Constant:
|
||||
0:100 0.841471
|
||||
0:101 texture (global 4-component vector of float)
|
||||
0:101 's2D' (uniform sampler2D)
|
||||
0:101 Constant:
|
||||
0:101 0.000000
|
||||
0:101 0.000000
|
||||
0:102 clamp (global 4-component vector of float)
|
||||
0:102 'attv4' (in 4-component vector of float)
|
||||
0:102 Constant:
|
||||
0:102 0.000000
|
||||
0:102 Constant:
|
||||
0:102 1.000000
|
||||
0:103 clamp (global 4-component vector of float)
|
||||
0:103 Convert int to float (temp 4-component vector of float)
|
||||
0:103 Convert float to int (temp 4-component vector of int)
|
||||
0:103 'attv4' (in 4-component vector of float)
|
||||
0:103 Constant:
|
||||
0:103 0.000000
|
||||
0:103 Constant:
|
||||
0:103 1.000000
|
||||
0:106 Constant:
|
||||
0:106 0.000000
|
||||
0:107 Constant:
|
||||
0:107 0.000000
|
||||
0:108 Constant:
|
||||
0:108 0.000000
|
||||
0:109 Function Call: overloadE(vf2; (global 3-component vector of float)
|
||||
0:109 Constant:
|
||||
0:109 3.300000
|
||||
0:109 3.300000
|
||||
0:110 Function Call: overloadE(mf22; (global 3-component vector of float)
|
||||
0:110 Constant:
|
||||
0:110 0.500000
|
||||
0:110 0.000000
|
||||
0:110 0.000000
|
||||
0:110 0.500000
|
||||
0:111 Constant:
|
||||
0:111 0.000000
|
||||
0:112 Function Call: overloadE(vf2; (global 3-component vector of float)
|
||||
0:112 Constant:
|
||||
0:112 1.000000
|
||||
0:112 1.000000
|
||||
0:115 Function Call: overloadE(f1[2]; (global 3-component vector of float)
|
||||
0:115 'b' (temp 2-element array of float)
|
||||
0:117 Constant:
|
||||
0:117 0.000000
|
||||
0:118 Function Call: overloadF(i1; (global 3-component vector of float)
|
||||
0:118 Constant:
|
||||
0:118 1 (const int)
|
||||
0:128 Function Definition: foo2( (global void)
|
||||
0:128 Function Parameters:
|
||||
0:? Sequence
|
||||
0:135 Comma (global void)
|
||||
0:135 Function Call: outFun(f1;vi2;i1;f1; (global void)
|
||||
0:135 Convert int to float (temp float)
|
||||
0:135 'i' (temp int)
|
||||
0:135 'tempArg' (temp 2-component vector of int)
|
||||
0:135 'i' (temp int)
|
||||
0:135 'f' (temp float)
|
||||
0:135 move second child to first child (temp 2-component vector of float)
|
||||
0:135 'v2' (temp 2-component vector of float)
|
||||
0:135 Convert int to float (temp 2-component vector of float)
|
||||
0:135 'tempArg' (temp 2-component vector of int)
|
||||
0:136 Comma (global int)
|
||||
0:136 move second child to first child (temp int)
|
||||
0:136 'tempReturn' (global int)
|
||||
0:136 Function Call: outFunRet(f1;i1;i1;vi4; (global int)
|
||||
0:136 Convert int to float (temp float)
|
||||
0:136 'i' (temp int)
|
||||
0:136 'tempArg' (temp int)
|
||||
0:136 'i' (temp int)
|
||||
0:136 'tempArg' (temp 4-component vector of int)
|
||||
0:136 move second child to first child (temp float)
|
||||
0:136 'f' (temp float)
|
||||
0:136 Convert int to float (temp float)
|
||||
0:136 'tempArg' (temp int)
|
||||
0:136 move second child to first child (temp 4-component vector of float)
|
||||
0:136 'v4' (temp 4-component vector of float)
|
||||
0:136 Convert int to float (temp 4-component vector of float)
|
||||
0:136 'tempArg' (temp 4-component vector of int)
|
||||
0:136 'tempReturn' (global int)
|
||||
0:137 Sequence
|
||||
0:137 move second child to first child (temp float)
|
||||
0:137 'ret' (temp float)
|
||||
0:137 Convert int to float (temp float)
|
||||
0:137 Comma (global int)
|
||||
0:137 move second child to first child (temp int)
|
||||
0:137 'tempReturn' (global int)
|
||||
0:137 Function Call: outFunRet(f1;i1;i1;vi4; (global int)
|
||||
0:137 Convert int to float (temp float)
|
||||
0:137 'i' (temp int)
|
||||
0:137 'tempArg' (temp int)
|
||||
0:137 'i' (temp int)
|
||||
0:137 'tempArg' (temp 4-component vector of int)
|
||||
0:137 move second child to first child (temp float)
|
||||
0:137 'f' (temp float)
|
||||
0:137 Convert int to float (temp float)
|
||||
0:137 'tempArg' (temp int)
|
||||
0:137 move second child to first child (temp 4-component vector of float)
|
||||
0:137 'v4' (temp 4-component vector of float)
|
||||
0:137 Convert int to float (temp 4-component vector of float)
|
||||
0:137 'tempArg' (temp 4-component vector of int)
|
||||
0:137 'tempReturn' (global int)
|
||||
0:138 Sequence
|
||||
0:138 move second child to first child (temp 2-component vector of float)
|
||||
0:138 'ret2' (temp 2-component vector of float)
|
||||
0:138 Convert int to float (temp 2-component vector of float)
|
||||
0:138 Comma (global 2-component vector of int)
|
||||
0:138 move second child to first child (temp 2-component vector of int)
|
||||
0:138 'tempReturn' (global 2-component vector of int)
|
||||
0:138 Function Call: outFunRet(f1;vi4;i1;vi4; (global 2-component vector of int)
|
||||
0:138 Convert int to float (temp float)
|
||||
0:138 'i' (temp int)
|
||||
0:138 'tempArg' (temp 4-component vector of int)
|
||||
0:138 'i' (temp int)
|
||||
0:138 'tempArg' (temp 4-component vector of int)
|
||||
0:138 move second child to first child (temp 4-component vector of float)
|
||||
0:138 'v4' (temp 4-component vector of float)
|
||||
0:138 Convert int to float (temp 4-component vector of float)
|
||||
0:138 'tempArg' (temp 4-component vector of int)
|
||||
0:138 move second child to first child (temp 4-component vector of float)
|
||||
0:138 'v4' (temp 4-component vector of float)
|
||||
0:138 Convert int to float (temp 4-component vector of float)
|
||||
0:138 'tempArg' (temp 4-component vector of int)
|
||||
0:138 'tempReturn' (global 2-component vector of int)
|
||||
0:139 Sequence
|
||||
0:139 move second child to first child (temp bool)
|
||||
0:139 'b' (temp bool)
|
||||
0:139 any (global bool)
|
||||
0:139 Compare Less Than (global 4-component vector of bool)
|
||||
0:139 'v4' (temp 4-component vector of float)
|
||||
0:139 'attv4' (in 4-component vector of float)
|
||||
0:142 Function Definition: noise( (global void)
|
||||
0:142 Function Parameters:
|
||||
0:144 Sequence
|
||||
0:144 Sequence
|
||||
0:144 move second child to first child (temp float)
|
||||
0:144 'f1' (temp float)
|
||||
0:144 noise (global float)
|
||||
0:144 Constant:
|
||||
0:144 1.000000
|
||||
0:145 Sequence
|
||||
0:145 move second child to first child (temp 2-component vector of float)
|
||||
0:145 'f2' (temp 2-component vector of float)
|
||||
0:145 noise (global 2-component vector of float)
|
||||
0:145 Constant:
|
||||
0:145 1.000000
|
||||
0:145 1.000000
|
||||
0:146 Sequence
|
||||
0:146 move second child to first child (temp 3-component vector of float)
|
||||
0:146 'f3' (temp 3-component vector of float)
|
||||
0:146 noise (global 3-component vector of float)
|
||||
0:146 Constant:
|
||||
0:146 1.000000
|
||||
0:146 1.000000
|
||||
0:146 1.000000
|
||||
0:147 Sequence
|
||||
0:147 move second child to first child (temp 4-component vector of float)
|
||||
0:147 'f4' (temp 4-component vector of float)
|
||||
0:147 noise (global 4-component vector of float)
|
||||
0:147 Constant:
|
||||
0:147 1.000000
|
||||
0:147 1.000000
|
||||
0:147 1.000000
|
||||
0:147 1.000000
|
||||
0:162 Function Definition: foo213( (global void)
|
||||
0:162 Function Parameters:
|
||||
0:164 Sequence
|
||||
0:164 Sequence
|
||||
0:164 move second child to first child (temp float)
|
||||
0:164 'f' (temp float)
|
||||
0:164 Constant:
|
||||
0:164 3.000000
|
||||
0:165 switch
|
||||
0:165 condition
|
||||
0:165 'c' (uniform int)
|
||||
0:165 body
|
||||
0:165 Sequence
|
||||
0:166 case: with expression
|
||||
0:166 Constant:
|
||||
0:166 1 (const int)
|
||||
0:? Sequence
|
||||
0:167 move second child to first child (temp float)
|
||||
0:167 'f' (temp float)
|
||||
0:167 sine (global float)
|
||||
0:167 'f' (temp float)
|
||||
0:168 Branch: Break
|
||||
0:169 case: with expression
|
||||
0:169 Constant:
|
||||
0:169 2 (const int)
|
||||
0:? Sequence
|
||||
0:170 move second child to first child (temp float)
|
||||
0:170 'f' (temp float)
|
||||
0:170 component-wise multiply (temp float)
|
||||
0:170 'f' (temp float)
|
||||
0:170 'f' (temp float)
|
||||
0:171 default:
|
||||
0:? Sequence
|
||||
0:172 move second child to first child (temp float)
|
||||
0:172 'f' (temp float)
|
||||
0:172 Constant:
|
||||
0:172 3.000000
|
||||
0:176 inclusive-or (temp int)
|
||||
0:176 left-shift (temp int)
|
||||
0:176 'i' (temp int)
|
||||
0:176 Constant:
|
||||
0:176 3 (const int)
|
||||
0:176 Constant:
|
||||
0:176 69 (const int)
|
||||
0:180 Sequence
|
||||
0:180 move second child to first child (temp float)
|
||||
0:180 't' (temp float)
|
||||
0:180 Constant:
|
||||
0:180 0.000000
|
||||
0:186 Constant:
|
||||
0:186 0.000000
|
||||
0:188 Constant:
|
||||
0:188 0.000000
|
||||
0:189 Constant:
|
||||
0:189 0.000000
|
||||
0:192 move second child to first child (temp float)
|
||||
0:192 Constant:
|
||||
0:192 0.000000
|
||||
0:192 Constant:
|
||||
0:192 0.300000
|
||||
0:? Linker Objects
|
||||
0:? 'i' (in 4-component vector of float)
|
||||
0:? 'o' (smooth out 4-component vector of float)
|
||||
@ -772,7 +492,6 @@ ERROR: node is still EOpNull!
|
||||
0:? 'concall' (const float)
|
||||
0:? 0.295520
|
||||
0:? 'gl_TexCoord' (smooth out 35-element array of 4-component vector of float TexCoord)
|
||||
0:? 'gl_TexCoord' (smooth out 35-element array of 4-component vector of float TexCoord)
|
||||
0:? 'c' (uniform int)
|
||||
0:? 'x' (in 2-component vector of int)
|
||||
0:? 'v2a' (in 2-component vector of float)
|
||||
@ -780,5 +499,6 @@ ERROR: node is still EOpNull!
|
||||
0:? 'c2D' (in 2-component vector of float)
|
||||
0:? 'c3D' (in 3-component vector of float)
|
||||
0:? 'v4' (uniform 4-component vector of float)
|
||||
0:? 'abc' (global int)
|
||||
0:? 'abcdef' (global int)
|
||||
0:? 'qrstuv' (global int)
|
||||
|
||||
|
@ -383,8 +383,7 @@ ERROR: node is still EOpNull!
|
||||
0:? 'fnop' (noperspective in float)
|
||||
0:? 'gl_ClipDistance' (smooth in implicitly-sized array of float ClipDistance)
|
||||
0:? 'sampC' (uniform samplerCube)
|
||||
0:? 'gl_Color' (smooth in 4-component vector of float Color)
|
||||
0:? 'gl_Color' (flat in 4-component vector of float Color)
|
||||
0:? 'gl_Color' (in 4-component vector of float Color)
|
||||
0:? 'samp2D' (uniform sampler2D)
|
||||
0:? 'samp2DS' (uniform sampler2DShadow)
|
||||
0:? 'samp2DR' (uniform sampler2DRect)
|
||||
@ -428,326 +427,6 @@ ERROR: node is still EOpNull!
|
||||
0:18 'gl_ClipDistance' (smooth in 4-element array of float ClipDistance)
|
||||
0:18 Constant:
|
||||
0:18 3 (const int)
|
||||
0:23 Function Definition: foo( (global void)
|
||||
0:23 Function Parameters:
|
||||
0:25 Sequence
|
||||
0:25 Sequence
|
||||
0:25 move second child to first child (temp 4-component vector of float)
|
||||
0:25 's' (temp 4-component vector of float)
|
||||
0:25 textureGather (global 4-component vector of float)
|
||||
0:25 'sampC' (uniform samplerCube)
|
||||
0:25 Constant:
|
||||
0:25 0.200000
|
||||
0:25 0.200000
|
||||
0:25 0.200000
|
||||
0:30 Function Definition: bar( (global void)
|
||||
0:30 Function Parameters:
|
||||
0:32 Sequence
|
||||
0:32 Sequence
|
||||
0:32 move second child to first child (temp 4-component vector of float)
|
||||
0:32 's' (temp 4-component vector of float)
|
||||
0:32 textureGather (global 4-component vector of float)
|
||||
0:32 'sampC' (uniform samplerCube)
|
||||
0:32 Constant:
|
||||
0:32 0.200000
|
||||
0:32 0.200000
|
||||
0:32 0.200000
|
||||
0:43 Function Definition: bar2( (global void)
|
||||
0:43 Function Parameters:
|
||||
0:45 Sequence
|
||||
0:45 Sequence
|
||||
0:45 move second child to first child (temp 4-component vector of float)
|
||||
0:45 's' (temp 4-component vector of float)
|
||||
0:45 textureGather (global 4-component vector of float)
|
||||
0:45 'sampC' (uniform samplerCube)
|
||||
0:45 Constant:
|
||||
0:45 0.200000
|
||||
0:45 0.200000
|
||||
0:45 0.200000
|
||||
0:49 move second child to first child (temp 3-component vector of bool)
|
||||
0:49 'b3' (temp 3-component vector of bool)
|
||||
0:49 Compare Less Than (global 3-component vector of bool)
|
||||
0:49 'uv3' (temp 3-component vector of uint)
|
||||
0:49 'uv3' (temp 3-component vector of uint)
|
||||
0:50 move second child to first child (temp 3-component vector of bool)
|
||||
0:50 'b3' (temp 3-component vector of bool)
|
||||
0:50 Equal (global 3-component vector of bool)
|
||||
0:50 'uv3' (temp 3-component vector of uint)
|
||||
0:50 'uv3' (temp 3-component vector of uint)
|
||||
0:56 direct index (temp int)
|
||||
0:56 'a1' (temp 1-element array of int)
|
||||
0:56 Constant:
|
||||
0:56 0 (const int)
|
||||
0:57 direct index (temp int)
|
||||
0:57 'a2' (temp 1-element array of int)
|
||||
0:57 Constant:
|
||||
0:57 0 (const int)
|
||||
0:60 direct index (temp int)
|
||||
0:60 'a3' (temp 4-element array of int)
|
||||
0:60 Constant:
|
||||
0:60 3 (const int)
|
||||
0:61 Compare Not Equal (temp bool)
|
||||
0:61 'b3' (temp 3-component vector of bool)
|
||||
0:61 'b3' (temp 3-component vector of bool)
|
||||
0:62 Constant:
|
||||
0:62 false (const bool)
|
||||
0:63 Constant:
|
||||
0:63 false (const bool)
|
||||
0:64 Constant:
|
||||
0:64 false (const bool)
|
||||
0:65 Constant:
|
||||
0:65 true (const bool)
|
||||
0:66 Constant:
|
||||
0:66 false (const bool)
|
||||
0:77 Function Definition: bar23( (global void)
|
||||
0:77 Function Parameters:
|
||||
0:? Sequence
|
||||
0:80 's' (temp 4-component vector of float)
|
||||
0:81 move second child to first child (temp 4-component vector of float)
|
||||
0:81 's' (temp 4-component vector of float)
|
||||
0:81 textureGatherOffset (global 4-component vector of float)
|
||||
0:81 'samp2DR' (uniform sampler2DRect)
|
||||
0:81 Constant:
|
||||
0:81 0.300000
|
||||
0:81 0.300000
|
||||
0:81 Constant:
|
||||
0:81 1 (const int)
|
||||
0:81 1 (const int)
|
||||
0:82 move second child to first child (temp 4-component vector of float)
|
||||
0:82 's' (temp 4-component vector of float)
|
||||
0:82 textureGatherOffset (global 4-component vector of float)
|
||||
0:82 'samp2D' (uniform sampler2D)
|
||||
0:82 Constant:
|
||||
0:82 0.300000
|
||||
0:82 0.300000
|
||||
0:82 Constant:
|
||||
0:82 1 (const int)
|
||||
0:82 1 (const int)
|
||||
0:83 move second child to first child (temp 4-component vector of float)
|
||||
0:83 's' (temp 4-component vector of float)
|
||||
0:83 textureGatherOffset (global 4-component vector of float)
|
||||
0:83 'samp2DA' (uniform sampler2DArray)
|
||||
0:83 Constant:
|
||||
0:83 0.300000
|
||||
0:83 0.300000
|
||||
0:83 0.300000
|
||||
0:83 Constant:
|
||||
0:83 1 (const int)
|
||||
0:83 1 (const int)
|
||||
0:84 move second child to first child (temp 4-component vector of float)
|
||||
0:84 's' (temp 4-component vector of float)
|
||||
0:84 textureGatherOffset (global 4-component vector of float)
|
||||
0:84 'samp2DS' (uniform sampler2DShadow)
|
||||
0:84 Constant:
|
||||
0:84 0.300000
|
||||
0:84 0.300000
|
||||
0:84 Constant:
|
||||
0:84 1.300000
|
||||
0:84 Constant:
|
||||
0:84 1 (const int)
|
||||
0:84 1 (const int)
|
||||
0:85 move second child to first child (temp 4-component vector of float)
|
||||
0:85 's' (temp 4-component vector of float)
|
||||
0:85 textureGatherOffset (global 4-component vector of float)
|
||||
0:85 'samp2D' (uniform sampler2D)
|
||||
0:85 Constant:
|
||||
0:85 0.300000
|
||||
0:85 0.300000
|
||||
0:85 Constant:
|
||||
0:85 1 (const int)
|
||||
0:85 1 (const int)
|
||||
0:85 Constant:
|
||||
0:85 2 (const int)
|
||||
0:90 Function Definition: bar234( (global void)
|
||||
0:90 Function Parameters:
|
||||
0:? Sequence
|
||||
0:93 move second child to first child (temp 4-component vector of float)
|
||||
0:93 's' (temp 4-component vector of float)
|
||||
0:93 textureGatherOffset (global 4-component vector of float)
|
||||
0:93 'samp2D' (uniform sampler2D)
|
||||
0:93 Constant:
|
||||
0:93 0.300000
|
||||
0:93 0.300000
|
||||
0:93 Constant:
|
||||
0:93 1 (const int)
|
||||
0:93 1 (const int)
|
||||
0:94 move second child to first child (temp 4-component vector of float)
|
||||
0:94 's' (temp 4-component vector of float)
|
||||
0:94 textureGatherOffset (global 4-component vector of float)
|
||||
0:94 'samp2DA' (uniform sampler2DArray)
|
||||
0:94 Constant:
|
||||
0:94 0.300000
|
||||
0:94 0.300000
|
||||
0:94 0.300000
|
||||
0:94 Constant:
|
||||
0:94 1 (const int)
|
||||
0:94 1 (const int)
|
||||
0:95 move second child to first child (temp 4-component vector of float)
|
||||
0:95 's' (temp 4-component vector of float)
|
||||
0:95 textureGatherOffset (global 4-component vector of float)
|
||||
0:95 'samp2DR' (uniform sampler2DRect)
|
||||
0:95 Constant:
|
||||
0:95 0.300000
|
||||
0:95 0.300000
|
||||
0:95 Constant:
|
||||
0:95 1 (const int)
|
||||
0:95 1 (const int)
|
||||
0:96 move second child to first child (temp 4-component vector of float)
|
||||
0:96 's' (temp 4-component vector of float)
|
||||
0:96 textureGatherOffset (global 4-component vector of float)
|
||||
0:96 'samp2DS' (uniform sampler2DShadow)
|
||||
0:96 Constant:
|
||||
0:96 0.300000
|
||||
0:96 0.300000
|
||||
0:96 Constant:
|
||||
0:96 1.300000
|
||||
0:96 Constant:
|
||||
0:96 1 (const int)
|
||||
0:96 1 (const int)
|
||||
0:97 move second child to first child (temp 4-component vector of float)
|
||||
0:97 's' (temp 4-component vector of float)
|
||||
0:97 textureGatherOffset (global 4-component vector of float)
|
||||
0:97 'samp2D' (uniform sampler2D)
|
||||
0:97 Constant:
|
||||
0:97 0.300000
|
||||
0:97 0.300000
|
||||
0:97 Constant:
|
||||
0:97 1 (const int)
|
||||
0:97 1 (const int)
|
||||
0:97 Constant:
|
||||
0:97 2 (const int)
|
||||
0:107 Function Definition: bar235( (global void)
|
||||
0:107 Function Parameters:
|
||||
0:109 Sequence
|
||||
0:109 Sequence
|
||||
0:109 move second child to first child (temp 3-component vector of int)
|
||||
0:109 'a' (temp 3-component vector of int)
|
||||
0:109 textureSize (global 3-component vector of int)
|
||||
0:109 'Sca' (uniform samplerCubeArray)
|
||||
0:109 Constant:
|
||||
0:109 3 (const int)
|
||||
0:110 Sequence
|
||||
0:110 move second child to first child (temp 4-component vector of float)
|
||||
0:110 'b' (temp 4-component vector of float)
|
||||
0:110 texture (global 4-component vector of float)
|
||||
0:110 'Sca' (uniform samplerCubeArray)
|
||||
0:110 'i' (smooth in 4-component vector of float)
|
||||
0:111 Sequence
|
||||
0:111 move second child to first child (temp 4-component vector of int)
|
||||
0:111 'c' (temp 4-component vector of int)
|
||||
0:111 texture (global 4-component vector of int)
|
||||
0:111 'Isca' (uniform isamplerCubeArray)
|
||||
0:111 'i' (smooth in 4-component vector of float)
|
||||
0:111 Constant:
|
||||
0:111 0.700000
|
||||
0:112 Sequence
|
||||
0:112 move second child to first child (temp 4-component vector of uint)
|
||||
0:112 'd' (temp 4-component vector of uint)
|
||||
0:112 texture (global 4-component vector of uint)
|
||||
0:112 'Usca' (uniform usamplerCubeArray)
|
||||
0:112 'i' (smooth in 4-component vector of float)
|
||||
0:114 move second child to first child (temp 4-component vector of float)
|
||||
0:114 'b' (temp 4-component vector of float)
|
||||
0:114 textureLod (global 4-component vector of float)
|
||||
0:114 'Sca' (uniform samplerCubeArray)
|
||||
0:114 'i' (smooth in 4-component vector of float)
|
||||
0:114 Constant:
|
||||
0:114 1.700000
|
||||
0:115 move second child to first child (temp 3-component vector of int)
|
||||
0:115 'a' (temp 3-component vector of int)
|
||||
0:115 textureSize (global 3-component vector of int)
|
||||
0:115 'Scas' (uniform samplerCubeArrayShadow)
|
||||
0:115 direct index (temp int)
|
||||
0:115 'a' (temp 3-component vector of int)
|
||||
0:115 Constant:
|
||||
0:115 0 (const int)
|
||||
0:116 Sequence
|
||||
0:116 move second child to first child (temp float)
|
||||
0:116 'f' (temp float)
|
||||
0:116 texture (global float)
|
||||
0:116 'Scas' (uniform samplerCubeArrayShadow)
|
||||
0:116 'i' (smooth in 4-component vector of float)
|
||||
0:116 direct index (temp float)
|
||||
0:116 'b' (temp 4-component vector of float)
|
||||
0:116 Constant:
|
||||
0:116 1 (const int)
|
||||
0:117 move second child to first child (temp 4-component vector of int)
|
||||
0:117 'c' (temp 4-component vector of int)
|
||||
0:117 textureGrad (global 4-component vector of int)
|
||||
0:117 'Isca' (uniform isamplerCubeArray)
|
||||
0:117 'i' (smooth in 4-component vector of float)
|
||||
0:117 Constant:
|
||||
0:117 0.100000
|
||||
0:117 0.100000
|
||||
0:117 0.100000
|
||||
0:117 Constant:
|
||||
0:117 0.200000
|
||||
0:117 0.200000
|
||||
0:117 0.200000
|
||||
0:129 Function Definition: bar23444( (global void)
|
||||
0:129 Function Parameters:
|
||||
0:? Sequence
|
||||
0:132 Sequence
|
||||
0:132 move second child to first child (temp float)
|
||||
0:132 'a1' (temp float)
|
||||
0:132 direct index (temp float)
|
||||
0:132 direct index (temp 3-component vector of float)
|
||||
0:132 'm43' (temp 4X3 matrix of float)
|
||||
0:132 Constant:
|
||||
0:132 3 (const int)
|
||||
0:132 Constant:
|
||||
0:132 1 (const int)
|
||||
0:134 Sequence
|
||||
0:134 move second child to first child (temp int)
|
||||
0:134 'a2' (temp int)
|
||||
0:134 Constant:
|
||||
0:134 4 (const int)
|
||||
0:135 add second child into first child (temp int)
|
||||
0:135 'a2' (temp int)
|
||||
0:135 Constant:
|
||||
0:135 3 (const int)
|
||||
0:136 add second child into first child (temp int)
|
||||
0:136 'a2' (temp int)
|
||||
0:136 Constant:
|
||||
0:136 3 (const int)
|
||||
0:137 Sequence
|
||||
0:137 move second child to first child (temp float)
|
||||
0:137 'b' (const (read only) float)
|
||||
0:137 component-wise multiply (temp float)
|
||||
0:137 Constant:
|
||||
0:137 2.000000
|
||||
0:137 'a1' (temp float)
|
||||
0:138 move second child to first child (temp float)
|
||||
0:138 direct index (temp float)
|
||||
0:138 'a' (global 3-component vector of float)
|
||||
0:138 Constant:
|
||||
0:138 0 (const int)
|
||||
0:138 Constant:
|
||||
0:138 -1.000000
|
||||
0:140 Constant:
|
||||
0:140 0.000000
|
||||
0:141 Constant:
|
||||
0:141 0.000000
|
||||
0:143 Constant:
|
||||
0:143 1 (const int)
|
||||
0:162 Function Definition: qux2( (global void)
|
||||
0:162 Function Parameters:
|
||||
0:? Sequence
|
||||
0:165 imageAtomicCompSwap (global int)
|
||||
0:165 'iimg2D' (layout(r32i ) uniform iimage2D)
|
||||
0:165 Construct ivec2 (temp 2-component vector of int)
|
||||
0:165 'i' (temp int)
|
||||
0:165 'i' (temp int)
|
||||
0:165 'i' (temp int)
|
||||
0:165 'i' (temp int)
|
||||
0:166 Sequence
|
||||
0:166 move second child to first child (temp 4-component vector of int)
|
||||
0:166 'pos' (temp 4-component vector of int)
|
||||
0:166 imageLoad (global 4-component vector of int)
|
||||
0:166 'iimg2D' (layout(r32i ) uniform iimage2D)
|
||||
0:166 Construct ivec2 (temp 2-component vector of int)
|
||||
0:166 'i' (temp int)
|
||||
0:166 'i' (temp int)
|
||||
0:? Linker Objects
|
||||
0:? 'a' (global 3-component vector of float)
|
||||
0:? 'b' (global float)
|
||||
@ -759,8 +438,7 @@ ERROR: node is still EOpNull!
|
||||
0:? 'fnop' (noperspective in float)
|
||||
0:? 'gl_ClipDistance' (smooth in 4-element array of float ClipDistance)
|
||||
0:? 'sampC' (uniform samplerCube)
|
||||
0:? 'gl_Color' (smooth in 4-component vector of float Color)
|
||||
0:? 'gl_Color' (flat in 4-component vector of float Color)
|
||||
0:? 'gl_Color' (in 4-component vector of float Color)
|
||||
0:? 'samp2D' (uniform sampler2D)
|
||||
0:? 'samp2DS' (uniform sampler2DShadow)
|
||||
0:? 'samp2DR' (uniform sampler2DRect)
|
||||
|
@ -3,9 +3,7 @@ ERROR: 0:59: 'gl_InstanceID' : undeclared identifier
|
||||
ERROR: 0:59: '=' : cannot convert from 'temp float' to 'temp int'
|
||||
ERROR: 0:61: 'texelFetch' : no matching overloaded function found
|
||||
ERROR: 0:61: 'assign' : cannot convert from 'const float' to 'temp int'
|
||||
ERROR: 0:75: '##' : token pasting not implemented (internal error)
|
||||
ERROR: 0:75: '' : syntax error
|
||||
ERROR: 6 compilation errors. No code generated.
|
||||
ERROR: 4 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 130
|
||||
@ -149,7 +147,8 @@ ERROR: node is still EOpNull!
|
||||
0:? 'v4' (uniform 4-component vector of float)
|
||||
0:? 'gl_ClipDistance' (smooth out implicitly-sized array of float ClipDistance)
|
||||
0:? 'gl_TexCoord' (smooth out implicitly-sized array of 4-component vector of float TexCoord)
|
||||
0:? 'abc' (global int)
|
||||
0:? 'abcdef' (global int)
|
||||
0:? 'qrstuv' (global int)
|
||||
0:? 'gl_VertexID' (gl_VertexId int VertexId)
|
||||
|
||||
|
||||
@ -269,23 +268,6 @@ ERROR: node is still EOpNull!
|
||||
0:46 1 (const int)
|
||||
0:46 Constant:
|
||||
0:46 0.300000
|
||||
0:57 Function Definition: foo88( (global void)
|
||||
0:57 Function Parameters:
|
||||
0:? Sequence
|
||||
0:61 'id' (temp int)
|
||||
0:63 'gl_ClipVertex' (gl_ClipVertex 4-component vector of float ClipVertex)
|
||||
0:64 'gl_Color' (in 4-component vector of float Color)
|
||||
0:65 direct index (temp structure{global 4-component vector of float ambient, global 4-component vector of float diffuse, global 4-component vector of float specular, global 4-component vector of float position, global 4-component vector of float halfVector, global 3-component vector of float spotDirection, global float spotExponent, global float spotCutoff, global float spotCosCutoff, global float constantAttenuation, global float linearAttenuation, global float quadraticAttenuation})
|
||||
0:65 'gl_LightSource' (uniform 32-element array of structure{global 4-component vector of float ambient, global 4-component vector of float diffuse, global 4-component vector of float specular, global 4-component vector of float position, global 4-component vector of float halfVector, global 3-component vector of float spotDirection, global float spotExponent, global float spotCutoff, global float spotCosCutoff, global float constantAttenuation, global float linearAttenuation, global float quadraticAttenuation})
|
||||
0:65 Constant:
|
||||
0:65 0 (const int)
|
||||
0:66 far: direct index for structure (global float)
|
||||
0:66 'gl_DepthRange' (uniform structure{global float near, global float far, global float diff})
|
||||
0:66 Constant:
|
||||
0:66 1 (const int)
|
||||
0:67 'gl_TexCoord' (smooth out 1-element array of 4-component vector of float TexCoord)
|
||||
0:68 'gl_FogFragCoord' (smooth out float FogFragCoord)
|
||||
0:69 'gl_FrontColor' (smooth out 4-component vector of float FrontColor)
|
||||
0:? Linker Objects
|
||||
0:? 'c' (uniform int)
|
||||
0:? 'us2D' (uniform usampler2D)
|
||||
@ -298,6 +280,7 @@ ERROR: node is still EOpNull!
|
||||
0:? 'v4' (uniform 4-component vector of float)
|
||||
0:? 'gl_ClipDistance' (smooth out 2-element array of float ClipDistance)
|
||||
0:? 'gl_TexCoord' (smooth out 1-element array of 4-component vector of float TexCoord)
|
||||
0:? 'abc' (global int)
|
||||
0:? 'abcdef' (global int)
|
||||
0:? 'qrstuv' (global int)
|
||||
0:? 'gl_VertexID' (gl_VertexId int VertexId)
|
||||
|
||||
|
@ -104,7 +104,6 @@ ERROR: node is still EOpNull!
|
||||
0:? 'i' (smooth in 4-component vector of float)
|
||||
0:? 'o' (out 4-component vector of float)
|
||||
0:? 'gl_ClipDistance' (smooth in 5-element array of float ClipDistance)
|
||||
0:? 'gl_ClipDistance' (smooth in 5-element array of float ClipDistance)
|
||||
0:? 's' (smooth in structure{global float f})
|
||||
0:? 'patch' (global float)
|
||||
0:? 'vl' (layout(location=3 ) smooth in 4-component vector of float)
|
||||
@ -137,51 +136,6 @@ ERROR: node is still EOpNull!
|
||||
0:22 'patch' (global float)
|
||||
0:22 Constant:
|
||||
0:22 3.100000
|
||||
0:38 Function Definition: foo( (global void)
|
||||
0:38 Function Parameters:
|
||||
0:40 Sequence
|
||||
0:40 Sequence
|
||||
0:40 move second child to first child (temp 2-component vector of float)
|
||||
0:40 'r1' (temp 2-component vector of float)
|
||||
0:40 modf (global 2-component vector of float)
|
||||
0:40 vector swizzle (temp 2-component vector of float)
|
||||
0:40 'v' (smooth in 4-component vector of float)
|
||||
0:40 Sequence
|
||||
0:40 Constant:
|
||||
0:40 0 (const int)
|
||||
0:40 Constant:
|
||||
0:40 1 (const int)
|
||||
0:40 vector swizzle (temp 2-component vector of float)
|
||||
0:40 'v' (smooth in 4-component vector of float)
|
||||
0:40 Sequence
|
||||
0:40 Constant:
|
||||
0:40 2 (const int)
|
||||
0:40 Constant:
|
||||
0:40 3 (const int)
|
||||
0:41 Sequence
|
||||
0:41 move second child to first child (temp 2-component vector of float)
|
||||
0:41 'r2' (temp 2-component vector of float)
|
||||
0:41 modf (global 2-component vector of float)
|
||||
0:41 vector swizzle (temp 2-component vector of float)
|
||||
0:41 'o' (out 4-component vector of float)
|
||||
0:41 Sequence
|
||||
0:41 Constant:
|
||||
0:41 0 (const int)
|
||||
0:41 Constant:
|
||||
0:41 1 (const int)
|
||||
0:41 vector swizzle (temp 2-component vector of float)
|
||||
0:41 'o' (out 4-component vector of float)
|
||||
0:41 Sequence
|
||||
0:41 Constant:
|
||||
0:41 2 (const int)
|
||||
0:41 Constant:
|
||||
0:41 3 (const int)
|
||||
0:42 move second child to first child (temp float)
|
||||
0:42 direct index (temp float)
|
||||
0:42 'o' (out 4-component vector of float)
|
||||
0:42 Constant:
|
||||
0:42 2 (const int)
|
||||
0:42 Function Call: fooi( (global float)
|
||||
0:47 Sequence
|
||||
0:47 move second child to first child (temp float)
|
||||
0:47 'i1' (global float)
|
||||
@ -199,19 +153,11 @@ ERROR: node is still EOpNull!
|
||||
0:48 'i2' (global float)
|
||||
0:48 Constant:
|
||||
0:48 102.000000
|
||||
0:50 Function Definition: fooi( (global float)
|
||||
0:50 Function Parameters:
|
||||
0:52 Sequence
|
||||
0:52 Branch: Return with expression
|
||||
0:52 add (temp float)
|
||||
0:52 'i1' (global float)
|
||||
0:52 'i2' (global float)
|
||||
0:? Linker Objects
|
||||
0:? 'v' (smooth in 4-component vector of float)
|
||||
0:? 'i' (smooth in 4-component vector of float)
|
||||
0:? 'o' (out 4-component vector of float)
|
||||
0:? 'gl_ClipDistance' (smooth in 5-element array of float ClipDistance)
|
||||
0:? 'gl_ClipDistance' (smooth in 5-element array of float ClipDistance)
|
||||
0:? 's' (smooth in structure{global float f})
|
||||
0:? 'patch' (global float)
|
||||
0:? 'vl' (layout(location=3 ) smooth in 4-component vector of float)
|
||||
|
@ -124,10 +124,7 @@ ERROR: node is still EOpNull!
|
||||
0:? 'locBad' (layout(location=9 ) in 4-component vector of float)
|
||||
0:? 'loc' (layout(location=9 ) in 4-component vector of float)
|
||||
0:? 'gl_PointSize' (gl_PointSize float PointSize)
|
||||
0:? 'gl_PointSize' (gl_PointSize float PointSize)
|
||||
0:? 'gl_ClipVertex' (gl_ClipVertex 4-component vector of float ClipVertex)
|
||||
0:? 'gl_ClipVertex' (gl_ClipVertex 4-component vector of float ClipVertex)
|
||||
0:? 'gl_FogFragCoord' (smooth out float FogFragCoord)
|
||||
0:? 'gl_FogFragCoord' (smooth out float FogFragCoord)
|
||||
0:? 's2dr' (uniform sampler2DRect)
|
||||
0:? 's2drs' (uniform sampler2DRectShadow)
|
||||
@ -181,71 +178,6 @@ ERROR: node is still EOpNull!
|
||||
0:18 'gl_TexCoord' (smooth out 1-element array of 4-component vector of float TexCoord)
|
||||
0:19 'gl_FogFragCoord' (smooth out float FogFragCoord)
|
||||
0:20 'gl_FrontColor' (smooth out 4-component vector of float FrontColor)
|
||||
0:48 Function Definition: foo( (global void)
|
||||
0:48 Function Parameters:
|
||||
0:50 Sequence
|
||||
0:50 Sequence
|
||||
0:50 move second child to first child (temp 4-component vector of float)
|
||||
0:50 'v' (temp 4-component vector of float)
|
||||
0:50 textureFetch (global 4-component vector of float)
|
||||
0:50 's2dr' (uniform sampler2DRect)
|
||||
0:50 'itloc2' (in 2-component vector of int)
|
||||
0:51 add second child into first child (temp 4-component vector of float)
|
||||
0:51 'v' (temp 4-component vector of float)
|
||||
0:51 Constant:
|
||||
0:51 0.000000
|
||||
0:52 add second child into first child (temp 4-component vector of float)
|
||||
0:52 'v' (temp 4-component vector of float)
|
||||
0:52 texture (global 4-component vector of float)
|
||||
0:52 's2dr' (uniform sampler2DRect)
|
||||
0:52 'tloc2' (in 2-component vector of float)
|
||||
0:53 add second child into first child (temp 4-component vector of float)
|
||||
0:53 'v' (temp 4-component vector of float)
|
||||
0:53 Constant:
|
||||
0:53 0.000000
|
||||
0:54 add second child into first child (temp 4-component vector of float)
|
||||
0:54 'v' (temp 4-component vector of float)
|
||||
0:54 texture (global float)
|
||||
0:54 's2drs' (uniform sampler2DRectShadow)
|
||||
0:54 'tloc3' (in 3-component vector of float)
|
||||
0:55 add second child into first child (temp 4-component vector of float)
|
||||
0:55 'v' (temp 4-component vector of float)
|
||||
0:55 textureProj (global 4-component vector of float)
|
||||
0:55 's2dr' (uniform sampler2DRect)
|
||||
0:55 'tloc3' (in 3-component vector of float)
|
||||
0:56 add second child into first child (temp 4-component vector of float)
|
||||
0:56 'v' (temp 4-component vector of float)
|
||||
0:56 textureProj (global 4-component vector of float)
|
||||
0:56 's2dr' (uniform sampler2DRect)
|
||||
0:56 'tloc4' (in 4-component vector of float)
|
||||
0:57 add second child into first child (temp 4-component vector of float)
|
||||
0:57 'v' (temp 4-component vector of float)
|
||||
0:57 textureProjGradOffset (global 4-component vector of float)
|
||||
0:57 's2dr' (uniform sampler2DRect)
|
||||
0:57 'tloc4' (in 4-component vector of float)
|
||||
0:57 Constant:
|
||||
0:57 0.000000
|
||||
0:57 0.000000
|
||||
0:57 Constant:
|
||||
0:57 0.000000
|
||||
0:57 0.000000
|
||||
0:57 Constant:
|
||||
0:57 1 (const int)
|
||||
0:57 2 (const int)
|
||||
0:58 add second child into first child (temp 4-component vector of float)
|
||||
0:58 'v' (temp 4-component vector of float)
|
||||
0:58 textureProjGradOffset (global float)
|
||||
0:58 's2drs' (uniform sampler2DRectShadow)
|
||||
0:58 'tloc4' (in 4-component vector of float)
|
||||
0:58 Constant:
|
||||
0:58 0.000000
|
||||
0:58 0.000000
|
||||
0:58 Constant:
|
||||
0:58 0.000000
|
||||
0:58 0.000000
|
||||
0:58 Constant:
|
||||
0:58 1 (const int)
|
||||
0:58 2 (const int)
|
||||
0:? Linker Objects
|
||||
0:? 'sbuf' (uniform isamplerBuffer)
|
||||
0:? 'anon@0' (layout(column_major std140 ) uniform block{layout(column_major std140 offset=0 ) uniform int anonMem})
|
||||
@ -254,10 +186,7 @@ ERROR: node is still EOpNull!
|
||||
0:? 'locBad' (layout(location=9 ) in 4-component vector of float)
|
||||
0:? 'loc' (layout(location=9 ) in 4-component vector of float)
|
||||
0:? 'gl_PointSize' (gl_PointSize float PointSize)
|
||||
0:? 'gl_PointSize' (gl_PointSize float PointSize)
|
||||
0:? 'gl_ClipVertex' (gl_ClipVertex 4-component vector of float ClipVertex)
|
||||
0:? 'gl_ClipVertex' (gl_ClipVertex 4-component vector of float ClipVertex)
|
||||
0:? 'gl_FogFragCoord' (smooth out float FogFragCoord)
|
||||
0:? 'gl_FogFragCoord' (smooth out float FogFragCoord)
|
||||
0:? 's2dr' (uniform sampler2DRect)
|
||||
0:? 's2drs' (uniform sampler2DRectShadow)
|
||||
|
@ -108,7 +108,6 @@ ERROR: node is still EOpNull!
|
||||
0:49 'gl_PrimitiveID' (flat in int PrimitiveID)
|
||||
0:? Linker Objects
|
||||
0:? 'gl_FragCoord' (gl_FragCoord 4-component vector of float FragCoord)
|
||||
0:? 'gl_FragCoord' (gl_FragCoord 4-component vector of float FragCoord)
|
||||
0:? 'foo' (smooth in 4-component vector of float)
|
||||
0:? 's' (smooth in structure{global float f})
|
||||
0:? 'patch' (global float)
|
||||
@ -142,93 +141,8 @@ ERROR: node is still EOpNull!
|
||||
0:18 'patch' (global float)
|
||||
0:18 Constant:
|
||||
0:18 3.100000
|
||||
0:31 Function Definition: barWxyz( (global void)
|
||||
0:31 Function Parameters:
|
||||
0:33 Sequence
|
||||
0:33 Sequence
|
||||
0:33 move second child to first child (temp 2-component vector of int)
|
||||
0:33 't11' (temp 2-component vector of int)
|
||||
0:33 textureSize (global 2-component vector of int)
|
||||
0:33 'sms' (uniform sampler2DMS)
|
||||
0:34 Sequence
|
||||
0:34 move second child to first child (temp 2-component vector of int)
|
||||
0:34 't12' (temp 2-component vector of int)
|
||||
0:34 textureSize (global 2-component vector of int)
|
||||
0:34 'isms' (uniform isampler2DMS)
|
||||
0:35 Sequence
|
||||
0:35 move second child to first child (temp 2-component vector of int)
|
||||
0:35 't13' (temp 2-component vector of int)
|
||||
0:35 textureSize (global 2-component vector of int)
|
||||
0:35 'usms' (uniform usampler2DMS)
|
||||
0:36 Sequence
|
||||
0:36 move second child to first child (temp 3-component vector of int)
|
||||
0:36 't21' (temp 3-component vector of int)
|
||||
0:36 textureSize (global 3-component vector of int)
|
||||
0:36 'smsa' (uniform sampler2DMSArray)
|
||||
0:37 Sequence
|
||||
0:37 move second child to first child (temp 3-component vector of int)
|
||||
0:37 't22' (temp 3-component vector of int)
|
||||
0:37 textureSize (global 3-component vector of int)
|
||||
0:37 'ismsa' (uniform isampler2DMSArray)
|
||||
0:38 Sequence
|
||||
0:38 move second child to first child (temp 3-component vector of int)
|
||||
0:38 't23' (temp 3-component vector of int)
|
||||
0:38 textureSize (global 3-component vector of int)
|
||||
0:38 'usmsa' (uniform usampler2DMSArray)
|
||||
0:39 Sequence
|
||||
0:39 move second child to first child (temp 4-component vector of float)
|
||||
0:39 't31' (temp 4-component vector of float)
|
||||
0:39 textureFetch (global 4-component vector of float)
|
||||
0:39 'sms' (uniform sampler2DMS)
|
||||
0:39 'p2' (flat in 2-component vector of int)
|
||||
0:39 'samp' (flat in int)
|
||||
0:40 Sequence
|
||||
0:40 move second child to first child (temp 4-component vector of int)
|
||||
0:40 't32' (temp 4-component vector of int)
|
||||
0:40 textureFetch (global 4-component vector of int)
|
||||
0:40 'isms' (uniform isampler2DMS)
|
||||
0:40 'p2' (flat in 2-component vector of int)
|
||||
0:40 'samp' (flat in int)
|
||||
0:41 Sequence
|
||||
0:41 move second child to first child (temp 4-component vector of uint)
|
||||
0:41 't33' (temp 4-component vector of uint)
|
||||
0:41 textureFetch (global 4-component vector of uint)
|
||||
0:41 'usms' (uniform usampler2DMS)
|
||||
0:41 'p2' (flat in 2-component vector of int)
|
||||
0:41 Constant:
|
||||
0:41 3 (const int)
|
||||
0:42 Sequence
|
||||
0:42 move second child to first child (temp 4-component vector of float)
|
||||
0:42 't41' (temp 4-component vector of float)
|
||||
0:42 textureFetch (global 4-component vector of float)
|
||||
0:42 'smsa' (uniform sampler2DMSArray)
|
||||
0:42 'p3' (flat in 3-component vector of int)
|
||||
0:42 'samp' (flat in int)
|
||||
0:43 Sequence
|
||||
0:43 move second child to first child (temp 4-component vector of int)
|
||||
0:43 't42' (temp 4-component vector of int)
|
||||
0:43 textureFetch (global 4-component vector of int)
|
||||
0:43 'ismsa' (uniform isampler2DMSArray)
|
||||
0:43 Constant:
|
||||
0:43 2 (const int)
|
||||
0:43 2 (const int)
|
||||
0:43 2 (const int)
|
||||
0:43 'samp' (flat in int)
|
||||
0:44 Sequence
|
||||
0:44 move second child to first child (temp 4-component vector of uint)
|
||||
0:44 't43' (temp 4-component vector of uint)
|
||||
0:44 textureFetch (global 4-component vector of uint)
|
||||
0:44 'usmsa' (uniform usampler2DMSArray)
|
||||
0:44 'p3' (flat in 3-component vector of int)
|
||||
0:44 'samp' (flat in int)
|
||||
0:47 Function Definition: primitiveID( (global int)
|
||||
0:47 Function Parameters:
|
||||
0:49 Sequence
|
||||
0:49 Branch: Return with expression
|
||||
0:49 'gl_PrimitiveID' (flat in int PrimitiveID)
|
||||
0:? Linker Objects
|
||||
0:? 'gl_FragCoord' (gl_FragCoord 4-component vector of float FragCoord)
|
||||
0:? 'gl_FragCoord' (gl_FragCoord 4-component vector of float FragCoord)
|
||||
0:? 'foo' (smooth in 4-component vector of float)
|
||||
0:? 's' (smooth in structure{global float f})
|
||||
0:? 'patch' (global float)
|
||||
|
@ -255,39 +255,11 @@ ERROR: node is still EOpNull!
|
||||
0:37 'gl_Layer' (layout(stream=0 ) out int Layer)
|
||||
0:37 Constant:
|
||||
0:37 2 (const int)
|
||||
0:67 Function Definition: foo(i1; (global void)
|
||||
0:67 Function Parameters:
|
||||
0:67 'a' (in int)
|
||||
0:69 Sequence
|
||||
0:69 move second child to first child (temp 4-component vector of float)
|
||||
0:69 a: direct index for structure (layout(stream=6 ) out 4-component vector of float)
|
||||
0:69 'ouuaa6' (layout(stream=6 ) out block{layout(stream=6 ) out 4-component vector of float a})
|
||||
0:69 Constant:
|
||||
0:69 0 (const int)
|
||||
0:69 Constant:
|
||||
0:69 1.000000
|
||||
0:69 1.000000
|
||||
0:69 1.000000
|
||||
0:69 1.000000
|
||||
0:107 Sequence
|
||||
0:107 move second child to first child (temp float)
|
||||
0:107 'summ' (global float)
|
||||
0:107 Constant:
|
||||
0:107 11332.000000
|
||||
0:127 Function Definition: fooe1( (global void)
|
||||
0:127 Function Parameters:
|
||||
0:129 Sequence
|
||||
0:129 move second child to first child (temp int)
|
||||
0:129 'gl_ViewportIndex' (layout(stream=0 ) out int ViewportIndex)
|
||||
0:129 Constant:
|
||||
0:129 15 (const int)
|
||||
0:134 Function Definition: fooe2( (global void)
|
||||
0:134 Function Parameters:
|
||||
0:136 Sequence
|
||||
0:136 move second child to first child (temp int)
|
||||
0:136 'gl_ViewportIndex' (layout(stream=0 ) out int ViewportIndex)
|
||||
0:136 Constant:
|
||||
0:136 15 (const int)
|
||||
0:? Linker Objects
|
||||
0:? 'fromV' (in 4-element array of block{in 3-component vector of float color})
|
||||
0:? 'toF' (layout(stream=0 ) out block{layout(stream=0 ) out 3-component vector of float color})
|
||||
|
@ -910,8 +910,10 @@ ERROR: node is still EOpNull!
|
||||
|
||||
Linked tessellation control stage:
|
||||
|
||||
ERROR: Linking tessellation control stage: can't handle multiple entry points per stage
|
||||
ERROR: Linking tessellation control stage: Multiple function bodies in multiple compilation units for the same signature in the same stage:
|
||||
main(
|
||||
ERROR: Linking tessellation control stage: can't handle multiple entry points per stage
|
||||
ERROR: Linking tessellation control stage: Contradictory layout vertices values
|
||||
ERROR: Linking tessellation control stage: Multiple function bodies in multiple compilation units for the same signature in the same stage:
|
||||
main(
|
||||
@ -921,6 +923,7 @@ ERROR: Linking tessellation control stage: Types must match:
|
||||
gl_out: "out 4-element array of block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out implicitly-sized array of float ClipDistance gl_ClipDistance}" versus "out implicitly-sized array of block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out implicitly-sized array of float ClipDistance gl_ClipDistance}"
|
||||
ERROR: Linking tessellation control stage: Types must match:
|
||||
outa: "global 4-element array of int" versus "global 1-element array of int"
|
||||
ERROR: Linking tessellation control stage: can't handle multiple entry points per stage
|
||||
ERROR: Linking tessellation control stage: Multiple function bodies in multiple compilation units for the same signature in the same stage:
|
||||
main(
|
||||
ERROR: Linking tessellation control stage: Multiple function bodies in multiple compilation units for the same signature in the same stage:
|
||||
@ -934,8 +937,10 @@ ERROR: Linking tessellation control stage: Types must match:
|
||||
|
||||
Linked tessellation evaluation stage:
|
||||
|
||||
ERROR: Linking tessellation evaluation stage: can't handle multiple entry points per stage
|
||||
ERROR: Linking tessellation evaluation stage: Multiple function bodies in multiple compilation units for the same signature in the same stage:
|
||||
main(
|
||||
ERROR: Linking tessellation evaluation stage: can't handle multiple entry points per stage
|
||||
ERROR: Linking tessellation evaluation stage: Contradictory input layout primitives
|
||||
ERROR: Linking tessellation evaluation stage: Contradictory input vertex spacing
|
||||
ERROR: Linking tessellation evaluation stage: Contradictory triangle ordering
|
||||
@ -1184,35 +1189,6 @@ vertices = 4
|
||||
0:56 Barrier (global void)
|
||||
0:59 Branch: Return
|
||||
0:61 Barrier (global void)
|
||||
0:67 Function Definition: foo( (global void)
|
||||
0:67 Function Parameters:
|
||||
0:69 Sequence
|
||||
0:69 gl_PointSize: direct index for structure (out float PointSize)
|
||||
0:69 direct index (temp block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out 2-element array of float ClipDistance gl_ClipDistance})
|
||||
0:69 'gl_out' (out 4-element array of block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out 2-element array of float ClipDistance gl_ClipDistance})
|
||||
0:69 Constant:
|
||||
0:69 4 (const int)
|
||||
0:69 Constant:
|
||||
0:69 1 (const int)
|
||||
0:71 Barrier (global void)
|
||||
0:91 Function Definition: foop( (global void)
|
||||
0:91 Function Parameters:
|
||||
0:? Sequence
|
||||
0:95 multiply second child into first child (temp 3-component vector of float)
|
||||
0:95 'pv3' (noContraction temp 3-component vector of float)
|
||||
0:95 'pv3' (noContraction temp 3-component vector of float)
|
||||
0:96 move second child to first child (temp 3-component vector of float)
|
||||
0:96 'pv3' (noContraction temp 3-component vector of float)
|
||||
0:96 fma (global 3-component vector of float)
|
||||
0:96 'pv3' (noContraction temp 3-component vector of float)
|
||||
0:96 'pv3' (noContraction temp 3-component vector of float)
|
||||
0:96 'pv3' (noContraction temp 3-component vector of float)
|
||||
0:97 move second child to first child (temp double)
|
||||
0:97 'd' (noContraction temp double)
|
||||
0:97 fma (global double)
|
||||
0:97 'd' (noContraction temp double)
|
||||
0:97 'd' (noContraction temp double)
|
||||
0:97 'd' (noContraction temp double)
|
||||
0:8 Function Definition: main( (global void)
|
||||
0:8 Function Parameters:
|
||||
0:15 Function Definition: main( (global void)
|
||||
@ -1274,41 +1250,6 @@ vertices = 4
|
||||
0:26 indirect index (temp block{out 4-component vector of float Position gl_Position})
|
||||
0:26 'gl_out' (out 3-element array of block{out 4-component vector of float Position gl_Position})
|
||||
0:26 'gl_InvocationID' (in int InvocationID)
|
||||
0:34 Function Definition: foo( (global void)
|
||||
0:34 Function Parameters:
|
||||
0:36 Sequence
|
||||
0:36 Test condition and select (temp void)
|
||||
0:36 Condition
|
||||
0:36 logical-or (temp bool)
|
||||
0:36 Compare Not Equal (temp bool)
|
||||
0:36 Constant:
|
||||
0:36 -0.625000
|
||||
0:36 -0.500000
|
||||
0:36 -0.375000
|
||||
0:36 -0.250000
|
||||
0:36 -0.375000
|
||||
0:36 -0.250000
|
||||
0:36 -0.125000
|
||||
0:36 0.000000
|
||||
0:36 direct index (layout(location=0 ) temp 2X4 matrix of double)
|
||||
0:36 'vs_tcs_first' (layout(location=0 ) in 32-element array of 2X4 matrix of double)
|
||||
0:36 Constant:
|
||||
0:36 0 (const int)
|
||||
0:37 Compare Not Equal (temp bool)
|
||||
0:37 Constant:
|
||||
0:37 0.375000
|
||||
0:37 0.500000
|
||||
0:37 0.625000
|
||||
0:37 0.750000
|
||||
0:37 0.625000
|
||||
0:37 0.750000
|
||||
0:37 0.875000
|
||||
0:37 -0.625000
|
||||
0:37 direct index (layout(location=12 ) temp 2X4 matrix of double)
|
||||
0:37 'vs_tcs_last' (layout(location=12 ) in 32-element array of 2X4 matrix of double)
|
||||
0:37 Constant:
|
||||
0:37 0 (const int)
|
||||
0:36 true case is null
|
||||
0:? Linker Objects
|
||||
0:? 'gl_out' (out 4-element array of block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out 2-element array of float ClipDistance gl_ClipDistance})
|
||||
0:? 'outa' (global 4-element array of int)
|
||||
|
@ -28,7 +28,7 @@ ERROR: 0:102: 'arrays of arrays' : not supported for this version or the enabled
|
||||
ERROR: 0:103: 'arrays of arrays' : not supported for this version or the enabled extensions
|
||||
ERROR: 0:100: 'arrays of arrays' : not supported for this version or the enabled extensions
|
||||
ERROR: 0:100: 'array-of-array of block' : not supported with this profile: es
|
||||
ERROR: 0:111: 'variable indexing fragment shader ouput array' : not supported with this profile: es
|
||||
ERROR: 0:111: 'variable indexing fragment shader output array' : not supported with this profile: es
|
||||
ERROR: 0:119: '==' : can't use with samplers or structs containing samplers
|
||||
ERROR: 0:120: '!=' : can't use with samplers or structs containing samplers
|
||||
ERROR: 0:121: '==' : can't use with samplers or structs containing samplers
|
||||
@ -592,131 +592,6 @@ ERROR: node is still EOpNull!
|
||||
0:96 'c4D' (smooth temp lowp 4-component vector of float)
|
||||
0:97 arc hyp. tangent (global lowp 3-component vector of float)
|
||||
0:97 'c3D' (smooth in lowp 3-component vector of float)
|
||||
0:108 Function Definition: foo( (global void)
|
||||
0:108 Function Parameters:
|
||||
0:110 Sequence
|
||||
0:110 move second child to first child (temp lowp 4-component vector of float)
|
||||
0:110 direct index (temp lowp 4-component vector of float)
|
||||
0:110 'colors' (out 4-element array of lowp 4-component vector of float)
|
||||
0:110 Constant:
|
||||
0:110 2 (const int)
|
||||
0:110 'c4D' (smooth temp lowp 4-component vector of float)
|
||||
0:111 move second child to first child (temp lowp 4-component vector of float)
|
||||
0:111 indirect index (temp lowp 4-component vector of float)
|
||||
0:111 'colors' (out 4-element array of lowp 4-component vector of float)
|
||||
0:111 'ic1D' (flat in mediump int)
|
||||
0:111 'c4D' (smooth temp lowp 4-component vector of float)
|
||||
0:117 Function Definition: foo13(struct-s-i1-s211; (global void)
|
||||
0:117 Function Parameters:
|
||||
0:117 'inSt2' (in structure{global mediump int i, global lowp sampler2D s})
|
||||
0:119 Sequence
|
||||
0:119 Test condition and select (temp void)
|
||||
0:119 Condition
|
||||
0:119 Compare Equal (temp bool)
|
||||
0:119 'st1' (uniform structure{global mediump int i, global lowp sampler2D s})
|
||||
0:119 'st2' (uniform structure{global mediump int i, global lowp sampler2D s})
|
||||
0:119 true case is null
|
||||
0:120 Test condition and select (temp void)
|
||||
0:120 Condition
|
||||
0:120 Compare Not Equal (temp bool)
|
||||
0:120 'st1' (uniform structure{global mediump int i, global lowp sampler2D s})
|
||||
0:120 'st2' (uniform structure{global mediump int i, global lowp sampler2D s})
|
||||
0:120 true case is null
|
||||
0:121 Constant:
|
||||
0:121 false (const bool)
|
||||
0:122 move second child to first child (temp structure{global mediump int i, global lowp sampler2D s})
|
||||
0:122 'inSt2' (in structure{global mediump int i, global lowp sampler2D s})
|
||||
0:122 'st1' (uniform structure{global mediump int i, global lowp sampler2D s})
|
||||
0:123 Compare Equal (temp bool)
|
||||
0:123 'inSt2' (in structure{global mediump int i, global lowp sampler2D s})
|
||||
0:123 'st1' (uniform structure{global mediump int i, global lowp sampler2D s})
|
||||
0:126 Function Definition: foo23( (global void)
|
||||
0:126 Function Parameters:
|
||||
0:128 Sequence
|
||||
0:128 textureOffset (global lowp float)
|
||||
0:128 's2DShadow' (uniform lowp sampler2DShadow)
|
||||
0:128 'c3D' (smooth in lowp 3-component vector of float)
|
||||
0:128 Constant:
|
||||
0:128 -8 (const int)
|
||||
0:128 7 (const int)
|
||||
0:128 'c1D' (smooth in lowp float)
|
||||
0:129 textureOffset (global lowp float)
|
||||
0:129 's2DShadow' (uniform lowp sampler2DShadow)
|
||||
0:129 'c3D' (smooth in lowp 3-component vector of float)
|
||||
0:129 Constant:
|
||||
0:129 -9 (const int)
|
||||
0:129 8 (const int)
|
||||
0:129 'c1D' (smooth in lowp float)
|
||||
0:132 Function Definition: foo324( (global void)
|
||||
0:132 Function Parameters:
|
||||
0:134 Sequence
|
||||
0:134 Sequence
|
||||
0:134 move second child to first child (temp lowp float)
|
||||
0:134 'p' (temp lowp float)
|
||||
0:134 Constant:
|
||||
0:134 210.712306
|
||||
0:135 add second child into first child (temp lowp float)
|
||||
0:135 'p' (temp lowp float)
|
||||
0:135 Constant:
|
||||
0:135 0.389418
|
||||
0:136 add second child into first child (temp lowp float)
|
||||
0:136 'p' (temp lowp float)
|
||||
0:136 Constant:
|
||||
0:136 5.000000
|
||||
0:137 add second child into first child (temp lowp float)
|
||||
0:137 'p' (temp lowp float)
|
||||
0:137 Constant:
|
||||
0:137 13.000000
|
||||
0:138 Sequence
|
||||
0:138 move second child to first child (temp lowp 3-component vector of float)
|
||||
0:138 'c3' (temp lowp 3-component vector of float)
|
||||
0:138 Constant:
|
||||
0:138 -15.000000
|
||||
0:138 -2.000000
|
||||
0:138 39.000000
|
||||
0:139 add second child into first child (temp lowp 3-component vector of float)
|
||||
0:139 'c3' (temp lowp 3-component vector of float)
|
||||
0:139 Constant:
|
||||
0:139 -1.000000
|
||||
0:139 -2.000000
|
||||
0:139 -3.000000
|
||||
0:140 add second child into first child (temp lowp 3-component vector of float)
|
||||
0:140 'c3' (temp lowp 3-component vector of float)
|
||||
0:140 Constant:
|
||||
0:140 1.000000
|
||||
0:140 2.000000
|
||||
0:140 3.000000
|
||||
0:141 Sequence
|
||||
0:141 move second child to first child (temp lowp 2-component vector of float)
|
||||
0:141 'c2' (temp lowp 2-component vector of float)
|
||||
0:141 Constant:
|
||||
0:141 1.000000
|
||||
0:141 -3.000000
|
||||
0:142 add second child into first child (temp lowp 2-component vector of float)
|
||||
0:142 'c2' (temp lowp 2-component vector of float)
|
||||
0:142 Constant:
|
||||
0:142 1.000000
|
||||
0:142 -3.000000
|
||||
0:143 add second child into first child (temp lowp 2-component vector of float)
|
||||
0:143 'c2' (temp lowp 2-component vector of float)
|
||||
0:143 Constant:
|
||||
0:143 3.000000
|
||||
0:143 -8.544004
|
||||
0:144 add second child into first child (temp lowp 2-component vector of float)
|
||||
0:144 'c2' (temp lowp 2-component vector of float)
|
||||
0:144 Constant:
|
||||
0:144 0.000000
|
||||
0:144 0.000000
|
||||
0:145 Sequence
|
||||
0:145 move second child to first child (temp lowp 3X2 matrix of float)
|
||||
0:145 'm32' (temp lowp 3X2 matrix of float)
|
||||
0:145 Constant:
|
||||
0:145 10.000000
|
||||
0:145 15.000000
|
||||
0:145 14.000000
|
||||
0:145 21.000000
|
||||
0:145 22.000000
|
||||
0:145 33.000000
|
||||
0:? Linker Objects
|
||||
0:? 's2D' (uniform lowp sampler2D)
|
||||
0:? 's3D' (uniform lowp sampler3D)
|
||||
|
@ -9,7 +9,7 @@ ERROR: 0:12: '' : vertex input cannot be further qualified
|
||||
ERROR: 0:13: '' : interpolation qualifiers must appear before storage and precision qualifiers
|
||||
ERROR: 0:14: '' : in/out must appear before const
|
||||
ERROR: 0:15: '' : precision qualifier must appear as last qualifier
|
||||
ERROR: 0:16: '' : can only have one interpolation qualifier (flat, smooth, noperspective)
|
||||
ERROR: 0:16: '' : can only have one interpolation qualifier (flat, smooth, noperspective, __explicitInterpAMD)
|
||||
ERROR: 0:17: 'sample' : Reserved word.
|
||||
ERROR: 0:17: '' : can only have one auxiliary qualifier (centroid, patch, and sample)
|
||||
ERROR: 0:18: 'uniform' : too many storage qualifiers
|
||||
@ -308,9 +308,9 @@ ERROR: node is still EOpNull!
|
||||
0:? 'badsize2' (global implicitly-sized array of highp float)
|
||||
0:? 'ubInst' (layout(column_major shared ) uniform implicitly-sized array of block{layout(column_major shared ) uniform implicitly-sized array of highp int a})
|
||||
0:? 'okayA' (global 2-element array of highp float)
|
||||
0:? 'newV' (smooth out highp 3-component vector of float)
|
||||
0:? 'invIn' (in highp 4-component vector of float)
|
||||
0:? 's2' (smooth out structure{global highp 3-component vector of float c, global highp float f})
|
||||
0:? 'newV' (invariant smooth out highp 3-component vector of float)
|
||||
0:? 'invIn' (invariant in highp 4-component vector of float)
|
||||
0:? 's2' (invariant smooth out structure{global highp 3-component vector of float c, global highp float f})
|
||||
0:? 's3' (invariant smooth out structure{global highp 3-component vector of float c, global highp float f})
|
||||
0:? 'a' (layout(column_major shared ) uniform block{layout(column_major shared ) uniform highp float f})
|
||||
0:? 'anon@0' (layout(column_major shared ) uniform block{layout(column_major shared ) uniform bool b23})
|
||||
@ -447,132 +447,6 @@ ERROR: node is still EOpNull!
|
||||
0:68 Constant:
|
||||
0:68 3.000000
|
||||
0:68 4.000000
|
||||
0:71 Function Definition: newVFun( (global void)
|
||||
0:71 Function Parameters:
|
||||
0:73 Sequence
|
||||
0:73 move second child to first child (temp highp 3-component vector of float)
|
||||
0:73 'newV' (smooth out highp 3-component vector of float)
|
||||
0:73 'v3' (in highp 3-component vector of float)
|
||||
0:118 Function Definition: foo23( (global void)
|
||||
0:118 Function Parameters:
|
||||
0:120 Sequence
|
||||
0:120 Sequence
|
||||
0:120 move second child to first child (temp highp 2-component vector of int)
|
||||
0:120 'x1' (temp highp 2-component vector of int)
|
||||
0:120 textureSize (global highp 2-component vector of int, operation at lowp)
|
||||
0:120 's2D' (uniform lowp sampler2D)
|
||||
0:120 Constant:
|
||||
0:120 2 (const int)
|
||||
0:121 Constant:
|
||||
0:121 0.000000
|
||||
0:122 Sequence
|
||||
0:122 move second child to first child (temp highp 3-component vector of int)
|
||||
0:122 'x3' (temp highp 3-component vector of int)
|
||||
0:122 textureSize (global highp 3-component vector of int, operation at lowp)
|
||||
0:122 's2DAS' (uniform lowp sampler2DArrayShadow)
|
||||
0:122 Constant:
|
||||
0:122 -1 (const int)
|
||||
0:123 Constant:
|
||||
0:123 0.000000
|
||||
0:124 Sequence
|
||||
0:124 move second child to first child (temp highp 4-component vector of float)
|
||||
0:124 'x4' (temp highp 4-component vector of float)
|
||||
0:124 texture (global lowp 4-component vector of float, operation at highp)
|
||||
0:124 's2D' (uniform lowp sampler2D)
|
||||
0:124 'c2D' (in highp 2-component vector of float)
|
||||
0:125 Constant:
|
||||
0:125 0.000000
|
||||
0:126 Sequence
|
||||
0:126 move second child to first child (temp highp 4-component vector of float)
|
||||
0:126 'x5' (temp highp 4-component vector of float)
|
||||
0:126 textureProjOffset (global lowp 4-component vector of float)
|
||||
0:126 's3D' (uniform lowp sampler3D)
|
||||
0:126 Constant:
|
||||
0:126 0.200000
|
||||
0:126 0.200000
|
||||
0:126 0.200000
|
||||
0:126 0.200000
|
||||
0:126 Constant:
|
||||
0:126 1 (const int)
|
||||
0:126 1 (const int)
|
||||
0:126 1 (const int)
|
||||
0:127 Constant:
|
||||
0:127 0.000000
|
||||
0:128 Sequence
|
||||
0:128 move second child to first child (temp highp float)
|
||||
0:128 'x6' (temp highp float)
|
||||
0:128 textureProjGradOffset (global lowp float, operation at highp)
|
||||
0:128 's2DS' (uniform lowp sampler2DShadow)
|
||||
0:128 'invIn' (invariant in highp 4-component vector of float)
|
||||
0:128 Constant:
|
||||
0:128 4.200000
|
||||
0:128 4.200000
|
||||
0:128 Constant:
|
||||
0:128 5.300000
|
||||
0:128 5.300000
|
||||
0:128 Constant:
|
||||
0:128 1 (const int)
|
||||
0:128 1 (const int)
|
||||
0:137 Function Definition: foo2349( (global void)
|
||||
0:137 Function Parameters:
|
||||
0:139 Sequence
|
||||
0:139 Sequence
|
||||
0:139 move second child to first child (temp 3-element array of highp float)
|
||||
0:139 'x' (temp 3-element array of highp float)
|
||||
0:139 Constant:
|
||||
0:139 1.000000
|
||||
0:139 2.000000
|
||||
0:139 3.000000
|
||||
0:140 Sequence
|
||||
0:140 move second child to first child (temp 3-element array of highp float)
|
||||
0:140 'y' (temp 3-element array of highp float)
|
||||
0:140 'x' (temp 3-element array of highp float)
|
||||
0:141 Sequence
|
||||
0:141 move second child to first child (temp 3-element array of highp float)
|
||||
0:141 'z' (temp 3-element array of highp float)
|
||||
0:141 'x' (temp 3-element array of highp float)
|
||||
0:143 move second child to first child (temp 3-element array of highp float)
|
||||
0:143 'w' (temp 3-element array of highp float)
|
||||
0:143 'y' (temp 3-element array of highp float)
|
||||
0:155 Function Definition: gggf(f1; (global highp int)
|
||||
0:155 Function Parameters:
|
||||
0:155 'f' (in highp float)
|
||||
0:155 Sequence
|
||||
0:155 Branch: Return with expression
|
||||
0:155 Constant:
|
||||
0:155 2 (const int)
|
||||
0:158 Function Definition: agggf(f1; (global highp int)
|
||||
0:158 Function Parameters:
|
||||
0:158 'f' (in highp float)
|
||||
0:158 Sequence
|
||||
0:158 Branch: Return with expression
|
||||
0:158 Constant:
|
||||
0:158 2 (const int)
|
||||
0:178 Function Definition: fooDeeparray( (global void)
|
||||
0:178 Function Parameters:
|
||||
0:181 Sequence
|
||||
0:181 Sequence
|
||||
0:180 move second child to first child (temp 3-element array of highp float)
|
||||
0:180 'x' (temp 3-element array of highp float)
|
||||
0:180 Constant:
|
||||
0:180 1.000000
|
||||
0:180 2.000000
|
||||
0:180 3.000000
|
||||
0:181 move second child to first child (temp 4-element array of highp float)
|
||||
0:181 'y' (temp 4-element array of highp float)
|
||||
0:181 Constant:
|
||||
0:181 1.000000
|
||||
0:181 2.000000
|
||||
0:181 3.000000
|
||||
0:181 4.000000
|
||||
0:183 move second child to first child (temp 3-element array of highp float)
|
||||
0:183 'xp' (temp 3-element array of highp float)
|
||||
0:183 'x' (temp 3-element array of highp float)
|
||||
0:184 move second child to first child (temp 4-element array of highp float)
|
||||
0:184 'yp' (temp 4-element array of highp float)
|
||||
0:184 'y' (temp 4-element array of highp float)
|
||||
0:185 'xp' (temp 3-element array of highp float)
|
||||
0:186 'yp' (temp 4-element array of highp float)
|
||||
0:? Linker Objects
|
||||
0:? 'm43' (uniform highp 4X3 matrix of float)
|
||||
0:? 'm33' (uniform highp 3X3 matrix of float)
|
||||
@ -592,9 +466,9 @@ ERROR: node is still EOpNull!
|
||||
0:? 'badsize2' (global 1-element array of highp float)
|
||||
0:? 'ubInst' (layout(column_major shared ) uniform 1-element array of block{layout(column_major shared ) uniform 1-element array of highp int a})
|
||||
0:? 'okayA' (global 2-element array of highp float)
|
||||
0:? 'newV' (smooth out highp 3-component vector of float)
|
||||
0:? 'invIn' (in highp 4-component vector of float)
|
||||
0:? 's2' (smooth out structure{global highp 3-component vector of float c, global highp float f})
|
||||
0:? 'newV' (invariant smooth out highp 3-component vector of float)
|
||||
0:? 'invIn' (invariant in highp 4-component vector of float)
|
||||
0:? 's2' (invariant smooth out structure{global highp 3-component vector of float c, global highp float f})
|
||||
0:? 's3' (invariant smooth out structure{global highp 3-component vector of float c, global highp float f})
|
||||
0:? 'a' (layout(column_major shared ) uniform block{layout(column_major shared ) uniform highp float f})
|
||||
0:? 'anon@0' (layout(column_major shared ) uniform block{layout(column_major shared ) uniform bool b23})
|
||||
|
@ -131,6 +131,8 @@ ERROR: node is still EOpNull!
|
||||
|
||||
Linked vertex stage:
|
||||
|
||||
ERROR: Linking vertex stage: No function definition (body) found:
|
||||
g(
|
||||
|
||||
Shader version: 300
|
||||
ERROR: node is still EOpNull!
|
||||
@ -151,16 +153,6 @@ ERROR: node is still EOpNull!
|
||||
0:8 1.000000
|
||||
0:11 Branch: Return with expression
|
||||
0:11 'a' (in highp int)
|
||||
0:25 Function Definition: cos(f1; (global highp float)
|
||||
0:25 Function Parameters:
|
||||
0:25 'x' (in highp float)
|
||||
0:27 Sequence
|
||||
0:27 Branch: Return
|
||||
0:29 Function Definition: radians(b1; (global bool)
|
||||
0:29 Function Parameters:
|
||||
0:29 'x' (in bool)
|
||||
0:31 Sequence
|
||||
0:31 Branch: Return
|
||||
0:36 Function Definition: main( (global void)
|
||||
0:36 Function Parameters:
|
||||
0:? Sequence
|
||||
|
@ -536,340 +536,6 @@ ERROR: node is still EOpNull!
|
||||
0:36 Constant:
|
||||
0:36 1 (const uint)
|
||||
0:36 'gl_LocalInvocationIndex' (in highp uint LocalInvocationIndex)
|
||||
0:59 Function Definition: foo( (global void)
|
||||
0:59 Function Parameters:
|
||||
0:61 Sequence
|
||||
0:61 move second child to first child (temp highp float)
|
||||
0:61 direct index (layout(column_major shared ) temp highp float)
|
||||
0:61 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
|
||||
0:61 'ro' (layout(column_major shared ) readonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
|
||||
0:61 Constant:
|
||||
0:61 1 (const int)
|
||||
0:61 Constant:
|
||||
0:61 2 (const int)
|
||||
0:61 Constant:
|
||||
0:61 4.700000
|
||||
0:62 array length (temp int)
|
||||
0:62 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
|
||||
0:62 'ro' (layout(column_major shared ) readonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
|
||||
0:62 Constant:
|
||||
0:62 1 (const int)
|
||||
0:63 Pre-Increment (temp highp 4-component vector of float)
|
||||
0:63 's' (shared highp 4-component vector of float)
|
||||
0:84 Function Definition: qux( (global void)
|
||||
0:84 Function Parameters:
|
||||
0:86 Sequence
|
||||
0:86 Sequence
|
||||
0:86 move second child to first child (temp highp int)
|
||||
0:86 'i' (temp highp int)
|
||||
0:86 Constant:
|
||||
0:86 4 (const int)
|
||||
0:87 imageAtomicCompSwap (global highp int)
|
||||
0:87 'iimg2D' (layout(r32i ) uniform highp iimage2D)
|
||||
0:87 Construct ivec2 (temp highp 2-component vector of int)
|
||||
0:87 'i' (temp highp int)
|
||||
0:87 'i' (temp highp int)
|
||||
0:87 'i' (temp highp int)
|
||||
0:87 'i' (temp highp int)
|
||||
0:88 imageAtomicAdd (global highp uint)
|
||||
0:88 'uimg2D' (layout(r32ui ) uniform mediump uimage2D)
|
||||
0:88 Construct ivec2 (temp highp 2-component vector of int)
|
||||
0:88 'i' (temp highp int)
|
||||
0:88 'i' (temp highp int)
|
||||
0:88 Convert int to uint (temp highp uint)
|
||||
0:88 'i' (temp highp int)
|
||||
0:89 imageAtomicMin (global highp int)
|
||||
0:89 'iimg2Drgba' (layout(rgba32i ) readonly uniform highp iimage2D)
|
||||
0:89 Construct ivec2 (temp highp 2-component vector of int)
|
||||
0:89 'i' (temp highp int)
|
||||
0:89 'i' (temp highp int)
|
||||
0:89 'i' (temp highp int)
|
||||
0:90 Constant:
|
||||
0:90 0.000000
|
||||
0:91 Sequence
|
||||
0:91 move second child to first child (temp highp 4-component vector of int)
|
||||
0:91 'pos' (temp highp 4-component vector of int)
|
||||
0:91 imageLoad (global highp 4-component vector of int)
|
||||
0:91 'iimg2D' (layout(r32i ) uniform highp iimage2D)
|
||||
0:91 Construct ivec2 (temp highp 2-component vector of int)
|
||||
0:91 'i' (temp highp int)
|
||||
0:91 'i' (temp highp int)
|
||||
0:92 imageStore (global highp void)
|
||||
0:92 'ii2da' (writeonly uniform highp iimage2DArray)
|
||||
0:92 Construct ivec3 (temp 3-component vector of int)
|
||||
0:92 'i' (temp highp int)
|
||||
0:92 'i' (temp highp int)
|
||||
0:92 'i' (temp highp int)
|
||||
0:92 Constant:
|
||||
0:92 0 (const int)
|
||||
0:92 0 (const int)
|
||||
0:92 0 (const int)
|
||||
0:92 0 (const int)
|
||||
0:93 imageLoad (global mediump 4-component vector of float)
|
||||
0:93 'img2Drgba' (layout(rgba32f ) readonly uniform mediump image2D)
|
||||
0:93 Construct ivec2 (temp mediump 2-component vector of int)
|
||||
0:93 'i' (temp highp int)
|
||||
0:93 'i' (temp highp int)
|
||||
0:94 imageLoad (global highp 4-component vector of int)
|
||||
0:94 'ii2da' (writeonly uniform highp iimage2DArray)
|
||||
0:94 Construct ivec3 (temp highp 3-component vector of int)
|
||||
0:94 'i' (temp highp int)
|
||||
0:94 'i' (temp highp int)
|
||||
0:94 'i' (temp highp int)
|
||||
0:100 Function Definition: passr(iI21; (global void)
|
||||
0:100 Function Parameters:
|
||||
0:100 'image' (coherent readonly in highp iimage2D)
|
||||
0:107 Function Definition: passrc( (global void)
|
||||
0:107 Function Parameters:
|
||||
0:109 Sequence
|
||||
0:109 Function Call: passr(iI21; (global void)
|
||||
0:109 'qualim1' (layout(r32i ) coherent readonly uniform highp iimage2D)
|
||||
0:110 Function Call: passr(iI21; (global void)
|
||||
0:110 'qualim2' (layout(r32i ) coherent restrict readonly uniform highp iimage2D)
|
||||
0:111 Function Call: passr(iI21; (global void)
|
||||
0:111 'iimg2D' (layout(r32i ) uniform highp iimage2D)
|
||||
0:123 Function Definition: func(au1; (global highp uint)
|
||||
0:123 Function Parameters:
|
||||
0:123 'c' (in highp atomic_uint)
|
||||
0:125 Sequence
|
||||
0:125 Branch: Return with expression
|
||||
0:125 AtomicCounterIncrement (global highp uint)
|
||||
0:125 'c' (in highp atomic_uint)
|
||||
0:128 Function Definition: func2(au1; (global highp uint)
|
||||
0:128 Function Parameters:
|
||||
0:128 'c' (out highp atomic_uint)
|
||||
0:130 Sequence
|
||||
0:130 Branch: Return with expression
|
||||
0:130 'counter' (layout(binding=0 offset=0 ) uniform highp atomic_uint)
|
||||
0:131 Branch: Return with expression
|
||||
0:131 AtomicCounter (global highp uint)
|
||||
0:131 'counter' (layout(binding=0 offset=0 ) uniform highp atomic_uint)
|
||||
0:134 Function Definition: mainAC( (global void)
|
||||
0:134 Function Parameters:
|
||||
0:? Sequence
|
||||
0:137 Sequence
|
||||
0:137 move second child to first child (temp highp uint)
|
||||
0:137 'val' (temp highp uint)
|
||||
0:137 AtomicCounter (global highp uint)
|
||||
0:137 'counter' (layout(binding=0 offset=0 ) uniform highp atomic_uint)
|
||||
0:138 AtomicCounterDecrement (global highp uint)
|
||||
0:138 'counter' (layout(binding=0 offset=0 ) uniform highp atomic_uint)
|
||||
0:146 Function Definition: opac( (global void)
|
||||
0:146 Function Parameters:
|
||||
0:? Sequence
|
||||
0:149 indirect index (temp highp int)
|
||||
0:149 'a' (temp 3-element array of highp int)
|
||||
0:149 'counter' (layout(binding=0 offset=0 ) uniform highp atomic_uint)
|
||||
0:150 direct index (layout(binding=2 offset=4 ) temp highp atomic_uint)
|
||||
0:150 'countArr' (layout(binding=2 offset=4 ) uniform 4-element array of highp atomic_uint)
|
||||
0:150 Constant:
|
||||
0:150 2 (const int)
|
||||
0:151 indirect index (layout(binding=2 offset=4 ) temp highp atomic_uint)
|
||||
0:151 'countArr' (layout(binding=2 offset=4 ) uniform 4-element array of highp atomic_uint)
|
||||
0:151 'i' (uniform highp int)
|
||||
0:157 Function Definition: atoms( (global void)
|
||||
0:157 Function Parameters:
|
||||
0:159 Sequence
|
||||
0:159 Sequence
|
||||
0:159 move second child to first child (temp highp int)
|
||||
0:159 'origi' (temp highp int)
|
||||
0:159 AtomicAdd (global highp int)
|
||||
0:159 'atomi' (shared highp int)
|
||||
0:159 Constant:
|
||||
0:159 3 (const int)
|
||||
0:160 Sequence
|
||||
0:160 move second child to first child (temp highp uint)
|
||||
0:160 'origu' (temp highp uint)
|
||||
0:160 AtomicAnd (global highp uint)
|
||||
0:160 'atomu' (shared highp uint)
|
||||
0:160 Constant:
|
||||
0:160 7 (const uint)
|
||||
0:161 move second child to first child (temp highp int)
|
||||
0:161 'origi' (temp highp int)
|
||||
0:161 AtomicExchange (global highp int)
|
||||
0:161 'atomi' (shared highp int)
|
||||
0:161 Constant:
|
||||
0:161 4 (const int)
|
||||
0:162 move second child to first child (temp highp uint)
|
||||
0:162 'origu' (temp highp uint)
|
||||
0:162 AtomicCompSwap (global highp uint)
|
||||
0:162 'atomu' (shared highp uint)
|
||||
0:162 Constant:
|
||||
0:162 10 (const uint)
|
||||
0:162 Constant:
|
||||
0:162 8 (const uint)
|
||||
0:191 Function Definition: foowo( (global void)
|
||||
0:191 Function Parameters:
|
||||
0:? Sequence
|
||||
0:194 move second child to first child (temp highp float)
|
||||
0:194 'g' (temp highp float)
|
||||
0:194 direct index (layout(column_major shared ) temp highp float)
|
||||
0:194 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
|
||||
0:194 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
|
||||
0:194 Constant:
|
||||
0:194 1 (const int)
|
||||
0:194 Constant:
|
||||
0:194 2 (const int)
|
||||
0:195 Sequence
|
||||
0:195 move second child to first child (temp highp float)
|
||||
0:195 'f' (temp highp float)
|
||||
0:195 direct index (layout(column_major shared ) temp highp float)
|
||||
0:195 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
|
||||
0:195 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
|
||||
0:195 Constant:
|
||||
0:195 1 (const int)
|
||||
0:195 Constant:
|
||||
0:195 2 (const int)
|
||||
0:196 Pre-Increment (temp highp float)
|
||||
0:196 direct index (layout(column_major shared ) temp highp float)
|
||||
0:196 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
|
||||
0:196 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
|
||||
0:196 Constant:
|
||||
0:196 1 (const int)
|
||||
0:196 Constant:
|
||||
0:196 2 (const int)
|
||||
0:197 Post-Decrement (temp highp float)
|
||||
0:197 direct index (layout(column_major shared ) temp highp float)
|
||||
0:197 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
|
||||
0:197 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
|
||||
0:197 Constant:
|
||||
0:197 1 (const int)
|
||||
0:197 Constant:
|
||||
0:197 2 (const int)
|
||||
0:198 add (temp highp float)
|
||||
0:198 'f' (temp highp float)
|
||||
0:198 direct index (layout(column_major shared ) temp highp float)
|
||||
0:198 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
|
||||
0:198 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
|
||||
0:198 Constant:
|
||||
0:198 1 (const int)
|
||||
0:198 Constant:
|
||||
0:198 2 (const int)
|
||||
0:199 subtract (temp highp float)
|
||||
0:199 direct index (layout(column_major shared ) temp highp float)
|
||||
0:199 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
|
||||
0:199 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
|
||||
0:199 Constant:
|
||||
0:199 1 (const int)
|
||||
0:199 Constant:
|
||||
0:199 2 (const int)
|
||||
0:199 'f' (temp highp float)
|
||||
0:201 Test condition and select (temp highp float)
|
||||
0:201 Condition
|
||||
0:201 'b' (temp bool)
|
||||
0:201 true case
|
||||
0:201 'f' (temp highp float)
|
||||
0:201 false case
|
||||
0:201 direct index (layout(column_major shared ) temp highp float)
|
||||
0:201 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
|
||||
0:201 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
|
||||
0:201 Constant:
|
||||
0:201 1 (const int)
|
||||
0:201 Constant:
|
||||
0:201 2 (const int)
|
||||
0:202 Test condition and select (temp highp float)
|
||||
0:202 Condition
|
||||
0:202 'b' (temp bool)
|
||||
0:202 true case
|
||||
0:202 direct index (layout(column_major shared ) temp highp float)
|
||||
0:202 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
|
||||
0:202 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
|
||||
0:202 Constant:
|
||||
0:202 1 (const int)
|
||||
0:202 Constant:
|
||||
0:202 2 (const int)
|
||||
0:202 false case
|
||||
0:202 'f' (temp highp float)
|
||||
0:203 Test condition and select (temp void)
|
||||
0:203 Condition
|
||||
0:203 Compare Equal (temp bool)
|
||||
0:203 'f' (temp highp float)
|
||||
0:203 direct index (layout(column_major shared ) temp highp float)
|
||||
0:203 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
|
||||
0:203 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
|
||||
0:203 Constant:
|
||||
0:203 1 (const int)
|
||||
0:203 Constant:
|
||||
0:203 2 (const int)
|
||||
0:203 true case
|
||||
0:204 Pre-Increment (temp highp float)
|
||||
0:204 'f' (temp highp float)
|
||||
0:205 Test condition and select (temp void)
|
||||
0:205 Condition
|
||||
0:205 Compare Greater Than or Equal (temp bool)
|
||||
0:205 'f' (temp highp float)
|
||||
0:205 direct index (layout(column_major shared ) temp highp float)
|
||||
0:205 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
|
||||
0:205 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
|
||||
0:205 Constant:
|
||||
0:205 1 (const int)
|
||||
0:205 Constant:
|
||||
0:205 2 (const int)
|
||||
0:205 true case
|
||||
0:206 Pre-Increment (temp highp float)
|
||||
0:206 'f' (temp highp float)
|
||||
0:207 move second child to first child (temp highp float)
|
||||
0:207 'f' (temp highp float)
|
||||
0:207 direct index (temp highp float)
|
||||
0:207 Construct vec3 (temp highp 3-component vector of float)
|
||||
0:207 direct index (layout(column_major shared ) temp highp float)
|
||||
0:207 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
|
||||
0:207 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
|
||||
0:207 Constant:
|
||||
0:207 1 (const int)
|
||||
0:207 Constant:
|
||||
0:207 2 (const int)
|
||||
0:207 Constant:
|
||||
0:207 0 (const int)
|
||||
0:208 Bitwise not (temp highp int)
|
||||
0:208 value: direct index for structure (layout(column_major shared ) buffer highp int)
|
||||
0:208 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
|
||||
0:208 Constant:
|
||||
0:208 0 (const int)
|
||||
0:209 move second child to first child (temp highp float)
|
||||
0:209 direct index (layout(column_major shared ) temp highp float)
|
||||
0:209 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
|
||||
0:209 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
|
||||
0:209 Constant:
|
||||
0:209 1 (const int)
|
||||
0:209 Constant:
|
||||
0:209 2 (const int)
|
||||
0:209 Constant:
|
||||
0:209 3.400000
|
||||
0:218 Function Definition: foomultio( (global void)
|
||||
0:218 Function Parameters:
|
||||
0:? Sequence
|
||||
0:221 move second child to first child (temp highp float)
|
||||
0:221 'g' (temp highp float)
|
||||
0:221 direct index (layout(column_major shared ) temp highp float)
|
||||
0:221 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
|
||||
0:221 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
|
||||
0:221 Constant:
|
||||
0:221 1 (const int)
|
||||
0:221 Constant:
|
||||
0:221 2 (const int)
|
||||
0:222 Bitwise not (temp highp int)
|
||||
0:222 value: direct index for structure (layout(column_major shared ) buffer highp int)
|
||||
0:222 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
|
||||
0:222 Constant:
|
||||
0:222 0 (const int)
|
||||
0:223 move second child to first child (temp highp float)
|
||||
0:223 direct index (layout(column_major shared ) temp highp float)
|
||||
0:223 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
|
||||
0:223 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
|
||||
0:223 Constant:
|
||||
0:223 1 (const int)
|
||||
0:223 Constant:
|
||||
0:223 2 (const int)
|
||||
0:223 Constant:
|
||||
0:223 3.400000
|
||||
0:224 move second child to first child (temp highp int)
|
||||
0:224 value: direct index for structure (layout(column_major shared ) buffer highp int)
|
||||
0:224 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
|
||||
0:224 Constant:
|
||||
0:224 0 (const int)
|
||||
0:224 Constant:
|
||||
0:224 2 (const int)
|
||||
0:? Linker Objects
|
||||
0:? 'gl_WorkGroupSize' (const highp 3-component vector of uint WorkGroupSize)
|
||||
0:? 2 (const uint)
|
||||
|
@ -963,7 +963,6 @@ ERROR: node is still EOpNull!
|
||||
0:? 'aliased' (layout(location=13 ) smooth in mediump 4-component vector of float)
|
||||
0:? 'arrayedInst' (in 4-element array of block{in mediump float f})
|
||||
0:? 'gl_FragDepth' (gl_FragDepth highp float FragDepth)
|
||||
0:? 'gl_FragDepth' (gl_FragDepth highp float FragDepth)
|
||||
0:? 'inf' (smooth in mediump 2-component vector of float)
|
||||
0:? 'ing' (smooth in mediump 2-component vector of float)
|
||||
0:? 'offsets' (uniform 4-element array of mediump 2-component vector of int)
|
||||
@ -1126,677 +1125,6 @@ ERROR: node is still EOpNull!
|
||||
0:34 0.100000
|
||||
0:34 Construct ivec2 (temp highp 2-component vector of int)
|
||||
0:34 'i' (uniform mediump int)
|
||||
0:38 Function Definition: foo23( (global void)
|
||||
0:38 Function Parameters:
|
||||
0:? Sequence
|
||||
0:42 textureProjGradOffset (global highp 4-component vector of uint)
|
||||
0:42 'usamp2d' (uniform highp usampler2D)
|
||||
0:42 'outp' (out mediump 4-component vector of float)
|
||||
0:42 Constant:
|
||||
0:42 0.000000
|
||||
0:42 0.000000
|
||||
0:42 Constant:
|
||||
0:42 0.000000
|
||||
0:42 0.000000
|
||||
0:42 Convert float to int (temp highp 2-component vector of int)
|
||||
0:42 'c2D' (smooth in mediump 2-component vector of float)
|
||||
0:43 textureProjGradOffset (global highp 4-component vector of uint)
|
||||
0:43 'usamp2d' (uniform highp usampler2D)
|
||||
0:43 'outp' (out mediump 4-component vector of float)
|
||||
0:43 Constant:
|
||||
0:43 0.000000
|
||||
0:43 0.000000
|
||||
0:43 Constant:
|
||||
0:43 0.000000
|
||||
0:43 0.000000
|
||||
0:43 Constant:
|
||||
0:43 3 (const int)
|
||||
0:43 4 (const int)
|
||||
0:44 textureProjGradOffset (global highp 4-component vector of uint)
|
||||
0:44 'usamp2d' (uniform highp usampler2D)
|
||||
0:44 'outp' (out mediump 4-component vector of float)
|
||||
0:44 Constant:
|
||||
0:44 0.000000
|
||||
0:44 0.000000
|
||||
0:44 Constant:
|
||||
0:44 0.000000
|
||||
0:44 0.000000
|
||||
0:44 Constant:
|
||||
0:44 15 (const int)
|
||||
0:44 16 (const int)
|
||||
0:45 textureProjGradOffset (global highp 4-component vector of uint)
|
||||
0:45 'usamp2d' (uniform highp usampler2D)
|
||||
0:45 'outp' (out mediump 4-component vector of float)
|
||||
0:45 Constant:
|
||||
0:45 0.000000
|
||||
0:45 0.000000
|
||||
0:45 Constant:
|
||||
0:45 0.000000
|
||||
0:45 0.000000
|
||||
0:45 Constant:
|
||||
0:45 -10 (const int)
|
||||
0:45 20 (const int)
|
||||
0:47 Test condition and select (temp void)
|
||||
0:47 Condition
|
||||
0:47 'gl_HelperInvocation' (in bool HelperInvocation)
|
||||
0:47 true case
|
||||
0:48 Pre-Increment (temp mediump 4-component vector of float)
|
||||
0:48 'outp' (out mediump 4-component vector of float)
|
||||
0:50 Sequence
|
||||
0:50 move second child to first child (temp mediump int)
|
||||
0:50 'sum' (temp mediump int)
|
||||
0:50 Constant:
|
||||
0:50 32 (const int)
|
||||
0:58 move second child to first child (temp bool)
|
||||
0:58 'b1' (temp bool)
|
||||
0:58 mix (global bool)
|
||||
0:58 'b2' (temp bool)
|
||||
0:58 'b3' (temp bool)
|
||||
0:58 'b' (temp bool)
|
||||
0:59 Sequence
|
||||
0:59 move second child to first child (temp mediump 3-component vector of uint)
|
||||
0:59 'um3' (temp mediump 3-component vector of uint)
|
||||
0:59 mix (global mediump 3-component vector of uint)
|
||||
0:59 Construct uvec3 (temp mediump 3-component vector of uint)
|
||||
0:59 Convert int to uint (temp mediump uint)
|
||||
0:59 'i' (uniform mediump int)
|
||||
0:59 Construct uvec3 (temp mediump 3-component vector of uint)
|
||||
0:59 Convert int to uint (temp mediump uint)
|
||||
0:59 'i' (uniform mediump int)
|
||||
0:59 Construct bvec3 (temp 3-component vector of bool)
|
||||
0:59 'b' (temp bool)
|
||||
0:60 Sequence
|
||||
0:60 move second child to first child (temp mediump 4-component vector of int)
|
||||
0:60 'im4' (temp mediump 4-component vector of int)
|
||||
0:60 mix (global mediump 4-component vector of int)
|
||||
0:60 Construct ivec4 (temp mediump 4-component vector of int)
|
||||
0:60 'i' (uniform mediump int)
|
||||
0:60 Construct ivec4 (temp mediump 4-component vector of int)
|
||||
0:60 'i' (uniform mediump int)
|
||||
0:60 Construct bvec4 (temp 4-component vector of bool)
|
||||
0:60 'b' (temp bool)
|
||||
0:98 Function Definition: foots( (global void)
|
||||
0:98 Function Parameters:
|
||||
0:100 Sequence
|
||||
0:100 Sequence
|
||||
0:100 move second child to first child (temp highp 2-component vector of int)
|
||||
0:100 'v2' (temp highp 2-component vector of int)
|
||||
0:100 textureSize (global highp 2-component vector of int)
|
||||
0:100 's1' (layout(binding=3 ) uniform highp sampler2D)
|
||||
0:100 Constant:
|
||||
0:100 2 (const int)
|
||||
0:101 Sequence
|
||||
0:101 move second child to first child (temp highp 3-component vector of int)
|
||||
0:101 'v3' (temp highp 3-component vector of int)
|
||||
0:101 textureSize (global highp 3-component vector of int)
|
||||
0:101 'isamp2DA' (uniform highp isampler2DArray)
|
||||
0:101 Constant:
|
||||
0:101 3 (const int)
|
||||
0:102 move second child to first child (temp highp 2-component vector of int)
|
||||
0:102 'v2' (temp highp 2-component vector of int)
|
||||
0:102 textureSize (global highp 2-component vector of int, operation at mediump)
|
||||
0:102 's2dms' (uniform mediump sampler2DMS)
|
||||
0:103 move second child to first child (temp highp 2-component vector of int)
|
||||
0:103 'v2' (temp highp 2-component vector of int)
|
||||
0:103 imageQuerySize (global highp 2-component vector of int)
|
||||
0:103 'i2D' (layout(binding=2 ) writeonly uniform highp image2D)
|
||||
0:104 move second child to first child (temp highp 3-component vector of int)
|
||||
0:104 'v3' (temp highp 3-component vector of int)
|
||||
0:104 imageQuerySize (global highp 3-component vector of int, operation at mediump)
|
||||
0:104 'i3D' (layout(binding=4 ) readonly uniform mediump image3D)
|
||||
0:105 move second child to first child (temp highp 2-component vector of int)
|
||||
0:105 'v2' (temp highp 2-component vector of int)
|
||||
0:105 imageQuerySize (global highp 2-component vector of int, operation at mediump)
|
||||
0:105 'iCube' (layout(binding=5 ) uniform mediump imageCube)
|
||||
0:106 move second child to first child (temp highp 3-component vector of int)
|
||||
0:106 'v3' (temp highp 3-component vector of int)
|
||||
0:106 imageQuerySize (global highp 3-component vector of int, operation at mediump)
|
||||
0:106 'i2DA' (layout(binding=6 ) uniform mediump image2DArray)
|
||||
0:107 move second child to first child (temp highp 2-component vector of int)
|
||||
0:107 'v2' (temp highp 2-component vector of int)
|
||||
0:107 imageQuerySize (global highp 2-component vector of int, operation at mediump)
|
||||
0:107 'i2Dqualified' (layout(binding=6 ) coherent volatile restrict uniform mediump image2D)
|
||||
0:165 Function Definition: fooIO( (global void)
|
||||
0:165 Function Parameters:
|
||||
0:167 Sequence
|
||||
0:167 Sequence
|
||||
0:167 move second child to first child (temp mediump 4-component vector of float)
|
||||
0:167 'v' (temp mediump 4-component vector of float)
|
||||
0:167 add (temp mediump 4-component vector of float)
|
||||
0:167 v: direct index for structure (in mediump 4-component vector of float)
|
||||
0:167 'inbinst' (in block{in mediump int a, in mediump 4-component vector of float v, in structure{global mediump int b} s})
|
||||
0:167 Constant:
|
||||
0:167 1 (const int)
|
||||
0:167 vAnon: direct index for structure (layout(location=13 ) centroid in mediump 4-component vector of float)
|
||||
0:167 'anon@0' (in block{layout(location=12 ) in mediump int aAnon, layout(location=13 ) centroid in mediump 4-component vector of float vAnon})
|
||||
0:167 Constant:
|
||||
0:167 1 (const uint)
|
||||
0:168 vector scale second child into first child (temp mediump 4-component vector of float)
|
||||
0:168 'v' (temp mediump 4-component vector of float)
|
||||
0:168 f: direct index for structure (in mediump float)
|
||||
0:168 direct index (temp block{in mediump float f})
|
||||
0:168 'arrayedInst' (in 4-element array of block{in mediump float f})
|
||||
0:168 Constant:
|
||||
0:168 2 (const int)
|
||||
0:168 Constant:
|
||||
0:168 0 (const int)
|
||||
0:169 vector scale second child into first child (temp mediump 4-component vector of float)
|
||||
0:169 'v' (temp mediump 4-component vector of float)
|
||||
0:169 f: direct index for structure (in mediump float)
|
||||
0:169 indirect index (temp block{in mediump float f})
|
||||
0:169 'arrayedInst' (in 4-element array of block{in mediump float f})
|
||||
0:169 'i' (uniform mediump int)
|
||||
0:169 Constant:
|
||||
0:169 0 (const int)
|
||||
0:179 Function Definition: foo_IO( (global void)
|
||||
0:179 Function Parameters:
|
||||
0:181 Sequence
|
||||
0:181 move second child to first child (temp highp float)
|
||||
0:181 'gl_FragDepth' (gl_FragDepth highp float FragDepth)
|
||||
0:181 Constant:
|
||||
0:181 0.200000
|
||||
0:182 'gl_Layer' (flat in highp int Layer)
|
||||
0:183 'gl_PrimitiveID' (flat in highp int PrimitiveID)
|
||||
0:184 Sequence
|
||||
0:184 move second child to first child (temp bool)
|
||||
0:184 'f' (temp bool)
|
||||
0:184 'gl_FrontFacing' (gl_FrontFacing bool Face)
|
||||
0:191 Function Definition: foo_GS( (global void)
|
||||
0:191 Function Parameters:
|
||||
0:193 Sequence
|
||||
0:193 Sequence
|
||||
0:193 move second child to first child (temp highp int)
|
||||
0:193 'l' (temp highp int)
|
||||
0:193 'gl_Layer' (flat in highp int Layer)
|
||||
0:194 Sequence
|
||||
0:194 move second child to first child (temp highp int)
|
||||
0:194 'p' (temp highp int)
|
||||
0:194 'gl_PrimitiveID' (flat in highp int PrimitiveID)
|
||||
0:207 Function Definition: pfooBad( (global void)
|
||||
0:207 Function Parameters:
|
||||
0:? Sequence
|
||||
0:210 move second child to first child (temp mediump 2-component vector of float)
|
||||
0:210 'h' (noContraction temp mediump 2-component vector of float)
|
||||
0:210 fma (global mediump 2-component vector of float)
|
||||
0:210 'inf' (smooth in mediump 2-component vector of float)
|
||||
0:210 'ing' (smooth in mediump 2-component vector of float)
|
||||
0:210 'h' (noContraction temp mediump 2-component vector of float)
|
||||
0:211 textureGatherOffset (global highp 4-component vector of float)
|
||||
0:211 direct index (temp highp sampler2D)
|
||||
0:211 'sArray' (uniform 4-element array of highp sampler2D)
|
||||
0:211 Constant:
|
||||
0:211 0 (const int)
|
||||
0:211 Constant:
|
||||
0:211 0.100000
|
||||
0:211 0.100000
|
||||
0:211 Convert float to int (temp highp 2-component vector of int)
|
||||
0:211 'inf' (smooth in mediump 2-component vector of float)
|
||||
0:212 textureGatherOffsets (global highp 4-component vector of float)
|
||||
0:212 direct index (temp highp sampler2D)
|
||||
0:212 'sArray' (uniform 4-element array of highp sampler2D)
|
||||
0:212 Constant:
|
||||
0:212 0 (const int)
|
||||
0:212 Constant:
|
||||
0:212 0.100000
|
||||
0:212 0.100000
|
||||
0:212 Constant:
|
||||
0:212 0 (const int)
|
||||
0:212 0 (const int)
|
||||
0:212 0 (const int)
|
||||
0:212 0 (const int)
|
||||
0:212 0 (const int)
|
||||
0:212 0 (const int)
|
||||
0:212 0 (const int)
|
||||
0:212 0 (const int)
|
||||
0:217 Function Definition: pfoo( (global void)
|
||||
0:217 Function Parameters:
|
||||
0:? Sequence
|
||||
0:220 move second child to first child (temp mediump 2-component vector of float)
|
||||
0:220 'h' (noContraction temp mediump 2-component vector of float)
|
||||
0:220 fma (global mediump 2-component vector of float)
|
||||
0:220 'inf' (smooth in mediump 2-component vector of float)
|
||||
0:220 'ing' (smooth in mediump 2-component vector of float)
|
||||
0:220 'h' (noContraction temp mediump 2-component vector of float)
|
||||
0:221 textureGatherOffset (global highp 4-component vector of float)
|
||||
0:221 direct index (temp highp sampler2D)
|
||||
0:221 'sArray' (uniform 4-element array of highp sampler2D)
|
||||
0:221 Constant:
|
||||
0:221 0 (const int)
|
||||
0:221 Constant:
|
||||
0:221 0.100000
|
||||
0:221 0.100000
|
||||
0:221 Convert float to int (temp highp 2-component vector of int)
|
||||
0:221 'inf' (smooth in mediump 2-component vector of float)
|
||||
0:222 textureGatherOffsets (global highp 4-component vector of float)
|
||||
0:222 direct index (temp highp sampler2D)
|
||||
0:222 'sArray' (uniform 4-element array of highp sampler2D)
|
||||
0:222 Constant:
|
||||
0:222 0 (const int)
|
||||
0:222 Constant:
|
||||
0:222 0.100000
|
||||
0:222 0.100000
|
||||
0:222 Constant:
|
||||
0:222 0 (const int)
|
||||
0:222 0 (const int)
|
||||
0:222 0 (const int)
|
||||
0:222 0 (const int)
|
||||
0:222 0 (const int)
|
||||
0:222 0 (const int)
|
||||
0:222 0 (const int)
|
||||
0:222 0 (const int)
|
||||
0:223 textureGatherOffsets (global highp 4-component vector of float)
|
||||
0:223 direct index (temp highp sampler2D)
|
||||
0:223 'sArray' (uniform 4-element array of highp sampler2D)
|
||||
0:223 Constant:
|
||||
0:223 0 (const int)
|
||||
0:223 Constant:
|
||||
0:223 0.100000
|
||||
0:223 0.100000
|
||||
0:223 'offsets' (uniform 4-element array of mediump 2-component vector of int)
|
||||
0:248 Function Definition: CAT( (global void)
|
||||
0:248 Function Parameters:
|
||||
0:250 Sequence
|
||||
0:250 Sequence
|
||||
0:250 move second child to first child (temp highp 4-component vector of float)
|
||||
0:250 'b4' (temp highp 4-component vector of float)
|
||||
0:250 texture (global highp 4-component vector of float)
|
||||
0:250 'CA4' (uniform highp samplerCubeArray)
|
||||
0:250 Constant:
|
||||
0:250 0.500000
|
||||
0:250 0.500000
|
||||
0:250 0.500000
|
||||
0:250 0.500000
|
||||
0:250 Constant:
|
||||
0:250 0.240000
|
||||
0:251 Sequence
|
||||
0:251 move second child to first child (temp highp 4-component vector of int)
|
||||
0:251 'b6' (temp highp 4-component vector of int)
|
||||
0:251 texture (global highp 4-component vector of int)
|
||||
0:251 'CA6' (uniform highp isamplerCubeArray)
|
||||
0:251 Constant:
|
||||
0:251 0.500000
|
||||
0:251 0.500000
|
||||
0:251 0.500000
|
||||
0:251 0.500000
|
||||
0:251 Constant:
|
||||
0:251 0.260000
|
||||
0:252 Sequence
|
||||
0:252 move second child to first child (temp highp 4-component vector of uint)
|
||||
0:252 'b7' (temp highp 4-component vector of uint)
|
||||
0:252 texture (global highp 4-component vector of uint)
|
||||
0:252 'CA7' (uniform highp usamplerCubeArray)
|
||||
0:252 Constant:
|
||||
0:252 0.500000
|
||||
0:252 0.500000
|
||||
0:252 0.500000
|
||||
0:252 0.500000
|
||||
0:252 Constant:
|
||||
0:252 0.270000
|
||||
0:255 Function Definition: badSample( (global void)
|
||||
0:255 Function Parameters:
|
||||
0:257 Sequence
|
||||
0:257 Sequence
|
||||
0:257 move second child to first child (temp lowp int)
|
||||
0:257 'a1' (temp lowp int)
|
||||
0:257 'gl_SampleID' (flat in lowp int SampleId)
|
||||
0:258 Sequence
|
||||
0:258 move second child to first child (temp mediump 2-component vector of float)
|
||||
0:258 'a2' (temp mediump 2-component vector of float)
|
||||
0:258 'gl_SamplePosition' (smooth in mediump 2-component vector of float SamplePosition)
|
||||
0:259 Sequence
|
||||
0:259 move second child to first child (temp highp int)
|
||||
0:259 'a3' (temp highp int)
|
||||
0:259 direct index (flat temp highp int SampleMaskIn)
|
||||
0:259 'gl_SampleMaskIn' (flat in 1-element array of highp int SampleMaskIn)
|
||||
0:259 Constant:
|
||||
0:259 0 (const int)
|
||||
0:260 move second child to first child (temp highp int)
|
||||
0:260 direct index (temp highp int SampleMaskIn)
|
||||
0:260 'gl_SampleMask' (out 1-element array of highp int SampleMaskIn)
|
||||
0:260 Constant:
|
||||
0:260 0 (const int)
|
||||
0:260 'a3' (temp highp int)
|
||||
0:261 Sequence
|
||||
0:261 move second child to first child (temp mediump int)
|
||||
0:261 'n' (temp mediump int)
|
||||
0:261 'gl_NumSamples' (uniform lowp int)
|
||||
0:268 Function Definition: goodSample( (global void)
|
||||
0:268 Function Parameters:
|
||||
0:270 Sequence
|
||||
0:270 Sequence
|
||||
0:270 move second child to first child (temp lowp int)
|
||||
0:270 'a1' (temp lowp int)
|
||||
0:270 'gl_SampleID' (flat in lowp int SampleId)
|
||||
0:271 Sequence
|
||||
0:271 move second child to first child (temp mediump 2-component vector of float)
|
||||
0:271 'a2' (temp mediump 2-component vector of float)
|
||||
0:271 'gl_SamplePosition' (smooth in mediump 2-component vector of float SamplePosition)
|
||||
0:272 Sequence
|
||||
0:272 move second child to first child (temp highp int)
|
||||
0:272 'a3' (temp highp int)
|
||||
0:272 direct index (flat temp highp int SampleMaskIn)
|
||||
0:272 'gl_SampleMaskIn' (flat in 1-element array of highp int SampleMaskIn)
|
||||
0:272 Constant:
|
||||
0:272 0 (const int)
|
||||
0:273 move second child to first child (temp highp int)
|
||||
0:273 direct index (temp highp int SampleMaskIn)
|
||||
0:273 'gl_SampleMask' (out 1-element array of highp int SampleMaskIn)
|
||||
0:273 Constant:
|
||||
0:273 0 (const int)
|
||||
0:273 'a3' (temp highp int)
|
||||
0:274 Sequence
|
||||
0:274 move second child to first child (temp mediump int)
|
||||
0:274 'n1' (temp mediump int)
|
||||
0:274 Constant:
|
||||
0:274 4 (const int)
|
||||
0:275 Sequence
|
||||
0:275 move second child to first child (temp mediump int)
|
||||
0:275 'n2' (temp mediump int)
|
||||
0:275 'gl_NumSamples' (uniform lowp int)
|
||||
0:283 Function Definition: badImageAtom( (global void)
|
||||
0:283 Function Parameters:
|
||||
0:? Sequence
|
||||
0:289 imageAtomicAdd (global highp int)
|
||||
0:289 'im2Di' (layout(r32i ) uniform highp iimage2D)
|
||||
0:289 'P' (uniform mediump 2-component vector of int)
|
||||
0:289 'dati' (temp mediump int)
|
||||
0:290 imageAtomicAdd (global highp uint)
|
||||
0:290 'im2Du' (layout(r32ui ) uniform highp uimage2D)
|
||||
0:290 'P' (uniform mediump 2-component vector of int)
|
||||
0:290 'datu' (temp mediump uint)
|
||||
0:291 imageAtomicMin (global highp int)
|
||||
0:291 'im2Di' (layout(r32i ) uniform highp iimage2D)
|
||||
0:291 'P' (uniform mediump 2-component vector of int)
|
||||
0:291 'dati' (temp mediump int)
|
||||
0:292 imageAtomicMin (global highp uint)
|
||||
0:292 'im2Du' (layout(r32ui ) uniform highp uimage2D)
|
||||
0:292 'P' (uniform mediump 2-component vector of int)
|
||||
0:292 'datu' (temp mediump uint)
|
||||
0:293 imageAtomicMax (global highp int)
|
||||
0:293 'im2Di' (layout(r32i ) uniform highp iimage2D)
|
||||
0:293 'P' (uniform mediump 2-component vector of int)
|
||||
0:293 'dati' (temp mediump int)
|
||||
0:294 imageAtomicMax (global highp uint)
|
||||
0:294 'im2Du' (layout(r32ui ) uniform highp uimage2D)
|
||||
0:294 'P' (uniform mediump 2-component vector of int)
|
||||
0:294 'datu' (temp mediump uint)
|
||||
0:295 imageAtomicAnd (global highp int)
|
||||
0:295 'im2Di' (layout(r32i ) uniform highp iimage2D)
|
||||
0:295 'P' (uniform mediump 2-component vector of int)
|
||||
0:295 'dati' (temp mediump int)
|
||||
0:296 imageAtomicAnd (global highp uint)
|
||||
0:296 'im2Du' (layout(r32ui ) uniform highp uimage2D)
|
||||
0:296 'P' (uniform mediump 2-component vector of int)
|
||||
0:296 'datu' (temp mediump uint)
|
||||
0:297 imageAtomicOr (global highp int)
|
||||
0:297 'im2Di' (layout(r32i ) uniform highp iimage2D)
|
||||
0:297 'P' (uniform mediump 2-component vector of int)
|
||||
0:297 'dati' (temp mediump int)
|
||||
0:298 imageAtomicOr (global highp uint)
|
||||
0:298 'im2Du' (layout(r32ui ) uniform highp uimage2D)
|
||||
0:298 'P' (uniform mediump 2-component vector of int)
|
||||
0:298 'datu' (temp mediump uint)
|
||||
0:299 imageAtomicXor (global highp int)
|
||||
0:299 'im2Di' (layout(r32i ) uniform highp iimage2D)
|
||||
0:299 'P' (uniform mediump 2-component vector of int)
|
||||
0:299 'dati' (temp mediump int)
|
||||
0:300 imageAtomicXor (global highp uint)
|
||||
0:300 'im2Du' (layout(r32ui ) uniform highp uimage2D)
|
||||
0:300 'P' (uniform mediump 2-component vector of int)
|
||||
0:300 'datu' (temp mediump uint)
|
||||
0:301 imageAtomicExchange (global highp int)
|
||||
0:301 'im2Di' (layout(r32i ) uniform highp iimage2D)
|
||||
0:301 'P' (uniform mediump 2-component vector of int)
|
||||
0:301 'dati' (temp mediump int)
|
||||
0:302 imageAtomicExchange (global highp uint)
|
||||
0:302 'im2Du' (layout(r32ui ) uniform highp uimage2D)
|
||||
0:302 'P' (uniform mediump 2-component vector of int)
|
||||
0:302 'datu' (temp mediump uint)
|
||||
0:303 imageAtomicExchange (global highp float)
|
||||
0:303 'im2Df' (layout(r32f ) uniform highp image2D)
|
||||
0:303 'P' (uniform mediump 2-component vector of int)
|
||||
0:303 'datf' (temp mediump float)
|
||||
0:304 imageAtomicCompSwap (global highp int)
|
||||
0:304 'im2Di' (layout(r32i ) uniform highp iimage2D)
|
||||
0:304 'P' (uniform mediump 2-component vector of int)
|
||||
0:304 Constant:
|
||||
0:304 3 (const int)
|
||||
0:304 'dati' (temp mediump int)
|
||||
0:305 imageAtomicCompSwap (global highp uint)
|
||||
0:305 'im2Du' (layout(r32ui ) uniform highp uimage2D)
|
||||
0:305 'P' (uniform mediump 2-component vector of int)
|
||||
0:305 Constant:
|
||||
0:305 5 (const uint)
|
||||
0:305 'datu' (temp mediump uint)
|
||||
0:316 Function Definition: goodImageAtom( (global void)
|
||||
0:316 Function Parameters:
|
||||
0:? Sequence
|
||||
0:322 imageAtomicAdd (global highp int)
|
||||
0:322 'im2Di' (layout(r32i ) uniform highp iimage2D)
|
||||
0:322 'P' (uniform mediump 2-component vector of int)
|
||||
0:322 'dati' (temp mediump int)
|
||||
0:323 imageAtomicAdd (global highp uint)
|
||||
0:323 'im2Du' (layout(r32ui ) uniform highp uimage2D)
|
||||
0:323 'P' (uniform mediump 2-component vector of int)
|
||||
0:323 'datu' (temp mediump uint)
|
||||
0:324 imageAtomicMin (global highp int)
|
||||
0:324 'im2Di' (layout(r32i ) uniform highp iimage2D)
|
||||
0:324 'P' (uniform mediump 2-component vector of int)
|
||||
0:324 'dati' (temp mediump int)
|
||||
0:325 imageAtomicMin (global highp uint)
|
||||
0:325 'im2Du' (layout(r32ui ) uniform highp uimage2D)
|
||||
0:325 'P' (uniform mediump 2-component vector of int)
|
||||
0:325 'datu' (temp mediump uint)
|
||||
0:326 imageAtomicMax (global highp int)
|
||||
0:326 'im2Di' (layout(r32i ) uniform highp iimage2D)
|
||||
0:326 'P' (uniform mediump 2-component vector of int)
|
||||
0:326 'dati' (temp mediump int)
|
||||
0:327 imageAtomicMax (global highp uint)
|
||||
0:327 'im2Du' (layout(r32ui ) uniform highp uimage2D)
|
||||
0:327 'P' (uniform mediump 2-component vector of int)
|
||||
0:327 'datu' (temp mediump uint)
|
||||
0:328 imageAtomicAnd (global highp int)
|
||||
0:328 'im2Di' (layout(r32i ) uniform highp iimage2D)
|
||||
0:328 'P' (uniform mediump 2-component vector of int)
|
||||
0:328 'dati' (temp mediump int)
|
||||
0:329 imageAtomicAnd (global highp uint)
|
||||
0:329 'im2Du' (layout(r32ui ) uniform highp uimage2D)
|
||||
0:329 'P' (uniform mediump 2-component vector of int)
|
||||
0:329 'datu' (temp mediump uint)
|
||||
0:330 imageAtomicOr (global highp int)
|
||||
0:330 'im2Di' (layout(r32i ) uniform highp iimage2D)
|
||||
0:330 'P' (uniform mediump 2-component vector of int)
|
||||
0:330 'dati' (temp mediump int)
|
||||
0:331 imageAtomicOr (global highp uint)
|
||||
0:331 'im2Du' (layout(r32ui ) uniform highp uimage2D)
|
||||
0:331 'P' (uniform mediump 2-component vector of int)
|
||||
0:331 'datu' (temp mediump uint)
|
||||
0:332 imageAtomicXor (global highp int)
|
||||
0:332 'im2Di' (layout(r32i ) uniform highp iimage2D)
|
||||
0:332 'P' (uniform mediump 2-component vector of int)
|
||||
0:332 'dati' (temp mediump int)
|
||||
0:333 imageAtomicXor (global highp uint)
|
||||
0:333 'im2Du' (layout(r32ui ) uniform highp uimage2D)
|
||||
0:333 'P' (uniform mediump 2-component vector of int)
|
||||
0:333 'datu' (temp mediump uint)
|
||||
0:334 imageAtomicExchange (global highp int)
|
||||
0:334 'im2Di' (layout(r32i ) uniform highp iimage2D)
|
||||
0:334 'P' (uniform mediump 2-component vector of int)
|
||||
0:334 'dati' (temp mediump int)
|
||||
0:335 imageAtomicExchange (global highp uint)
|
||||
0:335 'im2Du' (layout(r32ui ) uniform highp uimage2D)
|
||||
0:335 'P' (uniform mediump 2-component vector of int)
|
||||
0:335 'datu' (temp mediump uint)
|
||||
0:336 imageAtomicExchange (global highp float)
|
||||
0:336 'im2Df' (layout(r32f ) uniform highp image2D)
|
||||
0:336 'P' (uniform mediump 2-component vector of int)
|
||||
0:336 'datf' (temp mediump float)
|
||||
0:337 imageAtomicCompSwap (global highp int)
|
||||
0:337 'im2Di' (layout(r32i ) uniform highp iimage2D)
|
||||
0:337 'P' (uniform mediump 2-component vector of int)
|
||||
0:337 Constant:
|
||||
0:337 3 (const int)
|
||||
0:337 'dati' (temp mediump int)
|
||||
0:338 imageAtomicCompSwap (global highp uint)
|
||||
0:338 'im2Du' (layout(r32ui ) uniform highp uimage2D)
|
||||
0:338 'P' (uniform mediump 2-component vector of int)
|
||||
0:338 Constant:
|
||||
0:338 5 (const uint)
|
||||
0:338 'datu' (temp mediump uint)
|
||||
0:340 imageAtomicMax (global highp int)
|
||||
0:340 'badIm2Di' (layout(rgba16i ) uniform highp iimage2D)
|
||||
0:340 'P' (uniform mediump 2-component vector of int)
|
||||
0:340 'dati' (temp mediump int)
|
||||
0:341 imageAtomicMax (global highp uint)
|
||||
0:341 'badIm2Du' (layout(rgba8ui ) uniform highp uimage2D)
|
||||
0:341 'P' (uniform mediump 2-component vector of int)
|
||||
0:341 'datu' (temp mediump uint)
|
||||
0:342 imageAtomicExchange (global highp float)
|
||||
0:342 'badIm2Df' (layout(rgba32f ) uniform highp image2D)
|
||||
0:342 'P' (uniform mediump 2-component vector of int)
|
||||
0:342 'datf' (temp mediump float)
|
||||
0:353 Function Definition: badInterp( (global void)
|
||||
0:353 Function Parameters:
|
||||
0:355 Sequence
|
||||
0:355 interpolateAtCentroid (global mediump 2-component vector of float)
|
||||
0:355 'colorfc' (centroid flat in mediump 2-component vector of float)
|
||||
0:356 interpolateAtSample (global mediump 2-component vector of float)
|
||||
0:356 'colorfc' (centroid flat in mediump 2-component vector of float)
|
||||
0:356 Constant:
|
||||
0:356 1 (const int)
|
||||
0:357 interpolateAtOffset (global mediump 2-component vector of float)
|
||||
0:357 'colorfc' (centroid flat in mediump 2-component vector of float)
|
||||
0:357 Constant:
|
||||
0:357 0.200000
|
||||
0:357 0.200000
|
||||
0:369 Function Definition: interp( (global void)
|
||||
0:369 Function Parameters:
|
||||
0:? Sequence
|
||||
0:376 move second child to first child (temp mediump 2-component vector of float)
|
||||
0:376 'res2' (temp mediump 2-component vector of float)
|
||||
0:376 interpolateAtCentroid (global mediump 2-component vector of float)
|
||||
0:376 'colorfc' (centroid flat in mediump 2-component vector of float)
|
||||
0:377 move second child to first child (temp mediump 4-component vector of float)
|
||||
0:377 'res4' (temp mediump 4-component vector of float)
|
||||
0:377 interpolateAtCentroid (global mediump 4-component vector of float)
|
||||
0:377 'colorSampIn' (smooth sample in mediump 4-component vector of float)
|
||||
0:378 move second child to first child (temp mediump 4-component vector of float)
|
||||
0:378 'res4' (temp mediump 4-component vector of float)
|
||||
0:378 interpolateAtCentroid (global mediump 4-component vector of float)
|
||||
0:378 'colorfsi' (flat sample in mediump 4-component vector of float)
|
||||
0:379 move second child to first child (temp mediump float)
|
||||
0:379 'res' (temp mediump float)
|
||||
0:379 interpolateAtCentroid (global mediump float)
|
||||
0:379 'scalarIn' (smooth in mediump float)
|
||||
0:380 'res3' (temp mediump 3-component vector of float)
|
||||
0:381 move second child to first child (temp mediump 3-component vector of float)
|
||||
0:381 'res3' (temp mediump 3-component vector of float)
|
||||
0:381 interpolateAtCentroid (global mediump 3-component vector of float)
|
||||
0:381 direct index (smooth sample temp mediump 3-component vector of float)
|
||||
0:381 'sampInArray' (smooth sample in 4-element array of mediump 3-component vector of float)
|
||||
0:381 Constant:
|
||||
0:381 2 (const int)
|
||||
0:382 move second child to first child (temp mediump 2-component vector of float)
|
||||
0:382 'res2' (temp mediump 2-component vector of float)
|
||||
0:382 interpolateAtCentroid (global mediump 2-component vector of float)
|
||||
0:382 vector swizzle (temp mediump 2-component vector of float)
|
||||
0:382 direct index (smooth sample temp mediump 3-component vector of float)
|
||||
0:382 'sampInArray' (smooth sample in 4-element array of mediump 3-component vector of float)
|
||||
0:382 Constant:
|
||||
0:382 2 (const int)
|
||||
0:382 Sequence
|
||||
0:382 Constant:
|
||||
0:382 0 (const int)
|
||||
0:382 Constant:
|
||||
0:382 1 (const int)
|
||||
0:384 'res3' (temp mediump 3-component vector of float)
|
||||
0:385 move second child to first child (temp mediump 3-component vector of float)
|
||||
0:385 'res3' (temp mediump 3-component vector of float)
|
||||
0:385 interpolateAtSample (global mediump 3-component vector of float)
|
||||
0:385 indirect index (smooth sample temp mediump 3-component vector of float)
|
||||
0:385 'sampInArray' (smooth sample in 4-element array of mediump 3-component vector of float)
|
||||
0:385 'i' (uniform mediump int)
|
||||
0:385 Constant:
|
||||
0:385 0 (const int)
|
||||
0:386 move second child to first child (temp mediump 2-component vector of float)
|
||||
0:386 'res2' (temp mediump 2-component vector of float)
|
||||
0:386 interpolateAtSample (global mediump 2-component vector of float)
|
||||
0:386 vector swizzle (temp mediump 2-component vector of float)
|
||||
0:386 direct index (smooth sample temp mediump 3-component vector of float)
|
||||
0:386 'sampInArray' (smooth sample in 4-element array of mediump 3-component vector of float)
|
||||
0:386 Constant:
|
||||
0:386 2 (const int)
|
||||
0:386 Sequence
|
||||
0:386 Constant:
|
||||
0:386 0 (const int)
|
||||
0:386 Constant:
|
||||
0:386 1 (const int)
|
||||
0:386 Constant:
|
||||
0:386 2 (const int)
|
||||
0:387 move second child to first child (temp mediump float)
|
||||
0:387 'res' (temp mediump float)
|
||||
0:387 interpolateAtSample (global mediump float)
|
||||
0:387 'scalarIn' (smooth in mediump float)
|
||||
0:387 Constant:
|
||||
0:387 1 (const int)
|
||||
0:389 'res3' (temp mediump 3-component vector of float)
|
||||
0:390 move second child to first child (temp mediump 3-component vector of float)
|
||||
0:390 'res3' (temp mediump 3-component vector of float)
|
||||
0:390 interpolateAtOffset (global mediump 3-component vector of float)
|
||||
0:390 direct index (smooth sample temp mediump 3-component vector of float)
|
||||
0:390 'sampInArray' (smooth sample in 4-element array of mediump 3-component vector of float)
|
||||
0:390 Constant:
|
||||
0:390 2 (const int)
|
||||
0:390 Constant:
|
||||
0:390 0.200000
|
||||
0:390 0.200000
|
||||
0:391 move second child to first child (temp mediump 2-component vector of float)
|
||||
0:391 'res2' (temp mediump 2-component vector of float)
|
||||
0:391 interpolateAtOffset (global mediump 2-component vector of float)
|
||||
0:391 vector swizzle (temp mediump 2-component vector of float)
|
||||
0:391 direct index (smooth sample temp mediump 3-component vector of float)
|
||||
0:391 'sampInArray' (smooth sample in 4-element array of mediump 3-component vector of float)
|
||||
0:391 Constant:
|
||||
0:391 2 (const int)
|
||||
0:391 Sequence
|
||||
0:391 Constant:
|
||||
0:391 0 (const int)
|
||||
0:391 Constant:
|
||||
0:391 1 (const int)
|
||||
0:391 Constant:
|
||||
0:391 0.200000
|
||||
0:391 0.200000
|
||||
0:392 move second child to first child (temp mediump float)
|
||||
0:392 'res' (temp mediump float)
|
||||
0:392 interpolateAtOffset (global mediump float)
|
||||
0:392 add (temp mediump float)
|
||||
0:392 'scalarIn' (smooth in mediump float)
|
||||
0:392 'scalarIn' (smooth in mediump float)
|
||||
0:392 Constant:
|
||||
0:392 0.200000
|
||||
0:392 0.200000
|
||||
0:393 move second child to first child (temp mediump float)
|
||||
0:393 'res' (temp mediump float)
|
||||
0:393 interpolateAtOffset (global mediump float)
|
||||
0:393 'scalarIn' (smooth in mediump float)
|
||||
0:393 Constant:
|
||||
0:393 0.200000
|
||||
0:393 0.200000
|
||||
0:396 move second child to first child (temp mediump float)
|
||||
0:396 'res' (temp mediump float)
|
||||
0:396 interpolateAtCentroid (global mediump float)
|
||||
0:396 'f' (temp mediump float)
|
||||
0:397 move second child to first child (temp mediump 4-component vector of float)
|
||||
0:397 'res4' (temp mediump 4-component vector of float)
|
||||
0:397 interpolateAtSample (global mediump 4-component vector of float)
|
||||
0:397 'outp' (out mediump 4-component vector of float)
|
||||
0:397 Constant:
|
||||
0:397 0 (const int)
|
||||
0:427 Function Definition: blendFoo( (temp void)
|
||||
0:427 Function Parameters:
|
||||
0:428 Function Definition: blendFoo(vf3; (global void)
|
||||
0:428 Function Parameters:
|
||||
0:428 'v' (in mediump 3-component vector of float)
|
||||
0:? Linker Objects
|
||||
0:? 'gl_FragCoord' (smooth in mediump 4-component vector of float)
|
||||
0:? 'v3' (layout(location=2 ) smooth in mediump 3-component vector of float)
|
||||
@ -1844,7 +1172,6 @@ ERROR: node is still EOpNull!
|
||||
0:? 'aliased' (layout(location=13 ) smooth in mediump 4-component vector of float)
|
||||
0:? 'arrayedInst' (in 4-element array of block{in mediump float f})
|
||||
0:? 'gl_FragDepth' (gl_FragDepth highp float FragDepth)
|
||||
0:? 'gl_FragDepth' (gl_FragDepth highp float FragDepth)
|
||||
0:? 'inf' (smooth in mediump 2-component vector of float)
|
||||
0:? 'ing' (smooth in mediump 2-component vector of float)
|
||||
0:? 'offsets' (uniform 4-element array of mediump 2-component vector of int)
|
||||
|
@ -250,74 +250,6 @@ ERROR: node is still EOpNull!
|
||||
0:52 'gl_Layer' (layout(stream=0 ) out highp int Layer)
|
||||
0:52 Constant:
|
||||
0:52 2 (const int)
|
||||
0:63 Function Definition: foo(i1; (global void)
|
||||
0:63 Function Parameters:
|
||||
0:63 'a' (in highp int)
|
||||
0:65 Sequence
|
||||
0:65 move second child to first child (temp mediump 4-component vector of float)
|
||||
0:65 a: direct index for structure (layout(stream=0 ) out mediump 4-component vector of float)
|
||||
0:65 'ouuaa6' (layout(stream=0 ) out block{layout(stream=0 ) out mediump 4-component vector of float a})
|
||||
0:65 Constant:
|
||||
0:65 0 (const int)
|
||||
0:65 Constant:
|
||||
0:65 1.000000
|
||||
0:65 1.000000
|
||||
0:65 1.000000
|
||||
0:65 1.000000
|
||||
0:114 Function Definition: fooe1( (global void)
|
||||
0:114 Function Parameters:
|
||||
0:116 Sequence
|
||||
0:116 'gl_ViewportIndex' (temp float)
|
||||
0:117 'gl_MaxViewports' (temp float)
|
||||
0:118 Constant:
|
||||
0:118 4 (const int)
|
||||
0:119 Sequence
|
||||
0:119 move second child to first child (temp highp int)
|
||||
0:119 'inv' (temp highp int)
|
||||
0:119 'gl_InvocationID' (in highp int InvocationID)
|
||||
0:134 Function Definition: notHere( (global void)
|
||||
0:134 Function Parameters:
|
||||
0:136 Sequence
|
||||
0:136 'gl_MaxGeometryVaryingComponents' (temp float)
|
||||
0:137 'gl_VerticesIn' (temp float)
|
||||
0:140 Function Definition: pointSize1( (global void)
|
||||
0:140 Function Parameters:
|
||||
0:142 Sequence
|
||||
0:142 Sequence
|
||||
0:142 move second child to first child (temp highp float)
|
||||
0:142 'ps' (temp highp float)
|
||||
0:142 gl_PointSize: direct index for structure (in highp float PointSize)
|
||||
0:142 direct index (temp block{in highp 4-component vector of float Position gl_Position, in highp float PointSize gl_PointSize})
|
||||
0:142 'gl_in' (in 4-element array of block{in highp 4-component vector of float Position gl_Position, in highp float PointSize gl_PointSize})
|
||||
0:142 Constant:
|
||||
0:142 3 (const int)
|
||||
0:142 Constant:
|
||||
0:142 1 (const int)
|
||||
0:143 move second child to first child (temp highp float)
|
||||
0:143 gl_PointSize: direct index for structure (layout(stream=0 ) gl_PointSize highp float PointSize)
|
||||
0:143 'anon@1' (layout(stream=0 ) out block{layout(stream=0 ) gl_Position highp 4-component vector of float Position gl_Position, layout(stream=0 ) gl_PointSize highp float PointSize gl_PointSize})
|
||||
0:143 Constant:
|
||||
0:143 1 (const uint)
|
||||
0:143 'ps' (temp highp float)
|
||||
0:148 Function Definition: pointSize2( (global void)
|
||||
0:148 Function Parameters:
|
||||
0:150 Sequence
|
||||
0:150 Sequence
|
||||
0:150 move second child to first child (temp highp float)
|
||||
0:150 'ps' (temp highp float)
|
||||
0:150 gl_PointSize: direct index for structure (in highp float PointSize)
|
||||
0:150 direct index (temp block{in highp 4-component vector of float Position gl_Position, in highp float PointSize gl_PointSize})
|
||||
0:150 'gl_in' (in 4-element array of block{in highp 4-component vector of float Position gl_Position, in highp float PointSize gl_PointSize})
|
||||
0:150 Constant:
|
||||
0:150 3 (const int)
|
||||
0:150 Constant:
|
||||
0:150 1 (const int)
|
||||
0:151 move second child to first child (temp highp float)
|
||||
0:151 gl_PointSize: direct index for structure (layout(stream=0 ) gl_PointSize highp float PointSize)
|
||||
0:151 'anon@1' (layout(stream=0 ) out block{layout(stream=0 ) gl_Position highp 4-component vector of float Position gl_Position, layout(stream=0 ) gl_PointSize highp float PointSize gl_PointSize})
|
||||
0:151 Constant:
|
||||
0:151 1 (const uint)
|
||||
0:151 'ps' (temp highp float)
|
||||
0:? Linker Objects
|
||||
0:? 'fromV' (in 4-element array of block{in mediump 3-component vector of float color})
|
||||
0:? 'nonBlockUnsized' (in 4-element array of mediump 4-component vector of float)
|
||||
|
@ -514,172 +514,6 @@ ERROR: node is still EOpNull!
|
||||
0:58 Barrier (global void)
|
||||
0:61 Branch: Return
|
||||
0:63 Barrier (global void)
|
||||
0:69 Function Definition: foo( (global void)
|
||||
0:69 Function Parameters:
|
||||
0:71 Sequence
|
||||
0:71 gl_Position: direct index for structure (out highp 4-component vector of float Position)
|
||||
0:71 direct index (temp block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
||||
0:71 'gl_out' (out 4-element array of block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
||||
0:71 Constant:
|
||||
0:71 4 (const int)
|
||||
0:71 Constant:
|
||||
0:71 0 (const int)
|
||||
0:73 Barrier (global void)
|
||||
0:92 Function Definition: foop( (global void)
|
||||
0:92 Function Parameters:
|
||||
0:? Sequence
|
||||
0:95 move second child to first child (temp highp float)
|
||||
0:95 'd' (noContraction temp highp float)
|
||||
0:95 fma (global highp float)
|
||||
0:95 'd' (noContraction temp highp float)
|
||||
0:95 'd' (noContraction temp highp float)
|
||||
0:95 'd' (noContraction temp highp float)
|
||||
0:112 Function Definition: pointSize2( (global void)
|
||||
0:112 Function Parameters:
|
||||
0:114 Sequence
|
||||
0:114 Sequence
|
||||
0:114 move second child to first child (temp highp float)
|
||||
0:114 'ps' (temp highp float)
|
||||
0:114 gl_PointSize: direct index for structure (in highp float PointSize)
|
||||
0:114 direct index (temp block{in highp 4-component vector of float Position gl_Position, in highp float PointSize gl_PointSize})
|
||||
0:114 'gl_in' (in 32-element array of block{in highp 4-component vector of float Position gl_Position, in highp float PointSize gl_PointSize})
|
||||
0:114 Constant:
|
||||
0:114 1 (const int)
|
||||
0:114 Constant:
|
||||
0:114 1 (const int)
|
||||
0:115 move second child to first child (temp highp float)
|
||||
0:115 gl_PointSize: direct index for structure (out highp float PointSize)
|
||||
0:115 indirect index (temp block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
||||
0:115 'gl_out' (out 4-element array of block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
||||
0:115 'gl_InvocationID' (in highp int InvocationID)
|
||||
0:115 Constant:
|
||||
0:115 1 (const int)
|
||||
0:115 'ps' (temp highp float)
|
||||
0:122 Function Definition: goodfoop( (global void)
|
||||
0:122 Function Parameters:
|
||||
0:? Sequence
|
||||
0:126 multiply second child into first child (temp highp 3-component vector of float)
|
||||
0:126 'pv3' (noContraction temp highp 3-component vector of float)
|
||||
0:126 'pv3' (noContraction temp highp 3-component vector of float)
|
||||
0:127 move second child to first child (temp highp 3-component vector of float)
|
||||
0:127 'pv3' (noContraction temp highp 3-component vector of float)
|
||||
0:127 fma (global highp 3-component vector of float)
|
||||
0:127 'pv3' (noContraction temp highp 3-component vector of float)
|
||||
0:127 'pv3' (noContraction temp highp 3-component vector of float)
|
||||
0:127 'pv3' (noContraction temp highp 3-component vector of float)
|
||||
0:128 move second child to first child (temp highp float)
|
||||
0:128 'd' (noContraction temp highp float)
|
||||
0:128 fma (global highp float)
|
||||
0:128 'd' (noContraction temp highp float)
|
||||
0:128 'd' (noContraction temp highp float)
|
||||
0:128 'd' (noContraction temp highp float)
|
||||
0:131 Function Definition: bbBad( (global void)
|
||||
0:131 Function Parameters:
|
||||
0:133 Sequence
|
||||
0:133 'gl_BoundingBoxOES' (patch out 2-element array of highp 4-component vector of float BoundingBox)
|
||||
0:138 Function Definition: bb( (global void)
|
||||
0:138 Function Parameters:
|
||||
0:140 Sequence
|
||||
0:140 move second child to first child (temp highp 4-component vector of float)
|
||||
0:140 direct index (patch temp highp 4-component vector of float BoundingBox)
|
||||
0:140 'gl_BoundingBoxOES' (patch out 2-element array of highp 4-component vector of float BoundingBox)
|
||||
0:140 Constant:
|
||||
0:140 0 (const int)
|
||||
0:140 Constant:
|
||||
0:140 0.000000
|
||||
0:140 0.000000
|
||||
0:140 0.000000
|
||||
0:140 0.000000
|
||||
0:141 move second child to first child (temp highp 4-component vector of float)
|
||||
0:141 direct index (patch temp highp 4-component vector of float BoundingBox)
|
||||
0:141 'gl_BoundingBoxOES' (patch out 2-element array of highp 4-component vector of float BoundingBox)
|
||||
0:141 Constant:
|
||||
0:141 1 (const int)
|
||||
0:141 Constant:
|
||||
0:141 1.000000
|
||||
0:141 1.000000
|
||||
0:141 1.000000
|
||||
0:141 1.000000
|
||||
0:142 move second child to first child (temp highp 4-component vector of float)
|
||||
0:142 direct index (patch temp highp 4-component vector of float BoundingBox)
|
||||
0:142 'gl_BoundingBoxOES' (patch out 2-element array of highp 4-component vector of float BoundingBox)
|
||||
0:142 Constant:
|
||||
0:142 2 (const int)
|
||||
0:142 Constant:
|
||||
0:142 2.000000
|
||||
0:142 2.000000
|
||||
0:142 2.000000
|
||||
0:142 2.000000
|
||||
0:153 Function Definition: outputtingOutparam(i1; (global void)
|
||||
0:153 Function Parameters:
|
||||
0:153 'a' (out highp int)
|
||||
0:155 Sequence
|
||||
0:155 move second child to first child (temp highp int)
|
||||
0:155 'a' (out highp int)
|
||||
0:155 Constant:
|
||||
0:155 2 (const int)
|
||||
0:158 Function Definition: outputting( (global void)
|
||||
0:158 Function Parameters:
|
||||
0:160 Sequence
|
||||
0:160 move second child to first child (temp highp int)
|
||||
0:160 indirect index (temp highp int)
|
||||
0:160 'outa' (out 4-element array of highp int)
|
||||
0:160 'gl_InvocationID' (in highp int InvocationID)
|
||||
0:160 Constant:
|
||||
0:160 2 (const int)
|
||||
0:161 move second child to first child (temp highp int)
|
||||
0:161 direct index (temp highp int)
|
||||
0:161 'outa' (out 4-element array of highp int)
|
||||
0:161 Constant:
|
||||
0:161 1 (const int)
|
||||
0:161 Constant:
|
||||
0:161 2 (const int)
|
||||
0:162 move second child to first child (temp highp 4-component vector of float)
|
||||
0:162 gl_Position: direct index for structure (out highp 4-component vector of float Position)
|
||||
0:162 direct index (temp block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
||||
0:162 'gl_out' (out 4-element array of block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
||||
0:162 Constant:
|
||||
0:162 0 (const int)
|
||||
0:162 Constant:
|
||||
0:162 0 (const int)
|
||||
0:162 Constant:
|
||||
0:162 1.000000
|
||||
0:162 1.000000
|
||||
0:162 1.000000
|
||||
0:162 1.000000
|
||||
0:163 direct index (temp highp int)
|
||||
0:163 'outa' (out 4-element array of highp int)
|
||||
0:163 Constant:
|
||||
0:163 1 (const int)
|
||||
0:164 direct index (temp block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
||||
0:164 'gl_out' (out 4-element array of block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
||||
0:164 Constant:
|
||||
0:164 0 (const int)
|
||||
0:165 Function Call: outputtingOutparam(i1; (global void)
|
||||
0:165 direct index (temp highp int)
|
||||
0:165 'outa' (out 4-element array of highp int)
|
||||
0:165 Constant:
|
||||
0:165 0 (const int)
|
||||
0:166 Function Call: outputtingOutparam(i1; (global void)
|
||||
0:166 indirect index (temp highp int)
|
||||
0:166 'outa' (out 4-element array of highp int)
|
||||
0:166 'gl_InvocationID' (in highp int InvocationID)
|
||||
0:167 move second child to first child (temp highp float)
|
||||
0:167 f: direct index for structure (out highp float)
|
||||
0:167 direct index (patch temp block{out highp float f})
|
||||
0:167 'patchIName' (patch out 4-element array of block{out highp float f})
|
||||
0:167 Constant:
|
||||
0:167 1 (const int)
|
||||
0:167 Constant:
|
||||
0:167 0 (const int)
|
||||
0:167 Constant:
|
||||
0:167 3.140000
|
||||
0:168 move second child to first child (temp highp int)
|
||||
0:168 indirect index (temp highp int)
|
||||
0:168 'outa' (out 4-element array of highp int)
|
||||
0:168 'gl_InvocationID' (in highp int InvocationID)
|
||||
0:168 Constant:
|
||||
0:168 2 (const int)
|
||||
0:? Linker Objects
|
||||
0:? 'gl_out' (out 4-element array of block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
||||
0:? 'outa' (out 4-element array of highp int)
|
||||
|
@ -274,19 +274,6 @@ ERROR: node is still EOpNull!
|
||||
0:48 Constant:
|
||||
0:48 0.000000
|
||||
0:48 'cd' (temp highp float)
|
||||
0:117 Function Definition: pointSize2( (global void)
|
||||
0:117 Function Parameters:
|
||||
0:? Sequence
|
||||
0:120 move second child to first child (temp highp float)
|
||||
0:120 gl_PointSize: direct index for structure (gl_PointSize highp float PointSize)
|
||||
0:120 'anon@1' (out block{gl_Position highp 4-component vector of float Position gl_Position, gl_PointSize highp float PointSize gl_PointSize})
|
||||
0:120 Constant:
|
||||
0:120 1 (const uint)
|
||||
0:120 'ps' (temp highp float)
|
||||
0:125 Function Definition: bbbad( (global void)
|
||||
0:125 Function Parameters:
|
||||
0:127 Sequence
|
||||
0:127 'gl_BoundingBoxOES' (temp float)
|
||||
0:? Linker Objects
|
||||
0:? 'patchIn' (patch in highp 4-component vector of float)
|
||||
0:? 'patchOut' (patch out highp 4-component vector of float)
|
||||
|
@ -1158,693 +1158,6 @@ ERROR: node is still EOpNull!
|
||||
0:48 'v4' (temp mediump 4-component vector of float)
|
||||
0:48 UnpackSnorm4x8 (global mediump 4-component vector of float, operation at highp)
|
||||
0:48 'u1' (temp highp uint)
|
||||
0:60 Function Definition: foo( (global void)
|
||||
0:60 Function Parameters:
|
||||
0:? Sequence
|
||||
0:63 move second child to first child (temp highp 2-component vector of int)
|
||||
0:63 'v2' (temp highp 2-component vector of int)
|
||||
0:63 textureSize (global highp 2-component vector of int)
|
||||
0:63 's2dms' (uniform highp sampler2DMS)
|
||||
0:64 move second child to first child (temp highp 2-component vector of int)
|
||||
0:64 'v2' (temp highp 2-component vector of int)
|
||||
0:64 textureSize (global highp 2-component vector of int)
|
||||
0:64 'us2dms' (uniform highp usampler2DMS)
|
||||
0:65 Sequence
|
||||
0:65 move second child to first child (temp highp 4-component vector of float)
|
||||
0:65 'v4' (temp highp 4-component vector of float)
|
||||
0:65 textureFetch (global highp 4-component vector of float)
|
||||
0:65 's2dms' (uniform highp sampler2DMS)
|
||||
0:65 'v2' (temp highp 2-component vector of int)
|
||||
0:65 Constant:
|
||||
0:65 2 (const int)
|
||||
0:66 Sequence
|
||||
0:66 move second child to first child (temp highp 4-component vector of int)
|
||||
0:66 'iv4' (temp highp 4-component vector of int)
|
||||
0:66 textureFetch (global highp 4-component vector of int)
|
||||
0:66 'is2dms' (uniform highp isampler2DMS)
|
||||
0:66 'v2' (temp highp 2-component vector of int)
|
||||
0:66 Constant:
|
||||
0:66 2 (const int)
|
||||
0:67 Constant:
|
||||
0:67 0.000000
|
||||
0:69 frexp (global highp float)
|
||||
0:69 'f' (temp highp float)
|
||||
0:69 'ini' (in highp int)
|
||||
0:114 Function Definition: foo_IO( (global void)
|
||||
0:114 Function Parameters:
|
||||
0:116 Sequence
|
||||
0:116 Sequence
|
||||
0:116 move second child to first child (temp highp int)
|
||||
0:116 'sum' (temp highp int)
|
||||
0:116 add (temp highp int)
|
||||
0:116 'gl_VertexID' (gl_VertexId highp int VertexId)
|
||||
0:117 'gl_InstanceID' (gl_InstanceId highp int InstanceId)
|
||||
0:118 move second child to first child (temp highp 4-component vector of float)
|
||||
0:118 gl_Position: direct index for structure (gl_Position highp 4-component vector of float Position)
|
||||
0:118 'anon@1' (out block{gl_Position highp 4-component vector of float Position gl_Position, })
|
||||
0:118 Constant:
|
||||
0:118 0 (const uint)
|
||||
0:118 Constant:
|
||||
0:118 1.000000
|
||||
0:118 1.000000
|
||||
0:118 1.000000
|
||||
0:118 1.000000
|
||||
0:119 gl_PointSize: direct index for structure (gl_PointSize highp void PointSize)
|
||||
0:119 'anon@1' (out block{gl_Position highp 4-component vector of float Position gl_Position, })
|
||||
0:119 Constant:
|
||||
0:119 1 (const uint)
|
||||
0:153 Function Definition: pfooBad( (global void)
|
||||
0:153 Function Parameters:
|
||||
0:? Sequence
|
||||
0:156 move second child to first child (temp highp 2-component vector of float)
|
||||
0:156 'h' (noContraction temp highp 2-component vector of float)
|
||||
0:156 fma (global highp 2-component vector of float)
|
||||
0:156 'inf' (in highp 2-component vector of float)
|
||||
0:156 'ing' (in highp 2-component vector of float)
|
||||
0:156 'h' (noContraction temp highp 2-component vector of float)
|
||||
0:157 indirect index (temp lowp sampler2D)
|
||||
0:157 'sArray' (uniform 4-element array of lowp sampler2D)
|
||||
0:157 add (temp highp int)
|
||||
0:157 'sIndex' (uniform highp int)
|
||||
0:157 Constant:
|
||||
0:157 1 (const int)
|
||||
0:158 indirect index (layout(binding=0 offset=0 ) temp highp atomic_uint)
|
||||
0:158 'auArray' (layout(binding=0 offset=0 ) uniform 2-element array of highp atomic_uint)
|
||||
0:158 add (temp highp int)
|
||||
0:158 'sIndex' (uniform highp int)
|
||||
0:158 Constant:
|
||||
0:158 1 (const int)
|
||||
0:159 direct index (layout(column_major shared ) temp block{layout(column_major shared ) uniform highp int i})
|
||||
0:159 'ubInst' (layout(column_major shared ) uniform 4-element array of block{layout(column_major shared ) uniform highp int i})
|
||||
0:159 Constant:
|
||||
0:159 1 (const int)
|
||||
0:160 direct index (layout(column_major shared ) temp block{layout(column_major shared ) buffer highp int i})
|
||||
0:160 'bbInst' (layout(column_major shared ) buffer 4-element array of block{layout(column_major shared ) buffer highp int i})
|
||||
0:160 Constant:
|
||||
0:160 2 (const int)
|
||||
0:161 indirect index (layout(column_major shared ) temp block{layout(column_major shared ) uniform highp int i})
|
||||
0:161 'ubInst' (layout(column_major shared ) uniform 4-element array of block{layout(column_major shared ) uniform highp int i})
|
||||
0:161 add (temp highp int)
|
||||
0:161 'sIndex' (uniform highp int)
|
||||
0:161 Constant:
|
||||
0:161 1 (const int)
|
||||
0:162 indirect index (layout(column_major shared ) temp block{layout(column_major shared ) buffer highp int i})
|
||||
0:162 'bbInst' (layout(column_major shared ) buffer 4-element array of block{layout(column_major shared ) buffer highp int i})
|
||||
0:162 'sIndex' (uniform highp int)
|
||||
0:163 direct index (writeonly temp highp image2D)
|
||||
0:163 'iArray' (writeonly uniform 5-element array of highp image2D)
|
||||
0:163 Constant:
|
||||
0:163 2 (const int)
|
||||
0:164 indirect index (writeonly temp highp image2D)
|
||||
0:164 'iArray' (writeonly uniform 5-element array of highp image2D)
|
||||
0:164 component-wise multiply (temp highp int)
|
||||
0:164 'sIndex' (uniform highp int)
|
||||
0:164 Constant:
|
||||
0:164 2 (const int)
|
||||
0:165 textureGatherOffset (global lowp 4-component vector of float)
|
||||
0:165 direct index (temp lowp sampler2D)
|
||||
0:165 'sArray' (uniform 4-element array of lowp sampler2D)
|
||||
0:165 Constant:
|
||||
0:165 0 (const int)
|
||||
0:165 Constant:
|
||||
0:165 0.100000
|
||||
0:165 0.100000
|
||||
0:165 Convert float to int (temp lowp 2-component vector of int)
|
||||
0:165 'inf' (in highp 2-component vector of float)
|
||||
0:166 textureGatherOffsets (global lowp 4-component vector of float, operation at highp)
|
||||
0:166 direct index (temp lowp sampler2D)
|
||||
0:166 'sArray' (uniform 4-element array of lowp sampler2D)
|
||||
0:166 Constant:
|
||||
0:166 0 (const int)
|
||||
0:166 Constant:
|
||||
0:166 0.100000
|
||||
0:166 0.100000
|
||||
0:166 Constant:
|
||||
0:166 0 (const int)
|
||||
0:166 0 (const int)
|
||||
0:166 0 (const int)
|
||||
0:166 0 (const int)
|
||||
0:166 0 (const int)
|
||||
0:166 0 (const int)
|
||||
0:166 0 (const int)
|
||||
0:166 0 (const int)
|
||||
0:171 Function Definition: pfoo( (global void)
|
||||
0:171 Function Parameters:
|
||||
0:? Sequence
|
||||
0:174 move second child to first child (temp highp 2-component vector of float)
|
||||
0:174 'h' (noContraction temp highp 2-component vector of float)
|
||||
0:174 fma (global highp 2-component vector of float)
|
||||
0:174 'inf' (in highp 2-component vector of float)
|
||||
0:174 'ing' (in highp 2-component vector of float)
|
||||
0:174 'h' (noContraction temp highp 2-component vector of float)
|
||||
0:175 indirect index (temp lowp sampler2D)
|
||||
0:175 'sArray' (uniform 4-element array of lowp sampler2D)
|
||||
0:175 add (temp highp int)
|
||||
0:175 'sIndex' (uniform highp int)
|
||||
0:175 Constant:
|
||||
0:175 1 (const int)
|
||||
0:176 indirect index (layout(column_major shared ) temp block{layout(column_major shared ) uniform highp int i})
|
||||
0:176 'ubInst' (layout(column_major shared ) uniform 4-element array of block{layout(column_major shared ) uniform highp int i})
|
||||
0:176 add (temp highp int)
|
||||
0:176 'sIndex' (uniform highp int)
|
||||
0:176 Constant:
|
||||
0:176 1 (const int)
|
||||
0:177 indirect index (layout(column_major shared ) temp block{layout(column_major shared ) buffer highp int i})
|
||||
0:177 'bbInst' (layout(column_major shared ) buffer 4-element array of block{layout(column_major shared ) buffer highp int i})
|
||||
0:177 subtract (temp highp int)
|
||||
0:177 'sIndex' (uniform highp int)
|
||||
0:177 Constant:
|
||||
0:177 2 (const int)
|
||||
0:178 direct index (writeonly temp highp image2D)
|
||||
0:178 'iArray' (writeonly uniform 5-element array of highp image2D)
|
||||
0:178 Constant:
|
||||
0:178 2 (const int)
|
||||
0:179 indirect index (writeonly temp highp image2D)
|
||||
0:179 'iArray' (writeonly uniform 5-element array of highp image2D)
|
||||
0:179 subtract (temp highp int)
|
||||
0:179 'sIndex' (uniform highp int)
|
||||
0:179 Constant:
|
||||
0:179 2 (const int)
|
||||
0:180 textureGatherOffset (global lowp 4-component vector of float)
|
||||
0:180 direct index (temp lowp sampler2D)
|
||||
0:180 'sArray' (uniform 4-element array of lowp sampler2D)
|
||||
0:180 Constant:
|
||||
0:180 0 (const int)
|
||||
0:180 Constant:
|
||||
0:180 0.100000
|
||||
0:180 0.100000
|
||||
0:180 Convert float to int (temp lowp 2-component vector of int)
|
||||
0:180 'inf' (in highp 2-component vector of float)
|
||||
0:181 textureGatherOffsets (global lowp 4-component vector of float, operation at highp)
|
||||
0:181 direct index (temp lowp sampler2D)
|
||||
0:181 'sArray' (uniform 4-element array of lowp sampler2D)
|
||||
0:181 Constant:
|
||||
0:181 0 (const int)
|
||||
0:181 Constant:
|
||||
0:181 0.100000
|
||||
0:181 0.100000
|
||||
0:181 Constant:
|
||||
0:181 0 (const int)
|
||||
0:181 0 (const int)
|
||||
0:181 0 (const int)
|
||||
0:181 0 (const int)
|
||||
0:181 0 (const int)
|
||||
0:181 0 (const int)
|
||||
0:181 0 (const int)
|
||||
0:181 0 (const int)
|
||||
0:182 textureGatherOffsets (global lowp 4-component vector of float, operation at highp)
|
||||
0:182 direct index (temp lowp sampler2D)
|
||||
0:182 'sArray' (uniform 4-element array of lowp sampler2D)
|
||||
0:182 Constant:
|
||||
0:182 0 (const int)
|
||||
0:182 Constant:
|
||||
0:182 0.100000
|
||||
0:182 0.100000
|
||||
0:182 'offsets' (uniform 4-element array of highp 2-component vector of int)
|
||||
0:220 Function Definition: bufferT( (global void)
|
||||
0:220 Function Parameters:
|
||||
0:222 Sequence
|
||||
0:222 Sequence
|
||||
0:222 move second child to first child (temp highp int)
|
||||
0:222 's1' (temp highp int)
|
||||
0:222 textureSize (global highp int)
|
||||
0:222 'bufSamp1' (uniform highp samplerBuffer)
|
||||
0:223 Sequence
|
||||
0:223 move second child to first child (temp highp int)
|
||||
0:223 's2' (temp highp int)
|
||||
0:223 textureSize (global highp int)
|
||||
0:223 'bufSamp2' (uniform highp isamplerBuffer)
|
||||
0:224 Sequence
|
||||
0:224 move second child to first child (temp highp int)
|
||||
0:224 's3' (temp highp int)
|
||||
0:224 textureSize (global highp int)
|
||||
0:224 'bufSamp3' (uniform highp usamplerBuffer)
|
||||
0:226 Sequence
|
||||
0:226 move second child to first child (temp highp int)
|
||||
0:226 's4' (temp highp int)
|
||||
0:226 imageQuerySize (global highp int)
|
||||
0:226 'bufSamp4' (writeonly uniform highp imageBuffer)
|
||||
0:227 Sequence
|
||||
0:227 move second child to first child (temp highp int)
|
||||
0:227 's5' (temp highp int)
|
||||
0:227 imageQuerySize (global highp int)
|
||||
0:227 'bufSamp5' (writeonly uniform highp iimageBuffer)
|
||||
0:228 Sequence
|
||||
0:228 move second child to first child (temp highp int)
|
||||
0:228 's6' (temp highp int)
|
||||
0:228 imageQuerySize (global highp int)
|
||||
0:228 'bufSamp6' (writeonly uniform highp uimageBuffer)
|
||||
0:230 Sequence
|
||||
0:230 move second child to first child (temp highp 4-component vector of float)
|
||||
0:230 'f1' (temp highp 4-component vector of float)
|
||||
0:230 textureFetch (global highp 4-component vector of float)
|
||||
0:230 'bufSamp1' (uniform highp samplerBuffer)
|
||||
0:230 's1' (temp highp int)
|
||||
0:231 Sequence
|
||||
0:231 move second child to first child (temp highp 4-component vector of int)
|
||||
0:231 'f2' (temp highp 4-component vector of int)
|
||||
0:231 textureFetch (global highp 4-component vector of int)
|
||||
0:231 'bufSamp2' (uniform highp isamplerBuffer)
|
||||
0:231 's2' (temp highp int)
|
||||
0:232 Sequence
|
||||
0:232 move second child to first child (temp highp 4-component vector of uint)
|
||||
0:232 'f3' (temp highp 4-component vector of uint)
|
||||
0:232 textureFetch (global highp 4-component vector of uint)
|
||||
0:232 'bufSamp3' (uniform highp usamplerBuffer)
|
||||
0:232 's3' (temp highp int)
|
||||
0:279 Function Definition: CAT( (global void)
|
||||
0:279 Function Parameters:
|
||||
0:281 Sequence
|
||||
0:281 Sequence
|
||||
0:281 move second child to first child (temp highp 3-component vector of int)
|
||||
0:281 's4' (temp highp 3-component vector of int)
|
||||
0:281 textureSize (global highp 3-component vector of int)
|
||||
0:281 'CA4' (uniform highp samplerCubeArray)
|
||||
0:281 Constant:
|
||||
0:281 1 (const int)
|
||||
0:282 Sequence
|
||||
0:282 move second child to first child (temp highp 3-component vector of int)
|
||||
0:282 's5' (temp highp 3-component vector of int)
|
||||
0:282 textureSize (global highp 3-component vector of int)
|
||||
0:282 'CA5' (uniform highp samplerCubeArrayShadow)
|
||||
0:282 Constant:
|
||||
0:282 1 (const int)
|
||||
0:283 Sequence
|
||||
0:283 move second child to first child (temp highp 3-component vector of int)
|
||||
0:283 's6' (temp highp 3-component vector of int)
|
||||
0:283 textureSize (global highp 3-component vector of int)
|
||||
0:283 'CA6' (uniform highp isamplerCubeArray)
|
||||
0:283 Constant:
|
||||
0:283 1 (const int)
|
||||
0:284 Sequence
|
||||
0:284 move second child to first child (temp highp 3-component vector of int)
|
||||
0:284 's7' (temp highp 3-component vector of int)
|
||||
0:284 textureSize (global highp 3-component vector of int)
|
||||
0:284 'CA7' (uniform highp usamplerCubeArray)
|
||||
0:284 Constant:
|
||||
0:284 1 (const int)
|
||||
0:286 Sequence
|
||||
0:286 move second child to first child (temp highp 4-component vector of float)
|
||||
0:286 't4' (temp highp 4-component vector of float)
|
||||
0:286 texture (global highp 4-component vector of float)
|
||||
0:286 'CA4' (uniform highp samplerCubeArray)
|
||||
0:286 Constant:
|
||||
0:286 0.500000
|
||||
0:286 0.500000
|
||||
0:286 0.500000
|
||||
0:286 0.500000
|
||||
0:287 Sequence
|
||||
0:287 move second child to first child (temp highp float)
|
||||
0:287 't5' (temp highp float)
|
||||
0:287 texture (global highp float)
|
||||
0:287 'CA5' (uniform highp samplerCubeArrayShadow)
|
||||
0:287 Constant:
|
||||
0:287 0.500000
|
||||
0:287 0.500000
|
||||
0:287 0.500000
|
||||
0:287 0.500000
|
||||
0:287 Constant:
|
||||
0:287 3.000000
|
||||
0:288 Sequence
|
||||
0:288 move second child to first child (temp highp 4-component vector of int)
|
||||
0:288 't6' (temp highp 4-component vector of int)
|
||||
0:288 texture (global highp 4-component vector of int)
|
||||
0:288 'CA6' (uniform highp isamplerCubeArray)
|
||||
0:288 Constant:
|
||||
0:288 0.500000
|
||||
0:288 0.500000
|
||||
0:288 0.500000
|
||||
0:288 0.500000
|
||||
0:289 Sequence
|
||||
0:289 move second child to first child (temp highp 4-component vector of uint)
|
||||
0:289 't7' (temp highp 4-component vector of uint)
|
||||
0:289 texture (global highp 4-component vector of uint)
|
||||
0:289 'CA7' (uniform highp usamplerCubeArray)
|
||||
0:289 Constant:
|
||||
0:289 0.500000
|
||||
0:289 0.500000
|
||||
0:289 0.500000
|
||||
0:289 0.500000
|
||||
0:291 Sequence
|
||||
0:291 move second child to first child (temp highp 4-component vector of float)
|
||||
0:291 'L4' (temp highp 4-component vector of float)
|
||||
0:291 textureLod (global highp 4-component vector of float)
|
||||
0:291 'CA4' (uniform highp samplerCubeArray)
|
||||
0:291 Constant:
|
||||
0:291 0.500000
|
||||
0:291 0.500000
|
||||
0:291 0.500000
|
||||
0:291 0.500000
|
||||
0:291 Constant:
|
||||
0:291 0.240000
|
||||
0:292 Sequence
|
||||
0:292 move second child to first child (temp highp 4-component vector of int)
|
||||
0:292 'L6' (temp highp 4-component vector of int)
|
||||
0:292 textureLod (global highp 4-component vector of int)
|
||||
0:292 'CA6' (uniform highp isamplerCubeArray)
|
||||
0:292 Constant:
|
||||
0:292 0.500000
|
||||
0:292 0.500000
|
||||
0:292 0.500000
|
||||
0:292 0.500000
|
||||
0:292 Constant:
|
||||
0:292 0.260000
|
||||
0:293 Sequence
|
||||
0:293 move second child to first child (temp highp 4-component vector of uint)
|
||||
0:293 'L7' (temp highp 4-component vector of uint)
|
||||
0:293 textureLod (global highp 4-component vector of uint)
|
||||
0:293 'CA7' (uniform highp usamplerCubeArray)
|
||||
0:293 Constant:
|
||||
0:293 0.500000
|
||||
0:293 0.500000
|
||||
0:293 0.500000
|
||||
0:293 0.500000
|
||||
0:293 Constant:
|
||||
0:293 0.270000
|
||||
0:295 Sequence
|
||||
0:295 move second child to first child (temp highp 4-component vector of float)
|
||||
0:295 'g4' (temp highp 4-component vector of float)
|
||||
0:295 textureGrad (global highp 4-component vector of float)
|
||||
0:295 'CA4' (uniform highp samplerCubeArray)
|
||||
0:295 Constant:
|
||||
0:295 0.500000
|
||||
0:295 0.500000
|
||||
0:295 0.500000
|
||||
0:295 0.500000
|
||||
0:295 Constant:
|
||||
0:295 0.100000
|
||||
0:295 0.100000
|
||||
0:295 0.100000
|
||||
0:295 Constant:
|
||||
0:295 0.200000
|
||||
0:295 0.200000
|
||||
0:295 0.200000
|
||||
0:296 Sequence
|
||||
0:296 move second child to first child (temp highp 4-component vector of int)
|
||||
0:296 'g6' (temp highp 4-component vector of int)
|
||||
0:296 textureGrad (global highp 4-component vector of int)
|
||||
0:296 'CA6' (uniform highp isamplerCubeArray)
|
||||
0:296 Constant:
|
||||
0:296 0.500000
|
||||
0:296 0.500000
|
||||
0:296 0.500000
|
||||
0:296 0.500000
|
||||
0:296 Constant:
|
||||
0:296 0.100000
|
||||
0:296 0.100000
|
||||
0:296 0.100000
|
||||
0:296 Constant:
|
||||
0:296 0.200000
|
||||
0:296 0.200000
|
||||
0:296 0.200000
|
||||
0:297 Sequence
|
||||
0:297 move second child to first child (temp highp 4-component vector of uint)
|
||||
0:297 'g7' (temp highp 4-component vector of uint)
|
||||
0:297 textureGrad (global highp 4-component vector of uint)
|
||||
0:297 'CA7' (uniform highp usamplerCubeArray)
|
||||
0:297 Constant:
|
||||
0:297 0.500000
|
||||
0:297 0.500000
|
||||
0:297 0.500000
|
||||
0:297 0.500000
|
||||
0:297 Constant:
|
||||
0:297 0.100000
|
||||
0:297 0.100000
|
||||
0:297 0.100000
|
||||
0:297 Constant:
|
||||
0:297 0.200000
|
||||
0:297 0.200000
|
||||
0:297 0.200000
|
||||
0:299 Sequence
|
||||
0:299 move second child to first child (temp highp 4-component vector of float)
|
||||
0:299 'gath4' (temp highp 4-component vector of float)
|
||||
0:299 textureGather (global highp 4-component vector of float)
|
||||
0:299 'CA4' (uniform highp samplerCubeArray)
|
||||
0:299 Constant:
|
||||
0:299 0.500000
|
||||
0:299 0.500000
|
||||
0:299 0.500000
|
||||
0:299 0.500000
|
||||
0:300 Sequence
|
||||
0:300 move second child to first child (temp highp 4-component vector of float)
|
||||
0:300 'gathC4' (temp highp 4-component vector of float)
|
||||
0:300 textureGather (global highp 4-component vector of float)
|
||||
0:300 'CA4' (uniform highp samplerCubeArray)
|
||||
0:300 Constant:
|
||||
0:300 0.500000
|
||||
0:300 0.500000
|
||||
0:300 0.500000
|
||||
0:300 0.500000
|
||||
0:300 Constant:
|
||||
0:300 2 (const int)
|
||||
0:301 Sequence
|
||||
0:301 move second child to first child (temp highp 4-component vector of int)
|
||||
0:301 'gath6' (temp highp 4-component vector of int)
|
||||
0:301 textureGather (global highp 4-component vector of int)
|
||||
0:301 'CA6' (uniform highp isamplerCubeArray)
|
||||
0:301 Constant:
|
||||
0:301 0.500000
|
||||
0:301 0.500000
|
||||
0:301 0.500000
|
||||
0:301 0.500000
|
||||
0:302 Sequence
|
||||
0:302 move second child to first child (temp highp 4-component vector of int)
|
||||
0:302 'gathC6' (temp highp 4-component vector of int)
|
||||
0:302 textureGather (global highp 4-component vector of int)
|
||||
0:302 'CA6' (uniform highp isamplerCubeArray)
|
||||
0:302 Constant:
|
||||
0:302 0.500000
|
||||
0:302 0.500000
|
||||
0:302 0.500000
|
||||
0:302 0.500000
|
||||
0:302 Constant:
|
||||
0:302 1 (const int)
|
||||
0:303 Sequence
|
||||
0:303 move second child to first child (temp highp 4-component vector of uint)
|
||||
0:303 'gath7' (temp highp 4-component vector of uint)
|
||||
0:303 textureGather (global highp 4-component vector of uint)
|
||||
0:303 'CA7' (uniform highp usamplerCubeArray)
|
||||
0:303 Constant:
|
||||
0:303 0.500000
|
||||
0:303 0.500000
|
||||
0:303 0.500000
|
||||
0:303 0.500000
|
||||
0:304 Sequence
|
||||
0:304 move second child to first child (temp highp 4-component vector of uint)
|
||||
0:304 'gathC7' (temp highp 4-component vector of uint)
|
||||
0:304 textureGather (global highp 4-component vector of uint)
|
||||
0:304 'CA7' (uniform highp usamplerCubeArray)
|
||||
0:304 Constant:
|
||||
0:304 0.500000
|
||||
0:304 0.500000
|
||||
0:304 0.500000
|
||||
0:304 0.500000
|
||||
0:304 Constant:
|
||||
0:304 0 (const int)
|
||||
0:306 Sequence
|
||||
0:306 move second child to first child (temp highp 4-component vector of float)
|
||||
0:306 'gath5' (temp highp 4-component vector of float)
|
||||
0:306 textureGather (global highp 4-component vector of float)
|
||||
0:306 'CA5' (uniform highp samplerCubeArrayShadow)
|
||||
0:306 Constant:
|
||||
0:306 0.500000
|
||||
0:306 0.500000
|
||||
0:306 0.500000
|
||||
0:306 0.500000
|
||||
0:306 Constant:
|
||||
0:306 2.500000
|
||||
0:308 Sequence
|
||||
0:308 move second child to first child (temp highp 3-component vector of int)
|
||||
0:308 's1' (temp highp 3-component vector of int)
|
||||
0:308 imageQuerySize (global highp 3-component vector of int)
|
||||
0:308 'CA1' (writeonly uniform highp imageCubeArray)
|
||||
0:309 Sequence
|
||||
0:309 move second child to first child (temp highp 3-component vector of int)
|
||||
0:309 's2' (temp highp 3-component vector of int)
|
||||
0:309 imageQuerySize (global highp 3-component vector of int)
|
||||
0:309 'CA2' (writeonly uniform highp iimageCubeArray)
|
||||
0:310 Sequence
|
||||
0:310 move second child to first child (temp highp 3-component vector of int)
|
||||
0:310 's3' (temp highp 3-component vector of int)
|
||||
0:310 imageQuerySize (global highp 3-component vector of int)
|
||||
0:310 'CA3' (writeonly uniform highp uimageCubeArray)
|
||||
0:312 imageStore (global highp void)
|
||||
0:312 'CA1' (writeonly uniform highp imageCubeArray)
|
||||
0:312 's3' (temp highp 3-component vector of int)
|
||||
0:312 Constant:
|
||||
0:312 1.000000
|
||||
0:312 1.000000
|
||||
0:312 1.000000
|
||||
0:312 1.000000
|
||||
0:313 imageStore (global highp void)
|
||||
0:313 'CA2' (writeonly uniform highp iimageCubeArray)
|
||||
0:313 's3' (temp highp 3-component vector of int)
|
||||
0:313 Constant:
|
||||
0:313 1 (const int)
|
||||
0:313 1 (const int)
|
||||
0:313 1 (const int)
|
||||
0:313 1 (const int)
|
||||
0:314 imageStore (global highp void)
|
||||
0:314 'CA3' (writeonly uniform highp uimageCubeArray)
|
||||
0:314 's3' (temp highp 3-component vector of int)
|
||||
0:314 Constant:
|
||||
0:314 1 (const uint)
|
||||
0:314 1 (const uint)
|
||||
0:314 1 (const uint)
|
||||
0:314 1 (const uint)
|
||||
0:316 Sequence
|
||||
0:316 move second child to first child (temp highp 4-component vector of float)
|
||||
0:316 'cl1' (temp highp 4-component vector of float)
|
||||
0:316 imageLoad (global highp 4-component vector of float)
|
||||
0:316 'rCA1' (layout(rgba16f ) readonly uniform highp imageCubeArray)
|
||||
0:316 's3' (temp highp 3-component vector of int)
|
||||
0:317 Sequence
|
||||
0:317 move second child to first child (temp highp 4-component vector of int)
|
||||
0:317 'cl2' (temp highp 4-component vector of int)
|
||||
0:317 imageLoad (global highp 4-component vector of int)
|
||||
0:317 'rCA2' (layout(rgba32i ) readonly uniform highp iimageCubeArray)
|
||||
0:317 's3' (temp highp 3-component vector of int)
|
||||
0:318 Sequence
|
||||
0:318 move second child to first child (temp highp 4-component vector of uint)
|
||||
0:318 'cl3' (temp highp 4-component vector of uint)
|
||||
0:318 imageLoad (global highp 4-component vector of uint)
|
||||
0:318 'rCA3' (layout(r32ui ) readonly uniform highp uimageCubeArray)
|
||||
0:318 's3' (temp highp 3-component vector of int)
|
||||
0:343 Function Definition: MSA( (global void)
|
||||
0:343 Function Parameters:
|
||||
0:345 Sequence
|
||||
0:345 Sequence
|
||||
0:345 move second child to first child (temp highp 4-component vector of float)
|
||||
0:345 'tf' (temp highp 4-component vector of float)
|
||||
0:345 textureFetch (global highp 4-component vector of float)
|
||||
0:345 'samp2DMSA' (uniform highp sampler2DMSArray)
|
||||
0:345 Constant:
|
||||
0:345 5 (const int)
|
||||
0:345 5 (const int)
|
||||
0:345 5 (const int)
|
||||
0:345 Constant:
|
||||
0:345 2 (const int)
|
||||
0:346 Sequence
|
||||
0:346 move second child to first child (temp highp 4-component vector of int)
|
||||
0:346 'tfi' (temp highp 4-component vector of int)
|
||||
0:346 textureFetch (global highp 4-component vector of int)
|
||||
0:346 'samp2DMSAi' (uniform highp isampler2DMSArray)
|
||||
0:346 Constant:
|
||||
0:346 5 (const int)
|
||||
0:346 5 (const int)
|
||||
0:346 5 (const int)
|
||||
0:346 Constant:
|
||||
0:346 2 (const int)
|
||||
0:347 Sequence
|
||||
0:347 move second child to first child (temp highp 4-component vector of uint)
|
||||
0:347 'tfu' (temp highp 4-component vector of uint)
|
||||
0:347 textureFetch (global highp 4-component vector of uint)
|
||||
0:347 'samp2DMSAu' (uniform highp usampler2DMSArray)
|
||||
0:347 Constant:
|
||||
0:347 5 (const int)
|
||||
0:347 5 (const int)
|
||||
0:347 5 (const int)
|
||||
0:347 Constant:
|
||||
0:347 2 (const int)
|
||||
0:349 Sequence
|
||||
0:349 move second child to first child (temp highp 3-component vector of int)
|
||||
0:349 'tfs' (temp highp 3-component vector of int)
|
||||
0:349 textureSize (global highp 3-component vector of int)
|
||||
0:349 'samp2DMSA' (uniform highp sampler2DMSArray)
|
||||
0:350 Sequence
|
||||
0:350 move second child to first child (temp highp 3-component vector of int)
|
||||
0:350 'tfsi' (temp highp 3-component vector of int)
|
||||
0:350 textureSize (global highp 3-component vector of int)
|
||||
0:350 'samp2DMSAi' (uniform highp isampler2DMSArray)
|
||||
0:352 Sequence
|
||||
0:352 move second child to first child (temp highp 3-component vector of int)
|
||||
0:352 'tfsu' (temp highp 3-component vector of int)
|
||||
0:352 textureSize (global highp 3-component vector of int)
|
||||
0:352 'samp2DMSAu' (uniform highp usampler2DMSArray)
|
||||
0:364 Function Definition: goodImageAtom( (global void)
|
||||
0:364 Function Parameters:
|
||||
0:? Sequence
|
||||
0:370 imageAtomicAdd (global highp int)
|
||||
0:370 'im2Di' (layout(r32i ) uniform highp iimage2D)
|
||||
0:370 'P' (uniform highp 2-component vector of int)
|
||||
0:370 'dati' (temp highp int)
|
||||
0:371 imageAtomicAdd (global highp uint)
|
||||
0:371 'im2Du' (layout(r32ui ) uniform highp uimage2D)
|
||||
0:371 'P' (uniform highp 2-component vector of int)
|
||||
0:371 'datu' (temp highp uint)
|
||||
0:372 imageAtomicMin (global highp int)
|
||||
0:372 'im2Di' (layout(r32i ) uniform highp iimage2D)
|
||||
0:372 'P' (uniform highp 2-component vector of int)
|
||||
0:372 'dati' (temp highp int)
|
||||
0:373 imageAtomicMin (global highp uint)
|
||||
0:373 'im2Du' (layout(r32ui ) uniform highp uimage2D)
|
||||
0:373 'P' (uniform highp 2-component vector of int)
|
||||
0:373 'datu' (temp highp uint)
|
||||
0:374 imageAtomicMax (global highp int)
|
||||
0:374 'im2Di' (layout(r32i ) uniform highp iimage2D)
|
||||
0:374 'P' (uniform highp 2-component vector of int)
|
||||
0:374 'dati' (temp highp int)
|
||||
0:375 imageAtomicMax (global highp uint)
|
||||
0:375 'im2Du' (layout(r32ui ) uniform highp uimage2D)
|
||||
0:375 'P' (uniform highp 2-component vector of int)
|
||||
0:375 'datu' (temp highp uint)
|
||||
0:376 imageAtomicAnd (global highp int)
|
||||
0:376 'im2Di' (layout(r32i ) uniform highp iimage2D)
|
||||
0:376 'P' (uniform highp 2-component vector of int)
|
||||
0:376 'dati' (temp highp int)
|
||||
0:377 imageAtomicAnd (global highp uint)
|
||||
0:377 'im2Du' (layout(r32ui ) uniform highp uimage2D)
|
||||
0:377 'P' (uniform highp 2-component vector of int)
|
||||
0:377 'datu' (temp highp uint)
|
||||
0:378 imageAtomicOr (global highp int)
|
||||
0:378 'im2Di' (layout(r32i ) uniform highp iimage2D)
|
||||
0:378 'P' (uniform highp 2-component vector of int)
|
||||
0:378 'dati' (temp highp int)
|
||||
0:379 imageAtomicOr (global highp uint)
|
||||
0:379 'im2Du' (layout(r32ui ) uniform highp uimage2D)
|
||||
0:379 'P' (uniform highp 2-component vector of int)
|
||||
0:379 'datu' (temp highp uint)
|
||||
0:380 imageAtomicXor (global highp int)
|
||||
0:380 'im2Di' (layout(r32i ) uniform highp iimage2D)
|
||||
0:380 'P' (uniform highp 2-component vector of int)
|
||||
0:380 'dati' (temp highp int)
|
||||
0:381 imageAtomicXor (global highp uint)
|
||||
0:381 'im2Du' (layout(r32ui ) uniform highp uimage2D)
|
||||
0:381 'P' (uniform highp 2-component vector of int)
|
||||
0:381 'datu' (temp highp uint)
|
||||
0:382 imageAtomicExchange (global highp int)
|
||||
0:382 'im2Di' (layout(r32i ) uniform highp iimage2D)
|
||||
0:382 'P' (uniform highp 2-component vector of int)
|
||||
0:382 'dati' (temp highp int)
|
||||
0:383 imageAtomicExchange (global highp uint)
|
||||
0:383 'im2Du' (layout(r32ui ) uniform highp uimage2D)
|
||||
0:383 'P' (uniform highp 2-component vector of int)
|
||||
0:383 'datu' (temp highp uint)
|
||||
0:384 imageAtomicExchange (global highp float)
|
||||
0:384 'im2Df' (layout(r32f ) uniform highp image2D)
|
||||
0:384 'P' (uniform highp 2-component vector of int)
|
||||
0:384 'datf' (temp highp float)
|
||||
0:385 imageAtomicCompSwap (global highp int)
|
||||
0:385 'im2Di' (layout(r32i ) uniform highp iimage2D)
|
||||
0:385 'P' (uniform highp 2-component vector of int)
|
||||
0:385 Constant:
|
||||
0:385 3 (const int)
|
||||
0:385 'dati' (temp highp int)
|
||||
0:386 imageAtomicCompSwap (global highp uint)
|
||||
0:386 'im2Du' (layout(r32ui ) uniform highp uimage2D)
|
||||
0:386 'P' (uniform highp 2-component vector of int)
|
||||
0:386 Constant:
|
||||
0:386 5 (const uint)
|
||||
0:386 'datu' (temp highp uint)
|
||||
0:398 Function Definition: badInterp( (global void)
|
||||
0:398 Function Parameters:
|
||||
0:400 Sequence
|
||||
0:400 Constant:
|
||||
0:400 0.000000
|
||||
0:401 Constant:
|
||||
0:401 0.000000
|
||||
0:402 Constant:
|
||||
0:402 0.000000
|
||||
0:? Linker Objects
|
||||
0:? 's' (shared highp 4-component vector of float)
|
||||
0:? 'v' (buffer highp 4-component vector of float)
|
||||
|
@ -5,7 +5,7 @@ ERROR: 0:23: '' : array size required
|
||||
ERROR: 0:28: '[]' : only outermost dimension of an array of arrays can be implicitly sized
|
||||
ERROR: 0:40: '' : array size required
|
||||
ERROR: 0:48: 'constructor' : constructing non-array constituent from array argument
|
||||
ERROR: 0:49: 'constructior' : array constructor argument not correct type to construct array element
|
||||
ERROR: 0:49: 'constructor' : array constructor argument not correct type to construct array element
|
||||
ERROR: 0:62: '[' : array index out of range '4'
|
||||
ERROR: 0:78: 'assign' : cannot convert from 'global 4-element array of 7-element array of highp float' to 'global 5-element array of 7-element array of highp float'
|
||||
ERROR: 0:79: 'assign' : cannot convert from 'global 4-element array of 7-element array of highp float' to 'global implicitly-sized array of 7-element array of highp float'
|
||||
@ -359,277 +359,6 @@ ERROR: node is still EOpNull!
|
||||
0:13 1 (const uint)
|
||||
0:13 2 (const uint)
|
||||
0:13 'd' (temp 3-element array of 2-element array of highp int)
|
||||
0:44 Function Definition: foo(f1[5][7]; (global 4-element array of 7-element array of highp float)
|
||||
0:44 Function Parameters:
|
||||
0:44 'a' (in 5-element array of 7-element array of highp float)
|
||||
0:? Sequence
|
||||
0:47 move second child to first child (temp 7-element array of highp float)
|
||||
0:47 'r' (temp 7-element array of highp float)
|
||||
0:47 direct index (temp 7-element array of highp float)
|
||||
0:47 'a' (in 5-element array of 7-element array of highp float)
|
||||
0:47 Constant:
|
||||
0:47 2 (const int)
|
||||
0:48 Constant:
|
||||
0:48 0.000000
|
||||
0:49 Constant:
|
||||
0:49 0.000000
|
||||
0:50 Branch: Return with expression
|
||||
0:50 Construct float (temp 4-element array of 7-element array of float)
|
||||
0:50 direct index (temp 7-element array of highp float)
|
||||
0:50 'a' (in 5-element array of 7-element array of highp float)
|
||||
0:50 Constant:
|
||||
0:50 0 (const int)
|
||||
0:50 direct index (temp 7-element array of highp float)
|
||||
0:50 'a' (in 5-element array of 7-element array of highp float)
|
||||
0:50 Constant:
|
||||
0:50 1 (const int)
|
||||
0:50 'r' (temp 7-element array of highp float)
|
||||
0:50 direct index (temp 7-element array of highp float)
|
||||
0:50 'a' (in 5-element array of 7-element array of highp float)
|
||||
0:50 Constant:
|
||||
0:50 3 (const int)
|
||||
0:51 Branch: Return with expression
|
||||
0:51 Construct float (temp 4-element array of 7-element array of float)
|
||||
0:51 direct index (temp 7-element array of highp float)
|
||||
0:51 'a' (in 5-element array of 7-element array of highp float)
|
||||
0:51 Constant:
|
||||
0:51 0 (const int)
|
||||
0:51 direct index (temp 7-element array of highp float)
|
||||
0:51 'a' (in 5-element array of 7-element array of highp float)
|
||||
0:51 Constant:
|
||||
0:51 1 (const int)
|
||||
0:51 'r' (temp 7-element array of highp float)
|
||||
0:51 direct index (temp 7-element array of highp float)
|
||||
0:51 'a' (in 5-element array of 7-element array of highp float)
|
||||
0:51 Constant:
|
||||
0:51 3 (const int)
|
||||
0:52 Branch: Return with expression
|
||||
0:52 Construct float (temp 4-element array of 7-element array of float)
|
||||
0:52 direct index (temp 7-element array of highp float)
|
||||
0:52 'a' (in 5-element array of 7-element array of highp float)
|
||||
0:52 Constant:
|
||||
0:52 0 (const int)
|
||||
0:52 direct index (temp 7-element array of highp float)
|
||||
0:52 'a' (in 5-element array of 7-element array of highp float)
|
||||
0:52 Constant:
|
||||
0:52 1 (const int)
|
||||
0:52 direct index (temp 7-element array of highp float)
|
||||
0:52 'a' (in 5-element array of 7-element array of highp float)
|
||||
0:52 Constant:
|
||||
0:52 2 (const int)
|
||||
0:52 direct index (temp 7-element array of highp float)
|
||||
0:52 'a' (in 5-element array of 7-element array of highp float)
|
||||
0:52 Constant:
|
||||
0:52 3 (const int)
|
||||
0:55 Function Definition: bar(f1[5][7]; (global void)
|
||||
0:55 Function Parameters:
|
||||
0:55 '' (in 5-element array of 7-element array of highp float)
|
||||
0:57 Function Definition: foo2( (global void)
|
||||
0:57 Function Parameters:
|
||||
0:? Sequence
|
||||
0:? Sequence
|
||||
0:62 move second child to first child (temp highp float)
|
||||
0:62 direct index (temp highp float)
|
||||
0:62 direct index (temp 2-element array of highp float)
|
||||
0:62 direct index (temp 4-element array of 2-element array of highp float)
|
||||
0:62 'gu' (temp 3-element array of 4-element array of 2-element array of highp float)
|
||||
0:62 Constant:
|
||||
0:62 2 (const int)
|
||||
0:62 Constant:
|
||||
0:62 4 (const int)
|
||||
0:62 Constant:
|
||||
0:62 1 (const int)
|
||||
0:62 Constant:
|
||||
0:62 4.000000
|
||||
0:64 Sequence
|
||||
0:64 move second child to first child (temp 3-element array of 2-element array of highp 4-component vector of float)
|
||||
0:64 'ca4' (temp 3-element array of 2-element array of highp 4-component vector of float)
|
||||
0:66 Constant:
|
||||
0:66 0.000000
|
||||
0:66 0.000000
|
||||
0:66 0.000000
|
||||
0:66 0.000000
|
||||
0:66 1.000000
|
||||
0:66 1.000000
|
||||
0:66 1.000000
|
||||
0:66 1.000000
|
||||
0:66 0.000000
|
||||
0:66 0.000000
|
||||
0:66 0.000000
|
||||
0:66 0.000000
|
||||
0:66 1.000000
|
||||
0:66 1.000000
|
||||
0:66 1.000000
|
||||
0:66 1.000000
|
||||
0:66 0.000000
|
||||
0:66 0.000000
|
||||
0:66 0.000000
|
||||
0:66 0.000000
|
||||
0:66 1.000000
|
||||
0:66 1.000000
|
||||
0:66 1.000000
|
||||
0:66 1.000000
|
||||
0:67 Sequence
|
||||
0:67 move second child to first child (temp 3-element array of 2-element array of highp 4-component vector of float)
|
||||
0:67 'caim' (temp 3-element array of 2-element array of highp 4-component vector of float)
|
||||
0:69 Constant:
|
||||
0:69 4.000000
|
||||
0:69 4.000000
|
||||
0:69 4.000000
|
||||
0:69 4.000000
|
||||
0:69 2.000000
|
||||
0:69 2.000000
|
||||
0:69 2.000000
|
||||
0:69 2.000000
|
||||
0:69 4.000000
|
||||
0:69 4.000000
|
||||
0:69 4.000000
|
||||
0:69 4.000000
|
||||
0:69 2.000000
|
||||
0:69 2.000000
|
||||
0:69 2.000000
|
||||
0:69 2.000000
|
||||
0:69 4.000000
|
||||
0:69 4.000000
|
||||
0:69 4.000000
|
||||
0:69 4.000000
|
||||
0:69 2.000000
|
||||
0:69 2.000000
|
||||
0:69 2.000000
|
||||
0:69 2.000000
|
||||
0:70 Sequence
|
||||
0:70 move second child to first child (temp 3-element array of 2-element array of highp 4-component vector of float)
|
||||
0:70 'caim2' (temp 3-element array of 2-element array of highp 4-component vector of float)
|
||||
0:72 Constant:
|
||||
0:72 4.000000
|
||||
0:72 4.000000
|
||||
0:72 4.000000
|
||||
0:72 4.000000
|
||||
0:72 2.000000
|
||||
0:72 2.000000
|
||||
0:72 2.000000
|
||||
0:72 2.000000
|
||||
0:72 4.000000
|
||||
0:72 4.000000
|
||||
0:72 4.000000
|
||||
0:72 4.000000
|
||||
0:72 2.000000
|
||||
0:72 2.000000
|
||||
0:72 2.000000
|
||||
0:72 2.000000
|
||||
0:72 4.000000
|
||||
0:72 4.000000
|
||||
0:72 4.000000
|
||||
0:72 4.000000
|
||||
0:72 2.000000
|
||||
0:72 2.000000
|
||||
0:72 2.000000
|
||||
0:72 2.000000
|
||||
0:73 Sequence
|
||||
0:73 move second child to first child (temp 3-element array of 2-element array of highp 4-component vector of float)
|
||||
0:73 'caim3' (temp 3-element array of 2-element array of highp 4-component vector of float)
|
||||
0:75 Constant:
|
||||
0:75 4.000000
|
||||
0:75 4.000000
|
||||
0:75 4.000000
|
||||
0:75 4.000000
|
||||
0:75 2.000000
|
||||
0:75 2.000000
|
||||
0:75 2.000000
|
||||
0:75 2.000000
|
||||
0:75 4.000000
|
||||
0:75 4.000000
|
||||
0:75 4.000000
|
||||
0:75 4.000000
|
||||
0:75 2.000000
|
||||
0:75 2.000000
|
||||
0:75 2.000000
|
||||
0:75 2.000000
|
||||
0:75 4.000000
|
||||
0:75 4.000000
|
||||
0:75 4.000000
|
||||
0:75 4.000000
|
||||
0:75 2.000000
|
||||
0:75 2.000000
|
||||
0:75 2.000000
|
||||
0:75 2.000000
|
||||
0:77 move second child to first child (temp 4-element array of 7-element array of highp float)
|
||||
0:77 'g4' (global 4-element array of 7-element array of highp float)
|
||||
0:77 Function Call: foo(f1[5][7]; (global 4-element array of 7-element array of highp float)
|
||||
0:77 'g5' (global 5-element array of 7-element array of highp float)
|
||||
0:78 'g5' (global 5-element array of 7-element array of highp float)
|
||||
0:79 'gu' (global 1-element array of 7-element array of highp float)
|
||||
0:81 Constant:
|
||||
0:81 0.000000
|
||||
0:82 Function Call: bar(f1[5][7]; (global void)
|
||||
0:82 'g5' (global 5-element array of 7-element array of highp float)
|
||||
0:84 Test condition and select (temp void)
|
||||
0:84 Condition
|
||||
0:84 Compare Equal (temp bool)
|
||||
0:84 Function Call: foo(f1[5][7]; (global 4-element array of 7-element array of highp float)
|
||||
0:84 'g5' (global 5-element array of 7-element array of highp float)
|
||||
0:84 'g4' (global 4-element array of 7-element array of highp float)
|
||||
0:84 true case is null
|
||||
0:86 Test condition and select (temp void)
|
||||
0:86 Condition
|
||||
0:86 Constant:
|
||||
0:86 false (const bool)
|
||||
0:86 true case is null
|
||||
0:90 move second child to first child (temp highp float)
|
||||
0:90 direct index (temp highp float)
|
||||
0:90 direct index (temp 7-element array of highp float)
|
||||
0:90 'u' (temp 5-element array of 7-element array of highp float)
|
||||
0:90 Constant:
|
||||
0:90 5 (const int)
|
||||
0:90 Constant:
|
||||
0:90 2 (const int)
|
||||
0:90 Constant:
|
||||
0:90 5.000000
|
||||
0:91 Function Call: foo(f1[5][7]; (global 4-element array of 7-element array of highp float)
|
||||
0:91 'u' (temp 5-element array of 7-element array of highp float)
|
||||
0:94 direct index (layout(column_major shared ) temp highp 4-component vector of float)
|
||||
0:94 v: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp 4-component vector of float)
|
||||
0:94 direct index (layout(column_major shared ) temp block{layout(column_major shared ) buffer implicitly-sized array of highp float u, layout(column_major shared ) buffer implicitly-sized array of highp 4-component vector of float v})
|
||||
0:94 'name' (layout(column_major shared ) buffer 3-element array of block{layout(column_major shared ) buffer implicitly-sized array of highp float u, layout(column_major shared ) buffer implicitly-sized array of highp 4-component vector of float v})
|
||||
0:94 Constant:
|
||||
0:94 1 (const int)
|
||||
0:94 Constant:
|
||||
0:94 1 (const int)
|
||||
0:94 Constant:
|
||||
0:94 -1 (const int)
|
||||
0:95 move second child to first child (temp highp 4-component vector of float)
|
||||
0:95 direct index (layout(column_major shared ) temp highp 4-component vector of float)
|
||||
0:95 v: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp 4-component vector of float)
|
||||
0:95 direct index (layout(column_major shared ) temp block{layout(column_major shared ) buffer implicitly-sized array of highp float u, layout(column_major shared ) buffer implicitly-sized array of highp 4-component vector of float v})
|
||||
0:95 'name' (layout(column_major shared ) buffer 3-element array of block{layout(column_major shared ) buffer implicitly-sized array of highp float u, layout(column_major shared ) buffer implicitly-sized array of highp 4-component vector of float v})
|
||||
0:95 Constant:
|
||||
0:95 1 (const int)
|
||||
0:95 Constant:
|
||||
0:95 1 (const int)
|
||||
0:95 Constant:
|
||||
0:95 1 (const int)
|
||||
0:95 Constant:
|
||||
0:95 4.300000
|
||||
0:95 4.300000
|
||||
0:95 4.300000
|
||||
0:95 4.300000
|
||||
0:96 v: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp 4-component vector of float)
|
||||
0:96 direct index (layout(column_major shared ) temp block{layout(column_major shared ) buffer implicitly-sized array of highp float u, layout(column_major shared ) buffer implicitly-sized array of highp 4-component vector of float v})
|
||||
0:96 'name' (layout(column_major shared ) buffer 3-element array of block{layout(column_major shared ) buffer implicitly-sized array of highp float u, layout(column_major shared ) buffer implicitly-sized array of highp 4-component vector of float v})
|
||||
0:96 Constant:
|
||||
0:96 1 (const int)
|
||||
0:96 Constant:
|
||||
0:96 1 (const int)
|
||||
0:98 Constant:
|
||||
0:98 7 (const int)
|
||||
0:99 array length (temp int)
|
||||
0:99 v: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of 7-element array of highp 4-component vector of float)
|
||||
0:99 direct index (layout(column_major shared ) temp block{layout(column_major shared ) buffer highp float u, layout(column_major shared ) buffer implicitly-sized array of 7-element array of highp 4-component vector of float v})
|
||||
0:99 'name3' (layout(column_major shared ) buffer 3-element array of block{layout(column_major shared ) buffer highp float u, layout(column_major shared ) buffer implicitly-sized array of 7-element array of highp 4-component vector of float v})
|
||||
0:99 Constant:
|
||||
0:99 0 (const int)
|
||||
0:99 Constant:
|
||||
0:99 1 (const int)
|
||||
0:? Linker Objects
|
||||
0:? 'name' (layout(column_major shared ) buffer 3-element array of block{layout(column_major shared ) buffer implicitly-sized array of highp float u, layout(column_major shared ) buffer implicitly-sized array of highp 4-component vector of float v})
|
||||
0:? 'uname' (layout(column_major shared ) uniform 3-element array of block{layout(column_major shared ) uniform highp float u, layout(column_major shared ) uniform 1-element array of highp 4-component vector of float v})
|
||||
|
@ -152,31 +152,6 @@ ERROR: node is still EOpNull!
|
||||
0:12 'buffer' (temp int)
|
||||
0:12 Constant:
|
||||
0:12 4 (const int)
|
||||
0:21 Function Definition: foo( (global void)
|
||||
0:21 Function Parameters:
|
||||
0:23 Sequence
|
||||
0:23 Sequence
|
||||
0:23 move second child to first child (temp 4-component vector of float)
|
||||
0:23 'c' (temp 4-component vector of float)
|
||||
0:23 gl_Color: direct index for structure (in 4-component vector of float Color)
|
||||
0:23 'anon@0' (in block{in 4-component vector of float Color gl_Color, })
|
||||
0:23 Constant:
|
||||
0:23 2 (const uint)
|
||||
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:147 Function Definition: fooKeyMem( (global void)
|
||||
0:147 Function Parameters:
|
||||
0:149 Sequence
|
||||
0:149 precise: direct index for structure (global int)
|
||||
0:149 'KeyMem' (global structure{global int precise})
|
||||
0:149 Constant:
|
||||
0:149 0 (const int)
|
||||
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)
|
||||
|
@ -481,8 +481,6 @@ ERROR: node is still EOpNull!
|
||||
0:? 'vl2' (layout(location=6 ) smooth in 4-component vector of float)
|
||||
0:? 'uv3' (layout(location=3 ) uniform 3-component vector of float)
|
||||
0:? 'anon@0' (in block{in float FogFragCoord gl_FogFragCoord, in implicitly-sized array of 4-component vector of float TexCoord gl_TexCoord, smooth in 4-component vector of float Color gl_Color, in 4-component vector of float SecondaryColor gl_SecondaryColor})
|
||||
0:? 'anon@0' (in block{in float FogFragCoord gl_FogFragCoord, in implicitly-sized array of 4-component vector of float TexCoord gl_TexCoord, smooth in 4-component vector of float Color gl_Color, in 4-component vector of float SecondaryColor gl_SecondaryColor})
|
||||
0:? 'gl_FragCoord' (gl_FragCoord 4-component vector of float FragCoord)
|
||||
0:? 'gl_FragCoord' (gl_FragCoord 4-component vector of float FragCoord)
|
||||
0:? 'u2drs' (uniform sampler2DRectShadow)
|
||||
0:? 'patchIn' (smooth patch in 4-component vector of float)
|
||||
@ -644,312 +642,6 @@ ERROR: node is still EOpNull!
|
||||
0:27 move second child to first child (temp 4-component vector of float)
|
||||
0:27 'c' (temp 4-component vector of float)
|
||||
0:27 'gl_FragCoord' (gl_FragCoord 4-component vector of float FragCoord)
|
||||
0:47 Function Definition: foo23( (global void)
|
||||
0:47 Function Parameters:
|
||||
0:? Sequence
|
||||
0:51 textureProjGradOffset (global float)
|
||||
0:51 'u2drs' (uniform sampler2DRectShadow)
|
||||
0:51 'outp' (out 4-component vector of float)
|
||||
0:51 Constant:
|
||||
0:51 0.000000
|
||||
0:51 0.000000
|
||||
0:51 Constant:
|
||||
0:51 0.000000
|
||||
0:51 0.000000
|
||||
0:51 Convert float to int (temp 2-component vector of int)
|
||||
0:51 'c2D' (smooth in 2-component vector of float)
|
||||
0:52 textureProjGradOffset (global float)
|
||||
0:52 'u2drs' (uniform sampler2DRectShadow)
|
||||
0:52 'outp' (out 4-component vector of float)
|
||||
0:52 Constant:
|
||||
0:52 0.000000
|
||||
0:52 0.000000
|
||||
0:52 Constant:
|
||||
0:52 0.000000
|
||||
0:52 0.000000
|
||||
0:52 Constant:
|
||||
0:52 3 (const int)
|
||||
0:52 4 (const int)
|
||||
0:53 textureProjGradOffset (global float)
|
||||
0:53 'u2drs' (uniform sampler2DRectShadow)
|
||||
0:53 'outp' (out 4-component vector of float)
|
||||
0:53 Constant:
|
||||
0:53 0.000000
|
||||
0:53 0.000000
|
||||
0:53 Constant:
|
||||
0:53 0.000000
|
||||
0:53 0.000000
|
||||
0:53 Constant:
|
||||
0:53 15 (const int)
|
||||
0:53 16 (const int)
|
||||
0:54 textureProjGradOffset (global float)
|
||||
0:54 'u2drs' (uniform sampler2DRectShadow)
|
||||
0:54 'outp' (out 4-component vector of float)
|
||||
0:54 Constant:
|
||||
0:54 0.000000
|
||||
0:54 0.000000
|
||||
0:54 Constant:
|
||||
0:54 0.000000
|
||||
0:54 0.000000
|
||||
0:54 Constant:
|
||||
0:54 -10 (const int)
|
||||
0:54 20 (const int)
|
||||
0:60 Function Definition: foo24( (global void)
|
||||
0:60 Function Parameters:
|
||||
0:? Sequence
|
||||
0:63 move second child to first child (temp 3-component vector of double)
|
||||
0:63 'df' (temp 3-component vector of double)
|
||||
0:63 modf (global 3-component vector of double)
|
||||
0:63 Convert float to double (temp 3-component vector of double)
|
||||
0:63 vector swizzle (temp 3-component vector of float)
|
||||
0:63 'outp' (out 4-component vector of float)
|
||||
0:63 Sequence
|
||||
0:63 Constant:
|
||||
0:63 0 (const int)
|
||||
0:63 Constant:
|
||||
0:63 1 (const int)
|
||||
0:63 Constant:
|
||||
0:63 2 (const int)
|
||||
0:63 'di' (temp 3-component vector of double)
|
||||
0:71 Function Definition: foodc1( (global void)
|
||||
0:71 Function Parameters:
|
||||
0:73 Sequence
|
||||
0:73 Sequence
|
||||
0:73 move second child to first child (temp 2-component vector of float)
|
||||
0:73 'v2' (temp 2-component vector of float)
|
||||
0:73 dPdxFine (global 2-component vector of float)
|
||||
0:73 'in2' (smooth in 2-component vector of float)
|
||||
0:74 Sequence
|
||||
0:74 move second child to first child (temp 3-component vector of float)
|
||||
0:74 'v3' (temp 3-component vector of float)
|
||||
0:74 dPdyCoarse (global 3-component vector of float)
|
||||
0:74 'in3' (smooth in 3-component vector of float)
|
||||
0:75 Sequence
|
||||
0:75 move second child to first child (temp 4-component vector of float)
|
||||
0:75 'v4' (temp 4-component vector of float)
|
||||
0:75 add (temp 4-component vector of float)
|
||||
0:75 fwidthCoarse (global 4-component vector of float)
|
||||
0:75 'in4' (smooth in 4-component vector of float)
|
||||
0:75 fwidthFine (global 4-component vector of float)
|
||||
0:75 'in4' (smooth in 4-component vector of float)
|
||||
0:80 Function Definition: foodc2( (global void)
|
||||
0:80 Function Parameters:
|
||||
0:82 Sequence
|
||||
0:82 Sequence
|
||||
0:82 move second child to first child (temp 2-component vector of float)
|
||||
0:82 'v2' (temp 2-component vector of float)
|
||||
0:82 dPdxFine (global 2-component vector of float)
|
||||
0:82 'in2' (smooth in 2-component vector of float)
|
||||
0:83 Sequence
|
||||
0:83 move second child to first child (temp 3-component vector of float)
|
||||
0:83 'v3' (temp 3-component vector of float)
|
||||
0:83 dPdyCoarse (global 3-component vector of float)
|
||||
0:83 'in3' (smooth in 3-component vector of float)
|
||||
0:84 Sequence
|
||||
0:84 move second child to first child (temp 4-component vector of float)
|
||||
0:84 'v4' (temp 4-component vector of float)
|
||||
0:84 add (temp 4-component vector of float)
|
||||
0:84 fwidthCoarse (global 4-component vector of float)
|
||||
0:84 'in4' (smooth in 4-component vector of float)
|
||||
0:84 fwidthFine (global 4-component vector of float)
|
||||
0:84 'in4' (smooth in 4-component vector of float)
|
||||
0:89 move second child to first child (temp 2-component vector of float)
|
||||
0:89 'v2' (temp 2-component vector of float)
|
||||
0:89 frexp (global 2-component vector of float)
|
||||
0:89 'v2' (temp 2-component vector of float)
|
||||
0:89 'i2' (temp 2-component vector of int)
|
||||
0:90 move second child to first child (temp 3-component vector of float)
|
||||
0:90 'v3' (temp 3-component vector of float)
|
||||
0:90 ldexp (global 3-component vector of float)
|
||||
0:90 'v3' (temp 3-component vector of float)
|
||||
0:90 'i3' (temp 3-component vector of int)
|
||||
0:92 move second child to first child (temp uint)
|
||||
0:92 'u1' (temp uint)
|
||||
0:92 PackUnorm4x8 (global uint)
|
||||
0:92 'v4' (temp 4-component vector of float)
|
||||
0:93 move second child to first child (temp uint)
|
||||
0:93 'u1' (temp uint)
|
||||
0:93 PackSnorm4x8 (global uint)
|
||||
0:93 'v4' (temp 4-component vector of float)
|
||||
0:94 move second child to first child (temp 4-component vector of float)
|
||||
0:94 'v4' (temp 4-component vector of float)
|
||||
0:94 UnpackUnorm4x8 (global 4-component vector of float)
|
||||
0:94 'u1' (temp uint)
|
||||
0:95 move second child to first child (temp 4-component vector of float)
|
||||
0:95 'v4' (temp 4-component vector of float)
|
||||
0:95 UnpackSnorm4x8 (global 4-component vector of float)
|
||||
0:95 'u1' (temp uint)
|
||||
0:99 move second child to first child (temp double)
|
||||
0:99 'd' (temp double)
|
||||
0:99 PackDouble2x32 (global double)
|
||||
0:99 'u2' (temp 2-component vector of uint)
|
||||
0:100 move second child to first child (temp 2-component vector of uint)
|
||||
0:100 'u2' (temp 2-component vector of uint)
|
||||
0:100 UnpackDouble2x32 (global 2-component vector of uint)
|
||||
0:100 'd' (temp double)
|
||||
0:117 Function Definition: interp( (global void)
|
||||
0:117 Function Parameters:
|
||||
0:119 Sequence
|
||||
0:119 interpolateAtCentroid (global 2-component vector of float)
|
||||
0:119 'colorfc' (centroid flat in 2-component vector of float)
|
||||
0:120 interpolateAtCentroid (global 4-component vector of float)
|
||||
0:120 'colorSampIn' (smooth sample in 4-component vector of float)
|
||||
0:121 interpolateAtCentroid (global 4-component vector of float)
|
||||
0:121 'colorfsi' (noperspective in 4-component vector of float)
|
||||
0:122 interpolateAtCentroid (global float)
|
||||
0:122 'scalarIn' (smooth in float)
|
||||
0:123 Constant:
|
||||
0:123 0.000000
|
||||
0:124 interpolateAtCentroid (global 3-component vector of float)
|
||||
0:124 direct index (smooth sample temp 3-component vector of float)
|
||||
0:124 'sampInArray' (smooth sample in 4-element array of 3-component vector of float)
|
||||
0:124 Constant:
|
||||
0:124 2 (const int)
|
||||
0:125 interpolateAtCentroid (global 2-component vector of float)
|
||||
0:125 vector swizzle (temp 2-component vector of float)
|
||||
0:125 direct index (smooth sample temp 3-component vector of float)
|
||||
0:125 'sampInArray' (smooth sample in 4-element array of 3-component vector of float)
|
||||
0:125 Constant:
|
||||
0:125 2 (const int)
|
||||
0:125 Sequence
|
||||
0:125 Constant:
|
||||
0:125 0 (const int)
|
||||
0:125 Constant:
|
||||
0:125 1 (const int)
|
||||
0:127 Constant:
|
||||
0:127 0.000000
|
||||
0:128 interpolateAtSample (global 3-component vector of float)
|
||||
0:128 indirect index (smooth sample temp 3-component vector of float)
|
||||
0:128 'sampInArray' (smooth sample in 4-element array of 3-component vector of float)
|
||||
0:128 'i' (flat in int)
|
||||
0:128 Constant:
|
||||
0:128 0 (const int)
|
||||
0:129 interpolateAtSample (global float)
|
||||
0:129 x: direct index for structure (global float)
|
||||
0:129 's1' (smooth in structure{global float x})
|
||||
0:129 Constant:
|
||||
0:129 0 (const int)
|
||||
0:129 Constant:
|
||||
0:129 2 (const int)
|
||||
0:130 interpolateAtSample (global float)
|
||||
0:130 'scalarIn' (smooth in float)
|
||||
0:130 Constant:
|
||||
0:130 1 (const int)
|
||||
0:132 Constant:
|
||||
0:132 0.000000
|
||||
0:133 interpolateAtOffset (global 3-component vector of float)
|
||||
0:133 direct index (smooth sample temp 3-component vector of float)
|
||||
0:133 'sampInArray' (smooth sample in 4-element array of 3-component vector of float)
|
||||
0:133 Constant:
|
||||
0:133 2 (const int)
|
||||
0:133 Constant:
|
||||
0:133 0.200000
|
||||
0:133 0.200000
|
||||
0:134 interpolateAtOffset (global 2-component vector of float)
|
||||
0:134 vector swizzle (temp 2-component vector of float)
|
||||
0:134 direct index (smooth sample temp 3-component vector of float)
|
||||
0:134 'sampInArray' (smooth sample in 4-element array of 3-component vector of float)
|
||||
0:134 Constant:
|
||||
0:134 2 (const int)
|
||||
0:134 Sequence
|
||||
0:134 Constant:
|
||||
0:134 0 (const int)
|
||||
0:134 Constant:
|
||||
0:134 1 (const int)
|
||||
0:134 Constant:
|
||||
0:134 0.200000
|
||||
0:134 0.200000
|
||||
0:135 interpolateAtOffset (global float)
|
||||
0:135 add (temp float)
|
||||
0:135 'scalarIn' (smooth in float)
|
||||
0:135 'scalarIn' (smooth in float)
|
||||
0:135 Constant:
|
||||
0:135 0.200000
|
||||
0:135 0.200000
|
||||
0:136 interpolateAtOffset (global float)
|
||||
0:136 x: direct index for structure (global float)
|
||||
0:136 's2' (sample temp structure{global float x})
|
||||
0:136 Constant:
|
||||
0:136 0 (const int)
|
||||
0:136 Constant:
|
||||
0:136 0.200000
|
||||
0:136 0.200000
|
||||
0:139 interpolateAtCentroid (global float)
|
||||
0:139 'f' (temp float)
|
||||
0:140 interpolateAtSample (global 4-component vector of float)
|
||||
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)
|
||||
@ -962,8 +654,6 @@ ERROR: node is still EOpNull!
|
||||
0:? 'vl2' (layout(location=6 ) smooth in 4-component vector of float)
|
||||
0:? 'uv3' (layout(location=3 ) uniform 3-component vector of float)
|
||||
0:? 'anon@0' (in block{in float FogFragCoord gl_FogFragCoord, in 1-element array of 4-component vector of float TexCoord gl_TexCoord, smooth in 4-component vector of float Color gl_Color, in 4-component vector of float SecondaryColor gl_SecondaryColor})
|
||||
0:? 'anon@0' (in block{in float FogFragCoord gl_FogFragCoord, in 1-element array of 4-component vector of float TexCoord gl_TexCoord, smooth in 4-component vector of float Color gl_Color, in 4-component vector of float SecondaryColor gl_SecondaryColor})
|
||||
0:? 'gl_FragCoord' (gl_FragCoord 4-component vector of float FragCoord)
|
||||
0:? 'gl_FragCoord' (gl_FragCoord 4-component vector of float FragCoord)
|
||||
0:? 'u2drs' (uniform sampler2DRectShadow)
|
||||
0:? 'patchIn' (smooth patch in 4-component vector of float)
|
||||
|
@ -1070,981 +1070,6 @@ ERROR: node is still EOpNull!
|
||||
0:9 move second child to first child (temp int)
|
||||
0:9 'id' (temp int)
|
||||
0:9 'gl_InvocationID' (in int InvocationID)
|
||||
0:23 Function Definition: foo( (global void)
|
||||
0:23 Function Parameters:
|
||||
0:25 Sequence
|
||||
0:25 Constant:
|
||||
0:25 1 (const int)
|
||||
0:26 gl_Position: direct index for structure (in 4-component vector of float Position)
|
||||
0:26 direct index (temp block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize})
|
||||
0:26 'gl_in' (in 3-element array of block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize})
|
||||
0:26 Constant:
|
||||
0:26 1 (const int)
|
||||
0:26 Constant:
|
||||
0:26 0 (const int)
|
||||
0:34 Function Definition: foo2( (global void)
|
||||
0:34 Function Parameters:
|
||||
0:36 Sequence
|
||||
0:36 Constant:
|
||||
0:36 1 (const int)
|
||||
0:37 Constant:
|
||||
0:37 3 (const int)
|
||||
0:46 Function Definition: foo3( (global void)
|
||||
0:46 Function Parameters:
|
||||
0:48 Sequence
|
||||
0:48 Constant:
|
||||
0:48 3 (const int)
|
||||
0:49 Constant:
|
||||
0:49 3 (const int)
|
||||
0:50 Constant:
|
||||
0:50 3 (const int)
|
||||
0:51 Constant:
|
||||
0:51 3 (const int)
|
||||
0:75 Function Definition: bits( (global void)
|
||||
0:75 Function Parameters:
|
||||
0:? Sequence
|
||||
0:78 move second child to first child (temp 2-component vector of uint)
|
||||
0:78 'u2' (temp 2-component vector of uint)
|
||||
0:78 addCarry (global 2-component vector of uint)
|
||||
0:78 'u2' (temp 2-component vector of uint)
|
||||
0:78 'u2' (temp 2-component vector of uint)
|
||||
0:78 'u2' (temp 2-component vector of uint)
|
||||
0:80 move second child to first child (temp uint)
|
||||
0:80 'u1' (temp uint)
|
||||
0:80 subBorrow (global uint)
|
||||
0:80 'u1' (temp uint)
|
||||
0:80 'u1' (temp uint)
|
||||
0:80 'u1' (temp uint)
|
||||
0:82 uMulExtended (global void)
|
||||
0:82 'u4' (temp 4-component vector of uint)
|
||||
0:82 'u4' (temp 4-component vector of uint)
|
||||
0:82 'u4' (temp 4-component vector of uint)
|
||||
0:82 'u4' (temp 4-component vector of uint)
|
||||
0:84 iMulExtended (global void)
|
||||
0:84 'i4' (temp 4-component vector of int)
|
||||
0:84 'i4' (temp 4-component vector of int)
|
||||
0:84 'i4' (temp 4-component vector of int)
|
||||
0:84 'i4' (temp 4-component vector of int)
|
||||
0:86 move second child to first child (temp int)
|
||||
0:86 'i1' (temp int)
|
||||
0:86 bitfieldExtract (global int)
|
||||
0:86 'i1' (temp int)
|
||||
0:86 Constant:
|
||||
0:86 4 (const int)
|
||||
0:86 Constant:
|
||||
0:86 5 (const int)
|
||||
0:88 move second child to first child (temp 3-component vector of uint)
|
||||
0:88 'u3' (temp 3-component vector of uint)
|
||||
0:88 bitfieldExtract (global 3-component vector of uint)
|
||||
0:88 'u3' (temp 3-component vector of uint)
|
||||
0:88 Constant:
|
||||
0:88 4 (const int)
|
||||
0:88 Constant:
|
||||
0:88 5 (const int)
|
||||
0:90 move second child to first child (temp 3-component vector of int)
|
||||
0:90 'i3' (temp 3-component vector of int)
|
||||
0:90 bitfieldInsert (global 3-component vector of int)
|
||||
0:90 'i3' (temp 3-component vector of int)
|
||||
0:90 'i3' (temp 3-component vector of int)
|
||||
0:90 Constant:
|
||||
0:90 4 (const int)
|
||||
0:90 Constant:
|
||||
0:90 5 (const int)
|
||||
0:91 move second child to first child (temp uint)
|
||||
0:91 'u1' (temp uint)
|
||||
0:91 bitfieldInsert (global uint)
|
||||
0:91 'u1' (temp uint)
|
||||
0:91 'u1' (temp uint)
|
||||
0:91 Constant:
|
||||
0:91 4 (const int)
|
||||
0:91 Constant:
|
||||
0:91 5 (const int)
|
||||
0:93 move second child to first child (temp 2-component vector of int)
|
||||
0:93 'i2' (temp 2-component vector of int)
|
||||
0:93 bitFieldReverse (global 2-component vector of int)
|
||||
0:93 'i2' (temp 2-component vector of int)
|
||||
0:94 move second child to first child (temp 4-component vector of uint)
|
||||
0:94 'u4' (temp 4-component vector of uint)
|
||||
0:94 bitFieldReverse (global 4-component vector of uint)
|
||||
0:94 'u4' (temp 4-component vector of uint)
|
||||
0:95 move second child to first child (temp int)
|
||||
0:95 'i1' (temp int)
|
||||
0:95 bitCount (global int)
|
||||
0:95 'i1' (temp int)
|
||||
0:96 move second child to first child (temp 3-component vector of int)
|
||||
0:96 'i3' (temp 3-component vector of int)
|
||||
0:96 bitCount (global 3-component vector of int)
|
||||
0:96 'u3' (temp 3-component vector of uint)
|
||||
0:97 move second child to first child (temp 2-component vector of int)
|
||||
0:97 'i2' (temp 2-component vector of int)
|
||||
0:97 findLSB (global 2-component vector of int)
|
||||
0:97 'i2' (temp 2-component vector of int)
|
||||
0:98 move second child to first child (temp 4-component vector of int)
|
||||
0:98 'i4' (temp 4-component vector of int)
|
||||
0:98 findLSB (global 4-component vector of int)
|
||||
0:98 'u4' (temp 4-component vector of uint)
|
||||
0:99 move second child to first child (temp int)
|
||||
0:99 'i1' (temp int)
|
||||
0:99 findMSB (global int)
|
||||
0:99 'i1' (temp int)
|
||||
0:100 move second child to first child (temp 2-component vector of int)
|
||||
0:100 'i2' (temp 2-component vector of int)
|
||||
0:100 findMSB (global 2-component vector of int)
|
||||
0:100 '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:119 Function Definition: doubles( (global void)
|
||||
0:119 Function Parameters:
|
||||
0:? Sequence
|
||||
0:131 move second child to first child (temp double)
|
||||
0:131 'doublev' (temp double)
|
||||
0:131 Constant:
|
||||
0:131 1.702939
|
||||
0:132 move second child to first child (temp 2-component vector of double)
|
||||
0:132 'dvec2v' (temp 2-component vector of double)
|
||||
0:132 Constant:
|
||||
0:132 1.643168
|
||||
0:132 1.643168
|
||||
0:133 move second child to first child (temp 3-component vector of double)
|
||||
0:133 'dvec3v' (temp 3-component vector of double)
|
||||
0:133 Constant:
|
||||
0:133 1.414214
|
||||
0:133 1.414214
|
||||
0:133 1.414214
|
||||
0:134 move second child to first child (temp 4-component vector of double)
|
||||
0:134 'dvec4v' (temp 4-component vector of double)
|
||||
0:134 Constant:
|
||||
0:134 1.449138
|
||||
0:134 1.449138
|
||||
0:134 1.449138
|
||||
0:134 1.449138
|
||||
0:136 add second child into first child (temp double)
|
||||
0:136 'doublev' (temp double)
|
||||
0:136 inverse sqrt (global double)
|
||||
0:136 'doublev' (temp double)
|
||||
0:137 add second child into first child (temp 2-component vector of double)
|
||||
0:137 'dvec2v' (temp 2-component vector of double)
|
||||
0:137 inverse sqrt (global 2-component vector of double)
|
||||
0:137 'dvec2v' (temp 2-component vector of double)
|
||||
0:138 add second child into first child (temp 3-component vector of double)
|
||||
0:138 'dvec3v' (temp 3-component vector of double)
|
||||
0:138 inverse sqrt (global 3-component vector of double)
|
||||
0:138 'dvec3v' (temp 3-component vector of double)
|
||||
0:139 add second child into first child (temp 4-component vector of double)
|
||||
0:139 'dvec4v' (temp 4-component vector of double)
|
||||
0:139 inverse sqrt (global 4-component vector of double)
|
||||
0:139 'dvec4v' (temp 4-component vector of double)
|
||||
0:141 add second child into first child (temp double)
|
||||
0:141 'doublev' (temp double)
|
||||
0:141 Absolute value (global double)
|
||||
0:141 'doublev' (temp double)
|
||||
0:142 add second child into first child (temp 2-component vector of double)
|
||||
0:142 'dvec2v' (temp 2-component vector of double)
|
||||
0:142 Absolute value (global 2-component vector of double)
|
||||
0:142 'dvec2v' (temp 2-component vector of double)
|
||||
0:143 add second child into first child (temp 3-component vector of double)
|
||||
0:143 'dvec3v' (temp 3-component vector of double)
|
||||
0:143 Absolute value (global 3-component vector of double)
|
||||
0:143 'dvec3v' (temp 3-component vector of double)
|
||||
0:144 add second child into first child (temp 4-component vector of double)
|
||||
0:144 'dvec4v' (temp 4-component vector of double)
|
||||
0:144 Absolute value (global 4-component vector of double)
|
||||
0:144 'dvec4v' (temp 4-component vector of double)
|
||||
0:146 add second child into first child (temp double)
|
||||
0:146 'doublev' (temp double)
|
||||
0:146 Sign (global double)
|
||||
0:146 'doublev' (temp double)
|
||||
0:147 add second child into first child (temp 2-component vector of double)
|
||||
0:147 'dvec2v' (temp 2-component vector of double)
|
||||
0:147 Sign (global 2-component vector of double)
|
||||
0:147 'dvec2v' (temp 2-component vector of double)
|
||||
0:148 add second child into first child (temp 3-component vector of double)
|
||||
0:148 'dvec3v' (temp 3-component vector of double)
|
||||
0:148 Sign (global 3-component vector of double)
|
||||
0:148 'dvec3v' (temp 3-component vector of double)
|
||||
0:149 add second child into first child (temp 4-component vector of double)
|
||||
0:149 'dvec4v' (temp 4-component vector of double)
|
||||
0:149 Sign (global 4-component vector of double)
|
||||
0:149 'dvec4v' (temp 4-component vector of double)
|
||||
0:151 add second child into first child (temp double)
|
||||
0:151 'doublev' (temp double)
|
||||
0:151 Floor (global double)
|
||||
0:151 'doublev' (temp double)
|
||||
0:152 add second child into first child (temp 2-component vector of double)
|
||||
0:152 'dvec2v' (temp 2-component vector of double)
|
||||
0:152 Floor (global 2-component vector of double)
|
||||
0:152 'dvec2v' (temp 2-component vector of double)
|
||||
0:153 add second child into first child (temp 3-component vector of double)
|
||||
0:153 'dvec3v' (temp 3-component vector of double)
|
||||
0:153 Floor (global 3-component vector of double)
|
||||
0:153 'dvec3v' (temp 3-component vector of double)
|
||||
0:154 add second child into first child (temp 4-component vector of double)
|
||||
0:154 'dvec4v' (temp 4-component vector of double)
|
||||
0:154 Floor (global 4-component vector of double)
|
||||
0:154 'dvec4v' (temp 4-component vector of double)
|
||||
0:156 add second child into first child (temp double)
|
||||
0:156 'doublev' (temp double)
|
||||
0:156 trunc (global double)
|
||||
0:156 'doublev' (temp double)
|
||||
0:157 add second child into first child (temp 2-component vector of double)
|
||||
0:157 'dvec2v' (temp 2-component vector of double)
|
||||
0:157 trunc (global 2-component vector of double)
|
||||
0:157 'dvec2v' (temp 2-component vector of double)
|
||||
0:158 add second child into first child (temp 3-component vector of double)
|
||||
0:158 'dvec3v' (temp 3-component vector of double)
|
||||
0:158 trunc (global 3-component vector of double)
|
||||
0:158 'dvec3v' (temp 3-component vector of double)
|
||||
0:159 add second child into first child (temp 4-component vector of double)
|
||||
0:159 'dvec4v' (temp 4-component vector of double)
|
||||
0:159 trunc (global 4-component vector of double)
|
||||
0:159 'dvec4v' (temp 4-component vector of double)
|
||||
0:161 add second child into first child (temp double)
|
||||
0:161 'doublev' (temp double)
|
||||
0:161 round (global double)
|
||||
0:161 'doublev' (temp double)
|
||||
0:162 add second child into first child (temp 2-component vector of double)
|
||||
0:162 'dvec2v' (temp 2-component vector of double)
|
||||
0:162 round (global 2-component vector of double)
|
||||
0:162 'dvec2v' (temp 2-component vector of double)
|
||||
0:163 add second child into first child (temp 3-component vector of double)
|
||||
0:163 'dvec3v' (temp 3-component vector of double)
|
||||
0:163 round (global 3-component vector of double)
|
||||
0:163 'dvec3v' (temp 3-component vector of double)
|
||||
0:164 add second child into first child (temp 4-component vector of double)
|
||||
0:164 'dvec4v' (temp 4-component vector of double)
|
||||
0:164 round (global 4-component vector of double)
|
||||
0:164 'dvec4v' (temp 4-component vector of double)
|
||||
0:166 add second child into first child (temp double)
|
||||
0:166 'doublev' (temp double)
|
||||
0:166 roundEven (global double)
|
||||
0:166 'doublev' (temp double)
|
||||
0:167 add second child into first child (temp 2-component vector of double)
|
||||
0:167 'dvec2v' (temp 2-component vector of double)
|
||||
0:167 roundEven (global 2-component vector of double)
|
||||
0:167 'dvec2v' (temp 2-component vector of double)
|
||||
0:168 add second child into first child (temp 3-component vector of double)
|
||||
0:168 'dvec3v' (temp 3-component vector of double)
|
||||
0:168 roundEven (global 3-component vector of double)
|
||||
0:168 'dvec3v' (temp 3-component vector of double)
|
||||
0:169 add second child into first child (temp 4-component vector of double)
|
||||
0:169 'dvec4v' (temp 4-component vector of double)
|
||||
0:169 roundEven (global 4-component vector of double)
|
||||
0:169 'dvec4v' (temp 4-component vector of double)
|
||||
0:171 add second child into first child (temp double)
|
||||
0:171 'doublev' (temp double)
|
||||
0:171 Ceiling (global double)
|
||||
0:171 'doublev' (temp double)
|
||||
0:172 add second child into first child (temp 2-component vector of double)
|
||||
0:172 'dvec2v' (temp 2-component vector of double)
|
||||
0:172 Ceiling (global 2-component vector of double)
|
||||
0:172 'dvec2v' (temp 2-component vector of double)
|
||||
0:173 add second child into first child (temp 3-component vector of double)
|
||||
0:173 'dvec3v' (temp 3-component vector of double)
|
||||
0:173 Ceiling (global 3-component vector of double)
|
||||
0:173 'dvec3v' (temp 3-component vector of double)
|
||||
0:174 add second child into first child (temp 4-component vector of double)
|
||||
0:174 'dvec4v' (temp 4-component vector of double)
|
||||
0:174 Ceiling (global 4-component vector of double)
|
||||
0:174 'dvec4v' (temp 4-component vector of double)
|
||||
0:176 add second child into first child (temp double)
|
||||
0:176 'doublev' (temp double)
|
||||
0:176 Fraction (global double)
|
||||
0:176 'doublev' (temp double)
|
||||
0:177 add second child into first child (temp 2-component vector of double)
|
||||
0:177 'dvec2v' (temp 2-component vector of double)
|
||||
0:177 Fraction (global 2-component vector of double)
|
||||
0:177 'dvec2v' (temp 2-component vector of double)
|
||||
0:178 add second child into first child (temp 3-component vector of double)
|
||||
0:178 'dvec3v' (temp 3-component vector of double)
|
||||
0:178 Fraction (global 3-component vector of double)
|
||||
0:178 'dvec3v' (temp 3-component vector of double)
|
||||
0:179 add second child into first child (temp 4-component vector of double)
|
||||
0:179 'dvec4v' (temp 4-component vector of double)
|
||||
0:179 Fraction (global 4-component vector of double)
|
||||
0:179 'dvec4v' (temp 4-component vector of double)
|
||||
0:181 add second child into first child (temp double)
|
||||
0:181 'doublev' (temp double)
|
||||
0:181 mod (global double)
|
||||
0:181 'doublev' (temp double)
|
||||
0:181 'doublev' (temp double)
|
||||
0:182 add second child into first child (temp 2-component vector of double)
|
||||
0:182 'dvec2v' (temp 2-component vector of double)
|
||||
0:182 mod (global 2-component vector of double)
|
||||
0:182 'dvec2v' (temp 2-component vector of double)
|
||||
0:182 'doublev' (temp double)
|
||||
0:183 add second child into first child (temp 3-component vector of double)
|
||||
0:183 'dvec3v' (temp 3-component vector of double)
|
||||
0:183 mod (global 3-component vector of double)
|
||||
0:183 'dvec3v' (temp 3-component vector of double)
|
||||
0:183 'doublev' (temp double)
|
||||
0:184 add second child into first child (temp 4-component vector of double)
|
||||
0:184 'dvec4v' (temp 4-component vector of double)
|
||||
0:184 mod (global 4-component vector of double)
|
||||
0:184 'dvec4v' (temp 4-component vector of double)
|
||||
0:184 'doublev' (temp double)
|
||||
0:185 add second child into first child (temp 2-component vector of double)
|
||||
0:185 'dvec2v' (temp 2-component vector of double)
|
||||
0:185 mod (global 2-component vector of double)
|
||||
0:185 'dvec2v' (temp 2-component vector of double)
|
||||
0:185 'dvec2v' (temp 2-component vector of double)
|
||||
0:186 add second child into first child (temp 3-component vector of double)
|
||||
0:186 'dvec3v' (temp 3-component vector of double)
|
||||
0:186 mod (global 3-component vector of double)
|
||||
0:186 'dvec3v' (temp 3-component vector of double)
|
||||
0:186 'dvec3v' (temp 3-component vector of double)
|
||||
0:187 add second child into first child (temp 4-component vector of double)
|
||||
0:187 'dvec4v' (temp 4-component vector of double)
|
||||
0:187 mod (global 4-component vector of double)
|
||||
0:187 'dvec4v' (temp 4-component vector of double)
|
||||
0:187 'dvec4v' (temp 4-component vector of double)
|
||||
0:189 add second child into first child (temp double)
|
||||
0:189 'doublev' (temp double)
|
||||
0:189 modf (global double)
|
||||
0:189 'doublev' (temp double)
|
||||
0:189 'doublev' (temp double)
|
||||
0:190 add second child into first child (temp 2-component vector of double)
|
||||
0:190 'dvec2v' (temp 2-component vector of double)
|
||||
0:190 modf (global 2-component vector of double)
|
||||
0:190 'dvec2v' (temp 2-component vector of double)
|
||||
0:190 'dvec2v' (temp 2-component vector of double)
|
||||
0:191 add second child into first child (temp 3-component vector of double)
|
||||
0:191 'dvec3v' (temp 3-component vector of double)
|
||||
0:191 modf (global 3-component vector of double)
|
||||
0:191 'dvec3v' (temp 3-component vector of double)
|
||||
0:191 'dvec3v' (temp 3-component vector of double)
|
||||
0:192 add second child into first child (temp 4-component vector of double)
|
||||
0:192 'dvec4v' (temp 4-component vector of double)
|
||||
0:192 modf (global 4-component vector of double)
|
||||
0:192 'dvec4v' (temp 4-component vector of double)
|
||||
0:192 'dvec4v' (temp 4-component vector of double)
|
||||
0:194 add second child into first child (temp double)
|
||||
0:194 'doublev' (temp double)
|
||||
0:194 min (global double)
|
||||
0:194 'doublev' (temp double)
|
||||
0:194 'doublev' (temp double)
|
||||
0:195 add second child into first child (temp 2-component vector of double)
|
||||
0:195 'dvec2v' (temp 2-component vector of double)
|
||||
0:195 min (global 2-component vector of double)
|
||||
0:195 'dvec2v' (temp 2-component vector of double)
|
||||
0:195 'doublev' (temp double)
|
||||
0:196 add second child into first child (temp 3-component vector of double)
|
||||
0:196 'dvec3v' (temp 3-component vector of double)
|
||||
0:196 min (global 3-component vector of double)
|
||||
0:196 'dvec3v' (temp 3-component vector of double)
|
||||
0:196 'doublev' (temp double)
|
||||
0:197 add second child into first child (temp 4-component vector of double)
|
||||
0:197 'dvec4v' (temp 4-component vector of double)
|
||||
0:197 min (global 4-component vector of double)
|
||||
0:197 'dvec4v' (temp 4-component vector of double)
|
||||
0:197 'doublev' (temp double)
|
||||
0:198 add second child into first child (temp 2-component vector of double)
|
||||
0:198 'dvec2v' (temp 2-component vector of double)
|
||||
0:198 min (global 2-component vector of double)
|
||||
0:198 'dvec2v' (temp 2-component vector of double)
|
||||
0:198 'dvec2v' (temp 2-component vector of double)
|
||||
0:199 add second child into first child (temp 3-component vector of double)
|
||||
0:199 'dvec3v' (temp 3-component vector of double)
|
||||
0:199 min (global 3-component vector of double)
|
||||
0:199 'dvec3v' (temp 3-component vector of double)
|
||||
0:199 'dvec3v' (temp 3-component vector of double)
|
||||
0:200 add second child into first child (temp 4-component vector of double)
|
||||
0:200 'dvec4v' (temp 4-component vector of double)
|
||||
0:200 min (global 4-component vector of double)
|
||||
0:200 'dvec4v' (temp 4-component vector of double)
|
||||
0:200 'dvec4v' (temp 4-component vector of double)
|
||||
0:202 add second child into first child (temp double)
|
||||
0:202 'doublev' (temp double)
|
||||
0:202 max (global double)
|
||||
0:202 'doublev' (temp double)
|
||||
0:202 'doublev' (temp double)
|
||||
0:203 add second child into first child (temp 2-component vector of double)
|
||||
0:203 'dvec2v' (temp 2-component vector of double)
|
||||
0:203 max (global 2-component vector of double)
|
||||
0:203 'dvec2v' (temp 2-component vector of double)
|
||||
0:203 'doublev' (temp double)
|
||||
0:204 add second child into first child (temp 3-component vector of double)
|
||||
0:204 'dvec3v' (temp 3-component vector of double)
|
||||
0:204 max (global 3-component vector of double)
|
||||
0:204 'dvec3v' (temp 3-component vector of double)
|
||||
0:204 'doublev' (temp double)
|
||||
0:205 add second child into first child (temp 4-component vector of double)
|
||||
0:205 'dvec4v' (temp 4-component vector of double)
|
||||
0:205 max (global 4-component vector of double)
|
||||
0:205 'dvec4v' (temp 4-component vector of double)
|
||||
0:205 'doublev' (temp double)
|
||||
0:206 add second child into first child (temp 2-component vector of double)
|
||||
0:206 'dvec2v' (temp 2-component vector of double)
|
||||
0:206 max (global 2-component vector of double)
|
||||
0:206 'dvec2v' (temp 2-component vector of double)
|
||||
0:206 'dvec2v' (temp 2-component vector of double)
|
||||
0:207 add second child into first child (temp 3-component vector of double)
|
||||
0:207 'dvec3v' (temp 3-component vector of double)
|
||||
0:207 max (global 3-component vector of double)
|
||||
0:207 'dvec3v' (temp 3-component vector of double)
|
||||
0:207 'dvec3v' (temp 3-component vector of double)
|
||||
0:208 add second child into first child (temp 4-component vector of double)
|
||||
0:208 'dvec4v' (temp 4-component vector of double)
|
||||
0:208 max (global 4-component vector of double)
|
||||
0:208 'dvec4v' (temp 4-component vector of double)
|
||||
0:208 'dvec4v' (temp 4-component vector of double)
|
||||
0:210 add second child into first child (temp double)
|
||||
0:210 'doublev' (temp double)
|
||||
0:210 clamp (global double)
|
||||
0:210 'doublev' (temp double)
|
||||
0:210 'doublev' (temp double)
|
||||
0:210 'doublev' (temp double)
|
||||
0:211 add second child into first child (temp 2-component vector of double)
|
||||
0:211 'dvec2v' (temp 2-component vector of double)
|
||||
0:211 clamp (global 2-component vector of double)
|
||||
0:211 'dvec2v' (temp 2-component vector of double)
|
||||
0:211 'doublev' (temp double)
|
||||
0:211 'doublev' (temp double)
|
||||
0:212 add second child into first child (temp 3-component vector of double)
|
||||
0:212 'dvec3v' (temp 3-component vector of double)
|
||||
0:212 clamp (global 3-component vector of double)
|
||||
0:212 'dvec3v' (temp 3-component vector of double)
|
||||
0:212 'doublev' (temp double)
|
||||
0:212 'doublev' (temp double)
|
||||
0:213 add second child into first child (temp 4-component vector of double)
|
||||
0:213 'dvec4v' (temp 4-component vector of double)
|
||||
0:213 clamp (global 4-component vector of double)
|
||||
0:213 'dvec4v' (temp 4-component vector of double)
|
||||
0:213 'doublev' (temp double)
|
||||
0:213 'doublev' (temp double)
|
||||
0:214 add second child into first child (temp 2-component vector of double)
|
||||
0:214 'dvec2v' (temp 2-component vector of double)
|
||||
0:214 clamp (global 2-component vector of double)
|
||||
0:214 'dvec2v' (temp 2-component vector of double)
|
||||
0:214 'dvec2v' (temp 2-component vector of double)
|
||||
0:214 'dvec2v' (temp 2-component vector of double)
|
||||
0:215 add second child into first child (temp 3-component vector of double)
|
||||
0:215 'dvec3v' (temp 3-component vector of double)
|
||||
0:215 clamp (global 3-component vector of double)
|
||||
0:215 'dvec3v' (temp 3-component vector of double)
|
||||
0:215 'dvec3v' (temp 3-component vector of double)
|
||||
0:215 'dvec3v' (temp 3-component vector of double)
|
||||
0:216 add second child into first child (temp 4-component vector of double)
|
||||
0:216 'dvec4v' (temp 4-component vector of double)
|
||||
0:216 clamp (global 4-component vector of double)
|
||||
0:216 'dvec4v' (temp 4-component vector of double)
|
||||
0:216 'dvec4v' (temp 4-component vector of double)
|
||||
0:216 'dvec4v' (temp 4-component vector of double)
|
||||
0:218 add second child into first child (temp double)
|
||||
0:218 'doublev' (temp double)
|
||||
0:218 mix (global double)
|
||||
0:218 'doublev' (temp double)
|
||||
0:218 'doublev' (temp double)
|
||||
0:218 'doublev' (temp double)
|
||||
0:219 add second child into first child (temp 2-component vector of double)
|
||||
0:219 'dvec2v' (temp 2-component vector of double)
|
||||
0:219 mix (global 2-component vector of double)
|
||||
0:219 'dvec2v' (temp 2-component vector of double)
|
||||
0:219 'dvec2v' (temp 2-component vector of double)
|
||||
0:219 'doublev' (temp double)
|
||||
0:220 add second child into first child (temp 3-component vector of double)
|
||||
0:220 'dvec3v' (temp 3-component vector of double)
|
||||
0:220 mix (global 3-component vector of double)
|
||||
0:220 'dvec3v' (temp 3-component vector of double)
|
||||
0:220 'dvec3v' (temp 3-component vector of double)
|
||||
0:220 'doublev' (temp double)
|
||||
0:221 add second child into first child (temp 4-component vector of double)
|
||||
0:221 'dvec4v' (temp 4-component vector of double)
|
||||
0:221 mix (global 4-component vector of double)
|
||||
0:221 'dvec4v' (temp 4-component vector of double)
|
||||
0:221 'dvec4v' (temp 4-component vector of double)
|
||||
0:221 'doublev' (temp double)
|
||||
0:222 add second child into first child (temp 2-component vector of double)
|
||||
0:222 'dvec2v' (temp 2-component vector of double)
|
||||
0:222 mix (global 2-component vector of double)
|
||||
0:222 'dvec2v' (temp 2-component vector of double)
|
||||
0:222 'dvec2v' (temp 2-component vector of double)
|
||||
0:222 'dvec2v' (temp 2-component vector of double)
|
||||
0:223 add second child into first child (temp 3-component vector of double)
|
||||
0:223 'dvec3v' (temp 3-component vector of double)
|
||||
0:223 mix (global 3-component vector of double)
|
||||
0:223 'dvec3v' (temp 3-component vector of double)
|
||||
0:223 'dvec3v' (temp 3-component vector of double)
|
||||
0:223 'dvec3v' (temp 3-component vector of double)
|
||||
0:224 add second child into first child (temp 4-component vector of double)
|
||||
0:224 'dvec4v' (temp 4-component vector of double)
|
||||
0:224 mix (global 4-component vector of double)
|
||||
0:224 'dvec4v' (temp 4-component vector of double)
|
||||
0:224 'dvec4v' (temp 4-component vector of double)
|
||||
0:224 'dvec4v' (temp 4-component vector of double)
|
||||
0:225 add second child into first child (temp double)
|
||||
0:225 'doublev' (temp double)
|
||||
0:225 mix (global double)
|
||||
0:225 'doublev' (temp double)
|
||||
0:225 'doublev' (temp double)
|
||||
0:225 'boolv' (temp bool)
|
||||
0:226 add second child into first child (temp 2-component vector of double)
|
||||
0:226 'dvec2v' (temp 2-component vector of double)
|
||||
0:226 mix (global 2-component vector of double)
|
||||
0:226 'dvec2v' (temp 2-component vector of double)
|
||||
0:226 'dvec2v' (temp 2-component vector of double)
|
||||
0:226 'bvec2v' (temp 2-component vector of bool)
|
||||
0:227 add second child into first child (temp 3-component vector of double)
|
||||
0:227 'dvec3v' (temp 3-component vector of double)
|
||||
0:227 mix (global 3-component vector of double)
|
||||
0:227 'dvec3v' (temp 3-component vector of double)
|
||||
0:227 'dvec3v' (temp 3-component vector of double)
|
||||
0:227 'bvec3v' (temp 3-component vector of bool)
|
||||
0:228 add second child into first child (temp 4-component vector of double)
|
||||
0:228 'dvec4v' (temp 4-component vector of double)
|
||||
0:228 mix (global 4-component vector of double)
|
||||
0:228 'dvec4v' (temp 4-component vector of double)
|
||||
0:228 'dvec4v' (temp 4-component vector of double)
|
||||
0:228 'bvec4v' (temp 4-component vector of bool)
|
||||
0:230 add second child into first child (temp double)
|
||||
0:230 'doublev' (temp double)
|
||||
0:230 step (global double)
|
||||
0:230 'doublev' (temp double)
|
||||
0:230 'doublev' (temp double)
|
||||
0:231 add second child into first child (temp 2-component vector of double)
|
||||
0:231 'dvec2v' (temp 2-component vector of double)
|
||||
0:231 step (global 2-component vector of double)
|
||||
0:231 'dvec2v' (temp 2-component vector of double)
|
||||
0:231 'dvec2v' (temp 2-component vector of double)
|
||||
0:232 add second child into first child (temp 3-component vector of double)
|
||||
0:232 'dvec3v' (temp 3-component vector of double)
|
||||
0:232 step (global 3-component vector of double)
|
||||
0:232 'dvec3v' (temp 3-component vector of double)
|
||||
0:232 'dvec3v' (temp 3-component vector of double)
|
||||
0:233 add second child into first child (temp 4-component vector of double)
|
||||
0:233 'dvec4v' (temp 4-component vector of double)
|
||||
0:233 step (global 4-component vector of double)
|
||||
0:233 'dvec4v' (temp 4-component vector of double)
|
||||
0:233 'dvec4v' (temp 4-component vector of double)
|
||||
0:234 add second child into first child (temp 2-component vector of double)
|
||||
0:234 'dvec2v' (temp 2-component vector of double)
|
||||
0:234 step (global 2-component vector of double)
|
||||
0:234 'doublev' (temp double)
|
||||
0:234 'dvec2v' (temp 2-component vector of double)
|
||||
0:235 add second child into first child (temp 3-component vector of double)
|
||||
0:235 'dvec3v' (temp 3-component vector of double)
|
||||
0:235 step (global 3-component vector of double)
|
||||
0:235 'doublev' (temp double)
|
||||
0:235 'dvec3v' (temp 3-component vector of double)
|
||||
0:236 add second child into first child (temp 4-component vector of double)
|
||||
0:236 'dvec4v' (temp 4-component vector of double)
|
||||
0:236 step (global 4-component vector of double)
|
||||
0:236 'doublev' (temp double)
|
||||
0:236 'dvec4v' (temp 4-component vector of double)
|
||||
0:238 add second child into first child (temp double)
|
||||
0:238 'doublev' (temp double)
|
||||
0:238 smoothstep (global double)
|
||||
0:238 'doublev' (temp double)
|
||||
0:238 'doublev' (temp double)
|
||||
0:238 'doublev' (temp double)
|
||||
0:239 add second child into first child (temp 2-component vector of double)
|
||||
0:239 'dvec2v' (temp 2-component vector of double)
|
||||
0:239 smoothstep (global 2-component vector of double)
|
||||
0:239 'dvec2v' (temp 2-component vector of double)
|
||||
0:239 'dvec2v' (temp 2-component vector of double)
|
||||
0:239 'dvec2v' (temp 2-component vector of double)
|
||||
0:240 add second child into first child (temp 3-component vector of double)
|
||||
0:240 'dvec3v' (temp 3-component vector of double)
|
||||
0:240 smoothstep (global 3-component vector of double)
|
||||
0:240 'dvec3v' (temp 3-component vector of double)
|
||||
0:240 'dvec3v' (temp 3-component vector of double)
|
||||
0:240 'dvec3v' (temp 3-component vector of double)
|
||||
0:241 add second child into first child (temp 4-component vector of double)
|
||||
0:241 'dvec4v' (temp 4-component vector of double)
|
||||
0:241 smoothstep (global 4-component vector of double)
|
||||
0:241 'dvec4v' (temp 4-component vector of double)
|
||||
0:241 'dvec4v' (temp 4-component vector of double)
|
||||
0:241 'dvec4v' (temp 4-component vector of double)
|
||||
0:242 add second child into first child (temp 2-component vector of double)
|
||||
0:242 'dvec2v' (temp 2-component vector of double)
|
||||
0:242 smoothstep (global 2-component vector of double)
|
||||
0:242 'doublev' (temp double)
|
||||
0:242 'doublev' (temp double)
|
||||
0:242 'dvec2v' (temp 2-component vector of double)
|
||||
0:243 add second child into first child (temp 3-component vector of double)
|
||||
0:243 'dvec3v' (temp 3-component vector of double)
|
||||
0:243 smoothstep (global 3-component vector of double)
|
||||
0:243 'doublev' (temp double)
|
||||
0:243 'doublev' (temp double)
|
||||
0:243 'dvec3v' (temp 3-component vector of double)
|
||||
0:244 add second child into first child (temp 4-component vector of double)
|
||||
0:244 'dvec4v' (temp 4-component vector of double)
|
||||
0:244 smoothstep (global 4-component vector of double)
|
||||
0:244 'doublev' (temp double)
|
||||
0:244 'doublev' (temp double)
|
||||
0:244 'dvec4v' (temp 4-component vector of double)
|
||||
0:246 move second child to first child (temp bool)
|
||||
0:246 'boolv' (temp bool)
|
||||
0:246 isnan (global bool)
|
||||
0:246 'doublev' (temp double)
|
||||
0:247 move second child to first child (temp 2-component vector of bool)
|
||||
0:247 'bvec2v' (temp 2-component vector of bool)
|
||||
0:247 isnan (global 2-component vector of bool)
|
||||
0:247 'dvec2v' (temp 2-component vector of double)
|
||||
0:248 move second child to first child (temp 3-component vector of bool)
|
||||
0:248 'bvec3v' (temp 3-component vector of bool)
|
||||
0:248 isnan (global 3-component vector of bool)
|
||||
0:248 'dvec3v' (temp 3-component vector of double)
|
||||
0:249 move second child to first child (temp 4-component vector of bool)
|
||||
0:249 'bvec4v' (temp 4-component vector of bool)
|
||||
0:249 isnan (global 4-component vector of bool)
|
||||
0:249 'dvec4v' (temp 4-component vector of double)
|
||||
0:251 move second child to first child (temp bool)
|
||||
0:251 'boolv' (temp bool)
|
||||
0:251 Test condition and select (temp bool)
|
||||
0:251 Condition
|
||||
0:251 'boolv' (temp bool)
|
||||
0:251 true case
|
||||
0:251 isinf (global bool)
|
||||
0:251 'doublev' (temp double)
|
||||
0:251 false case
|
||||
0:251 Constant:
|
||||
0:251 false (const bool)
|
||||
0:252 move second child to first child (temp 2-component vector of bool)
|
||||
0:252 'bvec2v' (temp 2-component vector of bool)
|
||||
0:252 Test condition and select (temp 2-component vector of bool)
|
||||
0:252 Condition
|
||||
0:252 'boolv' (temp bool)
|
||||
0:252 true case
|
||||
0:252 isinf (global 2-component vector of bool)
|
||||
0:252 'dvec2v' (temp 2-component vector of double)
|
||||
0:252 false case
|
||||
0:252 Constant:
|
||||
0:252 false (const bool)
|
||||
0:252 false (const bool)
|
||||
0:253 move second child to first child (temp 3-component vector of bool)
|
||||
0:253 'bvec3v' (temp 3-component vector of bool)
|
||||
0:253 Test condition and select (temp 3-component vector of bool)
|
||||
0:253 Condition
|
||||
0:253 'boolv' (temp bool)
|
||||
0:253 true case
|
||||
0:253 isinf (global 3-component vector of bool)
|
||||
0:253 'dvec3v' (temp 3-component vector of double)
|
||||
0:253 false case
|
||||
0:253 Constant:
|
||||
0:253 false (const bool)
|
||||
0:253 false (const bool)
|
||||
0:253 false (const bool)
|
||||
0:254 move second child to first child (temp 4-component vector of bool)
|
||||
0:254 'bvec4v' (temp 4-component vector of bool)
|
||||
0:254 Test condition and select (temp 4-component vector of bool)
|
||||
0:254 Condition
|
||||
0:254 'boolv' (temp bool)
|
||||
0:254 true case
|
||||
0:254 isinf (global 4-component vector of bool)
|
||||
0:254 'dvec4v' (temp 4-component vector of double)
|
||||
0:254 false case
|
||||
0:254 Constant:
|
||||
0:254 false (const bool)
|
||||
0:254 false (const bool)
|
||||
0:254 false (const bool)
|
||||
0:254 false (const bool)
|
||||
0:256 add second child into first child (temp double)
|
||||
0:256 'doublev' (temp double)
|
||||
0:256 length (global double)
|
||||
0:256 'doublev' (temp double)
|
||||
0:257 add second child into first child (temp double)
|
||||
0:257 'doublev' (temp double)
|
||||
0:257 length (global double)
|
||||
0:257 'dvec2v' (temp 2-component vector of double)
|
||||
0:258 add second child into first child (temp double)
|
||||
0:258 'doublev' (temp double)
|
||||
0:258 length (global double)
|
||||
0:258 'dvec3v' (temp 3-component vector of double)
|
||||
0:259 add second child into first child (temp double)
|
||||
0:259 'doublev' (temp double)
|
||||
0:259 length (global double)
|
||||
0:259 'dvec4v' (temp 4-component vector of double)
|
||||
0:261 add second child into first child (temp double)
|
||||
0:261 'doublev' (temp double)
|
||||
0:261 distance (global double)
|
||||
0:261 'doublev' (temp double)
|
||||
0:261 'doublev' (temp double)
|
||||
0:262 add second child into first child (temp double)
|
||||
0:262 'doublev' (temp double)
|
||||
0:262 distance (global double)
|
||||
0:262 'dvec2v' (temp 2-component vector of double)
|
||||
0:262 'dvec2v' (temp 2-component vector of double)
|
||||
0:263 add second child into first child (temp double)
|
||||
0:263 'doublev' (temp double)
|
||||
0:263 distance (global double)
|
||||
0:263 'dvec3v' (temp 3-component vector of double)
|
||||
0:263 'dvec3v' (temp 3-component vector of double)
|
||||
0:264 add second child into first child (temp double)
|
||||
0:264 'doublev' (temp double)
|
||||
0:264 distance (global double)
|
||||
0:264 'dvec4v' (temp 4-component vector of double)
|
||||
0:264 'dvec4v' (temp 4-component vector of double)
|
||||
0:266 add second child into first child (temp double)
|
||||
0:266 'doublev' (temp double)
|
||||
0:266 dot-product (global double)
|
||||
0:266 'doublev' (temp double)
|
||||
0:266 'doublev' (temp double)
|
||||
0:267 add second child into first child (temp double)
|
||||
0:267 'doublev' (temp double)
|
||||
0:267 dot-product (global double)
|
||||
0:267 'dvec2v' (temp 2-component vector of double)
|
||||
0:267 'dvec2v' (temp 2-component vector of double)
|
||||
0:268 add second child into first child (temp double)
|
||||
0:268 'doublev' (temp double)
|
||||
0:268 dot-product (global double)
|
||||
0:268 'dvec3v' (temp 3-component vector of double)
|
||||
0:268 'dvec3v' (temp 3-component vector of double)
|
||||
0:269 add second child into first child (temp double)
|
||||
0:269 'doublev' (temp double)
|
||||
0:269 dot-product (global double)
|
||||
0:269 'dvec4v' (temp 4-component vector of double)
|
||||
0:269 'dvec4v' (temp 4-component vector of double)
|
||||
0:271 add second child into first child (temp 3-component vector of double)
|
||||
0:271 'dvec3v' (temp 3-component vector of double)
|
||||
0:271 cross-product (global 3-component vector of double)
|
||||
0:271 'dvec3v' (temp 3-component vector of double)
|
||||
0:271 'dvec3v' (temp 3-component vector of double)
|
||||
0:273 add second child into first child (temp double)
|
||||
0:273 'doublev' (temp double)
|
||||
0:273 normalize (global double)
|
||||
0:273 'doublev' (temp double)
|
||||
0:274 add second child into first child (temp 2-component vector of double)
|
||||
0:274 'dvec2v' (temp 2-component vector of double)
|
||||
0:274 normalize (global 2-component vector of double)
|
||||
0:274 'dvec2v' (temp 2-component vector of double)
|
||||
0:275 add second child into first child (temp 3-component vector of double)
|
||||
0:275 'dvec3v' (temp 3-component vector of double)
|
||||
0:275 normalize (global 3-component vector of double)
|
||||
0:275 'dvec3v' (temp 3-component vector of double)
|
||||
0:276 add second child into first child (temp 4-component vector of double)
|
||||
0:276 'dvec4v' (temp 4-component vector of double)
|
||||
0:276 normalize (global 4-component vector of double)
|
||||
0:276 'dvec4v' (temp 4-component vector of double)
|
||||
0:278 add second child into first child (temp double)
|
||||
0:278 'doublev' (temp double)
|
||||
0:278 face-forward (global double)
|
||||
0:278 'doublev' (temp double)
|
||||
0:278 'doublev' (temp double)
|
||||
0:278 'doublev' (temp double)
|
||||
0:279 add second child into first child (temp 2-component vector of double)
|
||||
0:279 'dvec2v' (temp 2-component vector of double)
|
||||
0:279 face-forward (global 2-component vector of double)
|
||||
0:279 'dvec2v' (temp 2-component vector of double)
|
||||
0:279 'dvec2v' (temp 2-component vector of double)
|
||||
0:279 'dvec2v' (temp 2-component vector of double)
|
||||
0:280 add second child into first child (temp 3-component vector of double)
|
||||
0:280 'dvec3v' (temp 3-component vector of double)
|
||||
0:280 face-forward (global 3-component vector of double)
|
||||
0:280 'dvec3v' (temp 3-component vector of double)
|
||||
0:280 'dvec3v' (temp 3-component vector of double)
|
||||
0:280 'dvec3v' (temp 3-component vector of double)
|
||||
0:281 add second child into first child (temp 4-component vector of double)
|
||||
0:281 'dvec4v' (temp 4-component vector of double)
|
||||
0:281 face-forward (global 4-component vector of double)
|
||||
0:281 'dvec4v' (temp 4-component vector of double)
|
||||
0:281 'dvec4v' (temp 4-component vector of double)
|
||||
0:281 'dvec4v' (temp 4-component vector of double)
|
||||
0:283 add second child into first child (temp double)
|
||||
0:283 'doublev' (temp double)
|
||||
0:283 reflect (global double)
|
||||
0:283 'doublev' (temp double)
|
||||
0:283 'doublev' (temp double)
|
||||
0:284 add second child into first child (temp 2-component vector of double)
|
||||
0:284 'dvec2v' (temp 2-component vector of double)
|
||||
0:284 reflect (global 2-component vector of double)
|
||||
0:284 'dvec2v' (temp 2-component vector of double)
|
||||
0:284 'dvec2v' (temp 2-component vector of double)
|
||||
0:285 add second child into first child (temp 3-component vector of double)
|
||||
0:285 'dvec3v' (temp 3-component vector of double)
|
||||
0:285 reflect (global 3-component vector of double)
|
||||
0:285 'dvec3v' (temp 3-component vector of double)
|
||||
0:285 'dvec3v' (temp 3-component vector of double)
|
||||
0:286 add second child into first child (temp 4-component vector of double)
|
||||
0:286 'dvec4v' (temp 4-component vector of double)
|
||||
0:286 reflect (global 4-component vector of double)
|
||||
0:286 'dvec4v' (temp 4-component vector of double)
|
||||
0:286 'dvec4v' (temp 4-component vector of double)
|
||||
0:288 add second child into first child (temp double)
|
||||
0:288 'doublev' (temp double)
|
||||
0:288 refract (global double)
|
||||
0:288 'doublev' (temp double)
|
||||
0:288 'doublev' (temp double)
|
||||
0:288 'doublev' (temp double)
|
||||
0:289 add second child into first child (temp 2-component vector of double)
|
||||
0:289 'dvec2v' (temp 2-component vector of double)
|
||||
0:289 refract (global 2-component vector of double)
|
||||
0:289 'dvec2v' (temp 2-component vector of double)
|
||||
0:289 'dvec2v' (temp 2-component vector of double)
|
||||
0:289 'doublev' (temp double)
|
||||
0:290 add second child into first child (temp 3-component vector of double)
|
||||
0:290 'dvec3v' (temp 3-component vector of double)
|
||||
0:290 refract (global 3-component vector of double)
|
||||
0:290 'dvec3v' (temp 3-component vector of double)
|
||||
0:290 'dvec3v' (temp 3-component vector of double)
|
||||
0:290 'doublev' (temp double)
|
||||
0:291 add second child into first child (temp 4-component vector of double)
|
||||
0:291 'dvec4v' (temp 4-component vector of double)
|
||||
0:291 refract (global 4-component vector of double)
|
||||
0:291 'dvec4v' (temp 4-component vector of double)
|
||||
0:291 'dvec4v' (temp 4-component vector of double)
|
||||
0:291 'doublev' (temp double)
|
||||
0:293 Sequence
|
||||
0:293 move second child to first child (temp 2X2 matrix of double)
|
||||
0:293 'dmat2v' (temp 2X2 matrix of double)
|
||||
0:293 outer product (global 2X2 matrix of double)
|
||||
0:293 'dvec2v' (temp 2-component vector of double)
|
||||
0:293 'dvec2v' (temp 2-component vector of double)
|
||||
0:294 Sequence
|
||||
0:294 move second child to first child (temp 3X3 matrix of double)
|
||||
0:294 'dmat3v' (temp 3X3 matrix of double)
|
||||
0:294 outer product (global 3X3 matrix of double)
|
||||
0:294 'dvec3v' (temp 3-component vector of double)
|
||||
0:294 'dvec3v' (temp 3-component vector of double)
|
||||
0:295 Sequence
|
||||
0:295 move second child to first child (temp 4X4 matrix of double)
|
||||
0:295 'dmat4v' (temp 4X4 matrix of double)
|
||||
0:295 outer product (global 4X4 matrix of double)
|
||||
0:295 'dvec4v' (temp 4-component vector of double)
|
||||
0:295 'dvec4v' (temp 4-component vector of double)
|
||||
0:296 Sequence
|
||||
0:296 move second child to first child (temp 2X3 matrix of double)
|
||||
0:296 'dmat2x3v' (temp 2X3 matrix of double)
|
||||
0:296 outer product (global 2X3 matrix of double)
|
||||
0:296 'dvec3v' (temp 3-component vector of double)
|
||||
0:296 'dvec2v' (temp 2-component vector of double)
|
||||
0:297 Sequence
|
||||
0:297 move second child to first child (temp 3X2 matrix of double)
|
||||
0:297 'dmat3x2v' (temp 3X2 matrix of double)
|
||||
0:297 outer product (global 3X2 matrix of double)
|
||||
0:297 'dvec2v' (temp 2-component vector of double)
|
||||
0:297 'dvec3v' (temp 3-component vector of double)
|
||||
0:298 Sequence
|
||||
0:298 move second child to first child (temp 2X4 matrix of double)
|
||||
0:298 'dmat2x4v' (temp 2X4 matrix of double)
|
||||
0:298 outer product (global 2X4 matrix of double)
|
||||
0:298 'dvec4v' (temp 4-component vector of double)
|
||||
0:298 'dvec2v' (temp 2-component vector of double)
|
||||
0:299 Sequence
|
||||
0:299 move second child to first child (temp 4X2 matrix of double)
|
||||
0:299 'dmat4x2v' (temp 4X2 matrix of double)
|
||||
0:299 outer product (global 4X2 matrix of double)
|
||||
0:299 'dvec2v' (temp 2-component vector of double)
|
||||
0:299 'dvec4v' (temp 4-component vector of double)
|
||||
0:300 Sequence
|
||||
0:300 move second child to first child (temp 3X4 matrix of double)
|
||||
0:300 'dmat3x4v' (temp 3X4 matrix of double)
|
||||
0:300 outer product (global 3X4 matrix of double)
|
||||
0:300 'dvec4v' (temp 4-component vector of double)
|
||||
0:300 'dvec3v' (temp 3-component vector of double)
|
||||
0:301 Sequence
|
||||
0:301 move second child to first child (temp 4X3 matrix of double)
|
||||
0:301 'dmat4x3v' (temp 4X3 matrix of double)
|
||||
0:301 outer product (global 4X3 matrix of double)
|
||||
0:301 'dvec3v' (temp 3-component vector of double)
|
||||
0:301 'dvec4v' (temp 4-component vector of double)
|
||||
0:303 matrix mult second child into first child (temp 2X2 matrix of double)
|
||||
0:303 'dmat2v' (temp 2X2 matrix of double)
|
||||
0:303 component-wise multiply (global 2X2 matrix of double)
|
||||
0:303 'dmat2v' (temp 2X2 matrix of double)
|
||||
0:303 'dmat2v' (temp 2X2 matrix of double)
|
||||
0:304 matrix mult second child into first child (temp 3X3 matrix of double)
|
||||
0:304 'dmat3v' (temp 3X3 matrix of double)
|
||||
0:304 component-wise multiply (global 3X3 matrix of double)
|
||||
0:304 'dmat3v' (temp 3X3 matrix of double)
|
||||
0:304 'dmat3v' (temp 3X3 matrix of double)
|
||||
0:305 matrix mult second child into first child (temp 4X4 matrix of double)
|
||||
0:305 'dmat4v' (temp 4X4 matrix of double)
|
||||
0:305 component-wise multiply (global 4X4 matrix of double)
|
||||
0:305 'dmat4v' (temp 4X4 matrix of double)
|
||||
0:305 'dmat4v' (temp 4X4 matrix of double)
|
||||
0:306 move second child to first child (temp 2X3 matrix of double)
|
||||
0:306 'dmat2x3v' (temp 2X3 matrix of double)
|
||||
0:306 component-wise multiply (global 2X3 matrix of double)
|
||||
0:306 'dmat2x3v' (temp 2X3 matrix of double)
|
||||
0:306 'dmat2x3v' (temp 2X3 matrix of double)
|
||||
0:307 move second child to first child (temp 2X4 matrix of double)
|
||||
0:307 'dmat2x4v' (temp 2X4 matrix of double)
|
||||
0:307 component-wise multiply (global 2X4 matrix of double)
|
||||
0:307 'dmat2x4v' (temp 2X4 matrix of double)
|
||||
0:307 'dmat2x4v' (temp 2X4 matrix of double)
|
||||
0:308 move second child to first child (temp 3X2 matrix of double)
|
||||
0:308 'dmat3x2v' (temp 3X2 matrix of double)
|
||||
0:308 component-wise multiply (global 3X2 matrix of double)
|
||||
0:308 'dmat3x2v' (temp 3X2 matrix of double)
|
||||
0:308 'dmat3x2v' (temp 3X2 matrix of double)
|
||||
0:309 move second child to first child (temp 3X4 matrix of double)
|
||||
0:309 'dmat3x4v' (temp 3X4 matrix of double)
|
||||
0:309 component-wise multiply (global 3X4 matrix of double)
|
||||
0:309 'dmat3x4v' (temp 3X4 matrix of double)
|
||||
0:309 'dmat3x4v' (temp 3X4 matrix of double)
|
||||
0:310 move second child to first child (temp 4X2 matrix of double)
|
||||
0:310 'dmat4x2v' (temp 4X2 matrix of double)
|
||||
0:310 component-wise multiply (global 4X2 matrix of double)
|
||||
0:310 'dmat4x2v' (temp 4X2 matrix of double)
|
||||
0:310 'dmat4x2v' (temp 4X2 matrix of double)
|
||||
0:311 move second child to first child (temp 4X3 matrix of double)
|
||||
0:311 'dmat4x3v' (temp 4X3 matrix of double)
|
||||
0:311 component-wise multiply (global 4X3 matrix of double)
|
||||
0:311 'dmat4x3v' (temp 4X3 matrix of double)
|
||||
0:311 'dmat4x3v' (temp 4X3 matrix of double)
|
||||
0:313 matrix mult second child into first child (temp 2X2 matrix of double)
|
||||
0:313 'dmat2v' (temp 2X2 matrix of double)
|
||||
0:313 transpose (global 2X2 matrix of double)
|
||||
0:313 'dmat2v' (temp 2X2 matrix of double)
|
||||
0:314 matrix mult second child into first child (temp 3X3 matrix of double)
|
||||
0:314 'dmat3v' (temp 3X3 matrix of double)
|
||||
0:314 transpose (global 3X3 matrix of double)
|
||||
0:314 'dmat3v' (temp 3X3 matrix of double)
|
||||
0:315 matrix mult second child into first child (temp 4X4 matrix of double)
|
||||
0:315 'dmat4v' (temp 4X4 matrix of double)
|
||||
0:315 transpose (global 4X4 matrix of double)
|
||||
0:315 'dmat4v' (temp 4X4 matrix of double)
|
||||
0:316 move second child to first child (temp 2X3 matrix of double)
|
||||
0:316 'dmat2x3v' (temp 2X3 matrix of double)
|
||||
0:316 transpose (global 2X3 matrix of double)
|
||||
0:316 'dmat3x2v' (temp 3X2 matrix of double)
|
||||
0:317 move second child to first child (temp 3X2 matrix of double)
|
||||
0:317 'dmat3x2v' (temp 3X2 matrix of double)
|
||||
0:317 transpose (global 3X2 matrix of double)
|
||||
0:317 'dmat2x3v' (temp 2X3 matrix of double)
|
||||
0:318 move second child to first child (temp 2X4 matrix of double)
|
||||
0:318 'dmat2x4v' (temp 2X4 matrix of double)
|
||||
0:318 transpose (global 2X4 matrix of double)
|
||||
0:318 'dmat4x2v' (temp 4X2 matrix of double)
|
||||
0:319 move second child to first child (temp 4X2 matrix of double)
|
||||
0:319 'dmat4x2v' (temp 4X2 matrix of double)
|
||||
0:319 transpose (global 4X2 matrix of double)
|
||||
0:319 'dmat2x4v' (temp 2X4 matrix of double)
|
||||
0:320 move second child to first child (temp 3X4 matrix of double)
|
||||
0:320 'dmat3x4v' (temp 3X4 matrix of double)
|
||||
0:320 transpose (global 3X4 matrix of double)
|
||||
0:320 'dmat4x3v' (temp 4X3 matrix of double)
|
||||
0:321 move second child to first child (temp 4X3 matrix of double)
|
||||
0:321 'dmat4x3v' (temp 4X3 matrix of double)
|
||||
0:321 transpose (global 4X3 matrix of double)
|
||||
0:321 'dmat3x4v' (temp 3X4 matrix of double)
|
||||
0:323 add second child into first child (temp double)
|
||||
0:323 'doublev' (temp double)
|
||||
0:323 determinant (global double)
|
||||
0:323 'dmat2v' (temp 2X2 matrix of double)
|
||||
0:324 add second child into first child (temp double)
|
||||
0:324 'doublev' (temp double)
|
||||
0:324 determinant (global double)
|
||||
0:324 'dmat3v' (temp 3X3 matrix of double)
|
||||
0:325 add second child into first child (temp double)
|
||||
0:325 'doublev' (temp double)
|
||||
0:325 determinant (global double)
|
||||
0:325 'dmat4v' (temp 4X4 matrix of double)
|
||||
0:327 matrix mult second child into first child (temp 2X2 matrix of double)
|
||||
0:327 'dmat2v' (temp 2X2 matrix of double)
|
||||
0:327 inverse (global 2X2 matrix of double)
|
||||
0:327 'dmat2v' (temp 2X2 matrix of double)
|
||||
0:328 matrix mult second child into first child (temp 3X3 matrix of double)
|
||||
0:328 'dmat3v' (temp 3X3 matrix of double)
|
||||
0:328 inverse (global 3X3 matrix of double)
|
||||
0:328 'dmat3v' (temp 3X3 matrix of double)
|
||||
0:329 matrix mult second child into first child (temp 4X4 matrix of double)
|
||||
0:329 'dmat4v' (temp 4X4 matrix of double)
|
||||
0:329 inverse (global 4X4 matrix of double)
|
||||
0:329 'dmat4v' (temp 4X4 matrix of double)
|
||||
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})
|
||||
|
@ -364,35 +364,6 @@ ERROR: node is still EOpNull!
|
||||
0:56 Barrier (global void)
|
||||
0:59 Branch: Return
|
||||
0:61 Barrier (global void)
|
||||
0:67 Function Definition: foo( (global void)
|
||||
0:67 Function Parameters:
|
||||
0:69 Sequence
|
||||
0:69 gl_PointSize: direct index for structure (out float PointSize)
|
||||
0:69 direct index (temp block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out 2-element array of float ClipDistance gl_ClipDistance})
|
||||
0:69 'gl_out' (out 4-element array of block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out 2-element array of float ClipDistance gl_ClipDistance})
|
||||
0:69 Constant:
|
||||
0:69 4 (const int)
|
||||
0:69 Constant:
|
||||
0:69 1 (const int)
|
||||
0:71 Barrier (global void)
|
||||
0:91 Function Definition: foop( (global void)
|
||||
0:91 Function Parameters:
|
||||
0:? Sequence
|
||||
0:95 multiply second child into first child (temp 3-component vector of float)
|
||||
0:95 'pv3' (noContraction temp 3-component vector of float)
|
||||
0:95 'pv3' (noContraction temp 3-component vector of float)
|
||||
0:96 move second child to first child (temp 3-component vector of float)
|
||||
0:96 'pv3' (noContraction temp 3-component vector of float)
|
||||
0:96 fma (global 3-component vector of float)
|
||||
0:96 'pv3' (noContraction temp 3-component vector of float)
|
||||
0:96 'pv3' (noContraction temp 3-component vector of float)
|
||||
0:96 'pv3' (noContraction temp 3-component vector of float)
|
||||
0:97 move second child to first child (temp double)
|
||||
0:97 'd' (noContraction temp double)
|
||||
0:97 fma (global double)
|
||||
0:97 'd' (noContraction temp double)
|
||||
0:97 'd' (noContraction temp double)
|
||||
0:97 'd' (noContraction temp double)
|
||||
0:? Linker Objects
|
||||
0:? 'gl_out' (out 4-element array of block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out 2-element array of float ClipDistance gl_ClipDistance})
|
||||
0:? 'outa' (global 4-element array of int)
|
||||
|
@ -340,11 +340,6 @@ ERROR: node is still EOpNull!
|
||||
0:20 '' (in uint)
|
||||
0:20 '' (in float)
|
||||
0:20 '' (in double)
|
||||
0:21 Function Definition: ftd(f1;d1;d1; (global void)
|
||||
0:21 Function Parameters:
|
||||
0:21 '' (in float)
|
||||
0:21 '' (in double)
|
||||
0:21 '' (in double)
|
||||
0:23 Function Definition: main( (global void)
|
||||
0:23 Function Parameters:
|
||||
0:? Sequence
|
||||
@ -552,19 +547,6 @@ ERROR: node is still EOpNull!
|
||||
0:91 'f' (temp float)
|
||||
0:91 Convert float to double (temp double)
|
||||
0:91 'f' (temp float)
|
||||
0:97 Function Definition: tf( (global void)
|
||||
0:97 Function Parameters:
|
||||
0:? Sequence
|
||||
0:104 Function Call: itf(i1;f1;i1; (global void)
|
||||
0:104 'i' (temp int)
|
||||
0:104 Convert int to float (temp float)
|
||||
0:104 'i' (temp int)
|
||||
0:104 'i' (temp int)
|
||||
0:105 Function Call: itf(i1;f1;i1; (global void)
|
||||
0:105 'i' (temp int)
|
||||
0:105 Convert uint to float (temp float)
|
||||
0:105 'u' (temp uint)
|
||||
0:105 'i' (temp int)
|
||||
0:? Linker Objects
|
||||
0:? 'd' (in double)
|
||||
0:? 'd3' (in 3-component vector of double)
|
||||
|
@ -77,35 +77,6 @@ ERROR: node is still EOpNull!
|
||||
0:5 'gl_ViewportIndex' (layout(stream=0 ) out int ViewportIndex)
|
||||
0:5 Constant:
|
||||
0:5 7 (const int)
|
||||
0:28 Function Definition: foo( (global void)
|
||||
0:28 Function Parameters:
|
||||
0:30 Sequence
|
||||
0:30 Sequence
|
||||
0:30 move second child to first child (temp float)
|
||||
0:30 'p' (temp float)
|
||||
0:30 gl_PointSize: direct index for structure (in float PointSize)
|
||||
0:30 direct index (temp block{in float PointSize gl_PointSize})
|
||||
0:30 'gl_in' (in 2-element array of block{in float PointSize gl_PointSize})
|
||||
0:30 Constant:
|
||||
0:30 1 (const int)
|
||||
0:30 Constant:
|
||||
0:30 0 (const int)
|
||||
0:31 move second child to first child (temp float)
|
||||
0:31 gl_PointSize: direct index for structure (layout(stream=0 ) gl_PointSize float PointSize)
|
||||
0:31 'anon@0' (layout(stream=0 ) out block{layout(stream=0 ) gl_PointSize float PointSize gl_PointSize, })
|
||||
0:31 Constant:
|
||||
0:31 1 (const uint)
|
||||
0:31 'p' (temp float)
|
||||
0:33 gl_Position: direct index for structure (layout(stream=0 ) gl_Position void Position)
|
||||
0:33 'anon@0' (layout(stream=0 ) out block{layout(stream=0 ) gl_PointSize float PointSize gl_PointSize, })
|
||||
0:33 Constant:
|
||||
0:33 0 (const uint)
|
||||
0:36 Function Definition: foo5( (global float)
|
||||
0:36 Function Parameters:
|
||||
0:38 Sequence
|
||||
0:38 Branch: Return with expression
|
||||
0:38 Constant:
|
||||
0:38 4.000000
|
||||
0:? Linker Objects
|
||||
0:? 'gl_in' (in 2-element array of block{in float PointSize gl_PointSize})
|
||||
0:? 'anon@0' (layout(stream=0 ) out block{layout(stream=0 ) gl_PointSize float PointSize gl_PointSize, })
|
||||
|
@ -19,7 +19,6 @@ ERROR: node is still EOpNull!
|
||||
0:8 0.300000
|
||||
0:? Linker Objects
|
||||
0:? 'gl_FragDepth' (gl_FragDepth float FragDepth)
|
||||
0:? 'gl_FragDepth' (gl_FragDepth float FragDepth)
|
||||
0:? 'depth' (smooth in float)
|
||||
0:? 'a' (layout(binding=0 offset=0 ) uniform implicitly-sized array of atomic_uint)
|
||||
|
||||
@ -39,7 +38,6 @@ ERROR: node is still EOpNull!
|
||||
0:8 0.300000
|
||||
0:? Linker Objects
|
||||
0:? 'gl_FragDepth' (gl_FragDepth float FragDepth)
|
||||
0:? 'gl_FragDepth' (gl_FragDepth float FragDepth)
|
||||
0:? 'depth' (smooth in float)
|
||||
0:? 'a' (layout(binding=0 offset=0 ) uniform 1-element array of atomic_uint)
|
||||
|
||||
|
@ -142,111 +142,6 @@ max_vertices = -1
|
||||
input primitive = triangles
|
||||
output primitive = none
|
||||
ERROR: node is still EOpNull!
|
||||
0:7 Function Definition: foo( (global void)
|
||||
0:7 Function Parameters:
|
||||
0:9 Sequence
|
||||
0:9 Constant:
|
||||
0:9 1 (const int)
|
||||
0:10 gl_Position: direct index for structure (in 4-component vector of float Position)
|
||||
0:10 direct index (temp block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize, in 1-element array of float ClipDistance gl_ClipDistance})
|
||||
0:10 'gl_in' (in 3-element array of block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize, in 1-element array of float ClipDistance gl_ClipDistance})
|
||||
0:10 Constant:
|
||||
0:10 1 (const int)
|
||||
0:10 Constant:
|
||||
0:10 0 (const int)
|
||||
0:11 gl_Position: direct index for structure (in 4-component vector of float Position)
|
||||
0:11 indirect index (temp block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize, in 1-element array of float ClipDistance gl_ClipDistance})
|
||||
0:11 'gl_in' (in 3-element array of block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize, in 1-element array of float ClipDistance gl_ClipDistance})
|
||||
0:11 'i' (global int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:18 Function Definition: foo3( (global void)
|
||||
0:18 Function Parameters:
|
||||
0:20 Sequence
|
||||
0:20 Constant:
|
||||
0:20 3 (const int)
|
||||
0:21 gl_Position: direct index for structure (in 4-component vector of float Position)
|
||||
0:21 indirect index (temp block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize, in 1-element array of float ClipDistance gl_ClipDistance})
|
||||
0:21 'gl_in' (in 3-element array of block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize, in 1-element array of float ClipDistance gl_ClipDistance})
|
||||
0:21 'i' (global int)
|
||||
0:21 Constant:
|
||||
0:21 0 (const int)
|
||||
0:22 Constant:
|
||||
0:22 3 (const int)
|
||||
0:29 Function Definition: foo4( (global void)
|
||||
0:29 Function Parameters:
|
||||
0:? Sequence
|
||||
0:40 Sequence
|
||||
0:40 move second child to first child (temp 4-component vector of float)
|
||||
0:40 'v' (temp 4-component vector of float)
|
||||
0:40 textureGatherOffset (global 4-component vector of float)
|
||||
0:40 's2D' (uniform sampler2D)
|
||||
0:40 direct index (temp 2-component vector of float)
|
||||
0:40 'coord' (in 3-element array of 2-component vector of float)
|
||||
0:40 Constant:
|
||||
0:40 0 (const int)
|
||||
0:40 vector swizzle (temp 2-component vector of int)
|
||||
0:40 indirect index (temp 2-component vector of int)
|
||||
0:40 Constant:
|
||||
0:40 0 (const int)
|
||||
0:40 1 (const int)
|
||||
0:40 1 (const int)
|
||||
0:40 -2 (const int)
|
||||
0:40 0 (const int)
|
||||
0:40 3 (const int)
|
||||
0:40 -3 (const int)
|
||||
0:40 0 (const int)
|
||||
0:40 2 (const int)
|
||||
0:40 1 (const int)
|
||||
0:40 'i' (global int)
|
||||
0:40 Sequence
|
||||
0:40 Constant:
|
||||
0:40 0 (const int)
|
||||
0:40 Constant:
|
||||
0:40 1 (const int)
|
||||
0:42 move second child to first child (temp 2-component vector of int)
|
||||
0:42 vector swizzle (temp 2-component vector of int)
|
||||
0:42 indirect index (temp 2-component vector of int)
|
||||
0:42 Constant:
|
||||
0:42 0 (const int)
|
||||
0:42 1 (const int)
|
||||
0:42 1 (const int)
|
||||
0:42 -2 (const int)
|
||||
0:42 0 (const int)
|
||||
0:42 3 (const int)
|
||||
0:42 -3 (const int)
|
||||
0:42 0 (const int)
|
||||
0:42 2 (const int)
|
||||
0:42 1 (const int)
|
||||
0:42 'i' (global int)
|
||||
0:42 Sequence
|
||||
0:42 Constant:
|
||||
0:42 0 (const int)
|
||||
0:42 Constant:
|
||||
0:42 1 (const int)
|
||||
0:42 Constant:
|
||||
0:42 3 (const int)
|
||||
0:42 3 (const int)
|
||||
0:43 move second child to first child (temp float)
|
||||
0:43 direct index (temp float)
|
||||
0:43 'v4' (uniform 4-component vector of float)
|
||||
0:43 Constant:
|
||||
0:43 0 (const int)
|
||||
0:43 Constant:
|
||||
0:43 3.200000
|
||||
0:44 vector swizzle (temp 2-component vector of float)
|
||||
0:44 'v4' (uniform 4-component vector of float)
|
||||
0:44 Sequence
|
||||
0:44 Constant:
|
||||
0:44 0 (const int)
|
||||
0:44 Constant:
|
||||
0:44 1 (const int)
|
||||
0:52 Function Definition: foo5( (global float)
|
||||
0:52 Function Parameters:
|
||||
0:54 Sequence
|
||||
0:54 Branch: Return with expression
|
||||
0:54 Convert int to float (temp float)
|
||||
0:54 'i' (global int)
|
||||
0:? Linker Objects
|
||||
0:? 'i' (global int)
|
||||
0:? 'gl_in' (in 3-element array of block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize, in 1-element array of float ClipDistance gl_ClipDistance})
|
||||
|
@ -184,41 +184,6 @@ ERROR: node is still EOpNull!
|
||||
0:26 indirect index (temp block{out 4-component vector of float Position gl_Position})
|
||||
0:26 'gl_out' (out 3-element array of block{out 4-component vector of float Position gl_Position})
|
||||
0:26 'gl_InvocationID' (in int InvocationID)
|
||||
0:34 Function Definition: foo( (global void)
|
||||
0:34 Function Parameters:
|
||||
0:36 Sequence
|
||||
0:36 Test condition and select (temp void)
|
||||
0:36 Condition
|
||||
0:36 logical-or (temp bool)
|
||||
0:36 Compare Not Equal (temp bool)
|
||||
0:36 Constant:
|
||||
0:36 -0.625000
|
||||
0:36 -0.500000
|
||||
0:36 -0.375000
|
||||
0:36 -0.250000
|
||||
0:36 -0.375000
|
||||
0:36 -0.250000
|
||||
0:36 -0.125000
|
||||
0:36 0.000000
|
||||
0:36 direct index (layout(location=0 ) temp 2X4 matrix of double)
|
||||
0:36 'vs_tcs_first' (layout(location=0 ) in 32-element array of 2X4 matrix of double)
|
||||
0:36 Constant:
|
||||
0:36 0 (const int)
|
||||
0:37 Compare Not Equal (temp bool)
|
||||
0:37 Constant:
|
||||
0:37 0.375000
|
||||
0:37 0.500000
|
||||
0:37 0.625000
|
||||
0:37 0.750000
|
||||
0:37 0.625000
|
||||
0:37 0.750000
|
||||
0:37 0.875000
|
||||
0:37 -0.625000
|
||||
0:37 direct index (layout(location=12 ) temp 2X4 matrix of double)
|
||||
0:37 'vs_tcs_last' (layout(location=12 ) in 32-element array of 2X4 matrix of double)
|
||||
0:37 Constant:
|
||||
0:37 0 (const int)
|
||||
0:36 true case is null
|
||||
0:? Linker Objects
|
||||
0:? 'gl_out' (out 3-element array of block{out 4-component vector of float Position gl_Position})
|
||||
0:? 'a' (out 3-element array of int)
|
||||
|
@ -4,7 +4,7 @@ ERROR: 0:2: '#version' : must occur first in shader
|
||||
WARNING: 0:3: varying deprecated in version 130; may be removed in future release
|
||||
ERROR: 0:3: 'varying' : no longer supported in core profile; removed in version 420
|
||||
ERROR: 0:7: '' : vertex input cannot be further qualified
|
||||
ERROR: 0:11: '' : can only have one interpolation qualifier (flat, smooth, noperspective)
|
||||
ERROR: 0:11: '' : can only have one interpolation qualifier (flat, smooth, noperspective, __explicitInterpAMD)
|
||||
ERROR: 0:12: '' : can only have one auxiliary qualifier (centroid, patch, and sample)
|
||||
ERROR: 0:13: 'uniform' : too many storage qualifiers
|
||||
ERROR: 0:18: '=' : global const initializers must be constant 'const int'
|
||||
@ -310,19 +310,6 @@ Linked vertex stage:
|
||||
|
||||
Shader version: 420
|
||||
ERROR: node is still EOpNull!
|
||||
0:20 Function Definition: foo( (const int)
|
||||
0:20 Function Parameters:
|
||||
0:? Sequence
|
||||
0:23 Sequence
|
||||
0:23 move second child to first child (temp int)
|
||||
0:23 'b' (const (read only) int)
|
||||
0:23 'anonconst' (global int)
|
||||
0:25 Sequence
|
||||
0:25 move second child to first child (temp int)
|
||||
0:25 'd' (const (read only) int)
|
||||
0:25 'b' (const (read only) int)
|
||||
0:29 Branch: Return with expression
|
||||
0:29 'b' (const (read only) int)
|
||||
0:32 Function Definition: main( (global void)
|
||||
0:32 Function Parameters:
|
||||
0:? Sequence
|
||||
@ -342,164 +329,6 @@ ERROR: node is still EOpNull!
|
||||
0:42 Constant:
|
||||
0:42 true (const bool)
|
||||
0:42 No loop body
|
||||
0:50 Function Definition: bar(vf4; (global void)
|
||||
0:50 Function Parameters:
|
||||
0:50 'v' (volatile in 4-component vector of float)
|
||||
0:? Sequence
|
||||
0:53 's' (temp int)
|
||||
0:54 's' (temp int)
|
||||
0:55 Test condition and select (temp void)
|
||||
0:55 Condition
|
||||
0:55 Compare Equal (temp bool)
|
||||
0:55 direct index (temp float)
|
||||
0:55 direct index (temp 4-component vector of float)
|
||||
0:55 'bad' (in 10-element array of 4-component vector of float)
|
||||
0:55 Constant:
|
||||
0:55 0 (const int)
|
||||
0:55 Constant:
|
||||
0:55 0 (const int)
|
||||
0:55 Constant:
|
||||
0:55 4.200000
|
||||
0:55 true case is null
|
||||
0:57 Test condition and select (temp void)
|
||||
0:57 Condition
|
||||
0:57 Constant:
|
||||
0:57 true (const bool)
|
||||
0:57 true case
|
||||
0:58 move second child to first child (temp 4-component vector of float)
|
||||
0:58 'badorder3' (flat out 4-component vector of float)
|
||||
0:58 direct index (temp 4-component vector of float)
|
||||
0:58 'bad' (in 10-element array of 4-component vector of float)
|
||||
0:58 Constant:
|
||||
0:58 0 (const int)
|
||||
0:61 Sequence
|
||||
0:61 move second child to first child (temp 3-component vector of float)
|
||||
0:61 'smeared' (temp 3-component vector of float)
|
||||
0:61 Construct vec3 (temp 3-component vector of float)
|
||||
0:61 'f' (temp float)
|
||||
0:62 'f' (temp float)
|
||||
0:63 'f' (temp float)
|
||||
0:88 Function Definition: bar23444( (global void)
|
||||
0:88 Function Parameters:
|
||||
0:? Sequence
|
||||
0:91 Sequence
|
||||
0:91 move second child to first child (temp float)
|
||||
0:91 'a1' (temp float)
|
||||
0:91 direct index (temp float)
|
||||
0:91 direct index (temp 3-component vector of float)
|
||||
0:91 'm43' (temp 4X3 matrix of float)
|
||||
0:91 Constant:
|
||||
0:91 3 (const int)
|
||||
0:91 Constant:
|
||||
0:91 1 (const int)
|
||||
0:93 Sequence
|
||||
0:93 move second child to first child (temp int)
|
||||
0:93 'a2' (temp int)
|
||||
0:93 Constant:
|
||||
0:93 4 (const int)
|
||||
0:94 add second child into first child (temp int)
|
||||
0:94 'a2' (temp int)
|
||||
0:94 Constant:
|
||||
0:94 3 (const int)
|
||||
0:95 add second child into first child (temp int)
|
||||
0:95 'a2' (temp int)
|
||||
0:95 Constant:
|
||||
0:95 3 (const int)
|
||||
0:96 Sequence
|
||||
0:96 move second child to first child (temp float)
|
||||
0:96 'b' (const (read only) float)
|
||||
0:96 component-wise multiply (temp float)
|
||||
0:96 Constant:
|
||||
0:96 2.000000
|
||||
0:96 'a1' (temp float)
|
||||
0:97 Sequence
|
||||
0:97 move second child to first child (temp int)
|
||||
0:97 'a' (temp int)
|
||||
0:97 Constant:
|
||||
0:97 -1 (const int)
|
||||
0:109 Function Definition: qux( (global void)
|
||||
0:109 Function Parameters:
|
||||
0:111 Sequence
|
||||
0:111 Sequence
|
||||
0:111 move second child to first child (temp int)
|
||||
0:111 'i' (temp int)
|
||||
0:111 aoeu: direct index for structure (layout(column_major shared ) uniform int)
|
||||
0:111 'anon@0' (layout(binding=7 column_major shared ) uniform block{layout(column_major shared ) uniform int aoeu})
|
||||
0:111 Constant:
|
||||
0:111 0 (const uint)
|
||||
0:112 imageAtomicCompSwap (global int)
|
||||
0:112 'iimg2D' (layout(r32i ) uniform iimage2D)
|
||||
0:112 Construct ivec2 (temp 2-component vector of int)
|
||||
0:112 'i' (temp int)
|
||||
0:112 'i' (temp int)
|
||||
0:112 'i' (temp int)
|
||||
0:112 'i' (temp int)
|
||||
0:113 imageAtomicAdd (global uint)
|
||||
0:113 'uimg2D' (layout(r32ui ) uniform uimage2D)
|
||||
0:113 Construct ivec2 (temp 2-component vector of int)
|
||||
0:113 'i' (temp int)
|
||||
0:113 'i' (temp int)
|
||||
0:113 Convert int to uint (temp uint)
|
||||
0:113 'i' (temp int)
|
||||
0:114 imageAtomicMin (global int)
|
||||
0:114 'iimg2Drgba' (layout(rgba32i ) uniform iimage2D)
|
||||
0:114 Construct ivec2 (temp 2-component vector of int)
|
||||
0:114 'i' (temp int)
|
||||
0:114 'i' (temp int)
|
||||
0:114 'i' (temp int)
|
||||
0:115 Constant:
|
||||
0:115 0.000000
|
||||
0:116 Sequence
|
||||
0:116 move second child to first child (temp 4-component vector of int)
|
||||
0:116 'pos' (temp 4-component vector of int)
|
||||
0:116 imageLoad (global 4-component vector of int)
|
||||
0:116 'iimg2D' (layout(r32i ) uniform iimage2D)
|
||||
0:116 Construct ivec2 (temp 2-component vector of int)
|
||||
0:116 'i' (temp int)
|
||||
0:116 'i' (temp int)
|
||||
0:117 Sequence
|
||||
0:117 move second child to first child (temp 4-component vector of float)
|
||||
0:117 'col' (temp 4-component vector of float)
|
||||
0:117 imageLoad (global 4-component vector of float)
|
||||
0:117 'img2DMS' (uniform image2DMS)
|
||||
0:117 Construct ivec2 (temp 2-component vector of int)
|
||||
0:117 'i' (temp int)
|
||||
0:117 'i' (temp int)
|
||||
0:117 'i' (temp int)
|
||||
0:118 imageStore (global void)
|
||||
0:118 'img2DMSWO' (writeonly uniform image2DMS)
|
||||
0:118 Construct ivec2 (temp 2-component vector of int)
|
||||
0:118 'i' (temp int)
|
||||
0:118 'i' (temp int)
|
||||
0:118 'i' (temp int)
|
||||
0:118 Constant:
|
||||
0:118 0.000000
|
||||
0:118 0.000000
|
||||
0:118 0.000000
|
||||
0:118 0.000000
|
||||
0:119 imageLoad (global 4-component vector of float)
|
||||
0:119 'img2DMSWO' (writeonly uniform image2DMS)
|
||||
0:119 Construct ivec2 (temp 2-component vector of int)
|
||||
0:119 'i' (temp int)
|
||||
0:119 'i' (temp int)
|
||||
0:119 'i' (temp int)
|
||||
0:125 Function Definition: passr(iI21; (global void)
|
||||
0:125 Function Parameters:
|
||||
0:125 'image' (coherent readonly in iimage2D)
|
||||
0:132 Function Definition: passrc( (global void)
|
||||
0:132 Function Parameters:
|
||||
0:134 Sequence
|
||||
0:134 Function Call: passr(iI21; (global void)
|
||||
0:134 'qualim1' (layout(r32i ) coherent readonly uniform iimage2D)
|
||||
0:135 Function Call: passr(iI21; (global void)
|
||||
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)
|
||||
|
@ -49,26 +49,6 @@ max_vertices = -1
|
||||
input primitive = triangles
|
||||
output primitive = none
|
||||
ERROR: node is still EOpNull!
|
||||
0:11 Function Definition: foo( (global void)
|
||||
0:11 Function Parameters:
|
||||
0:13 Sequence
|
||||
0:13 Constant:
|
||||
0:13 3 (const int)
|
||||
0:14 gl_Position: direct index for structure (in 4-component vector of float Position)
|
||||
0:14 direct index (temp block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize, in 1-element array of float ClipDistance gl_ClipDistance})
|
||||
0:14 'gl_in' (in 3-element array of block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize, in 1-element array of float ClipDistance gl_ClipDistance})
|
||||
0:14 Constant:
|
||||
0:14 1 (const int)
|
||||
0:14 Constant:
|
||||
0:14 0 (const int)
|
||||
0:15 Constant:
|
||||
0:15 3 (const int)
|
||||
0:16 gl_Position: direct index for structure (in 4-component vector of float Position)
|
||||
0:16 indirect index (temp block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize, in 1-element array of float ClipDistance gl_ClipDistance})
|
||||
0:16 'gl_in' (in 3-element array of block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize, in 1-element array of float ClipDistance gl_ClipDistance})
|
||||
0:16 'i' (global int)
|
||||
0:16 Constant:
|
||||
0:16 0 (const int)
|
||||
0:? Linker Objects
|
||||
0:? 'i' (global int)
|
||||
0:? 'colorun' (in 3-element array of 4-component vector of float)
|
||||
|
@ -184,77 +184,6 @@ ERROR: node is still EOpNull!
|
||||
0:39 10 (const int)
|
||||
0:39 true case
|
||||
0:40 Barrier (global void)
|
||||
0:63 Function Definition: foo( (global void)
|
||||
0:63 Function Parameters:
|
||||
0:65 Sequence
|
||||
0:65 move second child to first child (temp float)
|
||||
0:65 direct index (layout(column_major shared ) temp float)
|
||||
0:65 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of float)
|
||||
0:65 'ro' (layout(column_major shared ) readonly buffer block{layout(column_major shared ) buffer int value, layout(column_major shared ) buffer implicitly-sized array of float values})
|
||||
0:65 Constant:
|
||||
0:65 1 (const int)
|
||||
0:65 Constant:
|
||||
0:65 2 (const int)
|
||||
0:65 Constant:
|
||||
0:65 4.700000
|
||||
0:66 array length (temp int)
|
||||
0:66 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of float)
|
||||
0:66 'ro' (layout(column_major shared ) readonly buffer block{layout(column_major shared ) buffer int value, layout(column_major shared ) buffer implicitly-sized array of float values})
|
||||
0:66 Constant:
|
||||
0:66 1 (const int)
|
||||
0:67 Barrier (global void)
|
||||
0:72 Function Definition: fooaoeu( (global void)
|
||||
0:72 Function Parameters:
|
||||
0:73 Sequence
|
||||
0:73 Sequence
|
||||
0:73 move second child to first child (temp 2-component vector of int)
|
||||
0:73 'storePos' (temp 2-component vector of int)
|
||||
0:73 Convert uint to int (temp 2-component vector of int)
|
||||
0:73 vector swizzle (temp 2-component vector of uint)
|
||||
0:73 'gl_GlobalInvocationID' (in 3-component vector of uint GlobalInvocationID)
|
||||
0:73 Sequence
|
||||
0:73 Constant:
|
||||
0:73 0 (const int)
|
||||
0:73 Constant:
|
||||
0:73 1 (const int)
|
||||
0:74 Sequence
|
||||
0:74 move second child to first child (temp double)
|
||||
0:74 'localCoef' (temp double)
|
||||
0:74 Convert float to double (temp double)
|
||||
0:74 length (global float)
|
||||
0:74 divide (temp 2-component vector of float)
|
||||
0:74 Convert int to float (temp 2-component vector of float)
|
||||
0:74 subtract (temp 2-component vector of int)
|
||||
0:74 Convert uint to int (temp 2-component vector of int)
|
||||
0:74 vector swizzle (temp 2-component vector of uint)
|
||||
0:74 'gl_LocalInvocationID' (in 3-component vector of uint LocalInvocationID)
|
||||
0:74 Sequence
|
||||
0:74 Constant:
|
||||
0:74 0 (const int)
|
||||
0:74 Constant:
|
||||
0:74 1 (const int)
|
||||
0:74 Constant:
|
||||
0:74 8 (const int)
|
||||
0:74 Constant:
|
||||
0:74 8.000000
|
||||
0:75 Sequence
|
||||
0:75 move second child to first child (temp 4-component vector of double)
|
||||
0:75 'aa' (temp 4-component vector of double)
|
||||
0:75 Constant:
|
||||
0:75 0.400000
|
||||
0:75 0.200000
|
||||
0:75 0.300000
|
||||
0:75 0.400000
|
||||
0:76 Sequence
|
||||
0:76 move second child to first child (temp double)
|
||||
0:76 'globalCoef' (temp double)
|
||||
0:76 Constant:
|
||||
0:76 1.000000
|
||||
0:78 Sequence
|
||||
0:78 move second child to first child (temp double)
|
||||
0:78 'di' (temp double)
|
||||
0:78 Convert int to double (temp double)
|
||||
0:78 'i' (temp int)
|
||||
0:? Linker Objects
|
||||
0:? 'gl_WorkGroupSize' (const 3-component vector of uint WorkGroupSize)
|
||||
0:? 2 (const uint)
|
||||
|
@ -275,135 +275,6 @@ Requested GL_ARB_enhanced_layouts
|
||||
Requested GL_ARB_shader_texture_image_samples
|
||||
in xfb mode
|
||||
ERROR: node is still EOpNull!
|
||||
0:14 Function Definition: foo( (global void)
|
||||
0:14 Function Parameters:
|
||||
0:16 Sequence
|
||||
0:16 move second child to first child (temp float)
|
||||
0:16 direct index (temp float ClipDistance)
|
||||
0:16 gl_ClipDistance: direct index for structure (out 17-element array of float ClipDistance)
|
||||
0:16 'anon@0' (out block{out 17-element array of float ClipDistance gl_ClipDistance, })
|
||||
0:16 Constant:
|
||||
0:16 2 (const uint)
|
||||
0:16 Constant:
|
||||
0:16 2 (const int)
|
||||
0:16 Constant:
|
||||
0:16 3.700000
|
||||
0:31 Function Definition: foo3(vf4;vf3;vf2;vf3; (global void)
|
||||
0:31 Function Parameters:
|
||||
0:31 'v4' (in 4-component vector of float)
|
||||
0:31 'v3' (volatile in 3-component vector of float)
|
||||
0:31 'v2' (in 2-component vector of float)
|
||||
0:31 'cv3' (in 3-component vector of float)
|
||||
0:148 Function Definition: fooBarrier( (global void)
|
||||
0:148 Function Parameters:
|
||||
0:150 Sequence
|
||||
0:150 Constant:
|
||||
0:150 0.000000
|
||||
0:151 MemoryBarrier (global void)
|
||||
0:152 MemoryBarrierAtomicCounter (global void)
|
||||
0:153 MemoryBarrierBuffer (global void)
|
||||
0:154 Constant:
|
||||
0:154 0.000000
|
||||
0:155 MemoryBarrierImage (global void)
|
||||
0:156 Constant:
|
||||
0:156 0.000000
|
||||
0:166 Function Definition: fooq( (global void)
|
||||
0:166 Function Parameters:
|
||||
0:168 Sequence
|
||||
0:168 Sequence
|
||||
0:168 move second child to first child (temp int)
|
||||
0:168 's' (temp int)
|
||||
0:168 textureSamples (global int)
|
||||
0:168 's2dms' (uniform sampler2DMS)
|
||||
0:169 add second child into first child (temp int)
|
||||
0:169 's' (temp int)
|
||||
0:169 textureSamples (global int)
|
||||
0:169 'us2dmsa' (uniform usampler2DMSArray)
|
||||
0:170 add second child into first child (temp int)
|
||||
0:170 's' (temp int)
|
||||
0:170 imageQuerySamples (global int)
|
||||
0:170 'ii2dms' (layout(rgba32i ) uniform iimage2DMS)
|
||||
0:171 add second child into first child (temp int)
|
||||
0:171 's' (temp int)
|
||||
0:171 imageQuerySamples (global int)
|
||||
0:171 'i2dmsa' (layout(rgba32f ) uniform image2DMSArray)
|
||||
0:176 Function Definition: fooq2( (global void)
|
||||
0:176 Function Parameters:
|
||||
0:178 Sequence
|
||||
0:178 Sequence
|
||||
0:178 move second child to first child (temp int)
|
||||
0:178 's' (temp int)
|
||||
0:178 textureSamples (global int)
|
||||
0:178 's2dms' (uniform sampler2DMS)
|
||||
0:179 add second child into first child (temp int)
|
||||
0:179 's' (temp int)
|
||||
0:179 textureSamples (global int)
|
||||
0:179 'us2dmsa' (uniform usampler2DMSArray)
|
||||
0:180 add second child into first child (temp int)
|
||||
0:180 's' (temp int)
|
||||
0:180 imageQuerySamples (global int)
|
||||
0:180 'ii2dms' (layout(rgba32i ) uniform iimage2DMS)
|
||||
0:181 add second child into first child (temp int)
|
||||
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)
|
||||
|
@ -2,7 +2,7 @@
|
||||
Warning, version 430 is not yet complete; most version-specific features are present, but some are missing.
|
||||
ERROR: 0:6: '[]' : only outermost dimension of an array of arrays can be implicitly sized
|
||||
ERROR: 0:14: 'constructor' : constructing non-array constituent from array argument
|
||||
ERROR: 0:15: 'constructior' : array constructor argument not correct type to construct array element
|
||||
ERROR: 0:15: 'constructor' : array constructor argument not correct type to construct array element
|
||||
ERROR: 0:28: '[' : array index out of range '4'
|
||||
ERROR: 0:56: 'constructor' : cannot convert parameter 2 from 'const 3-element array of 4-component vector of float' to 'temp 2-element array of 4-component vector of float'
|
||||
ERROR: 0:60: 'constructor' : cannot convert parameter 2 from 'const 2-element array of 4-component vector of float' to 'temp 3-element array of 4-component vector of float'
|
||||
@ -766,34 +766,6 @@ ERROR: node is still EOpNull!
|
||||
0:84 5.000000
|
||||
0:85 Function Call: foo(f1[5][7]; (global 4-element array of 7-element array of float)
|
||||
0:85 'u' (temp 5-element array of 7-element array of float)
|
||||
0:88 Function Definition: foo3( (global void)
|
||||
0:88 Function Parameters:
|
||||
0:? Sequence
|
||||
0:91 Constant:
|
||||
0:91 1 (const int)
|
||||
0:92 move second child to first child (temp float)
|
||||
0:92 direct index (temp float)
|
||||
0:92 direct index (temp 7-element array of float)
|
||||
0:92 direct index (temp 5-element array of 7-element array of float)
|
||||
0:92 'resize1' (temp 3-element array of 5-element array of 7-element array of float)
|
||||
0:92 Constant:
|
||||
0:92 1 (const int)
|
||||
0:92 Constant:
|
||||
0:92 4 (const int)
|
||||
0:92 Constant:
|
||||
0:92 5 (const int)
|
||||
0:92 Constant:
|
||||
0:92 2.000000
|
||||
0:93 Constant:
|
||||
0:93 1 (const int)
|
||||
0:95 Constant:
|
||||
0:95 3 (const int)
|
||||
0:96 Constant:
|
||||
0:96 5 (const int)
|
||||
0:97 Constant:
|
||||
0:97 7 (const int)
|
||||
0:98 Constant:
|
||||
0:98 0.000000
|
||||
0:? Linker Objects
|
||||
0:? 'many' (global 1-element array of 2-element array of 3-element array of 4-element array of 5-element array of 6-element array of float)
|
||||
0:? 'gu' (global 1-element array of 7-element array of float)
|
||||
|
@ -127,6 +127,8 @@ ERROR: node is still EOpNull!
|
||||
|
||||
Linked vertex stage:
|
||||
|
||||
ERROR: Linking vertex stage: No function definition (body) found:
|
||||
g(
|
||||
|
||||
Shader version: 430
|
||||
ERROR: node is still EOpNull!
|
||||
@ -147,20 +149,6 @@ ERROR: node is still EOpNull!
|
||||
0:8 1.000000
|
||||
0:11 Branch: Return with expression
|
||||
0:11 'a' (in int)
|
||||
0:25 Function Definition: cos(f1; (global float)
|
||||
0:25 Function Parameters:
|
||||
0:25 'x' (in float)
|
||||
0:27 Sequence
|
||||
0:27 Branch: Return with expression
|
||||
0:27 Constant:
|
||||
0:27 1.000000
|
||||
0:29 Function Definition: radians(b1; (global bool)
|
||||
0:29 Function Parameters:
|
||||
0:29 'x' (in bool)
|
||||
0:31 Sequence
|
||||
0:31 Branch: Return with expression
|
||||
0:31 Constant:
|
||||
0:31 true (const bool)
|
||||
0:36 Function Definition: main( (global void)
|
||||
0:36 Function Parameters:
|
||||
0:? Sequence
|
||||
|
@ -126,35 +126,6 @@ ERROR: Linking fragment stage: Missing entry point: Each stage requires one entr
|
||||
|
||||
Shader version: 440
|
||||
ERROR: node is still EOpNull!
|
||||
0:144 Function Definition: interp( (global void)
|
||||
0:144 Function Parameters:
|
||||
0:146 Sequence
|
||||
0:146 interpolateAtCentroid (global 2-component vector of float)
|
||||
0:146 vector swizzle (temp 2-component vector of float)
|
||||
0:146 direct index (smooth sample temp 3-component vector of float)
|
||||
0:146 'sampInArray' (smooth sample in 4-element array of 3-component vector of float)
|
||||
0:146 Constant:
|
||||
0:146 2 (const int)
|
||||
0:146 Sequence
|
||||
0:146 Constant:
|
||||
0:146 0 (const int)
|
||||
0:146 Constant:
|
||||
0:146 1 (const int)
|
||||
0:147 interpolateAtSample (global float)
|
||||
0:147 direct index (temp float)
|
||||
0:147 direct index (smooth sample temp 3-component vector of float)
|
||||
0:147 'sampInArray' (smooth sample in 4-element array of 3-component vector of float)
|
||||
0:147 Constant:
|
||||
0:147 2 (const int)
|
||||
0:147 Constant:
|
||||
0:147 0 (const int)
|
||||
0:147 Constant:
|
||||
0:147 2 (const int)
|
||||
0:150 Function Definition: layer( (global int)
|
||||
0:150 Function Parameters:
|
||||
0:152 Sequence
|
||||
0:152 Branch: Return with expression
|
||||
0:152 'gl_Layer' (flat in int Layer)
|
||||
0:? Linker Objects
|
||||
0:? 'a' (layout(location=4 component=2 ) smooth in 2-component vector of float)
|
||||
0:? 'b' (layout(location=4 component=1 ) smooth in float)
|
||||
|
@ -174,37 +174,6 @@ Shader version: 440
|
||||
Requested GL_ARB_shader_draw_parameters
|
||||
in xfb mode
|
||||
ERROR: node is still EOpNull!
|
||||
0:177 Function Definition: drawParamsBad( (global int)
|
||||
0:177 Function Parameters:
|
||||
0:179 Sequence
|
||||
0:179 Branch: Return with expression
|
||||
0:179 add (temp int)
|
||||
0:179 add (temp int)
|
||||
0:179 'gl_BaseVertexARB' (in int BaseVertex)
|
||||
0:179 'gl_BaseInstanceARB' (in int BaseInstance)
|
||||
0:179 'gl_DrawIDARB' (in int DrawId)
|
||||
0:184 Function Definition: drawParams( (global int)
|
||||
0:184 Function Parameters:
|
||||
0:186 Sequence
|
||||
0:186 Branch: Return with expression
|
||||
0:186 add (temp int)
|
||||
0:186 add (temp int)
|
||||
0:186 'gl_BaseVertexARB' (in int BaseVertex)
|
||||
0:186 'gl_BaseInstanceARB' (in int BaseInstance)
|
||||
0:186 'gl_DrawIDARB' (in int DrawId)
|
||||
0:187 move second child to first child (temp int)
|
||||
0:187 'gl_BaseVertexARB' (in int BaseVertex)
|
||||
0:187 Constant:
|
||||
0:187 3 (const int)
|
||||
0:188 move second child to first child (temp int)
|
||||
0:188 'gl_BaseInstanceARB' (in int BaseInstance)
|
||||
0:188 Constant:
|
||||
0:188 3 (const int)
|
||||
0:189 move second child to first child (temp int)
|
||||
0:189 'gl_DrawIDARB' (in int DrawId)
|
||||
0:189 Constant:
|
||||
0:189 3 (const int)
|
||||
0:190 'glBaseInstanceARB' (temp float)
|
||||
0:? Linker Objects
|
||||
0:? 'a' (layout(location=2 component=2 ) in 2-component vector of float)
|
||||
0:? 'b' (layout(location=2 component=1 ) in float)
|
||||
|
@ -263,57 +263,6 @@ Shader version: 450
|
||||
0:34 'uin' (temp uint)
|
||||
0:34 Construct bvec3 (temp 3-component vector of bool)
|
||||
0:34 'b' (temp bool)
|
||||
0:42 Function Definition: foo( (global void)
|
||||
0:42 Function Parameters:
|
||||
0:44 Sequence
|
||||
0:44 Sequence
|
||||
0:44 move second child to first child (temp int)
|
||||
0:44 's' (temp int)
|
||||
0:44 textureSamples (global int)
|
||||
0:44 's2dms' (uniform sampler2DMS)
|
||||
0:45 add second child into first child (temp int)
|
||||
0:45 's' (temp int)
|
||||
0:45 textureSamples (global int)
|
||||
0:45 'us2dmsa' (uniform usampler2DMSArray)
|
||||
0:46 add second child into first child (temp int)
|
||||
0:46 's' (temp int)
|
||||
0:46 imageQuerySamples (global int)
|
||||
0:46 'ii2dms' (layout(rgba32i ) uniform iimage2DMS)
|
||||
0:47 add second child into first child (temp int)
|
||||
0:47 's' (temp int)
|
||||
0:47 imageQuerySamples (global int)
|
||||
0:47 'i2dmsa' (layout(rgba32f ) uniform image2DMSArray)
|
||||
0:48 Sequence
|
||||
0:48 move second child to first child (temp float)
|
||||
0:48 'f' (temp float)
|
||||
0:48 imageAtomicExchange (global float)
|
||||
0:48 'i2dmsa' (layout(rgba32f ) uniform image2DMSArray)
|
||||
0:48 Convert float to int (temp 3-component vector of int)
|
||||
0:48 'in3' (smooth in 3-component vector of float)
|
||||
0:48 Constant:
|
||||
0:48 2 (const int)
|
||||
0:48 Constant:
|
||||
0:48 4.500000
|
||||
0:53 Function Definition: cull(i1; (global float)
|
||||
0:53 Function Parameters:
|
||||
0:53 'i' (in int)
|
||||
0:55 Sequence
|
||||
0:55 Branch: Return with expression
|
||||
0:55 Test condition and select (temp float)
|
||||
0:55 Condition
|
||||
0:55 Compare Greater Than or Equal (temp bool)
|
||||
0:55 'i' (in int)
|
||||
0:55 Constant:
|
||||
0:55 6 (const int)
|
||||
0:55 true case
|
||||
0:55 direct index (smooth temp float CullDistance)
|
||||
0:55 'gl_CullDistance' (smooth in 6-element array of float CullDistance)
|
||||
0:55 Constant:
|
||||
0:55 5 (const int)
|
||||
0:55 false case
|
||||
0:55 indirect index (smooth temp float CullDistance)
|
||||
0:55 'gl_CullDistance' (smooth in 6-element array of float CullDistance)
|
||||
0:55 'i' (in int)
|
||||
0:? Linker Objects
|
||||
0:? 'in1' (smooth in float)
|
||||
0:? 'in2' (smooth in 2-component vector of float)
|
||||
|
@ -446,71 +446,6 @@ ERROR: node is still EOpNull!
|
||||
0:58 1 (const int)
|
||||
0:58 Constant:
|
||||
0:58 4 (const int)
|
||||
0:68 Function Definition: foo( (global void)
|
||||
0:68 Function Parameters:
|
||||
0:? Sequence
|
||||
0:71 move second child to first child (temp int)
|
||||
0:71 direct index (temp int)
|
||||
0:71 'uns' (temp 4-element array of int)
|
||||
0:71 Constant:
|
||||
0:71 3 (const int)
|
||||
0:71 Constant:
|
||||
0:71 40 (const int)
|
||||
0:72 move second child to first child (temp int)
|
||||
0:72 direct index (temp int)
|
||||
0:72 'uns' (temp 4-element array of int)
|
||||
0:72 Constant:
|
||||
0:72 1 (const int)
|
||||
0:72 Constant:
|
||||
0:72 30 (const int)
|
||||
0:73 move second child to first child (temp 3-component vector of float)
|
||||
0:73 direct index (temp 3-component vector of float)
|
||||
0:73 'guns' (global 8-element array of 3-component vector of float)
|
||||
0:73 Constant:
|
||||
0:73 2 (const int)
|
||||
0:73 Constant:
|
||||
0:73 2.400000
|
||||
0:73 2.400000
|
||||
0:73 2.400000
|
||||
0:76 Constant:
|
||||
0:76 0.000000
|
||||
0:79 Function Definition: foo2( (global implicitly-sized array of float)
|
||||
0:79 Function Parameters:
|
||||
0:? Sequence
|
||||
0:82 Branch: Return with expression
|
||||
0:82 'f' (temp 1-element array of float)
|
||||
0:84 Branch: Return with expression
|
||||
0:84 'g' (temp 9-element array of float)
|
||||
0:89 Function Definition: foo3( (global void)
|
||||
0:89 Function Parameters:
|
||||
0:? Sequence
|
||||
0:92 move second child to first child (temp float)
|
||||
0:92 direct index (temp float)
|
||||
0:92 'resize1' (temp 3-element array of float)
|
||||
0:92 Constant:
|
||||
0:92 2 (const int)
|
||||
0:92 Constant:
|
||||
0:92 4.000000
|
||||
0:93 Constant:
|
||||
0:93 1 (const int)
|
||||
0:95 Constant:
|
||||
0:95 3 (const int)
|
||||
0:98 move second child to first child (temp float)
|
||||
0:98 direct index (temp float)
|
||||
0:98 'resize2' (temp 5-element array of float)
|
||||
0:98 Constant:
|
||||
0:98 5 (const int)
|
||||
0:98 Constant:
|
||||
0:98 4.000000
|
||||
0:100 Constant:
|
||||
0:100 5 (const int)
|
||||
0:101 move second child to first child (temp float)
|
||||
0:101 direct index (temp float)
|
||||
0:101 'resize2' (temp 5-element array of float)
|
||||
0:101 Constant:
|
||||
0:101 5 (const int)
|
||||
0:101 Constant:
|
||||
0:101 4.000000
|
||||
0:106 Sequence
|
||||
0:106 move second child to first child (temp float)
|
||||
0:106 'b' (global float)
|
||||
|
@ -265,29 +265,6 @@ ERROR: node is still EOpNull!
|
||||
0:40 1.000000
|
||||
0:40 1.000000
|
||||
0:40 1.000000
|
||||
0:53 Function Definition: bar9( (global structure{global mediump 4-component vector of float v4, global structure{global mediump 3-component vector of float v3, global 4-element array of mediump 2-component vector of float v2} sa})
|
||||
0:53 Function Parameters:
|
||||
0:? Sequence
|
||||
0:56 Branch: Return with expression
|
||||
0:56 's' (temp structure{global mediump 4-component vector of float v4, global structure{global mediump 3-component vector of float v3, global 4-element array of mediump 2-component vector of float v2} sa})
|
||||
0:59 Function Definition: bar10(struct-SB-vf4-struct-SA-vf3-vf2[4]11; (global void)
|
||||
0:59 Function Parameters:
|
||||
0:59 's' (in structure{global mediump 4-component vector of float v4, global structure{global mediump 3-component vector of float v3, global 4-element array of mediump 2-component vector of float v2} sa})
|
||||
0:63 Function Definition: bar11( (global void)
|
||||
0:63 Function Parameters:
|
||||
0:? Sequence
|
||||
0:66 move second child to first child (temp structure{global mediump 4-component vector of float v4, global structure{global mediump 3-component vector of float v3, global 4-element array of mediump 2-component vector of float v2} sa})
|
||||
0:66 's1' (temp structure{global mediump 4-component vector of float v4, global structure{global mediump 3-component vector of float v3, global 4-element array of mediump 2-component vector of float v2} sa})
|
||||
0:66 's2' (temp structure{global mediump 4-component vector of float v4, global structure{global mediump 3-component vector of float v3, global 4-element array of mediump 2-component vector of float v2} sa})
|
||||
0:67 Function Call: bar10(struct-SB-vf4-struct-SA-vf3-vf2[4]11; (global void)
|
||||
0:67 's1' (temp structure{global mediump 4-component vector of float v4, global structure{global mediump 3-component vector of float v3, global 4-element array of mediump 2-component vector of float v2} sa})
|
||||
0:68 move second child to first child (temp structure{global mediump 4-component vector of float v4, global structure{global mediump 3-component vector of float v3, global 4-element array of mediump 2-component vector of float v2} sa})
|
||||
0:68 's2' (temp structure{global mediump 4-component vector of float v4, global structure{global mediump 3-component vector of float v3, global 4-element array of mediump 2-component vector of float v2} sa})
|
||||
0:68 Function Call: bar9( (global structure{global mediump 4-component vector of float v4, global structure{global mediump 3-component vector of float v3, global 4-element array of mediump 2-component vector of float v2} sa})
|
||||
0:69 Sequence
|
||||
0:69 move second child to first child (temp structure{global mediump 4-component vector of float v4, global structure{global mediump 3-component vector of float v3, global 4-element array of mediump 2-component vector of float v2} sa})
|
||||
0:69 'initSb' (temp structure{global mediump 4-component vector of float v4, global structure{global mediump 3-component vector of float v3, global 4-element array of mediump 2-component vector of float v2} sa})
|
||||
0:69 's1' (temp structure{global mediump 4-component vector of float v4, global structure{global mediump 3-component vector of float v3, global 4-element array of mediump 2-component vector of float v2} sa})
|
||||
0:? Linker Objects
|
||||
0:? 'gu' (global 1-element array of mediump float)
|
||||
0:? 'g4' (global 4-element array of mediump float)
|
||||
|
@ -86,22 +86,6 @@ Linked fragment stage:
|
||||
|
||||
Shader version: 420
|
||||
ERROR: node is still EOpNull!
|
||||
0:5 Function Definition: func(au1; (global uint)
|
||||
0:5 Function Parameters:
|
||||
0:5 'c' (in atomic_uint)
|
||||
0:7 Sequence
|
||||
0:7 Branch: Return with expression
|
||||
0:7 AtomicCounterIncrement (global uint)
|
||||
0:7 'c' (in atomic_uint)
|
||||
0:10 Function Definition: func2(au1; (global uint)
|
||||
0:10 Function Parameters:
|
||||
0:10 'c' (out atomic_uint)
|
||||
0:12 Sequence
|
||||
0:12 Branch: Return with expression
|
||||
0:12 'counter' (layout(binding=0 offset=0 ) uniform atomic_uint)
|
||||
0:13 Branch: Return with expression
|
||||
0:13 AtomicCounter (global uint)
|
||||
0:13 'counter' (layout(binding=0 offset=0 ) uniform atomic_uint)
|
||||
0:16 Function Definition: main( (global void)
|
||||
0:16 Function Parameters:
|
||||
0:? Sequence
|
||||
@ -112,22 +96,6 @@ ERROR: node is still EOpNull!
|
||||
0:19 'counter' (layout(binding=0 offset=0 ) uniform atomic_uint)
|
||||
0:20 AtomicCounterDecrement (global uint)
|
||||
0:20 'counter' (layout(binding=0 offset=0 ) uniform atomic_uint)
|
||||
0:26 Function Definition: opac( (global void)
|
||||
0:26 Function Parameters:
|
||||
0:28 Sequence
|
||||
0:28 'counter' (layout(binding=0 offset=0 ) uniform atomic_uint)
|
||||
0:29 'counter' (layout(binding=0 offset=0 ) uniform atomic_uint)
|
||||
0:31 indirect index (temp int)
|
||||
0:31 'a' (temp 3-element array of int)
|
||||
0:31 'counter' (layout(binding=0 offset=0 ) uniform atomic_uint)
|
||||
0:32 direct index (layout(binding=1 offset=3 ) temp atomic_uint)
|
||||
0:32 'countArr' (layout(binding=1 offset=3 ) uniform 4-element array of atomic_uint)
|
||||
0:32 Constant:
|
||||
0:32 2 (const int)
|
||||
0:33 indirect index (layout(binding=1 offset=3 ) temp atomic_uint)
|
||||
0:33 'countArr' (layout(binding=1 offset=3 ) uniform 4-element array of atomic_uint)
|
||||
0:33 'i' (uniform int)
|
||||
0:34 'counter' (layout(binding=0 offset=0 ) uniform atomic_uint)
|
||||
0:? Linker Objects
|
||||
0:? 'counter' (layout(binding=0 offset=0 ) uniform atomic_uint)
|
||||
0:? 'countArr' (layout(binding=1 offset=3 ) uniform 4-element array of atomic_uint)
|
||||
|
@ -546,120 +546,6 @@ ERROR: node is still EOpNull!
|
||||
0:69 0.028000
|
||||
0:69 0.500000
|
||||
0:69 1.000000
|
||||
0:78 Function Definition: foo( (global void)
|
||||
0:78 Function Parameters:
|
||||
0:? Sequence
|
||||
0:81 move second child to first child (temp float)
|
||||
0:81 direct index (temp float)
|
||||
0:81 'a' (temp 3-element array of float)
|
||||
0:81 Constant:
|
||||
0:81 0 (const int)
|
||||
0:81 Constant:
|
||||
0:81 7.000000
|
||||
0:82 Constant:
|
||||
0:82 2 (const int)
|
||||
0:83 Constant:
|
||||
0:83 2147483647 (const int)
|
||||
0:84 Constant:
|
||||
0:84 inf
|
||||
0:88 Constant:
|
||||
0:88 2 (const uint)
|
||||
0:88 3 (const uint)
|
||||
0:89 Constant:
|
||||
0:89 0 (const uint)
|
||||
0:90 Constant:
|
||||
0:90 6 (const uint)
|
||||
0:90 7 (const uint)
|
||||
0:103 Function Definition: foo2( (global void)
|
||||
0:103 Function Parameters:
|
||||
0:105 Sequence
|
||||
0:105 direct index (temp float)
|
||||
0:105 'a1' (global 1-element array of float)
|
||||
0:105 Constant:
|
||||
0:105 0 (const int)
|
||||
0:106 direct index (temp float)
|
||||
0:106 'a2' (global 2-element array of float)
|
||||
0:106 Constant:
|
||||
0:106 0 (const int)
|
||||
0:107 direct index (temp float)
|
||||
0:107 'a3' (global 4-element array of float)
|
||||
0:107 Constant:
|
||||
0:107 0 (const int)
|
||||
0:108 direct index (temp float)
|
||||
0:108 'a4' (global 2-element array of float)
|
||||
0:108 Constant:
|
||||
0:108 0 (const int)
|
||||
0:109 Constant:
|
||||
0:109 1.000000
|
||||
0:110 Constant:
|
||||
0:110 5.000000
|
||||
0:111 Constant:
|
||||
0:111 2.000000
|
||||
0:112 Constant:
|
||||
0:112 3.000000
|
||||
0:113 Constant:
|
||||
0:113 0.000000
|
||||
0:114 Constant:
|
||||
0:114 0.000000
|
||||
0:116 move second child to first child (temp int)
|
||||
0:116 'p' (temp int)
|
||||
0:116 Constant:
|
||||
0:116 2147483647 (const int)
|
||||
0:117 move second child to first child (temp int)
|
||||
0:117 'p' (temp int)
|
||||
0:117 Constant:
|
||||
0:117 -2147483648 (const int)
|
||||
0:118 move second child to first child (temp int)
|
||||
0:118 'p' (temp int)
|
||||
0:118 Constant:
|
||||
0:118 -2147483647 (const int)
|
||||
0:119 Sequence
|
||||
0:119 move second child to first child (temp float)
|
||||
0:119 'f' (temp float)
|
||||
0:119 Constant:
|
||||
0:119 1.444000
|
||||
0:120 move second child to first child (temp float)
|
||||
0:120 'f' (temp float)
|
||||
0:120 direct index (temp float)
|
||||
0:120 Construct vec4 (temp 4-component vector of float)
|
||||
0:120 Test condition and select (temp float)
|
||||
0:120 Condition
|
||||
0:120 Compare Less Than (temp bool)
|
||||
0:120 direct index (temp float)
|
||||
0:120 'inv' (smooth in 4-component vector of float)
|
||||
0:120 Constant:
|
||||
0:120 0 (const int)
|
||||
0:120 Constant:
|
||||
0:120 2.400000
|
||||
0:120 true case
|
||||
0:120 Constant:
|
||||
0:120 -1.000000
|
||||
0:120 false case
|
||||
0:120 Constant:
|
||||
0:120 1.000000
|
||||
0:120 Constant:
|
||||
0:120 3 (const int)
|
||||
0:126 Function Definition: foo3( (global void)
|
||||
0:126 Function Parameters:
|
||||
0:128 Sequence
|
||||
0:128 Sequence
|
||||
0:128 move second child to first child (temp 3X2 matrix of float)
|
||||
0:128 'r32' (temp 3X2 matrix of float)
|
||||
0:128 Constant:
|
||||
0:128 43.000000
|
||||
0:128 64.000000
|
||||
0:128 51.000000
|
||||
0:128 76.000000
|
||||
0:128 59.000000
|
||||
0:128 88.000000
|
||||
0:138 Function Definition: foo4( (global void)
|
||||
0:138 Function Parameters:
|
||||
0:140 Sequence
|
||||
0:140 Sequence
|
||||
0:140 move second child to first child (temp int)
|
||||
0:140 'a' (temp int)
|
||||
0:140 Constant:
|
||||
0:140 9 (const int)
|
||||
0:? Linker Objects
|
||||
0:? 'a' (const int)
|
||||
0:? 1 (const int)
|
||||
|
@ -152,41 +152,6 @@ ERROR: node is still EOpNull!
|
||||
0:39 'gl_Position' (gl_Position highp 4-component vector of float Position)
|
||||
0:39 Construct vec4 (temp highp 4-component vector of float)
|
||||
0:39 'sum' (global highp float)
|
||||
0:44 Function Definition: foo( (global highp float)
|
||||
0:44 Function Parameters:
|
||||
0:46 Sequence
|
||||
0:46 Branch: Return with expression
|
||||
0:46 add (temp highp float)
|
||||
0:46 add (temp highp float)
|
||||
0:46 direct index (temp highp float)
|
||||
0:46 'gl_Position' (gl_Position highp 4-component vector of float Position)
|
||||
0:46 Constant:
|
||||
0:46 0 (const int)
|
||||
0:46 Constant:
|
||||
0:46 3.000000
|
||||
0:46 add (temp highp float)
|
||||
0:46 direct index (temp highp float)
|
||||
0:46 'gl_Position' (gl_Position highp 4-component vector of float Position)
|
||||
0:46 Constant:
|
||||
0:46 0 (const int)
|
||||
0:46 Constant:
|
||||
0:46 3.000000
|
||||
0:47 Branch: Return with expression
|
||||
0:47 add (temp highp float)
|
||||
0:47 add (temp highp float)
|
||||
0:47 direct index (temp highp float)
|
||||
0:47 'gl_Position' (gl_Position highp 4-component vector of float Position)
|
||||
0:47 Constant:
|
||||
0:47 1 (const int)
|
||||
0:47 Constant:
|
||||
0:47 3.000000
|
||||
0:47 add (temp highp float)
|
||||
0:47 direct index (temp highp float)
|
||||
0:47 'gl_Position' (gl_Position highp 4-component vector of float Position)
|
||||
0:47 Constant:
|
||||
0:47 1 (const int)
|
||||
0:47 Constant:
|
||||
0:47 3.000000
|
||||
0:97 Sequence
|
||||
0:97 move second child to first child (temp highp float)
|
||||
0:97 'c' (global highp float)
|
||||
|
@ -135,17 +135,6 @@ ERROR: node is still EOpNull!
|
||||
0:133 'selected3' (global int)
|
||||
0:133 Constant:
|
||||
0:133 3 (const int)
|
||||
0:175 Function Definition: foo985( (global void)
|
||||
0:175 Function Parameters:
|
||||
0:175 Sequence
|
||||
0:175 add (temp int)
|
||||
0:175 Constant:
|
||||
0:175 2 (const int)
|
||||
0:175 Comma (temp int)
|
||||
0:175 Constant:
|
||||
0:175 3 (const int)
|
||||
0:175 Constant:
|
||||
0:175 4 (const int)
|
||||
0:? Linker Objects
|
||||
0:? 'sum' (global float)
|
||||
0:? 'selected4' (global int)
|
||||
|
@ -282,19 +282,6 @@ ERROR: node is still EOpNull!
|
||||
0:202 'f' (global double)
|
||||
0:202 Constant:
|
||||
0:202 0.000800
|
||||
12:20031 Function Definition: foo234( (global void)
|
||||
12:20031 Function Parameters:
|
||||
12:20033 Sequence
|
||||
12:20033 move second child to first child (temp 4-component vector of float)
|
||||
12:20033 gl_Position: direct index for structure (gl_Position 4-component vector of float Position)
|
||||
12:20033 'anon@0' (out block{gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance, gl_ClipVertex 4-component vector of float ClipVertex gl_ClipVertex, out 4-component vector of float FrontColor gl_FrontColor, out 4-component vector of float BackColor gl_BackColor, out 4-component vector of float FrontSecondaryColor gl_FrontSecondaryColor, out 4-component vector of float BackSecondaryColor gl_BackSecondaryColor, out 1-element array of 4-component vector of float TexCoord gl_TexCoord, out float FogFragCoord gl_FogFragCoord})
|
||||
12:20033 Constant:
|
||||
12:20033 0 (const uint)
|
||||
12:20033 Constant:
|
||||
12:20033 6.000000
|
||||
12:20033 6.000000
|
||||
12:20033 6.000000
|
||||
12:20033 6.000000
|
||||
12:9011 Sequence
|
||||
12:9011 move second child to first child (temp int)
|
||||
12:9011 'R1' (global int)
|
||||
|
@ -147,128 +147,6 @@ Shader version: 400
|
||||
0:5 'c' (global int)
|
||||
0:5 Constant:
|
||||
0:5 0 (const int)
|
||||
0:7 Function Definition: bar( (global void)
|
||||
0:7 Function Parameters:
|
||||
0:9 Sequence
|
||||
0:9 Test condition and select (temp void)
|
||||
0:9 Condition
|
||||
0:9 Constant:
|
||||
0:9 false (const bool)
|
||||
0:9 true case
|
||||
0:10 Pre-Increment (temp int)
|
||||
0:10 'c' (global int)
|
||||
0:9 false case
|
||||
0:12 Pre-Increment (temp int)
|
||||
0:12 'c' (global int)
|
||||
0:14 Test condition and select (temp int)
|
||||
0:14 Condition
|
||||
0:14 Constant:
|
||||
0:14 false (const bool)
|
||||
0:14 true case
|
||||
0:14 Pre-Increment (temp int)
|
||||
0:14 'c' (global int)
|
||||
0:14 false case
|
||||
0:14 Pre-Increment (temp int)
|
||||
0:14 'c' (global int)
|
||||
0:16 switch
|
||||
0:16 condition
|
||||
0:16 'c' (global int)
|
||||
0:16 body
|
||||
0:16 Sequence
|
||||
0:17 case: with expression
|
||||
0:17 Constant:
|
||||
0:17 1 (const int)
|
||||
0:? Sequence
|
||||
0:18 Pre-Increment (temp int)
|
||||
0:18 'c' (global int)
|
||||
0:19 Branch: Break
|
||||
0:20 Pre-Increment (temp int)
|
||||
0:20 'c' (global int)
|
||||
0:21 case: with expression
|
||||
0:21 Constant:
|
||||
0:21 2 (const int)
|
||||
0:? Sequence
|
||||
0:22 Branch: Break
|
||||
0:23 Pre-Increment (temp int)
|
||||
0:23 'c' (global int)
|
||||
0:24 default:
|
||||
0:? Sequence
|
||||
0:25 Branch: Break
|
||||
0:28 Sequence
|
||||
0:28 Sequence
|
||||
0:28 move second child to first child (temp int)
|
||||
0:28 'i' (temp int)
|
||||
0:28 Constant:
|
||||
0:28 0 (const int)
|
||||
0:28 Loop with condition tested first
|
||||
0:28 Loop Condition
|
||||
0:28 Compare Less Than (temp bool)
|
||||
0:28 'i' (temp int)
|
||||
0:28 Constant:
|
||||
0:28 0 (const int)
|
||||
0:28 Loop Body
|
||||
0:29 Pre-Increment (temp int)
|
||||
0:29 'c' (global int)
|
||||
0:28 Loop Terminal Expression
|
||||
0:28 Pre-Increment (temp int)
|
||||
0:28 'i' (temp int)
|
||||
0:31 Sequence
|
||||
0:31 Sequence
|
||||
0:31 move second child to first child (temp int)
|
||||
0:31 'i' (temp int)
|
||||
0:31 Constant:
|
||||
0:31 0 (const int)
|
||||
0:31 Loop with condition tested first
|
||||
0:31 Loop Condition
|
||||
0:31 Compare Less Than (temp bool)
|
||||
0:31 'i' (temp int)
|
||||
0:31 Constant:
|
||||
0:31 10 (const int)
|
||||
0:31 Loop Body
|
||||
0:32 Sequence
|
||||
0:32 Test condition and select (temp void)
|
||||
0:32 Condition
|
||||
0:32 Compare Less Than (temp bool)
|
||||
0:32 'c' (global int)
|
||||
0:32 Constant:
|
||||
0:32 3 (const int)
|
||||
0:32 true case
|
||||
0:33 Sequence
|
||||
0:33 Branch: Break
|
||||
0:34 Pre-Increment (temp int)
|
||||
0:34 'c' (global int)
|
||||
0:32 false case
|
||||
0:36 Sequence
|
||||
0:36 Branch: Continue
|
||||
0:37 Pre-Increment (temp int)
|
||||
0:37 'c' (global int)
|
||||
0:31 Loop Terminal Expression
|
||||
0:31 Pre-Increment (temp int)
|
||||
0:31 'i' (temp int)
|
||||
0:41 Branch: Return
|
||||
0:43 Pre-Increment (temp int)
|
||||
0:43 'c' (global int)
|
||||
0:46 Function Definition: foo( (global int)
|
||||
0:46 Function Parameters:
|
||||
0:48 Sequence
|
||||
0:48 Test condition and select (temp void)
|
||||
0:48 Condition
|
||||
0:48 Compare Greater Than (temp bool)
|
||||
0:48 'c' (global int)
|
||||
0:48 Constant:
|
||||
0:48 4 (const int)
|
||||
0:48 true case
|
||||
0:49 Sequence
|
||||
0:49 Branch: Return with expression
|
||||
0:49 Constant:
|
||||
0:49 4 (const int)
|
||||
0:50 Pre-Increment (temp int)
|
||||
0:50 'c' (global int)
|
||||
0:53 Branch: Return with expression
|
||||
0:53 Constant:
|
||||
0:53 5 (const int)
|
||||
0:55 Pre-Increment (temp int)
|
||||
0:55 'c' (global int)
|
||||
0:? Linker Objects
|
||||
0:? 'flag' (const bool)
|
||||
0:? false (const bool)
|
||||
|
@ -397,19 +397,6 @@ ERROR: node is still EOpNull!
|
||||
0:62 Construct vec4 (temp 4-component vector of float)
|
||||
0:62 Convert int to float (temp float)
|
||||
0:62 'color' (temp int)
|
||||
0:66 Function Definition: aggCall( (global void)
|
||||
0:66 Function Parameters:
|
||||
0:? Sequence
|
||||
0:69 Function Call: m(vf2; (global 3-component vector of float)
|
||||
0:69 Convert int to float (temp 2-component vector of float)
|
||||
0:69 Construct ivec2 (temp 2-component vector of int)
|
||||
0:69 Convert float to int (temp int)
|
||||
0:69 'F' (temp float)
|
||||
0:72 Function Definition: badConv( (global 4-component vector of float)
|
||||
0:72 Function Parameters:
|
||||
0:74 Sequence
|
||||
0:74 Branch: Return with expression
|
||||
0:74 'u' (uniform float)
|
||||
0:? Linker Objects
|
||||
0:? 'u' (uniform float)
|
||||
|
||||
|
@ -4,8 +4,4 @@ Warning, version 310 is not yet complete; most version-specific features are pre
|
||||
ERROR: 1 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
Linked vertex stage:
|
||||
|
||||
|
||||
SPIR-V is not generated for failed compile or link
|
||||
|
@ -6,8 +6,4 @@ ERROR: 0:14: '' : syntax error
|
||||
ERROR: 4 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
Linked fragment stage:
|
||||
|
||||
|
||||
SPIR-V is not generated for failed compile or link
|
||||
|
@ -1,10 +1,6 @@
|
||||
glspv.version.frag
|
||||
ERROR: #version: compilation for SPIR-V does not support the compatibility profile
|
||||
|
||||
|
||||
Linked fragment stage:
|
||||
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 6
|
||||
|
@ -3,8 +3,4 @@ ERROR: #version: Desktop shaders for OpenGL SPIR-V require version 330 or higher
|
||||
ERROR: 1 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
Linked vertex stage:
|
||||
|
||||
|
||||
SPIR-V is not generated for failed compile or link
|
||||
|
@ -11,8 +11,4 @@ ERROR: 0:20: '' : syntax error
|
||||
ERROR: 8 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
Linked vertex stage:
|
||||
|
||||
|
||||
SPIR-V is not generated for failed compile or link
|
||||
|
207
Test/baseResults/hlsl.amend.frag.out
Executable file
207
Test/baseResults/hlsl.amend.frag.out
Executable file
@ -0,0 +1,207 @@
|
||||
hlsl.amend.frag
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:5 Function Definition: f1( (temp void)
|
||||
0:5 Function Parameters:
|
||||
0:? Sequence
|
||||
0:6 vector-scale (temp 4-component vector of float)
|
||||
0:6 a: direct index for structure (layout(offset=0 ) uniform 4-component vector of float)
|
||||
0:6 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-component vector of float a, layout(offset=16 ) uniform float b, layout(offset=32 ) uniform 3-component vector of float c, layout(offset=44 ) uniform int d, uniform int e})
|
||||
0:6 Constant:
|
||||
0:6 0 (const uint)
|
||||
0:6 b: direct index for structure (layout(offset=16 ) uniform float)
|
||||
0:6 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-component vector of float a, layout(offset=16 ) uniform float b, layout(offset=32 ) uniform 3-component vector of float c, layout(offset=44 ) uniform int d, uniform int e})
|
||||
0:6 Constant:
|
||||
0:6 1 (const uint)
|
||||
0:12 Function Definition: f2( (temp void)
|
||||
0:12 Function Parameters:
|
||||
0:? Sequence
|
||||
0:13 add (temp float)
|
||||
0:13 add (temp float)
|
||||
0:13 direct index (temp float)
|
||||
0:13 a: direct index for structure (layout(offset=0 ) uniform 4-component vector of float)
|
||||
0:13 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-component vector of float a, layout(offset=16 ) uniform float b, layout(offset=32 ) uniform 3-component vector of float c, layout(offset=44 ) uniform int d, uniform int e})
|
||||
0:13 Constant:
|
||||
0:13 0 (const uint)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 b: direct index for structure (layout(offset=16 ) uniform float)
|
||||
0:13 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-component vector of float a, layout(offset=16 ) uniform float b, layout(offset=32 ) uniform 3-component vector of float c, layout(offset=44 ) uniform int d, uniform int e})
|
||||
0:13 Constant:
|
||||
0:13 1 (const uint)
|
||||
0:13 direct index (temp float)
|
||||
0:13 c: direct index for structure (layout(offset=32 ) uniform 3-component vector of float)
|
||||
0:13 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-component vector of float a, layout(offset=16 ) uniform float b, layout(offset=32 ) uniform 3-component vector of float c, layout(offset=44 ) uniform int d, uniform int e})
|
||||
0:13 Constant:
|
||||
0:13 2 (const uint)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:17 Function Definition: f3( (temp void)
|
||||
0:17 Function Parameters:
|
||||
0:? Sequence
|
||||
0:18 c: direct index for structure (layout(offset=32 ) uniform 3-component vector of float)
|
||||
0:18 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-component vector of float a, layout(offset=16 ) uniform float b, layout(offset=32 ) uniform 3-component vector of float c, layout(offset=44 ) uniform int d, uniform int e})
|
||||
0:18 Constant:
|
||||
0:18 2 (const uint)
|
||||
0:24 Function Definition: f4( (temp void)
|
||||
0:24 Function Parameters:
|
||||
0:? Sequence
|
||||
0:25 vector-scale (temp 4-component vector of float)
|
||||
0:25 Convert int to float (temp float)
|
||||
0:25 d: direct index for structure (layout(offset=44 ) uniform int)
|
||||
0:25 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-component vector of float a, layout(offset=16 ) uniform float b, layout(offset=32 ) uniform 3-component vector of float c, layout(offset=44 ) uniform int d, uniform int e})
|
||||
0:25 Constant:
|
||||
0:25 3 (const uint)
|
||||
0:25 a: direct index for structure (layout(offset=0 ) uniform 4-component vector of float)
|
||||
0:25 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-component vector of float a, layout(offset=16 ) uniform float b, layout(offset=32 ) uniform 3-component vector of float c, layout(offset=44 ) uniform int d, uniform int e})
|
||||
0:25 Constant:
|
||||
0:25 0 (const uint)
|
||||
0:? Linker Objects
|
||||
0:? 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-component vector of float a, layout(offset=16 ) uniform float b, layout(offset=32 ) uniform 3-component vector of float c, layout(offset=44 ) uniform int d, uniform int e})
|
||||
|
||||
|
||||
Linked fragment stage:
|
||||
|
||||
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:5 Function Definition: f1( (temp void)
|
||||
0:5 Function Parameters:
|
||||
0:? Sequence
|
||||
0:6 vector-scale (temp 4-component vector of float)
|
||||
0:6 a: direct index for structure (layout(offset=0 ) uniform 4-component vector of float)
|
||||
0:6 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-component vector of float a, layout(offset=16 ) uniform float b, layout(offset=32 ) uniform 3-component vector of float c, layout(offset=44 ) uniform int d, uniform int e})
|
||||
0:6 Constant:
|
||||
0:6 0 (const uint)
|
||||
0:6 b: direct index for structure (layout(offset=16 ) uniform float)
|
||||
0:6 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-component vector of float a, layout(offset=16 ) uniform float b, layout(offset=32 ) uniform 3-component vector of float c, layout(offset=44 ) uniform int d, uniform int e})
|
||||
0:6 Constant:
|
||||
0:6 1 (const uint)
|
||||
0:12 Function Definition: f2( (temp void)
|
||||
0:12 Function Parameters:
|
||||
0:? Sequence
|
||||
0:13 add (temp float)
|
||||
0:13 add (temp float)
|
||||
0:13 direct index (temp float)
|
||||
0:13 a: direct index for structure (layout(offset=0 ) uniform 4-component vector of float)
|
||||
0:13 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-component vector of float a, layout(offset=16 ) uniform float b, layout(offset=32 ) uniform 3-component vector of float c, layout(offset=44 ) uniform int d, uniform int e})
|
||||
0:13 Constant:
|
||||
0:13 0 (const uint)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 b: direct index for structure (layout(offset=16 ) uniform float)
|
||||
0:13 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-component vector of float a, layout(offset=16 ) uniform float b, layout(offset=32 ) uniform 3-component vector of float c, layout(offset=44 ) uniform int d, uniform int e})
|
||||
0:13 Constant:
|
||||
0:13 1 (const uint)
|
||||
0:13 direct index (temp float)
|
||||
0:13 c: direct index for structure (layout(offset=32 ) uniform 3-component vector of float)
|
||||
0:13 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-component vector of float a, layout(offset=16 ) uniform float b, layout(offset=32 ) uniform 3-component vector of float c, layout(offset=44 ) uniform int d, uniform int e})
|
||||
0:13 Constant:
|
||||
0:13 2 (const uint)
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:17 Function Definition: f3( (temp void)
|
||||
0:17 Function Parameters:
|
||||
0:? Sequence
|
||||
0:18 c: direct index for structure (layout(offset=32 ) uniform 3-component vector of float)
|
||||
0:18 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-component vector of float a, layout(offset=16 ) uniform float b, layout(offset=32 ) uniform 3-component vector of float c, layout(offset=44 ) uniform int d, uniform int e})
|
||||
0:18 Constant:
|
||||
0:18 2 (const uint)
|
||||
0:24 Function Definition: f4( (temp void)
|
||||
0:24 Function Parameters:
|
||||
0:? Sequence
|
||||
0:25 vector-scale (temp 4-component vector of float)
|
||||
0:25 Convert int to float (temp float)
|
||||
0:25 d: direct index for structure (layout(offset=44 ) uniform int)
|
||||
0:25 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-component vector of float a, layout(offset=16 ) uniform float b, layout(offset=32 ) uniform 3-component vector of float c, layout(offset=44 ) uniform int d, uniform int e})
|
||||
0:25 Constant:
|
||||
0:25 3 (const uint)
|
||||
0:25 a: direct index for structure (layout(offset=0 ) uniform 4-component vector of float)
|
||||
0:25 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-component vector of float a, layout(offset=16 ) uniform float b, layout(offset=32 ) uniform 3-component vector of float c, layout(offset=44 ) uniform int d, uniform int e})
|
||||
0:25 Constant:
|
||||
0:25 0 (const uint)
|
||||
0:? Linker Objects
|
||||
0:? 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-component vector of float a, layout(offset=16 ) uniform float b, layout(offset=32 ) uniform 3-component vector of float c, layout(offset=44 ) uniform int d, uniform int e})
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 47
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "f1"
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Name 4 "f1"
|
||||
Name 6 "f2("
|
||||
Name 8 "f3("
|
||||
Name 10 "f4("
|
||||
Name 16 "$Global"
|
||||
MemberName 16($Global) 0 "a"
|
||||
MemberName 16($Global) 1 "b"
|
||||
MemberName 16($Global) 2 "c"
|
||||
MemberName 16($Global) 3 "d"
|
||||
MemberName 16($Global) 4 "e"
|
||||
Name 18 ""
|
||||
MemberDecorate 16($Global) 0 Offset 0
|
||||
MemberDecorate 16($Global) 1 Offset 16
|
||||
MemberDecorate 16($Global) 2 Offset 32
|
||||
MemberDecorate 16($Global) 3 Offset 44
|
||||
MemberDecorate 16($Global) 4 Offset 48
|
||||
Decorate 16($Global) Block
|
||||
Decorate 18 DescriptorSet 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
12: TypeFloat 32
|
||||
13: TypeVector 12(float) 4
|
||||
14: TypeVector 12(float) 3
|
||||
15: TypeInt 32 1
|
||||
16($Global): TypeStruct 13(fvec4) 12(float) 14(fvec3) 15(int) 15(int)
|
||||
17: TypePointer Uniform 16($Global)
|
||||
18: 17(ptr) Variable Uniform
|
||||
19: 15(int) Constant 0
|
||||
20: TypePointer Uniform 13(fvec4)
|
||||
23: 15(int) Constant 1
|
||||
24: TypePointer Uniform 12(float)
|
||||
28: TypeInt 32 0
|
||||
29: 28(int) Constant 0
|
||||
35: 15(int) Constant 2
|
||||
39: 15(int) Constant 3
|
||||
40: TypePointer Uniform 15(int)
|
||||
4(f1): 2 Function None 3
|
||||
5: Label
|
||||
21: 20(ptr) AccessChain 18 19
|
||||
22: 13(fvec4) Load 21
|
||||
25: 24(ptr) AccessChain 18 23
|
||||
26: 12(float) Load 25
|
||||
27: 13(fvec4) VectorTimesScalar 22 26
|
||||
Return
|
||||
FunctionEnd
|
||||
6(f2(): 2 Function None 3
|
||||
7: Label
|
||||
30: 24(ptr) AccessChain 18 19 29
|
||||
31: 12(float) Load 30
|
||||
32: 24(ptr) AccessChain 18 23
|
||||
33: 12(float) Load 32
|
||||
34: 12(float) FAdd 31 33
|
||||
36: 24(ptr) AccessChain 18 35 29
|
||||
37: 12(float) Load 36
|
||||
38: 12(float) FAdd 34 37
|
||||
Return
|
||||
FunctionEnd
|
||||
8(f3(): 2 Function None 3
|
||||
9: Label
|
||||
Return
|
||||
FunctionEnd
|
||||
10(f4(): 2 Function None 3
|
||||
11: Label
|
||||
41: 40(ptr) AccessChain 18 39
|
||||
42: 15(int) Load 41
|
||||
43: 12(float) ConvertSToF 42
|
||||
44: 20(ptr) AccessChain 18 19
|
||||
45: 13(fvec4) Load 44
|
||||
46: 13(fvec4) VectorTimesScalar 45 43
|
||||
Return
|
||||
FunctionEnd
|
526
Test/baseResults/hlsl.array.flatten.frag.out
Normal file
526
Test/baseResults/hlsl.array.flatten.frag.out
Normal file
@ -0,0 +1,526 @@
|
||||
hlsl.array.flatten.frag
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:17 Function Definition: TestFn1( (temp 4-component vector of float)
|
||||
0:17 Function Parameters:
|
||||
0:? Sequence
|
||||
0:18 Branch: Return with expression
|
||||
0:18 texture (temp 4-component vector of float)
|
||||
0:18 Construct combined texture-sampler (temp sampler1D)
|
||||
0:? 'g_tex[1]' (uniform texture1D)
|
||||
0:? 'g_samp[1]' (uniform sampler)
|
||||
0:18 Constant:
|
||||
0:18 0.200000
|
||||
0:22 Function Definition: TestFn2(t11[3];p1[3]; (temp 4-component vector of float)
|
||||
0:22 Function Parameters:
|
||||
0:22 'l_tex' (in 3-element array of texture1D)
|
||||
0:22 'l_samp' (in 3-element array of sampler)
|
||||
0:? Sequence
|
||||
0:23 Branch: Return with expression
|
||||
0:23 texture (temp 4-component vector of float)
|
||||
0:23 Construct combined texture-sampler (temp sampler1D)
|
||||
0:23 direct index (temp texture1D)
|
||||
0:23 'l_tex' (in 3-element array of texture1D)
|
||||
0:23 Constant:
|
||||
0:23 2 (const int)
|
||||
0:23 direct index (temp sampler)
|
||||
0:23 'l_samp' (in 3-element array of sampler)
|
||||
0:23 Constant:
|
||||
0:23 2 (const int)
|
||||
0:23 Constant:
|
||||
0:23 0.200000
|
||||
0:26 Sequence
|
||||
0:26 move second child to first child (temp 5-element array of int)
|
||||
0:26 'not_flattened_a' (global 5-element array of int)
|
||||
0:26 Constant:
|
||||
0:26 1 (const int)
|
||||
0:26 2 (const int)
|
||||
0:26 3 (const int)
|
||||
0:26 4 (const int)
|
||||
0:26 5 (const int)
|
||||
0:31 Function Definition: main(struct-PS_OUTPUT-vf41; (temp void)
|
||||
0:31 Function Parameters:
|
||||
0:31 'ps_output' (out structure{temp 4-component vector of float color})
|
||||
0:? Sequence
|
||||
0:33 Sequence
|
||||
0:33 Sequence
|
||||
0:33 move second child to first child (temp sampler)
|
||||
0:33 direct index (temp sampler)
|
||||
0:33 'local_sampler_array' (temp 3-element array of sampler)
|
||||
0:33 Constant:
|
||||
0:33 0 (const int)
|
||||
0:? 'g_samp[0]' (uniform sampler)
|
||||
0:33 move second child to first child (temp sampler)
|
||||
0:33 direct index (temp sampler)
|
||||
0:33 'local_sampler_array' (temp 3-element array of sampler)
|
||||
0:33 Constant:
|
||||
0:33 1 (const int)
|
||||
0:? 'g_samp[1]' (uniform sampler)
|
||||
0:33 move second child to first child (temp sampler)
|
||||
0:33 direct index (temp sampler)
|
||||
0:33 'local_sampler_array' (temp 3-element array of sampler)
|
||||
0:33 Constant:
|
||||
0:33 2 (const int)
|
||||
0:? 'g_samp[2]' (uniform sampler)
|
||||
0:34 Sequence
|
||||
0:34 Sequence
|
||||
0:34 move second child to first child (temp texture1D)
|
||||
0:34 direct index (temp texture1D)
|
||||
0:34 'local_texture_array' (temp 3-element array of texture1D)
|
||||
0:34 Constant:
|
||||
0:34 0 (const int)
|
||||
0:? 'g_tex[0]' (uniform texture1D)
|
||||
0:34 move second child to first child (temp texture1D)
|
||||
0:34 direct index (temp texture1D)
|
||||
0:34 'local_texture_array' (temp 3-element array of texture1D)
|
||||
0:34 Constant:
|
||||
0:34 1 (const int)
|
||||
0:? 'g_tex[1]' (uniform texture1D)
|
||||
0:34 move second child to first child (temp texture1D)
|
||||
0:34 direct index (temp texture1D)
|
||||
0:34 'local_texture_array' (temp 3-element array of texture1D)
|
||||
0:34 Constant:
|
||||
0:34 2 (const int)
|
||||
0:? 'g_tex[2]' (uniform texture1D)
|
||||
0:35 Sequence
|
||||
0:35 move second child to first child (temp 4-element array of float)
|
||||
0:35 'local_float_array' (temp 4-element array of float)
|
||||
0:35 g_floats: direct index for structure (layout(offset=384 ) uniform 4-element array of float)
|
||||
0:35 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-element array of 3X3 matrix of float g_mats, layout(binding=10 offset=192 ) uniform 4-element array of 3X3 matrix of float g_mats_explicit, layout(offset=384 ) uniform 4-element array of float g_floats})
|
||||
0:35 Constant:
|
||||
0:35 2 (const uint)
|
||||
0:37 move second child to first child (temp 4-component vector of float)
|
||||
0:? 'color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:37 add (temp 4-component vector of float)
|
||||
0:37 Function Call: TestFn1( (temp 4-component vector of float)
|
||||
0:37 Function Call: TestFn2(t11[3];p1[3]; (temp 4-component vector of float)
|
||||
0:37 Comma (temp 3-element array of texture1D)
|
||||
0:37 Sequence
|
||||
0:37 move second child to first child (temp texture1D)
|
||||
0:37 direct index (temp texture1D)
|
||||
0:37 'aggShadow' (temp 3-element array of texture1D)
|
||||
0:37 Constant:
|
||||
0:37 0 (const int)
|
||||
0:? 'g_tex[0]' (uniform texture1D)
|
||||
0:37 move second child to first child (temp texture1D)
|
||||
0:37 direct index (temp texture1D)
|
||||
0:37 'aggShadow' (temp 3-element array of texture1D)
|
||||
0:37 Constant:
|
||||
0:37 1 (const int)
|
||||
0:? 'g_tex[1]' (uniform texture1D)
|
||||
0:37 move second child to first child (temp texture1D)
|
||||
0:37 direct index (temp texture1D)
|
||||
0:37 'aggShadow' (temp 3-element array of texture1D)
|
||||
0:37 Constant:
|
||||
0:37 2 (const int)
|
||||
0:? 'g_tex[2]' (uniform texture1D)
|
||||
0:37 'aggShadow' (temp 3-element array of texture1D)
|
||||
0:37 Comma (temp 3-element array of sampler)
|
||||
0:37 Sequence
|
||||
0:37 move second child to first child (temp sampler)
|
||||
0:37 direct index (temp sampler)
|
||||
0:37 'aggShadow' (temp 3-element array of sampler)
|
||||
0:37 Constant:
|
||||
0:37 0 (const int)
|
||||
0:? 'g_samp[0]' (uniform sampler)
|
||||
0:37 move second child to first child (temp sampler)
|
||||
0:37 direct index (temp sampler)
|
||||
0:37 'aggShadow' (temp 3-element array of sampler)
|
||||
0:37 Constant:
|
||||
0:37 1 (const int)
|
||||
0:? 'g_samp[1]' (uniform sampler)
|
||||
0:37 move second child to first child (temp sampler)
|
||||
0:37 direct index (temp sampler)
|
||||
0:37 'aggShadow' (temp 3-element array of sampler)
|
||||
0:37 Constant:
|
||||
0:37 2 (const int)
|
||||
0:? 'g_samp[2]' (uniform sampler)
|
||||
0:37 'aggShadow' (temp 3-element array of sampler)
|
||||
0:? Linker Objects
|
||||
0:? 'color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:? 'g_tex[0]' (uniform texture1D)
|
||||
0:? 'g_tex[1]' (uniform texture1D)
|
||||
0:? 'g_tex[2]' (uniform texture1D)
|
||||
0:? 'g_tex_explicit[0]' (layout(binding=1 ) uniform texture1D)
|
||||
0:? 'g_tex_explicit[1]' (layout(binding=2 ) uniform texture1D)
|
||||
0:? 'g_tex_explicit[2]' (layout(binding=3 ) uniform texture1D)
|
||||
0:? 'g_samp[0]' (uniform sampler)
|
||||
0:? 'g_samp[1]' (uniform sampler)
|
||||
0:? 'g_samp[2]' (uniform sampler)
|
||||
0:? 'g_samp_explicit[0]' (layout(binding=5 ) uniform sampler)
|
||||
0:? 'g_samp_explicit[1]' (layout(binding=6 ) uniform sampler)
|
||||
0:? 'g_samp_explicit[2]' (layout(binding=7 ) uniform sampler)
|
||||
0:? 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-element array of 3X3 matrix of float g_mats, layout(binding=10 offset=192 ) uniform 4-element array of 3X3 matrix of float g_mats_explicit, layout(offset=384 ) uniform 4-element array of float g_floats})
|
||||
0:? 'not_flattened_a' (global 5-element array of int)
|
||||
|
||||
|
||||
Linked fragment stage:
|
||||
|
||||
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:17 Function Definition: TestFn1( (temp 4-component vector of float)
|
||||
0:17 Function Parameters:
|
||||
0:? Sequence
|
||||
0:18 Branch: Return with expression
|
||||
0:18 texture (temp 4-component vector of float)
|
||||
0:18 Construct combined texture-sampler (temp sampler1D)
|
||||
0:? 'g_tex[1]' (uniform texture1D)
|
||||
0:? 'g_samp[1]' (uniform sampler)
|
||||
0:18 Constant:
|
||||
0:18 0.200000
|
||||
0:22 Function Definition: TestFn2(t11[3];p1[3]; (temp 4-component vector of float)
|
||||
0:22 Function Parameters:
|
||||
0:22 'l_tex' (in 3-element array of texture1D)
|
||||
0:22 'l_samp' (in 3-element array of sampler)
|
||||
0:? Sequence
|
||||
0:23 Branch: Return with expression
|
||||
0:23 texture (temp 4-component vector of float)
|
||||
0:23 Construct combined texture-sampler (temp sampler1D)
|
||||
0:23 direct index (temp texture1D)
|
||||
0:23 'l_tex' (in 3-element array of texture1D)
|
||||
0:23 Constant:
|
||||
0:23 2 (const int)
|
||||
0:23 direct index (temp sampler)
|
||||
0:23 'l_samp' (in 3-element array of sampler)
|
||||
0:23 Constant:
|
||||
0:23 2 (const int)
|
||||
0:23 Constant:
|
||||
0:23 0.200000
|
||||
0:26 Sequence
|
||||
0:26 move second child to first child (temp 5-element array of int)
|
||||
0:26 'not_flattened_a' (global 5-element array of int)
|
||||
0:26 Constant:
|
||||
0:26 1 (const int)
|
||||
0:26 2 (const int)
|
||||
0:26 3 (const int)
|
||||
0:26 4 (const int)
|
||||
0:26 5 (const int)
|
||||
0:31 Function Definition: main(struct-PS_OUTPUT-vf41; (temp void)
|
||||
0:31 Function Parameters:
|
||||
0:31 'ps_output' (out structure{temp 4-component vector of float color})
|
||||
0:? Sequence
|
||||
0:33 Sequence
|
||||
0:33 Sequence
|
||||
0:33 move second child to first child (temp sampler)
|
||||
0:33 direct index (temp sampler)
|
||||
0:33 'local_sampler_array' (temp 3-element array of sampler)
|
||||
0:33 Constant:
|
||||
0:33 0 (const int)
|
||||
0:? 'g_samp[0]' (uniform sampler)
|
||||
0:33 move second child to first child (temp sampler)
|
||||
0:33 direct index (temp sampler)
|
||||
0:33 'local_sampler_array' (temp 3-element array of sampler)
|
||||
0:33 Constant:
|
||||
0:33 1 (const int)
|
||||
0:? 'g_samp[1]' (uniform sampler)
|
||||
0:33 move second child to first child (temp sampler)
|
||||
0:33 direct index (temp sampler)
|
||||
0:33 'local_sampler_array' (temp 3-element array of sampler)
|
||||
0:33 Constant:
|
||||
0:33 2 (const int)
|
||||
0:? 'g_samp[2]' (uniform sampler)
|
||||
0:34 Sequence
|
||||
0:34 Sequence
|
||||
0:34 move second child to first child (temp texture1D)
|
||||
0:34 direct index (temp texture1D)
|
||||
0:34 'local_texture_array' (temp 3-element array of texture1D)
|
||||
0:34 Constant:
|
||||
0:34 0 (const int)
|
||||
0:? 'g_tex[0]' (uniform texture1D)
|
||||
0:34 move second child to first child (temp texture1D)
|
||||
0:34 direct index (temp texture1D)
|
||||
0:34 'local_texture_array' (temp 3-element array of texture1D)
|
||||
0:34 Constant:
|
||||
0:34 1 (const int)
|
||||
0:? 'g_tex[1]' (uniform texture1D)
|
||||
0:34 move second child to first child (temp texture1D)
|
||||
0:34 direct index (temp texture1D)
|
||||
0:34 'local_texture_array' (temp 3-element array of texture1D)
|
||||
0:34 Constant:
|
||||
0:34 2 (const int)
|
||||
0:? 'g_tex[2]' (uniform texture1D)
|
||||
0:35 Sequence
|
||||
0:35 move second child to first child (temp 4-element array of float)
|
||||
0:35 'local_float_array' (temp 4-element array of float)
|
||||
0:35 g_floats: direct index for structure (layout(offset=384 ) uniform 4-element array of float)
|
||||
0:35 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-element array of 3X3 matrix of float g_mats, layout(binding=10 offset=192 ) uniform 4-element array of 3X3 matrix of float g_mats_explicit, layout(offset=384 ) uniform 4-element array of float g_floats})
|
||||
0:35 Constant:
|
||||
0:35 2 (const uint)
|
||||
0:37 move second child to first child (temp 4-component vector of float)
|
||||
0:? 'color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:37 add (temp 4-component vector of float)
|
||||
0:37 Function Call: TestFn1( (temp 4-component vector of float)
|
||||
0:37 Function Call: TestFn2(t11[3];p1[3]; (temp 4-component vector of float)
|
||||
0:37 Comma (temp 3-element array of texture1D)
|
||||
0:37 Sequence
|
||||
0:37 move second child to first child (temp texture1D)
|
||||
0:37 direct index (temp texture1D)
|
||||
0:37 'aggShadow' (temp 3-element array of texture1D)
|
||||
0:37 Constant:
|
||||
0:37 0 (const int)
|
||||
0:? 'g_tex[0]' (uniform texture1D)
|
||||
0:37 move second child to first child (temp texture1D)
|
||||
0:37 direct index (temp texture1D)
|
||||
0:37 'aggShadow' (temp 3-element array of texture1D)
|
||||
0:37 Constant:
|
||||
0:37 1 (const int)
|
||||
0:? 'g_tex[1]' (uniform texture1D)
|
||||
0:37 move second child to first child (temp texture1D)
|
||||
0:37 direct index (temp texture1D)
|
||||
0:37 'aggShadow' (temp 3-element array of texture1D)
|
||||
0:37 Constant:
|
||||
0:37 2 (const int)
|
||||
0:? 'g_tex[2]' (uniform texture1D)
|
||||
0:37 'aggShadow' (temp 3-element array of texture1D)
|
||||
0:37 Comma (temp 3-element array of sampler)
|
||||
0:37 Sequence
|
||||
0:37 move second child to first child (temp sampler)
|
||||
0:37 direct index (temp sampler)
|
||||
0:37 'aggShadow' (temp 3-element array of sampler)
|
||||
0:37 Constant:
|
||||
0:37 0 (const int)
|
||||
0:? 'g_samp[0]' (uniform sampler)
|
||||
0:37 move second child to first child (temp sampler)
|
||||
0:37 direct index (temp sampler)
|
||||
0:37 'aggShadow' (temp 3-element array of sampler)
|
||||
0:37 Constant:
|
||||
0:37 1 (const int)
|
||||
0:? 'g_samp[1]' (uniform sampler)
|
||||
0:37 move second child to first child (temp sampler)
|
||||
0:37 direct index (temp sampler)
|
||||
0:37 'aggShadow' (temp 3-element array of sampler)
|
||||
0:37 Constant:
|
||||
0:37 2 (const int)
|
||||
0:? 'g_samp[2]' (uniform sampler)
|
||||
0:37 'aggShadow' (temp 3-element array of sampler)
|
||||
0:? Linker Objects
|
||||
0:? 'color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:? 'g_tex[0]' (uniform texture1D)
|
||||
0:? 'g_tex[1]' (uniform texture1D)
|
||||
0:? 'g_tex[2]' (uniform texture1D)
|
||||
0:? 'g_tex_explicit[0]' (layout(binding=1 ) uniform texture1D)
|
||||
0:? 'g_tex_explicit[1]' (layout(binding=2 ) uniform texture1D)
|
||||
0:? 'g_tex_explicit[2]' (layout(binding=3 ) uniform texture1D)
|
||||
0:? 'g_samp[0]' (uniform sampler)
|
||||
0:? 'g_samp[1]' (uniform sampler)
|
||||
0:? 'g_samp[2]' (uniform sampler)
|
||||
0:? 'g_samp_explicit[0]' (layout(binding=5 ) uniform sampler)
|
||||
0:? 'g_samp_explicit[1]' (layout(binding=6 ) uniform sampler)
|
||||
0:? 'g_samp_explicit[2]' (layout(binding=7 ) uniform sampler)
|
||||
0:? 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-element array of 3X3 matrix of float g_mats, layout(binding=10 offset=192 ) uniform 4-element array of 3X3 matrix of float g_mats_explicit, layout(offset=384 ) uniform 4-element array of float g_floats})
|
||||
0:? 'not_flattened_a' (global 5-element array of int)
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 123
|
||||
|
||||
Capability Shader
|
||||
Capability Sampled1D
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 99
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Name 4 "main"
|
||||
Name 9 "TestFn1("
|
||||
Name 22 "TestFn2(t11[3];p1[3];"
|
||||
Name 20 "l_tex"
|
||||
Name 21 "l_samp"
|
||||
Name 28 "not_flattened_a"
|
||||
Name 36 "g_tex[1]"
|
||||
Name 39 "g_samp[1]"
|
||||
Name 55 "local_sampler_array"
|
||||
Name 57 "g_samp[0]"
|
||||
Name 62 "g_samp[2]"
|
||||
Name 65 "local_texture_array"
|
||||
Name 66 "g_tex[0]"
|
||||
Name 71 "g_tex[2]"
|
||||
Name 77 "local_float_array"
|
||||
Name 83 "$Global"
|
||||
MemberName 83($Global) 0 "g_mats"
|
||||
MemberName 83($Global) 1 "g_mats_explicit"
|
||||
MemberName 83($Global) 2 "g_floats"
|
||||
Name 85 ""
|
||||
Name 99 "color"
|
||||
Name 101 "aggShadow"
|
||||
Name 108 "aggShadow"
|
||||
Name 117 "g_tex_explicit[0]"
|
||||
Name 118 "g_tex_explicit[1]"
|
||||
Name 119 "g_tex_explicit[2]"
|
||||
Name 120 "g_samp_explicit[0]"
|
||||
Name 121 "g_samp_explicit[1]"
|
||||
Name 122 "g_samp_explicit[2]"
|
||||
Decorate 36(g_tex[1]) DescriptorSet 0
|
||||
Decorate 39(g_samp[1]) DescriptorSet 0
|
||||
Decorate 57(g_samp[0]) DescriptorSet 0
|
||||
Decorate 62(g_samp[2]) DescriptorSet 0
|
||||
Decorate 66(g_tex[0]) DescriptorSet 0
|
||||
Decorate 71(g_tex[2]) DescriptorSet 0
|
||||
Decorate 80 ArrayStride 48
|
||||
Decorate 81 ArrayStride 48
|
||||
Decorate 82 ArrayStride 16
|
||||
MemberDecorate 83($Global) 0 RowMajor
|
||||
MemberDecorate 83($Global) 0 Offset 0
|
||||
MemberDecorate 83($Global) 0 MatrixStride 16
|
||||
MemberDecorate 83($Global) 1 RowMajor
|
||||
MemberDecorate 83($Global) 1 Offset 192
|
||||
MemberDecorate 83($Global) 1 MatrixStride 16
|
||||
MemberDecorate 83($Global) 2 Offset 384
|
||||
Decorate 83($Global) Block
|
||||
Decorate 85 DescriptorSet 0
|
||||
Decorate 99(color) Location 0
|
||||
Decorate 117(g_tex_explicit[0]) DescriptorSet 0
|
||||
Decorate 117(g_tex_explicit[0]) Binding 1
|
||||
Decorate 118(g_tex_explicit[1]) DescriptorSet 0
|
||||
Decorate 118(g_tex_explicit[1]) Binding 2
|
||||
Decorate 119(g_tex_explicit[2]) DescriptorSet 0
|
||||
Decorate 119(g_tex_explicit[2]) Binding 3
|
||||
Decorate 120(g_samp_explicit[0]) DescriptorSet 0
|
||||
Decorate 120(g_samp_explicit[0]) Binding 5
|
||||
Decorate 121(g_samp_explicit[1]) DescriptorSet 0
|
||||
Decorate 121(g_samp_explicit[1]) Binding 6
|
||||
Decorate 122(g_samp_explicit[2]) DescriptorSet 0
|
||||
Decorate 122(g_samp_explicit[2]) Binding 7
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
7: TypeVector 6(float) 4
|
||||
8: TypeFunction 7(fvec4)
|
||||
11: TypeImage 6(float) 1D sampled format:Unknown
|
||||
12: TypeInt 32 0
|
||||
13: 12(int) Constant 3
|
||||
14: TypeArray 11 13
|
||||
15: TypePointer UniformConstant 14
|
||||
16: TypeSampler
|
||||
17: TypeArray 16 13
|
||||
18: TypePointer UniformConstant 17
|
||||
19: TypeFunction 7(fvec4) 15(ptr) 18(ptr)
|
||||
24: TypeInt 32 1
|
||||
25: 12(int) Constant 5
|
||||
26: TypeArray 24(int) 25
|
||||
27: TypePointer Private 26
|
||||
28(not_flattened_a): 27(ptr) Variable Private
|
||||
29: 24(int) Constant 1
|
||||
30: 24(int) Constant 2
|
||||
31: 24(int) Constant 3
|
||||
32: 24(int) Constant 4
|
||||
33: 24(int) Constant 5
|
||||
34: 26 ConstantComposite 29 30 31 32 33
|
||||
35: TypePointer UniformConstant 11
|
||||
36(g_tex[1]): 35(ptr) Variable UniformConstant
|
||||
38: TypePointer UniformConstant 16
|
||||
39(g_samp[1]): 38(ptr) Variable UniformConstant
|
||||
41: TypeSampledImage 11
|
||||
43: 6(float) Constant 1045220557
|
||||
55(local_sampler_array): 18(ptr) Variable UniformConstant
|
||||
56: 24(int) Constant 0
|
||||
57(g_samp[0]): 38(ptr) Variable UniformConstant
|
||||
62(g_samp[2]): 38(ptr) Variable UniformConstant
|
||||
65(local_texture_array): 15(ptr) Variable UniformConstant
|
||||
66(g_tex[0]): 35(ptr) Variable UniformConstant
|
||||
71(g_tex[2]): 35(ptr) Variable UniformConstant
|
||||
74: 12(int) Constant 4
|
||||
75: TypeArray 6(float) 74
|
||||
76: TypePointer Function 75
|
||||
78: TypeVector 6(float) 3
|
||||
79: TypeMatrix 78(fvec3) 3
|
||||
80: TypeArray 79 74
|
||||
81: TypeArray 79 74
|
||||
82: TypeArray 6(float) 74
|
||||
83($Global): TypeStruct 80 81 82
|
||||
84: TypePointer Uniform 83($Global)
|
||||
85: 84(ptr) Variable Uniform
|
||||
86: TypePointer Uniform 82
|
||||
90: TypePointer Function 6(float)
|
||||
98: TypePointer Output 7(fvec4)
|
||||
99(color): 98(ptr) Variable Output
|
||||
101(aggShadow): 15(ptr) Variable UniformConstant
|
||||
108(aggShadow): 18(ptr) Variable UniformConstant
|
||||
117(g_tex_explicit[0]): 35(ptr) Variable UniformConstant
|
||||
118(g_tex_explicit[1]): 35(ptr) Variable UniformConstant
|
||||
119(g_tex_explicit[2]): 35(ptr) Variable UniformConstant
|
||||
120(g_samp_explicit[0]): 38(ptr) Variable UniformConstant
|
||||
121(g_samp_explicit[1]): 38(ptr) Variable UniformConstant
|
||||
122(g_samp_explicit[2]): 38(ptr) Variable UniformConstant
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
77(local_float_array): 76(ptr) Variable Function
|
||||
Store 28(not_flattened_a) 34
|
||||
58: 16 Load 57(g_samp[0])
|
||||
59: 38(ptr) AccessChain 55(local_sampler_array) 56
|
||||
Store 59 58
|
||||
60: 16 Load 39(g_samp[1])
|
||||
61: 38(ptr) AccessChain 55(local_sampler_array) 29
|
||||
Store 61 60
|
||||
63: 16 Load 62(g_samp[2])
|
||||
64: 38(ptr) AccessChain 55(local_sampler_array) 30
|
||||
Store 64 63
|
||||
67: 11 Load 66(g_tex[0])
|
||||
68: 35(ptr) AccessChain 65(local_texture_array) 56
|
||||
Store 68 67
|
||||
69: 11 Load 36(g_tex[1])
|
||||
70: 35(ptr) AccessChain 65(local_texture_array) 29
|
||||
Store 70 69
|
||||
72: 11 Load 71(g_tex[2])
|
||||
73: 35(ptr) AccessChain 65(local_texture_array) 30
|
||||
Store 73 72
|
||||
87: 86(ptr) AccessChain 85 30
|
||||
88: 82 Load 87
|
||||
89: 6(float) CompositeExtract 88 0
|
||||
91: 90(ptr) AccessChain 77(local_float_array) 56
|
||||
Store 91 89
|
||||
92: 6(float) CompositeExtract 88 1
|
||||
93: 90(ptr) AccessChain 77(local_float_array) 29
|
||||
Store 93 92
|
||||
94: 6(float) CompositeExtract 88 2
|
||||
95: 90(ptr) AccessChain 77(local_float_array) 30
|
||||
Store 95 94
|
||||
96: 6(float) CompositeExtract 88 3
|
||||
97: 90(ptr) AccessChain 77(local_float_array) 31
|
||||
Store 97 96
|
||||
100: 7(fvec4) FunctionCall 9(TestFn1()
|
||||
102: 11 Load 66(g_tex[0])
|
||||
103: 35(ptr) AccessChain 101(aggShadow) 56
|
||||
Store 103 102
|
||||
104: 11 Load 36(g_tex[1])
|
||||
105: 35(ptr) AccessChain 101(aggShadow) 29
|
||||
Store 105 104
|
||||
106: 11 Load 71(g_tex[2])
|
||||
107: 35(ptr) AccessChain 101(aggShadow) 30
|
||||
Store 107 106
|
||||
109: 16 Load 57(g_samp[0])
|
||||
110: 38(ptr) AccessChain 108(aggShadow) 56
|
||||
Store 110 109
|
||||
111: 16 Load 39(g_samp[1])
|
||||
112: 38(ptr) AccessChain 108(aggShadow) 29
|
||||
Store 112 111
|
||||
113: 16 Load 62(g_samp[2])
|
||||
114: 38(ptr) AccessChain 108(aggShadow) 30
|
||||
Store 114 113
|
||||
115: 7(fvec4) FunctionCall 22(TestFn2(t11[3];p1[3];) 101(aggShadow) 108(aggShadow)
|
||||
116: 7(fvec4) FAdd 100 115
|
||||
Store 99(color) 116
|
||||
Return
|
||||
FunctionEnd
|
||||
9(TestFn1(): 7(fvec4) Function None 8
|
||||
10: Label
|
||||
37: 11 Load 36(g_tex[1])
|
||||
40: 16 Load 39(g_samp[1])
|
||||
42: 41 SampledImage 37 40
|
||||
44: 7(fvec4) ImageSampleImplicitLod 42 43
|
||||
ReturnValue 44
|
||||
FunctionEnd
|
||||
22(TestFn2(t11[3];p1[3];): 7(fvec4) Function None 19
|
||||
20(l_tex): 15(ptr) FunctionParameter
|
||||
21(l_samp): 18(ptr) FunctionParameter
|
||||
23: Label
|
||||
47: 35(ptr) AccessChain 20(l_tex) 30
|
||||
48: 11 Load 47
|
||||
49: 38(ptr) AccessChain 21(l_samp) 30
|
||||
50: 16 Load 49
|
||||
51: 41 SampledImage 48 50
|
||||
52: 7(fvec4) ImageSampleImplicitLod 51 43
|
||||
ReturnValue 52
|
||||
FunctionEnd
|
@ -2,7 +2,7 @@ hlsl.array.frag
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:8 Function Definition: PixelShaderFunction(i1;vf4[3]; (global 4-component vector of float)
|
||||
0:8 Function Definition: PixelShaderFunction(i1;vf4[3]; (temp 4-component vector of float)
|
||||
0:8 Function Parameters:
|
||||
0:8 'i' (layout(location=0 ) in int)
|
||||
0:8 'input' (layout(location=1 ) in 3-element array of 4-component vector of float)
|
||||
@ -16,12 +16,18 @@ gl_FragCoord origin is upper left
|
||||
0:10 add (temp 4-component vector of float)
|
||||
0:10 add (temp 4-component vector of float)
|
||||
0:10 add (temp 4-component vector of float)
|
||||
0:10 direct index (temp 4-component vector of float)
|
||||
0:10 'a' (global 4-element array of 4-component vector of float)
|
||||
0:10 direct index (layout(offset=0 ) temp 4-component vector of float)
|
||||
0:10 a: direct index for structure (layout(offset=0 ) uniform 4-element array of 4-component vector of float)
|
||||
0:10 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-element array of 4-component vector of float a, layout(offset=64 ) uniform 11-element array of structure{temp 7-element array of 4-component vector of float m} s})
|
||||
0:10 Constant:
|
||||
0:10 0 (const uint)
|
||||
0:10 Constant:
|
||||
0:10 1 (const int)
|
||||
0:10 indirect index (temp 4-component vector of float)
|
||||
0:10 'a' (global 4-element array of 4-component vector of float)
|
||||
0:10 indirect index (layout(offset=0 ) temp 4-component vector of float)
|
||||
0:10 a: direct index for structure (layout(offset=0 ) uniform 4-element array of 4-component vector of float)
|
||||
0:10 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-element array of 4-component vector of float a, layout(offset=64 ) uniform 11-element array of structure{temp 7-element array of 4-component vector of float m} s})
|
||||
0:10 Constant:
|
||||
0:10 0 (const uint)
|
||||
0:10 'i' (layout(location=0 ) in int)
|
||||
0:10 direct index (layout(location=1 ) temp 4-component vector of float)
|
||||
0:10 'input' (layout(location=1 ) in 3-element array of 4-component vector of float)
|
||||
@ -39,19 +45,21 @@ gl_FragCoord origin is upper left
|
||||
0:10 'i' (layout(location=0 ) in int)
|
||||
0:10 indirect index (temp 4-component vector of float)
|
||||
0:10 m: direct index for structure (temp 7-element array of 4-component vector of float)
|
||||
0:10 indirect index (temp structure{temp 7-element array of 4-component vector of float m})
|
||||
0:10 's' (global 11-element array of structure{temp 7-element array of 4-component vector of float m})
|
||||
0:10 indirect index (layout(offset=64 ) temp structure{temp 7-element array of 4-component vector of float m})
|
||||
0:10 s: direct index for structure (layout(offset=64 ) uniform 11-element array of structure{temp 7-element array of 4-component vector of float m})
|
||||
0:10 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-element array of 4-component vector of float a, layout(offset=64 ) uniform 11-element array of structure{temp 7-element array of 4-component vector of float m} s})
|
||||
0:10 Constant:
|
||||
0:10 1 (const uint)
|
||||
0:10 'i' (layout(location=0 ) in int)
|
||||
0:10 Constant:
|
||||
0:10 0 (const int)
|
||||
0:10 'i' (layout(location=0 ) in int)
|
||||
0:10 Branch: Return
|
||||
0:? Linker Objects
|
||||
0:? 'a' (global 4-element array of 4-component vector of float)
|
||||
0:? 's' (global 11-element array of structure{temp 7-element array of 4-component vector of float m})
|
||||
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
|
||||
0:? 'i' (layout(location=0 ) in int)
|
||||
0:? 'input' (layout(location=1 ) in 3-element array of 4-component vector of float)
|
||||
0:? 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-element array of 4-component vector of float a, layout(offset=64 ) uniform 11-element array of structure{temp 7-element array of 4-component vector of float m} s})
|
||||
|
||||
|
||||
Linked fragment stage:
|
||||
@ -60,7 +68,7 @@ Linked fragment stage:
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:8 Function Definition: PixelShaderFunction(i1;vf4[3]; (global 4-component vector of float)
|
||||
0:8 Function Definition: PixelShaderFunction(i1;vf4[3]; (temp 4-component vector of float)
|
||||
0:8 Function Parameters:
|
||||
0:8 'i' (layout(location=0 ) in int)
|
||||
0:8 'input' (layout(location=1 ) in 3-element array of 4-component vector of float)
|
||||
@ -74,12 +82,18 @@ gl_FragCoord origin is upper left
|
||||
0:10 add (temp 4-component vector of float)
|
||||
0:10 add (temp 4-component vector of float)
|
||||
0:10 add (temp 4-component vector of float)
|
||||
0:10 direct index (temp 4-component vector of float)
|
||||
0:10 'a' (global 4-element array of 4-component vector of float)
|
||||
0:10 direct index (layout(offset=0 ) temp 4-component vector of float)
|
||||
0:10 a: direct index for structure (layout(offset=0 ) uniform 4-element array of 4-component vector of float)
|
||||
0:10 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-element array of 4-component vector of float a, layout(offset=64 ) uniform 11-element array of structure{temp 7-element array of 4-component vector of float m} s})
|
||||
0:10 Constant:
|
||||
0:10 0 (const uint)
|
||||
0:10 Constant:
|
||||
0:10 1 (const int)
|
||||
0:10 indirect index (temp 4-component vector of float)
|
||||
0:10 'a' (global 4-element array of 4-component vector of float)
|
||||
0:10 indirect index (layout(offset=0 ) temp 4-component vector of float)
|
||||
0:10 a: direct index for structure (layout(offset=0 ) uniform 4-element array of 4-component vector of float)
|
||||
0:10 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-element array of 4-component vector of float a, layout(offset=64 ) uniform 11-element array of structure{temp 7-element array of 4-component vector of float m} s})
|
||||
0:10 Constant:
|
||||
0:10 0 (const uint)
|
||||
0:10 'i' (layout(location=0 ) in int)
|
||||
0:10 direct index (layout(location=1 ) temp 4-component vector of float)
|
||||
0:10 'input' (layout(location=1 ) in 3-element array of 4-component vector of float)
|
||||
@ -97,41 +111,53 @@ gl_FragCoord origin is upper left
|
||||
0:10 'i' (layout(location=0 ) in int)
|
||||
0:10 indirect index (temp 4-component vector of float)
|
||||
0:10 m: direct index for structure (temp 7-element array of 4-component vector of float)
|
||||
0:10 indirect index (temp structure{temp 7-element array of 4-component vector of float m})
|
||||
0:10 's' (global 11-element array of structure{temp 7-element array of 4-component vector of float m})
|
||||
0:10 indirect index (layout(offset=64 ) temp structure{temp 7-element array of 4-component vector of float m})
|
||||
0:10 s: direct index for structure (layout(offset=64 ) uniform 11-element array of structure{temp 7-element array of 4-component vector of float m})
|
||||
0:10 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-element array of 4-component vector of float a, layout(offset=64 ) uniform 11-element array of structure{temp 7-element array of 4-component vector of float m} s})
|
||||
0:10 Constant:
|
||||
0:10 1 (const uint)
|
||||
0:10 'i' (layout(location=0 ) in int)
|
||||
0:10 Constant:
|
||||
0:10 0 (const int)
|
||||
0:10 'i' (layout(location=0 ) in int)
|
||||
0:10 Branch: Return
|
||||
0:? Linker Objects
|
||||
0:? 'a' (global 4-element array of 4-component vector of float)
|
||||
0:? 's' (global 11-element array of structure{temp 7-element array of 4-component vector of float m})
|
||||
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
|
||||
0:? 'i' (layout(location=0 ) in int)
|
||||
0:? 'input' (layout(location=1 ) in 3-element array of 4-component vector of float)
|
||||
0:? 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-element array of 4-component vector of float a, layout(offset=64 ) uniform 11-element array of structure{temp 7-element array of 4-component vector of float m} s})
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 66
|
||||
// Id's are bound by 65
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "PixelShaderFunction" 9 21 29
|
||||
EntryPoint Fragment 4 "PixelShaderFunction" 9 28 36
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Name 4 "PixelShaderFunction"
|
||||
Name 9 "@entryPointOutput"
|
||||
Name 14 "a"
|
||||
Name 21 "i"
|
||||
Name 29 "input"
|
||||
Name 42 "b"
|
||||
Name 54 ""
|
||||
MemberName 54 0 "m"
|
||||
Name 58 "s"
|
||||
Name 15 ""
|
||||
MemberName 15 0 "m"
|
||||
Name 18 "$Global"
|
||||
MemberName 18($Global) 0 "a"
|
||||
MemberName 18($Global) 1 "s"
|
||||
Name 20 ""
|
||||
Name 28 "i"
|
||||
Name 36 "input"
|
||||
Name 49 "b"
|
||||
Decorate 9(@entryPointOutput) Location 0
|
||||
Decorate 21(i) Location 0
|
||||
Decorate 29(input) Location 1
|
||||
Decorate 12 ArrayStride 16
|
||||
Decorate 14 ArrayStride 16
|
||||
MemberDecorate 15 0 Offset 0
|
||||
Decorate 17 ArrayStride 112
|
||||
MemberDecorate 18($Global) 0 Offset 0
|
||||
MemberDecorate 18($Global) 1 Offset 64
|
||||
Decorate 18($Global) Block
|
||||
Decorate 20 DescriptorSet 0
|
||||
Decorate 28(i) Location 0
|
||||
Decorate 36(input) Location 1
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@ -141,60 +167,59 @@ gl_FragCoord origin is upper left
|
||||
10: TypeInt 32 0
|
||||
11: 10(int) Constant 4
|
||||
12: TypeArray 7(fvec4) 11
|
||||
13: TypePointer Private 12
|
||||
14(a): 13(ptr) Variable Private
|
||||
15: TypeInt 32 1
|
||||
16: 15(int) Constant 1
|
||||
17: TypePointer Private 7(fvec4)
|
||||
20: TypePointer Input 15(int)
|
||||
21(i): 20(ptr) Variable Input
|
||||
26: 10(int) Constant 3
|
||||
27: TypeArray 7(fvec4) 26
|
||||
28: TypePointer Input 27
|
||||
29(input): 28(ptr) Variable Input
|
||||
30: 15(int) Constant 2
|
||||
31: TypePointer Input 7(fvec4)
|
||||
39: 10(int) Constant 10
|
||||
40: TypeArray 7(fvec4) 39
|
||||
41: TypePointer Function 40
|
||||
43: 15(int) Constant 5
|
||||
44: TypePointer Function 7(fvec4)
|
||||
52: 10(int) Constant 7
|
||||
53: TypeArray 7(fvec4) 52
|
||||
54: TypeStruct 53
|
||||
55: 10(int) Constant 11
|
||||
56: TypeArray 54(struct) 55
|
||||
57: TypePointer Private 56
|
||||
58(s): 57(ptr) Variable Private
|
||||
60: 15(int) Constant 0
|
||||
13: 10(int) Constant 7
|
||||
14: TypeArray 7(fvec4) 13
|
||||
15: TypeStruct 14
|
||||
16: 10(int) Constant 11
|
||||
17: TypeArray 15(struct) 16
|
||||
18($Global): TypeStruct 12 17
|
||||
19: TypePointer Uniform 18($Global)
|
||||
20: 19(ptr) Variable Uniform
|
||||
21: TypeInt 32 1
|
||||
22: 21(int) Constant 0
|
||||
23: 21(int) Constant 1
|
||||
24: TypePointer Uniform 7(fvec4)
|
||||
27: TypePointer Input 21(int)
|
||||
28(i): 27(ptr) Variable Input
|
||||
33: 10(int) Constant 3
|
||||
34: TypeArray 7(fvec4) 33
|
||||
35: TypePointer Input 34
|
||||
36(input): 35(ptr) Variable Input
|
||||
37: 21(int) Constant 2
|
||||
38: TypePointer Input 7(fvec4)
|
||||
46: 10(int) Constant 10
|
||||
47: TypeArray 7(fvec4) 46
|
||||
48: TypePointer Function 47
|
||||
50: 21(int) Constant 5
|
||||
51: TypePointer Function 7(fvec4)
|
||||
4(PixelShaderFunction): 2 Function None 3
|
||||
5: Label
|
||||
42(b): 41(ptr) Variable Function
|
||||
18: 17(ptr) AccessChain 14(a) 16
|
||||
19: 7(fvec4) Load 18
|
||||
22: 15(int) Load 21(i)
|
||||
23: 17(ptr) AccessChain 14(a) 22
|
||||
24: 7(fvec4) Load 23
|
||||
25: 7(fvec4) FAdd 19 24
|
||||
32: 31(ptr) AccessChain 29(input) 30
|
||||
33: 7(fvec4) Load 32
|
||||
34: 7(fvec4) FAdd 25 33
|
||||
35: 15(int) Load 21(i)
|
||||
36: 31(ptr) AccessChain 29(input) 35
|
||||
37: 7(fvec4) Load 36
|
||||
38: 7(fvec4) FAdd 34 37
|
||||
45: 44(ptr) AccessChain 42(b) 43
|
||||
46: 7(fvec4) Load 45
|
||||
47: 7(fvec4) FAdd 38 46
|
||||
48: 15(int) Load 21(i)
|
||||
49: 44(ptr) AccessChain 42(b) 48
|
||||
50: 7(fvec4) Load 49
|
||||
51: 7(fvec4) FAdd 47 50
|
||||
59: 15(int) Load 21(i)
|
||||
61: 15(int) Load 21(i)
|
||||
62: 17(ptr) AccessChain 58(s) 59 60 61
|
||||
63: 7(fvec4) Load 62
|
||||
64: 7(fvec4) FAdd 51 63
|
||||
Store 9(@entryPointOutput) 64
|
||||
49(b): 48(ptr) Variable Function
|
||||
25: 24(ptr) AccessChain 20 22 23
|
||||
26: 7(fvec4) Load 25
|
||||
29: 21(int) Load 28(i)
|
||||
30: 24(ptr) AccessChain 20 22 29
|
||||
31: 7(fvec4) Load 30
|
||||
32: 7(fvec4) FAdd 26 31
|
||||
39: 38(ptr) AccessChain 36(input) 37
|
||||
40: 7(fvec4) Load 39
|
||||
41: 7(fvec4) FAdd 32 40
|
||||
42: 21(int) Load 28(i)
|
||||
43: 38(ptr) AccessChain 36(input) 42
|
||||
44: 7(fvec4) Load 43
|
||||
45: 7(fvec4) FAdd 41 44
|
||||
52: 51(ptr) AccessChain 49(b) 50
|
||||
53: 7(fvec4) Load 52
|
||||
54: 7(fvec4) FAdd 45 53
|
||||
55: 21(int) Load 28(i)
|
||||
56: 51(ptr) AccessChain 49(b) 55
|
||||
57: 7(fvec4) Load 56
|
||||
58: 7(fvec4) FAdd 54 57
|
||||
59: 21(int) Load 28(i)
|
||||
60: 21(int) Load 28(i)
|
||||
61: 24(ptr) AccessChain 20 23 59 22 60
|
||||
62: 7(fvec4) Load 61
|
||||
63: 7(fvec4) FAdd 58 62
|
||||
Store 9(@entryPointOutput) 63
|
||||
Return
|
||||
FunctionEnd
|
||||
|
265
Test/baseResults/hlsl.array.implicit-size.frag.out
Normal file
265
Test/baseResults/hlsl.array.implicit-size.frag.out
Normal file
@ -0,0 +1,265 @@
|
||||
hlsl.array.implicit-size.frag
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:3 Sequence
|
||||
0:3 move second child to first child (temp 5-element array of float)
|
||||
0:3 'g_array' (global 5-element array of float)
|
||||
0:3 Constant:
|
||||
0:3 1.000000
|
||||
0:3 2.000000
|
||||
0:3 3.000000
|
||||
0:3 4.000000
|
||||
0:3 5.000000
|
||||
0:6 Sequence
|
||||
0:6 move second child to first child (temp 7-element array of float)
|
||||
0:6 'g_array_unused' (global 7-element array of float)
|
||||
0:6 Constant:
|
||||
0:6 1.000000
|
||||
0:6 2.000000
|
||||
0:6 3.000000
|
||||
0:6 4.000000
|
||||
0:6 5.000000
|
||||
0:6 6.000000
|
||||
0:6 7.000000
|
||||
0:12 Sequence
|
||||
0:12 move second child to first child (temp 2-element array of structure{temp int i, temp float f})
|
||||
0:12 'g_mystruct' (global 2-element array of structure{temp int i, temp float f})
|
||||
0:12 Constant:
|
||||
0:12 1 (const int)
|
||||
0:12 2.000000
|
||||
0:12 3 (const int)
|
||||
0:12 4.000000
|
||||
0:26 Function Definition: main(struct-PS_OUTPUT-vf41; (temp void)
|
||||
0:26 Function Parameters:
|
||||
0:26 'ps_output' (out structure{temp 4-component vector of float color})
|
||||
0:? Sequence
|
||||
0:28 Sequence
|
||||
0:28 move second child to first child (temp 3-element array of float)
|
||||
0:28 'l_array' (temp 3-element array of float)
|
||||
0:28 Constant:
|
||||
0:28 1.000000
|
||||
0:28 2.000000
|
||||
0:28 3.000000
|
||||
0:31 move second child to first child (temp 4-component vector of float)
|
||||
0:31 color: direct index for structure (temp 4-component vector of float)
|
||||
0:31 'ps_output' (out structure{temp 4-component vector of float color})
|
||||
0:31 Constant:
|
||||
0:31 0 (const int)
|
||||
0:31 Construct vec4 (temp 4-component vector of float)
|
||||
0:31 add (temp float)
|
||||
0:31 add (temp float)
|
||||
0:31 add (temp float)
|
||||
0:31 add (temp float)
|
||||
0:31 direct index (temp float)
|
||||
0:31 'g_array' (global 5-element array of float)
|
||||
0:31 Constant:
|
||||
0:31 0 (const int)
|
||||
0:31 direct index (temp float)
|
||||
0:31 'g_array' (global 5-element array of float)
|
||||
0:31 Constant:
|
||||
0:31 4 (const int)
|
||||
0:31 direct index (temp float)
|
||||
0:31 'l_array' (temp 3-element array of float)
|
||||
0:31 Constant:
|
||||
0:31 1 (const int)
|
||||
0:31 f: direct index for structure (temp float)
|
||||
0:31 direct index (temp structure{temp int i, temp float f})
|
||||
0:31 'g_mystruct' (global 2-element array of structure{temp int i, temp float f})
|
||||
0:31 Constant:
|
||||
0:31 0 (const int)
|
||||
0:31 Constant:
|
||||
0:31 1 (const int)
|
||||
0:31 indirect index (temp float)
|
||||
0:31 'g_array' (global 5-element array of float)
|
||||
0:31 'idx' (temp int)
|
||||
0:? Linker Objects
|
||||
0:? 'g_array' (global 5-element array of float)
|
||||
0:? 'g_array_unused' (global 7-element array of float)
|
||||
0:? 'g_mystruct' (global 2-element array of structure{temp int i, temp float f})
|
||||
|
||||
|
||||
Linked fragment stage:
|
||||
|
||||
WARNING: Linking fragment stage: Entry point not found
|
||||
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:3 Sequence
|
||||
0:3 move second child to first child (temp 5-element array of float)
|
||||
0:3 'g_array' (global 5-element array of float)
|
||||
0:3 Constant:
|
||||
0:3 1.000000
|
||||
0:3 2.000000
|
||||
0:3 3.000000
|
||||
0:3 4.000000
|
||||
0:3 5.000000
|
||||
0:6 Sequence
|
||||
0:6 move second child to first child (temp 7-element array of float)
|
||||
0:6 'g_array_unused' (global 7-element array of float)
|
||||
0:6 Constant:
|
||||
0:6 1.000000
|
||||
0:6 2.000000
|
||||
0:6 3.000000
|
||||
0:6 4.000000
|
||||
0:6 5.000000
|
||||
0:6 6.000000
|
||||
0:6 7.000000
|
||||
0:12 Sequence
|
||||
0:12 move second child to first child (temp 2-element array of structure{temp int i, temp float f})
|
||||
0:12 'g_mystruct' (global 2-element array of structure{temp int i, temp float f})
|
||||
0:12 Constant:
|
||||
0:12 1 (const int)
|
||||
0:12 2.000000
|
||||
0:12 3 (const int)
|
||||
0:12 4.000000
|
||||
0:26 Function Definition: main(struct-PS_OUTPUT-vf41; (temp void)
|
||||
0:26 Function Parameters:
|
||||
0:26 'ps_output' (out structure{temp 4-component vector of float color})
|
||||
0:? Sequence
|
||||
0:28 Sequence
|
||||
0:28 move second child to first child (temp 3-element array of float)
|
||||
0:28 'l_array' (temp 3-element array of float)
|
||||
0:28 Constant:
|
||||
0:28 1.000000
|
||||
0:28 2.000000
|
||||
0:28 3.000000
|
||||
0:31 move second child to first child (temp 4-component vector of float)
|
||||
0:31 color: direct index for structure (temp 4-component vector of float)
|
||||
0:31 'ps_output' (out structure{temp 4-component vector of float color})
|
||||
0:31 Constant:
|
||||
0:31 0 (const int)
|
||||
0:31 Construct vec4 (temp 4-component vector of float)
|
||||
0:31 add (temp float)
|
||||
0:31 add (temp float)
|
||||
0:31 add (temp float)
|
||||
0:31 add (temp float)
|
||||
0:31 direct index (temp float)
|
||||
0:31 'g_array' (global 5-element array of float)
|
||||
0:31 Constant:
|
||||
0:31 0 (const int)
|
||||
0:31 direct index (temp float)
|
||||
0:31 'g_array' (global 5-element array of float)
|
||||
0:31 Constant:
|
||||
0:31 4 (const int)
|
||||
0:31 direct index (temp float)
|
||||
0:31 'l_array' (temp 3-element array of float)
|
||||
0:31 Constant:
|
||||
0:31 1 (const int)
|
||||
0:31 f: direct index for structure (temp float)
|
||||
0:31 direct index (temp structure{temp int i, temp float f})
|
||||
0:31 'g_mystruct' (global 2-element array of structure{temp int i, temp float f})
|
||||
0:31 Constant:
|
||||
0:31 0 (const int)
|
||||
0:31 Constant:
|
||||
0:31 1 (const int)
|
||||
0:31 indirect index (temp float)
|
||||
0:31 'g_array' (global 5-element array of float)
|
||||
0:31 'idx' (temp int)
|
||||
0:? Linker Objects
|
||||
0:? 'g_array' (global 5-element array of float)
|
||||
0:? 'g_array_unused' (global 7-element array of float)
|
||||
0:? 'g_mystruct' (global 2-element array of structure{temp int i, temp float f})
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 72
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "PixelShaderFunction"
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Name 4 "PixelShaderFunction"
|
||||
Name 8 "PS_OUTPUT"
|
||||
MemberName 8(PS_OUTPUT) 0 "color"
|
||||
Name 12 "main(struct-PS_OUTPUT-vf41;"
|
||||
Name 11 "ps_output"
|
||||
Name 18 "g_array"
|
||||
Name 28 "g_array_unused"
|
||||
Name 33 "mystruct"
|
||||
MemberName 33(mystruct) 0 "i"
|
||||
MemberName 33(mystruct) 1 "f"
|
||||
Name 37 "g_mystruct"
|
||||
Name 46 "l_array"
|
||||
Name 64 "idx"
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
7: TypeVector 6(float) 4
|
||||
8(PS_OUTPUT): TypeStruct 7(fvec4)
|
||||
9: TypePointer Function 8(PS_OUTPUT)
|
||||
10: TypeFunction 2 9(ptr)
|
||||
14: TypeInt 32 0
|
||||
15: 14(int) Constant 5
|
||||
16: TypeArray 6(float) 15
|
||||
17: TypePointer Private 16
|
||||
18(g_array): 17(ptr) Variable Private
|
||||
19: 6(float) Constant 1065353216
|
||||
20: 6(float) Constant 1073741824
|
||||
21: 6(float) Constant 1077936128
|
||||
22: 6(float) Constant 1082130432
|
||||
23: 6(float) Constant 1084227584
|
||||
24: 16 ConstantComposite 19 20 21 22 23
|
||||
25: 14(int) Constant 7
|
||||
26: TypeArray 6(float) 25
|
||||
27: TypePointer Private 26
|
||||
28(g_array_unused): 27(ptr) Variable Private
|
||||
29: 6(float) Constant 1086324736
|
||||
30: 6(float) Constant 1088421888
|
||||
31: 26 ConstantComposite 19 20 21 22 23 29 30
|
||||
32: TypeInt 32 1
|
||||
33(mystruct): TypeStruct 32(int) 6(float)
|
||||
34: 14(int) Constant 2
|
||||
35: TypeArray 33(mystruct) 34
|
||||
36: TypePointer Private 35
|
||||
37(g_mystruct): 36(ptr) Variable Private
|
||||
38: 32(int) Constant 1
|
||||
39:33(mystruct) ConstantComposite 38 20
|
||||
40: 32(int) Constant 3
|
||||
41:33(mystruct) ConstantComposite 40 22
|
||||
42: 35 ConstantComposite 39 41
|
||||
43: 14(int) Constant 3
|
||||
44: TypeArray 6(float) 43
|
||||
45: TypePointer Function 44
|
||||
47: 44 ConstantComposite 19 20 21
|
||||
48: 32(int) Constant 0
|
||||
49: TypePointer Private 6(float)
|
||||
52: 32(int) Constant 4
|
||||
56: TypePointer Function 6(float)
|
||||
63: TypePointer Function 32(int)
|
||||
70: TypePointer Function 7(fvec4)
|
||||
4(PixelShaderFunction): 2 Function None 3
|
||||
5: Label
|
||||
Store 18(g_array) 24
|
||||
Store 28(g_array_unused) 31
|
||||
Store 37(g_mystruct) 42
|
||||
Return
|
||||
FunctionEnd
|
||||
12(main(struct-PS_OUTPUT-vf41;): 2 Function None 10
|
||||
11(ps_output): 9(ptr) FunctionParameter
|
||||
13: Label
|
||||
46(l_array): 45(ptr) Variable Function
|
||||
64(idx): 63(ptr) Variable Function
|
||||
Store 46(l_array) 47
|
||||
50: 49(ptr) AccessChain 18(g_array) 48
|
||||
51: 6(float) Load 50
|
||||
53: 49(ptr) AccessChain 18(g_array) 52
|
||||
54: 6(float) Load 53
|
||||
55: 6(float) FAdd 51 54
|
||||
57: 56(ptr) AccessChain 46(l_array) 38
|
||||
58: 6(float) Load 57
|
||||
59: 6(float) FAdd 55 58
|
||||
60: 49(ptr) AccessChain 37(g_mystruct) 48 38
|
||||
61: 6(float) Load 60
|
||||
62: 6(float) FAdd 59 61
|
||||
65: 32(int) Load 64(idx)
|
||||
66: 49(ptr) AccessChain 18(g_array) 65
|
||||
67: 6(float) Load 66
|
||||
68: 6(float) FAdd 62 67
|
||||
69: 7(fvec4) CompositeConstruct 68 68 68 68
|
||||
71: 70(ptr) AccessChain 11(ps_output) 48
|
||||
Store 71 69
|
||||
Return
|
||||
FunctionEnd
|
210
Test/baseResults/hlsl.array.multidim.frag.out
Normal file
210
Test/baseResults/hlsl.array.multidim.frag.out
Normal file
@ -0,0 +1,210 @@
|
||||
hlsl.array.multidim.frag
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:10 Function Definition: main( (temp structure{temp 4-component vector of float Color})
|
||||
0:10 Function Parameters:
|
||||
0:? Sequence
|
||||
0:14 move second child to first child (temp 4-component vector of float)
|
||||
0:14 direct index (temp 4-component vector of float)
|
||||
0:14 direct index (temp 3-element array of 4-component vector of float)
|
||||
0:14 'float4_array_1' (temp 2-element array of 3-element array of 4-component vector of float)
|
||||
0:14 Constant:
|
||||
0:14 1 (const int)
|
||||
0:14 Constant:
|
||||
0:14 2 (const int)
|
||||
0:14 Construct vec4 (temp 4-component vector of float)
|
||||
0:14 direct index (layout(offset=0 ) temp float)
|
||||
0:14 direct index (layout(offset=0 ) temp 3-element array of float)
|
||||
0:14 direct index (layout(offset=0 ) temp 4-element array of 3-element array of float)
|
||||
0:14 float_array: direct index for structure (layout(offset=0 ) uniform 5-element array of 4-element array of 3-element array of float)
|
||||
0:14 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 5-element array of 4-element array of 3-element array of float float_array})
|
||||
0:14 Constant:
|
||||
0:14 0 (const uint)
|
||||
0:14 Constant:
|
||||
0:14 2 (const int)
|
||||
0:14 Constant:
|
||||
0:14 3 (const int)
|
||||
0:14 Constant:
|
||||
0:14 1 (const int)
|
||||
0:15 move second child to first child (temp 3-element array of 4-component vector of float)
|
||||
0:15 direct index (temp 3-element array of 4-component vector of float)
|
||||
0:15 'float4_array_2' (temp 5-element array of 3-element array of 4-component vector of float)
|
||||
0:15 Constant:
|
||||
0:15 1 (const int)
|
||||
0:15 direct index (temp 3-element array of 4-component vector of float)
|
||||
0:15 'float4_array_1' (temp 2-element array of 3-element array of 4-component vector of float)
|
||||
0:15 Constant:
|
||||
0:15 0 (const int)
|
||||
0:18 move second child to first child (temp 4-component vector of float)
|
||||
0:18 Color: direct index for structure (temp 4-component vector of float)
|
||||
0:18 'psout' (temp structure{temp 4-component vector of float Color})
|
||||
0:18 Constant:
|
||||
0:18 0 (const int)
|
||||
0:18 direct index (temp 4-component vector of float)
|
||||
0:18 direct index (temp 3-element array of 4-component vector of float)
|
||||
0:18 'float4_array_1' (temp 2-element array of 3-element array of 4-component vector of float)
|
||||
0:18 Constant:
|
||||
0:18 1 (const int)
|
||||
0:18 Constant:
|
||||
0:18 2 (const int)
|
||||
0:19 Sequence
|
||||
0:19 Sequence
|
||||
0:19 move second child to first child (temp 4-component vector of float)
|
||||
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:19 Color: direct index for structure (temp 4-component vector of float)
|
||||
0:19 'psout' (temp structure{temp 4-component vector of float Color})
|
||||
0:19 Constant:
|
||||
0:19 0 (const int)
|
||||
0:19 Branch: Return
|
||||
0:? Linker Objects
|
||||
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:? 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 5-element array of 4-element array of 3-element array of float float_array})
|
||||
|
||||
|
||||
Linked fragment stage:
|
||||
|
||||
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:10 Function Definition: main( (temp structure{temp 4-component vector of float Color})
|
||||
0:10 Function Parameters:
|
||||
0:? Sequence
|
||||
0:14 move second child to first child (temp 4-component vector of float)
|
||||
0:14 direct index (temp 4-component vector of float)
|
||||
0:14 direct index (temp 3-element array of 4-component vector of float)
|
||||
0:14 'float4_array_1' (temp 2-element array of 3-element array of 4-component vector of float)
|
||||
0:14 Constant:
|
||||
0:14 1 (const int)
|
||||
0:14 Constant:
|
||||
0:14 2 (const int)
|
||||
0:14 Construct vec4 (temp 4-component vector of float)
|
||||
0:14 direct index (layout(offset=0 ) temp float)
|
||||
0:14 direct index (layout(offset=0 ) temp 3-element array of float)
|
||||
0:14 direct index (layout(offset=0 ) temp 4-element array of 3-element array of float)
|
||||
0:14 float_array: direct index for structure (layout(offset=0 ) uniform 5-element array of 4-element array of 3-element array of float)
|
||||
0:14 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 5-element array of 4-element array of 3-element array of float float_array})
|
||||
0:14 Constant:
|
||||
0:14 0 (const uint)
|
||||
0:14 Constant:
|
||||
0:14 2 (const int)
|
||||
0:14 Constant:
|
||||
0:14 3 (const int)
|
||||
0:14 Constant:
|
||||
0:14 1 (const int)
|
||||
0:15 move second child to first child (temp 3-element array of 4-component vector of float)
|
||||
0:15 direct index (temp 3-element array of 4-component vector of float)
|
||||
0:15 'float4_array_2' (temp 5-element array of 3-element array of 4-component vector of float)
|
||||
0:15 Constant:
|
||||
0:15 1 (const int)
|
||||
0:15 direct index (temp 3-element array of 4-component vector of float)
|
||||
0:15 'float4_array_1' (temp 2-element array of 3-element array of 4-component vector of float)
|
||||
0:15 Constant:
|
||||
0:15 0 (const int)
|
||||
0:18 move second child to first child (temp 4-component vector of float)
|
||||
0:18 Color: direct index for structure (temp 4-component vector of float)
|
||||
0:18 'psout' (temp structure{temp 4-component vector of float Color})
|
||||
0:18 Constant:
|
||||
0:18 0 (const int)
|
||||
0:18 direct index (temp 4-component vector of float)
|
||||
0:18 direct index (temp 3-element array of 4-component vector of float)
|
||||
0:18 'float4_array_1' (temp 2-element array of 3-element array of 4-component vector of float)
|
||||
0:18 Constant:
|
||||
0:18 1 (const int)
|
||||
0:18 Constant:
|
||||
0:18 2 (const int)
|
||||
0:19 Sequence
|
||||
0:19 Sequence
|
||||
0:19 move second child to first child (temp 4-component vector of float)
|
||||
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:19 Color: direct index for structure (temp 4-component vector of float)
|
||||
0:19 'psout' (temp structure{temp 4-component vector of float Color})
|
||||
0:19 Constant:
|
||||
0:19 0 (const int)
|
||||
0:19 Branch: Return
|
||||
0:? Linker Objects
|
||||
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:? 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 5-element array of 4-element array of 3-element array of float float_array})
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 52
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 48
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Name 4 "main"
|
||||
Name 14 "float4_array_1"
|
||||
Name 23 "$Global"
|
||||
MemberName 23($Global) 0 "float_array"
|
||||
Name 25 ""
|
||||
Name 36 "float4_array_2"
|
||||
Name 41 "PS_OUTPUT"
|
||||
MemberName 41(PS_OUTPUT) 0 "Color"
|
||||
Name 43 "psout"
|
||||
Name 48 "Color"
|
||||
Decorate 18 ArrayStride 16
|
||||
Decorate 20 ArrayStride 48
|
||||
Decorate 22 ArrayStride 192
|
||||
MemberDecorate 23($Global) 0 Offset 0
|
||||
Decorate 23($Global) Block
|
||||
Decorate 25 DescriptorSet 0
|
||||
Decorate 48(Color) Location 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
7: TypeVector 6(float) 4
|
||||
8: TypeInt 32 0
|
||||
9: 8(int) Constant 3
|
||||
10: TypeArray 7(fvec4) 9
|
||||
11: 8(int) Constant 2
|
||||
12: TypeArray 10 11
|
||||
13: TypePointer Function 12
|
||||
15: TypeInt 32 1
|
||||
16: 15(int) Constant 1
|
||||
17: 15(int) Constant 2
|
||||
18: TypeArray 6(float) 9
|
||||
19: 8(int) Constant 4
|
||||
20: TypeArray 18 19
|
||||
21: 8(int) Constant 5
|
||||
22: TypeArray 20 21
|
||||
23($Global): TypeStruct 22
|
||||
24: TypePointer Uniform 23($Global)
|
||||
25: 24(ptr) Variable Uniform
|
||||
26: 15(int) Constant 0
|
||||
27: 15(int) Constant 3
|
||||
28: TypePointer Uniform 6(float)
|
||||
32: TypePointer Function 7(fvec4)
|
||||
34: TypeArray 10 21
|
||||
35: TypePointer Function 34
|
||||
37: TypePointer Function 10
|
||||
41(PS_OUTPUT): TypeStruct 7(fvec4)
|
||||
42: TypePointer Function 41(PS_OUTPUT)
|
||||
47: TypePointer Output 7(fvec4)
|
||||
48(Color): 47(ptr) Variable Output
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
14(float4_array_1): 13(ptr) Variable Function
|
||||
36(float4_array_2): 35(ptr) Variable Function
|
||||
43(psout): 42(ptr) Variable Function
|
||||
29: 28(ptr) AccessChain 25 26 17 27 16
|
||||
30: 6(float) Load 29
|
||||
31: 7(fvec4) CompositeConstruct 30 30 30 30
|
||||
33: 32(ptr) AccessChain 14(float4_array_1) 16 17
|
||||
Store 33 31
|
||||
38: 37(ptr) AccessChain 14(float4_array_1) 26
|
||||
39: 10 Load 38
|
||||
40: 37(ptr) AccessChain 36(float4_array_2) 16
|
||||
Store 40 39
|
||||
44: 32(ptr) AccessChain 14(float4_array_1) 16 17
|
||||
45: 7(fvec4) Load 44
|
||||
46: 32(ptr) AccessChain 43(psout) 26
|
||||
Store 46 45
|
||||
49: 32(ptr) AccessChain 43(psout) 26
|
||||
50: 7(fvec4) Load 49
|
||||
Store 48(Color) 50
|
||||
Return
|
||||
FunctionEnd
|
@ -2,7 +2,7 @@ hlsl.assoc.frag
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:8 Function Definition: PixelShaderFunction(vf4;vf4;vf4;vf4;vf4; (global 4-component vector of float)
|
||||
0:8 Function Definition: PixelShaderFunction(vf4;vf4;vf4;vf4;vf4; (temp 4-component vector of float)
|
||||
0:8 Function Parameters:
|
||||
0:8 'a1' (layout(location=0 ) in 4-component vector of float)
|
||||
0:8 'a2' (layout(location=1 ) in 4-component vector of float)
|
||||
@ -47,7 +47,7 @@ Linked fragment stage:
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:8 Function Definition: PixelShaderFunction(vf4;vf4;vf4;vf4;vf4; (global 4-component vector of float)
|
||||
0:8 Function Definition: PixelShaderFunction(vf4;vf4;vf4;vf4;vf4; (temp 4-component vector of float)
|
||||
0:8 Function Parameters:
|
||||
0:8 'a1' (layout(location=0 ) in 4-component vector of float)
|
||||
0:8 'a2' (layout(location=1 ) in 4-component vector of float)
|
||||
|
138
Test/baseResults/hlsl.attribute.expression.comp.out
Normal file
138
Test/baseResults/hlsl.attribute.expression.comp.out
Normal file
@ -0,0 +1,138 @@
|
||||
hlsl.attribute.expression.comp
|
||||
Shader version: 450
|
||||
local_size = (4, 6, 8)
|
||||
0:? Sequence
|
||||
0:9 Function Definition: main( (temp 4-component vector of float)
|
||||
0:9 Function Parameters:
|
||||
0:? Sequence
|
||||
0:11 Sequence
|
||||
0:11 move second child to first child (temp int)
|
||||
0:11 'x' (temp int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Loop with condition tested first
|
||||
0:11 Loop Condition
|
||||
0:11 Compare Less Than (temp bool)
|
||||
0:11 'x' (temp int)
|
||||
0:11 bound: direct index for structure (layout(offset=0 ) uniform int)
|
||||
0:11 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int bound})
|
||||
0:11 Constant:
|
||||
0:11 0 (const uint)
|
||||
0:11 No loop body
|
||||
0:11 Loop Terminal Expression
|
||||
0:11 Pre-Increment (temp int)
|
||||
0:11 'x' (temp int)
|
||||
0:14 Sequence
|
||||
0:14 move second child to first child (temp 4-component vector of float)
|
||||
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
|
||||
0:? Constant:
|
||||
0:? 0.000000
|
||||
0:? 0.000000
|
||||
0:? 0.000000
|
||||
0:? 0.000000
|
||||
0:14 Branch: Return
|
||||
0:? Linker Objects
|
||||
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
|
||||
0:? 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int bound})
|
||||
|
||||
|
||||
Linked compute stage:
|
||||
|
||||
|
||||
Shader version: 450
|
||||
local_size = (4, 6, 8)
|
||||
0:? Sequence
|
||||
0:9 Function Definition: main( (temp 4-component vector of float)
|
||||
0:9 Function Parameters:
|
||||
0:? Sequence
|
||||
0:11 Sequence
|
||||
0:11 move second child to first child (temp int)
|
||||
0:11 'x' (temp int)
|
||||
0:11 Constant:
|
||||
0:11 0 (const int)
|
||||
0:11 Loop with condition tested first
|
||||
0:11 Loop Condition
|
||||
0:11 Compare Less Than (temp bool)
|
||||
0:11 'x' (temp int)
|
||||
0:11 bound: direct index for structure (layout(offset=0 ) uniform int)
|
||||
0:11 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int bound})
|
||||
0:11 Constant:
|
||||
0:11 0 (const uint)
|
||||
0:11 No loop body
|
||||
0:11 Loop Terminal Expression
|
||||
0:11 Pre-Increment (temp int)
|
||||
0:11 'x' (temp int)
|
||||
0:14 Sequence
|
||||
0:14 move second child to first child (temp 4-component vector of float)
|
||||
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
|
||||
0:? Constant:
|
||||
0:? 0.000000
|
||||
0:? 0.000000
|
||||
0:? 0.000000
|
||||
0:? 0.000000
|
||||
0:14 Branch: Return
|
||||
0:? Linker Objects
|
||||
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
|
||||
0:? 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int bound})
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 34
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint GLCompute 4 "main" 30
|
||||
ExecutionMode 4 LocalSize 4 6 8
|
||||
Name 4 "main"
|
||||
Name 8 "x"
|
||||
Name 16 "$Global"
|
||||
MemberName 16($Global) 0 "bound"
|
||||
Name 18 ""
|
||||
Name 30 "@entryPointOutput"
|
||||
MemberDecorate 16($Global) 0 Offset 0
|
||||
Decorate 16($Global) Block
|
||||
Decorate 18 DescriptorSet 0
|
||||
Decorate 30(@entryPointOutput) Location 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 1
|
||||
7: TypePointer Function 6(int)
|
||||
9: 6(int) Constant 0
|
||||
16($Global): TypeStruct 6(int)
|
||||
17: TypePointer Uniform 16($Global)
|
||||
18: 17(ptr) Variable Uniform
|
||||
19: TypePointer Uniform 6(int)
|
||||
22: TypeBool
|
||||
25: 6(int) Constant 1
|
||||
27: TypeFloat 32
|
||||
28: TypeVector 27(float) 4
|
||||
29: TypePointer Output 28(fvec4)
|
||||
30(@entryPointOutput): 29(ptr) Variable Output
|
||||
31: 27(float) Constant 0
|
||||
32: 28(fvec4) ConstantComposite 31 31 31 31
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
8(x): 7(ptr) Variable Function
|
||||
Store 8(x) 9
|
||||
Branch 10
|
||||
10: Label
|
||||
LoopMerge 12 13 None
|
||||
Branch 14
|
||||
14: Label
|
||||
15: 6(int) Load 8(x)
|
||||
20: 19(ptr) AccessChain 18 9
|
||||
21: 6(int) Load 20
|
||||
23: 22(bool) SLessThan 15 21
|
||||
BranchConditional 23 11 12
|
||||
11: Label
|
||||
Branch 13
|
||||
13: Label
|
||||
24: 6(int) Load 8(x)
|
||||
26: 6(int) IAdd 24 25
|
||||
Store 8(x) 26
|
||||
Branch 10
|
||||
12: Label
|
||||
Store 30(@entryPointOutput) 32
|
||||
Return
|
||||
FunctionEnd
|
@ -2,7 +2,7 @@ hlsl.attribute.frag
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:2 Function Definition: PixelShaderFunction(vf4; (global void)
|
||||
0:2 Function Definition: PixelShaderFunction(vf4; (temp void)
|
||||
0:2 Function Parameters:
|
||||
0:2 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:? Sequence
|
||||
@ -21,7 +21,7 @@ Linked fragment stage:
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:2 Function Definition: PixelShaderFunction(vf4; (global void)
|
||||
0:2 Function Definition: PixelShaderFunction(vf4; (temp void)
|
||||
0:2 Function Parameters:
|
||||
0:2 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:? Sequence
|
||||
|
58
Test/baseResults/hlsl.basic.comp.out
Executable file
58
Test/baseResults/hlsl.basic.comp.out
Executable file
@ -0,0 +1,58 @@
|
||||
hlsl.basic.comp
|
||||
Shader version: 450
|
||||
local_size = (1, 1, 1)
|
||||
0:? Sequence
|
||||
0:4 Function Definition: main(i1; (temp void)
|
||||
0:4 Function Parameters:
|
||||
0:4 'dti' (in int LocalInvocationID)
|
||||
0:? Sequence
|
||||
0:5 'dti' (in int LocalInvocationID)
|
||||
0:? Linker Objects
|
||||
0:? 'dti' (in int LocalInvocationID)
|
||||
0:? 'a' (shared 100-element array of 4-component vector of float)
|
||||
|
||||
|
||||
Linked compute stage:
|
||||
|
||||
|
||||
Shader version: 450
|
||||
local_size = (1, 1, 1)
|
||||
0:? Sequence
|
||||
0:4 Function Definition: main(i1; (temp void)
|
||||
0:4 Function Parameters:
|
||||
0:4 'dti' (in int LocalInvocationID)
|
||||
0:? Sequence
|
||||
0:5 'dti' (in int LocalInvocationID)
|
||||
0:? Linker Objects
|
||||
0:? 'dti' (in int LocalInvocationID)
|
||||
0:? 'a' (shared 100-element array of 4-component vector of float)
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 16
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint GLCompute 4 "main" 8
|
||||
ExecutionMode 4 LocalSize 1 1 1
|
||||
Name 4 "main"
|
||||
Name 8 "dti"
|
||||
Name 15 "a"
|
||||
Decorate 8(dti) BuiltIn LocalInvocationId
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 1
|
||||
7: TypePointer Input 6(int)
|
||||
8(dti): 7(ptr) Variable Input
|
||||
9: TypeFloat 32
|
||||
10: TypeVector 9(float) 4
|
||||
11: TypeInt 32 0
|
||||
12: 11(int) Constant 100
|
||||
13: TypeArray 10(fvec4) 12
|
||||
14: TypePointer Workgroup 13
|
||||
15(a): 14(ptr) Variable Workgroup
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
Return
|
||||
FunctionEnd
|
201
Test/baseResults/hlsl.basic.geom.out
Normal file
201
Test/baseResults/hlsl.basic.geom.out
Normal file
@ -0,0 +1,201 @@
|
||||
hlsl.basic.geom
|
||||
Shader version: 450
|
||||
invocations = -1
|
||||
max_vertices = 4
|
||||
input primitive = triangles
|
||||
output primitive = line_strip
|
||||
0:? Sequence
|
||||
0:16 Function Definition: main(u1[3];u1[3];struct-PSInput-f1-i11; (temp void)
|
||||
0:16 Function Parameters:
|
||||
0:16 'VertexID' (layout(location=0 ) in 3-element array of uint)
|
||||
0:16 'test' (layout(location=3 ) in 3-element array of uint)
|
||||
0:16 'OutputStream' (out structure{temp float myfloat, temp int something})
|
||||
0:? Sequence
|
||||
0:19 move second child to first child (temp float)
|
||||
0:19 myfloat: direct index for structure (temp float)
|
||||
0:19 'Vert' (temp structure{temp float myfloat, temp int something})
|
||||
0:19 Constant:
|
||||
0:19 0 (const int)
|
||||
0:19 Convert uint to float (temp float)
|
||||
0:19 add (temp uint)
|
||||
0:19 add (temp uint)
|
||||
0:19 direct index (layout(location=3 ) temp uint)
|
||||
0:19 'test' (layout(location=3 ) in 3-element array of uint)
|
||||
0:19 Constant:
|
||||
0:19 0 (const int)
|
||||
0:19 direct index (layout(location=3 ) temp uint)
|
||||
0:19 'test' (layout(location=3 ) in 3-element array of uint)
|
||||
0:19 Constant:
|
||||
0:19 1 (const int)
|
||||
0:19 direct index (layout(location=3 ) temp uint)
|
||||
0:19 'test' (layout(location=3 ) in 3-element array of uint)
|
||||
0:19 Constant:
|
||||
0:19 2 (const int)
|
||||
0:20 move second child to first child (temp int)
|
||||
0:20 something: direct index for structure (temp int)
|
||||
0:20 'Vert' (temp structure{temp float myfloat, temp int something})
|
||||
0:20 Constant:
|
||||
0:20 1 (const int)
|
||||
0:20 Convert uint to int (temp int)
|
||||
0:20 direct index (layout(location=0 ) temp uint)
|
||||
0:20 'VertexID' (layout(location=0 ) in 3-element array of uint)
|
||||
0:20 Constant:
|
||||
0:20 0 (const int)
|
||||
0:22 Sequence
|
||||
0:22 move second child to first child (temp structure{temp float myfloat, temp int something})
|
||||
0:22 'OutputStream' (out structure{temp float myfloat, temp int something})
|
||||
0:22 'Vert' (temp structure{temp float myfloat, temp int something})
|
||||
0:22 EmitVertex (temp void)
|
||||
0:23 Sequence
|
||||
0:23 move second child to first child (temp structure{temp float myfloat, temp int something})
|
||||
0:23 'OutputStream' (out structure{temp float myfloat, temp int something})
|
||||
0:23 'Vert' (temp structure{temp float myfloat, temp int something})
|
||||
0:23 EmitVertex (temp void)
|
||||
0:24 EndPrimitive (temp void)
|
||||
0:? Linker Objects
|
||||
0:? 'VertexID' (layout(location=0 ) in 3-element array of uint)
|
||||
0:? 'test' (layout(location=3 ) in 3-element array of uint)
|
||||
0:? 'myfloat' (layout(location=0 ) out float)
|
||||
0:? 'something' (layout(location=1 ) out int)
|
||||
|
||||
|
||||
Linked geometry stage:
|
||||
|
||||
|
||||
Shader version: 450
|
||||
invocations = 1
|
||||
max_vertices = 4
|
||||
input primitive = triangles
|
||||
output primitive = line_strip
|
||||
0:? Sequence
|
||||
0:16 Function Definition: main(u1[3];u1[3];struct-PSInput-f1-i11; (temp void)
|
||||
0:16 Function Parameters:
|
||||
0:16 'VertexID' (layout(location=0 ) in 3-element array of uint)
|
||||
0:16 'test' (layout(location=3 ) in 3-element array of uint)
|
||||
0:16 'OutputStream' (out structure{temp float myfloat, temp int something})
|
||||
0:? Sequence
|
||||
0:19 move second child to first child (temp float)
|
||||
0:19 myfloat: direct index for structure (temp float)
|
||||
0:19 'Vert' (temp structure{temp float myfloat, temp int something})
|
||||
0:19 Constant:
|
||||
0:19 0 (const int)
|
||||
0:19 Convert uint to float (temp float)
|
||||
0:19 add (temp uint)
|
||||
0:19 add (temp uint)
|
||||
0:19 direct index (layout(location=3 ) temp uint)
|
||||
0:19 'test' (layout(location=3 ) in 3-element array of uint)
|
||||
0:19 Constant:
|
||||
0:19 0 (const int)
|
||||
0:19 direct index (layout(location=3 ) temp uint)
|
||||
0:19 'test' (layout(location=3 ) in 3-element array of uint)
|
||||
0:19 Constant:
|
||||
0:19 1 (const int)
|
||||
0:19 direct index (layout(location=3 ) temp uint)
|
||||
0:19 'test' (layout(location=3 ) in 3-element array of uint)
|
||||
0:19 Constant:
|
||||
0:19 2 (const int)
|
||||
0:20 move second child to first child (temp int)
|
||||
0:20 something: direct index for structure (temp int)
|
||||
0:20 'Vert' (temp structure{temp float myfloat, temp int something})
|
||||
0:20 Constant:
|
||||
0:20 1 (const int)
|
||||
0:20 Convert uint to int (temp int)
|
||||
0:20 direct index (layout(location=0 ) temp uint)
|
||||
0:20 'VertexID' (layout(location=0 ) in 3-element array of uint)
|
||||
0:20 Constant:
|
||||
0:20 0 (const int)
|
||||
0:22 Sequence
|
||||
0:22 move second child to first child (temp structure{temp float myfloat, temp int something})
|
||||
0:22 'OutputStream' (out structure{temp float myfloat, temp int something})
|
||||
0:22 'Vert' (temp structure{temp float myfloat, temp int something})
|
||||
0:22 EmitVertex (temp void)
|
||||
0:23 Sequence
|
||||
0:23 move second child to first child (temp structure{temp float myfloat, temp int something})
|
||||
0:23 'OutputStream' (out structure{temp float myfloat, temp int something})
|
||||
0:23 'Vert' (temp structure{temp float myfloat, temp int something})
|
||||
0:23 EmitVertex (temp void)
|
||||
0:24 EndPrimitive (temp void)
|
||||
0:? Linker Objects
|
||||
0:? 'VertexID' (layout(location=0 ) in 3-element array of uint)
|
||||
0:? 'test' (layout(location=3 ) in 3-element array of uint)
|
||||
0:? 'myfloat' (layout(location=0 ) out float)
|
||||
0:? 'something' (layout(location=1 ) out int)
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 45
|
||||
|
||||
Capability Geometry
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Geometry 4 "main" 16 31 38 42 44
|
||||
ExecutionMode 4 Triangles
|
||||
ExecutionMode 4 Invocations 1
|
||||
ExecutionMode 4 OutputLineStrip
|
||||
ExecutionMode 4 OutputVertices 4
|
||||
Name 4 "main"
|
||||
Name 8 "PSInput"
|
||||
MemberName 8(PSInput) 0 "myfloat"
|
||||
MemberName 8(PSInput) 1 "something"
|
||||
Name 10 "Vert"
|
||||
Name 16 "test"
|
||||
Name 31 "VertexID"
|
||||
Name 38 "OutputStream"
|
||||
Name 42 "myfloat"
|
||||
Name 44 "something"
|
||||
Decorate 16(test) Location 3
|
||||
Decorate 31(VertexID) Location 0
|
||||
Decorate 42(myfloat) Location 0
|
||||
Decorate 44(something) Location 1
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
7: TypeInt 32 1
|
||||
8(PSInput): TypeStruct 6(float) 7(int)
|
||||
9: TypePointer Function 8(PSInput)
|
||||
11: 7(int) Constant 0
|
||||
12: TypeInt 32 0
|
||||
13: 12(int) Constant 3
|
||||
14: TypeArray 12(int) 13
|
||||
15: TypePointer Input 14
|
||||
16(test): 15(ptr) Variable Input
|
||||
17: TypePointer Input 12(int)
|
||||
20: 7(int) Constant 1
|
||||
24: 7(int) Constant 2
|
||||
29: TypePointer Function 6(float)
|
||||
31(VertexID): 15(ptr) Variable Input
|
||||
35: TypePointer Function 7(int)
|
||||
37: TypePointer Output 8(PSInput)
|
||||
38(OutputStream): 37(ptr) Variable Output
|
||||
41: TypePointer Output 6(float)
|
||||
42(myfloat): 41(ptr) Variable Output
|
||||
43: TypePointer Output 7(int)
|
||||
44(something): 43(ptr) Variable Output
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
10(Vert): 9(ptr) Variable Function
|
||||
18: 17(ptr) AccessChain 16(test) 11
|
||||
19: 12(int) Load 18
|
||||
21: 17(ptr) AccessChain 16(test) 20
|
||||
22: 12(int) Load 21
|
||||
23: 12(int) IAdd 19 22
|
||||
25: 17(ptr) AccessChain 16(test) 24
|
||||
26: 12(int) Load 25
|
||||
27: 12(int) IAdd 23 26
|
||||
28: 6(float) ConvertUToF 27
|
||||
30: 29(ptr) AccessChain 10(Vert) 11
|
||||
Store 30 28
|
||||
32: 17(ptr) AccessChain 31(VertexID) 11
|
||||
33: 12(int) Load 32
|
||||
34: 7(int) Bitcast 33
|
||||
36: 35(ptr) AccessChain 10(Vert) 20
|
||||
Store 36 34
|
||||
39: 8(PSInput) Load 10(Vert)
|
||||
Store 38(OutputStream) 39
|
||||
EmitVertex
|
||||
40: 8(PSInput) Load 10(Vert)
|
||||
Store 38(OutputStream) 40
|
||||
EmitVertex
|
||||
EndPrimitive
|
||||
Return
|
||||
FunctionEnd
|
@ -2,42 +2,42 @@ hlsl.buffer.frag
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:26 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float)
|
||||
0:26 Function Parameters:
|
||||
0:26 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:30 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float)
|
||||
0:30 Function Parameters:
|
||||
0:30 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:? Sequence
|
||||
0:27 Sequence
|
||||
0:27 move second child to first child (temp 4-component vector of float)
|
||||
0:31 Sequence
|
||||
0:31 move second child to first child (temp 4-component vector of float)
|
||||
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
|
||||
0:27 add (temp 4-component vector of float)
|
||||
0:27 add (temp 4-component vector of float)
|
||||
0:27 add (temp 4-component vector of float)
|
||||
0:27 add (temp 4-component vector of float)
|
||||
0:27 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:27 v1: direct index for structure (layout(column_major std140 ) uniform 4-component vector of float)
|
||||
0:27 'anon@0' (layout(column_major std140 ) uniform block{layout(column_major std140 ) uniform 4-component vector of float v1})
|
||||
0:27 Constant:
|
||||
0:27 0 (const uint)
|
||||
0:27 v2: direct index for structure (layout(column_major std430 ) buffer 4-component vector of float)
|
||||
0:27 'anon@1' (layout(column_major std430 ) buffer block{layout(column_major std430 ) buffer 4-component vector of float v2})
|
||||
0:27 Constant:
|
||||
0:27 0 (const uint)
|
||||
0:27 v3: direct index for structure (layout(column_major std140 ) uniform 4-component vector of float)
|
||||
0:27 'anon@2' (layout(set=10 binding=2 column_major std140 ) uniform block{layout(column_major std140 ) uniform 4-component vector of float v3, layout(column_major std140 offset=20 ) uniform int i3})
|
||||
0:27 Constant:
|
||||
0:27 0 (const uint)
|
||||
0:27 v4: direct index for structure (layout(column_major std430 offset=16 ) buffer 4-component vector of float)
|
||||
0:27 'anon@3' (layout(binding=8 column_major std430 ) buffer block{layout(column_major std430 offset=16 ) buffer 4-component vector of float v4, layout(column_major std430 offset=48 ) buffer int i4, layout(column_major std430 offset=60 ) buffer float f1, layout(column_major std430 offset=64 ) buffer float f3, layout(column_major std430 offset=68 ) buffer float f4, layout(column_major std430 offset=72 ) buffer float f5, layout(column_major std430 ) buffer float f6, layout(column_major std430 ) buffer float f7})
|
||||
0:27 Constant:
|
||||
0:27 0 (const uint)
|
||||
0:27 Branch: Return
|
||||
0:31 add (temp 4-component vector of float)
|
||||
0:31 add (temp 4-component vector of float)
|
||||
0:31 add (temp 4-component vector of float)
|
||||
0:31 add (temp 4-component vector of float)
|
||||
0:31 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:31 v1: direct index for structure (layout(row_major std140 ) uniform 4-component vector of float)
|
||||
0:31 'anon@0' (layout(row_major std140 ) uniform block{layout(row_major std140 ) uniform 4-component vector of float v1})
|
||||
0:31 Constant:
|
||||
0:31 0 (const uint)
|
||||
0:31 v2: direct index for structure (layout(row_major std430 ) buffer 4-component vector of float)
|
||||
0:31 'anon@1' (layout(row_major std430 ) buffer block{layout(row_major std430 ) buffer 4-component vector of float v2})
|
||||
0:31 Constant:
|
||||
0:31 0 (const uint)
|
||||
0:31 v3: direct index for structure (layout(row_major std140 ) uniform 4-component vector of float)
|
||||
0:31 'anon@2' (layout(set=10 binding=2 row_major std140 ) uniform block{layout(row_major std140 ) uniform 4-component vector of float v3, layout(row_major std140 offset=20 ) uniform int i3})
|
||||
0:31 Constant:
|
||||
0:31 0 (const uint)
|
||||
0:31 v4: direct index for structure (layout(row_major std430 offset=16 ) buffer 4-component vector of float)
|
||||
0:31 'anon@3' (layout(binding=8 row_major std430 ) buffer block{layout(row_major std430 offset=16 ) buffer 4-component vector of float v4, layout(row_major std430 offset=48 ) buffer int i4, layout(row_major std430 offset=60 ) buffer float f1, layout(row_major std430 offset=64 ) buffer float f3, layout(row_major std430 offset=68 ) buffer float f4, layout(row_major std430 offset=72 ) buffer float f5, layout(row_major std430 ) buffer float f6, layout(row_major std430 ) buffer float f7, layout(row_major std430 ) buffer 3X4 matrix of float m1, layout(column_major std430 ) buffer 3X4 matrix of float m2, layout(row_major std430 ) buffer 3X4 matrix of float m3, ...})
|
||||
0:31 Constant:
|
||||
0:31 0 (const uint)
|
||||
0:31 Branch: Return
|
||||
0:? Linker Objects
|
||||
0:? 'anon@0' (layout(column_major std140 ) uniform block{layout(column_major std140 ) uniform 4-component vector of float v1})
|
||||
0:? 'anon@1' (layout(column_major std430 ) buffer block{layout(column_major std430 ) buffer 4-component vector of float v2})
|
||||
0:? 'anon@2' (layout(set=10 binding=2 column_major std140 ) uniform block{layout(column_major std140 ) uniform 4-component vector of float v3, layout(column_major std140 offset=20 ) uniform int i3})
|
||||
0:? 'anon@3' (layout(binding=8 column_major std430 ) buffer block{layout(column_major std430 offset=16 ) buffer 4-component vector of float v4, layout(column_major std430 offset=48 ) buffer int i4, layout(column_major std430 offset=60 ) buffer float f1, layout(column_major std430 offset=64 ) buffer float f3, layout(column_major std430 offset=68 ) buffer float f4, layout(column_major std430 offset=72 ) buffer float f5, layout(column_major std430 ) buffer float f6, layout(column_major std430 ) buffer float f7})
|
||||
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
|
||||
0:? 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:? 'anon@0' (layout(row_major std140 ) uniform block{layout(row_major std140 ) uniform 4-component vector of float v1})
|
||||
0:? 'anon@1' (layout(row_major std430 ) buffer block{layout(row_major std430 ) buffer 4-component vector of float v2})
|
||||
0:? 'anon@2' (layout(set=10 binding=2 row_major std140 ) uniform block{layout(row_major std140 ) uniform 4-component vector of float v3, layout(row_major std140 offset=20 ) uniform int i3})
|
||||
0:? 'anon@3' (layout(binding=8 row_major std430 ) buffer block{layout(row_major std430 offset=16 ) buffer 4-component vector of float v4, layout(row_major std430 offset=48 ) buffer int i4, layout(row_major std430 offset=60 ) buffer float f1, layout(row_major std430 offset=64 ) buffer float f3, layout(row_major std430 offset=68 ) buffer float f4, layout(row_major std430 offset=72 ) buffer float f5, layout(row_major std430 ) buffer float f6, layout(row_major std430 ) buffer float f7, layout(row_major std430 ) buffer 3X4 matrix of float m1, layout(column_major std430 ) buffer 3X4 matrix of float m2, layout(row_major std430 ) buffer 3X4 matrix of float m3, ...})
|
||||
|
||||
|
||||
Linked fragment stage:
|
||||
@ -46,46 +46,46 @@ Linked fragment stage:
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:26 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float)
|
||||
0:26 Function Parameters:
|
||||
0:26 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:30 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float)
|
||||
0:30 Function Parameters:
|
||||
0:30 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:? Sequence
|
||||
0:27 Sequence
|
||||
0:27 move second child to first child (temp 4-component vector of float)
|
||||
0:31 Sequence
|
||||
0:31 move second child to first child (temp 4-component vector of float)
|
||||
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
|
||||
0:27 add (temp 4-component vector of float)
|
||||
0:27 add (temp 4-component vector of float)
|
||||
0:27 add (temp 4-component vector of float)
|
||||
0:27 add (temp 4-component vector of float)
|
||||
0:27 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:27 v1: direct index for structure (layout(column_major std140 ) uniform 4-component vector of float)
|
||||
0:27 'anon@0' (layout(column_major std140 ) uniform block{layout(column_major std140 ) uniform 4-component vector of float v1})
|
||||
0:27 Constant:
|
||||
0:27 0 (const uint)
|
||||
0:27 v2: direct index for structure (layout(column_major std430 ) buffer 4-component vector of float)
|
||||
0:27 'anon@1' (layout(column_major std430 ) buffer block{layout(column_major std430 ) buffer 4-component vector of float v2})
|
||||
0:27 Constant:
|
||||
0:27 0 (const uint)
|
||||
0:27 v3: direct index for structure (layout(column_major std140 ) uniform 4-component vector of float)
|
||||
0:27 'anon@2' (layout(set=10 binding=2 column_major std140 ) uniform block{layout(column_major std140 ) uniform 4-component vector of float v3, layout(column_major std140 offset=20 ) uniform int i3})
|
||||
0:27 Constant:
|
||||
0:27 0 (const uint)
|
||||
0:27 v4: direct index for structure (layout(column_major std430 offset=16 ) buffer 4-component vector of float)
|
||||
0:27 'anon@3' (layout(binding=8 column_major std430 ) buffer block{layout(column_major std430 offset=16 ) buffer 4-component vector of float v4, layout(column_major std430 offset=48 ) buffer int i4, layout(column_major std430 offset=60 ) buffer float f1, layout(column_major std430 offset=64 ) buffer float f3, layout(column_major std430 offset=68 ) buffer float f4, layout(column_major std430 offset=72 ) buffer float f5, layout(column_major std430 ) buffer float f6, layout(column_major std430 ) buffer float f7})
|
||||
0:27 Constant:
|
||||
0:27 0 (const uint)
|
||||
0:27 Branch: Return
|
||||
0:31 add (temp 4-component vector of float)
|
||||
0:31 add (temp 4-component vector of float)
|
||||
0:31 add (temp 4-component vector of float)
|
||||
0:31 add (temp 4-component vector of float)
|
||||
0:31 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:31 v1: direct index for structure (layout(row_major std140 ) uniform 4-component vector of float)
|
||||
0:31 'anon@0' (layout(row_major std140 ) uniform block{layout(row_major std140 ) uniform 4-component vector of float v1})
|
||||
0:31 Constant:
|
||||
0:31 0 (const uint)
|
||||
0:31 v2: direct index for structure (layout(row_major std430 ) buffer 4-component vector of float)
|
||||
0:31 'anon@1' (layout(row_major std430 ) buffer block{layout(row_major std430 ) buffer 4-component vector of float v2})
|
||||
0:31 Constant:
|
||||
0:31 0 (const uint)
|
||||
0:31 v3: direct index for structure (layout(row_major std140 ) uniform 4-component vector of float)
|
||||
0:31 'anon@2' (layout(set=10 binding=2 row_major std140 ) uniform block{layout(row_major std140 ) uniform 4-component vector of float v3, layout(row_major std140 offset=20 ) uniform int i3})
|
||||
0:31 Constant:
|
||||
0:31 0 (const uint)
|
||||
0:31 v4: direct index for structure (layout(row_major std430 offset=16 ) buffer 4-component vector of float)
|
||||
0:31 'anon@3' (layout(binding=8 row_major std430 ) buffer block{layout(row_major std430 offset=16 ) buffer 4-component vector of float v4, layout(row_major std430 offset=48 ) buffer int i4, layout(row_major std430 offset=60 ) buffer float f1, layout(row_major std430 offset=64 ) buffer float f3, layout(row_major std430 offset=68 ) buffer float f4, layout(row_major std430 offset=72 ) buffer float f5, layout(row_major std430 ) buffer float f6, layout(row_major std430 ) buffer float f7, layout(row_major std430 ) buffer 3X4 matrix of float m1, layout(column_major std430 ) buffer 3X4 matrix of float m2, layout(row_major std430 ) buffer 3X4 matrix of float m3, ...})
|
||||
0:31 Constant:
|
||||
0:31 0 (const uint)
|
||||
0:31 Branch: Return
|
||||
0:? Linker Objects
|
||||
0:? 'anon@0' (layout(column_major std140 ) uniform block{layout(column_major std140 ) uniform 4-component vector of float v1})
|
||||
0:? 'anon@1' (layout(column_major std430 ) buffer block{layout(column_major std430 ) buffer 4-component vector of float v2})
|
||||
0:? 'anon@2' (layout(set=10 binding=2 column_major std140 ) uniform block{layout(column_major std140 ) uniform 4-component vector of float v3, layout(column_major std140 offset=20 ) uniform int i3})
|
||||
0:? 'anon@3' (layout(binding=8 column_major std430 ) buffer block{layout(column_major std430 offset=16 ) buffer 4-component vector of float v4, layout(column_major std430 offset=48 ) buffer int i4, layout(column_major std430 offset=60 ) buffer float f1, layout(column_major std430 offset=64 ) buffer float f3, layout(column_major std430 offset=68 ) buffer float f4, layout(column_major std430 offset=72 ) buffer float f5, layout(column_major std430 ) buffer float f6, layout(column_major std430 ) buffer float f7})
|
||||
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
|
||||
0:? 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:? 'anon@0' (layout(row_major std140 ) uniform block{layout(row_major std140 ) uniform 4-component vector of float v1})
|
||||
0:? 'anon@1' (layout(row_major std430 ) buffer block{layout(row_major std430 ) buffer 4-component vector of float v2})
|
||||
0:? 'anon@2' (layout(set=10 binding=2 row_major std140 ) uniform block{layout(row_major std140 ) uniform 4-component vector of float v3, layout(row_major std140 offset=20 ) uniform int i3})
|
||||
0:? 'anon@3' (layout(binding=8 row_major std430 ) buffer block{layout(row_major std430 offset=16 ) buffer 4-component vector of float v4, layout(row_major std430 offset=48 ) buffer int i4, layout(row_major std430 offset=60 ) buffer float f1, layout(row_major std430 offset=64 ) buffer float f3, layout(row_major std430 offset=68 ) buffer float f4, layout(row_major std430 offset=72 ) buffer float f5, layout(row_major std430 ) buffer float f6, layout(row_major std430 ) buffer float f7, layout(row_major std430 ) buffer 3X4 matrix of float m1, layout(column_major std430 ) buffer 3X4 matrix of float m2, layout(row_major std430 ) buffer 3X4 matrix of float m3, ...})
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 41
|
||||
// Id's are bound by 42
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
@ -101,20 +101,24 @@ gl_FragCoord origin is upper left
|
||||
Name 22 ""
|
||||
MemberName 22 0 "v2"
|
||||
Name 24 ""
|
||||
Name 28 ""
|
||||
MemberName 28 0 "v3"
|
||||
MemberName 28 1 "i3"
|
||||
Name 28 "cbufName"
|
||||
MemberName 28(cbufName) 0 "v3"
|
||||
MemberName 28(cbufName) 1 "i3"
|
||||
Name 30 ""
|
||||
Name 34 ""
|
||||
MemberName 34 0 "v4"
|
||||
MemberName 34 1 "i4"
|
||||
MemberName 34 2 "f1"
|
||||
MemberName 34 3 "f3"
|
||||
MemberName 34 4 "f4"
|
||||
MemberName 34 5 "f5"
|
||||
MemberName 34 6 "f6"
|
||||
MemberName 34 7 "f7"
|
||||
Name 36 ""
|
||||
Name 35 "tbufName"
|
||||
MemberName 35(tbufName) 0 "v4"
|
||||
MemberName 35(tbufName) 1 "i4"
|
||||
MemberName 35(tbufName) 2 "f1"
|
||||
MemberName 35(tbufName) 3 "f3"
|
||||
MemberName 35(tbufName) 4 "f4"
|
||||
MemberName 35(tbufName) 5 "f5"
|
||||
MemberName 35(tbufName) 6 "f6"
|
||||
MemberName 35(tbufName) 7 "f7"
|
||||
MemberName 35(tbufName) 8 "m1"
|
||||
MemberName 35(tbufName) 9 "m2"
|
||||
MemberName 35(tbufName) 10 "m3"
|
||||
MemberName 35(tbufName) 11 "m4"
|
||||
Name 37 ""
|
||||
Decorate 9(@entryPointOutput) Location 0
|
||||
Decorate 11(input) Location 0
|
||||
MemberDecorate 13 0 Offset 0
|
||||
@ -123,22 +127,34 @@ gl_FragCoord origin is upper left
|
||||
MemberDecorate 22 0 Offset 0
|
||||
Decorate 22 BufferBlock
|
||||
Decorate 24 DescriptorSet 0
|
||||
MemberDecorate 28 0 Offset 0
|
||||
MemberDecorate 28 1 Offset 20
|
||||
Decorate 28 Block
|
||||
MemberDecorate 28(cbufName) 0 Offset 0
|
||||
MemberDecorate 28(cbufName) 1 Offset 20
|
||||
Decorate 28(cbufName) Block
|
||||
Decorate 30 DescriptorSet 10
|
||||
Decorate 30 Binding 2
|
||||
MemberDecorate 34 0 Offset 16
|
||||
MemberDecorate 34 1 Offset 48
|
||||
MemberDecorate 34 2 Offset 60
|
||||
MemberDecorate 34 3 Offset 64
|
||||
MemberDecorate 34 4 Offset 68
|
||||
MemberDecorate 34 5 Offset 72
|
||||
MemberDecorate 34 6 Offset 76
|
||||
MemberDecorate 34 7 Offset 80
|
||||
Decorate 34 BufferBlock
|
||||
Decorate 36 DescriptorSet 0
|
||||
Decorate 36 Binding 8
|
||||
MemberDecorate 35(tbufName) 0 Offset 16
|
||||
MemberDecorate 35(tbufName) 1 Offset 48
|
||||
MemberDecorate 35(tbufName) 2 Offset 60
|
||||
MemberDecorate 35(tbufName) 3 Offset 64
|
||||
MemberDecorate 35(tbufName) 4 Offset 68
|
||||
MemberDecorate 35(tbufName) 5 Offset 72
|
||||
MemberDecorate 35(tbufName) 6 Offset 76
|
||||
MemberDecorate 35(tbufName) 7 Offset 80
|
||||
MemberDecorate 35(tbufName) 8 RowMajor
|
||||
MemberDecorate 35(tbufName) 8 Offset 96
|
||||
MemberDecorate 35(tbufName) 8 MatrixStride 16
|
||||
MemberDecorate 35(tbufName) 9 ColMajor
|
||||
MemberDecorate 35(tbufName) 9 Offset 160
|
||||
MemberDecorate 35(tbufName) 9 MatrixStride 16
|
||||
MemberDecorate 35(tbufName) 10 RowMajor
|
||||
MemberDecorate 35(tbufName) 10 Offset 208
|
||||
MemberDecorate 35(tbufName) 10 MatrixStride 16
|
||||
MemberDecorate 35(tbufName) 11 RowMajor
|
||||
MemberDecorate 35(tbufName) 11 Offset 272
|
||||
MemberDecorate 35(tbufName) 11 MatrixStride 16
|
||||
Decorate 35(tbufName) BufferBlock
|
||||
Decorate 37 DescriptorSet 0
|
||||
Decorate 37 Binding 8
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@ -156,12 +172,13 @@ gl_FragCoord origin is upper left
|
||||
22: TypeStruct 7(fvec4)
|
||||
23: TypePointer Uniform 22(struct)
|
||||
24: 23(ptr) Variable Uniform
|
||||
28: TypeStruct 7(fvec4) 16(int)
|
||||
29: TypePointer Uniform 28(struct)
|
||||
28(cbufName): TypeStruct 7(fvec4) 16(int)
|
||||
29: TypePointer Uniform 28(cbufName)
|
||||
30: 29(ptr) Variable Uniform
|
||||
34: TypeStruct 7(fvec4) 16(int) 6(float) 6(float) 6(float) 6(float) 6(float) 6(float)
|
||||
35: TypePointer Uniform 34(struct)
|
||||
36: 35(ptr) Variable Uniform
|
||||
34: TypeMatrix 7(fvec4) 3
|
||||
35(tbufName): TypeStruct 7(fvec4) 16(int) 6(float) 6(float) 6(float) 6(float) 6(float) 6(float) 34 34 34 34
|
||||
36: TypePointer Uniform 35(tbufName)
|
||||
37: 36(ptr) Variable Uniform
|
||||
4(PixelShaderFunction): 2 Function None 3
|
||||
5: Label
|
||||
12: 7(fvec4) Load 11(input)
|
||||
@ -174,9 +191,9 @@ gl_FragCoord origin is upper left
|
||||
31: 18(ptr) AccessChain 30 17
|
||||
32: 7(fvec4) Load 31
|
||||
33: 7(fvec4) FAdd 27 32
|
||||
37: 18(ptr) AccessChain 36 17
|
||||
38: 7(fvec4) Load 37
|
||||
39: 7(fvec4) FAdd 33 38
|
||||
Store 9(@entryPointOutput) 39
|
||||
38: 18(ptr) AccessChain 37 17
|
||||
39: 7(fvec4) Load 38
|
||||
40: 7(fvec4) FAdd 33 39
|
||||
Store 9(@entryPointOutput) 40
|
||||
Return
|
||||
FunctionEnd
|
||||
|
@ -2,7 +2,7 @@ hlsl.calculatelod.dx10.frag
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:24 Function Definition: main( (global structure{temp 4-component vector of float Color, temp float Depth})
|
||||
0:24 Function Definition: main( (temp structure{temp 4-component vector of float Color, temp float Depth})
|
||||
0:24 Function Parameters:
|
||||
0:? Sequence
|
||||
0:28 Sequence
|
||||
@ -139,8 +139,8 @@ gl_FragCoord origin is upper left
|
||||
0:41 1 (const int)
|
||||
0:41 Constant:
|
||||
0:41 1.000000
|
||||
0:? Sequence
|
||||
0:? Sequence
|
||||
0:43 Sequence
|
||||
0:43 Sequence
|
||||
0:43 move second child to first child (temp 4-component vector of float)
|
||||
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:43 Color: direct index for structure (temp 4-component vector of float)
|
||||
@ -155,6 +155,8 @@ gl_FragCoord origin is upper left
|
||||
0:43 1 (const int)
|
||||
0:43 Branch: Return
|
||||
0:? Linker Objects
|
||||
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:? 'Depth' (out float FragDepth)
|
||||
0:? 'g_sSamp' (layout(binding=0 ) uniform sampler)
|
||||
0:? 'g_tTex1df4a' (layout(binding=1 ) uniform texture1DArray)
|
||||
0:? 'g_tTex1df4' (layout(binding=0 ) uniform texture1DArray)
|
||||
@ -166,8 +168,6 @@ gl_FragCoord origin is upper left
|
||||
0:? 'g_tTexcdf4a' (uniform textureCubeArray)
|
||||
0:? 'g_tTexcdi4a' (uniform itextureCubeArray)
|
||||
0:? 'g_tTexcdu4a' (uniform utextureCubeArray)
|
||||
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:? 'Depth' (out float FragDepth)
|
||||
|
||||
|
||||
Linked fragment stage:
|
||||
@ -176,7 +176,7 @@ Linked fragment stage:
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:24 Function Definition: main( (global structure{temp 4-component vector of float Color, temp float Depth})
|
||||
0:24 Function Definition: main( (temp structure{temp 4-component vector of float Color, temp float Depth})
|
||||
0:24 Function Parameters:
|
||||
0:? Sequence
|
||||
0:28 Sequence
|
||||
@ -313,8 +313,8 @@ gl_FragCoord origin is upper left
|
||||
0:41 1 (const int)
|
||||
0:41 Constant:
|
||||
0:41 1.000000
|
||||
0:? Sequence
|
||||
0:? Sequence
|
||||
0:43 Sequence
|
||||
0:43 Sequence
|
||||
0:43 move second child to first child (temp 4-component vector of float)
|
||||
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:43 Color: direct index for structure (temp 4-component vector of float)
|
||||
@ -329,6 +329,8 @@ gl_FragCoord origin is upper left
|
||||
0:43 1 (const int)
|
||||
0:43 Branch: Return
|
||||
0:? Linker Objects
|
||||
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:? 'Depth' (out float FragDepth)
|
||||
0:? 'g_sSamp' (layout(binding=0 ) uniform sampler)
|
||||
0:? 'g_tTex1df4a' (layout(binding=1 ) uniform texture1DArray)
|
||||
0:? 'g_tTex1df4' (layout(binding=0 ) uniform texture1DArray)
|
||||
@ -340,12 +342,10 @@ gl_FragCoord origin is upper left
|
||||
0:? 'g_tTexcdf4a' (uniform textureCubeArray)
|
||||
0:? 'g_tTexcdi4a' (uniform itextureCubeArray)
|
||||
0:? 'g_tTexcdu4a' (uniform utextureCubeArray)
|
||||
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:? 'Depth' (out float FragDepth)
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 150
|
||||
// Id's are bound by 141
|
||||
|
||||
Capability Shader
|
||||
Capability Sampled1D
|
||||
@ -353,51 +353,51 @@ gl_FragCoord origin is upper left
|
||||
Capability ImageQuery
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 141 145
|
||||
EntryPoint Fragment 4 "main" 132 136
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Name 4 "main"
|
||||
Name 8 "txval10"
|
||||
Name 11 "g_tTex1df4a"
|
||||
Name 15 "g_sSamp"
|
||||
Name 26 "txval11"
|
||||
Name 29 "g_tTex1di4a"
|
||||
Name 38 "txval12"
|
||||
Name 42 "g_tTex1du4a"
|
||||
Name 51 "txval20"
|
||||
Name 54 "g_tTex2df4a"
|
||||
Name 63 "txval21"
|
||||
Name 66 "g_tTex2di4a"
|
||||
Name 76 "txval22"
|
||||
Name 79 "g_tTex2du4a"
|
||||
Name 90 "txval40"
|
||||
Name 93 "g_tTexcdf4a"
|
||||
Name 103 "txval41"
|
||||
Name 106 "g_tTexcdi4a"
|
||||
Name 115 "txval42"
|
||||
Name 118 "g_tTexcdu4a"
|
||||
Name 131 "PS_OUTPUT"
|
||||
MemberName 131(PS_OUTPUT) 0 "Color"
|
||||
MemberName 131(PS_OUTPUT) 1 "Depth"
|
||||
Name 133 "psout"
|
||||
Name 141 "Color"
|
||||
Name 145 "Depth"
|
||||
Name 149 "g_tTex1df4"
|
||||
Name 25 "txval11"
|
||||
Name 28 "g_tTex1di4a"
|
||||
Name 36 "txval12"
|
||||
Name 40 "g_tTex1du4a"
|
||||
Name 48 "txval20"
|
||||
Name 51 "g_tTex2df4a"
|
||||
Name 59 "txval21"
|
||||
Name 62 "g_tTex2di4a"
|
||||
Name 71 "txval22"
|
||||
Name 74 "g_tTex2du4a"
|
||||
Name 84 "txval40"
|
||||
Name 87 "g_tTexcdf4a"
|
||||
Name 96 "txval41"
|
||||
Name 99 "g_tTexcdi4a"
|
||||
Name 107 "txval42"
|
||||
Name 110 "g_tTexcdu4a"
|
||||
Name 122 "PS_OUTPUT"
|
||||
MemberName 122(PS_OUTPUT) 0 "Color"
|
||||
MemberName 122(PS_OUTPUT) 1 "Depth"
|
||||
Name 124 "psout"
|
||||
Name 132 "Color"
|
||||
Name 136 "Depth"
|
||||
Name 140 "g_tTex1df4"
|
||||
Decorate 11(g_tTex1df4a) DescriptorSet 0
|
||||
Decorate 11(g_tTex1df4a) Binding 1
|
||||
Decorate 15(g_sSamp) DescriptorSet 0
|
||||
Decorate 15(g_sSamp) Binding 0
|
||||
Decorate 29(g_tTex1di4a) DescriptorSet 0
|
||||
Decorate 42(g_tTex1du4a) DescriptorSet 0
|
||||
Decorate 54(g_tTex2df4a) DescriptorSet 0
|
||||
Decorate 66(g_tTex2di4a) DescriptorSet 0
|
||||
Decorate 79(g_tTex2du4a) DescriptorSet 0
|
||||
Decorate 93(g_tTexcdf4a) DescriptorSet 0
|
||||
Decorate 106(g_tTexcdi4a) DescriptorSet 0
|
||||
Decorate 118(g_tTexcdu4a) DescriptorSet 0
|
||||
Decorate 141(Color) Location 0
|
||||
Decorate 145(Depth) BuiltIn FragDepth
|
||||
Decorate 149(g_tTex1df4) DescriptorSet 0
|
||||
Decorate 149(g_tTex1df4) Binding 0
|
||||
Decorate 28(g_tTex1di4a) DescriptorSet 0
|
||||
Decorate 40(g_tTex1du4a) DescriptorSet 0
|
||||
Decorate 51(g_tTex2df4a) DescriptorSet 0
|
||||
Decorate 62(g_tTex2di4a) DescriptorSet 0
|
||||
Decorate 74(g_tTex2du4a) DescriptorSet 0
|
||||
Decorate 87(g_tTexcdf4a) DescriptorSet 0
|
||||
Decorate 99(g_tTexcdi4a) DescriptorSet 0
|
||||
Decorate 110(g_tTexcdu4a) DescriptorSet 0
|
||||
Decorate 132(Color) Location 0
|
||||
Decorate 136(Depth) BuiltIn FragDepth
|
||||
Decorate 140(g_tTex1df4) DescriptorSet 0
|
||||
Decorate 140(g_tTex1df4) Binding 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@ -410,153 +410,144 @@ gl_FragCoord origin is upper left
|
||||
15(g_sSamp): 14(ptr) Variable UniformConstant
|
||||
17: TypeSampledImage 9
|
||||
19: 6(float) Constant 1036831949
|
||||
21: TypeVector 6(float) 2
|
||||
23: TypeInt 32 1
|
||||
24: 23(int) Constant 0
|
||||
27: TypeImage 23(int) 1D array sampled format:Unknown
|
||||
28: TypePointer UniformConstant 27
|
||||
29(g_tTex1di4a): 28(ptr) Variable UniformConstant
|
||||
32: TypeSampledImage 27
|
||||
34: 6(float) Constant 1045220557
|
||||
39: TypeInt 32 0
|
||||
40: TypeImage 39(int) 1D array sampled format:Unknown
|
||||
41: TypePointer UniformConstant 40
|
||||
42(g_tTex1du4a): 41(ptr) Variable UniformConstant
|
||||
45: TypeSampledImage 40
|
||||
47: 6(float) Constant 1050253722
|
||||
52: TypeImage 6(float) 2D array sampled format:Unknown
|
||||
53: TypePointer UniformConstant 52
|
||||
54(g_tTex2df4a): 53(ptr) Variable UniformConstant
|
||||
57: TypeSampledImage 52
|
||||
59: 21(fvec2) ConstantComposite 19 34
|
||||
64: TypeImage 23(int) 2D array sampled format:Unknown
|
||||
65: TypePointer UniformConstant 64
|
||||
66(g_tTex2di4a): 65(ptr) Variable UniformConstant
|
||||
69: TypeSampledImage 64
|
||||
71: 6(float) Constant 1053609165
|
||||
72: 21(fvec2) ConstantComposite 47 71
|
||||
77: TypeImage 39(int) 2D array sampled format:Unknown
|
||||
78: TypePointer UniformConstant 77
|
||||
79(g_tTex2du4a): 78(ptr) Variable UniformConstant
|
||||
82: TypeSampledImage 77
|
||||
84: 6(float) Constant 1056964608
|
||||
85: 6(float) Constant 1058642330
|
||||
86: 21(fvec2) ConstantComposite 84 85
|
||||
91: TypeImage 6(float) Cube array sampled format:Unknown
|
||||
92: TypePointer UniformConstant 91
|
||||
93(g_tTexcdf4a): 92(ptr) Variable UniformConstant
|
||||
96: TypeSampledImage 91
|
||||
98: TypeVector 6(float) 3
|
||||
99: 98(fvec3) ConstantComposite 19 34 47
|
||||
104: TypeImage 23(int) Cube array sampled format:Unknown
|
||||
105: TypePointer UniformConstant 104
|
||||
106(g_tTexcdi4a): 105(ptr) Variable UniformConstant
|
||||
109: TypeSampledImage 104
|
||||
111: 98(fvec3) ConstantComposite 71 84 85
|
||||
116: TypeImage 39(int) Cube array sampled format:Unknown
|
||||
117: TypePointer UniformConstant 116
|
||||
118(g_tTexcdu4a): 117(ptr) Variable UniformConstant
|
||||
121: TypeSampledImage 116
|
||||
123: 6(float) Constant 1060320051
|
||||
124: 6(float) Constant 1061997773
|
||||
125: 6(float) Constant 1063675494
|
||||
126: 98(fvec3) ConstantComposite 123 124 125
|
||||
130: TypeVector 6(float) 4
|
||||
131(PS_OUTPUT): TypeStruct 130(fvec4) 6(float)
|
||||
132: TypePointer Function 131(PS_OUTPUT)
|
||||
134: 6(float) Constant 1065353216
|
||||
135: 130(fvec4) ConstantComposite 134 134 134 134
|
||||
136: TypePointer Function 130(fvec4)
|
||||
138: 23(int) Constant 1
|
||||
140: TypePointer Output 130(fvec4)
|
||||
141(Color): 140(ptr) Variable Output
|
||||
144: TypePointer Output 6(float)
|
||||
145(Depth): 144(ptr) Variable Output
|
||||
149(g_tTex1df4): 10(ptr) Variable UniformConstant
|
||||
20: TypeVector 6(float) 2
|
||||
22: TypeInt 32 1
|
||||
23: 22(int) Constant 0
|
||||
26: TypeImage 22(int) 1D array sampled format:Unknown
|
||||
27: TypePointer UniformConstant 26
|
||||
28(g_tTex1di4a): 27(ptr) Variable UniformConstant
|
||||
31: TypeSampledImage 26
|
||||
33: 6(float) Constant 1045220557
|
||||
37: TypeInt 32 0
|
||||
38: TypeImage 37(int) 1D array sampled format:Unknown
|
||||
39: TypePointer UniformConstant 38
|
||||
40(g_tTex1du4a): 39(ptr) Variable UniformConstant
|
||||
43: TypeSampledImage 38
|
||||
45: 6(float) Constant 1050253722
|
||||
49: TypeImage 6(float) 2D array sampled format:Unknown
|
||||
50: TypePointer UniformConstant 49
|
||||
51(g_tTex2df4a): 50(ptr) Variable UniformConstant
|
||||
54: TypeSampledImage 49
|
||||
56: 20(fvec2) ConstantComposite 19 33
|
||||
60: TypeImage 22(int) 2D array sampled format:Unknown
|
||||
61: TypePointer UniformConstant 60
|
||||
62(g_tTex2di4a): 61(ptr) Variable UniformConstant
|
||||
65: TypeSampledImage 60
|
||||
67: 6(float) Constant 1053609165
|
||||
68: 20(fvec2) ConstantComposite 45 67
|
||||
72: TypeImage 37(int) 2D array sampled format:Unknown
|
||||
73: TypePointer UniformConstant 72
|
||||
74(g_tTex2du4a): 73(ptr) Variable UniformConstant
|
||||
77: TypeSampledImage 72
|
||||
79: 6(float) Constant 1056964608
|
||||
80: 6(float) Constant 1058642330
|
||||
81: 20(fvec2) ConstantComposite 79 80
|
||||
85: TypeImage 6(float) Cube array sampled format:Unknown
|
||||
86: TypePointer UniformConstant 85
|
||||
87(g_tTexcdf4a): 86(ptr) Variable UniformConstant
|
||||
90: TypeSampledImage 85
|
||||
92: TypeVector 6(float) 3
|
||||
93: 92(fvec3) ConstantComposite 19 33 45
|
||||
97: TypeImage 22(int) Cube array sampled format:Unknown
|
||||
98: TypePointer UniformConstant 97
|
||||
99(g_tTexcdi4a): 98(ptr) Variable UniformConstant
|
||||
102: TypeSampledImage 97
|
||||
104: 92(fvec3) ConstantComposite 67 79 80
|
||||
108: TypeImage 37(int) Cube array sampled format:Unknown
|
||||
109: TypePointer UniformConstant 108
|
||||
110(g_tTexcdu4a): 109(ptr) Variable UniformConstant
|
||||
113: TypeSampledImage 108
|
||||
115: 6(float) Constant 1060320051
|
||||
116: 6(float) Constant 1061997773
|
||||
117: 6(float) Constant 1063675494
|
||||
118: 92(fvec3) ConstantComposite 115 116 117
|
||||
121: TypeVector 6(float) 4
|
||||
122(PS_OUTPUT): TypeStruct 121(fvec4) 6(float)
|
||||
123: TypePointer Function 122(PS_OUTPUT)
|
||||
125: 6(float) Constant 1065353216
|
||||
126: 121(fvec4) ConstantComposite 125 125 125 125
|
||||
127: TypePointer Function 121(fvec4)
|
||||
129: 22(int) Constant 1
|
||||
131: TypePointer Output 121(fvec4)
|
||||
132(Color): 131(ptr) Variable Output
|
||||
135: TypePointer Output 6(float)
|
||||
136(Depth): 135(ptr) Variable Output
|
||||
140(g_tTex1df4): 10(ptr) Variable UniformConstant
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
8(txval10): 7(ptr) Variable Function
|
||||
26(txval11): 7(ptr) Variable Function
|
||||
38(txval12): 7(ptr) Variable Function
|
||||
51(txval20): 7(ptr) Variable Function
|
||||
63(txval21): 7(ptr) Variable Function
|
||||
76(txval22): 7(ptr) Variable Function
|
||||
90(txval40): 7(ptr) Variable Function
|
||||
103(txval41): 7(ptr) Variable Function
|
||||
115(txval42): 7(ptr) Variable Function
|
||||
133(psout): 132(ptr) Variable Function
|
||||
25(txval11): 7(ptr) Variable Function
|
||||
36(txval12): 7(ptr) Variable Function
|
||||
48(txval20): 7(ptr) Variable Function
|
||||
59(txval21): 7(ptr) Variable Function
|
||||
71(txval22): 7(ptr) Variable Function
|
||||
84(txval40): 7(ptr) Variable Function
|
||||
96(txval41): 7(ptr) Variable Function
|
||||
107(txval42): 7(ptr) Variable Function
|
||||
124(psout): 123(ptr) Variable Function
|
||||
12: 9 Load 11(g_tTex1df4a)
|
||||
16: 13 Load 15(g_sSamp)
|
||||
18: 17 SampledImage 12 16
|
||||
20: 9 Image 18
|
||||
22: 21(fvec2) ImageQueryLod 20 19
|
||||
25: 6(float) CompositeExtract 22 0
|
||||
Store 8(txval10) 25
|
||||
30: 27 Load 29(g_tTex1di4a)
|
||||
31: 13 Load 15(g_sSamp)
|
||||
33: 32 SampledImage 30 31
|
||||
35: 27 Image 33
|
||||
36: 21(fvec2) ImageQueryLod 35 34
|
||||
37: 6(float) CompositeExtract 36 0
|
||||
Store 26(txval11) 37
|
||||
43: 40 Load 42(g_tTex1du4a)
|
||||
44: 13 Load 15(g_sSamp)
|
||||
46: 45 SampledImage 43 44
|
||||
48: 40 Image 46
|
||||
49: 21(fvec2) ImageQueryLod 48 47
|
||||
50: 6(float) CompositeExtract 49 0
|
||||
Store 38(txval12) 50
|
||||
55: 52 Load 54(g_tTex2df4a)
|
||||
56: 13 Load 15(g_sSamp)
|
||||
58: 57 SampledImage 55 56
|
||||
60: 52 Image 58
|
||||
61: 21(fvec2) ImageQueryLod 60 59
|
||||
62: 6(float) CompositeExtract 61 0
|
||||
Store 51(txval20) 62
|
||||
67: 64 Load 66(g_tTex2di4a)
|
||||
68: 13 Load 15(g_sSamp)
|
||||
70: 69 SampledImage 67 68
|
||||
73: 64 Image 70
|
||||
74: 21(fvec2) ImageQueryLod 73 72
|
||||
75: 6(float) CompositeExtract 74 0
|
||||
Store 63(txval21) 75
|
||||
80: 77 Load 79(g_tTex2du4a)
|
||||
81: 13 Load 15(g_sSamp)
|
||||
83: 82 SampledImage 80 81
|
||||
87: 77 Image 83
|
||||
88: 21(fvec2) ImageQueryLod 87 86
|
||||
89: 6(float) CompositeExtract 88 0
|
||||
Store 76(txval22) 89
|
||||
94: 91 Load 93(g_tTexcdf4a)
|
||||
95: 13 Load 15(g_sSamp)
|
||||
97: 96 SampledImage 94 95
|
||||
100: 91 Image 97
|
||||
101: 21(fvec2) ImageQueryLod 100 99
|
||||
102: 6(float) CompositeExtract 101 0
|
||||
Store 90(txval40) 102
|
||||
107: 104 Load 106(g_tTexcdi4a)
|
||||
108: 13 Load 15(g_sSamp)
|
||||
110: 109 SampledImage 107 108
|
||||
112: 104 Image 110
|
||||
113: 21(fvec2) ImageQueryLod 112 111
|
||||
114: 6(float) CompositeExtract 113 0
|
||||
Store 103(txval41) 114
|
||||
119: 116 Load 118(g_tTexcdu4a)
|
||||
120: 13 Load 15(g_sSamp)
|
||||
122: 121 SampledImage 119 120
|
||||
127: 116 Image 122
|
||||
128: 21(fvec2) ImageQueryLod 127 126
|
||||
129: 6(float) CompositeExtract 128 0
|
||||
Store 115(txval42) 129
|
||||
137: 136(ptr) AccessChain 133(psout) 24
|
||||
Store 137 135
|
||||
139: 7(ptr) AccessChain 133(psout) 138
|
||||
Store 139 134
|
||||
142: 136(ptr) AccessChain 133(psout) 24
|
||||
143: 130(fvec4) Load 142
|
||||
Store 141(Color) 143
|
||||
146: 7(ptr) AccessChain 133(psout) 138
|
||||
147: 6(float) Load 146
|
||||
Store 145(Depth) 147
|
||||
21: 20(fvec2) ImageQueryLod 18 19
|
||||
24: 6(float) CompositeExtract 21 0
|
||||
Store 8(txval10) 24
|
||||
29: 26 Load 28(g_tTex1di4a)
|
||||
30: 13 Load 15(g_sSamp)
|
||||
32: 31 SampledImage 29 30
|
||||
34: 20(fvec2) ImageQueryLod 32 33
|
||||
35: 6(float) CompositeExtract 34 0
|
||||
Store 25(txval11) 35
|
||||
41: 38 Load 40(g_tTex1du4a)
|
||||
42: 13 Load 15(g_sSamp)
|
||||
44: 43 SampledImage 41 42
|
||||
46: 20(fvec2) ImageQueryLod 44 45
|
||||
47: 6(float) CompositeExtract 46 0
|
||||
Store 36(txval12) 47
|
||||
52: 49 Load 51(g_tTex2df4a)
|
||||
53: 13 Load 15(g_sSamp)
|
||||
55: 54 SampledImage 52 53
|
||||
57: 20(fvec2) ImageQueryLod 55 56
|
||||
58: 6(float) CompositeExtract 57 0
|
||||
Store 48(txval20) 58
|
||||
63: 60 Load 62(g_tTex2di4a)
|
||||
64: 13 Load 15(g_sSamp)
|
||||
66: 65 SampledImage 63 64
|
||||
69: 20(fvec2) ImageQueryLod 66 68
|
||||
70: 6(float) CompositeExtract 69 0
|
||||
Store 59(txval21) 70
|
||||
75: 72 Load 74(g_tTex2du4a)
|
||||
76: 13 Load 15(g_sSamp)
|
||||
78: 77 SampledImage 75 76
|
||||
82: 20(fvec2) ImageQueryLod 78 81
|
||||
83: 6(float) CompositeExtract 82 0
|
||||
Store 71(txval22) 83
|
||||
88: 85 Load 87(g_tTexcdf4a)
|
||||
89: 13 Load 15(g_sSamp)
|
||||
91: 90 SampledImage 88 89
|
||||
94: 20(fvec2) ImageQueryLod 91 93
|
||||
95: 6(float) CompositeExtract 94 0
|
||||
Store 84(txval40) 95
|
||||
100: 97 Load 99(g_tTexcdi4a)
|
||||
101: 13 Load 15(g_sSamp)
|
||||
103: 102 SampledImage 100 101
|
||||
105: 20(fvec2) ImageQueryLod 103 104
|
||||
106: 6(float) CompositeExtract 105 0
|
||||
Store 96(txval41) 106
|
||||
111: 108 Load 110(g_tTexcdu4a)
|
||||
112: 13 Load 15(g_sSamp)
|
||||
114: 113 SampledImage 111 112
|
||||
119: 20(fvec2) ImageQueryLod 114 118
|
||||
120: 6(float) CompositeExtract 119 0
|
||||
Store 107(txval42) 120
|
||||
128: 127(ptr) AccessChain 124(psout) 23
|
||||
Store 128 126
|
||||
130: 7(ptr) AccessChain 124(psout) 129
|
||||
Store 130 125
|
||||
133: 127(ptr) AccessChain 124(psout) 23
|
||||
134: 121(fvec4) Load 133
|
||||
Store 132(Color) 134
|
||||
137: 7(ptr) AccessChain 124(psout) 129
|
||||
138: 6(float) Load 137
|
||||
Store 136(Depth) 138
|
||||
Return
|
||||
FunctionEnd
|
||||
|
@ -14,7 +14,7 @@ ERROR: 9 compilation errors. No code generated.
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
ERROR: node is still EOpNull!
|
||||
0:24 Function Definition: main( (global structure{temp 4-component vector of float Color, temp float Depth})
|
||||
0:24 Function Definition: main( (temp structure{temp 4-component vector of float Color, temp float Depth})
|
||||
0:24 Function Parameters:
|
||||
0:? Sequence
|
||||
0:28 Sequence
|
||||
@ -151,8 +151,8 @@ ERROR: node is still EOpNull!
|
||||
0:41 1 (const int)
|
||||
0:41 Constant:
|
||||
0:41 1.000000
|
||||
0:? Sequence
|
||||
0:? Sequence
|
||||
0:43 Sequence
|
||||
0:43 Sequence
|
||||
0:43 move second child to first child (temp 4-component vector of float)
|
||||
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:43 Color: direct index for structure (temp 4-component vector of float)
|
||||
@ -167,6 +167,8 @@ ERROR: node is still EOpNull!
|
||||
0:43 1 (const int)
|
||||
0:43 Branch: Return
|
||||
0:? Linker Objects
|
||||
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:? 'Depth' (out float FragDepth)
|
||||
0:? 'g_sSamp' (layout(binding=0 ) uniform sampler)
|
||||
0:? 'g_tTex1df4a' (layout(binding=1 ) uniform texture1DArray)
|
||||
0:? 'g_tTex1df4' (layout(binding=0 ) uniform texture1DArray)
|
||||
@ -178,8 +180,6 @@ ERROR: node is still EOpNull!
|
||||
0:? 'g_tTexcdf4a' (uniform textureCubeArray)
|
||||
0:? 'g_tTexcdi4a' (uniform itextureCubeArray)
|
||||
0:? 'g_tTexcdu4a' (uniform utextureCubeArray)
|
||||
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:? 'Depth' (out float FragDepth)
|
||||
|
||||
|
||||
Linked fragment stage:
|
||||
@ -188,7 +188,7 @@ Linked fragment stage:
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
ERROR: node is still EOpNull!
|
||||
0:24 Function Definition: main( (global structure{temp 4-component vector of float Color, temp float Depth})
|
||||
0:24 Function Definition: main( (temp structure{temp 4-component vector of float Color, temp float Depth})
|
||||
0:24 Function Parameters:
|
||||
0:? Sequence
|
||||
0:28 Sequence
|
||||
@ -325,8 +325,8 @@ ERROR: node is still EOpNull!
|
||||
0:41 1 (const int)
|
||||
0:41 Constant:
|
||||
0:41 1.000000
|
||||
0:? Sequence
|
||||
0:? Sequence
|
||||
0:43 Sequence
|
||||
0:43 Sequence
|
||||
0:43 move second child to first child (temp 4-component vector of float)
|
||||
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:43 Color: direct index for structure (temp 4-component vector of float)
|
||||
@ -341,6 +341,8 @@ ERROR: node is still EOpNull!
|
||||
0:43 1 (const int)
|
||||
0:43 Branch: Return
|
||||
0:? Linker Objects
|
||||
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:? 'Depth' (out float FragDepth)
|
||||
0:? 'g_sSamp' (layout(binding=0 ) uniform sampler)
|
||||
0:? 'g_tTex1df4a' (layout(binding=1 ) uniform texture1DArray)
|
||||
0:? 'g_tTex1df4' (layout(binding=0 ) uniform texture1DArray)
|
||||
@ -352,7 +354,5 @@ ERROR: node is still EOpNull!
|
||||
0:? 'g_tTexcdf4a' (uniform textureCubeArray)
|
||||
0:? 'g_tTexcdi4a' (uniform itextureCubeArray)
|
||||
0:? 'g_tTexcdu4a' (uniform utextureCubeArray)
|
||||
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:? 'Depth' (out float FragDepth)
|
||||
|
||||
SPIR-V is not generated for failed compile or link
|
||||
|
@ -2,7 +2,7 @@ hlsl.cast.frag
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:2 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float)
|
||||
0:2 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float)
|
||||
0:2 Function Parameters:
|
||||
0:2 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:? Sequence
|
||||
@ -33,7 +33,7 @@ Linked fragment stage:
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:2 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float)
|
||||
0:2 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float)
|
||||
0:2 Function Parameters:
|
||||
0:2 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:? Sequence
|
||||
|
402
Test/baseResults/hlsl.comparison.vec.frag.out
Normal file
402
Test/baseResults/hlsl.comparison.vec.frag.out
Normal file
@ -0,0 +1,402 @@
|
||||
hlsl.comparison.vec.frag
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:4 Function Definition: Bug1(vf4; (temp void)
|
||||
0:4 Function Parameters:
|
||||
0:4 'a' (in 4-component vector of float)
|
||||
0:? Sequence
|
||||
0:5 Sequence
|
||||
0:5 move second child to first child (temp 4-component vector of float)
|
||||
0:5 'v04' (temp 4-component vector of float)
|
||||
0:? Constant:
|
||||
0:? 0.000000
|
||||
0:? 0.000000
|
||||
0:? 0.000000
|
||||
0:? 0.000000
|
||||
0:6 Sequence
|
||||
0:6 move second child to first child (temp float)
|
||||
0:6 'v01' (temp float)
|
||||
0:6 Constant:
|
||||
0:6 0.000000
|
||||
0:8 Sequence
|
||||
0:8 move second child to first child (temp 4-component vector of bool)
|
||||
0:8 'r00' (temp 4-component vector of bool)
|
||||
0:8 Equal (temp 4-component vector of bool)
|
||||
0:8 'a' (in 4-component vector of float)
|
||||
0:8 'v04' (temp 4-component vector of float)
|
||||
0:9 Sequence
|
||||
0:9 move second child to first child (temp 4-component vector of bool)
|
||||
0:9 'r01' (temp 4-component vector of bool)
|
||||
0:9 NotEqual (temp 4-component vector of bool)
|
||||
0:9 'a' (in 4-component vector of float)
|
||||
0:9 'v04' (temp 4-component vector of float)
|
||||
0:10 Sequence
|
||||
0:10 move second child to first child (temp 4-component vector of bool)
|
||||
0:10 'r02' (temp 4-component vector of bool)
|
||||
0:10 Compare Less Than (temp 4-component vector of bool)
|
||||
0:10 'a' (in 4-component vector of float)
|
||||
0:10 'v04' (temp 4-component vector of float)
|
||||
0:11 Sequence
|
||||
0:11 move second child to first child (temp 4-component vector of bool)
|
||||
0:11 'r03' (temp 4-component vector of bool)
|
||||
0:11 Compare Greater Than (temp 4-component vector of bool)
|
||||
0:11 'a' (in 4-component vector of float)
|
||||
0:11 'v04' (temp 4-component vector of float)
|
||||
0:13 Sequence
|
||||
0:13 move second child to first child (temp 4-component vector of bool)
|
||||
0:13 'r10' (temp 4-component vector of bool)
|
||||
0:13 Equal (temp 4-component vector of bool)
|
||||
0:13 'a' (in 4-component vector of float)
|
||||
0:13 Construct vec4 (in 4-component vector of float)
|
||||
0:13 'v01' (temp float)
|
||||
0:14 Sequence
|
||||
0:14 move second child to first child (temp 4-component vector of bool)
|
||||
0:14 'r11' (temp 4-component vector of bool)
|
||||
0:14 NotEqual (temp 4-component vector of bool)
|
||||
0:14 'a' (in 4-component vector of float)
|
||||
0:14 Construct vec4 (in 4-component vector of float)
|
||||
0:14 'v01' (temp float)
|
||||
0:15 Sequence
|
||||
0:15 move second child to first child (temp 4-component vector of bool)
|
||||
0:15 'r12' (temp 4-component vector of bool)
|
||||
0:15 Compare Less Than (temp 4-component vector of bool)
|
||||
0:15 'a' (in 4-component vector of float)
|
||||
0:15 Construct vec4 (in 4-component vector of float)
|
||||
0:15 'v01' (temp float)
|
||||
0:16 Sequence
|
||||
0:16 move second child to first child (temp 4-component vector of bool)
|
||||
0:16 'r13' (temp 4-component vector of bool)
|
||||
0:16 Compare Greater Than (temp 4-component vector of bool)
|
||||
0:16 'a' (in 4-component vector of float)
|
||||
0:16 Construct vec4 (in 4-component vector of float)
|
||||
0:16 'v01' (temp float)
|
||||
0:18 Sequence
|
||||
0:18 move second child to first child (temp 4-component vector of bool)
|
||||
0:18 'r20' (temp 4-component vector of bool)
|
||||
0:18 Equal (temp 4-component vector of bool)
|
||||
0:18 Construct vec4 (in 4-component vector of float)
|
||||
0:18 'v01' (temp float)
|
||||
0:18 'a' (in 4-component vector of float)
|
||||
0:19 Sequence
|
||||
0:19 move second child to first child (temp 4-component vector of bool)
|
||||
0:19 'r21' (temp 4-component vector of bool)
|
||||
0:19 NotEqual (temp 4-component vector of bool)
|
||||
0:19 Construct vec4 (in 4-component vector of float)
|
||||
0:19 'v01' (temp float)
|
||||
0:19 'a' (in 4-component vector of float)
|
||||
0:20 Sequence
|
||||
0:20 move second child to first child (temp 4-component vector of bool)
|
||||
0:20 'r22' (temp 4-component vector of bool)
|
||||
0:20 Compare Less Than (temp 4-component vector of bool)
|
||||
0:20 Construct vec4 (in 4-component vector of float)
|
||||
0:20 'v01' (temp float)
|
||||
0:20 'a' (in 4-component vector of float)
|
||||
0:21 Sequence
|
||||
0:21 move second child to first child (temp 4-component vector of bool)
|
||||
0:21 'r23' (temp 4-component vector of bool)
|
||||
0:21 Compare Greater Than (temp 4-component vector of bool)
|
||||
0:21 Construct vec4 (in 4-component vector of float)
|
||||
0:21 'v01' (temp float)
|
||||
0:21 'a' (in 4-component vector of float)
|
||||
0:30 Function Definition: main( (temp structure{temp 4-component vector of float Color})
|
||||
0:30 Function Parameters:
|
||||
0:? Sequence
|
||||
0:32 move second child to first child (temp 4-component vector of float)
|
||||
0:32 Color: direct index for structure (temp 4-component vector of float)
|
||||
0:32 'psout' (temp structure{temp 4-component vector of float Color})
|
||||
0:32 Constant:
|
||||
0:32 0 (const int)
|
||||
0:32 Constant:
|
||||
0:32 0.000000
|
||||
0:32 0.000000
|
||||
0:32 0.000000
|
||||
0:32 0.000000
|
||||
0:33 Sequence
|
||||
0:33 Sequence
|
||||
0:33 move second child to first child (temp 4-component vector of float)
|
||||
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:33 Color: direct index for structure (temp 4-component vector of float)
|
||||
0:33 'psout' (temp structure{temp 4-component vector of float Color})
|
||||
0:33 Constant:
|
||||
0:33 0 (const int)
|
||||
0:33 Branch: Return
|
||||
0:? Linker Objects
|
||||
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:? 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-component vector of float uf4})
|
||||
|
||||
|
||||
Linked fragment stage:
|
||||
|
||||
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:4 Function Definition: Bug1(vf4; (temp void)
|
||||
0:4 Function Parameters:
|
||||
0:4 'a' (in 4-component vector of float)
|
||||
0:? Sequence
|
||||
0:5 Sequence
|
||||
0:5 move second child to first child (temp 4-component vector of float)
|
||||
0:5 'v04' (temp 4-component vector of float)
|
||||
0:? Constant:
|
||||
0:? 0.000000
|
||||
0:? 0.000000
|
||||
0:? 0.000000
|
||||
0:? 0.000000
|
||||
0:6 Sequence
|
||||
0:6 move second child to first child (temp float)
|
||||
0:6 'v01' (temp float)
|
||||
0:6 Constant:
|
||||
0:6 0.000000
|
||||
0:8 Sequence
|
||||
0:8 move second child to first child (temp 4-component vector of bool)
|
||||
0:8 'r00' (temp 4-component vector of bool)
|
||||
0:8 Equal (temp 4-component vector of bool)
|
||||
0:8 'a' (in 4-component vector of float)
|
||||
0:8 'v04' (temp 4-component vector of float)
|
||||
0:9 Sequence
|
||||
0:9 move second child to first child (temp 4-component vector of bool)
|
||||
0:9 'r01' (temp 4-component vector of bool)
|
||||
0:9 NotEqual (temp 4-component vector of bool)
|
||||
0:9 'a' (in 4-component vector of float)
|
||||
0:9 'v04' (temp 4-component vector of float)
|
||||
0:10 Sequence
|
||||
0:10 move second child to first child (temp 4-component vector of bool)
|
||||
0:10 'r02' (temp 4-component vector of bool)
|
||||
0:10 Compare Less Than (temp 4-component vector of bool)
|
||||
0:10 'a' (in 4-component vector of float)
|
||||
0:10 'v04' (temp 4-component vector of float)
|
||||
0:11 Sequence
|
||||
0:11 move second child to first child (temp 4-component vector of bool)
|
||||
0:11 'r03' (temp 4-component vector of bool)
|
||||
0:11 Compare Greater Than (temp 4-component vector of bool)
|
||||
0:11 'a' (in 4-component vector of float)
|
||||
0:11 'v04' (temp 4-component vector of float)
|
||||
0:13 Sequence
|
||||
0:13 move second child to first child (temp 4-component vector of bool)
|
||||
0:13 'r10' (temp 4-component vector of bool)
|
||||
0:13 Equal (temp 4-component vector of bool)
|
||||
0:13 'a' (in 4-component vector of float)
|
||||
0:13 Construct vec4 (in 4-component vector of float)
|
||||
0:13 'v01' (temp float)
|
||||
0:14 Sequence
|
||||
0:14 move second child to first child (temp 4-component vector of bool)
|
||||
0:14 'r11' (temp 4-component vector of bool)
|
||||
0:14 NotEqual (temp 4-component vector of bool)
|
||||
0:14 'a' (in 4-component vector of float)
|
||||
0:14 Construct vec4 (in 4-component vector of float)
|
||||
0:14 'v01' (temp float)
|
||||
0:15 Sequence
|
||||
0:15 move second child to first child (temp 4-component vector of bool)
|
||||
0:15 'r12' (temp 4-component vector of bool)
|
||||
0:15 Compare Less Than (temp 4-component vector of bool)
|
||||
0:15 'a' (in 4-component vector of float)
|
||||
0:15 Construct vec4 (in 4-component vector of float)
|
||||
0:15 'v01' (temp float)
|
||||
0:16 Sequence
|
||||
0:16 move second child to first child (temp 4-component vector of bool)
|
||||
0:16 'r13' (temp 4-component vector of bool)
|
||||
0:16 Compare Greater Than (temp 4-component vector of bool)
|
||||
0:16 'a' (in 4-component vector of float)
|
||||
0:16 Construct vec4 (in 4-component vector of float)
|
||||
0:16 'v01' (temp float)
|
||||
0:18 Sequence
|
||||
0:18 move second child to first child (temp 4-component vector of bool)
|
||||
0:18 'r20' (temp 4-component vector of bool)
|
||||
0:18 Equal (temp 4-component vector of bool)
|
||||
0:18 Construct vec4 (in 4-component vector of float)
|
||||
0:18 'v01' (temp float)
|
||||
0:18 'a' (in 4-component vector of float)
|
||||
0:19 Sequence
|
||||
0:19 move second child to first child (temp 4-component vector of bool)
|
||||
0:19 'r21' (temp 4-component vector of bool)
|
||||
0:19 NotEqual (temp 4-component vector of bool)
|
||||
0:19 Construct vec4 (in 4-component vector of float)
|
||||
0:19 'v01' (temp float)
|
||||
0:19 'a' (in 4-component vector of float)
|
||||
0:20 Sequence
|
||||
0:20 move second child to first child (temp 4-component vector of bool)
|
||||
0:20 'r22' (temp 4-component vector of bool)
|
||||
0:20 Compare Less Than (temp 4-component vector of bool)
|
||||
0:20 Construct vec4 (in 4-component vector of float)
|
||||
0:20 'v01' (temp float)
|
||||
0:20 'a' (in 4-component vector of float)
|
||||
0:21 Sequence
|
||||
0:21 move second child to first child (temp 4-component vector of bool)
|
||||
0:21 'r23' (temp 4-component vector of bool)
|
||||
0:21 Compare Greater Than (temp 4-component vector of bool)
|
||||
0:21 Construct vec4 (in 4-component vector of float)
|
||||
0:21 'v01' (temp float)
|
||||
0:21 'a' (in 4-component vector of float)
|
||||
0:30 Function Definition: main( (temp structure{temp 4-component vector of float Color})
|
||||
0:30 Function Parameters:
|
||||
0:? Sequence
|
||||
0:32 move second child to first child (temp 4-component vector of float)
|
||||
0:32 Color: direct index for structure (temp 4-component vector of float)
|
||||
0:32 'psout' (temp structure{temp 4-component vector of float Color})
|
||||
0:32 Constant:
|
||||
0:32 0 (const int)
|
||||
0:32 Constant:
|
||||
0:32 0.000000
|
||||
0:32 0.000000
|
||||
0:32 0.000000
|
||||
0:32 0.000000
|
||||
0:33 Sequence
|
||||
0:33 Sequence
|
||||
0:33 move second child to first child (temp 4-component vector of float)
|
||||
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:33 Color: direct index for structure (temp 4-component vector of float)
|
||||
0:33 'psout' (temp structure{temp 4-component vector of float Color})
|
||||
0:33 Constant:
|
||||
0:33 0 (const int)
|
||||
0:33 Branch: Return
|
||||
0:? Linker Objects
|
||||
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:? 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-component vector of float uf4})
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 91
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 84
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Name 4 "main"
|
||||
Name 11 "Bug1(vf4;"
|
||||
Name 10 "a"
|
||||
Name 13 "v04"
|
||||
Name 17 "v01"
|
||||
Name 21 "r00"
|
||||
Name 25 "r01"
|
||||
Name 29 "r02"
|
||||
Name 33 "r03"
|
||||
Name 37 "r10"
|
||||
Name 42 "r11"
|
||||
Name 47 "r12"
|
||||
Name 52 "r13"
|
||||
Name 57 "r20"
|
||||
Name 62 "r21"
|
||||
Name 67 "r22"
|
||||
Name 72 "r23"
|
||||
Name 77 "PS_OUTPUT"
|
||||
MemberName 77(PS_OUTPUT) 0 "Color"
|
||||
Name 79 "psout"
|
||||
Name 84 "Color"
|
||||
Name 88 "$Global"
|
||||
MemberName 88($Global) 0 "uf4"
|
||||
Name 90 ""
|
||||
Decorate 84(Color) Location 0
|
||||
MemberDecorate 88($Global) 0 Offset 0
|
||||
Decorate 88($Global) Block
|
||||
Decorate 90 DescriptorSet 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
7: TypeVector 6(float) 4
|
||||
8: TypePointer Function 7(fvec4)
|
||||
9: TypeFunction 2 8(ptr)
|
||||
14: 6(float) Constant 0
|
||||
15: 7(fvec4) ConstantComposite 14 14 14 14
|
||||
16: TypePointer Function 6(float)
|
||||
18: TypeBool
|
||||
19: TypeVector 18(bool) 4
|
||||
20: TypePointer Function 19(bvec4)
|
||||
77(PS_OUTPUT): TypeStruct 7(fvec4)
|
||||
78: TypePointer Function 77(PS_OUTPUT)
|
||||
80: TypeInt 32 1
|
||||
81: 80(int) Constant 0
|
||||
83: TypePointer Output 7(fvec4)
|
||||
84(Color): 83(ptr) Variable Output
|
||||
88($Global): TypeStruct 7(fvec4)
|
||||
89: TypePointer Uniform 88($Global)
|
||||
90: 89(ptr) Variable Uniform
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
79(psout): 78(ptr) Variable Function
|
||||
82: 8(ptr) AccessChain 79(psout) 81
|
||||
Store 82 15
|
||||
85: 8(ptr) AccessChain 79(psout) 81
|
||||
86: 7(fvec4) Load 85
|
||||
Store 84(Color) 86
|
||||
Return
|
||||
FunctionEnd
|
||||
11(Bug1(vf4;): 2 Function None 9
|
||||
10(a): 8(ptr) FunctionParameter
|
||||
12: Label
|
||||
13(v04): 8(ptr) Variable Function
|
||||
17(v01): 16(ptr) Variable Function
|
||||
21(r00): 20(ptr) Variable Function
|
||||
25(r01): 20(ptr) Variable Function
|
||||
29(r02): 20(ptr) Variable Function
|
||||
33(r03): 20(ptr) Variable Function
|
||||
37(r10): 20(ptr) Variable Function
|
||||
42(r11): 20(ptr) Variable Function
|
||||
47(r12): 20(ptr) Variable Function
|
||||
52(r13): 20(ptr) Variable Function
|
||||
57(r20): 20(ptr) Variable Function
|
||||
62(r21): 20(ptr) Variable Function
|
||||
67(r22): 20(ptr) Variable Function
|
||||
72(r23): 20(ptr) Variable Function
|
||||
Store 13(v04) 15
|
||||
Store 17(v01) 14
|
||||
22: 7(fvec4) Load 10(a)
|
||||
23: 7(fvec4) Load 13(v04)
|
||||
24: 19(bvec4) FOrdEqual 22 23
|
||||
Store 21(r00) 24
|
||||
26: 7(fvec4) Load 10(a)
|
||||
27: 7(fvec4) Load 13(v04)
|
||||
28: 19(bvec4) FOrdNotEqual 26 27
|
||||
Store 25(r01) 28
|
||||
30: 7(fvec4) Load 10(a)
|
||||
31: 7(fvec4) Load 13(v04)
|
||||
32: 19(bvec4) FOrdLessThan 30 31
|
||||
Store 29(r02) 32
|
||||
34: 7(fvec4) Load 10(a)
|
||||
35: 7(fvec4) Load 13(v04)
|
||||
36: 19(bvec4) FOrdGreaterThan 34 35
|
||||
Store 33(r03) 36
|
||||
38: 7(fvec4) Load 10(a)
|
||||
39: 6(float) Load 17(v01)
|
||||
40: 7(fvec4) CompositeConstruct 39 39 39 39
|
||||
41: 19(bvec4) FOrdEqual 38 40
|
||||
Store 37(r10) 41
|
||||
43: 7(fvec4) Load 10(a)
|
||||
44: 6(float) Load 17(v01)
|
||||
45: 7(fvec4) CompositeConstruct 44 44 44 44
|
||||
46: 19(bvec4) FOrdNotEqual 43 45
|
||||
Store 42(r11) 46
|
||||
48: 7(fvec4) Load 10(a)
|
||||
49: 6(float) Load 17(v01)
|
||||
50: 7(fvec4) CompositeConstruct 49 49 49 49
|
||||
51: 19(bvec4) FOrdLessThan 48 50
|
||||
Store 47(r12) 51
|
||||
53: 7(fvec4) Load 10(a)
|
||||
54: 6(float) Load 17(v01)
|
||||
55: 7(fvec4) CompositeConstruct 54 54 54 54
|
||||
56: 19(bvec4) FOrdGreaterThan 53 55
|
||||
Store 52(r13) 56
|
||||
58: 6(float) Load 17(v01)
|
||||
59: 7(fvec4) CompositeConstruct 58 58 58 58
|
||||
60: 7(fvec4) Load 10(a)
|
||||
61: 19(bvec4) FOrdEqual 59 60
|
||||
Store 57(r20) 61
|
||||
63: 6(float) Load 17(v01)
|
||||
64: 7(fvec4) CompositeConstruct 63 63 63 63
|
||||
65: 7(fvec4) Load 10(a)
|
||||
66: 19(bvec4) FOrdNotEqual 64 65
|
||||
Store 62(r21) 66
|
||||
68: 6(float) Load 17(v01)
|
||||
69: 7(fvec4) CompositeConstruct 68 68 68 68
|
||||
70: 7(fvec4) Load 10(a)
|
||||
71: 19(bvec4) FOrdLessThan 69 70
|
||||
Store 67(r22) 71
|
||||
73: 6(float) Load 17(v01)
|
||||
74: 7(fvec4) CompositeConstruct 73 73 73 73
|
||||
75: 7(fvec4) Load 10(a)
|
||||
76: 19(bvec4) FOrdGreaterThan 74 75
|
||||
Store 72(r23) 76
|
||||
Return
|
||||
FunctionEnd
|
@ -2,7 +2,7 @@ hlsl.conditional.frag
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:2 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float)
|
||||
0:2 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float)
|
||||
0:2 Function Parameters:
|
||||
0:2 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:? Sequence
|
||||
@ -119,7 +119,7 @@ Linked fragment stage:
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:2 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float)
|
||||
0:2 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float)
|
||||
0:2 Function Parameters:
|
||||
0:2 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:? Sequence
|
||||
|
@ -2,7 +2,7 @@ hlsl.constructexpr.frag
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:4 Function Definition: main( (global structure{temp 4-component vector of float color})
|
||||
0:4 Function Definition: main( (temp structure{temp 4-component vector of float color})
|
||||
0:4 Function Parameters:
|
||||
0:? Sequence
|
||||
0:6 Constant:
|
||||
@ -34,8 +34,8 @@ gl_FragCoord origin is upper left
|
||||
0:15 1.000000
|
||||
0:15 1.000000
|
||||
0:15 1.000000
|
||||
0:? Sequence
|
||||
0:? Sequence
|
||||
0:16 Sequence
|
||||
0:16 Sequence
|
||||
0:16 move second child to first child (temp 4-component vector of float)
|
||||
0:? 'color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:16 color: direct index for structure (temp 4-component vector of float)
|
||||
@ -53,7 +53,7 @@ Linked fragment stage:
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:4 Function Definition: main( (global structure{temp 4-component vector of float color})
|
||||
0:4 Function Definition: main( (temp structure{temp 4-component vector of float color})
|
||||
0:4 Function Parameters:
|
||||
0:? Sequence
|
||||
0:6 Constant:
|
||||
@ -85,8 +85,8 @@ gl_FragCoord origin is upper left
|
||||
0:15 1.000000
|
||||
0:15 1.000000
|
||||
0:15 1.000000
|
||||
0:? Sequence
|
||||
0:? Sequence
|
||||
0:16 Sequence
|
||||
0:16 Sequence
|
||||
0:16 move second child to first child (temp 4-component vector of float)
|
||||
0:? 'color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:16 color: direct index for structure (temp 4-component vector of float)
|
||||
|
25
Test/baseResults/hlsl.deadFunctionMissingBody.vert.out
Normal file
25
Test/baseResults/hlsl.deadFunctionMissingBody.vert.out
Normal file
@ -0,0 +1,25 @@
|
||||
hlsl.deadFunctionMissingBody.vert
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 13
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Vertex 4 "main" 9
|
||||
Name 4 "main"
|
||||
Name 9 "@entryPointOutput"
|
||||
Decorate 9(@entryPointOutput) Location 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
7: TypeVector 6(float) 4
|
||||
8: TypePointer Output 7(fvec4)
|
||||
9(@entryPointOutput): 8(ptr) Variable Output
|
||||
10: 6(float) Constant 0
|
||||
11: 7(fvec4) ConstantComposite 10 10 10 10
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
Store 9(@entryPointOutput) 11
|
||||
Return
|
||||
FunctionEnd
|
@ -3,7 +3,7 @@ Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
using depth_greater
|
||||
0:? Sequence
|
||||
0:2 Function Definition: PixelShaderFunction(f1; (global void)
|
||||
0:2 Function Definition: PixelShaderFunction(f1; (temp void)
|
||||
0:2 Function Parameters:
|
||||
0:2 'depth' (out float FragDepth)
|
||||
0:? Sequence
|
||||
@ -22,7 +22,7 @@ Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
using depth_greater
|
||||
0:? Sequence
|
||||
0:2 Function Definition: PixelShaderFunction(f1; (global void)
|
||||
0:2 Function Definition: PixelShaderFunction(f1; (temp void)
|
||||
0:2 Function Parameters:
|
||||
0:2 'depth' (out float FragDepth)
|
||||
0:? Sequence
|
||||
|
@ -3,7 +3,7 @@ Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
using depth_less
|
||||
0:? Sequence
|
||||
0:2 Function Definition: PixelShaderFunction( (global float FragDepth)
|
||||
0:2 Function Definition: PixelShaderFunction( (temp float FragDepth)
|
||||
0:2 Function Parameters:
|
||||
0:? Sequence
|
||||
0:3 Sequence
|
||||
@ -23,7 +23,7 @@ Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
using depth_less
|
||||
0:? Sequence
|
||||
0:2 Function Definition: PixelShaderFunction( (global float FragDepth)
|
||||
0:2 Function Definition: PixelShaderFunction( (temp float FragDepth)
|
||||
0:2 Function Parameters:
|
||||
0:? Sequence
|
||||
0:3 Sequence
|
||||
|
@ -2,7 +2,7 @@ hlsl.discard.frag
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:2 Function Definition: foo(f1; (global void)
|
||||
0:2 Function Definition: foo(f1; (temp void)
|
||||
0:2 Function Parameters:
|
||||
0:2 'f' (in float)
|
||||
0:? Sequence
|
||||
@ -14,11 +14,11 @@ gl_FragCoord origin is upper left
|
||||
0:3 1.000000
|
||||
0:3 true case
|
||||
0:4 Branch: Kill
|
||||
0:8 Function Definition: PixelShaderFunction(vf4; (global void)
|
||||
0:8 Function Definition: PixelShaderFunction(vf4; (temp void)
|
||||
0:8 Function Parameters:
|
||||
0:8 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:? Sequence
|
||||
0:9 Function Call: foo(f1; (global void)
|
||||
0:9 Function Call: foo(f1; (temp void)
|
||||
0:9 direct index (temp float)
|
||||
0:9 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:9 Constant:
|
||||
@ -49,7 +49,7 @@ Linked fragment stage:
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:2 Function Definition: foo(f1; (global void)
|
||||
0:2 Function Definition: foo(f1; (temp void)
|
||||
0:2 Function Parameters:
|
||||
0:2 'f' (in float)
|
||||
0:? Sequence
|
||||
@ -61,11 +61,11 @@ gl_FragCoord origin is upper left
|
||||
0:3 1.000000
|
||||
0:3 true case
|
||||
0:4 Branch: Kill
|
||||
0:8 Function Definition: PixelShaderFunction(vf4; (global void)
|
||||
0:8 Function Definition: PixelShaderFunction(vf4; (temp void)
|
||||
0:8 Function Parameters:
|
||||
0:8 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:? Sequence
|
||||
0:9 Function Call: foo(f1; (global void)
|
||||
0:9 Function Call: foo(f1; (temp void)
|
||||
0:9 direct index (temp float)
|
||||
0:9 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:9 Constant:
|
||||
|
@ -2,7 +2,7 @@ hlsl.doLoop.frag
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:2 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float)
|
||||
0:2 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float)
|
||||
0:2 Function Parameters:
|
||||
0:2 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:? Sequence
|
||||
@ -18,7 +18,8 @@ gl_FragCoord origin is upper left
|
||||
0:4 No loop body
|
||||
0:5 Loop with condition not tested first
|
||||
0:5 Loop Condition
|
||||
0:5 Compare Equal (temp bool)
|
||||
0:5 all (temp bool)
|
||||
0:5 Equal (temp 4-component vector of bool)
|
||||
0:5 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:5 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:5 Loop Body
|
||||
@ -38,7 +39,7 @@ Linked fragment stage:
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:2 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float)
|
||||
0:2 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float)
|
||||
0:2 Function Parameters:
|
||||
0:2 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:? Sequence
|
||||
@ -54,7 +55,8 @@ gl_FragCoord origin is upper left
|
||||
0:4 No loop body
|
||||
0:5 Loop with condition not tested first
|
||||
0:5 Loop Condition
|
||||
0:5 Compare Equal (temp bool)
|
||||
0:5 all (temp bool)
|
||||
0:5 Equal (temp 4-component vector of bool)
|
||||
0:5 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:5 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:5 Loop Body
|
||||
|
@ -2,7 +2,7 @@ hlsl.entry-in.frag
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:8 Function Definition: fun(struct-InParam-vf2-vf4-vi21; (global float)
|
||||
0:8 Function Definition: fun(struct-InParam-vf2-vf4-vi21; (temp float)
|
||||
0:8 Function Parameters:
|
||||
0:8 'p' (in structure{temp 2-component vector of float v, temp 4-component vector of float fragCoord, temp 2-component vector of int i2})
|
||||
0:? Sequence
|
||||
@ -22,11 +22,11 @@ gl_FragCoord origin is upper left
|
||||
0:9 1 (const int)
|
||||
0:9 Constant:
|
||||
0:9 0 (const int)
|
||||
0:13 Function Definition: PixelShaderFunction(struct-InParam-vf2-vf4-vi21; (global 4-component vector of float)
|
||||
0:13 Function Definition: PixelShaderFunction(struct-InParam-vf2-vf4-vi21; (temp 4-component vector of float)
|
||||
0:13 Function Parameters:
|
||||
0:13 'i' (in structure{temp 2-component vector of float v, temp 4-component vector of float fragCoord, temp 2-component vector of int i2})
|
||||
0:? Sequence
|
||||
0:? Sequence
|
||||
0:15 Sequence
|
||||
0:15 move second child to first child (temp 2-component vector of float)
|
||||
0:15 v: direct index for structure (temp 2-component vector of float)
|
||||
0:15 'local' (temp structure{temp 2-component vector of float v, temp 4-component vector of float fragCoord, temp 2-component vector of int i2})
|
||||
@ -48,33 +48,33 @@ gl_FragCoord origin is upper left
|
||||
0:16 Sequence
|
||||
0:16 move second child to first child (temp float)
|
||||
0:16 'ret1' (temp float)
|
||||
0:16 Function Call: fun(struct-InParam-vf2-vf4-vi21; (global float)
|
||||
0:16 Function Call: fun(struct-InParam-vf2-vf4-vi21; (temp float)
|
||||
0:16 'local' (temp structure{temp 2-component vector of float v, temp 4-component vector of float fragCoord, temp 2-component vector of int i2})
|
||||
0:17 Sequence
|
||||
0:17 move second child to first child (temp float)
|
||||
0:17 'ret2' (temp float)
|
||||
0:17 Function Call: fun(struct-InParam-vf2-vf4-vi21; (global float)
|
||||
0:? Comma (temp float)
|
||||
0:? Sequence
|
||||
0:? move second child to first child (temp 2-component vector of float)
|
||||
0:? v: direct index for structure (temp 2-component vector of float)
|
||||
0:? 'aggShadow' (temp structure{temp 2-component vector of float v, temp 4-component vector of float fragCoord, temp 2-component vector of int i2})
|
||||
0:? Constant:
|
||||
0:? 0 (const int)
|
||||
0:17 Function Call: fun(struct-InParam-vf2-vf4-vi21; (temp float)
|
||||
0:17 Comma (temp structure{temp 2-component vector of float v, temp 4-component vector of float fragCoord, temp 2-component vector of int i2})
|
||||
0:17 Sequence
|
||||
0:17 move second child to first child (temp 2-component vector of float)
|
||||
0:17 v: direct index for structure (temp 2-component vector of float)
|
||||
0:17 'aggShadow' (temp structure{temp 2-component vector of float v, temp 4-component vector of float fragCoord, temp 2-component vector of int i2})
|
||||
0:17 Constant:
|
||||
0:17 0 (const int)
|
||||
0:? 'v' (layout(location=0 ) in 2-component vector of float)
|
||||
0:? move second child to first child (temp 4-component vector of float)
|
||||
0:? fragCoord: direct index for structure (temp 4-component vector of float)
|
||||
0:? 'aggShadow' (temp structure{temp 2-component vector of float v, temp 4-component vector of float fragCoord, temp 2-component vector of int i2})
|
||||
0:? Constant:
|
||||
0:? 1 (const int)
|
||||
0:17 move second child to first child (temp 4-component vector of float)
|
||||
0:17 fragCoord: direct index for structure (temp 4-component vector of float)
|
||||
0:17 'aggShadow' (temp structure{temp 2-component vector of float v, temp 4-component vector of float fragCoord, temp 2-component vector of int i2})
|
||||
0:17 Constant:
|
||||
0:17 1 (const int)
|
||||
0:? 'fragCoord' (in 4-component vector of float FragCoord)
|
||||
0:? move second child to first child (temp 2-component vector of int)
|
||||
0:? i2: direct index for structure (temp 2-component vector of int)
|
||||
0:? 'aggShadow' (temp structure{temp 2-component vector of float v, temp 4-component vector of float fragCoord, temp 2-component vector of int i2})
|
||||
0:? Constant:
|
||||
0:? 2 (const int)
|
||||
0:17 move second child to first child (temp 2-component vector of int)
|
||||
0:17 i2: direct index for structure (temp 2-component vector of int)
|
||||
0:17 'aggShadow' (temp structure{temp 2-component vector of float v, temp 4-component vector of float fragCoord, temp 2-component vector of int i2})
|
||||
0:17 Constant:
|
||||
0:17 2 (const int)
|
||||
0:? 'i2' (layout(location=1 ) in 2-component vector of int)
|
||||
0:? 'aggShadow' (temp structure{temp 2-component vector of float v, temp 4-component vector of float fragCoord, temp 2-component vector of int i2})
|
||||
0:17 'aggShadow' (temp structure{temp 2-component vector of float v, temp 4-component vector of float fragCoord, temp 2-component vector of int i2})
|
||||
0:19 Sequence
|
||||
0:19 move second child to first child (temp 4-component vector of float)
|
||||
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
|
||||
@ -100,7 +100,7 @@ Linked fragment stage:
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:8 Function Definition: fun(struct-InParam-vf2-vf4-vi21; (global float)
|
||||
0:8 Function Definition: fun(struct-InParam-vf2-vf4-vi21; (temp float)
|
||||
0:8 Function Parameters:
|
||||
0:8 'p' (in structure{temp 2-component vector of float v, temp 4-component vector of float fragCoord, temp 2-component vector of int i2})
|
||||
0:? Sequence
|
||||
@ -120,11 +120,11 @@ gl_FragCoord origin is upper left
|
||||
0:9 1 (const int)
|
||||
0:9 Constant:
|
||||
0:9 0 (const int)
|
||||
0:13 Function Definition: PixelShaderFunction(struct-InParam-vf2-vf4-vi21; (global 4-component vector of float)
|
||||
0:13 Function Definition: PixelShaderFunction(struct-InParam-vf2-vf4-vi21; (temp 4-component vector of float)
|
||||
0:13 Function Parameters:
|
||||
0:13 'i' (in structure{temp 2-component vector of float v, temp 4-component vector of float fragCoord, temp 2-component vector of int i2})
|
||||
0:? Sequence
|
||||
0:? Sequence
|
||||
0:15 Sequence
|
||||
0:15 move second child to first child (temp 2-component vector of float)
|
||||
0:15 v: direct index for structure (temp 2-component vector of float)
|
||||
0:15 'local' (temp structure{temp 2-component vector of float v, temp 4-component vector of float fragCoord, temp 2-component vector of int i2})
|
||||
@ -146,33 +146,33 @@ gl_FragCoord origin is upper left
|
||||
0:16 Sequence
|
||||
0:16 move second child to first child (temp float)
|
||||
0:16 'ret1' (temp float)
|
||||
0:16 Function Call: fun(struct-InParam-vf2-vf4-vi21; (global float)
|
||||
0:16 Function Call: fun(struct-InParam-vf2-vf4-vi21; (temp float)
|
||||
0:16 'local' (temp structure{temp 2-component vector of float v, temp 4-component vector of float fragCoord, temp 2-component vector of int i2})
|
||||
0:17 Sequence
|
||||
0:17 move second child to first child (temp float)
|
||||
0:17 'ret2' (temp float)
|
||||
0:17 Function Call: fun(struct-InParam-vf2-vf4-vi21; (global float)
|
||||
0:? Comma (temp float)
|
||||
0:? Sequence
|
||||
0:? move second child to first child (temp 2-component vector of float)
|
||||
0:? v: direct index for structure (temp 2-component vector of float)
|
||||
0:? 'aggShadow' (temp structure{temp 2-component vector of float v, temp 4-component vector of float fragCoord, temp 2-component vector of int i2})
|
||||
0:? Constant:
|
||||
0:? 0 (const int)
|
||||
0:17 Function Call: fun(struct-InParam-vf2-vf4-vi21; (temp float)
|
||||
0:17 Comma (temp structure{temp 2-component vector of float v, temp 4-component vector of float fragCoord, temp 2-component vector of int i2})
|
||||
0:17 Sequence
|
||||
0:17 move second child to first child (temp 2-component vector of float)
|
||||
0:17 v: direct index for structure (temp 2-component vector of float)
|
||||
0:17 'aggShadow' (temp structure{temp 2-component vector of float v, temp 4-component vector of float fragCoord, temp 2-component vector of int i2})
|
||||
0:17 Constant:
|
||||
0:17 0 (const int)
|
||||
0:? 'v' (layout(location=0 ) in 2-component vector of float)
|
||||
0:? move second child to first child (temp 4-component vector of float)
|
||||
0:? fragCoord: direct index for structure (temp 4-component vector of float)
|
||||
0:? 'aggShadow' (temp structure{temp 2-component vector of float v, temp 4-component vector of float fragCoord, temp 2-component vector of int i2})
|
||||
0:? Constant:
|
||||
0:? 1 (const int)
|
||||
0:17 move second child to first child (temp 4-component vector of float)
|
||||
0:17 fragCoord: direct index for structure (temp 4-component vector of float)
|
||||
0:17 'aggShadow' (temp structure{temp 2-component vector of float v, temp 4-component vector of float fragCoord, temp 2-component vector of int i2})
|
||||
0:17 Constant:
|
||||
0:17 1 (const int)
|
||||
0:? 'fragCoord' (in 4-component vector of float FragCoord)
|
||||
0:? move second child to first child (temp 2-component vector of int)
|
||||
0:? i2: direct index for structure (temp 2-component vector of int)
|
||||
0:? 'aggShadow' (temp structure{temp 2-component vector of float v, temp 4-component vector of float fragCoord, temp 2-component vector of int i2})
|
||||
0:? Constant:
|
||||
0:? 2 (const int)
|
||||
0:17 move second child to first child (temp 2-component vector of int)
|
||||
0:17 i2: direct index for structure (temp 2-component vector of int)
|
||||
0:17 'aggShadow' (temp structure{temp 2-component vector of float v, temp 4-component vector of float fragCoord, temp 2-component vector of int i2})
|
||||
0:17 Constant:
|
||||
0:17 2 (const int)
|
||||
0:? 'i2' (layout(location=1 ) in 2-component vector of int)
|
||||
0:? 'aggShadow' (temp structure{temp 2-component vector of float v, temp 4-component vector of float fragCoord, temp 2-component vector of int i2})
|
||||
0:17 'aggShadow' (temp structure{temp 2-component vector of float v, temp 4-component vector of float fragCoord, temp 2-component vector of int i2})
|
||||
0:19 Sequence
|
||||
0:19 move second child to first child (temp 4-component vector of float)
|
||||
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
|
||||
@ -256,7 +256,7 @@ gl_FragCoord origin is upper left
|
||||
48(param): 12(ptr) Variable Function
|
||||
51(ret2): 20(ptr) Variable Function
|
||||
52(aggShadow): 12(ptr) Variable Function
|
||||
59(param): 20(ptr) Variable Function
|
||||
59(param): 12(ptr) Variable Function
|
||||
33: 7(fvec2) Load 32(v)
|
||||
35: 34(ptr) AccessChain 30(local) 17
|
||||
Store 35 33
|
||||
|
@ -2,60 +2,83 @@ hlsl.entry-out.frag
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:7 Function Definition: PixelShaderFunction(vf4;vf4;struct-OutParam-vf2-vi21;struct-OutParam-vf2-vi21; (global 4-component vector of float)
|
||||
0:7 Function Definition: fun(struct-OutParam-vf2-vi21; (temp void)
|
||||
0:7 Function Parameters:
|
||||
0:7 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:7 'out1' (layout(location=1 ) out 4-component vector of float)
|
||||
0:7 'out2' (out structure{temp 2-component vector of float v, temp 2-component vector of int i})
|
||||
0:7 'out3' (out structure{temp 2-component vector of float v, temp 2-component vector of int i})
|
||||
0:7 'op' (out structure{temp 2-component vector of float v, temp 2-component vector of int i})
|
||||
0:? Sequence
|
||||
0:8 move second child to first child (temp 4-component vector of float)
|
||||
0:8 'out1' (layout(location=1 ) out 4-component vector of float)
|
||||
0:8 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:9 move second child to first child (temp 2-component vector of float)
|
||||
0:? 'v' (layout(location=2 ) out 2-component vector of float)
|
||||
0:8 move second child to first child (temp 2-component vector of float)
|
||||
0:8 v: direct index for structure (temp 2-component vector of float)
|
||||
0:8 'op' (out structure{temp 2-component vector of float v, temp 2-component vector of int i})
|
||||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
0:8 Constant:
|
||||
0:8 0.400000
|
||||
0:8 0.400000
|
||||
0:9 move second child to first child (temp 2-component vector of int)
|
||||
0:9 i: direct index for structure (temp 2-component vector of int)
|
||||
0:9 'op' (out structure{temp 2-component vector of float v, temp 2-component vector of int i})
|
||||
0:9 Constant:
|
||||
0:9 2.000000
|
||||
0:9 2.000000
|
||||
0:10 move second child to first child (temp 2-component vector of int)
|
||||
0:? 'i' (layout(location=3 ) out 2-component vector of int)
|
||||
0:10 Constant:
|
||||
0:10 3 (const int)
|
||||
0:10 3 (const int)
|
||||
0:12 move second child to first child (temp 2-component vector of float)
|
||||
0:12 v: direct index for structure (temp 2-component vector of float)
|
||||
0:12 'local' (temp structure{temp 2-component vector of float v, temp 2-component vector of int i})
|
||||
0:12 Constant:
|
||||
0:12 0 (const int)
|
||||
0:12 Constant:
|
||||
0:12 12.000000
|
||||
0:12 12.000000
|
||||
0:13 move second child to first child (temp 2-component vector of int)
|
||||
0:13 i: direct index for structure (temp 2-component vector of int)
|
||||
0:13 'local' (temp structure{temp 2-component vector of float v, temp 2-component vector of int i})
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 Constant:
|
||||
0:13 13 (const int)
|
||||
0:13 13 (const int)
|
||||
0:9 1 (const int)
|
||||
0:9 Constant:
|
||||
0:9 7 (const int)
|
||||
0:9 7 (const int)
|
||||
0:13 Function Definition: PixelShaderFunction(vf4;vf4;struct-OutParam-vf2-vi21;struct-OutParam-vf2-vi21; (temp 4-component vector of float)
|
||||
0:13 Function Parameters:
|
||||
0:13 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:13 'out1' (layout(location=1 ) out 4-component vector of float)
|
||||
0:13 'out2' (out structure{temp 2-component vector of float v, temp 2-component vector of int i})
|
||||
0:13 'out3' (out structure{temp 2-component vector of float v, temp 2-component vector of int i})
|
||||
0:? Sequence
|
||||
0:14 move second child to first child (temp 2-component vector of float)
|
||||
0:14 move second child to first child (temp 4-component vector of float)
|
||||
0:14 'out1' (layout(location=1 ) out 4-component vector of float)
|
||||
0:14 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:15 move second child to first child (temp 2-component vector of float)
|
||||
0:? 'v' (layout(location=2 ) out 2-component vector of float)
|
||||
0:15 Constant:
|
||||
0:15 2.000000
|
||||
0:15 2.000000
|
||||
0:16 move second child to first child (temp 2-component vector of int)
|
||||
0:? 'i' (layout(location=3 ) out 2-component vector of int)
|
||||
0:16 Constant:
|
||||
0:16 3 (const int)
|
||||
0:16 3 (const int)
|
||||
0:18 move second child to first child (temp 2-component vector of float)
|
||||
0:18 v: direct index for structure (temp 2-component vector of float)
|
||||
0:18 'local' (temp structure{temp 2-component vector of float v, temp 2-component vector of int i})
|
||||
0:18 Constant:
|
||||
0:18 0 (const int)
|
||||
0:18 Constant:
|
||||
0:18 12.000000
|
||||
0:18 12.000000
|
||||
0:19 move second child to first child (temp 2-component vector of int)
|
||||
0:19 i: direct index for structure (temp 2-component vector of int)
|
||||
0:19 'local' (temp structure{temp 2-component vector of float v, temp 2-component vector of int i})
|
||||
0:19 Constant:
|
||||
0:19 1 (const int)
|
||||
0:19 Constant:
|
||||
0:19 13 (const int)
|
||||
0:19 13 (const int)
|
||||
0:20 Comma (temp void)
|
||||
0:20 Function Call: fun(struct-OutParam-vf2-vi21; (temp void)
|
||||
0:20 'tempArg' (temp structure{temp 2-component vector of float v, temp 2-component vector of int i})
|
||||
0:20 Sequence
|
||||
0:20 move second child to first child (temp 2-component vector of float)
|
||||
0:? 'v' (layout(location=4 ) out 2-component vector of float)
|
||||
0:14 v: direct index for structure (temp 2-component vector of float)
|
||||
0:14 'local' (temp structure{temp 2-component vector of float v, temp 2-component vector of int i})
|
||||
0:14 Constant:
|
||||
0:14 0 (const int)
|
||||
0:14 move second child to first child (temp 2-component vector of int)
|
||||
0:20 v: direct index for structure (temp 2-component vector of float)
|
||||
0:20 'tempArg' (temp structure{temp 2-component vector of float v, temp 2-component vector of int i})
|
||||
0:20 Constant:
|
||||
0:20 0 (const int)
|
||||
0:20 move second child to first child (temp 2-component vector of int)
|
||||
0:? 'i' (layout(location=5 ) out 2-component vector of int)
|
||||
0:14 i: direct index for structure (temp 2-component vector of int)
|
||||
0:14 'local' (temp structure{temp 2-component vector of float v, temp 2-component vector of int i})
|
||||
0:14 Constant:
|
||||
0:14 1 (const int)
|
||||
0:16 Sequence
|
||||
0:16 move second child to first child (temp 4-component vector of float)
|
||||
0:20 i: direct index for structure (temp 2-component vector of int)
|
||||
0:20 'tempArg' (temp structure{temp 2-component vector of float v, temp 2-component vector of int i})
|
||||
0:20 Constant:
|
||||
0:20 1 (const int)
|
||||
0:22 Sequence
|
||||
0:22 move second child to first child (temp 4-component vector of float)
|
||||
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
|
||||
0:16 'out1' (layout(location=1 ) out 4-component vector of float)
|
||||
0:16 Branch: Return
|
||||
0:22 'out1' (layout(location=1 ) out 4-component vector of float)
|
||||
0:22 Branch: Return
|
||||
0:? Linker Objects
|
||||
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
|
||||
0:? 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
@ -72,60 +95,83 @@ Linked fragment stage:
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:7 Function Definition: PixelShaderFunction(vf4;vf4;struct-OutParam-vf2-vi21;struct-OutParam-vf2-vi21; (global 4-component vector of float)
|
||||
0:7 Function Definition: fun(struct-OutParam-vf2-vi21; (temp void)
|
||||
0:7 Function Parameters:
|
||||
0:7 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:7 'out1' (layout(location=1 ) out 4-component vector of float)
|
||||
0:7 'out2' (out structure{temp 2-component vector of float v, temp 2-component vector of int i})
|
||||
0:7 'out3' (out structure{temp 2-component vector of float v, temp 2-component vector of int i})
|
||||
0:7 'op' (out structure{temp 2-component vector of float v, temp 2-component vector of int i})
|
||||
0:? Sequence
|
||||
0:8 move second child to first child (temp 4-component vector of float)
|
||||
0:8 'out1' (layout(location=1 ) out 4-component vector of float)
|
||||
0:8 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:9 move second child to first child (temp 2-component vector of float)
|
||||
0:? 'v' (layout(location=2 ) out 2-component vector of float)
|
||||
0:8 move second child to first child (temp 2-component vector of float)
|
||||
0:8 v: direct index for structure (temp 2-component vector of float)
|
||||
0:8 'op' (out structure{temp 2-component vector of float v, temp 2-component vector of int i})
|
||||
0:8 Constant:
|
||||
0:8 0 (const int)
|
||||
0:8 Constant:
|
||||
0:8 0.400000
|
||||
0:8 0.400000
|
||||
0:9 move second child to first child (temp 2-component vector of int)
|
||||
0:9 i: direct index for structure (temp 2-component vector of int)
|
||||
0:9 'op' (out structure{temp 2-component vector of float v, temp 2-component vector of int i})
|
||||
0:9 Constant:
|
||||
0:9 2.000000
|
||||
0:9 2.000000
|
||||
0:10 move second child to first child (temp 2-component vector of int)
|
||||
0:? 'i' (layout(location=3 ) out 2-component vector of int)
|
||||
0:10 Constant:
|
||||
0:10 3 (const int)
|
||||
0:10 3 (const int)
|
||||
0:12 move second child to first child (temp 2-component vector of float)
|
||||
0:12 v: direct index for structure (temp 2-component vector of float)
|
||||
0:12 'local' (temp structure{temp 2-component vector of float v, temp 2-component vector of int i})
|
||||
0:12 Constant:
|
||||
0:12 0 (const int)
|
||||
0:12 Constant:
|
||||
0:12 12.000000
|
||||
0:12 12.000000
|
||||
0:13 move second child to first child (temp 2-component vector of int)
|
||||
0:13 i: direct index for structure (temp 2-component vector of int)
|
||||
0:13 'local' (temp structure{temp 2-component vector of float v, temp 2-component vector of int i})
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 Constant:
|
||||
0:13 13 (const int)
|
||||
0:13 13 (const int)
|
||||
0:9 1 (const int)
|
||||
0:9 Constant:
|
||||
0:9 7 (const int)
|
||||
0:9 7 (const int)
|
||||
0:13 Function Definition: PixelShaderFunction(vf4;vf4;struct-OutParam-vf2-vi21;struct-OutParam-vf2-vi21; (temp 4-component vector of float)
|
||||
0:13 Function Parameters:
|
||||
0:13 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:13 'out1' (layout(location=1 ) out 4-component vector of float)
|
||||
0:13 'out2' (out structure{temp 2-component vector of float v, temp 2-component vector of int i})
|
||||
0:13 'out3' (out structure{temp 2-component vector of float v, temp 2-component vector of int i})
|
||||
0:? Sequence
|
||||
0:14 move second child to first child (temp 2-component vector of float)
|
||||
0:14 move second child to first child (temp 4-component vector of float)
|
||||
0:14 'out1' (layout(location=1 ) out 4-component vector of float)
|
||||
0:14 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
0:15 move second child to first child (temp 2-component vector of float)
|
||||
0:? 'v' (layout(location=2 ) out 2-component vector of float)
|
||||
0:15 Constant:
|
||||
0:15 2.000000
|
||||
0:15 2.000000
|
||||
0:16 move second child to first child (temp 2-component vector of int)
|
||||
0:? 'i' (layout(location=3 ) out 2-component vector of int)
|
||||
0:16 Constant:
|
||||
0:16 3 (const int)
|
||||
0:16 3 (const int)
|
||||
0:18 move second child to first child (temp 2-component vector of float)
|
||||
0:18 v: direct index for structure (temp 2-component vector of float)
|
||||
0:18 'local' (temp structure{temp 2-component vector of float v, temp 2-component vector of int i})
|
||||
0:18 Constant:
|
||||
0:18 0 (const int)
|
||||
0:18 Constant:
|
||||
0:18 12.000000
|
||||
0:18 12.000000
|
||||
0:19 move second child to first child (temp 2-component vector of int)
|
||||
0:19 i: direct index for structure (temp 2-component vector of int)
|
||||
0:19 'local' (temp structure{temp 2-component vector of float v, temp 2-component vector of int i})
|
||||
0:19 Constant:
|
||||
0:19 1 (const int)
|
||||
0:19 Constant:
|
||||
0:19 13 (const int)
|
||||
0:19 13 (const int)
|
||||
0:20 Comma (temp void)
|
||||
0:20 Function Call: fun(struct-OutParam-vf2-vi21; (temp void)
|
||||
0:20 'tempArg' (temp structure{temp 2-component vector of float v, temp 2-component vector of int i})
|
||||
0:20 Sequence
|
||||
0:20 move second child to first child (temp 2-component vector of float)
|
||||
0:? 'v' (layout(location=4 ) out 2-component vector of float)
|
||||
0:14 v: direct index for structure (temp 2-component vector of float)
|
||||
0:14 'local' (temp structure{temp 2-component vector of float v, temp 2-component vector of int i})
|
||||
0:14 Constant:
|
||||
0:14 0 (const int)
|
||||
0:14 move second child to first child (temp 2-component vector of int)
|
||||
0:20 v: direct index for structure (temp 2-component vector of float)
|
||||
0:20 'tempArg' (temp structure{temp 2-component vector of float v, temp 2-component vector of int i})
|
||||
0:20 Constant:
|
||||
0:20 0 (const int)
|
||||
0:20 move second child to first child (temp 2-component vector of int)
|
||||
0:? 'i' (layout(location=5 ) out 2-component vector of int)
|
||||
0:14 i: direct index for structure (temp 2-component vector of int)
|
||||
0:14 'local' (temp structure{temp 2-component vector of float v, temp 2-component vector of int i})
|
||||
0:14 Constant:
|
||||
0:14 1 (const int)
|
||||
0:16 Sequence
|
||||
0:16 move second child to first child (temp 4-component vector of float)
|
||||
0:20 i: direct index for structure (temp 2-component vector of int)
|
||||
0:20 'tempArg' (temp structure{temp 2-component vector of float v, temp 2-component vector of int i})
|
||||
0:20 Constant:
|
||||
0:20 1 (const int)
|
||||
0:22 Sequence
|
||||
0:22 move second child to first child (temp 4-component vector of float)
|
||||
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
|
||||
0:16 'out1' (layout(location=1 ) out 4-component vector of float)
|
||||
0:16 Branch: Return
|
||||
0:22 'out1' (layout(location=1 ) out 4-component vector of float)
|
||||
0:22 Branch: Return
|
||||
0:? Linker Objects
|
||||
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
|
||||
0:? 'input' (layout(location=0 ) in 4-component vector of float)
|
||||
@ -137,82 +183,105 @@ gl_FragCoord origin is upper left
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 46
|
||||
// Id's are bound by 60
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "PixelShaderFunction" 9 11 15 21 37 40 43
|
||||
EntryPoint Fragment 4 "PixelShaderFunction" 28 30 33 37 51 54 57
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Name 4 "PixelShaderFunction"
|
||||
Name 9 "out1"
|
||||
Name 11 "input"
|
||||
Name 15 "v"
|
||||
Name 21 "i"
|
||||
Name 24 "OutParam"
|
||||
MemberName 24(OutParam) 0 "v"
|
||||
MemberName 24(OutParam) 1 "i"
|
||||
Name 26 "local"
|
||||
Name 37 "v"
|
||||
Name 40 "i"
|
||||
Name 43 "@entryPointOutput"
|
||||
Decorate 9(out1) Location 1
|
||||
Decorate 11(input) Location 0
|
||||
Decorate 15(v) Location 2
|
||||
Decorate 21(i) Location 3
|
||||
Decorate 37(v) Location 4
|
||||
Decorate 40(i) Location 5
|
||||
Decorate 43(@entryPointOutput) Location 0
|
||||
Name 10 "OutParam"
|
||||
MemberName 10(OutParam) 0 "v"
|
||||
MemberName 10(OutParam) 1 "i"
|
||||
Name 14 "fun(struct-OutParam-vf2-vi21;"
|
||||
Name 13 "op"
|
||||
Name 28 "out1"
|
||||
Name 30 "input"
|
||||
Name 33 "v"
|
||||
Name 37 "i"
|
||||
Name 40 "local"
|
||||
Name 47 "tempArg"
|
||||
Name 48 "param"
|
||||
Name 51 "v"
|
||||
Name 54 "i"
|
||||
Name 57 "@entryPointOutput"
|
||||
Decorate 28(out1) Location 1
|
||||
Decorate 30(input) Location 0
|
||||
Decorate 33(v) Location 2
|
||||
Decorate 37(i) Location 3
|
||||
Decorate 51(v) Location 4
|
||||
Decorate 54(i) Location 5
|
||||
Decorate 57(@entryPointOutput) Location 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
7: TypeVector 6(float) 4
|
||||
8: TypePointer Output 7(fvec4)
|
||||
9(out1): 8(ptr) Variable Output
|
||||
10: TypePointer Input 7(fvec4)
|
||||
11(input): 10(ptr) Variable Input
|
||||
13: TypeVector 6(float) 2
|
||||
14: TypePointer Output 13(fvec2)
|
||||
15(v): 14(ptr) Variable Output
|
||||
16: 6(float) Constant 1073741824
|
||||
17: 13(fvec2) ConstantComposite 16 16
|
||||
18: TypeInt 32 1
|
||||
19: TypeVector 18(int) 2
|
||||
20: TypePointer Output 19(ivec2)
|
||||
21(i): 20(ptr) Variable Output
|
||||
22: 18(int) Constant 3
|
||||
23: 19(ivec2) ConstantComposite 22 22
|
||||
24(OutParam): TypeStruct 13(fvec2) 19(ivec2)
|
||||
25: TypePointer Function 24(OutParam)
|
||||
27: 18(int) Constant 0
|
||||
28: 6(float) Constant 1094713344
|
||||
29: 13(fvec2) ConstantComposite 28 28
|
||||
30: TypePointer Function 13(fvec2)
|
||||
32: 18(int) Constant 1
|
||||
33: 18(int) Constant 13
|
||||
34: 19(ivec2) ConstantComposite 33 33
|
||||
35: TypePointer Function 19(ivec2)
|
||||
37(v): 14(ptr) Variable Output
|
||||
40(i): 20(ptr) Variable Output
|
||||
43(@entryPointOutput): 8(ptr) Variable Output
|
||||
7: TypeVector 6(float) 2
|
||||
8: TypeInt 32 1
|
||||
9: TypeVector 8(int) 2
|
||||
10(OutParam): TypeStruct 7(fvec2) 9(ivec2)
|
||||
11: TypePointer Function 10(OutParam)
|
||||
12: TypeFunction 2 11(ptr)
|
||||
16: 8(int) Constant 0
|
||||
17: 6(float) Constant 1053609165
|
||||
18: 7(fvec2) ConstantComposite 17 17
|
||||
19: TypePointer Function 7(fvec2)
|
||||
21: 8(int) Constant 1
|
||||
22: 8(int) Constant 7
|
||||
23: 9(ivec2) ConstantComposite 22 22
|
||||
24: TypePointer Function 9(ivec2)
|
||||
26: TypeVector 6(float) 4
|
||||
27: TypePointer Output 26(fvec4)
|
||||
28(out1): 27(ptr) Variable Output
|
||||
29: TypePointer Input 26(fvec4)
|
||||
30(input): 29(ptr) Variable Input
|
||||
32: TypePointer Output 7(fvec2)
|
||||
33(v): 32(ptr) Variable Output
|
||||
34: 6(float) Constant 1073741824
|
||||
35: 7(fvec2) ConstantComposite 34 34
|
||||
36: TypePointer Output 9(ivec2)
|
||||
37(i): 36(ptr) Variable Output
|
||||
38: 8(int) Constant 3
|
||||
39: 9(ivec2) ConstantComposite 38 38
|
||||
41: 6(float) Constant 1094713344
|
||||
42: 7(fvec2) ConstantComposite 41 41
|
||||
44: 8(int) Constant 13
|
||||
45: 9(ivec2) ConstantComposite 44 44
|
||||
51(v): 32(ptr) Variable Output
|
||||
54(i): 36(ptr) Variable Output
|
||||
57(@entryPointOutput): 27(ptr) Variable Output
|
||||
4(PixelShaderFunction): 2 Function None 3
|
||||
5: Label
|
||||
26(local): 25(ptr) Variable Function
|
||||
12: 7(fvec4) Load 11(input)
|
||||
Store 9(out1) 12
|
||||
Store 15(v) 17
|
||||
Store 21(i) 23
|
||||
31: 30(ptr) AccessChain 26(local) 27
|
||||
Store 31 29
|
||||
36: 35(ptr) AccessChain 26(local) 32
|
||||
Store 36 34
|
||||
38: 30(ptr) AccessChain 26(local) 27
|
||||
39: 13(fvec2) Load 38
|
||||
Store 37(v) 39
|
||||
41: 35(ptr) AccessChain 26(local) 32
|
||||
42: 19(ivec2) Load 41
|
||||
Store 40(i) 42
|
||||
44: 7(fvec4) Load 9(out1)
|
||||
Store 43(@entryPointOutput) 44
|
||||
40(local): 11(ptr) Variable Function
|
||||
47(tempArg): 11(ptr) Variable Function
|
||||
48(param): 11(ptr) Variable Function
|
||||
31: 26(fvec4) Load 30(input)
|
||||
Store 28(out1) 31
|
||||
Store 33(v) 35
|
||||
Store 37(i) 39
|
||||
43: 19(ptr) AccessChain 40(local) 16
|
||||
Store 43 42
|
||||
46: 24(ptr) AccessChain 40(local) 21
|
||||
Store 46 45
|
||||
49: 2 FunctionCall 14(fun(struct-OutParam-vf2-vi21;) 48(param)
|
||||
50:10(OutParam) Load 48(param)
|
||||
Store 47(tempArg) 50
|
||||
52: 19(ptr) AccessChain 47(tempArg) 16
|
||||
53: 7(fvec2) Load 52
|
||||
Store 51(v) 53
|
||||
55: 24(ptr) AccessChain 47(tempArg) 21
|
||||
56: 9(ivec2) Load 55
|
||||
Store 54(i) 56
|
||||
58: 26(fvec4) Load 28(out1)
|
||||
Store 57(@entryPointOutput) 58
|
||||
Return
|
||||
FunctionEnd
|
||||
14(fun(struct-OutParam-vf2-vi21;): 2 Function None 12
|
||||
13(op): 11(ptr) FunctionParameter
|
||||
15: Label
|
||||
20: 19(ptr) AccessChain 13(op) 16
|
||||
Store 20 18
|
||||
25: 24(ptr) AccessChain 13(op) 21
|
||||
Store 25 23
|
||||
Return
|
||||
FunctionEnd
|
||||
|
119
Test/baseResults/hlsl.entry.rename.frag.out
Normal file
119
Test/baseResults/hlsl.entry.rename.frag.out
Normal file
@ -0,0 +1,119 @@
|
||||
hlsl.entry.rename.frag
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:7 Function Definition: not_the_entry_point( (temp void)
|
||||
0:7 Function Parameters:
|
||||
0:11 Function Definition: main_in_spv( (temp structure{temp 4-component vector of float Color})
|
||||
0:11 Function Parameters:
|
||||
0:? Sequence
|
||||
0:13 move second child to first child (temp 4-component vector of float)
|
||||
0:13 Color: direct index for structure (temp 4-component vector of float)
|
||||
0:13 'psout' (temp structure{temp 4-component vector of float Color})
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 Constant:
|
||||
0:13 0.000000
|
||||
0:13 0.000000
|
||||
0:13 0.000000
|
||||
0:13 0.000000
|
||||
0:14 Sequence
|
||||
0:14 Sequence
|
||||
0:14 move second child to first child (temp 4-component vector of float)
|
||||
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:14 Color: direct index for structure (temp 4-component vector of float)
|
||||
0:14 'psout' (temp structure{temp 4-component vector of float Color})
|
||||
0:14 Constant:
|
||||
0:14 0 (const int)
|
||||
0:14 Branch: Return
|
||||
0:? Linker Objects
|
||||
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:? 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int also_not_the_entry_point})
|
||||
|
||||
|
||||
Linked fragment stage:
|
||||
|
||||
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:7 Function Definition: not_the_entry_point( (temp void)
|
||||
0:7 Function Parameters:
|
||||
0:11 Function Definition: main_in_spv( (temp structure{temp 4-component vector of float Color})
|
||||
0:11 Function Parameters:
|
||||
0:? Sequence
|
||||
0:13 move second child to first child (temp 4-component vector of float)
|
||||
0:13 Color: direct index for structure (temp 4-component vector of float)
|
||||
0:13 'psout' (temp structure{temp 4-component vector of float Color})
|
||||
0:13 Constant:
|
||||
0:13 0 (const int)
|
||||
0:13 Constant:
|
||||
0:13 0.000000
|
||||
0:13 0.000000
|
||||
0:13 0.000000
|
||||
0:13 0.000000
|
||||
0:14 Sequence
|
||||
0:14 Sequence
|
||||
0:14 move second child to first child (temp 4-component vector of float)
|
||||
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:14 Color: direct index for structure (temp 4-component vector of float)
|
||||
0:14 'psout' (temp structure{temp 4-component vector of float Color})
|
||||
0:14 Constant:
|
||||
0:14 0 (const int)
|
||||
0:14 Branch: Return
|
||||
0:? Linker Objects
|
||||
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:? 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int also_not_the_entry_point})
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 27
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main_in_spv" 20
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Name 4 "main_in_spv"
|
||||
Name 6 "not_the_entry_point("
|
||||
Name 10 "PS_OUTPUT"
|
||||
MemberName 10(PS_OUTPUT) 0 "Color"
|
||||
Name 12 "psout"
|
||||
Name 20 "Color"
|
||||
Name 24 "$Global"
|
||||
MemberName 24($Global) 0 "also_not_the_entry_point"
|
||||
Name 26 ""
|
||||
Decorate 20(Color) Location 0
|
||||
MemberDecorate 24($Global) 0 Offset 0
|
||||
Decorate 24($Global) Block
|
||||
Decorate 26 DescriptorSet 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
8: TypeFloat 32
|
||||
9: TypeVector 8(float) 4
|
||||
10(PS_OUTPUT): TypeStruct 9(fvec4)
|
||||
11: TypePointer Function 10(PS_OUTPUT)
|
||||
13: TypeInt 32 1
|
||||
14: 13(int) Constant 0
|
||||
15: 8(float) Constant 0
|
||||
16: 9(fvec4) ConstantComposite 15 15 15 15
|
||||
17: TypePointer Function 9(fvec4)
|
||||
19: TypePointer Output 9(fvec4)
|
||||
20(Color): 19(ptr) Variable Output
|
||||
24($Global): TypeStruct 13(int)
|
||||
25: TypePointer Uniform 24($Global)
|
||||
26: 25(ptr) Variable Uniform
|
||||
4(main_in_spv): 2 Function None 3
|
||||
5: Label
|
||||
12(psout): 11(ptr) Variable Function
|
||||
18: 17(ptr) AccessChain 12(psout) 14
|
||||
Store 18 16
|
||||
21: 17(ptr) AccessChain 12(psout) 14
|
||||
22: 9(fvec4) Load 21
|
||||
Store 20(Color) 22
|
||||
Return
|
||||
FunctionEnd
|
||||
6(not_the_entry_point(): 2 Function None 3
|
||||
7: Label
|
||||
Return
|
||||
FunctionEnd
|
187
Test/baseResults/hlsl.flatten.return.frag.out
Normal file
187
Test/baseResults/hlsl.flatten.return.frag.out
Normal file
@ -0,0 +1,187 @@
|
||||
hlsl.flatten.return.frag
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:11 Function Definition: Func1( (temp structure{temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3})
|
||||
0:11 Function Parameters:
|
||||
0:? Sequence
|
||||
0:12 Branch: Return with expression
|
||||
0:? Constant:
|
||||
0:? 1.000000
|
||||
0:? 1.000000
|
||||
0:? 1.000000
|
||||
0:? 1.000000
|
||||
0:? 2.000000
|
||||
0:? 3.000000
|
||||
0:? 4.000000
|
||||
0:16 Function Definition: main( (temp structure{temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3})
|
||||
0:16 Function Parameters:
|
||||
0:? Sequence
|
||||
0:17 Sequence
|
||||
0:17 Sequence
|
||||
0:17 move second child to first child (temp structure{temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3})
|
||||
0:17 'flattenTemp' (temp structure{temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3})
|
||||
0:17 Function Call: Func1( (temp structure{temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3})
|
||||
0:17 move second child to first child (temp 4-component vector of float)
|
||||
0:? 'color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:17 color: direct index for structure (temp 4-component vector of float)
|
||||
0:17 'flattenTemp' (temp structure{temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3})
|
||||
0:17 Constant:
|
||||
0:17 0 (const int)
|
||||
0:17 move second child to first child (temp float)
|
||||
0:? 'other_struct_member1' (layout(location=1 ) out float)
|
||||
0:17 other_struct_member1: direct index for structure (temp float)
|
||||
0:17 'flattenTemp' (temp structure{temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3})
|
||||
0:17 Constant:
|
||||
0:17 1 (const int)
|
||||
0:17 move second child to first child (temp float)
|
||||
0:? 'other_struct_member2' (layout(location=2 ) out float)
|
||||
0:17 other_struct_member2: direct index for structure (temp float)
|
||||
0:17 'flattenTemp' (temp structure{temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3})
|
||||
0:17 Constant:
|
||||
0:17 2 (const int)
|
||||
0:17 move second child to first child (temp float)
|
||||
0:? 'other_struct_member3' (layout(location=3 ) out float)
|
||||
0:17 other_struct_member3: direct index for structure (temp float)
|
||||
0:17 'flattenTemp' (temp structure{temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3})
|
||||
0:17 Constant:
|
||||
0:17 3 (const int)
|
||||
0:17 Branch: Return
|
||||
0:? Linker Objects
|
||||
0:? 'color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:? 'other_struct_member1' (layout(location=1 ) out float)
|
||||
0:? 'other_struct_member2' (layout(location=2 ) out float)
|
||||
0:? 'other_struct_member3' (layout(location=3 ) out float)
|
||||
|
||||
|
||||
Linked fragment stage:
|
||||
|
||||
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
0:? Sequence
|
||||
0:11 Function Definition: Func1( (temp structure{temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3})
|
||||
0:11 Function Parameters:
|
||||
0:? Sequence
|
||||
0:12 Branch: Return with expression
|
||||
0:? Constant:
|
||||
0:? 1.000000
|
||||
0:? 1.000000
|
||||
0:? 1.000000
|
||||
0:? 1.000000
|
||||
0:? 2.000000
|
||||
0:? 3.000000
|
||||
0:? 4.000000
|
||||
0:16 Function Definition: main( (temp structure{temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3})
|
||||
0:16 Function Parameters:
|
||||
0:? Sequence
|
||||
0:17 Sequence
|
||||
0:17 Sequence
|
||||
0:17 move second child to first child (temp structure{temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3})
|
||||
0:17 'flattenTemp' (temp structure{temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3})
|
||||
0:17 Function Call: Func1( (temp structure{temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3})
|
||||
0:17 move second child to first child (temp 4-component vector of float)
|
||||
0:? 'color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:17 color: direct index for structure (temp 4-component vector of float)
|
||||
0:17 'flattenTemp' (temp structure{temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3})
|
||||
0:17 Constant:
|
||||
0:17 0 (const int)
|
||||
0:17 move second child to first child (temp float)
|
||||
0:? 'other_struct_member1' (layout(location=1 ) out float)
|
||||
0:17 other_struct_member1: direct index for structure (temp float)
|
||||
0:17 'flattenTemp' (temp structure{temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3})
|
||||
0:17 Constant:
|
||||
0:17 1 (const int)
|
||||
0:17 move second child to first child (temp float)
|
||||
0:? 'other_struct_member2' (layout(location=2 ) out float)
|
||||
0:17 other_struct_member2: direct index for structure (temp float)
|
||||
0:17 'flattenTemp' (temp structure{temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3})
|
||||
0:17 Constant:
|
||||
0:17 2 (const int)
|
||||
0:17 move second child to first child (temp float)
|
||||
0:? 'other_struct_member3' (layout(location=3 ) out float)
|
||||
0:17 other_struct_member3: direct index for structure (temp float)
|
||||
0:17 'flattenTemp' (temp structure{temp 4-component vector of float color, temp float other_struct_member1, temp float other_struct_member2, temp float other_struct_member3})
|
||||
0:17 Constant:
|
||||
0:17 3 (const int)
|
||||
0:17 Branch: Return
|
||||
0:? Linker Objects
|
||||
0:? 'color' (layout(location=0 ) out 4-component vector of float)
|
||||
0:? 'other_struct_member1' (layout(location=1 ) out float)
|
||||
0:? 'other_struct_member2' (layout(location=2 ) out float)
|
||||
0:? 'other_struct_member3' (layout(location=3 ) out float)
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 45
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 24 31 36 40
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Name 4 "main"
|
||||
Name 8 "PS_OUTPUT"
|
||||
MemberName 8(PS_OUTPUT) 0 "color"
|
||||
MemberName 8(PS_OUTPUT) 1 "other_struct_member1"
|
||||
MemberName 8(PS_OUTPUT) 2 "other_struct_member2"
|
||||
MemberName 8(PS_OUTPUT) 3 "other_struct_member3"
|
||||
Name 10 "Func1("
|
||||
Name 21 "flattenTemp"
|
||||
Name 24 "color"
|
||||
Name 31 "other_struct_member1"
|
||||
Name 36 "other_struct_member2"
|
||||
Name 40 "other_struct_member3"
|
||||
Decorate 24(color) Location 0
|
||||
Decorate 31(other_struct_member1) Location 1
|
||||
Decorate 36(other_struct_member2) Location 2
|
||||
Decorate 40(other_struct_member3) Location 3
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
7: TypeVector 6(float) 4
|
||||
8(PS_OUTPUT): TypeStruct 7(fvec4) 6(float) 6(float) 6(float)
|
||||
9: TypeFunction 8(PS_OUTPUT)
|
||||
12: 6(float) Constant 1065353216
|
||||
13: 7(fvec4) ConstantComposite 12 12 12 12
|
||||
14: 6(float) Constant 1073741824
|
||||
15: 6(float) Constant 1077936128
|
||||
16: 6(float) Constant 1082130432
|
||||
17:8(PS_OUTPUT) ConstantComposite 13 14 15 16
|
||||
20: TypePointer Function 8(PS_OUTPUT)
|
||||
23: TypePointer Output 7(fvec4)
|
||||
24(color): 23(ptr) Variable Output
|
||||
25: TypeInt 32 1
|
||||
26: 25(int) Constant 0
|
||||
27: TypePointer Function 7(fvec4)
|
||||
30: TypePointer Output 6(float)
|
||||
31(other_struct_member1): 30(ptr) Variable Output
|
||||
32: 25(int) Constant 1
|
||||
33: TypePointer Function 6(float)
|
||||
36(other_struct_member2): 30(ptr) Variable Output
|
||||
37: 25(int) Constant 2
|
||||
40(other_struct_member3): 30(ptr) Variable Output
|
||||
41: 25(int) Constant 3
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
21(flattenTemp): 20(ptr) Variable Function
|
||||
22:8(PS_OUTPUT) FunctionCall 10(Func1()
|
||||
Store 21(flattenTemp) 22
|
||||
28: 27(ptr) AccessChain 21(flattenTemp) 26
|
||||
29: 7(fvec4) Load 28
|
||||
Store 24(color) 29
|
||||
34: 33(ptr) AccessChain 21(flattenTemp) 32
|
||||
35: 6(float) Load 34
|
||||
Store 31(other_struct_member1) 35
|
||||
38: 33(ptr) AccessChain 21(flattenTemp) 37
|
||||
39: 6(float) Load 38
|
||||
Store 36(other_struct_member2) 39
|
||||
42: 33(ptr) AccessChain 21(flattenTemp) 41
|
||||
43: 6(float) Load 42
|
||||
Store 40(other_struct_member3) 43
|
||||
Return
|
||||
FunctionEnd
|
||||
10(Func1():8(PS_OUTPUT) Function None 9
|
||||
11: Label
|
||||
ReturnValue 17
|
||||
FunctionEnd
|
@ -12,7 +12,7 @@ gl_FragCoord origin is upper left
|
||||
0:2 'scalar' (global float)
|
||||
0:2 Constant:
|
||||
0:2 2.000000
|
||||
0:5 Function Definition: ShaderFunction(vf1;f1; (global 1-component vector of float)
|
||||
0:5 Function Definition: ShaderFunction(vf1;f1; (temp 1-component vector of float)
|
||||
0:5 Function Parameters:
|
||||
0:5 'inFloat1' (in 1-component vector of float)
|
||||
0:5 'inScalar' (in float)
|
||||
@ -32,6 +32,7 @@ gl_FragCoord origin is upper left
|
||||
|
||||
Linked fragment stage:
|
||||
|
||||
WARNING: Linking fragment stage: Entry point not found
|
||||
|
||||
Shader version: 450
|
||||
gl_FragCoord origin is upper left
|
||||
@ -46,7 +47,7 @@ gl_FragCoord origin is upper left
|
||||
0:2 'scalar' (global float)
|
||||
0:2 Constant:
|
||||
0:2 2.000000
|
||||
0:5 Function Definition: ShaderFunction(vf1;f1; (global 1-component vector of float)
|
||||
0:5 Function Definition: ShaderFunction(vf1;f1; (temp 1-component vector of float)
|
||||
0:5 Function Parameters:
|
||||
0:5 'inFloat1' (in 1-component vector of float)
|
||||
0:5 'inScalar' (in float)
|
||||
@ -92,6 +93,7 @@ gl_FragCoord origin is upper left
|
||||
5: Label
|
||||
Store 14(f1) 15
|
||||
Store 16(scalar) 17
|
||||
Return
|
||||
FunctionEnd
|
||||
11(ShaderFunction(vf1;f1;): 6(float) Function None 8
|
||||
9(inFloat1): 7(ptr) FunctionParameter
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user