SPV: Implement Vulkan version of GLSL (KHR_vulkan_glsl).
This commit is contained in:
parent
019f08fcd8
commit
6c292d3ba7
@ -1,5 +1,5 @@
|
||||
/*
|
||||
** Copyright (c) 2014-2015 The Khronos Group Inc.
|
||||
** 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"),
|
||||
@ -27,8 +27,8 @@
|
||||
#ifndef GLSLstd450_H
|
||||
#define GLSLstd450_H
|
||||
|
||||
const int GLSLstd450Version = 99;
|
||||
const int GLSLstd450Revision = 3;
|
||||
static const int GLSLstd450Version = 100;
|
||||
static const int GLSLstd450Revision = 1;
|
||||
|
||||
enum GLSLstd450 {
|
||||
GLSLstd450Bad = 0, // Don't use
|
||||
@ -83,7 +83,7 @@ enum GLSLstd450 {
|
||||
GLSLstd450UClamp = 44,
|
||||
GLSLstd450SClamp = 45,
|
||||
GLSLstd450FMix = 46,
|
||||
GLSLstd450IMix = 47,
|
||||
GLSLstd450IMix = 47, // Reserved
|
||||
GLSLstd450Step = 48,
|
||||
GLSLstd450SmoothStep = 49,
|
||||
|
||||
@ -121,6 +121,10 @@ enum GLSLstd450 {
|
||||
GLSLstd450InterpolateAtSample = 77,
|
||||
GLSLstd450InterpolateAtOffset = 78,
|
||||
|
||||
GLSLstd450NMin = 79,
|
||||
GLSLstd450NMax = 80,
|
||||
GLSLstd450NClamp = 81,
|
||||
|
||||
GLSLstd450Count
|
||||
};
|
||||
|
||||
|
@ -1,5 +1,6 @@
|
||||
//
|
||||
//Copyright (C) 2014 LunarG, Inc.
|
||||
//Copyright (C) 2014-2015 LunarG, Inc.
|
||||
//Copyright (C) 2015-2016 Google, Inc.
|
||||
//
|
||||
//All rights reserved.
|
||||
//
|
||||
@ -95,6 +96,7 @@ protected:
|
||||
spv::Id getSampledType(const glslang::TSampler&);
|
||||
spv::Id convertGlslangToSpvType(const glslang::TType& type);
|
||||
spv::Id convertGlslangToSpvType(const glslang::TType& type, glslang::TLayoutPacking, const glslang::TQualifier&);
|
||||
spv::Id makeArraySizeId(const glslang::TArraySizes&, int dim);
|
||||
spv::Id accessChainLoad(const glslang::TType& type);
|
||||
glslang::TLayoutPacking getExplicitLayout(const glslang::TType& type) const;
|
||||
int getArrayStride(const glslang::TType& arrayType, glslang::TLayoutPacking, glslang::TLayoutMatrix);
|
||||
@ -195,6 +197,8 @@ spv::StorageClass TranslateStorageClass(const glslang::TType& type)
|
||||
else if (type.getQualifier().isPipeOutput())
|
||||
return spv::StorageClassOutput;
|
||||
else if (type.getQualifier().isUniformOrBuffer()) {
|
||||
if (type.getQualifier().layoutPushConstant)
|
||||
return spv::StorageClassPushConstant;
|
||||
if (type.getBasicType() == glslang::EbtBlock)
|
||||
return spv::StorageClassUniform;
|
||||
else if (type.getBasicType() == glslang::EbtAtomicUint)
|
||||
@ -225,6 +229,7 @@ spv::Dim TranslateDimensionality(const glslang::TSampler& sampler)
|
||||
case glslang::EsdCube: return spv::DimCube;
|
||||
case glslang::EsdRect: return spv::DimRect;
|
||||
case glslang::EsdBuffer: return spv::DimBuffer;
|
||||
case glslang::EsdSubpass: return spv::DimSubpassData;
|
||||
default:
|
||||
assert(0);
|
||||
return spv::Dim2D;
|
||||
@ -376,6 +381,8 @@ spv::BuiltIn TGlslangToSpvTraverser::TranslateBuiltInDecoration(glslang::TBuiltI
|
||||
case glslang::EbvPosition: return spv::BuiltInPosition;
|
||||
case glslang::EbvVertexId: return spv::BuiltInVertexId;
|
||||
case glslang::EbvInstanceId: return spv::BuiltInInstanceId;
|
||||
case glslang::EbvVertexIndex: return spv::BuiltInVertexIndex;
|
||||
case glslang::EbvInstanceIndex: return spv::BuiltInInstanceIndex;
|
||||
case glslang::EbvBaseVertex:
|
||||
case glslang::EbvBaseInstance:
|
||||
case glslang::EbvDrawId:
|
||||
@ -492,6 +499,25 @@ spv::ImageFormat TGlslangToSpvTraverser::TranslateImageFormat(const glslang::TTy
|
||||
}
|
||||
}
|
||||
|
||||
// Return whether or not the given type is something that should be tied to a
|
||||
// descriptor set.
|
||||
bool IsDescriptorResource(const glslang::TType& type)
|
||||
{
|
||||
// uniform and buffer blocks are included
|
||||
if (type.getBasicType() == glslang::EbtBlock)
|
||||
return type.getQualifier().isUniformOrBuffer();
|
||||
|
||||
// non block...
|
||||
// basically samplerXXX/subpass/sampler/texture are all included
|
||||
// if they are the global-scope-class, not the function parameter
|
||||
// (or local, if they ever exist) class.
|
||||
if (type.getBasicType() == glslang::EbtSampler)
|
||||
return type.getQualifier().isUniformOrBuffer();
|
||||
|
||||
// None of the above.
|
||||
return false;
|
||||
}
|
||||
|
||||
void InheritQualifiers(glslang::TQualifier& child, const glslang::TQualifier& parent)
|
||||
{
|
||||
if (child.layoutMatrix == glslang::ElmNone)
|
||||
@ -708,7 +734,7 @@ void TGlslangToSpvTraverser::visitSymbol(glslang::TIntermSymbol* symbol)
|
||||
}
|
||||
|
||||
// Only process non-linkage-only nodes for generating actual static uses
|
||||
if (! linkageOnly) {
|
||||
if (! linkageOnly || symbol->getQualifier().isSpecConstant()) {
|
||||
// Prepare to generate code for the access
|
||||
|
||||
// L-value chains will be computed left to right. We're on the symbol now,
|
||||
@ -717,10 +743,14 @@ void TGlslangToSpvTraverser::visitSymbol(glslang::TIntermSymbol* symbol)
|
||||
builder.clearAccessChain();
|
||||
|
||||
// For now, we consider all user variables as being in memory, so they are pointers,
|
||||
// except for "const in" arguments to a function, which are an intermediate object.
|
||||
// except for
|
||||
// A) "const in" arguments to a function, which are an intermediate object.
|
||||
// See comments in handleUserFunctionCall().
|
||||
glslang::TStorageQualifier qualifier = symbol->getQualifier().storage;
|
||||
if (qualifier == glslang::EvqConstReadOnly && constReadOnlyParameters.find(symbol->getId()) != constReadOnlyParameters.end())
|
||||
// B) Specialization constants (normal constant don't even come in as a variable),
|
||||
// These are also pure R-values.
|
||||
glslang::TQualifier qualifier = symbol->getQualifier();
|
||||
if ((qualifier.storage == glslang::EvqConstReadOnly && constReadOnlyParameters.find(symbol->getId()) != constReadOnlyParameters.end()) ||
|
||||
qualifier.isSpecConstant())
|
||||
builder.setAccessChainRValue(id);
|
||||
else
|
||||
builder.setAccessChainLValue(id);
|
||||
@ -1110,9 +1140,12 @@ bool TGlslangToSpvTraverser::visitAggregate(glslang::TVisit visit, glslang::TInt
|
||||
{
|
||||
if (node->isUserDefined())
|
||||
result = handleUserFunctionCall(node);
|
||||
assert(result);
|
||||
//assert(result); // this can happen for bad shaders because the call graph completeness checking is not yet done
|
||||
if (result) {
|
||||
builder.clearAccessChain();
|
||||
builder.setAccessChainRValue(result);
|
||||
} else
|
||||
spv::MissingFunctionality("missing user function; linker needs to catch that");
|
||||
|
||||
return false;
|
||||
}
|
||||
@ -1157,12 +1190,15 @@ bool TGlslangToSpvTraverser::visitAggregate(glslang::TVisit visit, glslang::TInt
|
||||
case glslang::EOpConstructUVec3:
|
||||
case glslang::EOpConstructUVec4:
|
||||
case glslang::EOpConstructStruct:
|
||||
case glslang::EOpConstructTextureSampler:
|
||||
{
|
||||
std::vector<spv::Id> arguments;
|
||||
translateArguments(*node, arguments);
|
||||
spv::Id resultTypeId = convertGlslangToSpvType(node->getType());
|
||||
spv::Id constructed;
|
||||
if (node->getOp() == glslang::EOpConstructStruct || node->getType().isArray()) {
|
||||
if (node->getOp() == glslang::EOpConstructTextureSampler)
|
||||
constructed = builder.createOp(spv::OpSampledImage, resultTypeId, arguments);
|
||||
else if (node->getOp() == glslang::EOpConstructStruct || node->getType().isArray()) {
|
||||
std::vector<spv::Id> constituents;
|
||||
for (int c = 0; c < (int)arguments.size(); ++c)
|
||||
constituents.push_back(arguments[c]);
|
||||
@ -1640,13 +1676,19 @@ spv::Id TGlslangToSpvTraverser::convertGlslangToSpvType(const glslang::TType& ty
|
||||
case glslang::EbtSampler:
|
||||
{
|
||||
const glslang::TSampler& sampler = type.getSampler();
|
||||
if (sampler.sampler) {
|
||||
// pure sampler
|
||||
spvType = builder.makeSamplerType();
|
||||
} else {
|
||||
// an image is present, make its type
|
||||
spvType = builder.makeImageType(getSampledType(sampler), TranslateDimensionality(sampler), sampler.shadow, sampler.arrayed, sampler.ms,
|
||||
sampler.image ? 2 : 1, TranslateImageFormat(type));
|
||||
if (! sampler.image) {
|
||||
if (sampler.combined) {
|
||||
// already has both image and sampler, make the combined type
|
||||
spvType = builder.makeSampledImageType(spvType);
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
case glslang::EbtStruct:
|
||||
case glslang::EbtBlock:
|
||||
@ -1790,12 +1832,10 @@ spv::Id TGlslangToSpvTraverser::convertGlslangToSpvType(const glslang::TType& ty
|
||||
|
||||
// make the arrays
|
||||
for (int dim = type.getArraySizes()->getNumDims() - 1; dim > 0; --dim) {
|
||||
int size = type.getArraySizes()->getDimSize(dim);
|
||||
assert(size > 0);
|
||||
spvType = builder.makeArrayType(spvType, size, stride);
|
||||
spvType = builder.makeArrayType(spvType, makeArraySizeId(*type.getArraySizes(), dim), stride);
|
||||
if (stride > 0)
|
||||
builder.addDecoration(spvType, spv::DecorationArrayStride, stride);
|
||||
stride *= size;
|
||||
stride *= type.getArraySizes()->getDimSize(dim);
|
||||
}
|
||||
} else {
|
||||
// single-dimensional array, and don't yet have stride
|
||||
@ -1810,7 +1850,7 @@ spv::Id TGlslangToSpvTraverser::convertGlslangToSpvType(const glslang::TType& ty
|
||||
spvType = builder.makeRuntimeArray(spvType);
|
||||
} else {
|
||||
assert(type.getOuterArraySize() > 0);
|
||||
spvType = builder.makeArrayType(spvType, type.getOuterArraySize(), stride);
|
||||
spvType = builder.makeArrayType(spvType, makeArraySizeId(*type.getArraySizes(), 0), stride);
|
||||
}
|
||||
if (stride > 0)
|
||||
builder.addDecoration(spvType, spv::DecorationArrayStride, stride);
|
||||
@ -1819,6 +1859,26 @@ spv::Id TGlslangToSpvTraverser::convertGlslangToSpvType(const glslang::TType& ty
|
||||
return spvType;
|
||||
}
|
||||
|
||||
// Turn the expression forming the array size into an id.
|
||||
// This is not quite trivial, because of specialization constants.
|
||||
// Sometimes, a raw constant is turned into an Id, and sometimes
|
||||
// a specialization constant expression is.
|
||||
spv::Id TGlslangToSpvTraverser::makeArraySizeId(const glslang::TArraySizes& arraySizes, int dim)
|
||||
{
|
||||
// First, see if this is sized with a node, meaning a specialization constant:
|
||||
glslang::TIntermTyped* specNode = arraySizes.getDimNode(dim);
|
||||
if (specNode != nullptr) {
|
||||
builder.clearAccessChain();
|
||||
specNode->traverse(this);
|
||||
return accessChainLoad(specNode->getAsTyped()->getType());
|
||||
}
|
||||
|
||||
// Otherwise, need a compile-time (front end) size, get it:
|
||||
int size = arraySizes.getDimSize(dim);
|
||||
assert(size > 0);
|
||||
return builder.makeUintConstant(size);
|
||||
}
|
||||
|
||||
// Wrap the builder's accessChainLoad to:
|
||||
// - localize handling of RelaxedPrecision
|
||||
// - use the SPIR-V inferred type instead of another conversion of the glslang type
|
||||
@ -1891,7 +1951,7 @@ int TGlslangToSpvTraverser::getMatrixStride(const glslang::TType& matrixType, gl
|
||||
// 'currentOffset' should be passed in already initialized, ready to modify, and reflecting
|
||||
// the migration of data from nextOffset -> currentOffset. It should be -1 on the first call.
|
||||
// -1 means a non-forced member offset (no decoration needed).
|
||||
void TGlslangToSpvTraverser::updateMemberOffset(const glslang::TType& structType, const glslang::TType& memberType, int& currentOffset, int& nextOffset,
|
||||
void TGlslangToSpvTraverser::updateMemberOffset(const glslang::TType& /*structType*/, const glslang::TType& memberType, int& currentOffset, int& nextOffset,
|
||||
glslang::TLayoutPacking explicitLayout, glslang::TLayoutMatrix matrixLayout)
|
||||
{
|
||||
// this will get a positive value when deemed necessary
|
||||
@ -2169,6 +2229,24 @@ spv::Id TGlslangToSpvTraverser::createImageTextureFunctionCall(glslang::TIntermO
|
||||
std::vector<spv::Id> operands;
|
||||
auto opIt = arguments.begin();
|
||||
operands.push_back(*(opIt++));
|
||||
|
||||
// Handle subpass operations
|
||||
// TODO: GLSL should change to have the "MS" only on the type rather than the
|
||||
// built-in function.
|
||||
if (cracked.subpass) {
|
||||
// add on the (0,0) coordinate
|
||||
spv::Id zero = builder.makeIntConstant(0);
|
||||
std::vector<spv::Id> comps;
|
||||
comps.push_back(zero);
|
||||
comps.push_back(zero);
|
||||
operands.push_back(builder.makeCompositeConstant(builder.makeVectorType(builder.makeIntType(32), 2), comps));
|
||||
if (sampler.ms) {
|
||||
operands.push_back(spv::ImageOperandsSampleMask);
|
||||
operands.push_back(*(opIt++));
|
||||
}
|
||||
return builder.createOp(spv::OpImageRead, convertGlslangToSpvType(node->getType()), operands);
|
||||
}
|
||||
|
||||
operands.push_back(*(opIt++));
|
||||
if (node->getOp() == glslang::EOpImageLoad) {
|
||||
if (sampler.ms) {
|
||||
@ -3109,7 +3187,7 @@ spv::Id TGlslangToSpvTraverser::makeSmearedConstant(spv::Id constant, int vector
|
||||
}
|
||||
|
||||
// For glslang ops that map to SPV atomic opCodes
|
||||
spv::Id TGlslangToSpvTraverser::createAtomicOperation(glslang::TOperator op, spv::Decoration precision, spv::Id typeId, std::vector<spv::Id>& operands, glslang::TBasicType typeProxy)
|
||||
spv::Id TGlslangToSpvTraverser::createAtomicOperation(glslang::TOperator op, spv::Decoration /*precision*/, spv::Id typeId, std::vector<spv::Id>& operands, glslang::TBasicType typeProxy)
|
||||
{
|
||||
spv::Op opCode = spv::OpNop;
|
||||
|
||||
@ -3244,8 +3322,10 @@ spv::Id TGlslangToSpvTraverser::createMiscOperation(glslang::TOperator op, spv::
|
||||
case glslang::EOpMix:
|
||||
if (isFloat)
|
||||
libCall = spv::GLSLstd450FMix;
|
||||
else
|
||||
libCall = spv::GLSLstd450IMix;
|
||||
else {
|
||||
opCode = spv::OpSelect;
|
||||
spv::MissingFunctionality("translating integer mix to OpSelect");
|
||||
}
|
||||
builder.promoteScalar(precision, operands.front(), operands.back());
|
||||
break;
|
||||
case glslang::EOpStep:
|
||||
@ -3439,6 +3519,8 @@ spv::Id TGlslangToSpvTraverser::getSymbolId(const glslang::TIntermSymbol* symbol
|
||||
if (! symbol->getType().isStruct()) {
|
||||
addDecoration(id, TranslatePrecisionDecoration(symbol->getType()));
|
||||
addDecoration(id, TranslateInterpolationDecoration(symbol->getType().getQualifier()));
|
||||
if (symbol->getType().getQualifier().hasSpecConstantId())
|
||||
addDecoration(id, spv::DecorationSpecId, symbol->getType().getQualifier().layoutSpecConstantId);
|
||||
if (symbol->getQualifier().hasLocation())
|
||||
builder.addDecoration(id, spv::DecorationLocation, symbol->getQualifier().layoutLocation);
|
||||
if (symbol->getQualifier().hasIndex())
|
||||
@ -3463,8 +3545,14 @@ spv::Id TGlslangToSpvTraverser::getSymbolId(const glslang::TIntermSymbol* symbol
|
||||
}
|
||||
if (symbol->getQualifier().hasSet())
|
||||
builder.addDecoration(id, spv::DecorationDescriptorSet, symbol->getQualifier().layoutSet);
|
||||
else if (IsDescriptorResource(symbol->getType())) {
|
||||
// default to 0
|
||||
builder.addDecoration(id, spv::DecorationDescriptorSet, 0);
|
||||
}
|
||||
if (symbol->getQualifier().hasBinding())
|
||||
builder.addDecoration(id, spv::DecorationBinding, symbol->getQualifier().layoutBinding);
|
||||
if (symbol->getQualifier().hasAttachment())
|
||||
builder.addDecoration(id, spv::DecorationInputAttachmentIndex, symbol->getQualifier().layoutAttachment);
|
||||
if (glslangIntermediate->getXfbMode()) {
|
||||
builder.addCapability(spv::CapabilityTransformFeedback);
|
||||
if (symbol->getQualifier().hasXfbStride())
|
||||
@ -3510,7 +3598,7 @@ void TGlslangToSpvTraverser::addMemberDecoration(spv::Id id, int member, spv::De
|
||||
}
|
||||
|
||||
// Make a full tree of instructions to build a SPIR-V specialization constant,
|
||||
// or regularly constant if possible.
|
||||
// or regular constant if possible.
|
||||
//
|
||||
// TBD: this is not yet done, nor verified to be the best design, it does do the leaf symbols though
|
||||
//
|
||||
@ -3523,10 +3611,38 @@ spv::Id TGlslangToSpvTraverser::createSpvSpecConstant(const glslang::TIntermType
|
||||
{
|
||||
assert(node.getQualifier().storage == glslang::EvqConst);
|
||||
|
||||
if (! node.getQualifier().specConstant) {
|
||||
// hand off to the non-spec-constant path
|
||||
assert(node.getAsConstantUnion() != nullptr || node.getAsSymbolNode() != nullptr);
|
||||
int nextConst = 0;
|
||||
return createSpvConstant(node.getType(), node.getAsConstantUnion() ? node.getAsConstantUnion()->getConstArray() : node.getAsSymbolNode()->getConstArray(), nextConst, false);
|
||||
return createSpvConstant(node.getType(), node.getAsConstantUnion() ? node.getAsConstantUnion()->getConstArray() : node.getAsSymbolNode()->getConstArray(),
|
||||
nextConst, false);
|
||||
}
|
||||
|
||||
// We now know we have a specialization constant to build
|
||||
|
||||
if (node.getAsSymbolNode() && node.getQualifier().hasSpecConstantId()) {
|
||||
// this is a direct literal assigned to a layout(constant_id=) declaration
|
||||
int nextConst = 0;
|
||||
return createSpvConstant(node.getType(), node.getAsConstantUnion() ? node.getAsConstantUnion()->getConstArray() : node.getAsSymbolNode()->getConstArray(),
|
||||
nextConst, true);
|
||||
} else {
|
||||
// gl_WorkgroupSize is a special case until the front-end handles hierarchical specialization constants,
|
||||
// even then, it's specialization ids are handled by special case syntax in GLSL: layout(local_size_x = ...
|
||||
if (node.getType().getQualifier().builtIn == glslang::EbvWorkGroupSize) {
|
||||
std::vector<spv::Id> dimConstId;
|
||||
for (int dim = 0; dim < 3; ++dim) {
|
||||
bool specConst = (glslangIntermediate->getLocalSizeSpecId(dim) != glslang::TQualifier::layoutNotSet);
|
||||
dimConstId.push_back(builder.makeUintConstant(glslangIntermediate->getLocalSize(dim), specConst));
|
||||
if (specConst)
|
||||
addDecoration(dimConstId.back(), spv::DecorationSpecId, glslangIntermediate->getLocalSizeSpecId(dim));
|
||||
}
|
||||
return builder.makeCompositeConstant(builder.makeVectorType(builder.makeUintType(32), 3), dimConstId, true);
|
||||
} else {
|
||||
spv::MissingFunctionality("specialization-constant expression trees");
|
||||
return spv::NoResult;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Use 'consts' as the flattened glslang source of scalar constants to recursively
|
||||
|
@ -437,7 +437,7 @@ namespace spv {
|
||||
}
|
||||
|
||||
// Store IDs from instruction in our map
|
||||
for (int op = 0; op < spv::InstructionDesc[opCode].operands.getNum(); ++op, --numOperands) {
|
||||
for (int op = 0; numOperands > 0; ++op, --numOperands) {
|
||||
switch (spv::InstructionDesc[opCode].operands.getClass(op)) {
|
||||
case spv::OperandId:
|
||||
idFn(asId(word++));
|
||||
|
@ -1,5 +1,6 @@
|
||||
//
|
||||
//Copyright (C) 2014 LunarG, Inc.
|
||||
//Copyright (C) 2014-2015 LunarG, Inc.
|
||||
//Copyright (C) 2015-2016 Google, Inc.
|
||||
//
|
||||
//All rights reserved.
|
||||
//
|
||||
@ -308,11 +309,9 @@ Id Builder::makeMatrixType(Id component, int cols, int rows)
|
||||
// TODO: performance: track arrays per stride
|
||||
// If a stride is supplied (non-zero) make an array.
|
||||
// If no stride (0), reuse previous array types.
|
||||
Id Builder::makeArrayType(Id element, unsigned size, int stride)
|
||||
// 'size' is an Id of a constant or specialization constant of the array size
|
||||
Id Builder::makeArrayType(Id element, Id sizeId, int stride)
|
||||
{
|
||||
// First, we need a constant instruction for the size
|
||||
Id sizeId = makeUintConstant(size);
|
||||
|
||||
Instruction* type;
|
||||
if (stride == 0) {
|
||||
// try to find existing type
|
||||
@ -518,8 +517,12 @@ int Builder::getNumTypeConstituents(Id typeId) const
|
||||
return 1;
|
||||
case OpTypeVector:
|
||||
case OpTypeMatrix:
|
||||
case OpTypeArray:
|
||||
return instr->getImmediateOperand(1);
|
||||
case OpTypeArray:
|
||||
{
|
||||
Id lengthId = instr->getImmediateOperand(1);
|
||||
return module.getInstruction(lengthId)->getImmediateOperand(0);
|
||||
}
|
||||
case OpTypeStruct:
|
||||
return instr->getNumOperands();
|
||||
default:
|
||||
@ -647,7 +650,9 @@ Id Builder::makeBoolConstant(bool b, bool specConstant)
|
||||
Instruction* constant;
|
||||
Op opcode = specConstant ? (b ? OpSpecConstantTrue : OpSpecConstantFalse) : (b ? OpConstantTrue : OpConstantFalse);
|
||||
|
||||
// See if we already made it
|
||||
// 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 = 0;
|
||||
for (int i = 0; i < (int)groupedConstants[OpTypeBool].size(); ++i) {
|
||||
constant = groupedConstants[OpTypeBool][i];
|
||||
@ -657,6 +662,7 @@ Id Builder::makeBoolConstant(bool b, bool specConstant)
|
||||
|
||||
if (existing)
|
||||
return existing;
|
||||
}
|
||||
|
||||
// Make it
|
||||
Instruction* c = new Instruction(getUniqueId(), typeId, opcode);
|
||||
@ -670,9 +676,14 @@ Id Builder::makeBoolConstant(bool b, bool specConstant)
|
||||
Id Builder::makeIntConstant(Id typeId, unsigned value, bool specConstant)
|
||||
{
|
||||
Op opcode = specConstant ? OpSpecConstant : OpConstant;
|
||||
|
||||
// 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(OpTypeInt, opcode, typeId, value);
|
||||
if (existing)
|
||||
return existing;
|
||||
}
|
||||
|
||||
Instruction* c = new Instruction(getUniqueId(), typeId, opcode);
|
||||
c->addImmediateOperand(value);
|
||||
@ -688,9 +699,14 @@ Id Builder::makeFloatConstant(float f, bool specConstant)
|
||||
Op opcode = specConstant ? OpSpecConstant : OpConstant;
|
||||
Id typeId = makeFloatType(32);
|
||||
unsigned value = *(unsigned int*)&f;
|
||||
|
||||
// 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);
|
||||
@ -708,9 +724,14 @@ Id Builder::makeDoubleConstant(double d, bool specConstant)
|
||||
unsigned long long value = *(unsigned long long*)&d;
|
||||
unsigned op1 = value & 0xFFFFFFFF;
|
||||
unsigned op2 = value >> 32;
|
||||
|
||||
// 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, op1, op2);
|
||||
if (existing)
|
||||
return existing;
|
||||
}
|
||||
|
||||
Instruction* c = new Instruction(getUniqueId(), typeId, opcode);
|
||||
c->addImmediateOperand(op1);
|
||||
@ -751,8 +772,9 @@ Id Builder::findCompositeConstant(Op typeClass, std::vector<Id>& comps) const
|
||||
}
|
||||
|
||||
// Comments in header
|
||||
Id Builder::makeCompositeConstant(Id typeId, std::vector<Id>& members)
|
||||
Id Builder::makeCompositeConstant(Id typeId, std::vector<Id>& members, bool specConstant)
|
||||
{
|
||||
Op opcode = specConstant ? OpSpecConstantComposite : OpConstantComposite;
|
||||
assert(typeId);
|
||||
Op typeClass = getTypeClass(typeId);
|
||||
|
||||
@ -767,11 +789,13 @@ Id Builder::makeCompositeConstant(Id typeId, std::vector<Id>& members)
|
||||
return makeFloatConstant(0.0);
|
||||
}
|
||||
|
||||
if (! specConstant) {
|
||||
Id existing = findCompositeConstant(typeClass, members);
|
||||
if (existing)
|
||||
return existing;
|
||||
}
|
||||
|
||||
Instruction* c = new Instruction(getUniqueId(), typeId, OpConstantComposite);
|
||||
Instruction* c = new Instruction(getUniqueId(), typeId, opcode);
|
||||
for (int op = 0; op < (int)members.size(); ++op)
|
||||
c->addIdOperand(members[op]);
|
||||
constantsTypesGlobals.push_back(std::unique_ptr<Instruction>(c));
|
||||
|
@ -1,5 +1,6 @@
|
||||
//
|
||||
//Copyright (C) 2014 LunarG, Inc.
|
||||
//Copyright (C) 2014-2015 LunarG, Inc.
|
||||
//Copyright (C) 2015-2016 Google, Inc.
|
||||
//
|
||||
//All rights reserved.
|
||||
//
|
||||
@ -104,7 +105,7 @@ public:
|
||||
Id makeStructResultType(Id type0, Id type1);
|
||||
Id makeVectorType(Id component, int size);
|
||||
Id makeMatrixType(Id component, int cols, int rows);
|
||||
Id makeArrayType(Id element, unsigned size, int stride); // 0 means no stride decoration
|
||||
Id makeArrayType(Id element, Id sizeId, int stride); // 0 stride means no stride decoration
|
||||
Id makeRuntimeArray(Id element);
|
||||
Id makeFunctionType(Id returnType, const std::vector<Id>& paramTypes);
|
||||
Id makeImageType(Id sampledType, Dim, bool depth, bool arrayed, bool ms, unsigned sampled, ImageFormat format);
|
||||
@ -189,7 +190,7 @@ public:
|
||||
Id makeDoubleConstant(double d, bool specConstant = false);
|
||||
|
||||
// Turn the array of constants into a proper spv constant of the requested type.
|
||||
Id makeCompositeConstant(Id type, std::vector<Id>& comps);
|
||||
Id makeCompositeConstant(Id type, std::vector<Id>& comps, bool specConst = false);
|
||||
|
||||
// Methods for adding information outside the CFG.
|
||||
Instruction* addEntryPoint(ExecutionModel, Function*, const char* name);
|
||||
|
@ -473,6 +473,7 @@ void SpirvStream::disassembleInstruction(Id resultId, Id /*typeId*/, Op opCode,
|
||||
else
|
||||
out << OperandClassParams[operandClass].getName(stream[word++]);
|
||||
--numOperands;
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -531,7 +532,6 @@ void GLSLstd450GetDebugNames(const char** names)
|
||||
names[GLSLstd450SClamp] = "SClamp";
|
||||
names[GLSLstd450UClamp] = "UClamp";
|
||||
names[GLSLstd450FMix] = "FMix";
|
||||
names[GLSLstd450IMix] = "IMix";
|
||||
names[GLSLstd450Step] = "Step";
|
||||
names[GLSLstd450SmoothStep] = "SmoothStep";
|
||||
names[GLSLstd450Fma] = "Fma";
|
||||
|
@ -712,7 +712,7 @@ const char* KernelProfilingInfoString(int info)
|
||||
}
|
||||
}
|
||||
|
||||
const int CapabilityCeiling = 57;
|
||||
const int CapabilityCeiling = 58;
|
||||
|
||||
const char* CapabilityString(int info)
|
||||
{
|
||||
@ -775,6 +775,7 @@ const char* CapabilityString(int info)
|
||||
case 54: return "GeometryStreams";
|
||||
case 55: return "StorageImageReadWithoutFormat";
|
||||
case 56: return "StorageImageWriteWithoutFormat";
|
||||
case 57: return "MultiViewport";
|
||||
|
||||
case CapabilityCeiling:
|
||||
default: return "Bad";
|
||||
@ -1104,6 +1105,7 @@ const char* OpcodeString(int op)
|
||||
case 317: return "OpNoLine";
|
||||
case 318: return "OpAtomicFlagTestAndSet";
|
||||
case 319: return "OpAtomicFlagClear";
|
||||
case 320: return "OpImageSparseRead";
|
||||
|
||||
case OpcodeCeiling:
|
||||
default:
|
||||
@ -1311,7 +1313,6 @@ void Parameterize()
|
||||
CapabilityParams[CapabilityTessellation].caps.push_back(CapabilityShader);
|
||||
CapabilityParams[CapabilityVector16].caps.push_back(CapabilityKernel);
|
||||
CapabilityParams[CapabilityFloat16Buffer].caps.push_back(CapabilityKernel);
|
||||
CapabilityParams[CapabilityFloat16].caps.push_back(CapabilityFloat16Buffer);
|
||||
CapabilityParams[CapabilityInt64Atomics].caps.push_back(CapabilityInt64);
|
||||
CapabilityParams[CapabilityImageBasic].caps.push_back(CapabilityKernel);
|
||||
CapabilityParams[CapabilityImageReadWrite].caps.push_back(CapabilityImageBasic);
|
||||
@ -1353,6 +1354,7 @@ void Parameterize()
|
||||
CapabilityParams[CapabilityGeometryStreams].caps.push_back(CapabilityGeometry);
|
||||
CapabilityParams[CapabilityStorageImageReadWithoutFormat].caps.push_back(CapabilityShader);
|
||||
CapabilityParams[CapabilityStorageImageWriteWithoutFormat].caps.push_back(CapabilityShader);
|
||||
CapabilityParams[CapabilityMultiViewport].caps.push_back(CapabilityGeometry);
|
||||
|
||||
AddressingParams[AddressingModelPhysical32].caps.push_back(CapabilityAddresses);
|
||||
AddressingParams[AddressingModelPhysical64].caps.push_back(CapabilityAddresses);
|
||||
@ -1362,7 +1364,7 @@ void Parameterize()
|
||||
MemoryParams[MemoryModelOpenCL].caps.push_back(CapabilityKernel);
|
||||
|
||||
MemorySemanticsParams[MemorySemanticsUniformMemoryShift].caps.push_back(CapabilityShader);
|
||||
MemorySemanticsParams[MemorySemanticsAtomicCounterMemoryShift].caps.push_back(CapabilityShader);
|
||||
MemorySemanticsParams[MemorySemanticsAtomicCounterMemoryShift].caps.push_back(CapabilityAtomicStorage);
|
||||
|
||||
ExecutionModelParams[ExecutionModelVertex].caps.push_back(CapabilityShader);
|
||||
ExecutionModelParams[ExecutionModelTessellationControl].caps.push_back(CapabilityTessellation);
|
||||
@ -1528,7 +1530,7 @@ void Parameterize()
|
||||
DecorationParams[DecorationFlat].caps.push_back(CapabilityShader);
|
||||
DecorationParams[DecorationPatch].caps.push_back(CapabilityTessellation);
|
||||
DecorationParams[DecorationCentroid].caps.push_back(CapabilityShader);
|
||||
DecorationParams[DecorationSample].caps.push_back(CapabilityShader);
|
||||
DecorationParams[DecorationSample].caps.push_back(CapabilitySampleRateShading);
|
||||
DecorationParams[DecorationInvariant].caps.push_back(CapabilityShader);
|
||||
DecorationParams[DecorationConstant].caps.push_back(CapabilityKernel);
|
||||
DecorationParams[DecorationUniform].caps.push_back(CapabilityShader);
|
||||
@ -1537,14 +1539,14 @@ void Parameterize()
|
||||
DecorationParams[DecorationStream].caps.push_back(CapabilityGeometryStreams);
|
||||
DecorationParams[DecorationLocation].caps.push_back(CapabilityShader);
|
||||
DecorationParams[DecorationComponent].caps.push_back(CapabilityShader);
|
||||
DecorationParams[DecorationOffset].caps.push_back(CapabilityShader);
|
||||
DecorationParams[DecorationIndex].caps.push_back(CapabilityShader);
|
||||
DecorationParams[DecorationBinding].caps.push_back(CapabilityShader);
|
||||
DecorationParams[DecorationDescriptorSet].caps.push_back(CapabilityShader);
|
||||
DecorationParams[DecorationXfbBuffer].caps.push_back(CapabilityTransformFeedback);
|
||||
DecorationParams[DecorationXfbStride].caps.push_back(CapabilityTransformFeedback);
|
||||
DecorationParams[DecorationArrayStride].caps.push_back(CapabilityShader);
|
||||
DecorationParams[DecorationMatrixStride].caps.push_back(CapabilityShader);
|
||||
DecorationParams[DecorationBuiltIn].caps.push_back(CapabilityShader);
|
||||
DecorationParams[DecorationMatrixStride].caps.push_back(CapabilityMatrix);
|
||||
DecorationParams[DecorationFuncParamAttr].caps.push_back(CapabilityKernel);
|
||||
DecorationParams[DecorationFPRoundingMode].caps.push_back(CapabilityKernel);
|
||||
DecorationParams[DecorationFPFastMathMode].caps.push_back(CapabilityKernel);
|
||||
@ -1556,8 +1558,8 @@ void Parameterize()
|
||||
|
||||
BuiltInParams[BuiltInPosition].caps.push_back(CapabilityShader);
|
||||
BuiltInParams[BuiltInPointSize].caps.push_back(CapabilityShader);
|
||||
BuiltInParams[BuiltInClipDistance].caps.push_back(CapabilityShader);
|
||||
BuiltInParams[BuiltInCullDistance].caps.push_back(CapabilityShader);
|
||||
BuiltInParams[BuiltInClipDistance].caps.push_back(CapabilityClipDistance);
|
||||
BuiltInParams[BuiltInCullDistance].caps.push_back(CapabilityCullDistance);
|
||||
|
||||
BuiltInParams[BuiltInVertexId].caps.push_back(CapabilityShader);
|
||||
BuiltInParams[BuiltInVertexId].desc = "Vertex ID, which takes on values 0, 1, 2, . . . .";
|
||||
@ -1576,7 +1578,7 @@ void Parameterize()
|
||||
BuiltInParams[BuiltInInvocationId].caps.push_back(CapabilityGeometry);
|
||||
BuiltInParams[BuiltInInvocationId].caps.push_back(CapabilityTessellation);
|
||||
BuiltInParams[BuiltInLayer].caps.push_back(CapabilityGeometry);
|
||||
BuiltInParams[BuiltInViewportIndex].caps.push_back(CapabilityGeometry);
|
||||
BuiltInParams[BuiltInViewportIndex].caps.push_back(CapabilityMultiViewport);
|
||||
BuiltInParams[BuiltInTessLevelOuter].caps.push_back(CapabilityTessellation);
|
||||
BuiltInParams[BuiltInTessLevelInner].caps.push_back(CapabilityTessellation);
|
||||
BuiltInParams[BuiltInTessCoord].caps.push_back(CapabilityTessellation);
|
||||
@ -1584,9 +1586,9 @@ void Parameterize()
|
||||
BuiltInParams[BuiltInFragCoord].caps.push_back(CapabilityShader);
|
||||
BuiltInParams[BuiltInPointCoord].caps.push_back(CapabilityShader);
|
||||
BuiltInParams[BuiltInFrontFacing].caps.push_back(CapabilityShader);
|
||||
BuiltInParams[BuiltInSampleId].caps.push_back(CapabilityShader);
|
||||
BuiltInParams[BuiltInSamplePosition].caps.push_back(CapabilityShader);
|
||||
BuiltInParams[BuiltInSampleMask].caps.push_back(CapabilityShader);
|
||||
BuiltInParams[BuiltInSampleId].caps.push_back(CapabilitySampleRateShading);
|
||||
BuiltInParams[BuiltInSamplePosition].caps.push_back(CapabilitySampleRateShading);
|
||||
BuiltInParams[BuiltInSampleMask].caps.push_back(CapabilitySampleRateShading);
|
||||
BuiltInParams[BuiltInFragDepth].caps.push_back(CapabilityShader);
|
||||
BuiltInParams[BuiltInHelperInvocation].caps.push_back(CapabilityShader);
|
||||
BuiltInParams[BuiltInWorkDim].caps.push_back(CapabilityKernel);
|
||||
@ -1962,6 +1964,12 @@ void Parameterize()
|
||||
InstructionDesc[OpImageSparseDrefGather].operands.push(OperandVariableIds, "", true);
|
||||
InstructionDesc[OpImageSparseDrefGather].capabilities.push_back(CapabilitySparseResidency);
|
||||
|
||||
InstructionDesc[OpImageSparseRead].operands.push(OperandId, "'Image'");
|
||||
InstructionDesc[OpImageSparseRead].operands.push(OperandId, "'Coordinate'");
|
||||
InstructionDesc[OpImageSparseRead].operands.push(OperandImageOperands, "", true);
|
||||
InstructionDesc[OpImageSparseRead].operands.push(OperandVariableIds, "", true);
|
||||
InstructionDesc[OpImageSparseRead].capabilities.push_back(CapabilitySparseResidency);
|
||||
|
||||
InstructionDesc[OpImageSparseTexelsResident].operands.push(OperandId, "'Resident Code'");
|
||||
InstructionDesc[OpImageSparseTexelsResident].capabilities.push_back(CapabilitySparseResidency);
|
||||
|
||||
|
@ -243,7 +243,7 @@ protected:
|
||||
int resultPresent : 1;
|
||||
};
|
||||
|
||||
const int OpcodeCeiling = 320;
|
||||
const int OpcodeCeiling = 321;
|
||||
|
||||
// The set of objects that hold all the instruction/operand
|
||||
// parameterization information.
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (c) 2014-2015 The Khronos Group Inc.
|
||||
// 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"),
|
||||
@ -46,12 +46,12 @@ namespace spv {
|
||||
|
||||
typedef unsigned int Id;
|
||||
|
||||
#define SPV_VERSION 10000
|
||||
#define SPV_REVISION 2
|
||||
#define SPV_VERSION 0x10000
|
||||
#define SPV_REVISION 3
|
||||
|
||||
static const unsigned int MagicNumber = 0x07230203;
|
||||
static const unsigned int Version = 0x00010000;
|
||||
static const unsigned int Revision = 2;
|
||||
static const unsigned int Revision = 3;
|
||||
static const unsigned int OpCodeMask = 0xffff;
|
||||
static const unsigned int WordCountShift = 16;
|
||||
|
||||
@ -563,6 +563,7 @@ enum Capability {
|
||||
CapabilityGeometryStreams = 54,
|
||||
CapabilityStorageImageReadWithoutFormat = 55,
|
||||
CapabilityStorageImageWriteWithoutFormat = 56,
|
||||
CapabilityMultiViewport = 57,
|
||||
};
|
||||
|
||||
enum Op {
|
||||
@ -859,6 +860,7 @@ enum Op {
|
||||
OpNoLine = 317,
|
||||
OpAtomicFlagTestAndSet = 318,
|
||||
OpAtomicFlagClear = 319,
|
||||
OpImageSparseRead = 320,
|
||||
};
|
||||
|
||||
// Overload operator| for mask bit combining
|
||||
|
@ -8,7 +8,7 @@ ERROR: 0:39: 'location qualifier on input' : not supported in this stage: comput
|
||||
ERROR: 0:40: 'in' : global storage input qualifier cannot be used in a compute shader
|
||||
ERROR: 0:41: 'out' : global storage output qualifier cannot be used in a compute shader
|
||||
ERROR: 0:44: 'shared' : cannot apply layout qualifiers to a shared variable
|
||||
ERROR: 0:44: 'location' : can only appy to uniform, buffer, in, or out storage qualifiers
|
||||
ERROR: 0:44: 'location' : can only apply to uniform, buffer, in, or out storage qualifiers
|
||||
ERROR: 0:45: 'shared' : cannot initialize this type of qualifier
|
||||
ERROR: 0:47: 'local_size' : can only apply to 'in'
|
||||
ERROR: 0:47: 'local_size' : can only apply to 'in'
|
||||
|
@ -9,7 +9,6 @@ ERROR: 0:12: '' : can only have one auxiliary qualifier (centroid, patch, and sa
|
||||
ERROR: 0:13: 'uniform' : too many storage qualifiers
|
||||
ERROR: 0:18: '=' : global const initializers must be constant 'const int'
|
||||
ERROR: 0:20: 'const' : no qualifiers allowed for function return
|
||||
ERROR: 0:27: '' : constant expression required
|
||||
ERROR: 0:27: '' : array size must be a constant integer expression
|
||||
ERROR: 0:38: 'j' : undeclared identifier
|
||||
ERROR: 0:38: '=' : cannot convert from 'temp float' to 'temp int'
|
||||
@ -33,7 +32,6 @@ ERROR: 0:85: 'patch' : not supported in this stage: vertex
|
||||
ERROR: 0:85: '' : vertex input cannot be further qualified
|
||||
ERROR: 0:86: 'patch' : not supported in this stage: vertex
|
||||
ERROR: 0:100: '=' : global const initializers must be constant 'const int'
|
||||
ERROR: 0:101: '' : constant expression required
|
||||
ERROR: 0:101: '' : array size must be a constant integer expression
|
||||
ERROR: 0:107: '' : image variables not declared 'writeonly' must have a format layout qualifier
|
||||
ERROR: 0:114: 'imageAtomicMin' : only supported on image with format r32i or r32ui
|
||||
@ -53,7 +51,7 @@ ERROR: 0:157: 'textureQueryLevels' : no matching overloaded function found
|
||||
ERROR: 0:157: 'assign' : cannot convert from 'const float' to 'temp int'
|
||||
ERROR: 0:158: 'textureQueryLevels' : no matching overloaded function found
|
||||
ERROR: 0:158: 'assign' : cannot convert from 'const float' to 'temp int'
|
||||
ERROR: 52 compilation errors. No code generated.
|
||||
ERROR: 50 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 420
|
||||
|
@ -7,7 +7,7 @@ ERROR: 0:43: 'location qualifier on input' : not supported in this stage: comput
|
||||
ERROR: 0:44: 'in' : global storage input qualifier cannot be used in a compute shader
|
||||
ERROR: 0:45: 'out' : global storage output qualifier cannot be used in a compute shader
|
||||
ERROR: 0:48: 'shared' : cannot apply layout qualifiers to a shared variable
|
||||
ERROR: 0:48: 'location' : can only appy to uniform, buffer, in, or out storage qualifiers
|
||||
ERROR: 0:48: 'location' : can only apply to uniform, buffer, in, or out storage qualifiers
|
||||
ERROR: 0:49: 'shared' : cannot initialize this type of qualifier
|
||||
ERROR: 0:51: 'local_size' : can only apply to 'in'
|
||||
ERROR: 0:51: 'local_size' : can only apply to 'in'
|
||||
|
@ -1,6 +1,6 @@
|
||||
430.vert
|
||||
Warning, version 430 is not yet complete; most version-specific features are present, but some are missing.
|
||||
ERROR: 0:3: 'location' : can only appy to uniform, buffer, in, or out storage qualifiers
|
||||
ERROR: 0:3: 'location' : can only apply to uniform, buffer, in, or out storage qualifiers
|
||||
ERROR: 0:7: 'input block' : not supported in this stage: vertex
|
||||
ERROR: 0:7: 'location qualifier on in/out block' : not supported for this version or the enabled extensions
|
||||
ERROR: 0:8: 'location qualifier on in/out block' : not supported for this version or the enabled extensions
|
||||
|
@ -1,14 +1,11 @@
|
||||
constErrors.frag
|
||||
ERROR: 0:14: 'non-constant initializer' : not supported for this version or the enabled extensions
|
||||
ERROR: 0:17: '' : constant expression required
|
||||
ERROR: 0:17: '' : array size must be a constant integer expression
|
||||
ERROR: 0:18: '' : constant expression required
|
||||
ERROR: 0:18: '' : array size must be a constant integer expression
|
||||
ERROR: 0:19: '' : constant expression required
|
||||
ERROR: 0:19: '' : array size must be a constant integer expression
|
||||
ERROR: 0:27: '=' : global const initializers must be constant 'const structure{global 3-component vector of float v3, global 2-component vector of int iv2}'
|
||||
ERROR: 0:33: '=' : global const initializers must be constant 'const structure{global 3-component vector of float v3, global 2-component vector of int iv2, global 2X4 matrix of float m}'
|
||||
ERROR: 9 compilation errors. No code generated.
|
||||
ERROR: 6 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 330
|
||||
|
30
Test/baseResults/nonVulkan.frag.out
Normal file
30
Test/baseResults/nonVulkan.frag.out
Normal file
@ -0,0 +1,30 @@
|
||||
nonVulkan.frag
|
||||
Warning, version 450 is not yet complete; most version-specific features are present, but some are missing.
|
||||
ERROR: 0:3: 'constant_id' : only allowed when generating SPIR-V
|
||||
ERROR: 0:4: 'input_attachment_index' : only allowed when using GLSL for Vulkan
|
||||
ERROR: 0:4: 'input_attachment_index' : can only be used with a subpass
|
||||
ERROR: 0:5: 'push_constant' : only allowed when using GLSL for Vulkan
|
||||
ERROR: 4 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 450
|
||||
ERROR: node is still EOpNull!
|
||||
0:? Linker Objects
|
||||
0:? 'arraySize' (specialization-constant const int)
|
||||
0:? 12 (const int)
|
||||
0:? 'foo' (temp int)
|
||||
0:? 'ubi' (layout(column_major std430 push_constant ) uniform block{layout(column_major std430 offset=0 ) uniform int a})
|
||||
|
||||
|
||||
Linked fragment stage:
|
||||
|
||||
ERROR: Linking fragment stage: Missing entry point: Each stage requires one "void main()" entry point
|
||||
|
||||
Shader version: 450
|
||||
ERROR: node is still EOpNull!
|
||||
0:? Linker Objects
|
||||
0:? 'arraySize' (specialization-constant const int)
|
||||
0:? 12 (const int)
|
||||
0:? 'foo' (temp int)
|
||||
0:? 'ubi' (layout(column_major std430 push_constant ) uniform block{layout(column_major std430 offset=0 ) uniform int a})
|
||||
|
@ -1,6 +1,6 @@
|
||||
specExamples.vert
|
||||
Warning, version 430 is not yet complete; most version-specific features are present, but some are missing.
|
||||
ERROR: 0:29: 'location' : can only appy to uniform, buffer, in, or out storage qualifiers
|
||||
ERROR: 0:29: 'location' : can only apply to uniform, buffer, in, or out storage qualifiers
|
||||
ERROR: 0:31: 'triangles' : unrecognized layout identifier, or qualifier requires assignment (e.g., binding = 4)
|
||||
ERROR: 0:31: 'invocations' : there is no such layout identifier for this stage taking an assigned value
|
||||
ERROR: 0:33: 'lines' : unrecognized layout identifier, or qualifier requires assignment (e.g., binding = 4)
|
||||
|
@ -7,13 +7,13 @@ Linked fragment stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 48
|
||||
// Id's are bound by 49
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 36
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
EntryPoint Fragment 4 "main" 21 26 37
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source ESSL 310
|
||||
Name 4 "main"
|
||||
Name 8 "foo("
|
||||
@ -22,7 +22,7 @@ Linked fragment stage:
|
||||
Name 17 "z"
|
||||
Name 21 "low"
|
||||
Name 26 "high"
|
||||
Name 36 "Color"
|
||||
Name 37 "Color"
|
||||
Decorate 8(foo() RelaxedPrecision
|
||||
Decorate 11(face1) RelaxedPrecision
|
||||
Decorate 13(face2) RelaxedPrecision
|
||||
@ -34,9 +34,8 @@ Linked fragment stage:
|
||||
Decorate 26(high) RelaxedPrecision
|
||||
Decorate 27 RelaxedPrecision
|
||||
Decorate 32 RelaxedPrecision
|
||||
Decorate 33 RelaxedPrecision
|
||||
Decorate 36(Color) RelaxedPrecision
|
||||
Decorate 37 RelaxedPrecision
|
||||
Decorate 34 RelaxedPrecision
|
||||
Decorate 37(Color) RelaxedPrecision
|
||||
Decorate 38 RelaxedPrecision
|
||||
Decorate 39 RelaxedPrecision
|
||||
Decorate 40 RelaxedPrecision
|
||||
@ -45,6 +44,7 @@ Linked fragment stage:
|
||||
Decorate 43 RelaxedPrecision
|
||||
Decorate 44 RelaxedPrecision
|
||||
Decorate 45 RelaxedPrecision
|
||||
Decorate 46 RelaxedPrecision
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@ -57,47 +57,48 @@ Linked fragment stage:
|
||||
15: TypeInt 32 1
|
||||
16: TypePointer Function 15(int)
|
||||
18: 15(int) Constant 3
|
||||
19: 15(int) Constant 2
|
||||
20: TypePointer UniformConstant 15(int)
|
||||
21(low): 20(ptr) Variable UniformConstant
|
||||
24: 15(int) Constant 1
|
||||
26(high): 20(ptr) Variable UniformConstant
|
||||
19: 6(float) Constant 1073741824
|
||||
20: TypePointer Input 6(float)
|
||||
21(low): 20(ptr) Variable Input
|
||||
24: 6(float) Constant 1065353216
|
||||
26(high): 20(ptr) Variable Input
|
||||
28: TypeBool
|
||||
34: TypeVector 6(float) 4
|
||||
35: TypePointer Output 34(fvec4)
|
||||
36(Color): 35(ptr) Variable Output
|
||||
33: 15(int) Constant 1
|
||||
35: TypeVector 6(float) 4
|
||||
36: TypePointer Output 35(fvec4)
|
||||
37(Color): 36(ptr) Variable Output
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
17(z): 16(ptr) Variable Function
|
||||
Store 11(face1) 12
|
||||
Store 13(face2) 14
|
||||
Store 17(z) 18
|
||||
22: 15(int) Load 21(low)
|
||||
23: 15(int) IMul 19 22
|
||||
25: 15(int) IAdd 23 24
|
||||
27: 15(int) Load 26(high)
|
||||
29: 28(bool) SLessThan 25 27
|
||||
22: 6(float) Load 21(low)
|
||||
23: 6(float) FMul 19 22
|
||||
25: 6(float) FAdd 23 24
|
||||
27: 6(float) Load 26(high)
|
||||
29: 28(bool) FOrdLessThan 25 27
|
||||
SelectionMerge 31 None
|
||||
BranchConditional 29 30 31
|
||||
30: Label
|
||||
32: 15(int) Load 17(z)
|
||||
33: 15(int) IAdd 32 24
|
||||
Store 17(z) 33
|
||||
34: 15(int) IAdd 32 33
|
||||
Store 17(z) 34
|
||||
Branch 31
|
||||
31: Label
|
||||
37: 6(float) Load 11(face1)
|
||||
38: 15(int) Load 17(z)
|
||||
39: 6(float) ConvertSToF 38
|
||||
40: 34(fvec4) CompositeConstruct 39 39 39 39
|
||||
41: 34(fvec4) VectorTimesScalar 40 37
|
||||
42: 6(float) FunctionCall 8(foo()
|
||||
43: 34(fvec4) CompositeConstruct 42 42 42 42
|
||||
44: 34(fvec4) FAdd 41 43
|
||||
Store 36(Color) 44
|
||||
38: 6(float) Load 11(face1)
|
||||
39: 15(int) Load 17(z)
|
||||
40: 6(float) ConvertSToF 39
|
||||
41: 35(fvec4) CompositeConstruct 40 40 40 40
|
||||
42: 35(fvec4) VectorTimesScalar 41 38
|
||||
43: 6(float) FunctionCall 8(foo()
|
||||
44: 35(fvec4) CompositeConstruct 43 43 43 43
|
||||
45: 35(fvec4) FAdd 42 44
|
||||
Store 37(Color) 45
|
||||
Return
|
||||
FunctionEnd
|
||||
8(foo(): 6(float) Function None 7
|
||||
9: Label
|
||||
45: 6(float) Load 13(face2)
|
||||
ReturnValue 45
|
||||
46: 6(float) Load 13(face2)
|
||||
ReturnValue 46
|
||||
FunctionEnd
|
||||
|
@ -7,7 +7,7 @@ Linked fragment stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 213
|
||||
// Id's are bound by 205
|
||||
|
||||
Capability Shader
|
||||
Capability ClipDistance
|
||||
@ -18,7 +18,7 @@ Linked fragment stage:
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 17 68 79 99 173 184 185 186
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 140
|
||||
SourceExtension "GL_ARB_gpu_shader5"
|
||||
SourceExtension "GL_ARB_shader_texture_lod"
|
||||
@ -61,14 +61,25 @@ Linked fragment stage:
|
||||
Name 199 "s2DRS"
|
||||
Name 203 "s1D"
|
||||
Name 204 "s2DS"
|
||||
Name 206 "f"
|
||||
Name 208 "v2"
|
||||
Name 210 "v3"
|
||||
Name 212 "v4"
|
||||
Decorate 21(samp2D) DescriptorSet 0
|
||||
Decorate 37(samp2DA) DescriptorSet 0
|
||||
Decorate 47(samp2DR) DescriptorSet 0
|
||||
Decorate 55(samp2DS) DescriptorSet 0
|
||||
Decorate 72(Sca) DescriptorSet 0
|
||||
Decorate 87(Isca) DescriptorSet 0
|
||||
Decorate 103(Usca) DescriptorSet 0
|
||||
Decorate 118(Scas) DescriptorSet 0
|
||||
Decorate 167(sampC) DescriptorSet 0
|
||||
Decorate 173(gl_ClipDistance) BuiltIn ClipDistance
|
||||
Decorate 184(fflat) Flat
|
||||
Decorate 186(fnop) NoPerspective
|
||||
Decorate 193(bounds) DescriptorSet 0
|
||||
Decorate 193(bounds) Binding 0
|
||||
Decorate 194(s2D) DescriptorSet 0
|
||||
Decorate 195(s2DR) DescriptorSet 0
|
||||
Decorate 199(s2DRS) DescriptorSet 0
|
||||
Decorate 203(s1D) DescriptorSet 0
|
||||
Decorate 204(s2DS) DescriptorSet 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
14: TypeFloat 32
|
||||
@ -177,14 +188,6 @@ Linked fragment stage:
|
||||
202: TypePointer UniformConstant 201
|
||||
203(s1D): 202(ptr) Variable UniformConstant
|
||||
204(s2DS): 54(ptr) Variable UniformConstant
|
||||
205: TypePointer UniformConstant 14(float)
|
||||
206(f): 205(ptr) Variable UniformConstant
|
||||
207: TypePointer UniformConstant 23(fvec2)
|
||||
208(v2): 207(ptr) Variable UniformConstant
|
||||
209: TypePointer UniformConstant 39(fvec3)
|
||||
210(v3): 209(ptr) Variable UniformConstant
|
||||
211: TypePointer UniformConstant 15(fvec4)
|
||||
212(v4): 211(ptr) Variable UniformConstant
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
168: 165 Load 167(sampC)
|
||||
|
@ -15,7 +15,7 @@ Linked fragment stage:
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 16 28 33 43
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 140
|
||||
Name 4 "main"
|
||||
Name 8 "foo("
|
||||
@ -40,6 +40,9 @@ Linked fragment stage:
|
||||
Name 100 "bname"
|
||||
Decorate 16(gl_FrontFacing) BuiltIn FrontFacing
|
||||
Decorate 33(gl_ClipDistance) BuiltIn ClipDistance
|
||||
Decorate 55(sampR) DescriptorSet 0
|
||||
Decorate 63(sampB) DescriptorSet 0
|
||||
Decorate 87(samp2Da) DescriptorSet 0
|
||||
Decorate 90 ArrayStride 64
|
||||
Decorate 91 ArrayStride 64
|
||||
MemberDecorate 92(bn) 0 RowMajor
|
||||
@ -58,9 +61,11 @@ Linked fragment stage:
|
||||
MemberDecorate 92(bn) 4 Offset 640
|
||||
MemberDecorate 92(bn) 4 MatrixStride 16
|
||||
Decorate 92(bn) Block
|
||||
Decorate 94 DescriptorSet 0
|
||||
Decorate 96 ArrayStride 16
|
||||
MemberDecorate 97(bi) 0 Offset 0
|
||||
Decorate 97(bi) Block
|
||||
Decorate 100(bname) DescriptorSet 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
|
@ -5,13 +5,13 @@ Linked vertex stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 67
|
||||
// Id's are bound by 63
|
||||
|
||||
Capability Shader
|
||||
Capability ClipDistance
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Vertex 4 "main" 13 17 39 65 66
|
||||
EntryPoint Vertex 4 "main" 13 17 23 38 62
|
||||
Source GLSL 150
|
||||
Name 4 "main"
|
||||
Name 11 "gl_PerVertex"
|
||||
@ -21,26 +21,23 @@ Linked vertex stage:
|
||||
Name 13 ""
|
||||
Name 17 "iv4"
|
||||
Name 23 "ps"
|
||||
Name 35 "s1"
|
||||
MemberName 35(s1) 0 "a"
|
||||
MemberName 35(s1) 1 "a2"
|
||||
MemberName 35(s1) 2 "b"
|
||||
Name 37 "s2"
|
||||
MemberName 37(s2) 0 "c"
|
||||
MemberName 37(s2) 1 "d"
|
||||
Name 39 "s2out"
|
||||
Name 41 "i"
|
||||
Name 48 "s2D"
|
||||
Name 63 "ui"
|
||||
Name 65 "gl_VertexID"
|
||||
Name 66 "gl_InstanceID"
|
||||
Name 34 "s1"
|
||||
MemberName 34(s1) 0 "a"
|
||||
MemberName 34(s1) 1 "a2"
|
||||
MemberName 34(s1) 2 "b"
|
||||
Name 36 "s2"
|
||||
MemberName 36(s2) 0 "c"
|
||||
MemberName 36(s2) 1 "d"
|
||||
Name 38 "s2out"
|
||||
Name 40 "i"
|
||||
Name 47 "s2D"
|
||||
Name 62 "ui"
|
||||
MemberDecorate 11(gl_PerVertex) 0 Invariant
|
||||
MemberDecorate 11(gl_PerVertex) 0 BuiltIn Position
|
||||
MemberDecorate 11(gl_PerVertex) 1 BuiltIn PointSize
|
||||
MemberDecorate 11(gl_PerVertex) 2 BuiltIn ClipDistance
|
||||
Decorate 11(gl_PerVertex) Block
|
||||
Decorate 65(gl_VertexID) BuiltIn VertexId
|
||||
Decorate 66(gl_InstanceID) BuiltIn InstanceId
|
||||
Decorate 47(s2D) DescriptorSet 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@ -57,58 +54,54 @@ Linked vertex stage:
|
||||
17(iv4): 16(ptr) Variable Input
|
||||
19: TypePointer Output 7(fvec4)
|
||||
21: 14(int) Constant 1
|
||||
22: TypePointer UniformConstant 6(float)
|
||||
23(ps): 22(ptr) Variable UniformConstant
|
||||
22: TypePointer Input 6(float)
|
||||
23(ps): 22(ptr) Variable Input
|
||||
25: TypePointer Output 6(float)
|
||||
27: 14(int) Constant 2
|
||||
28: 8(int) Constant 0
|
||||
29: TypePointer Input 6(float)
|
||||
33: 8(int) Constant 3
|
||||
34: TypeArray 7(fvec4) 33
|
||||
35(s1): TypeStruct 14(int) 14(int) 34
|
||||
36: TypeArray 35(s1) 9
|
||||
37(s2): TypeStruct 14(int) 36
|
||||
38: TypePointer Output 37(s2)
|
||||
39(s2out): 38(ptr) Variable Output
|
||||
40: TypePointer Function 14(int)
|
||||
45: TypeImage 6(float) 2D sampled format:Unknown
|
||||
46: TypeSampledImage 45
|
||||
47: TypePointer UniformConstant 46
|
||||
48(s2D): 47(ptr) Variable UniformConstant
|
||||
50: TypeVector 6(float) 2
|
||||
51: 6(float) Constant 1056964608
|
||||
52: 50(fvec2) ConstantComposite 51 51
|
||||
53: 6(float) Constant 0
|
||||
56: TypeVector 6(float) 3
|
||||
57: 56(fvec3) ConstantComposite 51 51 51
|
||||
60: 6(float) Constant 1078774989
|
||||
62: TypePointer UniformConstant 14(int)
|
||||
63(ui): 62(ptr) Variable UniformConstant
|
||||
64: TypePointer Input 14(int)
|
||||
65(gl_VertexID): 64(ptr) Variable Input
|
||||
66(gl_InstanceID): 64(ptr) Variable Input
|
||||
32: 8(int) Constant 3
|
||||
33: TypeArray 7(fvec4) 32
|
||||
34(s1): TypeStruct 14(int) 14(int) 33
|
||||
35: TypeArray 34(s1) 9
|
||||
36(s2): TypeStruct 14(int) 35
|
||||
37: TypePointer Output 36(s2)
|
||||
38(s2out): 37(ptr) Variable Output
|
||||
39: TypePointer Function 14(int)
|
||||
44: TypeImage 6(float) 2D sampled format:Unknown
|
||||
45: TypeSampledImage 44
|
||||
46: TypePointer UniformConstant 45
|
||||
47(s2D): 46(ptr) Variable UniformConstant
|
||||
49: TypeVector 6(float) 2
|
||||
50: 6(float) Constant 1056964608
|
||||
51: 49(fvec2) ConstantComposite 50 50
|
||||
52: 6(float) Constant 0
|
||||
55: TypeVector 6(float) 3
|
||||
56: 55(fvec3) ConstantComposite 50 50 50
|
||||
59: 6(float) Constant 1078774989
|
||||
61: TypePointer Input 14(int)
|
||||
62(ui): 61(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
41(i): 40(ptr) Variable Function
|
||||
40(i): 39(ptr) Variable Function
|
||||
18: 7(fvec4) Load 17(iv4)
|
||||
20: 19(ptr) AccessChain 13 15
|
||||
Store 20 18
|
||||
24: 6(float) Load 23(ps)
|
||||
26: 25(ptr) AccessChain 13 21
|
||||
Store 26 24
|
||||
30: 29(ptr) AccessChain 17(iv4) 28
|
||||
31: 6(float) Load 30
|
||||
32: 25(ptr) AccessChain 13 27 27
|
||||
Store 32 31
|
||||
42: 14(int) Load 41(i)
|
||||
43: 6(float) Load 23(ps)
|
||||
44: 25(ptr) AccessChain 39(s2out) 21 42 27 27 33
|
||||
Store 44 43
|
||||
49: 46 Load 48(s2D)
|
||||
54: 7(fvec4) ImageSampleExplicitLod 49 52 Lod 53
|
||||
55: 46 Load 48(s2D)
|
||||
58: 7(fvec4) ImageSampleProjExplicitLod 55 57 Lod 53
|
||||
59: 46 Load 48(s2D)
|
||||
61: 7(fvec4) ImageSampleExplicitLod 59 52 Lod 60
|
||||
29: 22(ptr) AccessChain 17(iv4) 28
|
||||
30: 6(float) Load 29
|
||||
31: 25(ptr) AccessChain 13 27 27
|
||||
Store 31 30
|
||||
41: 14(int) Load 40(i)
|
||||
42: 6(float) Load 23(ps)
|
||||
43: 25(ptr) AccessChain 38(s2out) 21 41 27 27 32
|
||||
Store 43 42
|
||||
48: 45 Load 47(s2D)
|
||||
53: 7(fvec4) ImageSampleExplicitLod 48 51 Lod 52
|
||||
54: 45 Load 47(s2D)
|
||||
57: 7(fvec4) ImageSampleProjExplicitLod 54 56 Lod 52
|
||||
58: 45 Load 47(s2D)
|
||||
60: 7(fvec4) ImageSampleExplicitLod 58 51 Lod 59
|
||||
Return
|
||||
FunctionEnd
|
||||
|
@ -7,88 +7,73 @@ Linked vertex stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 49
|
||||
// Id's are bound by 42
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Vertex 4 "main" 11 24 27 48
|
||||
EntryPoint Vertex 4 "main" 10 14 21 34
|
||||
Source ESSL 310
|
||||
Name 4 "main"
|
||||
Name 8 "i"
|
||||
Name 11 "gl_VertexID"
|
||||
Name 16 "j"
|
||||
Name 22 "gl_PerVertex"
|
||||
MemberName 22(gl_PerVertex) 0 "gl_Position"
|
||||
MemberName 22(gl_PerVertex) 1 "gl_PointSize"
|
||||
Name 24 ""
|
||||
Name 27 "ps"
|
||||
Name 48 "gl_InstanceID"
|
||||
Decorate 8(i) RelaxedPrecision
|
||||
Decorate 11(gl_VertexID) BuiltIn VertexId
|
||||
Decorate 16(j) RelaxedPrecision
|
||||
MemberDecorate 22(gl_PerVertex) 0 Invariant
|
||||
MemberDecorate 22(gl_PerVertex) 0 BuiltIn Position
|
||||
MemberDecorate 22(gl_PerVertex) 1 BuiltIn PointSize
|
||||
Decorate 22(gl_PerVertex) Block
|
||||
Decorate 27(ps) RelaxedPrecision
|
||||
Decorate 28 RelaxedPrecision
|
||||
Decorate 32 RelaxedPrecision
|
||||
Decorate 39 RelaxedPrecision
|
||||
Decorate 42 RelaxedPrecision
|
||||
Decorate 48(gl_InstanceID) BuiltIn InstanceId
|
||||
Name 8 "gl_PerVertex"
|
||||
MemberName 8(gl_PerVertex) 0 "gl_Position"
|
||||
MemberName 8(gl_PerVertex) 1 "gl_PointSize"
|
||||
Name 10 ""
|
||||
Name 14 "ps"
|
||||
Name 21 "gl_VertexIndex"
|
||||
Name 34 "gl_InstanceIndex"
|
||||
MemberDecorate 8(gl_PerVertex) 0 Invariant
|
||||
MemberDecorate 8(gl_PerVertex) 0 BuiltIn Position
|
||||
MemberDecorate 8(gl_PerVertex) 1 BuiltIn PointSize
|
||||
Decorate 8(gl_PerVertex) Block
|
||||
Decorate 14(ps) RelaxedPrecision
|
||||
Decorate 15 RelaxedPrecision
|
||||
Decorate 21(gl_VertexIndex) BuiltIn VertexIndex
|
||||
Decorate 30 RelaxedPrecision
|
||||
Decorate 34(gl_InstanceIndex) BuiltIn InstanceIndex
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 1
|
||||
7: TypePointer Function 6(int)
|
||||
9: 6(int) Constant 4
|
||||
10: TypePointer Input 6(int)
|
||||
11(gl_VertexID): 10(ptr) Variable Input
|
||||
14: 6(int) Constant 10
|
||||
20: TypeFloat 32
|
||||
21: TypeVector 20(float) 4
|
||||
22(gl_PerVertex): TypeStruct 21(fvec4) 20(float)
|
||||
23: TypePointer Output 22(gl_PerVertex)
|
||||
24: 23(ptr) Variable Output
|
||||
25: 6(int) Constant 0
|
||||
26: TypePointer Input 20(float)
|
||||
27(ps): 26(ptr) Variable Input
|
||||
30: TypePointer Output 21(fvec4)
|
||||
38: 6(int) Constant 1
|
||||
40: TypePointer Output 20(float)
|
||||
48(gl_InstanceID): 10(ptr) Variable Input
|
||||
6: TypeFloat 32
|
||||
7: TypeVector 6(float) 4
|
||||
8(gl_PerVertex): TypeStruct 7(fvec4) 6(float)
|
||||
9: TypePointer Output 8(gl_PerVertex)
|
||||
10: 9(ptr) Variable Output
|
||||
11: TypeInt 32 1
|
||||
12: 11(int) Constant 0
|
||||
13: TypePointer Input 6(float)
|
||||
14(ps): 13(ptr) Variable Input
|
||||
17: TypePointer Output 7(fvec4)
|
||||
19: 11(int) Constant 4
|
||||
20: TypePointer Input 11(int)
|
||||
21(gl_VertexIndex): 20(ptr) Variable Input
|
||||
29: 11(int) Constant 1
|
||||
31: TypePointer Output 6(float)
|
||||
33: 11(int) Constant 5
|
||||
34(gl_InstanceIndex): 20(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
8(i): 7(ptr) Variable Function
|
||||
16(j): 7(ptr) Variable Function
|
||||
12: 6(int) Load 11(gl_VertexID)
|
||||
13: 6(int) IMul 9 12
|
||||
15: 6(int) ISub 13 14
|
||||
Store 8(i) 15
|
||||
17: 6(int) Load 11(gl_VertexID)
|
||||
18: 6(int) IMul 9 17
|
||||
19: 6(int) ISub 18 14
|
||||
Store 16(j) 19
|
||||
28: 20(float) Load 27(ps)
|
||||
29: 21(fvec4) CompositeConstruct 28 28 28 28
|
||||
31: 30(ptr) AccessChain 24 25
|
||||
Store 31 29
|
||||
32: 6(int) Load 8(i)
|
||||
33: 20(float) ConvertSToF 32
|
||||
34: 30(ptr) AccessChain 24 25
|
||||
35: 21(fvec4) Load 34
|
||||
36: 21(fvec4) VectorTimesScalar 35 33
|
||||
37: 30(ptr) AccessChain 24 25
|
||||
Store 37 36
|
||||
39: 20(float) Load 27(ps)
|
||||
41: 40(ptr) AccessChain 24 38
|
||||
Store 41 39
|
||||
42: 6(int) Load 16(j)
|
||||
43: 20(float) ConvertSToF 42
|
||||
44: 40(ptr) AccessChain 24 38
|
||||
45: 20(float) Load 44
|
||||
46: 20(float) FMul 45 43
|
||||
47: 40(ptr) AccessChain 24 38
|
||||
Store 47 46
|
||||
15: 6(float) Load 14(ps)
|
||||
16: 7(fvec4) CompositeConstruct 15 15 15 15
|
||||
18: 17(ptr) AccessChain 10 12
|
||||
Store 18 16
|
||||
22: 11(int) Load 21(gl_VertexIndex)
|
||||
23: 11(int) ISub 19 22
|
||||
24: 6(float) ConvertSToF 23
|
||||
25: 17(ptr) AccessChain 10 12
|
||||
26: 7(fvec4) Load 25
|
||||
27: 7(fvec4) VectorTimesScalar 26 24
|
||||
28: 17(ptr) AccessChain 10 12
|
||||
Store 28 27
|
||||
30: 6(float) Load 14(ps)
|
||||
32: 31(ptr) AccessChain 10 29
|
||||
Store 32 30
|
||||
35: 11(int) Load 34(gl_InstanceIndex)
|
||||
36: 11(int) ISub 33 35
|
||||
37: 6(float) ConvertSToF 36
|
||||
38: 31(ptr) AccessChain 10 29
|
||||
39: 6(float) Load 38
|
||||
40: 6(float) FMul 39 37
|
||||
41: 31(ptr) AccessChain 10 29
|
||||
Store 41 40
|
||||
Return
|
||||
FunctionEnd
|
||||
|
@ -13,7 +13,7 @@ Linked fragment stage:
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 9 11 15 26 29
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source ESSL 310
|
||||
Name 4 "main"
|
||||
Name 9 "c"
|
||||
|
@ -7,12 +7,12 @@ Linked vertex stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 165
|
||||
// Id's are bound by 163
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Vertex 4 "main" 9 11 99 101 109 121 129 163 164
|
||||
EntryPoint Vertex 4 "main" 9 11 98 100 108 114 120 128
|
||||
Source ESSL 310
|
||||
Name 4 "main"
|
||||
Name 9 "pos"
|
||||
@ -29,21 +29,19 @@ Linked vertex stage:
|
||||
MemberName 45(T3) 2 "N2"
|
||||
MemberName 45(T3) 3 "uv3a"
|
||||
Name 47 ""
|
||||
Name 79 "T2"
|
||||
MemberName 79(T2) 0 "b"
|
||||
MemberName 79(T2) 1 "t2m"
|
||||
Name 81 ""
|
||||
Name 99 "color"
|
||||
Name 101 "c"
|
||||
Name 109 "iout"
|
||||
Name 115 "uiuin"
|
||||
Name 121 "aiv2"
|
||||
Name 127 "S"
|
||||
MemberName 127(S) 0 "c"
|
||||
MemberName 127(S) 1 "f"
|
||||
Name 129 "s"
|
||||
Name 163 "gl_VertexID"
|
||||
Name 164 "gl_InstanceID"
|
||||
Name 78 "T2"
|
||||
MemberName 78(T2) 0 "b"
|
||||
MemberName 78(T2) 1 "t2m"
|
||||
Name 80 ""
|
||||
Name 98 "color"
|
||||
Name 100 "c"
|
||||
Name 108 "iout"
|
||||
Name 114 "uiuin"
|
||||
Name 120 "aiv2"
|
||||
Name 126 "S"
|
||||
MemberName 126(S) 0 "c"
|
||||
MemberName 126(S) 1 "f"
|
||||
Name 128 "s"
|
||||
Decorate 11(p) Location 3
|
||||
MemberDecorate 17(Transform) 0 RowMajor
|
||||
MemberDecorate 17(Transform) 0 Offset 0
|
||||
@ -56,19 +54,29 @@ Linked vertex stage:
|
||||
MemberDecorate 17(Transform) 2 MatrixStride 16
|
||||
MemberDecorate 17(Transform) 3 Offset 176
|
||||
Decorate 17(Transform) Block
|
||||
Decorate 19(tblock) DescriptorSet 0
|
||||
Decorate 44 ArrayStride 16
|
||||
MemberDecorate 45(T3) 0 ColMajor
|
||||
MemberDecorate 45(T3) 0 Offset 0
|
||||
MemberDecorate 45(T3) 0 MatrixStride 16
|
||||
MemberDecorate 45(T3) 1 RowMajor
|
||||
MemberDecorate 45(T3) 1 Offset 64
|
||||
MemberDecorate 45(T3) 1 MatrixStride 16
|
||||
MemberDecorate 45(T3) 2 ColMajor
|
||||
Decorate 45(T3) GLSLShared
|
||||
MemberDecorate 45(T3) 2 Offset 128
|
||||
MemberDecorate 45(T3) 2 MatrixStride 16
|
||||
MemberDecorate 45(T3) 3 Offset 160
|
||||
Decorate 45(T3) Block
|
||||
MemberDecorate 79(T2) 1 RowMajor
|
||||
Decorate 79(T2) GLSLShared
|
||||
Decorate 79(T2) Block
|
||||
Decorate 101(c) Location 7
|
||||
Decorate 109(iout) Flat
|
||||
Decorate 121(aiv2) Location 9
|
||||
Decorate 163(gl_VertexID) BuiltIn VertexId
|
||||
Decorate 164(gl_InstanceID) BuiltIn InstanceId
|
||||
Decorate 47 DescriptorSet 0
|
||||
MemberDecorate 78(T2) 0 Offset 0
|
||||
MemberDecorate 78(T2) 1 RowMajor
|
||||
MemberDecorate 78(T2) 1 Offset 16
|
||||
MemberDecorate 78(T2) 1 MatrixStride 16
|
||||
Decorate 78(T2) Block
|
||||
Decorate 80 DescriptorSet 0
|
||||
Decorate 100(c) Location 7
|
||||
Decorate 108(iout) Flat
|
||||
Decorate 120(aiv2) Location 9
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@ -95,42 +103,40 @@ Linked vertex stage:
|
||||
45(T3): TypeStruct 13 13 40 44
|
||||
46: TypePointer Uniform 45(T3)
|
||||
47: 46(ptr) Variable Uniform
|
||||
78: TypeBool
|
||||
79(T2): TypeStruct 78(bool) 13
|
||||
80: TypePointer Uniform 79(T2)
|
||||
81: 80(ptr) Variable Uniform
|
||||
98: TypePointer Output 14(fvec3)
|
||||
99(color): 98(ptr) Variable Output
|
||||
100: TypePointer Input 14(fvec3)
|
||||
101(c): 100(ptr) Variable Input
|
||||
103: 16(int) Constant 2
|
||||
104: TypePointer Uniform 15
|
||||
108: TypePointer Output 16(int)
|
||||
109(iout): 108(ptr) Variable Output
|
||||
110: 16(int) Constant 3
|
||||
111: TypePointer Uniform 16(int)
|
||||
114: TypePointer UniformConstant 41(int)
|
||||
115(uiuin): 114(ptr) Variable UniformConstant
|
||||
119: TypeVector 16(int) 2
|
||||
120: TypePointer Input 119(ivec2)
|
||||
121(aiv2): 120(ptr) Variable Input
|
||||
122: 41(int) Constant 1
|
||||
123: TypePointer Input 16(int)
|
||||
127(S): TypeStruct 14(fvec3) 6(float)
|
||||
128: TypePointer Output 127(S)
|
||||
129(s): 128(ptr) Variable Output
|
||||
132: 41(int) Constant 0
|
||||
133: TypePointer Input 6(float)
|
||||
136: TypePointer Output 6(float)
|
||||
78(T2): TypeStruct 41(int) 13
|
||||
79: TypePointer Uniform 78(T2)
|
||||
80: 79(ptr) Variable Uniform
|
||||
97: TypePointer Output 14(fvec3)
|
||||
98(color): 97(ptr) Variable Output
|
||||
99: TypePointer Input 14(fvec3)
|
||||
100(c): 99(ptr) Variable Input
|
||||
102: 16(int) Constant 2
|
||||
103: TypePointer Uniform 15
|
||||
107: TypePointer Output 16(int)
|
||||
108(iout): 107(ptr) Variable Output
|
||||
109: 16(int) Constant 3
|
||||
110: TypePointer Uniform 16(int)
|
||||
113: TypePointer Input 41(int)
|
||||
114(uiuin): 113(ptr) Variable Input
|
||||
118: TypeVector 16(int) 2
|
||||
119: TypePointer Input 118(ivec2)
|
||||
120(aiv2): 119(ptr) Variable Input
|
||||
121: 41(int) Constant 1
|
||||
122: TypePointer Input 16(int)
|
||||
126(S): TypeStruct 14(fvec3) 6(float)
|
||||
127: TypePointer Output 126(S)
|
||||
128(s): 127(ptr) Variable Output
|
||||
131: 41(int) Constant 0
|
||||
132: TypePointer Input 6(float)
|
||||
135: TypePointer Output 6(float)
|
||||
137: TypeBool
|
||||
138: TypePointer Uniform 14(fvec3)
|
||||
141: 6(float) Constant 1065353216
|
||||
142: 14(fvec3) ConstantComposite 141 141 141
|
||||
143: TypeVector 78(bool) 3
|
||||
143: TypeVector 137(bool) 3
|
||||
149: TypePointer Uniform 42(ivec3)
|
||||
152: 41(int) Constant 5
|
||||
153: 42(ivec3) ConstantComposite 152 152 152
|
||||
163(gl_VertexID): 123(ptr) Variable Input
|
||||
164(gl_InstanceID): 123(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
12: 7(fvec4) Load 11(p)
|
||||
@ -181,63 +187,63 @@ Linked vertex stage:
|
||||
75: 7(fvec4) CompositeExtract 64 3
|
||||
76: 7(fvec4) FAdd 74 75
|
||||
77: 13 CompositeConstruct 67 70 73 76
|
||||
82: 21(ptr) AccessChain 81 24
|
||||
83: 13 Load 82
|
||||
84: 7(fvec4) CompositeExtract 77 0
|
||||
85: 7(fvec4) CompositeExtract 83 0
|
||||
86: 7(fvec4) FAdd 84 85
|
||||
87: 7(fvec4) CompositeExtract 77 1
|
||||
88: 7(fvec4) CompositeExtract 83 1
|
||||
89: 7(fvec4) FAdd 87 88
|
||||
90: 7(fvec4) CompositeExtract 77 2
|
||||
91: 7(fvec4) CompositeExtract 83 2
|
||||
92: 7(fvec4) FAdd 90 91
|
||||
93: 7(fvec4) CompositeExtract 77 3
|
||||
94: 7(fvec4) CompositeExtract 83 3
|
||||
95: 7(fvec4) FAdd 93 94
|
||||
96: 13 CompositeConstruct 86 89 92 95
|
||||
97: 7(fvec4) VectorTimesMatrix 12 96
|
||||
Store 9(pos) 97
|
||||
102: 14(fvec3) Load 101(c)
|
||||
105: 104(ptr) AccessChain 19(tblock) 103
|
||||
106: 15 Load 105
|
||||
107: 14(fvec3) VectorTimesMatrix 102 106
|
||||
Store 99(color) 107
|
||||
112: 111(ptr) AccessChain 19(tblock) 110
|
||||
113: 16(int) Load 112
|
||||
116: 41(int) Load 115(uiuin)
|
||||
117: 16(int) Bitcast 116
|
||||
118: 16(int) IAdd 113 117
|
||||
124: 123(ptr) AccessChain 121(aiv2) 122
|
||||
125: 16(int) Load 124
|
||||
126: 16(int) IAdd 118 125
|
||||
Store 109(iout) 126
|
||||
130: 14(fvec3) Load 101(c)
|
||||
131: 98(ptr) AccessChain 129(s) 20
|
||||
Store 131 130
|
||||
134: 133(ptr) AccessChain 11(p) 132
|
||||
135: 6(float) Load 134
|
||||
137: 136(ptr) AccessChain 129(s) 24
|
||||
Store 137 135
|
||||
139: 138(ptr) AccessChain 47 103 24
|
||||
81: 21(ptr) AccessChain 80 24
|
||||
82: 13 Load 81
|
||||
83: 7(fvec4) CompositeExtract 77 0
|
||||
84: 7(fvec4) CompositeExtract 82 0
|
||||
85: 7(fvec4) FAdd 83 84
|
||||
86: 7(fvec4) CompositeExtract 77 1
|
||||
87: 7(fvec4) CompositeExtract 82 1
|
||||
88: 7(fvec4) FAdd 86 87
|
||||
89: 7(fvec4) CompositeExtract 77 2
|
||||
90: 7(fvec4) CompositeExtract 82 2
|
||||
91: 7(fvec4) FAdd 89 90
|
||||
92: 7(fvec4) CompositeExtract 77 3
|
||||
93: 7(fvec4) CompositeExtract 82 3
|
||||
94: 7(fvec4) FAdd 92 93
|
||||
95: 13 CompositeConstruct 85 88 91 94
|
||||
96: 7(fvec4) VectorTimesMatrix 12 95
|
||||
Store 9(pos) 96
|
||||
101: 14(fvec3) Load 100(c)
|
||||
104: 103(ptr) AccessChain 19(tblock) 102
|
||||
105: 15 Load 104
|
||||
106: 14(fvec3) VectorTimesMatrix 101 105
|
||||
Store 98(color) 106
|
||||
111: 110(ptr) AccessChain 19(tblock) 109
|
||||
112: 16(int) Load 111
|
||||
115: 41(int) Load 114(uiuin)
|
||||
116: 16(int) Bitcast 115
|
||||
117: 16(int) IAdd 112 116
|
||||
123: 122(ptr) AccessChain 120(aiv2) 121
|
||||
124: 16(int) Load 123
|
||||
125: 16(int) IAdd 117 124
|
||||
Store 108(iout) 125
|
||||
129: 14(fvec3) Load 100(c)
|
||||
130: 97(ptr) AccessChain 128(s) 20
|
||||
Store 130 129
|
||||
133: 132(ptr) AccessChain 11(p) 131
|
||||
134: 6(float) Load 133
|
||||
136: 135(ptr) AccessChain 128(s) 24
|
||||
Store 136 134
|
||||
139: 138(ptr) AccessChain 47 102 24
|
||||
140: 14(fvec3) Load 139
|
||||
144: 143(bvec3) FOrdNotEqual 140 142
|
||||
145: 78(bool) Any 144
|
||||
146: 78(bool) LogicalNot 145
|
||||
145: 137(bool) Any 144
|
||||
146: 137(bool) LogicalNot 145
|
||||
SelectionMerge 148 None
|
||||
BranchConditional 146 147 148
|
||||
147: Label
|
||||
150: 149(ptr) AccessChain 47 110 103
|
||||
150: 149(ptr) AccessChain 47 109 102
|
||||
151: 42(ivec3) Load 150
|
||||
154: 143(bvec3) INotEqual 151 153
|
||||
155: 78(bool) Any 154
|
||||
155: 137(bool) Any 154
|
||||
Branch 148
|
||||
148: Label
|
||||
156: 78(bool) Phi 145 5 155 147
|
||||
156: 137(bool) Phi 145 5 155 147
|
||||
SelectionMerge 158 None
|
||||
BranchConditional 156 157 158
|
||||
157: Label
|
||||
159: 98(ptr) AccessChain 129(s) 20
|
||||
159: 97(ptr) AccessChain 128(s) 20
|
||||
160: 14(fvec3) Load 159
|
||||
161: 14(fvec3) CompositeConstruct 141 141 141
|
||||
162: 14(fvec3) FAdd 160 161
|
||||
|
@ -7,12 +7,12 @@ Linked vertex stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 117
|
||||
// Id's are bound by 115
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Vertex 4 "main" 9 11 51 53 61 73 81 115 116
|
||||
EntryPoint Vertex 4 "main" 9 11 50 52 60 72 80
|
||||
Source ESSL 310
|
||||
Name 4 "main"
|
||||
Name 9 "pos"
|
||||
@ -29,21 +29,19 @@ Linked vertex stage:
|
||||
MemberName 33(T3) 2 "N2"
|
||||
MemberName 33(T3) 3 "uv3a"
|
||||
Name 35 ""
|
||||
Name 43 "T2"
|
||||
MemberName 43(T2) 0 "b"
|
||||
MemberName 43(T2) 1 "t2m"
|
||||
Name 45 ""
|
||||
Name 51 "color"
|
||||
Name 53 "c"
|
||||
Name 61 "iout"
|
||||
Name 67 "uiuin"
|
||||
Name 73 "aiv2"
|
||||
Name 79 "S"
|
||||
MemberName 79(S) 0 "c"
|
||||
MemberName 79(S) 1 "f"
|
||||
Name 81 "s"
|
||||
Name 115 "gl_VertexID"
|
||||
Name 116 "gl_InstanceID"
|
||||
Name 42 "T2"
|
||||
MemberName 42(T2) 0 "b"
|
||||
MemberName 42(T2) 1 "t2m"
|
||||
Name 44 ""
|
||||
Name 50 "color"
|
||||
Name 52 "c"
|
||||
Name 60 "iout"
|
||||
Name 66 "uiuin"
|
||||
Name 72 "aiv2"
|
||||
Name 78 "S"
|
||||
MemberName 78(S) 0 "c"
|
||||
MemberName 78(S) 1 "f"
|
||||
Name 80 "s"
|
||||
Decorate 11(p) Location 3
|
||||
MemberDecorate 17(Transform) 0 RowMajor
|
||||
MemberDecorate 17(Transform) 0 Offset 0
|
||||
@ -56,19 +54,29 @@ Linked vertex stage:
|
||||
MemberDecorate 17(Transform) 2 MatrixStride 16
|
||||
MemberDecorate 17(Transform) 3 Offset 176
|
||||
Decorate 17(Transform) Block
|
||||
Decorate 19(tblock) DescriptorSet 0
|
||||
Decorate 32 ArrayStride 16
|
||||
MemberDecorate 33(T3) 0 ColMajor
|
||||
MemberDecorate 33(T3) 0 Offset 0
|
||||
MemberDecorate 33(T3) 0 MatrixStride 16
|
||||
MemberDecorate 33(T3) 1 RowMajor
|
||||
MemberDecorate 33(T3) 1 Offset 64
|
||||
MemberDecorate 33(T3) 1 MatrixStride 16
|
||||
MemberDecorate 33(T3) 2 ColMajor
|
||||
Decorate 33(T3) GLSLShared
|
||||
MemberDecorate 33(T3) 2 Offset 128
|
||||
MemberDecorate 33(T3) 2 MatrixStride 16
|
||||
MemberDecorate 33(T3) 3 Offset 160
|
||||
Decorate 33(T3) Block
|
||||
MemberDecorate 43(T2) 1 RowMajor
|
||||
Decorate 43(T2) GLSLShared
|
||||
Decorate 43(T2) Block
|
||||
Decorate 53(c) Location 7
|
||||
Decorate 61(iout) Flat
|
||||
Decorate 73(aiv2) Location 9
|
||||
Decorate 115(gl_VertexID) BuiltIn VertexId
|
||||
Decorate 116(gl_InstanceID) BuiltIn InstanceId
|
||||
Decorate 35 DescriptorSet 0
|
||||
MemberDecorate 42(T2) 0 Offset 0
|
||||
MemberDecorate 42(T2) 1 RowMajor
|
||||
MemberDecorate 42(T2) 1 Offset 16
|
||||
MemberDecorate 42(T2) 1 MatrixStride 16
|
||||
Decorate 42(T2) Block
|
||||
Decorate 44 DescriptorSet 0
|
||||
Decorate 52(c) Location 7
|
||||
Decorate 60(iout) Flat
|
||||
Decorate 72(aiv2) Location 9
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@ -95,42 +103,40 @@ Linked vertex stage:
|
||||
33(T3): TypeStruct 13 13 28 32
|
||||
34: TypePointer Uniform 33(T3)
|
||||
35: 34(ptr) Variable Uniform
|
||||
42: TypeBool
|
||||
43(T2): TypeStruct 42(bool) 13
|
||||
44: TypePointer Uniform 43(T2)
|
||||
45: 44(ptr) Variable Uniform
|
||||
50: TypePointer Output 14(fvec3)
|
||||
51(color): 50(ptr) Variable Output
|
||||
52: TypePointer Input 14(fvec3)
|
||||
53(c): 52(ptr) Variable Input
|
||||
55: 16(int) Constant 2
|
||||
56: TypePointer Uniform 15
|
||||
60: TypePointer Output 16(int)
|
||||
61(iout): 60(ptr) Variable Output
|
||||
62: 16(int) Constant 3
|
||||
63: TypePointer Uniform 16(int)
|
||||
66: TypePointer UniformConstant 29(int)
|
||||
67(uiuin): 66(ptr) Variable UniformConstant
|
||||
71: TypeVector 16(int) 2
|
||||
72: TypePointer Input 71(ivec2)
|
||||
73(aiv2): 72(ptr) Variable Input
|
||||
74: 29(int) Constant 1
|
||||
75: TypePointer Input 16(int)
|
||||
79(S): TypeStruct 14(fvec3) 6(float)
|
||||
80: TypePointer Output 79(S)
|
||||
81(s): 80(ptr) Variable Output
|
||||
84: 29(int) Constant 0
|
||||
85: TypePointer Input 6(float)
|
||||
88: TypePointer Output 6(float)
|
||||
42(T2): TypeStruct 29(int) 13
|
||||
43: TypePointer Uniform 42(T2)
|
||||
44: 43(ptr) Variable Uniform
|
||||
49: TypePointer Output 14(fvec3)
|
||||
50(color): 49(ptr) Variable Output
|
||||
51: TypePointer Input 14(fvec3)
|
||||
52(c): 51(ptr) Variable Input
|
||||
54: 16(int) Constant 2
|
||||
55: TypePointer Uniform 15
|
||||
59: TypePointer Output 16(int)
|
||||
60(iout): 59(ptr) Variable Output
|
||||
61: 16(int) Constant 3
|
||||
62: TypePointer Uniform 16(int)
|
||||
65: TypePointer Private 29(int)
|
||||
66(uiuin): 65(ptr) Variable Private
|
||||
70: TypeVector 16(int) 2
|
||||
71: TypePointer Input 70(ivec2)
|
||||
72(aiv2): 71(ptr) Variable Input
|
||||
73: 29(int) Constant 1
|
||||
74: TypePointer Input 16(int)
|
||||
78(S): TypeStruct 14(fvec3) 6(float)
|
||||
79: TypePointer Output 78(S)
|
||||
80(s): 79(ptr) Variable Output
|
||||
83: 29(int) Constant 0
|
||||
84: TypePointer Input 6(float)
|
||||
87: TypePointer Output 6(float)
|
||||
89: TypeBool
|
||||
90: TypePointer Uniform 14(fvec3)
|
||||
93: 6(float) Constant 1065353216
|
||||
94: 14(fvec3) ConstantComposite 93 93 93
|
||||
95: TypeVector 42(bool) 3
|
||||
95: TypeVector 89(bool) 3
|
||||
101: TypePointer Uniform 30(ivec3)
|
||||
104: 29(int) Constant 5
|
||||
105: 30(ivec3) ConstantComposite 104 104 104
|
||||
115(gl_VertexID): 75(ptr) Variable Input
|
||||
116(gl_InstanceID): 75(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
12: 7(fvec4) Load 11(p)
|
||||
@ -145,51 +151,51 @@ Linked vertex stage:
|
||||
39: 21(ptr) AccessChain 35 20
|
||||
40: 13 Load 39
|
||||
41: 13 MatrixTimesMatrix 38 40
|
||||
46: 21(ptr) AccessChain 45 24
|
||||
47: 13 Load 46
|
||||
48: 13 MatrixTimesMatrix 41 47
|
||||
49: 7(fvec4) VectorTimesMatrix 12 48
|
||||
Store 9(pos) 49
|
||||
54: 14(fvec3) Load 53(c)
|
||||
57: 56(ptr) AccessChain 19(tblock) 55
|
||||
58: 15 Load 57
|
||||
59: 14(fvec3) VectorTimesMatrix 54 58
|
||||
Store 51(color) 59
|
||||
64: 63(ptr) AccessChain 19(tblock) 62
|
||||
65: 16(int) Load 64
|
||||
68: 29(int) Load 67(uiuin)
|
||||
69: 16(int) Bitcast 68
|
||||
70: 16(int) IAdd 65 69
|
||||
76: 75(ptr) AccessChain 73(aiv2) 74
|
||||
77: 16(int) Load 76
|
||||
78: 16(int) IAdd 70 77
|
||||
Store 61(iout) 78
|
||||
82: 14(fvec3) Load 53(c)
|
||||
83: 50(ptr) AccessChain 81(s) 20
|
||||
Store 83 82
|
||||
86: 85(ptr) AccessChain 11(p) 84
|
||||
87: 6(float) Load 86
|
||||
89: 88(ptr) AccessChain 81(s) 24
|
||||
Store 89 87
|
||||
91: 90(ptr) AccessChain 35 55 24
|
||||
45: 21(ptr) AccessChain 44 24
|
||||
46: 13 Load 45
|
||||
47: 13 MatrixTimesMatrix 41 46
|
||||
48: 7(fvec4) VectorTimesMatrix 12 47
|
||||
Store 9(pos) 48
|
||||
53: 14(fvec3) Load 52(c)
|
||||
56: 55(ptr) AccessChain 19(tblock) 54
|
||||
57: 15 Load 56
|
||||
58: 14(fvec3) VectorTimesMatrix 53 57
|
||||
Store 50(color) 58
|
||||
63: 62(ptr) AccessChain 19(tblock) 61
|
||||
64: 16(int) Load 63
|
||||
67: 29(int) Load 66(uiuin)
|
||||
68: 16(int) Bitcast 67
|
||||
69: 16(int) IAdd 64 68
|
||||
75: 74(ptr) AccessChain 72(aiv2) 73
|
||||
76: 16(int) Load 75
|
||||
77: 16(int) IAdd 69 76
|
||||
Store 60(iout) 77
|
||||
81: 14(fvec3) Load 52(c)
|
||||
82: 49(ptr) AccessChain 80(s) 20
|
||||
Store 82 81
|
||||
85: 84(ptr) AccessChain 11(p) 83
|
||||
86: 6(float) Load 85
|
||||
88: 87(ptr) AccessChain 80(s) 24
|
||||
Store 88 86
|
||||
91: 90(ptr) AccessChain 35 54 24
|
||||
92: 14(fvec3) Load 91
|
||||
96: 95(bvec3) FOrdNotEqual 92 94
|
||||
97: 42(bool) Any 96
|
||||
98: 42(bool) LogicalNot 97
|
||||
97: 89(bool) Any 96
|
||||
98: 89(bool) LogicalNot 97
|
||||
SelectionMerge 100 None
|
||||
BranchConditional 98 99 100
|
||||
99: Label
|
||||
102: 101(ptr) AccessChain 35 62 55
|
||||
102: 101(ptr) AccessChain 35 61 54
|
||||
103: 30(ivec3) Load 102
|
||||
106: 95(bvec3) INotEqual 103 105
|
||||
107: 42(bool) Any 106
|
||||
107: 89(bool) Any 106
|
||||
Branch 100
|
||||
100: Label
|
||||
108: 42(bool) Phi 97 5 107 99
|
||||
108: 89(bool) Phi 97 5 107 99
|
||||
SelectionMerge 110 None
|
||||
BranchConditional 108 109 110
|
||||
109: Label
|
||||
111: 50(ptr) AccessChain 81(s) 20
|
||||
111: 49(ptr) AccessChain 80(s) 20
|
||||
112: 14(fvec3) Load 111
|
||||
113: 14(fvec3) CompositeConstruct 93 93 93
|
||||
114: 14(fvec3) FAdd 112 113
|
||||
|
@ -33,12 +33,22 @@ Linked compute stage:
|
||||
MemberName 48(outs) 1 "va"
|
||||
Name 50 "outnames"
|
||||
Name 53 "gl_LocalInvocationID"
|
||||
Decorate 13(outb) GLSLShared
|
||||
Decorate 12 ArrayStride 16
|
||||
MemberDecorate 13(outb) 0 Offset 0
|
||||
MemberDecorate 13(outb) 1 Offset 4
|
||||
MemberDecorate 13(outb) 2 Offset 8
|
||||
MemberDecorate 13(outb) 3 Offset 16
|
||||
Decorate 13(outb) BufferBlock
|
||||
Decorate 24(outbna) GLSLShared
|
||||
Decorate 15(outbname) DescriptorSet 0
|
||||
MemberDecorate 24(outbna) 0 Offset 0
|
||||
MemberDecorate 24(outbna) 1 Offset 16
|
||||
Decorate 24(outbna) BufferBlock
|
||||
Decorate 48(outs) GLSLShared
|
||||
Decorate 26(outbnamena) DescriptorSet 0
|
||||
Decorate 47 ArrayStride 16
|
||||
MemberDecorate 48(outs) 0 Offset 0
|
||||
MemberDecorate 48(outs) 1 Offset 16
|
||||
Decorate 48(outs) BufferBlock
|
||||
Decorate 50(outnames) DescriptorSet 0
|
||||
Decorate 53(gl_LocalInvocationID) BuiltIn LocalInvocationId
|
||||
Decorate 66 BuiltIn WorkgroupSize
|
||||
2: TypeVoid
|
||||
|
@ -16,7 +16,7 @@ Linked fragment stage:
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 13 1025 1031 1036 1048 1074 1095 1097
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 400
|
||||
SourceExtension "GL_ARB_separate_shader_objects"
|
||||
Name 4 "main"
|
||||
@ -52,8 +52,12 @@ Linked fragment stage:
|
||||
Name 1078 "isamp2DA"
|
||||
Name 1095 "gl_FragCoord"
|
||||
Name 1097 "vl2"
|
||||
Decorate 17(u2drs) DescriptorSet 0
|
||||
Decorate 1023(arrayedSampler) DescriptorSet 0
|
||||
Decorate 1025(i) Flat
|
||||
Decorate 1036(gl_ClipDistance) BuiltIn ClipDistance
|
||||
Decorate 1052(samp2dr) DescriptorSet 0
|
||||
Decorate 1078(isamp2DA) DescriptorSet 0
|
||||
Decorate 1095(gl_FragCoord) BuiltIn FragCoord
|
||||
Decorate 1097(vl2) Location 6
|
||||
2: TypeVoid
|
||||
|
@ -7,7 +7,7 @@ Linked geometry stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 74
|
||||
// Id's are bound by 72
|
||||
|
||||
Capability Geometry
|
||||
Capability GeometryPointSize
|
||||
@ -36,7 +36,6 @@ Linked geometry stage:
|
||||
Name 46 "coord"
|
||||
Name 64 "i"
|
||||
Name 67 "indexable"
|
||||
Name 73 "v4"
|
||||
MemberDecorate 9(gl_PerVertex) 0 BuiltIn PointSize
|
||||
Decorate 9(gl_PerVertex) Block
|
||||
MemberDecorate 21(gl_PerVertex) 0 BuiltIn PointSize
|
||||
@ -46,6 +45,7 @@ Linked geometry stage:
|
||||
Decorate 28(gl_ViewportIndex) Stream 0
|
||||
Decorate 28(gl_ViewportIndex) BuiltIn ViewportIndex
|
||||
Decorate 33(gl_InvocationID) BuiltIn InvocationId
|
||||
Decorate 41(s2D) DescriptorSet 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@ -94,12 +94,10 @@ Linked geometry stage:
|
||||
60: 15(int) Constant 2
|
||||
61: 50(ivec2) ConstantComposite 60 16
|
||||
62: 52 ConstantComposite 53 55 57 59 61
|
||||
63: TypePointer UniformConstant 15(int)
|
||||
64(i): 63(ptr) Variable UniformConstant
|
||||
63: TypePointer Private 15(int)
|
||||
64(i): 63(ptr) Variable Private
|
||||
66: TypePointer Function 52
|
||||
68: TypePointer Function 50(ivec2)
|
||||
72: TypePointer UniformConstant 35(fvec4)
|
||||
73(v4): 72(ptr) Variable UniformConstant
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
8(p): 7(ptr) Variable Function
|
||||
|
@ -7,13 +7,13 @@ Linked vertex stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 69
|
||||
// Id's are bound by 63
|
||||
|
||||
Capability Shader
|
||||
Capability ClipDistance
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Vertex 4 "main" 12 23 34 44 45 65 67 68
|
||||
EntryPoint Vertex 4 "main" 12 23 34 38 41 42 62
|
||||
Source GLSL 430
|
||||
Name 4 "main"
|
||||
Name 10 "gl_PerVertex"
|
||||
@ -21,58 +21,57 @@ Linked vertex stage:
|
||||
Name 12 ""
|
||||
Name 23 "bad"
|
||||
Name 34 "badorder3"
|
||||
Name 39 "f"
|
||||
Name 43 "uv4"
|
||||
Name 44 "badorder"
|
||||
Name 45 "badorder2"
|
||||
Name 46 "boundblock"
|
||||
MemberName 46(boundblock) 0 "aoeu"
|
||||
Name 48 "boundInst"
|
||||
Name 49 "anonblock"
|
||||
MemberName 49(anonblock) 0 "aoeu"
|
||||
Name 51 ""
|
||||
Name 55 "sampb1"
|
||||
Name 58 "sampb2"
|
||||
Name 59 "sampb4"
|
||||
Name 62 "S"
|
||||
MemberName 62(S) 0 "a"
|
||||
MemberName 62(S) 1 "b"
|
||||
MemberName 62(S) 2 "c"
|
||||
Name 63 "SS"
|
||||
MemberName 63(SS) 0 "b"
|
||||
MemberName 63(SS) 1 "s"
|
||||
MemberName 63(SS) 2 "c"
|
||||
Name 65 "var"
|
||||
Name 67 "gl_VertexID"
|
||||
Name 68 "gl_InstanceID"
|
||||
Name 38 "f"
|
||||
Name 41 "badorder"
|
||||
Name 42 "badorder2"
|
||||
Name 43 "boundblock"
|
||||
MemberName 43(boundblock) 0 "aoeu"
|
||||
Name 45 "boundInst"
|
||||
Name 46 "anonblock"
|
||||
MemberName 46(anonblock) 0 "aoeu"
|
||||
Name 48 ""
|
||||
Name 52 "sampb1"
|
||||
Name 55 "sampb2"
|
||||
Name 56 "sampb4"
|
||||
Name 59 "S"
|
||||
MemberName 59(S) 0 "a"
|
||||
MemberName 59(S) 1 "b"
|
||||
MemberName 59(S) 2 "c"
|
||||
Name 60 "SS"
|
||||
MemberName 60(SS) 0 "b"
|
||||
MemberName 60(SS) 1 "s"
|
||||
MemberName 60(SS) 2 "c"
|
||||
Name 62 "var"
|
||||
MemberDecorate 10(gl_PerVertex) 0 BuiltIn ClipDistance
|
||||
Decorate 10(gl_PerVertex) Block
|
||||
Decorate 34(badorder3) Flat
|
||||
Decorate 43(uv4) Location 4
|
||||
Decorate 45(badorder2) Invariant
|
||||
Decorate 46(boundblock) GLSLShared
|
||||
Decorate 46(boundblock) Block
|
||||
Decorate 48(boundInst) Binding 3
|
||||
Decorate 49(anonblock) GLSLShared
|
||||
Decorate 49(anonblock) Block
|
||||
Decorate 51 Binding 7
|
||||
Decorate 55(sampb1) Binding 4
|
||||
Decorate 58(sampb2) Binding 5
|
||||
Decorate 59(sampb4) Binding 31
|
||||
MemberDecorate 62(S) 0 Flat
|
||||
MemberDecorate 62(S) 0 Location 1
|
||||
MemberDecorate 62(S) 1 Flat
|
||||
MemberDecorate 62(S) 1 Location 2
|
||||
MemberDecorate 62(S) 2 Flat
|
||||
MemberDecorate 62(S) 2 Location 3
|
||||
MemberDecorate 63(SS) 0 Flat
|
||||
MemberDecorate 63(SS) 0 Location 0
|
||||
MemberDecorate 63(SS) 1 Flat
|
||||
MemberDecorate 63(SS) 1 Location 1
|
||||
MemberDecorate 63(SS) 2 Flat
|
||||
MemberDecorate 63(SS) 2 Location 4
|
||||
Decorate 67(gl_VertexID) BuiltIn VertexId
|
||||
Decorate 68(gl_InstanceID) BuiltIn InstanceId
|
||||
Decorate 42(badorder2) Invariant
|
||||
MemberDecorate 43(boundblock) 0 Offset 0
|
||||
Decorate 43(boundblock) Block
|
||||
Decorate 45(boundInst) DescriptorSet 0
|
||||
Decorate 45(boundInst) Binding 3
|
||||
MemberDecorate 46(anonblock) 0 Offset 0
|
||||
Decorate 46(anonblock) Block
|
||||
Decorate 48 DescriptorSet 0
|
||||
Decorate 48 Binding 7
|
||||
Decorate 52(sampb1) DescriptorSet 0
|
||||
Decorate 52(sampb1) Binding 4
|
||||
Decorate 55(sampb2) DescriptorSet 0
|
||||
Decorate 55(sampb2) Binding 5
|
||||
Decorate 56(sampb4) DescriptorSet 0
|
||||
Decorate 56(sampb4) Binding 31
|
||||
MemberDecorate 59(S) 0 Flat
|
||||
MemberDecorate 59(S) 0 Location 1
|
||||
MemberDecorate 59(S) 1 Flat
|
||||
MemberDecorate 59(S) 1 Location 2
|
||||
MemberDecorate 59(S) 2 Flat
|
||||
MemberDecorate 59(S) 2 Location 3
|
||||
MemberDecorate 60(SS) 0 Flat
|
||||
MemberDecorate 60(SS) 0 Location 0
|
||||
MemberDecorate 60(SS) 1 Flat
|
||||
MemberDecorate 60(SS) 1 Location 1
|
||||
MemberDecorate 60(SS) 2 Flat
|
||||
MemberDecorate 60(SS) 2 Location 4
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@ -99,35 +98,29 @@ Linked vertex stage:
|
||||
33: TypePointer Output 19(fvec4)
|
||||
34(badorder3): 33(ptr) Variable Output
|
||||
35: TypePointer Input 19(fvec4)
|
||||
38: TypePointer UniformConstant 6(float)
|
||||
39(f): 38(ptr) Variable UniformConstant
|
||||
42: TypePointer UniformConstant 19(fvec4)
|
||||
43(uv4): 42(ptr) Variable UniformConstant
|
||||
44(badorder): 35(ptr) Variable Input
|
||||
45(badorder2): 33(ptr) Variable Output
|
||||
46(boundblock): TypeStruct 13(int)
|
||||
47: TypePointer Uniform 46(boundblock)
|
||||
48(boundInst): 47(ptr) Variable Uniform
|
||||
49(anonblock): TypeStruct 13(int)
|
||||
50: TypePointer Uniform 49(anonblock)
|
||||
51: 50(ptr) Variable Uniform
|
||||
52: TypeImage 6(float) 2D sampled format:Unknown
|
||||
53: TypeSampledImage 52
|
||||
38(f): 25(ptr) Variable Input
|
||||
41(badorder): 35(ptr) Variable Input
|
||||
42(badorder2): 33(ptr) Variable Output
|
||||
43(boundblock): TypeStruct 13(int)
|
||||
44: TypePointer Uniform 43(boundblock)
|
||||
45(boundInst): 44(ptr) Variable Uniform
|
||||
46(anonblock): TypeStruct 13(int)
|
||||
47: TypePointer Uniform 46(anonblock)
|
||||
48: 47(ptr) Variable Uniform
|
||||
49: TypeImage 6(float) 2D sampled format:Unknown
|
||||
50: TypeSampledImage 49
|
||||
51: TypePointer UniformConstant 50
|
||||
52(sampb1): 51(ptr) Variable UniformConstant
|
||||
53: TypeArray 50 20
|
||||
54: TypePointer UniformConstant 53
|
||||
55(sampb1): 54(ptr) Variable UniformConstant
|
||||
56: TypeArray 53 20
|
||||
57: TypePointer UniformConstant 56
|
||||
58(sampb2): 57(ptr) Variable UniformConstant
|
||||
59(sampb4): 54(ptr) Variable UniformConstant
|
||||
60: TypeVector 7(int) 2
|
||||
61: TypeVector 6(float) 3
|
||||
62(S): TypeStruct 6(float) 60(ivec2) 61(fvec3)
|
||||
63(SS): TypeStruct 19(fvec4) 62(S) 19(fvec4)
|
||||
64: TypePointer Output 63(SS)
|
||||
65(var): 64(ptr) Variable Output
|
||||
66: TypePointer Input 13(int)
|
||||
67(gl_VertexID): 66(ptr) Variable Input
|
||||
68(gl_InstanceID): 66(ptr) Variable Input
|
||||
55(sampb2): 54(ptr) Variable UniformConstant
|
||||
56(sampb4): 51(ptr) Variable UniformConstant
|
||||
57: TypeVector 7(int) 2
|
||||
58: TypeVector 6(float) 3
|
||||
59(S): TypeStruct 6(float) 57(ivec2) 58(fvec3)
|
||||
60(SS): TypeStruct 19(fvec4) 59(S) 19(fvec4)
|
||||
61: TypePointer Output 60(SS)
|
||||
62(var): 61(ptr) Variable Output
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
18: 17(ptr) AccessChain 12 14 15
|
||||
@ -143,8 +136,8 @@ Linked vertex stage:
|
||||
Store 34(badorder3) 37
|
||||
Branch 32
|
||||
32: Label
|
||||
40: 6(float) Load 39(f)
|
||||
41: 17(ptr) AccessChain 12 14 14
|
||||
Store 41 40
|
||||
39: 6(float) Load 38(f)
|
||||
40: 17(ptr) AccessChain 12 14 14
|
||||
Store 40 39
|
||||
Return
|
||||
FunctionEnd
|
||||
|
@ -12,8 +12,8 @@ Linked fragment stage:
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 39 44 78
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
EntryPoint Fragment 4 "main" 39 44 68 70 72 78
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 430
|
||||
Name 4 "main"
|
||||
Name 17 "foo(f1[5][7];"
|
||||
@ -33,8 +33,14 @@ Linked fragment stage:
|
||||
Name 94 "uAofA"
|
||||
MemberName 94(uAofA) 0 "f"
|
||||
Name 98 "nameAofA"
|
||||
Decorate 94(uAofA) GLSLShared
|
||||
Decorate 68(i) Flat
|
||||
Decorate 70(j) Flat
|
||||
Decorate 72(k) Flat
|
||||
Decorate 92 ArrayStride 16
|
||||
Decorate 93 ArrayStride 64
|
||||
MemberDecorate 94(uAofA) 0 Offset 0
|
||||
Decorate 94(uAofA) Block
|
||||
Decorate 98(nameAofA) DescriptorSet 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@ -74,10 +80,10 @@ Linked fragment stage:
|
||||
64: TypeArray 62 63
|
||||
65: TypePointer Private 64
|
||||
66(many): 65(ptr) Variable Private
|
||||
67: TypePointer UniformConstant 21(int)
|
||||
68(i): 67(ptr) Variable UniformConstant
|
||||
70(j): 67(ptr) Variable UniformConstant
|
||||
72(k): 67(ptr) Variable UniformConstant
|
||||
67: TypePointer Input 21(int)
|
||||
68(i): 67(ptr) Variable Input
|
||||
70(j): 67(ptr) Variable Input
|
||||
72(k): 67(ptr) Variable Input
|
||||
77: TypePointer Input 6(float)
|
||||
78(infloat): 77(ptr) Variable Input
|
||||
80: TypePointer Private 6(float)
|
||||
|
@ -7,13 +7,13 @@ Linked fragment stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 507
|
||||
// Id's are bound by 509
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 483
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
EntryPoint Fragment 4 "main" 11 22 212 288 485 503 508
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 450
|
||||
Name 4 "main"
|
||||
Name 9 "v"
|
||||
@ -27,52 +27,56 @@ Linked fragment stage:
|
||||
Name 288 "uui"
|
||||
Name 305 "b"
|
||||
Name 342 "ub42"
|
||||
Name 483 "FragColor"
|
||||
Name 501 "uiv4"
|
||||
Name 503 "ub"
|
||||
Name 506 "uuv4"
|
||||
Name 485 "FragColor"
|
||||
Name 503 "uiv4"
|
||||
Name 505 "ub"
|
||||
Name 508 "uuv4"
|
||||
Decorate 22(ui) Flat
|
||||
Decorate 288(uui) Flat
|
||||
Decorate 503(uiv4) Flat
|
||||
Decorate 508(uuv4) Flat
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
7: TypeVector 6(float) 4
|
||||
8: TypePointer Function 7(fvec4)
|
||||
10: TypePointer UniformConstant 7(fvec4)
|
||||
11(uv4): 10(ptr) Variable UniformConstant
|
||||
10: TypePointer Input 7(fvec4)
|
||||
11(uv4): 10(ptr) Variable Input
|
||||
18: TypeInt 32 1
|
||||
19: TypePointer Function 18(int)
|
||||
21: TypePointer UniformConstant 18(int)
|
||||
22(ui): 21(ptr) Variable UniformConstant
|
||||
21: TypePointer Input 18(int)
|
||||
22(ui): 21(ptr) Variable Input
|
||||
141: TypeInt 32 0
|
||||
142: 141(int) Constant 0
|
||||
143: TypePointer Function 6(float)
|
||||
178: TypeBool
|
||||
179: TypeVector 178(bool) 4
|
||||
180: TypePointer UniformConstant 179(bvec4)
|
||||
181(ub41): 180(ptr) Variable UniformConstant
|
||||
211: TypePointer UniformConstant 6(float)
|
||||
212(uf): 211(ptr) Variable UniformConstant
|
||||
180: TypePointer Private 179(bvec4)
|
||||
181(ub41): 180(ptr) Variable Private
|
||||
211: TypePointer Input 6(float)
|
||||
212(uf): 211(ptr) Variable Input
|
||||
284: TypePointer Function 141(int)
|
||||
287: TypePointer UniformConstant 141(int)
|
||||
288(uui): 287(ptr) Variable UniformConstant
|
||||
287: TypePointer Input 141(int)
|
||||
288(uui): 287(ptr) Variable Input
|
||||
304: TypePointer Function 178(bool)
|
||||
342(ub42): 180(ptr) Variable UniformConstant
|
||||
396: 18(int) Constant 2
|
||||
403: 18(int) Constant 1
|
||||
433: TypeVector 6(float) 3
|
||||
452: 6(float) Constant 1073741824
|
||||
459: 6(float) Constant 1065353216
|
||||
464: 18(int) Constant 66
|
||||
470: 18(int) Constant 17
|
||||
482: TypePointer Output 7(fvec4)
|
||||
483(FragColor): 482(ptr) Variable Output
|
||||
499: TypeVector 18(int) 4
|
||||
500: TypePointer UniformConstant 499(ivec4)
|
||||
501(uiv4): 500(ptr) Variable UniformConstant
|
||||
502: TypePointer UniformConstant 178(bool)
|
||||
503(ub): 502(ptr) Variable UniformConstant
|
||||
504: TypeVector 141(int) 4
|
||||
505: TypePointer UniformConstant 504(ivec4)
|
||||
506(uuv4): 505(ptr) Variable UniformConstant
|
||||
342(ub42): 180(ptr) Variable Private
|
||||
398: 18(int) Constant 2
|
||||
405: 18(int) Constant 1
|
||||
435: TypeVector 6(float) 3
|
||||
454: 6(float) Constant 1073741824
|
||||
461: 6(float) Constant 1065353216
|
||||
466: 18(int) Constant 66
|
||||
472: 18(int) Constant 17
|
||||
484: TypePointer Output 7(fvec4)
|
||||
485(FragColor): 484(ptr) Variable Output
|
||||
501: TypeVector 18(int) 4
|
||||
502: TypePointer Input 501(ivec4)
|
||||
503(uiv4): 502(ptr) Variable Input
|
||||
504: TypePointer Private 178(bool)
|
||||
505(ub): 504(ptr) Variable Private
|
||||
506: TypeVector 141(int) 4
|
||||
507: TypePointer Input 506(ivec4)
|
||||
508(uuv4): 507(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
9(v): 8(ptr) Variable Function
|
||||
@ -80,7 +84,7 @@ Linked fragment stage:
|
||||
188(f): 143(ptr) Variable Function
|
||||
285(u): 284(ptr) Variable Function
|
||||
305(b): 304(ptr) Variable Function
|
||||
484: 8(ptr) Variable Function
|
||||
486: 8(ptr) Variable Function
|
||||
12: 7(fvec4) Load 11(uv4)
|
||||
13: 7(fvec4) ExtInst 1(GLSL.std.450) 11(Radians) 12
|
||||
Store 9(v) 13
|
||||
@ -529,137 +533,142 @@ Linked fragment stage:
|
||||
388: 18(int) Load 20(i)
|
||||
389: 18(int) Load 22(ui)
|
||||
390: 178(bool) INotEqual 388 389
|
||||
391: 18(int) Load 20(i)
|
||||
392: 18(int) Load 22(ui)
|
||||
393: 178(bool) IEqual 391 392
|
||||
394: 178(bool) LogicalAnd 390 393
|
||||
395: 18(int) Load 20(i)
|
||||
397: 178(bool) INotEqual 395 396
|
||||
398: 178(bool) LogicalNotEqual 394 397
|
||||
SelectionMerge 392 None
|
||||
BranchConditional 390 391 392
|
||||
391: Label
|
||||
393: 18(int) Load 20(i)
|
||||
394: 18(int) Load 22(ui)
|
||||
395: 178(bool) IEqual 393 394
|
||||
Branch 392
|
||||
392: Label
|
||||
396: 178(bool) Phi 390 386 395 391
|
||||
397: 18(int) Load 20(i)
|
||||
399: 178(bool) INotEqual 397 398
|
||||
400: 178(bool) LogicalNotEqual 396 399
|
||||
Branch 387
|
||||
387: Label
|
||||
399: 178(bool) Phi 384 365 398 386
|
||||
SelectionMerge 401 None
|
||||
BranchConditional 399 400 401
|
||||
400: Label
|
||||
402: 18(int) Load 20(i)
|
||||
404: 18(int) IAdd 402 403
|
||||
Store 20(i) 404
|
||||
Branch 401
|
||||
401: Label
|
||||
405: 6(float) Load 212(uf)
|
||||
406: 6(float) Load 212(uf)
|
||||
407: 6(float) FAdd 405 406
|
||||
401: 178(bool) Phi 384 365 400 392
|
||||
SelectionMerge 403 None
|
||||
BranchConditional 401 402 403
|
||||
402: Label
|
||||
404: 18(int) Load 20(i)
|
||||
406: 18(int) IAdd 404 405
|
||||
Store 20(i) 406
|
||||
Branch 403
|
||||
403: Label
|
||||
407: 6(float) Load 212(uf)
|
||||
408: 6(float) Load 212(uf)
|
||||
409: 6(float) FMul 407 408
|
||||
409: 6(float) FAdd 407 408
|
||||
410: 6(float) Load 212(uf)
|
||||
411: 6(float) FSub 409 410
|
||||
411: 6(float) FMul 409 410
|
||||
412: 6(float) Load 212(uf)
|
||||
413: 6(float) FDiv 411 412
|
||||
Store 188(f) 413
|
||||
414: 7(fvec4) Load 9(v)
|
||||
415: 6(float) ExtInst 1(GLSL.std.450) 66(Length) 414
|
||||
416: 6(float) Load 188(f)
|
||||
417: 6(float) FAdd 416 415
|
||||
Store 188(f) 417
|
||||
418: 7(fvec4) Load 9(v)
|
||||
419: 7(fvec4) Load 9(v)
|
||||
420: 6(float) ExtInst 1(GLSL.std.450) 67(Distance) 418 419
|
||||
421: 6(float) Load 188(f)
|
||||
422: 6(float) FAdd 421 420
|
||||
Store 188(f) 422
|
||||
423: 7(fvec4) Load 9(v)
|
||||
424: 7(fvec4) Load 9(v)
|
||||
425: 6(float) Dot 423 424
|
||||
426: 6(float) Load 188(f)
|
||||
427: 6(float) FAdd 426 425
|
||||
Store 188(f) 427
|
||||
413: 6(float) FSub 411 412
|
||||
414: 6(float) Load 212(uf)
|
||||
415: 6(float) FDiv 413 414
|
||||
Store 188(f) 415
|
||||
416: 7(fvec4) Load 9(v)
|
||||
417: 6(float) ExtInst 1(GLSL.std.450) 66(Length) 416
|
||||
418: 6(float) Load 188(f)
|
||||
419: 6(float) FAdd 418 417
|
||||
Store 188(f) 419
|
||||
420: 7(fvec4) Load 9(v)
|
||||
421: 7(fvec4) Load 9(v)
|
||||
422: 6(float) ExtInst 1(GLSL.std.450) 67(Distance) 420 421
|
||||
423: 6(float) Load 188(f)
|
||||
424: 6(float) FAdd 423 422
|
||||
Store 188(f) 424
|
||||
425: 7(fvec4) Load 9(v)
|
||||
426: 7(fvec4) Load 9(v)
|
||||
427: 6(float) Dot 425 426
|
||||
428: 6(float) Load 188(f)
|
||||
429: 6(float) Load 212(uf)
|
||||
430: 6(float) FMul 428 429
|
||||
431: 6(float) Load 188(f)
|
||||
432: 6(float) FAdd 431 430
|
||||
Store 188(f) 432
|
||||
434: 7(fvec4) Load 9(v)
|
||||
435: 433(fvec3) VectorShuffle 434 434 0 1 2
|
||||
429: 6(float) FAdd 428 427
|
||||
Store 188(f) 429
|
||||
430: 6(float) Load 188(f)
|
||||
431: 6(float) Load 212(uf)
|
||||
432: 6(float) FMul 430 431
|
||||
433: 6(float) Load 188(f)
|
||||
434: 6(float) FAdd 433 432
|
||||
Store 188(f) 434
|
||||
436: 7(fvec4) Load 9(v)
|
||||
437: 433(fvec3) VectorShuffle 436 436 0 1 2
|
||||
438: 433(fvec3) ExtInst 1(GLSL.std.450) 68(Cross) 435 437
|
||||
439: 6(float) CompositeExtract 438 0
|
||||
440: 6(float) Load 188(f)
|
||||
441: 6(float) FAdd 440 439
|
||||
Store 188(f) 441
|
||||
437: 435(fvec3) VectorShuffle 436 436 0 1 2
|
||||
438: 7(fvec4) Load 9(v)
|
||||
439: 435(fvec3) VectorShuffle 438 438 0 1 2
|
||||
440: 435(fvec3) ExtInst 1(GLSL.std.450) 68(Cross) 437 439
|
||||
441: 6(float) CompositeExtract 440 0
|
||||
442: 6(float) Load 188(f)
|
||||
443: 6(float) Load 212(uf)
|
||||
444: 178(bool) FOrdEqual 442 443
|
||||
445: 178(bool) LogicalNot 444
|
||||
SelectionMerge 447 None
|
||||
BranchConditional 445 446 447
|
||||
446: Label
|
||||
448: 6(float) Load 188(f)
|
||||
449: 6(float) Load 212(uf)
|
||||
450: 178(bool) FOrdNotEqual 448 449
|
||||
451: 6(float) Load 188(f)
|
||||
453: 178(bool) FOrdNotEqual 451 452
|
||||
454: 178(bool) LogicalAnd 450 453
|
||||
Branch 447
|
||||
447: Label
|
||||
455: 178(bool) Phi 444 401 454 446
|
||||
SelectionMerge 457 None
|
||||
BranchConditional 455 456 457
|
||||
456: Label
|
||||
458: 6(float) Load 188(f)
|
||||
460: 6(float) FAdd 458 459
|
||||
Store 188(f) 460
|
||||
Branch 457
|
||||
457: Label
|
||||
461: 18(int) Load 22(ui)
|
||||
462: 18(int) Load 20(i)
|
||||
463: 18(int) BitwiseAnd 462 461
|
||||
Store 20(i) 463
|
||||
465: 18(int) Load 20(i)
|
||||
466: 18(int) BitwiseOr 465 464
|
||||
Store 20(i) 466
|
||||
467: 18(int) Load 22(ui)
|
||||
468: 18(int) Load 20(i)
|
||||
469: 18(int) BitwiseXor 468 467
|
||||
Store 20(i) 469
|
||||
471: 18(int) Load 20(i)
|
||||
472: 18(int) SMod 471 470
|
||||
Store 20(i) 472
|
||||
443: 6(float) FAdd 442 441
|
||||
Store 188(f) 443
|
||||
444: 6(float) Load 188(f)
|
||||
445: 6(float) Load 212(uf)
|
||||
446: 178(bool) FOrdEqual 444 445
|
||||
447: 178(bool) LogicalNot 446
|
||||
SelectionMerge 449 None
|
||||
BranchConditional 447 448 449
|
||||
448: Label
|
||||
450: 6(float) Load 188(f)
|
||||
451: 6(float) Load 212(uf)
|
||||
452: 178(bool) FOrdNotEqual 450 451
|
||||
453: 6(float) Load 188(f)
|
||||
455: 178(bool) FOrdNotEqual 453 454
|
||||
456: 178(bool) LogicalAnd 452 455
|
||||
Branch 449
|
||||
449: Label
|
||||
457: 178(bool) Phi 446 403 456 448
|
||||
SelectionMerge 459 None
|
||||
BranchConditional 457 458 459
|
||||
458: Label
|
||||
460: 6(float) Load 188(f)
|
||||
462: 6(float) FAdd 460 461
|
||||
Store 188(f) 462
|
||||
Branch 459
|
||||
459: Label
|
||||
463: 18(int) Load 22(ui)
|
||||
464: 18(int) Load 20(i)
|
||||
465: 18(int) BitwiseAnd 464 463
|
||||
Store 20(i) 465
|
||||
467: 18(int) Load 20(i)
|
||||
468: 18(int) BitwiseOr 467 466
|
||||
Store 20(i) 468
|
||||
469: 18(int) Load 22(ui)
|
||||
470: 18(int) Load 20(i)
|
||||
471: 18(int) BitwiseXor 470 469
|
||||
Store 20(i) 471
|
||||
473: 18(int) Load 20(i)
|
||||
474: 18(int) ShiftRightArithmetic 473 396
|
||||
474: 18(int) SMod 473 472
|
||||
Store 20(i) 474
|
||||
475: 18(int) Load 22(ui)
|
||||
476: 18(int) Load 20(i)
|
||||
477: 18(int) ShiftLeftLogical 476 475
|
||||
Store 20(i) 477
|
||||
475: 18(int) Load 20(i)
|
||||
476: 18(int) ShiftRightArithmetic 475 398
|
||||
Store 20(i) 476
|
||||
477: 18(int) Load 22(ui)
|
||||
478: 18(int) Load 20(i)
|
||||
479: 18(int) Not 478
|
||||
479: 18(int) ShiftLeftLogical 478 477
|
||||
Store 20(i) 479
|
||||
480: 178(bool) Load 305(b)
|
||||
481: 178(bool) LogicalNot 480
|
||||
Store 305(b) 481
|
||||
485: 178(bool) Load 305(b)
|
||||
SelectionMerge 487 None
|
||||
BranchConditional 485 486 496
|
||||
486: Label
|
||||
488: 18(int) Load 20(i)
|
||||
489: 6(float) ConvertSToF 488
|
||||
490: 7(fvec4) CompositeConstruct 489 489 489 489
|
||||
491: 6(float) Load 188(f)
|
||||
480: 18(int) Load 20(i)
|
||||
481: 18(int) Not 480
|
||||
Store 20(i) 481
|
||||
482: 178(bool) Load 305(b)
|
||||
483: 178(bool) LogicalNot 482
|
||||
Store 305(b) 483
|
||||
487: 178(bool) Load 305(b)
|
||||
SelectionMerge 489 None
|
||||
BranchConditional 487 488 498
|
||||
488: Label
|
||||
490: 18(int) Load 20(i)
|
||||
491: 6(float) ConvertSToF 490
|
||||
492: 7(fvec4) CompositeConstruct 491 491 491 491
|
||||
493: 7(fvec4) FAdd 490 492
|
||||
494: 7(fvec4) Load 9(v)
|
||||
495: 7(fvec4) FAdd 493 494
|
||||
Store 484 495
|
||||
Branch 487
|
||||
496: Label
|
||||
497: 7(fvec4) Load 9(v)
|
||||
Store 484 497
|
||||
Branch 487
|
||||
487: Label
|
||||
498: 7(fvec4) Load 484
|
||||
Store 483(FragColor) 498
|
||||
493: 6(float) Load 188(f)
|
||||
494: 7(fvec4) CompositeConstruct 493 493 493 493
|
||||
495: 7(fvec4) FAdd 492 494
|
||||
496: 7(fvec4) Load 9(v)
|
||||
497: 7(fvec4) FAdd 495 496
|
||||
Store 486 497
|
||||
Branch 489
|
||||
498: Label
|
||||
499: 7(fvec4) Load 9(v)
|
||||
Store 486 499
|
||||
Branch 489
|
||||
489: Label
|
||||
500: 7(fvec4) Load 486
|
||||
Store 485(FragColor) 500
|
||||
Return
|
||||
FunctionEnd
|
||||
|
@ -12,8 +12,8 @@ Linked fragment stage:
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 65
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
EntryPoint Fragment 4 "main" 65 149
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 420
|
||||
Name 4 "main"
|
||||
Name 8 "S"
|
||||
@ -72,6 +72,7 @@ Linked fragment stage:
|
||||
Name 190 "param"
|
||||
Name 194 "param"
|
||||
Decorate 65(OutColor) Location 0
|
||||
Decorate 149(u) Flat
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@ -92,8 +93,8 @@ Linked fragment stage:
|
||||
141: 6(float) Constant 0
|
||||
142: 7(fvec3) ConstantComposite 141 141 141
|
||||
143: TypePointer Function 8(S)
|
||||
148: TypePointer UniformConstant 13(int)
|
||||
149(u): 148(ptr) Variable UniformConstant
|
||||
148: TypePointer Input 13(int)
|
||||
149(u): 148(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
144(s): 143(ptr) Variable Function
|
||||
|
@ -7,13 +7,13 @@ Linked fragment stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 378
|
||||
// Id's are bound by 215
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 16 41 90 374
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
EntryPoint Fragment 4 "main" 16 41 101 213
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 450
|
||||
Name 4 "main"
|
||||
Name 8 "s1"
|
||||
@ -23,34 +23,47 @@ Linked fragment stage:
|
||||
Name 16 "u"
|
||||
Name 37 "b"
|
||||
Name 41 "w"
|
||||
Name 55 "s2"
|
||||
MemberName 55(s2) 0 "i"
|
||||
MemberName 55(s2) 1 "f"
|
||||
MemberName 55(s2) 2 "s1_1"
|
||||
Name 57 "foo2a"
|
||||
Name 59 "foo2b"
|
||||
Name 82 "v"
|
||||
Name 86 "samp2D"
|
||||
Name 90 "coord"
|
||||
Name 341 "s1"
|
||||
MemberName 341(s1) 0 "i"
|
||||
MemberName 341(s1) 1 "f"
|
||||
Name 342 "s2"
|
||||
MemberName 342(s2) 0 "i"
|
||||
MemberName 342(s2) 1 "f"
|
||||
MemberName 342(s2) 2 "s1_1"
|
||||
Name 343 "bn"
|
||||
MemberName 343(bn) 0 "foo2a"
|
||||
Name 345 "bi"
|
||||
Name 374 "color"
|
||||
Name 377 "foo1"
|
||||
MemberDecorate 341(s1) 0 Offset 0
|
||||
MemberDecorate 341(s1) 1 Offset 4
|
||||
MemberDecorate 342(s2) 0 Offset 0
|
||||
MemberDecorate 342(s2) 1 Offset 4
|
||||
MemberDecorate 342(s2) 2 Offset 16
|
||||
MemberDecorate 343(bn) 0 Offset 0
|
||||
Decorate 343(bn) Block
|
||||
Name 55 "s1"
|
||||
MemberName 55(s1) 0 "i"
|
||||
MemberName 55(s1) 1 "f"
|
||||
Name 56 "s2"
|
||||
MemberName 56(s2) 0 "i"
|
||||
MemberName 56(s2) 1 "f"
|
||||
MemberName 56(s2) 2 "s1_1"
|
||||
Name 57 "ub1"
|
||||
MemberName 57(ub1) 0 "foo2a"
|
||||
Name 59 "uName1"
|
||||
Name 64 "s1"
|
||||
MemberName 64(s1) 0 "i"
|
||||
MemberName 64(s1) 1 "f"
|
||||
Name 65 "s2"
|
||||
MemberName 65(s2) 0 "i"
|
||||
MemberName 65(s2) 1 "f"
|
||||
MemberName 65(s2) 2 "s1_1"
|
||||
Name 66 "ub2"
|
||||
MemberName 66(ub2) 0 "foo2b"
|
||||
Name 68 "uName2"
|
||||
Name 93 "v"
|
||||
Name 97 "samp2D"
|
||||
Name 101 "coord"
|
||||
Name 213 "color"
|
||||
MemberDecorate 55(s1) 0 Offset 0
|
||||
MemberDecorate 55(s1) 1 Offset 4
|
||||
MemberDecorate 56(s2) 0 Offset 0
|
||||
MemberDecorate 56(s2) 1 Offset 4
|
||||
MemberDecorate 56(s2) 2 Offset 16
|
||||
MemberDecorate 57(ub1) 0 Offset 0
|
||||
Decorate 57(ub1) Block
|
||||
Decorate 59(uName1) DescriptorSet 0
|
||||
MemberDecorate 64(s1) 0 Offset 0
|
||||
MemberDecorate 64(s1) 1 Offset 4
|
||||
MemberDecorate 65(s2) 0 Offset 0
|
||||
MemberDecorate 65(s2) 1 Offset 4
|
||||
MemberDecorate 65(s2) 2 Offset 8
|
||||
MemberDecorate 66(ub2) 0 Offset 0
|
||||
Decorate 66(ub2) BufferBlock
|
||||
Decorate 68(uName2) DescriptorSet 0
|
||||
Decorate 97(samp2D) DescriptorSet 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 1
|
||||
@ -74,44 +87,43 @@ Linked fragment stage:
|
||||
39: 7(float) Constant 1099431936
|
||||
40: 8(s1) ConstantComposite 38 39
|
||||
41(w): 15(ptr) Variable Input
|
||||
55(s2): TypeStruct 6(int) 7(float) 8(s1)
|
||||
56: TypePointer UniformConstant 55(s2)
|
||||
57(foo2a): 56(ptr) Variable UniformConstant
|
||||
59(foo2b): 56(ptr) Variable UniformConstant
|
||||
61: TypeBool
|
||||
81: TypePointer Function 14(fvec4)
|
||||
83: TypeImage 7(float) 2D sampled format:Unknown
|
||||
84: TypeSampledImage 83
|
||||
85: TypePointer UniformConstant 84
|
||||
86(samp2D): 85(ptr) Variable UniformConstant
|
||||
88: TypeVector 7(float) 2
|
||||
89: TypePointer Input 88(fvec2)
|
||||
90(coord): 89(ptr) Variable Input
|
||||
95: 7(float) Constant 1073741824
|
||||
101: TypeVector 61(bool) 4
|
||||
106: 7(float) Constant 1077936128
|
||||
115: 7(float) Constant 1082130432
|
||||
121: TypeVector 61(bool) 2
|
||||
126: 7(float) Constant 1084227584
|
||||
232: 7(float) Constant 1086324736
|
||||
338: 7(float) Constant 1088421888
|
||||
341(s1): TypeStruct 6(int) 7(float)
|
||||
342(s2): TypeStruct 6(int) 7(float) 341(s1)
|
||||
343(bn): TypeStruct 342(s2)
|
||||
344: TypePointer Uniform 343(bn)
|
||||
345(bi): 344(ptr) Variable Uniform
|
||||
346: 6(int) Constant 0
|
||||
347: TypePointer Uniform 342(s2)
|
||||
370: 7(float) Constant 1090519040
|
||||
373: TypePointer Output 14(fvec4)
|
||||
374(color): 373(ptr) Variable Output
|
||||
376: TypePointer UniformConstant 8(s1)
|
||||
377(foo1): 376(ptr) Variable UniformConstant
|
||||
55(s1): TypeStruct 6(int) 7(float)
|
||||
56(s2): TypeStruct 6(int) 7(float) 55(s1)
|
||||
57(ub1): TypeStruct 56(s2)
|
||||
58: TypePointer Uniform 57(ub1)
|
||||
59(uName1): 58(ptr) Variable Uniform
|
||||
60: 6(int) Constant 0
|
||||
61: TypePointer Uniform 56(s2)
|
||||
64(s1): TypeStruct 6(int) 7(float)
|
||||
65(s2): TypeStruct 6(int) 7(float) 64(s1)
|
||||
66(ub2): TypeStruct 65(s2)
|
||||
67: TypePointer Uniform 66(ub2)
|
||||
68(uName2): 67(ptr) Variable Uniform
|
||||
69: TypePointer Uniform 65(s2)
|
||||
72: TypeBool
|
||||
92: TypePointer Function 14(fvec4)
|
||||
94: TypeImage 7(float) 2D sampled format:Unknown
|
||||
95: TypeSampledImage 94
|
||||
96: TypePointer UniformConstant 95
|
||||
97(samp2D): 96(ptr) Variable UniformConstant
|
||||
99: TypeVector 7(float) 2
|
||||
100: TypePointer Input 99(fvec2)
|
||||
101(coord): 100(ptr) Variable Input
|
||||
106: 7(float) Constant 1073741824
|
||||
112: TypeVector 72(bool) 4
|
||||
117: 7(float) Constant 1077936128
|
||||
126: 7(float) Constant 1082130432
|
||||
132: TypeVector 72(bool) 2
|
||||
137: 7(float) Constant 1084227584
|
||||
173: 7(float) Constant 1086324736
|
||||
209: 7(float) Constant 1088421888
|
||||
212: TypePointer Output 14(fvec4)
|
||||
213(color): 212(ptr) Variable Output
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
13(a): 12(ptr) Variable Function
|
||||
37(b): 12(ptr) Variable Function
|
||||
82(v): 81(ptr) Variable Function
|
||||
93(v): 92(ptr) Variable Function
|
||||
19: 18(ptr) AccessChain 16(u) 17
|
||||
20: 7(float) Load 19
|
||||
21: 6(int) ConvertFToS 20
|
||||
@ -140,325 +152,159 @@ Linked fragment stage:
|
||||
53: 8(s1) CompositeConstruct 50 52
|
||||
54: 11 CompositeConstruct 40 47 53
|
||||
Store 37(b) 54
|
||||
58: 55(s2) Load 57(foo2a)
|
||||
60: 55(s2) Load 59(foo2b)
|
||||
62: 6(int) CompositeExtract 58 0
|
||||
63: 6(int) CompositeExtract 60 0
|
||||
64: 61(bool) IEqual 62 63
|
||||
65: 7(float) CompositeExtract 58 1
|
||||
66: 7(float) CompositeExtract 60 1
|
||||
67: 61(bool) FOrdEqual 65 66
|
||||
68: 61(bool) LogicalAnd 64 67
|
||||
69: 8(s1) CompositeExtract 58 2
|
||||
70: 8(s1) CompositeExtract 60 2
|
||||
71: 6(int) CompositeExtract 69 0
|
||||
72: 6(int) CompositeExtract 70 0
|
||||
73: 61(bool) IEqual 71 72
|
||||
74: 7(float) CompositeExtract 69 1
|
||||
75: 7(float) CompositeExtract 70 1
|
||||
76: 61(bool) FOrdEqual 74 75
|
||||
77: 61(bool) LogicalAnd 73 76
|
||||
78: 61(bool) LogicalAnd 68 77
|
||||
SelectionMerge 80 None
|
||||
BranchConditional 78 79 93
|
||||
79: Label
|
||||
87: 84 Load 86(samp2D)
|
||||
91: 88(fvec2) Load 90(coord)
|
||||
92: 14(fvec4) ImageSampleImplicitLod 87 91
|
||||
Store 82(v) 92
|
||||
Branch 80
|
||||
93: Label
|
||||
94: 84 Load 86(samp2D)
|
||||
96: 88(fvec2) Load 90(coord)
|
||||
97: 88(fvec2) VectorTimesScalar 96 95
|
||||
98: 14(fvec4) ImageSampleImplicitLod 94 97
|
||||
Store 82(v) 98
|
||||
Branch 80
|
||||
80: Label
|
||||
99: 14(fvec4) Load 16(u)
|
||||
100: 14(fvec4) Load 82(v)
|
||||
102: 101(bvec4) FOrdEqual 99 100
|
||||
103: 61(bool) All 102
|
||||
SelectionMerge 105 None
|
||||
BranchConditional 103 104 105
|
||||
62: 61(ptr) AccessChain 59(uName1) 60
|
||||
63: 56(s2) Load 62
|
||||
70: 69(ptr) AccessChain 68(uName2) 60
|
||||
71: 65(s2) Load 70
|
||||
73: 6(int) CompositeExtract 63 0
|
||||
74: 6(int) CompositeExtract 71 0
|
||||
75: 72(bool) IEqual 73 74
|
||||
76: 7(float) CompositeExtract 63 1
|
||||
77: 7(float) CompositeExtract 71 1
|
||||
78: 72(bool) FOrdEqual 76 77
|
||||
79: 72(bool) LogicalAnd 75 78
|
||||
80: 55(s1) CompositeExtract 63 2
|
||||
81: 64(s1) CompositeExtract 71 2
|
||||
82: 6(int) CompositeExtract 80 0
|
||||
83: 6(int) CompositeExtract 81 0
|
||||
84: 72(bool) IEqual 82 83
|
||||
85: 7(float) CompositeExtract 80 1
|
||||
86: 7(float) CompositeExtract 81 1
|
||||
87: 72(bool) FOrdEqual 85 86
|
||||
88: 72(bool) LogicalAnd 84 87
|
||||
89: 72(bool) LogicalAnd 79 88
|
||||
SelectionMerge 91 None
|
||||
BranchConditional 89 90 104
|
||||
90: Label
|
||||
98: 95 Load 97(samp2D)
|
||||
102: 99(fvec2) Load 101(coord)
|
||||
103: 14(fvec4) ImageSampleImplicitLod 98 102
|
||||
Store 93(v) 103
|
||||
Branch 91
|
||||
104: Label
|
||||
107: 14(fvec4) Load 82(v)
|
||||
108: 14(fvec4) VectorTimesScalar 107 106
|
||||
Store 82(v) 108
|
||||
Branch 105
|
||||
105: Label
|
||||
109: 14(fvec4) Load 16(u)
|
||||
110: 14(fvec4) Load 82(v)
|
||||
111: 101(bvec4) FOrdNotEqual 109 110
|
||||
112: 61(bool) Any 111
|
||||
SelectionMerge 114 None
|
||||
BranchConditional 112 113 114
|
||||
113: Label
|
||||
116: 14(fvec4) Load 82(v)
|
||||
117: 14(fvec4) VectorTimesScalar 116 115
|
||||
Store 82(v) 117
|
||||
Branch 114
|
||||
114: Label
|
||||
118: 88(fvec2) Load 90(coord)
|
||||
119: 14(fvec4) Load 82(v)
|
||||
120: 88(fvec2) VectorShuffle 119 119 1 3
|
||||
122: 121(bvec2) FOrdEqual 118 120
|
||||
123: 61(bool) All 122
|
||||
105: 95 Load 97(samp2D)
|
||||
107: 99(fvec2) Load 101(coord)
|
||||
108: 99(fvec2) VectorTimesScalar 107 106
|
||||
109: 14(fvec4) ImageSampleImplicitLod 105 108
|
||||
Store 93(v) 109
|
||||
Branch 91
|
||||
91: Label
|
||||
110: 14(fvec4) Load 16(u)
|
||||
111: 14(fvec4) Load 93(v)
|
||||
113: 112(bvec4) FOrdEqual 110 111
|
||||
114: 72(bool) All 113
|
||||
SelectionMerge 116 None
|
||||
BranchConditional 114 115 116
|
||||
115: Label
|
||||
118: 14(fvec4) Load 93(v)
|
||||
119: 14(fvec4) VectorTimesScalar 118 117
|
||||
Store 93(v) 119
|
||||
Branch 116
|
||||
116: Label
|
||||
120: 14(fvec4) Load 16(u)
|
||||
121: 14(fvec4) Load 93(v)
|
||||
122: 112(bvec4) FOrdNotEqual 120 121
|
||||
123: 72(bool) Any 122
|
||||
SelectionMerge 125 None
|
||||
BranchConditional 123 124 125
|
||||
124: Label
|
||||
127: 14(fvec4) Load 82(v)
|
||||
127: 14(fvec4) Load 93(v)
|
||||
128: 14(fvec4) VectorTimesScalar 127 126
|
||||
Store 82(v) 128
|
||||
Store 93(v) 128
|
||||
Branch 125
|
||||
125: Label
|
||||
129: 11 Load 13(a)
|
||||
130: 11 Load 37(b)
|
||||
131: 8(s1) CompositeExtract 129 0
|
||||
132: 8(s1) CompositeExtract 130 0
|
||||
133: 6(int) CompositeExtract 131 0
|
||||
134: 6(int) CompositeExtract 132 0
|
||||
135: 61(bool) IEqual 133 134
|
||||
136: 7(float) CompositeExtract 131 1
|
||||
137: 7(float) CompositeExtract 132 1
|
||||
138: 61(bool) FOrdEqual 136 137
|
||||
139: 61(bool) LogicalAnd 135 138
|
||||
140: 8(s1) CompositeExtract 129 1
|
||||
141: 8(s1) CompositeExtract 130 1
|
||||
142: 6(int) CompositeExtract 140 0
|
||||
143: 6(int) CompositeExtract 141 0
|
||||
144: 61(bool) IEqual 142 143
|
||||
145: 7(float) CompositeExtract 140 1
|
||||
146: 7(float) CompositeExtract 141 1
|
||||
147: 61(bool) FOrdEqual 145 146
|
||||
148: 61(bool) LogicalAnd 144 147
|
||||
149: 61(bool) LogicalAnd 139 148
|
||||
150: 8(s1) CompositeExtract 129 2
|
||||
151: 8(s1) CompositeExtract 130 2
|
||||
152: 6(int) CompositeExtract 150 0
|
||||
129: 99(fvec2) Load 101(coord)
|
||||
130: 14(fvec4) Load 93(v)
|
||||
131: 99(fvec2) VectorShuffle 130 130 1 3
|
||||
133: 132(bvec2) FOrdEqual 129 131
|
||||
134: 72(bool) All 133
|
||||
SelectionMerge 136 None
|
||||
BranchConditional 134 135 136
|
||||
135: Label
|
||||
138: 14(fvec4) Load 93(v)
|
||||
139: 14(fvec4) VectorTimesScalar 138 137
|
||||
Store 93(v) 139
|
||||
Branch 136
|
||||
136: Label
|
||||
140: 11 Load 13(a)
|
||||
141: 11 Load 37(b)
|
||||
142: 8(s1) CompositeExtract 140 0
|
||||
143: 8(s1) CompositeExtract 141 0
|
||||
144: 6(int) CompositeExtract 142 0
|
||||
145: 6(int) CompositeExtract 143 0
|
||||
146: 72(bool) IEqual 144 145
|
||||
147: 7(float) CompositeExtract 142 1
|
||||
148: 7(float) CompositeExtract 143 1
|
||||
149: 72(bool) FOrdEqual 147 148
|
||||
150: 72(bool) LogicalAnd 146 149
|
||||
151: 8(s1) CompositeExtract 140 1
|
||||
152: 8(s1) CompositeExtract 141 1
|
||||
153: 6(int) CompositeExtract 151 0
|
||||
154: 61(bool) IEqual 152 153
|
||||
155: 7(float) CompositeExtract 150 1
|
||||
154: 6(int) CompositeExtract 152 0
|
||||
155: 72(bool) IEqual 153 154
|
||||
156: 7(float) CompositeExtract 151 1
|
||||
157: 61(bool) FOrdEqual 155 156
|
||||
158: 61(bool) LogicalAnd 154 157
|
||||
159: 61(bool) LogicalAnd 149 158
|
||||
160: 8(s1) CompositeExtract 129 3
|
||||
161: 8(s1) CompositeExtract 130 3
|
||||
162: 6(int) CompositeExtract 160 0
|
||||
157: 7(float) CompositeExtract 152 1
|
||||
158: 72(bool) FOrdEqual 156 157
|
||||
159: 72(bool) LogicalAnd 155 158
|
||||
160: 72(bool) LogicalAnd 150 159
|
||||
161: 8(s1) CompositeExtract 140 2
|
||||
162: 8(s1) CompositeExtract 141 2
|
||||
163: 6(int) CompositeExtract 161 0
|
||||
164: 61(bool) IEqual 162 163
|
||||
165: 7(float) CompositeExtract 160 1
|
||||
164: 6(int) CompositeExtract 162 0
|
||||
165: 72(bool) IEqual 163 164
|
||||
166: 7(float) CompositeExtract 161 1
|
||||
167: 61(bool) FOrdEqual 165 166
|
||||
168: 61(bool) LogicalAnd 164 167
|
||||
169: 61(bool) LogicalAnd 159 168
|
||||
170: 8(s1) CompositeExtract 129 4
|
||||
171: 8(s1) CompositeExtract 130 4
|
||||
172: 6(int) CompositeExtract 170 0
|
||||
173: 6(int) CompositeExtract 171 0
|
||||
174: 61(bool) IEqual 172 173
|
||||
175: 7(float) CompositeExtract 170 1
|
||||
176: 7(float) CompositeExtract 171 1
|
||||
177: 61(bool) FOrdEqual 175 176
|
||||
178: 61(bool) LogicalAnd 174 177
|
||||
179: 61(bool) LogicalAnd 169 178
|
||||
180: 8(s1) CompositeExtract 129 5
|
||||
181: 8(s1) CompositeExtract 130 5
|
||||
182: 6(int) CompositeExtract 180 0
|
||||
183: 6(int) CompositeExtract 181 0
|
||||
184: 61(bool) IEqual 182 183
|
||||
185: 7(float) CompositeExtract 180 1
|
||||
186: 7(float) CompositeExtract 181 1
|
||||
187: 61(bool) FOrdEqual 185 186
|
||||
188: 61(bool) LogicalAnd 184 187
|
||||
189: 61(bool) LogicalAnd 179 188
|
||||
190: 8(s1) CompositeExtract 129 6
|
||||
191: 8(s1) CompositeExtract 130 6
|
||||
192: 6(int) CompositeExtract 190 0
|
||||
193: 6(int) CompositeExtract 191 0
|
||||
194: 61(bool) IEqual 192 193
|
||||
195: 7(float) CompositeExtract 190 1
|
||||
196: 7(float) CompositeExtract 191 1
|
||||
197: 61(bool) FOrdEqual 195 196
|
||||
198: 61(bool) LogicalAnd 194 197
|
||||
199: 61(bool) LogicalAnd 189 198
|
||||
200: 8(s1) CompositeExtract 129 7
|
||||
201: 8(s1) CompositeExtract 130 7
|
||||
202: 6(int) CompositeExtract 200 0
|
||||
203: 6(int) CompositeExtract 201 0
|
||||
204: 61(bool) IEqual 202 203
|
||||
205: 7(float) CompositeExtract 200 1
|
||||
206: 7(float) CompositeExtract 201 1
|
||||
207: 61(bool) FOrdEqual 205 206
|
||||
208: 61(bool) LogicalAnd 204 207
|
||||
209: 61(bool) LogicalAnd 199 208
|
||||
210: 8(s1) CompositeExtract 129 8
|
||||
211: 8(s1) CompositeExtract 130 8
|
||||
212: 6(int) CompositeExtract 210 0
|
||||
213: 6(int) CompositeExtract 211 0
|
||||
214: 61(bool) IEqual 212 213
|
||||
215: 7(float) CompositeExtract 210 1
|
||||
216: 7(float) CompositeExtract 211 1
|
||||
217: 61(bool) FOrdEqual 215 216
|
||||
218: 61(bool) LogicalAnd 214 217
|
||||
219: 61(bool) LogicalAnd 209 218
|
||||
220: 8(s1) CompositeExtract 129 9
|
||||
221: 8(s1) CompositeExtract 130 9
|
||||
222: 6(int) CompositeExtract 220 0
|
||||
223: 6(int) CompositeExtract 221 0
|
||||
224: 61(bool) IEqual 222 223
|
||||
225: 7(float) CompositeExtract 220 1
|
||||
226: 7(float) CompositeExtract 221 1
|
||||
227: 61(bool) FOrdEqual 225 226
|
||||
228: 61(bool) LogicalAnd 224 227
|
||||
229: 61(bool) LogicalAnd 219 228
|
||||
SelectionMerge 231 None
|
||||
BranchConditional 229 230 231
|
||||
230: Label
|
||||
233: 14(fvec4) Load 82(v)
|
||||
234: 14(fvec4) VectorTimesScalar 233 232
|
||||
Store 82(v) 234
|
||||
Branch 231
|
||||
231: Label
|
||||
235: 11 Load 13(a)
|
||||
236: 11 Load 37(b)
|
||||
237: 8(s1) CompositeExtract 235 0
|
||||
238: 8(s1) CompositeExtract 236 0
|
||||
239: 6(int) CompositeExtract 237 0
|
||||
240: 6(int) CompositeExtract 238 0
|
||||
241: 61(bool) INotEqual 239 240
|
||||
242: 7(float) CompositeExtract 237 1
|
||||
243: 7(float) CompositeExtract 238 1
|
||||
244: 61(bool) FOrdNotEqual 242 243
|
||||
245: 61(bool) LogicalOr 241 244
|
||||
246: 8(s1) CompositeExtract 235 1
|
||||
247: 8(s1) CompositeExtract 236 1
|
||||
248: 6(int) CompositeExtract 246 0
|
||||
249: 6(int) CompositeExtract 247 0
|
||||
250: 61(bool) INotEqual 248 249
|
||||
251: 7(float) CompositeExtract 246 1
|
||||
252: 7(float) CompositeExtract 247 1
|
||||
253: 61(bool) FOrdNotEqual 251 252
|
||||
254: 61(bool) LogicalOr 250 253
|
||||
255: 61(bool) LogicalOr 245 254
|
||||
256: 8(s1) CompositeExtract 235 2
|
||||
257: 8(s1) CompositeExtract 236 2
|
||||
258: 6(int) CompositeExtract 256 0
|
||||
259: 6(int) CompositeExtract 257 0
|
||||
260: 61(bool) INotEqual 258 259
|
||||
261: 7(float) CompositeExtract 256 1
|
||||
262: 7(float) CompositeExtract 257 1
|
||||
263: 61(bool) FOrdNotEqual 261 262
|
||||
264: 61(bool) LogicalOr 260 263
|
||||
265: 61(bool) LogicalOr 255 264
|
||||
266: 8(s1) CompositeExtract 235 3
|
||||
267: 8(s1) CompositeExtract 236 3
|
||||
268: 6(int) CompositeExtract 266 0
|
||||
269: 6(int) CompositeExtract 267 0
|
||||
270: 61(bool) INotEqual 268 269
|
||||
271: 7(float) CompositeExtract 266 1
|
||||
272: 7(float) CompositeExtract 267 1
|
||||
273: 61(bool) FOrdNotEqual 271 272
|
||||
274: 61(bool) LogicalOr 270 273
|
||||
275: 61(bool) LogicalOr 265 274
|
||||
276: 8(s1) CompositeExtract 235 4
|
||||
277: 8(s1) CompositeExtract 236 4
|
||||
278: 6(int) CompositeExtract 276 0
|
||||
279: 6(int) CompositeExtract 277 0
|
||||
280: 61(bool) INotEqual 278 279
|
||||
281: 7(float) CompositeExtract 276 1
|
||||
282: 7(float) CompositeExtract 277 1
|
||||
283: 61(bool) FOrdNotEqual 281 282
|
||||
284: 61(bool) LogicalOr 280 283
|
||||
285: 61(bool) LogicalOr 275 284
|
||||
286: 8(s1) CompositeExtract 235 5
|
||||
287: 8(s1) CompositeExtract 236 5
|
||||
288: 6(int) CompositeExtract 286 0
|
||||
289: 6(int) CompositeExtract 287 0
|
||||
290: 61(bool) INotEqual 288 289
|
||||
291: 7(float) CompositeExtract 286 1
|
||||
292: 7(float) CompositeExtract 287 1
|
||||
293: 61(bool) FOrdNotEqual 291 292
|
||||
294: 61(bool) LogicalOr 290 293
|
||||
295: 61(bool) LogicalOr 285 294
|
||||
296: 8(s1) CompositeExtract 235 6
|
||||
297: 8(s1) CompositeExtract 236 6
|
||||
298: 6(int) CompositeExtract 296 0
|
||||
299: 6(int) CompositeExtract 297 0
|
||||
300: 61(bool) INotEqual 298 299
|
||||
301: 7(float) CompositeExtract 296 1
|
||||
302: 7(float) CompositeExtract 297 1
|
||||
303: 61(bool) FOrdNotEqual 301 302
|
||||
304: 61(bool) LogicalOr 300 303
|
||||
305: 61(bool) LogicalOr 295 304
|
||||
306: 8(s1) CompositeExtract 235 7
|
||||
307: 8(s1) CompositeExtract 236 7
|
||||
308: 6(int) CompositeExtract 306 0
|
||||
309: 6(int) CompositeExtract 307 0
|
||||
310: 61(bool) INotEqual 308 309
|
||||
311: 7(float) CompositeExtract 306 1
|
||||
312: 7(float) CompositeExtract 307 1
|
||||
313: 61(bool) FOrdNotEqual 311 312
|
||||
314: 61(bool) LogicalOr 310 313
|
||||
315: 61(bool) LogicalOr 305 314
|
||||
316: 8(s1) CompositeExtract 235 8
|
||||
317: 8(s1) CompositeExtract 236 8
|
||||
318: 6(int) CompositeExtract 316 0
|
||||
319: 6(int) CompositeExtract 317 0
|
||||
320: 61(bool) INotEqual 318 319
|
||||
321: 7(float) CompositeExtract 316 1
|
||||
322: 7(float) CompositeExtract 317 1
|
||||
323: 61(bool) FOrdNotEqual 321 322
|
||||
324: 61(bool) LogicalOr 320 323
|
||||
325: 61(bool) LogicalOr 315 324
|
||||
326: 8(s1) CompositeExtract 235 9
|
||||
327: 8(s1) CompositeExtract 236 9
|
||||
328: 6(int) CompositeExtract 326 0
|
||||
329: 6(int) CompositeExtract 327 0
|
||||
330: 61(bool) INotEqual 328 329
|
||||
331: 7(float) CompositeExtract 326 1
|
||||
332: 7(float) CompositeExtract 327 1
|
||||
333: 61(bool) FOrdNotEqual 331 332
|
||||
334: 61(bool) LogicalOr 330 333
|
||||
335: 61(bool) LogicalOr 325 334
|
||||
SelectionMerge 337 None
|
||||
BranchConditional 335 336 337
|
||||
336: Label
|
||||
339: 14(fvec4) Load 82(v)
|
||||
340: 14(fvec4) VectorTimesScalar 339 338
|
||||
Store 82(v) 340
|
||||
Branch 337
|
||||
337: Label
|
||||
348: 347(ptr) AccessChain 345(bi) 346
|
||||
349: 342(s2) Load 348
|
||||
350: 55(s2) Load 57(foo2a)
|
||||
351: 6(int) CompositeExtract 349 0
|
||||
352: 6(int) CompositeExtract 350 0
|
||||
353: 61(bool) INotEqual 351 352
|
||||
354: 7(float) CompositeExtract 349 1
|
||||
355: 7(float) CompositeExtract 350 1
|
||||
356: 61(bool) FOrdNotEqual 354 355
|
||||
357: 61(bool) LogicalOr 353 356
|
||||
358: 341(s1) CompositeExtract 349 2
|
||||
359: 8(s1) CompositeExtract 350 2
|
||||
360: 6(int) CompositeExtract 358 0
|
||||
361: 6(int) CompositeExtract 359 0
|
||||
362: 61(bool) INotEqual 360 361
|
||||
363: 7(float) CompositeExtract 358 1
|
||||
364: 7(float) CompositeExtract 359 1
|
||||
365: 61(bool) FOrdNotEqual 363 364
|
||||
366: 61(bool) LogicalOr 362 365
|
||||
367: 61(bool) LogicalOr 357 366
|
||||
SelectionMerge 369 None
|
||||
BranchConditional 367 368 369
|
||||
368: Label
|
||||
371: 14(fvec4) Load 82(v)
|
||||
372: 14(fvec4) VectorTimesScalar 371 370
|
||||
Store 82(v) 372
|
||||
Branch 369
|
||||
369: Label
|
||||
375: 14(fvec4) Load 82(v)
|
||||
Store 374(color) 375
|
||||
167: 7(float) CompositeExtract 162 1
|
||||
168: 72(bool) FOrdEqual 166 167
|
||||
169: 72(bool) LogicalAnd 165 168
|
||||
170: 72(bool) LogicalAnd 160 169
|
||||
SelectionMerge 172 None
|
||||
BranchConditional 170 171 172
|
||||
171: Label
|
||||
174: 14(fvec4) Load 93(v)
|
||||
175: 14(fvec4) VectorTimesScalar 174 173
|
||||
Store 93(v) 175
|
||||
Branch 172
|
||||
172: Label
|
||||
176: 11 Load 13(a)
|
||||
177: 11 Load 37(b)
|
||||
178: 8(s1) CompositeExtract 176 0
|
||||
179: 8(s1) CompositeExtract 177 0
|
||||
180: 6(int) CompositeExtract 178 0
|
||||
181: 6(int) CompositeExtract 179 0
|
||||
182: 72(bool) INotEqual 180 181
|
||||
183: 7(float) CompositeExtract 178 1
|
||||
184: 7(float) CompositeExtract 179 1
|
||||
185: 72(bool) FOrdNotEqual 183 184
|
||||
186: 72(bool) LogicalOr 182 185
|
||||
187: 8(s1) CompositeExtract 176 1
|
||||
188: 8(s1) CompositeExtract 177 1
|
||||
189: 6(int) CompositeExtract 187 0
|
||||
190: 6(int) CompositeExtract 188 0
|
||||
191: 72(bool) INotEqual 189 190
|
||||
192: 7(float) CompositeExtract 187 1
|
||||
193: 7(float) CompositeExtract 188 1
|
||||
194: 72(bool) FOrdNotEqual 192 193
|
||||
195: 72(bool) LogicalOr 191 194
|
||||
196: 72(bool) LogicalOr 186 195
|
||||
197: 8(s1) CompositeExtract 176 2
|
||||
198: 8(s1) CompositeExtract 177 2
|
||||
199: 6(int) CompositeExtract 197 0
|
||||
200: 6(int) CompositeExtract 198 0
|
||||
201: 72(bool) INotEqual 199 200
|
||||
202: 7(float) CompositeExtract 197 1
|
||||
203: 7(float) CompositeExtract 198 1
|
||||
204: 72(bool) FOrdNotEqual 202 203
|
||||
205: 72(bool) LogicalOr 201 204
|
||||
206: 72(bool) LogicalOr 196 205
|
||||
SelectionMerge 208 None
|
||||
BranchConditional 206 207 208
|
||||
207: Label
|
||||
210: 14(fvec4) Load 93(v)
|
||||
211: 14(fvec4) VectorTimesScalar 210 209
|
||||
Store 93(v) 211
|
||||
Branch 208
|
||||
208: Label
|
||||
214: 14(fvec4) Load 93(v)
|
||||
Store 213(color) 214
|
||||
Return
|
||||
FunctionEnd
|
||||
|
@ -11,7 +11,7 @@ Linked fragment stage:
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 21 59
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 140
|
||||
Name 4 "main"
|
||||
Name 9 "white"
|
||||
|
@ -11,7 +11,7 @@ Linked fragment stage:
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 21 38
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 140
|
||||
Name 4 "main"
|
||||
Name 9 "white"
|
||||
|
@ -1,132 +1,205 @@
|
||||
spv.atomic.comp
|
||||
Warning, version 310 is not yet complete; most version-specific features are present, but some are missing.
|
||||
|
||||
Shader version: 310
|
||||
Requested GL_ARB_gl_spirv
|
||||
local_size = (1, 1, 1)
|
||||
0:? Sequence
|
||||
0:14 Function Definition: func(au1; (global highp uint)
|
||||
0:14 Function Parameters:
|
||||
0:14 'c' (in highp atomic_uint)
|
||||
0:16 Sequence
|
||||
0:16 Branch: Return with expression
|
||||
0:16 AtomicCounterIncrement (global highp uint)
|
||||
0:16 'c' (in highp atomic_uint)
|
||||
0:19 Function Definition: main( (global void)
|
||||
0:19 Function Parameters:
|
||||
0:21 Sequence
|
||||
0:21 MemoryBarrierAtomicCounter (global void)
|
||||
0:22 Function Call: func(au1; (global highp uint)
|
||||
0:22 'counter' (layout(binding=0 offset=0 ) uniform highp atomic_uint)
|
||||
0:23 Sequence
|
||||
0:23 move second child to first child (temp highp uint)
|
||||
0:23 'val' (temp highp uint)
|
||||
0:23 AtomicCounter (global highp uint)
|
||||
0:23 direct index (layout(binding=0 offset=4 ) temp highp atomic_uint)
|
||||
0:23 'countArr' (layout(binding=0 offset=4 ) uniform 4-element array of highp atomic_uint)
|
||||
0:23 Constant:
|
||||
0:23 2 (const int)
|
||||
0:24 AtomicCounterDecrement (global highp uint)
|
||||
0:24 'counter' (layout(binding=0 offset=0 ) uniform highp atomic_uint)
|
||||
0:36 Function Definition: atoms( (global void)
|
||||
0:36 Function Parameters:
|
||||
0:38 Sequence
|
||||
0:38 Sequence
|
||||
0:38 move second child to first child (temp highp int)
|
||||
0:38 'origi' (temp highp int)
|
||||
0:38 AtomicAdd (global highp int)
|
||||
0:38 'atomi' (shared highp int)
|
||||
0:38 Constant:
|
||||
0:38 3 (const int)
|
||||
0:39 Sequence
|
||||
0:39 move second child to first child (temp highp uint)
|
||||
0:39 'origu' (temp highp uint)
|
||||
0:39 AtomicAnd (global highp uint)
|
||||
0:39 'atomu' (shared highp uint)
|
||||
0:39 'value' (shared highp uint)
|
||||
0:40 move second child to first child (temp highp uint)
|
||||
0:40 'origu' (temp highp uint)
|
||||
0:40 AtomicOr (global highp uint)
|
||||
0:40 'atomu' (shared highp uint)
|
||||
0:40 Constant:
|
||||
0:40 7 (const uint)
|
||||
0:41 move second child to first child (temp highp uint)
|
||||
0:41 'origu' (temp highp uint)
|
||||
0:41 AtomicXor (global highp uint)
|
||||
0:41 'atomu' (shared highp uint)
|
||||
0:41 Constant:
|
||||
0:41 7 (const uint)
|
||||
0:42 move second child to first child (temp highp uint)
|
||||
0:42 'origu' (temp highp uint)
|
||||
0:42 AtomicMin (global highp uint)
|
||||
0:42 'atomu' (shared highp uint)
|
||||
0:42 'value' (shared highp uint)
|
||||
0:43 move second child to first child (temp highp int)
|
||||
0:43 'origi' (temp highp int)
|
||||
0:43 AtomicMax (global highp int)
|
||||
0:43 'atomi' (shared highp int)
|
||||
0:43 Constant:
|
||||
0:43 7 (const int)
|
||||
0:44 move second child to first child (temp highp int)
|
||||
0:44 'origi' (temp highp int)
|
||||
0:44 AtomicExchange (global highp int)
|
||||
0:44 'atomi' (shared highp int)
|
||||
0:44 'origi' (temp highp int)
|
||||
0:45 move second child to first child (temp highp uint)
|
||||
0:45 'origu' (temp highp uint)
|
||||
0:45 AtomicCompSwap (global highp uint)
|
||||
0:45 'atomu' (shared highp uint)
|
||||
0:45 Constant:
|
||||
0:45 10 (const uint)
|
||||
0:45 'value' (shared highp uint)
|
||||
0:46 AtomicAdd (global highp int)
|
||||
0:46 direct index (temp highp int)
|
||||
0:46 n_frames_rendered: direct index for structure (layout(column_major std140 offset=16 ) buffer highp 4-component vector of int)
|
||||
0:46 'result' (layout(binding=0 column_major std140 ) restrict buffer block{layout(column_major std140 offset=0 ) buffer highp float f, layout(column_major std140 offset=16 ) buffer highp 4-component vector of int n_frames_rendered})
|
||||
0:46 Constant:
|
||||
0:46 1 (const int)
|
||||
0:46 Constant:
|
||||
0:46 2 (const int)
|
||||
0:46 Constant:
|
||||
0:46 1 (const int)
|
||||
0:? Linker Objects
|
||||
0:? 'counter' (layout(binding=0 offset=0 ) uniform highp atomic_uint)
|
||||
0:? 'countArr' (layout(binding=0 offset=4 ) uniform 4-element array of highp atomic_uint)
|
||||
0:? 'value' (shared highp uint)
|
||||
0:? 'arrX' (global 1-element array of highp int)
|
||||
0:? 'arrY' (global 1-element array of highp int)
|
||||
0:? 'arrZ' (global 1-element array of highp int)
|
||||
0:? 'atomi' (shared highp int)
|
||||
0:? 'atomu' (shared highp uint)
|
||||
0:? 'result' (layout(binding=0 column_major std140 ) restrict buffer block{layout(column_major std140 offset=0 ) buffer highp float f, layout(column_major std140 offset=16 ) buffer highp 4-component vector of int n_frames_rendered})
|
||||
|
||||
|
||||
Linked compute stage:
|
||||
|
||||
|
||||
TBD functionality: Is atomic_uint an opaque handle in the uniform storage class, or an addresses in the atomic storage class?
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 75
|
||||
Shader version: 310
|
||||
Requested GL_ARB_gl_spirv
|
||||
local_size = (1, 1, 1)
|
||||
0:? Sequence
|
||||
0:14 Function Definition: func(au1; (global highp uint)
|
||||
0:14 Function Parameters:
|
||||
0:14 'c' (in highp atomic_uint)
|
||||
0:16 Sequence
|
||||
0:16 Branch: Return with expression
|
||||
0:16 AtomicCounterIncrement (global highp uint)
|
||||
0:16 'c' (in highp atomic_uint)
|
||||
0:19 Function Definition: main( (global void)
|
||||
0:19 Function Parameters:
|
||||
0:21 Sequence
|
||||
0:21 MemoryBarrierAtomicCounter (global void)
|
||||
0:22 Function Call: func(au1; (global highp uint)
|
||||
0:22 'counter' (layout(binding=0 offset=0 ) uniform highp atomic_uint)
|
||||
0:23 Sequence
|
||||
0:23 move second child to first child (temp highp uint)
|
||||
0:23 'val' (temp highp uint)
|
||||
0:23 AtomicCounter (global highp uint)
|
||||
0:23 direct index (layout(binding=0 offset=4 ) temp highp atomic_uint)
|
||||
0:23 'countArr' (layout(binding=0 offset=4 ) uniform 4-element array of highp atomic_uint)
|
||||
0:23 Constant:
|
||||
0:23 2 (const int)
|
||||
0:24 AtomicCounterDecrement (global highp uint)
|
||||
0:24 'counter' (layout(binding=0 offset=0 ) uniform highp atomic_uint)
|
||||
0:36 Function Definition: atoms( (global void)
|
||||
0:36 Function Parameters:
|
||||
0:38 Sequence
|
||||
0:38 Sequence
|
||||
0:38 move second child to first child (temp highp int)
|
||||
0:38 'origi' (temp highp int)
|
||||
0:38 AtomicAdd (global highp int)
|
||||
0:38 'atomi' (shared highp int)
|
||||
0:38 Constant:
|
||||
0:38 3 (const int)
|
||||
0:39 Sequence
|
||||
0:39 move second child to first child (temp highp uint)
|
||||
0:39 'origu' (temp highp uint)
|
||||
0:39 AtomicAnd (global highp uint)
|
||||
0:39 'atomu' (shared highp uint)
|
||||
0:39 'value' (shared highp uint)
|
||||
0:40 move second child to first child (temp highp uint)
|
||||
0:40 'origu' (temp highp uint)
|
||||
0:40 AtomicOr (global highp uint)
|
||||
0:40 'atomu' (shared highp uint)
|
||||
0:40 Constant:
|
||||
0:40 7 (const uint)
|
||||
0:41 move second child to first child (temp highp uint)
|
||||
0:41 'origu' (temp highp uint)
|
||||
0:41 AtomicXor (global highp uint)
|
||||
0:41 'atomu' (shared highp uint)
|
||||
0:41 Constant:
|
||||
0:41 7 (const uint)
|
||||
0:42 move second child to first child (temp highp uint)
|
||||
0:42 'origu' (temp highp uint)
|
||||
0:42 AtomicMin (global highp uint)
|
||||
0:42 'atomu' (shared highp uint)
|
||||
0:42 'value' (shared highp uint)
|
||||
0:43 move second child to first child (temp highp int)
|
||||
0:43 'origi' (temp highp int)
|
||||
0:43 AtomicMax (global highp int)
|
||||
0:43 'atomi' (shared highp int)
|
||||
0:43 Constant:
|
||||
0:43 7 (const int)
|
||||
0:44 move second child to first child (temp highp int)
|
||||
0:44 'origi' (temp highp int)
|
||||
0:44 AtomicExchange (global highp int)
|
||||
0:44 'atomi' (shared highp int)
|
||||
0:44 'origi' (temp highp int)
|
||||
0:45 move second child to first child (temp highp uint)
|
||||
0:45 'origu' (temp highp uint)
|
||||
0:45 AtomicCompSwap (global highp uint)
|
||||
0:45 'atomu' (shared highp uint)
|
||||
0:45 Constant:
|
||||
0:45 10 (const uint)
|
||||
0:45 'value' (shared highp uint)
|
||||
0:46 AtomicAdd (global highp int)
|
||||
0:46 direct index (temp highp int)
|
||||
0:46 n_frames_rendered: direct index for structure (layout(column_major std140 offset=16 ) buffer highp 4-component vector of int)
|
||||
0:46 'result' (layout(binding=0 column_major std140 ) restrict buffer block{layout(column_major std140 offset=0 ) buffer highp float f, layout(column_major std140 offset=16 ) buffer highp 4-component vector of int n_frames_rendered})
|
||||
0:46 Constant:
|
||||
0:46 1 (const int)
|
||||
0:46 Constant:
|
||||
0:46 2 (const int)
|
||||
0:46 Constant:
|
||||
0:46 1 (const int)
|
||||
0:? Linker Objects
|
||||
0:? 'counter' (layout(binding=0 offset=0 ) uniform highp atomic_uint)
|
||||
0:? 'countArr' (layout(binding=0 offset=4 ) uniform 4-element array of highp atomic_uint)
|
||||
0:? 'value' (shared highp uint)
|
||||
0:? 'arrX' (global 1-element array of highp int)
|
||||
0:? 'arrY' (global 1-element array of highp int)
|
||||
0:? 'arrZ' (global 1-element array of highp int)
|
||||
0:? 'atomi' (shared highp int)
|
||||
0:? 'atomu' (shared highp uint)
|
||||
0:? 'result' (layout(binding=0 column_major std140 ) restrict buffer block{layout(column_major std140 offset=0 ) buffer highp float f, layout(column_major std140 offset=16 ) buffer highp 4-component vector of int n_frames_rendered})
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint GLCompute 4 "main"
|
||||
ExecutionMode 4 LocalSize 1 1 1
|
||||
Source ESSL 310
|
||||
Name 4 "main"
|
||||
Name 10 "func(au1;"
|
||||
Name 9 "c"
|
||||
Name 12 "atoms("
|
||||
Name 21 "counter"
|
||||
Name 22 "param"
|
||||
Name 25 "val"
|
||||
Name 29 "countArr"
|
||||
Name 36 "origi"
|
||||
Name 38 "atomi"
|
||||
Name 41 "origu"
|
||||
Name 43 "atomu"
|
||||
Name 45 "value"
|
||||
Name 62 "dataSSB"
|
||||
MemberName 62(dataSSB) 0 "f"
|
||||
MemberName 62(dataSSB) 1 "n_frames_rendered"
|
||||
Name 64 "result"
|
||||
Name 72 "arrX"
|
||||
Name 73 "arrY"
|
||||
Name 74 "arrZ"
|
||||
Decorate 21(counter) Binding 0
|
||||
Decorate 29(countArr) Binding 0
|
||||
MemberDecorate 62(dataSSB) 0 Offset 0
|
||||
MemberDecorate 62(dataSSB) 1 Offset 16
|
||||
Decorate 62(dataSSB) BufferBlock
|
||||
Decorate 64(result) Binding 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 0
|
||||
7: TypePointer Function 6(int)
|
||||
8: TypeFunction 6(int) 7(ptr)
|
||||
14: 6(int) Constant 1
|
||||
15: 6(int) Constant 0
|
||||
19: 6(int) Constant 1024
|
||||
20: TypePointer AtomicCounter 6(int)
|
||||
21(counter): 20(ptr) Variable AtomicCounter
|
||||
26: 6(int) Constant 4
|
||||
27: TypeArray 6(int) 26
|
||||
28: TypePointer AtomicCounter 27
|
||||
29(countArr): 28(ptr) Variable AtomicCounter
|
||||
30: TypeInt 32 1
|
||||
31: 30(int) Constant 2
|
||||
35: TypePointer Function 30(int)
|
||||
37: TypePointer Workgroup 30(int)
|
||||
38(atomi): 37(ptr) Variable Workgroup
|
||||
39: 30(int) Constant 3
|
||||
42: TypePointer Workgroup 6(int)
|
||||
43(atomu): 42(ptr) Variable Workgroup
|
||||
44: TypePointer UniformConstant 6(int)
|
||||
45(value): 44(ptr) Variable UniformConstant
|
||||
48: 6(int) Constant 7
|
||||
53: 30(int) Constant 7
|
||||
57: 6(int) Constant 10
|
||||
60: TypeFloat 32
|
||||
61: TypeVector 30(int) 4
|
||||
62(dataSSB): TypeStruct 60(float) 61(ivec4)
|
||||
63: TypePointer Uniform 62(dataSSB)
|
||||
64(result): 63(ptr) Variable Uniform
|
||||
65: 30(int) Constant 1
|
||||
66: 6(int) Constant 2
|
||||
67: TypePointer Uniform 30(int)
|
||||
70: TypeArray 30(int) 14
|
||||
71: TypePointer Private 70
|
||||
72(arrX): 71(ptr) Variable Private
|
||||
73(arrY): 71(ptr) Variable Private
|
||||
74(arrZ): 71(ptr) Variable Private
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
22(param): 7(ptr) Variable Function
|
||||
25(val): 7(ptr) Variable Function
|
||||
MemoryBarrier 14 19
|
||||
23: 6(int) Load 21(counter)
|
||||
Store 22(param) 23
|
||||
24: 6(int) FunctionCall 10(func(au1;) 22(param)
|
||||
32: 20(ptr) AccessChain 29(countArr) 31
|
||||
33: 6(int) AtomicLoad 32 14 15
|
||||
Store 25(val) 33
|
||||
34: 6(int) AtomicIDecrement 21(counter) 14 15
|
||||
Return
|
||||
FunctionEnd
|
||||
10(func(au1;): 6(int) Function None 8
|
||||
9(c): 7(ptr) FunctionParameter
|
||||
11: Label
|
||||
16: 6(int) AtomicIIncrement 9(c) 14 15
|
||||
ReturnValue 16
|
||||
FunctionEnd
|
||||
12(atoms(): 2 Function None 3
|
||||
13: Label
|
||||
36(origi): 35(ptr) Variable Function
|
||||
41(origu): 7(ptr) Variable Function
|
||||
40: 30(int) AtomicIAdd 38(atomi) 14 15 39
|
||||
Store 36(origi) 40
|
||||
46: 6(int) Load 45(value)
|
||||
47: 6(int) AtomicAnd 43(atomu) 14 15 46
|
||||
Store 41(origu) 47
|
||||
49: 6(int) AtomicOr 43(atomu) 14 15 48
|
||||
Store 41(origu) 49
|
||||
50: 6(int) AtomicXor 43(atomu) 14 15 48
|
||||
Store 41(origu) 50
|
||||
51: 6(int) Load 45(value)
|
||||
52: 6(int) AtomicUMin 43(atomu) 14 15 51
|
||||
Store 41(origu) 52
|
||||
54: 30(int) AtomicSMax 38(atomi) 14 15 53
|
||||
Store 36(origi) 54
|
||||
55: 30(int) Load 36(origi)
|
||||
56: 30(int) AtomicExchange 38(atomi) 14 15 55
|
||||
Store 36(origi) 56
|
||||
58: 6(int) Load 45(value)
|
||||
59: 6(int) AtomicCompareExchange 43(atomu) 14 15 15 58 57
|
||||
Store 41(origu) 59
|
||||
68: 67(ptr) AccessChain 64(result) 65 66
|
||||
69: 30(int) AtomicIAdd 68 14 15 65
|
||||
Return
|
||||
FunctionEnd
|
||||
|
@ -12,8 +12,8 @@ Linked fragment stage:
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 154
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
EntryPoint Fragment 4 "main" 14 26 37 48 89 98 107 116 122 130 139 148 154
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 450
|
||||
Name 4 "main"
|
||||
Name 9 "idata"
|
||||
@ -32,6 +32,14 @@ Linked fragment stage:
|
||||
Name 139 "u3"
|
||||
Name 148 "u4"
|
||||
Name 154 "fragColor"
|
||||
Decorate 89(i1) Flat
|
||||
Decorate 98(i2) Flat
|
||||
Decorate 107(i3) Flat
|
||||
Decorate 116(i4) Flat
|
||||
Decorate 122(u1) Flat
|
||||
Decorate 130(u2) Flat
|
||||
Decorate 139(u3) Flat
|
||||
Decorate 148(u4) Flat
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 1
|
||||
@ -40,22 +48,22 @@ Linked fragment stage:
|
||||
10: 6(int) Constant 0
|
||||
11: 7(ivec4) ConstantComposite 10 10 10 10
|
||||
12: TypeFloat 32
|
||||
13: TypePointer UniformConstant 12(float)
|
||||
14(f1): 13(ptr) Variable UniformConstant
|
||||
13: TypePointer Input 12(float)
|
||||
14(f1): 13(ptr) Variable Input
|
||||
17: TypeInt 32 0
|
||||
18: 17(int) Constant 0
|
||||
19: TypePointer Function 6(int)
|
||||
24: TypeVector 12(float) 2
|
||||
25: TypePointer UniformConstant 24(fvec2)
|
||||
26(f2): 25(ptr) Variable UniformConstant
|
||||
25: TypePointer Input 24(fvec2)
|
||||
26(f2): 25(ptr) Variable Input
|
||||
28: TypeVector 6(int) 2
|
||||
35: TypeVector 12(float) 3
|
||||
36: TypePointer UniformConstant 35(fvec3)
|
||||
37(f3): 36(ptr) Variable UniformConstant
|
||||
36: TypePointer Input 35(fvec3)
|
||||
37(f3): 36(ptr) Variable Input
|
||||
39: TypeVector 6(int) 3
|
||||
46: TypeVector 12(float) 4
|
||||
47: TypePointer UniformConstant 46(fvec4)
|
||||
48(f4): 47(ptr) Variable UniformConstant
|
||||
47: TypePointer Input 46(fvec4)
|
||||
48(f4): 47(ptr) Variable Input
|
||||
53: TypeVector 17(int) 4
|
||||
54: TypePointer Function 53(ivec4)
|
||||
56: 53(ivec4) ConstantComposite 18 18 18 18
|
||||
@ -65,23 +73,23 @@ Linked fragment stage:
|
||||
84: TypePointer Function 46(fvec4)
|
||||
86: 12(float) Constant 0
|
||||
87: 46(fvec4) ConstantComposite 86 86 86 86
|
||||
88: TypePointer UniformConstant 6(int)
|
||||
89(i1): 88(ptr) Variable UniformConstant
|
||||
88: TypePointer Input 6(int)
|
||||
89(i1): 88(ptr) Variable Input
|
||||
92: TypePointer Function 12(float)
|
||||
97: TypePointer UniformConstant 28(ivec2)
|
||||
98(i2): 97(ptr) Variable UniformConstant
|
||||
106: TypePointer UniformConstant 39(ivec3)
|
||||
107(i3): 106(ptr) Variable UniformConstant
|
||||
115: TypePointer UniformConstant 7(ivec4)
|
||||
116(i4): 115(ptr) Variable UniformConstant
|
||||
121: TypePointer UniformConstant 17(int)
|
||||
122(u1): 121(ptr) Variable UniformConstant
|
||||
129: TypePointer UniformConstant 65(ivec2)
|
||||
130(u2): 129(ptr) Variable UniformConstant
|
||||
138: TypePointer UniformConstant 73(ivec3)
|
||||
139(u3): 138(ptr) Variable UniformConstant
|
||||
147: TypePointer UniformConstant 53(ivec4)
|
||||
148(u4): 147(ptr) Variable UniformConstant
|
||||
97: TypePointer Input 28(ivec2)
|
||||
98(i2): 97(ptr) Variable Input
|
||||
106: TypePointer Input 39(ivec3)
|
||||
107(i3): 106(ptr) Variable Input
|
||||
115: TypePointer Input 7(ivec4)
|
||||
116(i4): 115(ptr) Variable Input
|
||||
121: TypePointer Input 17(int)
|
||||
122(u1): 121(ptr) Variable Input
|
||||
129: TypePointer Input 65(ivec2)
|
||||
130(u2): 129(ptr) Variable Input
|
||||
138: TypePointer Input 73(ivec3)
|
||||
139(u3): 138(ptr) Variable Input
|
||||
147: TypePointer Input 53(ivec4)
|
||||
148(u4): 147(ptr) Variable Input
|
||||
153: TypePointer Output 46(fvec4)
|
||||
154(fragColor): 153(ptr) Variable Output
|
||||
159: TypeBool
|
||||
|
@ -7,14 +7,14 @@ Linked vertex stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 50
|
||||
// Id's are bound by 49
|
||||
|
||||
Capability Shader
|
||||
Capability ClipDistance
|
||||
Capability CullDistance
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Vertex 4 "main" 24 48 49
|
||||
EntryPoint Vertex 4 "main" 24
|
||||
Source GLSL 450
|
||||
Name 4 "main"
|
||||
Name 10 "foo(b1;"
|
||||
@ -29,17 +29,14 @@ Linked vertex stage:
|
||||
MemberName 29(ubname) 0 "b"
|
||||
Name 31 "ubinst"
|
||||
Name 32 "param"
|
||||
Name 48 "gl_VertexID"
|
||||
Name 49 "gl_InstanceID"
|
||||
MemberDecorate 22(gl_PerVertex) 0 BuiltIn Position
|
||||
MemberDecorate 22(gl_PerVertex) 1 BuiltIn PointSize
|
||||
MemberDecorate 22(gl_PerVertex) 2 BuiltIn ClipDistance
|
||||
MemberDecorate 22(gl_PerVertex) 3 BuiltIn CullDistance
|
||||
Decorate 22(gl_PerVertex) Block
|
||||
Decorate 29(ubname) GLSLShared
|
||||
MemberDecorate 29(ubname) 0 Offset 0
|
||||
Decorate 29(ubname) Block
|
||||
Decorate 48(gl_VertexID) BuiltIn VertexId
|
||||
Decorate 49(gl_InstanceID) BuiltIn InstanceId
|
||||
Decorate 31(ubinst) DescriptorSet 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeBool
|
||||
@ -57,38 +54,37 @@ Linked vertex stage:
|
||||
25: TypeInt 32 1
|
||||
26: 25(int) Constant 0
|
||||
27: TypePointer Function 18(fvec4)
|
||||
29(ubname): TypeStruct 6(bool)
|
||||
29(ubname): TypeStruct 19(int)
|
||||
30: TypePointer Uniform 29(ubname)
|
||||
31(ubinst): 30(ptr) Variable Uniform
|
||||
33: TypePointer Uniform 6(bool)
|
||||
39: 17(float) Constant 0
|
||||
40: 18(fvec4) ConstantComposite 39 39 39 39
|
||||
42: 17(float) Constant 1065353216
|
||||
43: 18(fvec4) ConstantComposite 42 42 42 42
|
||||
45: TypePointer Output 18(fvec4)
|
||||
47: TypePointer Input 25(int)
|
||||
48(gl_VertexID): 47(ptr) Variable Input
|
||||
49(gl_InstanceID): 47(ptr) Variable Input
|
||||
33: TypePointer Uniform 19(int)
|
||||
36: 19(int) Constant 0
|
||||
41: 17(float) Constant 0
|
||||
42: 18(fvec4) ConstantComposite 41 41 41 41
|
||||
44: 17(float) Constant 1065353216
|
||||
45: 18(fvec4) ConstantComposite 44 44 44 44
|
||||
47: TypePointer Output 18(fvec4)
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
28: 27(ptr) Variable Function
|
||||
32(param): 7(ptr) Variable Function
|
||||
34: 33(ptr) AccessChain 31(ubinst) 26
|
||||
35: 6(bool) Load 34
|
||||
Store 32(param) 35
|
||||
36: 6(bool) FunctionCall 10(foo(b1;) 32(param)
|
||||
SelectionMerge 38 None
|
||||
BranchConditional 36 37 41
|
||||
37: Label
|
||||
Store 28 40
|
||||
Branch 38
|
||||
41: Label
|
||||
Store 28 43
|
||||
Branch 38
|
||||
38: Label
|
||||
44: 18(fvec4) Load 28
|
||||
46: 45(ptr) AccessChain 24 26
|
||||
Store 46 44
|
||||
35: 19(int) Load 34
|
||||
37: 6(bool) INotEqual 35 36
|
||||
Store 32(param) 37
|
||||
38: 6(bool) FunctionCall 10(foo(b1;) 32(param)
|
||||
SelectionMerge 40 None
|
||||
BranchConditional 38 39 43
|
||||
39: Label
|
||||
Store 28 42
|
||||
Branch 40
|
||||
43: Label
|
||||
Store 28 45
|
||||
Branch 40
|
||||
40: Label
|
||||
46: 18(fvec4) Load 28
|
||||
48: 47(ptr) AccessChain 24 26
|
||||
Store 48 46
|
||||
Return
|
||||
FunctionEnd
|
||||
10(foo(b1;): 6(bool) Function None 8
|
||||
|
@ -7,30 +7,28 @@ Linked vertex stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 39
|
||||
// Id's are bound by 38
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Vertex 4 "main" 8 20 38
|
||||
EntryPoint Vertex 4 "main" 8 20
|
||||
Source ESSL 310
|
||||
Name 4 "main"
|
||||
Name 8 "gl_InstanceID"
|
||||
Name 8 "gl_InstanceIndex"
|
||||
Name 18 "gl_PerVertex"
|
||||
MemberName 18(gl_PerVertex) 0 "gl_Position"
|
||||
MemberName 18(gl_PerVertex) 1 "gl_PointSize"
|
||||
Name 20 ""
|
||||
Name 38 "gl_VertexID"
|
||||
Decorate 8(gl_InstanceID) BuiltIn InstanceId
|
||||
Decorate 8(gl_InstanceIndex) BuiltIn InstanceIndex
|
||||
MemberDecorate 18(gl_PerVertex) 0 BuiltIn Position
|
||||
MemberDecorate 18(gl_PerVertex) 1 BuiltIn PointSize
|
||||
Decorate 18(gl_PerVertex) Block
|
||||
Decorate 38(gl_VertexID) BuiltIn VertexId
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 1
|
||||
7: TypePointer Input 6(int)
|
||||
8(gl_InstanceID): 7(ptr) Variable Input
|
||||
8(gl_InstanceIndex): 7(ptr) Variable Input
|
||||
16: TypeFloat 32
|
||||
17: TypeVector 16(float) 4
|
||||
18(gl_PerVertex): TypeStruct 17(fvec4) 16(float)
|
||||
@ -44,10 +42,9 @@ Linked vertex stage:
|
||||
31: TypeInt 32 0
|
||||
32: 31(int) Constant 0
|
||||
33: TypePointer Output 16(float)
|
||||
38(gl_VertexID): 7(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
9: 6(int) Load 8(gl_InstanceID)
|
||||
9: 6(int) Load 8(gl_InstanceIndex)
|
||||
SelectionMerge 14 None
|
||||
Switch 9 14
|
||||
case 0: 10
|
||||
|
@ -13,13 +13,14 @@ Linked fragment stage:
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 17 34
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 400
|
||||
Name 4 "main"
|
||||
Name 9 "v"
|
||||
Name 13 "tex"
|
||||
Name 17 "coord"
|
||||
Name 34 "gl_FragColor"
|
||||
Decorate 13(tex) DescriptorSet 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
|
@ -11,7 +11,7 @@ Linked fragment stage:
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 39 53 157 322 446 448 450 452 454
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 140
|
||||
Name 4 "main"
|
||||
Name 8 "b"
|
||||
@ -62,13 +62,13 @@ Linked fragment stage:
|
||||
6: TypeBool
|
||||
7: TypePointer Function 6(bool)
|
||||
9: TypeInt 32 1
|
||||
10: TypePointer UniformConstant 9(int)
|
||||
11(u_i): 10(ptr) Variable UniformConstant
|
||||
10: TypePointer Private 9(int)
|
||||
11(u_i): 10(ptr) Variable Private
|
||||
13: TypeInt 32 0
|
||||
14: 13(int) Constant 0
|
||||
16: TypeFloat 32
|
||||
17: TypePointer UniformConstant 16(float)
|
||||
18(u_f): 17(ptr) Variable UniformConstant
|
||||
17: TypePointer Private 16(float)
|
||||
18(u_f): 17(ptr) Variable Private
|
||||
20: 16(float) Constant 0
|
||||
23: TypeVector 6(bool) 2
|
||||
24: TypePointer Function 23(bvec2)
|
||||
@ -86,22 +86,22 @@ Linked fragment stage:
|
||||
66: TypeVector 9(int) 2
|
||||
67: TypePointer Function 66(ivec2)
|
||||
69: TypeVector 16(float) 2
|
||||
70: TypePointer UniformConstant 69(fvec2)
|
||||
71(u_f2): 70(ptr) Variable UniformConstant
|
||||
70: TypePointer Private 69(fvec2)
|
||||
71(u_f2): 70(ptr) Variable Private
|
||||
75: 66(ivec2) ConstantComposite 62 62
|
||||
76: 66(ivec2) ConstantComposite 63 63
|
||||
79: TypeVector 9(int) 3
|
||||
80: TypePointer Function 79(ivec3)
|
||||
82: TypeVector 16(float) 3
|
||||
83: TypePointer UniformConstant 82(fvec3)
|
||||
84(u_f3): 83(ptr) Variable UniformConstant
|
||||
83: TypePointer Private 82(fvec3)
|
||||
84(u_f3): 83(ptr) Variable Private
|
||||
88: 79(ivec3) ConstantComposite 62 62 62
|
||||
89: 79(ivec3) ConstantComposite 63 63 63
|
||||
92: TypeVector 9(int) 4
|
||||
93: TypePointer Function 92(ivec4)
|
||||
95: TypeVector 16(float) 4
|
||||
96: TypePointer UniformConstant 95(fvec4)
|
||||
97(u_f4): 96(ptr) Variable UniformConstant
|
||||
96: TypePointer Private 95(fvec4)
|
||||
97(u_f4): 96(ptr) Variable Private
|
||||
101: 92(ivec4) ConstantComposite 62 62 62 62
|
||||
102: 92(ivec4) ConstantComposite 63 63 63 63
|
||||
105: TypePointer Function 16(float)
|
||||
@ -124,24 +124,24 @@ Linked fragment stage:
|
||||
322(gl_FragColor): 321(ptr) Variable Output
|
||||
367: 13(int) Constant 2
|
||||
380: 13(int) Constant 3
|
||||
427: TypePointer UniformConstant 6(bool)
|
||||
428(u_b): 427(ptr) Variable UniformConstant
|
||||
429: TypePointer UniformConstant 23(bvec2)
|
||||
430(u_b2): 429(ptr) Variable UniformConstant
|
||||
431: TypePointer UniformConstant 31(bvec3)
|
||||
432(u_b3): 431(ptr) Variable UniformConstant
|
||||
433: TypePointer UniformConstant 43(bvec4)
|
||||
434(u_b4): 433(ptr) Variable UniformConstant
|
||||
435: TypePointer UniformConstant 66(ivec2)
|
||||
436(u_i2): 435(ptr) Variable UniformConstant
|
||||
437: TypePointer UniformConstant 79(ivec3)
|
||||
438(u_i3): 437(ptr) Variable UniformConstant
|
||||
439: TypePointer UniformConstant 92(ivec4)
|
||||
440(u_i4): 439(ptr) Variable UniformConstant
|
||||
441(i_b): 427(ptr) Variable UniformConstant
|
||||
442(i_b2): 429(ptr) Variable UniformConstant
|
||||
443(i_b3): 431(ptr) Variable UniformConstant
|
||||
444(i_b4): 433(ptr) Variable UniformConstant
|
||||
427: TypePointer Private 6(bool)
|
||||
428(u_b): 427(ptr) Variable Private
|
||||
429: TypePointer Private 23(bvec2)
|
||||
430(u_b2): 429(ptr) Variable Private
|
||||
431: TypePointer Private 31(bvec3)
|
||||
432(u_b3): 431(ptr) Variable Private
|
||||
433: TypePointer Private 43(bvec4)
|
||||
434(u_b4): 433(ptr) Variable Private
|
||||
435: TypePointer Private 66(ivec2)
|
||||
436(u_i2): 435(ptr) Variable Private
|
||||
437: TypePointer Private 79(ivec3)
|
||||
438(u_i3): 437(ptr) Variable Private
|
||||
439: TypePointer Private 92(ivec4)
|
||||
440(u_i4): 439(ptr) Variable Private
|
||||
441(i_b): 427(ptr) Variable Private
|
||||
442(i_b2): 429(ptr) Variable Private
|
||||
443(i_b3): 431(ptr) Variable Private
|
||||
444(i_b4): 433(ptr) Variable Private
|
||||
445: TypePointer Input 66(ivec2)
|
||||
446(i_i2): 445(ptr) Variable Input
|
||||
447: TypePointer Input 79(ivec3)
|
||||
|
@ -11,7 +11,7 @@ Linked fragment stage:
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 12 16
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 140
|
||||
Name 4 "main"
|
||||
Name 12 "gl_FragData"
|
||||
|
@ -5,38 +5,47 @@ Linked fragment stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 22
|
||||
// Id's are bound by 26
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 12 18
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
EntryPoint Fragment 4 "main" 12 22
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 140
|
||||
Name 4 "main"
|
||||
Name 12 "gl_FragData"
|
||||
Name 15 "i"
|
||||
Name 18 "Color"
|
||||
Name 12 "fcolor"
|
||||
Name 14 "b"
|
||||
MemberName 14(b) 0 "i"
|
||||
Name 16 "bName"
|
||||
Name 22 "Color"
|
||||
MemberDecorate 14(b) 0 Offset 0
|
||||
Decorate 14(b) Block
|
||||
Decorate 16(bName) DescriptorSet 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
7: TypeVector 6(float) 4
|
||||
8: TypeInt 32 0
|
||||
9: 8(int) Constant 32
|
||||
9: 8(int) Constant 4
|
||||
10: TypeArray 7(fvec4) 9
|
||||
11: TypePointer Output 10
|
||||
12(gl_FragData): 11(ptr) Variable Output
|
||||
12(fcolor): 11(ptr) Variable Output
|
||||
13: TypeInt 32 1
|
||||
14: TypePointer UniformConstant 13(int)
|
||||
15(i): 14(ptr) Variable UniformConstant
|
||||
17: TypePointer Input 7(fvec4)
|
||||
18(Color): 17(ptr) Variable Input
|
||||
20: TypePointer Output 7(fvec4)
|
||||
14(b): TypeStruct 13(int)
|
||||
15: TypePointer Uniform 14(b)
|
||||
16(bName): 15(ptr) Variable Uniform
|
||||
17: 13(int) Constant 0
|
||||
18: TypePointer Uniform 13(int)
|
||||
21: TypePointer Input 7(fvec4)
|
||||
22(Color): 21(ptr) Variable Input
|
||||
24: TypePointer Output 7(fvec4)
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
16: 13(int) Load 15(i)
|
||||
19: 7(fvec4) Load 18(Color)
|
||||
21: 20(ptr) AccessChain 12(gl_FragData) 16
|
||||
Store 21 19
|
||||
19: 18(ptr) AccessChain 16(bName) 17
|
||||
20: 13(int) Load 19
|
||||
23: 7(fvec4) Load 22(Color)
|
||||
25: 24(ptr) AccessChain 12(fcolor) 20
|
||||
Store 25 23
|
||||
Return
|
||||
FunctionEnd
|
||||
|
@ -7,23 +7,19 @@ Linked vertex stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 41
|
||||
// Id's are bound by 38
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Vertex 4 "main" 25 28 34 39 40
|
||||
EntryPoint Vertex 4 "main" 25 28 34
|
||||
Source GLSL 140
|
||||
Name 4 "main"
|
||||
Name 8 "i"
|
||||
Name 25 "colorOut"
|
||||
Name 28 "color"
|
||||
Name 34 "gl_Position"
|
||||
Name 39 "gl_VertexID"
|
||||
Name 40 "gl_InstanceID"
|
||||
Decorate 34(gl_Position) BuiltIn Position
|
||||
Decorate 39(gl_VertexID) BuiltIn VertexId
|
||||
Decorate 40(gl_InstanceID) BuiltIn InstanceId
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 1
|
||||
@ -43,9 +39,6 @@ Linked vertex stage:
|
||||
30: TypePointer Output 20(fvec4)
|
||||
34(gl_Position): 30(ptr) Variable Output
|
||||
35: 6(int) Constant 2
|
||||
38: TypePointer Input 6(int)
|
||||
39(gl_VertexID): 38(ptr) Variable Input
|
||||
40(gl_InstanceID): 38(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
8(i): 7(ptr) Variable Function
|
||||
|
@ -11,7 +11,7 @@ Linked fragment stage:
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 149
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 330
|
||||
Name 4 "main"
|
||||
Name 9 "v1"
|
||||
@ -31,6 +31,7 @@ Linked fragment stage:
|
||||
MemberName 134(str) 2 "c"
|
||||
Name 136 "t"
|
||||
Name 149 "gl_FragColor"
|
||||
Decorate 111(samp2D) DescriptorSet 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
|
@ -13,7 +13,7 @@ Linked fragment stage:
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 8 10 14
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
ExecutionMode 4 DepthGreater
|
||||
ExecutionMode 4 DepthReplacing
|
||||
Source GLSL 450
|
||||
|
@ -11,7 +11,7 @@ Linked fragment stage:
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 21 59
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 140
|
||||
Name 4 "main"
|
||||
Name 9 "white"
|
||||
|
@ -7,19 +7,15 @@ Linked vertex stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 24
|
||||
// Id's are bound by 21
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Vertex 4 "main" 22 23
|
||||
EntryPoint Vertex 4 "main"
|
||||
Source ESSL 310
|
||||
Name 4 "main"
|
||||
Name 8 "i"
|
||||
Name 22 "gl_VertexID"
|
||||
Name 23 "gl_InstanceID"
|
||||
Decorate 22(gl_VertexID) BuiltIn VertexId
|
||||
Decorate 23(gl_InstanceID) BuiltIn InstanceId
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 1
|
||||
@ -28,9 +24,6 @@ Linked vertex stage:
|
||||
15: 6(int) Constant 1
|
||||
18: 6(int) Constant 10
|
||||
19: TypeBool
|
||||
21: TypePointer Input 6(int)
|
||||
22(gl_VertexID): 21(ptr) Variable Input
|
||||
23(gl_InstanceID): 21(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
8(i): 7(ptr) Variable Function
|
||||
|
@ -7,12 +7,12 @@ Linked vertex stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 46
|
||||
// Id's are bound by 43
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Vertex 4 "main" 44 45
|
||||
EntryPoint Vertex 4 "main"
|
||||
Source ESSL 310
|
||||
Name 4 "main"
|
||||
Name 8 "i"
|
||||
@ -23,10 +23,6 @@ Linked vertex stage:
|
||||
Name 33 "E"
|
||||
Name 35 "F"
|
||||
Name 41 "G"
|
||||
Name 44 "gl_VertexID"
|
||||
Name 45 "gl_InstanceID"
|
||||
Decorate 44(gl_VertexID) BuiltIn VertexId
|
||||
Decorate 45(gl_InstanceID) BuiltIn InstanceId
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 1
|
||||
@ -41,9 +37,6 @@ Linked vertex stage:
|
||||
36: 6(int) Constant 99
|
||||
39: 6(int) Constant 19
|
||||
42: 6(int) Constant 12
|
||||
43: TypePointer Input 6(int)
|
||||
44(gl_VertexID): 43(ptr) Variable Input
|
||||
45(gl_InstanceID): 43(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
8(i): 7(ptr) Variable Function
|
||||
|
@ -5,20 +5,20 @@ Linked fragment stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 35
|
||||
// Id's are bound by 34
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 11 33
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
EntryPoint Fragment 4 "main" 11 17 27 32
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 140
|
||||
Name 4 "main"
|
||||
Name 9 "color"
|
||||
Name 11 "BaseColor"
|
||||
Name 18 "bigColor"
|
||||
Name 28 "d"
|
||||
Name 33 "gl_FragColor"
|
||||
Name 17 "bigColor"
|
||||
Name 27 "d"
|
||||
Name 32 "gl_FragColor"
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@ -26,16 +26,15 @@ Linked fragment stage:
|
||||
8: TypePointer Function 7(fvec4)
|
||||
10: TypePointer Input 7(fvec4)
|
||||
11(BaseColor): 10(ptr) Variable Input
|
||||
17: TypePointer UniformConstant 7(fvec4)
|
||||
18(bigColor): 17(ptr) Variable UniformConstant
|
||||
22: TypeInt 32 0
|
||||
23: 22(int) Constant 0
|
||||
24: TypePointer Function 6(float)
|
||||
27: TypePointer UniformConstant 6(float)
|
||||
28(d): 27(ptr) Variable UniformConstant
|
||||
30: TypeBool
|
||||
32: TypePointer Output 7(fvec4)
|
||||
33(gl_FragColor): 32(ptr) Variable Output
|
||||
17(bigColor): 10(ptr) Variable Input
|
||||
21: TypeInt 32 0
|
||||
22: 21(int) Constant 0
|
||||
23: TypePointer Function 6(float)
|
||||
26: TypePointer Input 6(float)
|
||||
27(d): 26(ptr) Variable Input
|
||||
29: TypeBool
|
||||
31: TypePointer Output 7(fvec4)
|
||||
32(gl_FragColor): 31(ptr) Variable Output
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
9(color): 8(ptr) Variable Function
|
||||
@ -46,19 +45,19 @@ Linked fragment stage:
|
||||
LoopMerge 15 16 None
|
||||
Branch 14
|
||||
14: Label
|
||||
19: 7(fvec4) Load 18(bigColor)
|
||||
20: 7(fvec4) Load 9(color)
|
||||
21: 7(fvec4) FAdd 20 19
|
||||
Store 9(color) 21
|
||||
18: 7(fvec4) Load 17(bigColor)
|
||||
19: 7(fvec4) Load 9(color)
|
||||
20: 7(fvec4) FAdd 19 18
|
||||
Store 9(color) 20
|
||||
Branch 16
|
||||
16: Label
|
||||
25: 24(ptr) AccessChain 9(color) 23
|
||||
26: 6(float) Load 25
|
||||
29: 6(float) Load 28(d)
|
||||
31: 30(bool) FOrdLessThan 26 29
|
||||
BranchConditional 31 13 15
|
||||
24: 23(ptr) AccessChain 9(color) 22
|
||||
25: 6(float) Load 24
|
||||
28: 6(float) Load 27(d)
|
||||
30: 29(bool) FOrdLessThan 25 28
|
||||
BranchConditional 30 13 15
|
||||
15: Label
|
||||
34: 7(fvec4) Load 9(color)
|
||||
Store 33(gl_FragColor) 34
|
||||
33: 7(fvec4) Load 9(color)
|
||||
Store 32(gl_FragColor) 33
|
||||
Return
|
||||
FunctionEnd
|
||||
|
@ -7,7 +7,7 @@ Linked compute stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 62
|
||||
// Id's are bound by 60
|
||||
|
||||
Capability Shader
|
||||
Capability Float64
|
||||
@ -27,12 +27,14 @@ Linked compute stage:
|
||||
Name 33 "gl_LocalInvocationID"
|
||||
Name 49 "aa"
|
||||
Name 54 "globalCoef"
|
||||
Name 58 "roll"
|
||||
Name 61 "destTex"
|
||||
Decorate 8(bufName) GLSLShared
|
||||
Name 59 "destTex"
|
||||
MemberDecorate 8(bufName) 0 Offset 0
|
||||
MemberDecorate 8(bufName) 1 Offset 8
|
||||
Decorate 8(bufName) BufferBlock
|
||||
Decorate 10(bufInst) DescriptorSet 0
|
||||
Decorate 26(gl_GlobalInvocationID) BuiltIn GlobalInvocationId
|
||||
Decorate 33(gl_LocalInvocationID) BuiltIn LocalInvocationId
|
||||
Decorate 59(destTex) DescriptorSet 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@ -67,11 +69,9 @@ Linked compute stage:
|
||||
53: 47(fvec4) ConstantComposite 50 51 52 50
|
||||
55: 7(float) Constant 0 1072693248
|
||||
56: 7(float) Constant 3229815407 1074340298
|
||||
57: TypePointer UniformConstant 7(float)
|
||||
58(roll): 57(ptr) Variable UniformConstant
|
||||
59: TypeImage 6(float) 2D nonsampled format:Unknown
|
||||
60: TypePointer UniformConstant 59
|
||||
61(destTex): 60(ptr) Variable UniformConstant
|
||||
57: TypeImage 6(float) 2D nonsampled format:Unknown
|
||||
58: TypePointer UniformConstant 57
|
||||
59(destTex): 58(ptr) Variable UniformConstant
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
22(storePos): 21(ptr) Variable Function
|
||||
|
@ -5,29 +5,29 @@ Linked fragment stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 112
|
||||
// Id's are bound by 110
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 11 18 107
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
EntryPoint Fragment 4 "main" 11 14 17 19 25 30 39 51 63 105 109
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 140
|
||||
Name 4 "main"
|
||||
Name 9 "color"
|
||||
Name 11 "BaseColor"
|
||||
Name 13 "color2"
|
||||
Name 15 "otherColor"
|
||||
Name 18 "c"
|
||||
Name 21 "d"
|
||||
Name 27 "bigColor"
|
||||
Name 32 "smallColor"
|
||||
Name 41 "minimum"
|
||||
Name 53 "threshhold"
|
||||
Name 65 "threshhold2"
|
||||
Name 79 "b"
|
||||
Name 107 "gl_FragColor"
|
||||
Name 111 "threshhold3"
|
||||
Name 14 "otherColor"
|
||||
Name 17 "c"
|
||||
Name 19 "d"
|
||||
Name 25 "bigColor"
|
||||
Name 30 "smallColor"
|
||||
Name 39 "minimum"
|
||||
Name 51 "threshhold"
|
||||
Name 63 "threshhold2"
|
||||
Name 77 "b"
|
||||
Name 105 "gl_FragColor"
|
||||
Name 109 "threshhold3"
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@ -35,141 +35,139 @@ Linked fragment stage:
|
||||
8: TypePointer Function 7(fvec4)
|
||||
10: TypePointer Input 7(fvec4)
|
||||
11(BaseColor): 10(ptr) Variable Input
|
||||
14: TypePointer UniformConstant 7(fvec4)
|
||||
15(otherColor): 14(ptr) Variable UniformConstant
|
||||
17: TypePointer Input 6(float)
|
||||
18(c): 17(ptr) Variable Input
|
||||
20: TypePointer UniformConstant 6(float)
|
||||
21(d): 20(ptr) Variable UniformConstant
|
||||
23: TypeBool
|
||||
27(bigColor): 14(ptr) Variable UniformConstant
|
||||
32(smallColor): 14(ptr) Variable UniformConstant
|
||||
36: TypeInt 32 0
|
||||
37: 36(int) Constant 2
|
||||
38: TypePointer Function 6(float)
|
||||
41(minimum): 20(ptr) Variable UniformConstant
|
||||
49: 6(float) Constant 1065353216
|
||||
53(threshhold): 20(ptr) Variable UniformConstant
|
||||
62: 36(int) Constant 3
|
||||
65(threshhold2): 20(ptr) Variable UniformConstant
|
||||
78: TypePointer UniformConstant 23(bool)
|
||||
79(b): 78(ptr) Variable UniformConstant
|
||||
87: 36(int) Constant 0
|
||||
106: TypePointer Output 7(fvec4)
|
||||
107(gl_FragColor): 106(ptr) Variable Output
|
||||
111(threshhold3): 20(ptr) Variable UniformConstant
|
||||
14(otherColor): 10(ptr) Variable Input
|
||||
16: TypePointer Input 6(float)
|
||||
17(c): 16(ptr) Variable Input
|
||||
19(d): 16(ptr) Variable Input
|
||||
21: TypeBool
|
||||
25(bigColor): 10(ptr) Variable Input
|
||||
30(smallColor): 10(ptr) Variable Input
|
||||
34: TypeInt 32 0
|
||||
35: 34(int) Constant 2
|
||||
36: TypePointer Function 6(float)
|
||||
39(minimum): 16(ptr) Variable Input
|
||||
47: 6(float) Constant 1065353216
|
||||
51(threshhold): 16(ptr) Variable Input
|
||||
60: 34(int) Constant 3
|
||||
63(threshhold2): 16(ptr) Variable Input
|
||||
76: TypePointer Private 21(bool)
|
||||
77(b): 76(ptr) Variable Private
|
||||
85: 34(int) Constant 0
|
||||
104: TypePointer Output 7(fvec4)
|
||||
105(gl_FragColor): 104(ptr) Variable Output
|
||||
109(threshhold3): 16(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
9(color): 8(ptr) Variable Function
|
||||
13(color2): 8(ptr) Variable Function
|
||||
12: 7(fvec4) Load 11(BaseColor)
|
||||
Store 9(color) 12
|
||||
16: 7(fvec4) Load 15(otherColor)
|
||||
Store 13(color2) 16
|
||||
19: 6(float) Load 18(c)
|
||||
22: 6(float) Load 21(d)
|
||||
24: 23(bool) FOrdGreaterThan 19 22
|
||||
SelectionMerge 26 None
|
||||
BranchConditional 24 25 31
|
||||
25: Label
|
||||
28: 7(fvec4) Load 27(bigColor)
|
||||
29: 7(fvec4) Load 9(color)
|
||||
30: 7(fvec4) FAdd 29 28
|
||||
Store 9(color) 30
|
||||
Branch 26
|
||||
31: Label
|
||||
33: 7(fvec4) Load 32(smallColor)
|
||||
34: 7(fvec4) Load 9(color)
|
||||
35: 7(fvec4) FAdd 34 33
|
||||
Store 9(color) 35
|
||||
Branch 26
|
||||
26: Label
|
||||
39: 38(ptr) AccessChain 9(color) 37
|
||||
40: 6(float) Load 39
|
||||
42: 6(float) Load 41(minimum)
|
||||
43: 23(bool) FOrdLessThan 40 42
|
||||
SelectionMerge 45 None
|
||||
BranchConditional 43 44 45
|
||||
44: Label
|
||||
15: 7(fvec4) Load 14(otherColor)
|
||||
Store 13(color2) 15
|
||||
18: 6(float) Load 17(c)
|
||||
20: 6(float) Load 19(d)
|
||||
22: 21(bool) FOrdGreaterThan 18 20
|
||||
SelectionMerge 24 None
|
||||
BranchConditional 22 23 29
|
||||
23: Label
|
||||
26: 7(fvec4) Load 25(bigColor)
|
||||
27: 7(fvec4) Load 9(color)
|
||||
28: 7(fvec4) FAdd 27 26
|
||||
Store 9(color) 28
|
||||
Branch 24
|
||||
29: Label
|
||||
31: 7(fvec4) Load 30(smallColor)
|
||||
32: 7(fvec4) Load 9(color)
|
||||
33: 7(fvec4) FAdd 32 31
|
||||
Store 9(color) 33
|
||||
Branch 24
|
||||
24: Label
|
||||
37: 36(ptr) AccessChain 9(color) 35
|
||||
38: 6(float) Load 37
|
||||
40: 6(float) Load 39(minimum)
|
||||
41: 21(bool) FOrdLessThan 38 40
|
||||
SelectionMerge 43 None
|
||||
BranchConditional 41 42 43
|
||||
42: Label
|
||||
Return
|
||||
45: Label
|
||||
47: 38(ptr) AccessChain 9(color) 37
|
||||
48: 6(float) Load 47
|
||||
50: 6(float) FAdd 48 49
|
||||
Store 47 50
|
||||
51: 38(ptr) AccessChain 9(color) 37
|
||||
52: 6(float) Load 51
|
||||
54: 6(float) Load 53(threshhold)
|
||||
55: 23(bool) FOrdGreaterThan 52 54
|
||||
SelectionMerge 57 None
|
||||
BranchConditional 55 56 57
|
||||
56: Label
|
||||
43: Label
|
||||
45: 36(ptr) AccessChain 9(color) 35
|
||||
46: 6(float) Load 45
|
||||
48: 6(float) FAdd 46 47
|
||||
Store 45 48
|
||||
49: 36(ptr) AccessChain 9(color) 35
|
||||
50: 6(float) Load 49
|
||||
52: 6(float) Load 51(threshhold)
|
||||
53: 21(bool) FOrdGreaterThan 50 52
|
||||
SelectionMerge 55 None
|
||||
BranchConditional 53 54 55
|
||||
54: Label
|
||||
Kill
|
||||
57: Label
|
||||
59: 7(fvec4) Load 9(color)
|
||||
60: 7(fvec4) CompositeConstruct 49 49 49 49
|
||||
61: 7(fvec4) FAdd 59 60
|
||||
Store 9(color) 61
|
||||
63: 38(ptr) AccessChain 9(color) 62
|
||||
64: 6(float) Load 63
|
||||
66: 6(float) Load 65(threshhold2)
|
||||
67: 23(bool) FOrdGreaterThan 64 66
|
||||
SelectionMerge 69 None
|
||||
BranchConditional 67 68 99
|
||||
68: Label
|
||||
70: 38(ptr) AccessChain 9(color) 37
|
||||
71: 6(float) Load 70
|
||||
72: 6(float) Load 65(threshhold2)
|
||||
73: 23(bool) FOrdGreaterThan 71 72
|
||||
SelectionMerge 75 None
|
||||
BranchConditional 73 74 77
|
||||
74: Label
|
||||
55: Label
|
||||
57: 7(fvec4) Load 9(color)
|
||||
58: 7(fvec4) CompositeConstruct 47 47 47 47
|
||||
59: 7(fvec4) FAdd 57 58
|
||||
Store 9(color) 59
|
||||
61: 36(ptr) AccessChain 9(color) 60
|
||||
62: 6(float) Load 61
|
||||
64: 6(float) Load 63(threshhold2)
|
||||
65: 21(bool) FOrdGreaterThan 62 64
|
||||
SelectionMerge 67 None
|
||||
BranchConditional 65 66 97
|
||||
66: Label
|
||||
68: 36(ptr) AccessChain 9(color) 35
|
||||
69: 6(float) Load 68
|
||||
70: 6(float) Load 63(threshhold2)
|
||||
71: 21(bool) FOrdGreaterThan 69 70
|
||||
SelectionMerge 73 None
|
||||
BranchConditional 71 72 75
|
||||
72: Label
|
||||
Return
|
||||
77: Label
|
||||
80: 23(bool) Load 79(b)
|
||||
SelectionMerge 82 None
|
||||
BranchConditional 80 81 86
|
||||
81: Label
|
||||
83: 38(ptr) AccessChain 9(color) 37
|
||||
84: 6(float) Load 83
|
||||
85: 6(float) FAdd 84 49
|
||||
Store 83 85
|
||||
Branch 82
|
||||
86: Label
|
||||
88: 38(ptr) AccessChain 9(color) 87
|
||||
89: 6(float) Load 88
|
||||
90: 6(float) Load 41(minimum)
|
||||
91: 23(bool) FOrdLessThan 89 90
|
||||
SelectionMerge 93 None
|
||||
BranchConditional 91 92 95
|
||||
92: Label
|
||||
Kill
|
||||
95: Label
|
||||
96: 7(fvec4) Load 9(color)
|
||||
97: 7(fvec4) CompositeConstruct 49 49 49 49
|
||||
98: 7(fvec4) FAdd 96 97
|
||||
Store 9(color) 98
|
||||
Branch 93
|
||||
93: Label
|
||||
Branch 82
|
||||
82: Label
|
||||
Branch 75
|
||||
75: Label
|
||||
Branch 69
|
||||
99: Label
|
||||
100: 23(bool) Load 79(b)
|
||||
SelectionMerge 102 None
|
||||
BranchConditional 100 101 104
|
||||
101: Label
|
||||
78: 21(bool) Load 77(b)
|
||||
SelectionMerge 80 None
|
||||
BranchConditional 78 79 84
|
||||
79: Label
|
||||
81: 36(ptr) AccessChain 9(color) 35
|
||||
82: 6(float) Load 81
|
||||
83: 6(float) FAdd 82 47
|
||||
Store 81 83
|
||||
Branch 80
|
||||
84: Label
|
||||
86: 36(ptr) AccessChain 9(color) 85
|
||||
87: 6(float) Load 86
|
||||
88: 6(float) Load 39(minimum)
|
||||
89: 21(bool) FOrdLessThan 87 88
|
||||
SelectionMerge 91 None
|
||||
BranchConditional 89 90 93
|
||||
90: Label
|
||||
Kill
|
||||
93: Label
|
||||
94: 7(fvec4) Load 9(color)
|
||||
95: 7(fvec4) CompositeConstruct 47 47 47 47
|
||||
96: 7(fvec4) FAdd 94 95
|
||||
Store 9(color) 96
|
||||
Branch 91
|
||||
91: Label
|
||||
Branch 80
|
||||
80: Label
|
||||
Branch 73
|
||||
73: Label
|
||||
Branch 67
|
||||
97: Label
|
||||
98: 21(bool) Load 77(b)
|
||||
SelectionMerge 100 None
|
||||
BranchConditional 98 99 102
|
||||
99: Label
|
||||
Kill
|
||||
104: Label
|
||||
Return
|
||||
102: Label
|
||||
Branch 69
|
||||
69: Label
|
||||
108: 7(fvec4) Load 9(color)
|
||||
109: 7(fvec4) Load 13(color2)
|
||||
110: 7(fvec4) FMul 108 109
|
||||
Store 107(gl_FragColor) 110
|
||||
Return
|
||||
100: Label
|
||||
Branch 67
|
||||
67: Label
|
||||
106: 7(fvec4) Load 9(color)
|
||||
107: 7(fvec4) Load 13(color2)
|
||||
108: 7(fvec4) FMul 106 107
|
||||
Store 105(gl_FragColor) 108
|
||||
Return
|
||||
FunctionEnd
|
||||
|
@ -5,24 +5,24 @@ Linked fragment stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 41
|
||||
// Id's are bound by 39
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 11 18 37
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
EntryPoint Fragment 4 "main" 11 14 17 19 25 30 35
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 140
|
||||
Name 4 "main"
|
||||
Name 9 "color"
|
||||
Name 11 "BaseColor"
|
||||
Name 13 "color2"
|
||||
Name 15 "otherColor"
|
||||
Name 18 "c"
|
||||
Name 21 "d"
|
||||
Name 27 "bigColor"
|
||||
Name 32 "smallColor"
|
||||
Name 37 "gl_FragColor"
|
||||
Name 14 "otherColor"
|
||||
Name 17 "c"
|
||||
Name 19 "d"
|
||||
Name 25 "bigColor"
|
||||
Name 30 "smallColor"
|
||||
Name 35 "gl_FragColor"
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@ -30,46 +30,44 @@ Linked fragment stage:
|
||||
8: TypePointer Function 7(fvec4)
|
||||
10: TypePointer Input 7(fvec4)
|
||||
11(BaseColor): 10(ptr) Variable Input
|
||||
14: TypePointer UniformConstant 7(fvec4)
|
||||
15(otherColor): 14(ptr) Variable UniformConstant
|
||||
17: TypePointer Input 6(float)
|
||||
18(c): 17(ptr) Variable Input
|
||||
20: TypePointer UniformConstant 6(float)
|
||||
21(d): 20(ptr) Variable UniformConstant
|
||||
23: TypeBool
|
||||
27(bigColor): 14(ptr) Variable UniformConstant
|
||||
32(smallColor): 14(ptr) Variable UniformConstant
|
||||
36: TypePointer Output 7(fvec4)
|
||||
37(gl_FragColor): 36(ptr) Variable Output
|
||||
14(otherColor): 10(ptr) Variable Input
|
||||
16: TypePointer Input 6(float)
|
||||
17(c): 16(ptr) Variable Input
|
||||
19(d): 16(ptr) Variable Input
|
||||
21: TypeBool
|
||||
25(bigColor): 10(ptr) Variable Input
|
||||
30(smallColor): 10(ptr) Variable Input
|
||||
34: TypePointer Output 7(fvec4)
|
||||
35(gl_FragColor): 34(ptr) Variable Output
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
9(color): 8(ptr) Variable Function
|
||||
13(color2): 8(ptr) Variable Function
|
||||
12: 7(fvec4) Load 11(BaseColor)
|
||||
Store 9(color) 12
|
||||
16: 7(fvec4) Load 15(otherColor)
|
||||
Store 13(color2) 16
|
||||
19: 6(float) Load 18(c)
|
||||
22: 6(float) Load 21(d)
|
||||
24: 23(bool) FOrdGreaterThan 19 22
|
||||
SelectionMerge 26 None
|
||||
BranchConditional 24 25 31
|
||||
25: Label
|
||||
28: 7(fvec4) Load 27(bigColor)
|
||||
29: 7(fvec4) Load 9(color)
|
||||
30: 7(fvec4) FAdd 29 28
|
||||
Store 9(color) 30
|
||||
Branch 26
|
||||
31: Label
|
||||
33: 7(fvec4) Load 32(smallColor)
|
||||
34: 7(fvec4) Load 9(color)
|
||||
35: 7(fvec4) FAdd 34 33
|
||||
Store 9(color) 35
|
||||
Branch 26
|
||||
26: Label
|
||||
38: 7(fvec4) Load 9(color)
|
||||
39: 7(fvec4) Load 13(color2)
|
||||
40: 7(fvec4) FMul 38 39
|
||||
Store 37(gl_FragColor) 40
|
||||
15: 7(fvec4) Load 14(otherColor)
|
||||
Store 13(color2) 15
|
||||
18: 6(float) Load 17(c)
|
||||
20: 6(float) Load 19(d)
|
||||
22: 21(bool) FOrdGreaterThan 18 20
|
||||
SelectionMerge 24 None
|
||||
BranchConditional 22 23 29
|
||||
23: Label
|
||||
26: 7(fvec4) Load 25(bigColor)
|
||||
27: 7(fvec4) Load 9(color)
|
||||
28: 7(fvec4) FAdd 27 26
|
||||
Store 9(color) 28
|
||||
Branch 24
|
||||
29: Label
|
||||
31: 7(fvec4) Load 30(smallColor)
|
||||
32: 7(fvec4) Load 9(color)
|
||||
33: 7(fvec4) FAdd 32 31
|
||||
Store 9(color) 33
|
||||
Branch 24
|
||||
24: Label
|
||||
36: 7(fvec4) Load 9(color)
|
||||
37: 7(fvec4) Load 13(color2)
|
||||
38: 7(fvec4) FMul 36 37
|
||||
Store 35(gl_FragColor) 38
|
||||
Return
|
||||
FunctionEnd
|
||||
|
@ -7,23 +7,19 @@ Linked vertex stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 37
|
||||
// Id's are bound by 35
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Vertex 4 "main" 18 31 35 36
|
||||
EntryPoint Vertex 4 "main" 18 31
|
||||
Source GLSL 450
|
||||
Name 4 "main"
|
||||
Name 8 "i"
|
||||
Name 18 "flag"
|
||||
Name 31 "r"
|
||||
Name 35 "gl_VertexID"
|
||||
Name 36 "gl_InstanceID"
|
||||
Decorate 18(flag) Location 0
|
||||
Decorate 31(r) Location 0
|
||||
Decorate 35(gl_VertexID) BuiltIn VertexId
|
||||
Decorate 36(gl_InstanceID) BuiltIn InstanceId
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 1
|
||||
@ -37,8 +33,6 @@ Linked vertex stage:
|
||||
27: 6(int) Constant 15
|
||||
30: TypePointer Output 6(int)
|
||||
31(r): 30(ptr) Variable Output
|
||||
35(gl_VertexID): 17(ptr) Variable Input
|
||||
36(gl_InstanceID): 17(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
8(i): 7(ptr) Variable Function
|
||||
|
@ -7,12 +7,12 @@ Linked vertex stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 48
|
||||
// Id's are bound by 45
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Vertex 4 "main" 46 47
|
||||
EntryPoint Vertex 4 "main"
|
||||
Source ESSL 310
|
||||
Name 4 "main"
|
||||
Name 8 "i"
|
||||
@ -23,10 +23,6 @@ Linked vertex stage:
|
||||
Name 38 "E"
|
||||
Name 39 "F"
|
||||
Name 43 "G"
|
||||
Name 46 "gl_VertexID"
|
||||
Name 47 "gl_InstanceID"
|
||||
Decorate 46(gl_VertexID) BuiltIn VertexId
|
||||
Decorate 47(gl_InstanceID) BuiltIn InstanceId
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 1
|
||||
@ -39,9 +35,6 @@ Linked vertex stage:
|
||||
31: 6(int) Constant 3
|
||||
40: 6(int) Constant 12
|
||||
44: 6(int) Constant 99
|
||||
45: TypePointer Input 6(int)
|
||||
46(gl_VertexID): 45(ptr) Variable Input
|
||||
47(gl_InstanceID): 45(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
8(i): 7(ptr) Variable Function
|
||||
|
@ -7,21 +7,17 @@ Linked vertex stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 28
|
||||
// Id's are bound by 25
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Vertex 4 "main" 23 26 27
|
||||
EntryPoint Vertex 4 "main" 23
|
||||
Source GLSL 450
|
||||
Name 4 "main"
|
||||
Name 8 "i"
|
||||
Name 23 "r"
|
||||
Name 26 "gl_VertexID"
|
||||
Name 27 "gl_InstanceID"
|
||||
Decorate 23(r) Location 0
|
||||
Decorate 26(gl_VertexID) BuiltIn VertexId
|
||||
Decorate 27(gl_InstanceID) BuiltIn InstanceId
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 1
|
||||
@ -32,9 +28,6 @@ Linked vertex stage:
|
||||
20: 6(int) Constant 1
|
||||
22: TypePointer Output 6(int)
|
||||
23(r): 22(ptr) Variable Output
|
||||
25: TypePointer Input 6(int)
|
||||
26(gl_VertexID): 25(ptr) Variable Input
|
||||
27(gl_InstanceID): 25(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
8(i): 7(ptr) Variable Function
|
||||
|
@ -7,21 +7,17 @@ Linked vertex stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 23
|
||||
// Id's are bound by 20
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Vertex 4 "main" 15 21 22
|
||||
EntryPoint Vertex 4 "main" 15
|
||||
Source GLSL 450
|
||||
Name 4 "main"
|
||||
Name 8 "i"
|
||||
Name 15 "r"
|
||||
Name 21 "gl_VertexID"
|
||||
Name 22 "gl_InstanceID"
|
||||
Decorate 15(r) Location 0
|
||||
Decorate 21(gl_VertexID) BuiltIn VertexId
|
||||
Decorate 22(gl_InstanceID) BuiltIn InstanceId
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 1
|
||||
@ -30,9 +26,6 @@ Linked vertex stage:
|
||||
14: TypePointer Output 6(int)
|
||||
15(r): 14(ptr) Variable Output
|
||||
18: 6(int) Constant 1
|
||||
20: TypePointer Input 6(int)
|
||||
21(gl_VertexID): 20(ptr) Variable Input
|
||||
22(gl_InstanceID): 20(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
8(i): 7(ptr) Variable Function
|
||||
|
@ -7,20 +7,16 @@ Linked vertex stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 27
|
||||
// Id's are bound by 24
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Vertex 4 "main" 25 26
|
||||
EntryPoint Vertex 4 "main"
|
||||
Source ESSL 310
|
||||
Name 4 "main"
|
||||
Name 8 "i"
|
||||
Name 19 "j"
|
||||
Name 25 "gl_VertexID"
|
||||
Name 26 "gl_InstanceID"
|
||||
Decorate 25(gl_VertexID) BuiltIn VertexId
|
||||
Decorate 26(gl_InstanceID) BuiltIn InstanceId
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 1
|
||||
@ -30,9 +26,6 @@ Linked vertex stage:
|
||||
17: TypeBool
|
||||
20: 6(int) Constant 12
|
||||
22: 6(int) Constant 1
|
||||
24: TypePointer Input 6(int)
|
||||
25(gl_VertexID): 24(ptr) Variable Input
|
||||
26(gl_InstanceID): 24(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
8(i): 7(ptr) Variable Function
|
||||
|
@ -5,30 +5,32 @@ Linked fragment stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 132
|
||||
// Id's are bound by 131
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 11 37 105
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
EntryPoint Fragment 4 "main" 11 24 28 36 53 104
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 140
|
||||
Name 4 "main"
|
||||
Name 9 "color"
|
||||
Name 11 "BaseColor"
|
||||
Name 15 "i"
|
||||
Name 24 "Count"
|
||||
Name 29 "bigColor"
|
||||
Name 37 "gl_FragColor"
|
||||
Name 40 "sum"
|
||||
Name 42 "i"
|
||||
Name 54 "v4"
|
||||
Name 64 "i"
|
||||
Name 72 "tv4"
|
||||
Name 89 "r"
|
||||
Name 95 "i"
|
||||
Name 105 "f"
|
||||
Name 118 "i"
|
||||
Name 28 "bigColor"
|
||||
Name 36 "gl_FragColor"
|
||||
Name 39 "sum"
|
||||
Name 41 "i"
|
||||
Name 53 "v4"
|
||||
Name 63 "i"
|
||||
Name 71 "tv4"
|
||||
Name 88 "r"
|
||||
Name 94 "i"
|
||||
Name 104 "f"
|
||||
Name 117 "i"
|
||||
Decorate 24(Count) Flat
|
||||
Decorate 53(v4) Flat
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@ -39,39 +41,38 @@ Linked fragment stage:
|
||||
13: TypeInt 32 1
|
||||
14: TypePointer Function 13(int)
|
||||
16: 13(int) Constant 0
|
||||
23: TypePointer UniformConstant 13(int)
|
||||
24(Count): 23(ptr) Variable UniformConstant
|
||||
23: TypePointer Input 13(int)
|
||||
24(Count): 23(ptr) Variable Input
|
||||
26: TypeBool
|
||||
28: TypePointer UniformConstant 7(fvec4)
|
||||
29(bigColor): 28(ptr) Variable UniformConstant
|
||||
34: 13(int) Constant 1
|
||||
36: TypePointer Output 7(fvec4)
|
||||
37(gl_FragColor): 36(ptr) Variable Output
|
||||
39: TypePointer Function 6(float)
|
||||
41: 6(float) Constant 0
|
||||
49: 13(int) Constant 4
|
||||
51: TypeInt 32 0
|
||||
52: TypeVector 51(int) 4
|
||||
53: TypePointer UniformConstant 52(ivec4)
|
||||
54(v4): 53(ptr) Variable UniformConstant
|
||||
56: TypePointer UniformConstant 51(int)
|
||||
77: 51(int) Constant 4
|
||||
90: TypeVector 6(float) 3
|
||||
104: TypePointer Input 6(float)
|
||||
105(f): 104(ptr) Variable Input
|
||||
107: 51(int) Constant 3
|
||||
125: 13(int) Constant 16
|
||||
28(bigColor): 10(ptr) Variable Input
|
||||
33: 13(int) Constant 1
|
||||
35: TypePointer Output 7(fvec4)
|
||||
36(gl_FragColor): 35(ptr) Variable Output
|
||||
38: TypePointer Function 6(float)
|
||||
40: 6(float) Constant 0
|
||||
48: 13(int) Constant 4
|
||||
50: TypeInt 32 0
|
||||
51: TypeVector 50(int) 4
|
||||
52: TypePointer Input 51(ivec4)
|
||||
53(v4): 52(ptr) Variable Input
|
||||
55: TypePointer Input 50(int)
|
||||
76: 50(int) Constant 4
|
||||
89: TypeVector 6(float) 3
|
||||
103: TypePointer Input 6(float)
|
||||
104(f): 103(ptr) Variable Input
|
||||
106: 50(int) Constant 3
|
||||
124: 13(int) Constant 16
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
9(color): 8(ptr) Variable Function
|
||||
15(i): 14(ptr) Variable Function
|
||||
40(sum): 39(ptr) Variable Function
|
||||
42(i): 14(ptr) Variable Function
|
||||
64(i): 14(ptr) Variable Function
|
||||
72(tv4): 8(ptr) Variable Function
|
||||
89(r): 8(ptr) Variable Function
|
||||
95(i): 14(ptr) Variable Function
|
||||
118(i): 14(ptr) Variable Function
|
||||
39(sum): 38(ptr) Variable Function
|
||||
41(i): 14(ptr) Variable Function
|
||||
63(i): 14(ptr) Variable Function
|
||||
71(tv4): 8(ptr) Variable Function
|
||||
88(r): 8(ptr) Variable Function
|
||||
94(i): 14(ptr) Variable Function
|
||||
117(i): 14(ptr) Variable Function
|
||||
12: 7(fvec4) Load 11(BaseColor)
|
||||
Store 9(color) 12
|
||||
Store 15(i) 16
|
||||
@ -85,130 +86,130 @@ Linked fragment stage:
|
||||
27: 26(bool) SLessThan 22 25
|
||||
BranchConditional 27 18 19
|
||||
18: Label
|
||||
30: 7(fvec4) Load 29(bigColor)
|
||||
31: 7(fvec4) Load 9(color)
|
||||
32: 7(fvec4) FAdd 31 30
|
||||
Store 9(color) 32
|
||||
29: 7(fvec4) Load 28(bigColor)
|
||||
30: 7(fvec4) Load 9(color)
|
||||
31: 7(fvec4) FAdd 30 29
|
||||
Store 9(color) 31
|
||||
Branch 20
|
||||
20: Label
|
||||
33: 13(int) Load 15(i)
|
||||
35: 13(int) IAdd 33 34
|
||||
Store 15(i) 35
|
||||
32: 13(int) Load 15(i)
|
||||
34: 13(int) IAdd 32 33
|
||||
Store 15(i) 34
|
||||
Branch 17
|
||||
19: Label
|
||||
38: 7(fvec4) Load 9(color)
|
||||
Store 37(gl_FragColor) 38
|
||||
Store 40(sum) 41
|
||||
Store 42(i) 16
|
||||
Branch 43
|
||||
43: Label
|
||||
LoopMerge 45 46 None
|
||||
Branch 47
|
||||
47: Label
|
||||
48: 13(int) Load 42(i)
|
||||
50: 26(bool) SLessThan 48 49
|
||||
BranchConditional 50 44 45
|
||||
44: Label
|
||||
55: 13(int) Load 42(i)
|
||||
57: 56(ptr) AccessChain 54(v4) 55
|
||||
58: 51(int) Load 57
|
||||
59: 6(float) ConvertUToF 58
|
||||
60: 6(float) Load 40(sum)
|
||||
61: 6(float) FAdd 60 59
|
||||
Store 40(sum) 61
|
||||
37: 7(fvec4) Load 9(color)
|
||||
Store 36(gl_FragColor) 37
|
||||
Store 39(sum) 40
|
||||
Store 41(i) 16
|
||||
Branch 42
|
||||
42: Label
|
||||
LoopMerge 44 45 None
|
||||
Branch 46
|
||||
46: Label
|
||||
62: 13(int) Load 42(i)
|
||||
63: 13(int) IAdd 62 34
|
||||
Store 42(i) 63
|
||||
Branch 43
|
||||
47: 13(int) Load 41(i)
|
||||
49: 26(bool) SLessThan 47 48
|
||||
BranchConditional 49 43 44
|
||||
43: Label
|
||||
54: 13(int) Load 41(i)
|
||||
56: 55(ptr) AccessChain 53(v4) 54
|
||||
57: 50(int) Load 56
|
||||
58: 6(float) ConvertUToF 57
|
||||
59: 6(float) Load 39(sum)
|
||||
60: 6(float) FAdd 59 58
|
||||
Store 39(sum) 60
|
||||
Branch 45
|
||||
45: Label
|
||||
Store 64(i) 16
|
||||
Branch 65
|
||||
65: Label
|
||||
LoopMerge 67 68 None
|
||||
Branch 69
|
||||
69: Label
|
||||
70: 13(int) Load 64(i)
|
||||
71: 26(bool) SLessThan 70 49
|
||||
BranchConditional 71 66 67
|
||||
66: Label
|
||||
73: 13(int) Load 64(i)
|
||||
74: 13(int) Load 64(i)
|
||||
75: 56(ptr) AccessChain 54(v4) 74
|
||||
76: 51(int) Load 75
|
||||
78: 51(int) IMul 76 77
|
||||
79: 6(float) ConvertUToF 78
|
||||
80: 39(ptr) AccessChain 72(tv4) 73
|
||||
Store 80 79
|
||||
61: 13(int) Load 41(i)
|
||||
62: 13(int) IAdd 61 33
|
||||
Store 41(i) 62
|
||||
Branch 42
|
||||
44: Label
|
||||
Store 63(i) 16
|
||||
Branch 64
|
||||
64: Label
|
||||
LoopMerge 66 67 None
|
||||
Branch 68
|
||||
68: Label
|
||||
81: 13(int) Load 64(i)
|
||||
82: 13(int) IAdd 81 34
|
||||
Store 64(i) 82
|
||||
Branch 65
|
||||
69: 13(int) Load 63(i)
|
||||
70: 26(bool) SLessThan 69 48
|
||||
BranchConditional 70 65 66
|
||||
65: Label
|
||||
72: 13(int) Load 63(i)
|
||||
73: 13(int) Load 63(i)
|
||||
74: 55(ptr) AccessChain 53(v4) 73
|
||||
75: 50(int) Load 74
|
||||
77: 50(int) IMul 75 76
|
||||
78: 6(float) ConvertUToF 77
|
||||
79: 38(ptr) AccessChain 71(tv4) 72
|
||||
Store 79 78
|
||||
Branch 67
|
||||
67: Label
|
||||
83: 6(float) Load 40(sum)
|
||||
84: 7(fvec4) CompositeConstruct 83 83 83 83
|
||||
85: 7(fvec4) Load 72(tv4)
|
||||
86: 7(fvec4) FAdd 84 85
|
||||
87: 7(fvec4) Load 37(gl_FragColor)
|
||||
88: 7(fvec4) FAdd 87 86
|
||||
Store 37(gl_FragColor) 88
|
||||
91: 7(fvec4) Load 11(BaseColor)
|
||||
92: 90(fvec3) VectorShuffle 91 91 0 1 2
|
||||
93: 7(fvec4) Load 89(r)
|
||||
94: 7(fvec4) VectorShuffle 93 92 4 5 6 3
|
||||
Store 89(r) 94
|
||||
Store 95(i) 16
|
||||
Branch 96
|
||||
96: Label
|
||||
LoopMerge 98 99 None
|
||||
Branch 100
|
||||
100: Label
|
||||
101: 13(int) Load 95(i)
|
||||
102: 13(int) Load 24(Count)
|
||||
103: 26(bool) SLessThan 101 102
|
||||
BranchConditional 103 97 98
|
||||
97: Label
|
||||
106: 6(float) Load 105(f)
|
||||
108: 39(ptr) AccessChain 89(r) 107
|
||||
Store 108 106
|
||||
80: 13(int) Load 63(i)
|
||||
81: 13(int) IAdd 80 33
|
||||
Store 63(i) 81
|
||||
Branch 64
|
||||
66: Label
|
||||
82: 6(float) Load 39(sum)
|
||||
83: 7(fvec4) CompositeConstruct 82 82 82 82
|
||||
84: 7(fvec4) Load 71(tv4)
|
||||
85: 7(fvec4) FAdd 83 84
|
||||
86: 7(fvec4) Load 36(gl_FragColor)
|
||||
87: 7(fvec4) FAdd 86 85
|
||||
Store 36(gl_FragColor) 87
|
||||
90: 7(fvec4) Load 11(BaseColor)
|
||||
91: 89(fvec3) VectorShuffle 90 90 0 1 2
|
||||
92: 7(fvec4) Load 88(r)
|
||||
93: 7(fvec4) VectorShuffle 92 91 4 5 6 3
|
||||
Store 88(r) 93
|
||||
Store 94(i) 16
|
||||
Branch 95
|
||||
95: Label
|
||||
LoopMerge 97 98 None
|
||||
Branch 99
|
||||
99: Label
|
||||
109: 13(int) Load 95(i)
|
||||
110: 13(int) IAdd 109 34
|
||||
Store 95(i) 110
|
||||
Branch 96
|
||||
100: 13(int) Load 94(i)
|
||||
101: 13(int) Load 24(Count)
|
||||
102: 26(bool) SLessThan 100 101
|
||||
BranchConditional 102 96 97
|
||||
96: Label
|
||||
105: 6(float) Load 104(f)
|
||||
107: 38(ptr) AccessChain 88(r) 106
|
||||
Store 107 105
|
||||
Branch 98
|
||||
98: Label
|
||||
111: 7(fvec4) Load 89(r)
|
||||
112: 90(fvec3) VectorShuffle 111 111 0 1 2
|
||||
113: 7(fvec4) Load 37(gl_FragColor)
|
||||
114: 90(fvec3) VectorShuffle 113 113 0 1 2
|
||||
115: 90(fvec3) FAdd 114 112
|
||||
116: 7(fvec4) Load 37(gl_FragColor)
|
||||
117: 7(fvec4) VectorShuffle 116 115 4 5 6 3
|
||||
Store 37(gl_FragColor) 117
|
||||
Store 118(i) 16
|
||||
Branch 119
|
||||
119: Label
|
||||
LoopMerge 121 122 None
|
||||
Branch 123
|
||||
123: Label
|
||||
124: 13(int) Load 118(i)
|
||||
126: 26(bool) SLessThan 124 125
|
||||
BranchConditional 126 120 121
|
||||
120: Label
|
||||
127: 6(float) Load 105(f)
|
||||
128: 7(fvec4) Load 37(gl_FragColor)
|
||||
129: 7(fvec4) VectorTimesScalar 128 127
|
||||
Store 37(gl_FragColor) 129
|
||||
108: 13(int) Load 94(i)
|
||||
109: 13(int) IAdd 108 33
|
||||
Store 94(i) 109
|
||||
Branch 95
|
||||
97: Label
|
||||
110: 7(fvec4) Load 88(r)
|
||||
111: 89(fvec3) VectorShuffle 110 110 0 1 2
|
||||
112: 7(fvec4) Load 36(gl_FragColor)
|
||||
113: 89(fvec3) VectorShuffle 112 112 0 1 2
|
||||
114: 89(fvec3) FAdd 113 111
|
||||
115: 7(fvec4) Load 36(gl_FragColor)
|
||||
116: 7(fvec4) VectorShuffle 115 114 4 5 6 3
|
||||
Store 36(gl_FragColor) 116
|
||||
Store 117(i) 16
|
||||
Branch 118
|
||||
118: Label
|
||||
LoopMerge 120 121 None
|
||||
Branch 122
|
||||
122: Label
|
||||
130: 13(int) Load 118(i)
|
||||
131: 13(int) IAdd 130 49
|
||||
Store 118(i) 131
|
||||
Branch 119
|
||||
123: 13(int) Load 117(i)
|
||||
125: 26(bool) SLessThan 123 124
|
||||
BranchConditional 125 119 120
|
||||
119: Label
|
||||
126: 6(float) Load 104(f)
|
||||
127: 7(fvec4) Load 36(gl_FragColor)
|
||||
128: 7(fvec4) VectorTimesScalar 127 126
|
||||
Store 36(gl_FragColor) 128
|
||||
Branch 121
|
||||
121: Label
|
||||
129: 13(int) Load 117(i)
|
||||
130: 13(int) IAdd 129 48
|
||||
Store 117(i) 130
|
||||
Branch 118
|
||||
120: Label
|
||||
Return
|
||||
FunctionEnd
|
||||
|
@ -5,13 +5,13 @@ Linked fragment stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 61
|
||||
// Id's are bound by 60
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 20 30
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
EntryPoint Fragment 4 "main" 20 30 36 59
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 140
|
||||
Name 4 "main"
|
||||
Name 6 "bar("
|
||||
@ -24,7 +24,7 @@ Linked fragment stage:
|
||||
Name 27 "f"
|
||||
Name 30 "gl_FragColor"
|
||||
Name 36 "d"
|
||||
Name 60 "bigColor"
|
||||
Name 59 "bigColor"
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
8: TypeFloat 32
|
||||
@ -37,8 +37,8 @@ Linked fragment stage:
|
||||
26: TypePointer Function 8(float)
|
||||
29: TypePointer Output 12(fvec4)
|
||||
30(gl_FragColor): 29(ptr) Variable Output
|
||||
35: TypePointer UniformConstant 8(float)
|
||||
36(d): 35(ptr) Variable UniformConstant
|
||||
35: TypePointer Input 8(float)
|
||||
36(d): 35(ptr) Variable Input
|
||||
38: 8(float) Constant 1082549862
|
||||
39: TypeBool
|
||||
43: 8(float) Constant 1067030938
|
||||
@ -46,8 +46,7 @@ Linked fragment stage:
|
||||
49: TypeInt 32 0
|
||||
50: 49(int) Constant 0
|
||||
53: 49(int) Constant 1
|
||||
59: TypePointer UniformConstant 12(fvec4)
|
||||
60(bigColor): 59(ptr) Variable UniformConstant
|
||||
59(bigColor): 19(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
18(color): 13(ptr) Variable Function
|
||||
|
@ -1,17 +1,21 @@
|
||||
spv.functionCall.frag
|
||||
WARNING: 0:3: varying deprecated in version 130; may be removed in future release
|
||||
WARNING: 0:4: varying deprecated in version 130; may be removed in future release
|
||||
WARNING: 0:5: varying deprecated in version 130; may be removed in future release
|
||||
|
||||
|
||||
Linked fragment stage:
|
||||
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 77
|
||||
// Id's are bound by 76
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 58 69
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
EntryPoint Fragment 4 "main" 35 58 69 75
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 140
|
||||
Name 4 "main"
|
||||
Name 11 "foo(vf4;"
|
||||
@ -27,7 +31,7 @@ Linked fragment stage:
|
||||
Name 64 "f"
|
||||
Name 66 "g"
|
||||
Name 69 "gl_FragColor"
|
||||
Name 76 "bigColor"
|
||||
Name 75 "bigColor"
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@ -42,8 +46,8 @@ Linked fragment stage:
|
||||
24: 23(int) Constant 0
|
||||
25: TypePointer Function 6(float)
|
||||
28: 23(int) Constant 1
|
||||
34: TypePointer UniformConstant 6(float)
|
||||
35(d): 34(ptr) Variable UniformConstant
|
||||
34: TypePointer Input 6(float)
|
||||
35(d): 34(ptr) Variable Input
|
||||
37: 6(float) Constant 1082549862
|
||||
38: TypeBool
|
||||
42: 6(float) Constant 1067030938
|
||||
@ -53,8 +57,7 @@ Linked fragment stage:
|
||||
58(BaseColor): 57(ptr) Variable Input
|
||||
68: TypePointer Output 7(fvec4)
|
||||
69(gl_FragColor): 68(ptr) Variable Output
|
||||
75: TypePointer UniformConstant 7(fvec4)
|
||||
76(bigColor): 75(ptr) Variable UniformConstant
|
||||
75(bigColor): 57(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
56(color): 8(ptr) Variable Function
|
||||
|
@ -12,8 +12,8 @@ Linked fragment stage:
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 152
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
EntryPoint Fragment 4 "main" 76 152
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 400
|
||||
Name 4 "main"
|
||||
Name 15 "foo(i1;i1;i1;i1;i1;i1;"
|
||||
@ -65,8 +65,8 @@ Linked fragment stage:
|
||||
66: 17(float) Constant 1084227584
|
||||
67: TypeInt 32 0
|
||||
68: 67(int) Constant 1
|
||||
75: TypePointer UniformConstant 17(float)
|
||||
76(u): 75(ptr) Variable UniformConstant
|
||||
75: TypePointer Input 17(float)
|
||||
76(u): 75(ptr) Variable Input
|
||||
78: 17(float) Constant 1078774989
|
||||
79: TypeBool
|
||||
84: 6(int) Constant 1000000
|
||||
|
@ -20,8 +20,8 @@ Linked fragment stage:
|
||||
Capability StorageImageWriteWithoutFormat
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 362
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
EntryPoint Fragment 4 "main" 132 142 152 248 362 377
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 450
|
||||
Name 4 "main"
|
||||
Name 9 "iv"
|
||||
@ -47,20 +47,39 @@ Linked fragment stage:
|
||||
Name 357 "wo2D"
|
||||
Name 362 "fragData"
|
||||
Name 377 "ic4D"
|
||||
Decorate 15(i1D) DescriptorSet 0
|
||||
Decorate 15(i1D) Binding 0
|
||||
Decorate 27(i2D) DescriptorSet 0
|
||||
Decorate 27(i2D) Binding 1
|
||||
Decorate 38(i3D) DescriptorSet 0
|
||||
Decorate 38(i3D) Binding 2
|
||||
Decorate 45(iCube) DescriptorSet 0
|
||||
Decorate 45(iCube) Binding 3
|
||||
Decorate 55(iCubeArray) DescriptorSet 0
|
||||
Decorate 55(iCubeArray) Binding 4
|
||||
Decorate 62(i2DRect) DescriptorSet 0
|
||||
Decorate 62(i2DRect) Binding 5
|
||||
Decorate 72(i1DArray) DescriptorSet 0
|
||||
Decorate 72(i1DArray) Binding 6
|
||||
Decorate 82(i2DArray) DescriptorSet 0
|
||||
Decorate 82(i2DArray) Binding 7
|
||||
Decorate 89(iBuffer) DescriptorSet 0
|
||||
Decorate 89(iBuffer) Binding 8
|
||||
Decorate 98(i2DMS) DescriptorSet 0
|
||||
Decorate 98(i2DMS) Binding 9
|
||||
Decorate 108(i2DMSArray) DescriptorSet 0
|
||||
Decorate 108(i2DMSArray) Binding 10
|
||||
Decorate 132(ic1D) Flat
|
||||
Decorate 142(ic2D) Flat
|
||||
Decorate 152(ic3D) Flat
|
||||
Decorate 232(ii1D) DescriptorSet 0
|
||||
Decorate 232(ii1D) Binding 11
|
||||
Decorate 245(ui2D) DescriptorSet 0
|
||||
Decorate 245(ui2D) Binding 12
|
||||
Decorate 248(value) Flat
|
||||
Decorate 357(wo2D) DescriptorSet 0
|
||||
Decorate 357(wo2D) Binding 1
|
||||
Decorate 377(ic4D) Flat
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 1
|
||||
@ -110,12 +129,12 @@ Linked fragment stage:
|
||||
126: TypePointer Function 125(fvec4)
|
||||
128: 12(float) Constant 0
|
||||
129: 125(fvec4) ConstantComposite 128 128 128 128
|
||||
131: TypePointer UniformConstant 6(int)
|
||||
132(ic1D): 131(ptr) Variable UniformConstant
|
||||
141: TypePointer UniformConstant 29(ivec2)
|
||||
142(ic2D): 141(ptr) Variable UniformConstant
|
||||
151: TypePointer UniformConstant 7(ivec3)
|
||||
152(ic3D): 151(ptr) Variable UniformConstant
|
||||
131: TypePointer Input 6(int)
|
||||
132(ic1D): 131(ptr) Variable Input
|
||||
141: TypePointer Input 29(ivec2)
|
||||
142(ic2D): 141(ptr) Variable Input
|
||||
151: TypePointer Input 7(ivec3)
|
||||
152(ic3D): 151(ptr) Variable Input
|
||||
210: 6(int) Constant 1
|
||||
216: 6(int) Constant 2
|
||||
220: 6(int) Constant 3
|
||||
@ -130,8 +149,8 @@ Linked fragment stage:
|
||||
243: TypeImage 18(int) 2D nonsampled format:R32ui
|
||||
244: TypePointer UniformConstant 243
|
||||
245(ui2D): 244(ptr) Variable UniformConstant
|
||||
247: TypePointer UniformConstant 18(int)
|
||||
248(value): 247(ptr) Variable UniformConstant
|
||||
247: TypePointer Input 18(int)
|
||||
248(value): 247(ptr) Variable Input
|
||||
250: TypePointer Image 18(int)
|
||||
256: 6(int) Constant 11
|
||||
270: 6(int) Constant 12
|
||||
@ -149,8 +168,8 @@ Linked fragment stage:
|
||||
362(fragData): 361(ptr) Variable Output
|
||||
368: TypeBool
|
||||
375: TypeVector 6(int) 4
|
||||
376: TypePointer UniformConstant 375(ivec4)
|
||||
377(ic4D): 376(ptr) Variable UniformConstant
|
||||
376: TypePointer Input 375(ivec4)
|
||||
377(ic4D): 376(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
9(iv): 8(ptr) Variable Function
|
||||
|
@ -7,12 +7,12 @@ Linked vertex stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 270
|
||||
// Id's are bound by 268
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Vertex 4 "main" 9 15 21 26 47 67 83 100 121 142 146 156 173 182 247 268 269
|
||||
EntryPoint Vertex 4 "main" 9 15 21 26 47 67 83 100 121 142 146 156 173 182 247
|
||||
Source ESSL 310
|
||||
Name 4 "main"
|
||||
Name 9 "iout"
|
||||
@ -44,12 +44,8 @@ Linked vertex stage:
|
||||
Name 173 "u3"
|
||||
Name 182 "i3"
|
||||
Name 247 "v4"
|
||||
Name 268 "gl_VertexID"
|
||||
Name 269 "gl_InstanceID"
|
||||
Decorate 261 RelaxedPrecision
|
||||
Decorate 265 RelaxedPrecision
|
||||
Decorate 268(gl_VertexID) BuiltIn VertexId
|
||||
Decorate 269(gl_InstanceID) BuiltIn InstanceId
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 1
|
||||
@ -117,8 +113,6 @@ Linked vertex stage:
|
||||
182(i3): 181(ptr) Variable Input
|
||||
246: TypePointer Input 19(fvec4)
|
||||
247(v4): 246(ptr) Variable Input
|
||||
268(gl_VertexID): 155(ptr) Variable Input
|
||||
269(gl_InstanceID): 155(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
30(u2out): 29(ptr) Variable Function
|
||||
|
@ -7,14 +7,14 @@ Linked fragment stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 101
|
||||
// Id's are bound by 100
|
||||
|
||||
Capability Shader
|
||||
Capability InterpolationFunction
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 13 24 33 41 99
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
EntryPoint Fragment 4 "main" 13 24 33 41 47 72 98
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 450
|
||||
Name 4 "main"
|
||||
Name 9 "f4"
|
||||
@ -23,8 +23,10 @@ Linked fragment stage:
|
||||
Name 33 "if3"
|
||||
Name 41 "if4"
|
||||
Name 47 "samp"
|
||||
Name 73 "offset"
|
||||
Name 99 "fragColor"
|
||||
Name 72 "offset"
|
||||
Name 98 "fragColor"
|
||||
Decorate 47(samp) Flat
|
||||
Decorate 72(offset) Flat
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@ -46,12 +48,11 @@ Linked fragment stage:
|
||||
40: TypePointer Input 7(fvec4)
|
||||
41(if4): 40(ptr) Variable Input
|
||||
45: TypeInt 32 1
|
||||
46: TypePointer UniformConstant 45(int)
|
||||
47(samp): 46(ptr) Variable UniformConstant
|
||||
72: TypePointer UniformConstant 22(fvec2)
|
||||
73(offset): 72(ptr) Variable UniformConstant
|
||||
98: TypePointer Output 7(fvec4)
|
||||
99(fragColor): 98(ptr) Variable Output
|
||||
46: TypePointer Input 45(int)
|
||||
47(samp): 46(ptr) Variable Input
|
||||
72(offset): 23(ptr) Variable Input
|
||||
97: TypePointer Output 7(fvec4)
|
||||
98(fragColor): 97(ptr) Variable Output
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
9(f4): 8(ptr) Variable Function
|
||||
@ -108,35 +109,35 @@ Linked fragment stage:
|
||||
70: 7(fvec4) Load 9(f4)
|
||||
71: 7(fvec4) FAdd 70 69
|
||||
Store 9(f4) 71
|
||||
74: 22(fvec2) Load 73(offset)
|
||||
75: 6(float) ExtInst 1(GLSL.std.450) 78(InterpolateAtOffset) 13(if1) 74
|
||||
76: 17(ptr) AccessChain 9(f4) 16
|
||||
77: 6(float) Load 76
|
||||
78: 6(float) FAdd 77 75
|
||||
79: 17(ptr) AccessChain 9(f4) 16
|
||||
Store 79 78
|
||||
80: 22(fvec2) Load 73(offset)
|
||||
81: 22(fvec2) ExtInst 1(GLSL.std.450) 78(InterpolateAtOffset) 24(if2) 80
|
||||
82: 7(fvec4) Load 9(f4)
|
||||
83: 22(fvec2) VectorShuffle 82 82 0 1
|
||||
84: 22(fvec2) FAdd 83 81
|
||||
85: 7(fvec4) Load 9(f4)
|
||||
86: 7(fvec4) VectorShuffle 85 84 4 5 2 3
|
||||
Store 9(f4) 86
|
||||
87: 22(fvec2) Load 73(offset)
|
||||
88: 31(fvec3) ExtInst 1(GLSL.std.450) 78(InterpolateAtOffset) 33(if3) 87
|
||||
89: 7(fvec4) Load 9(f4)
|
||||
90: 31(fvec3) VectorShuffle 89 89 0 1 2
|
||||
91: 31(fvec3) FAdd 90 88
|
||||
92: 7(fvec4) Load 9(f4)
|
||||
93: 7(fvec4) VectorShuffle 92 91 4 5 6 3
|
||||
Store 9(f4) 93
|
||||
94: 22(fvec2) Load 73(offset)
|
||||
95: 7(fvec4) ExtInst 1(GLSL.std.450) 78(InterpolateAtOffset) 41(if4) 94
|
||||
96: 7(fvec4) Load 9(f4)
|
||||
97: 7(fvec4) FAdd 96 95
|
||||
Store 9(f4) 97
|
||||
100: 7(fvec4) Load 9(f4)
|
||||
Store 99(fragColor) 100
|
||||
73: 22(fvec2) Load 72(offset)
|
||||
74: 6(float) ExtInst 1(GLSL.std.450) 78(InterpolateAtOffset) 13(if1) 73
|
||||
75: 17(ptr) AccessChain 9(f4) 16
|
||||
76: 6(float) Load 75
|
||||
77: 6(float) FAdd 76 74
|
||||
78: 17(ptr) AccessChain 9(f4) 16
|
||||
Store 78 77
|
||||
79: 22(fvec2) Load 72(offset)
|
||||
80: 22(fvec2) ExtInst 1(GLSL.std.450) 78(InterpolateAtOffset) 24(if2) 79
|
||||
81: 7(fvec4) Load 9(f4)
|
||||
82: 22(fvec2) VectorShuffle 81 81 0 1
|
||||
83: 22(fvec2) FAdd 82 80
|
||||
84: 7(fvec4) Load 9(f4)
|
||||
85: 7(fvec4) VectorShuffle 84 83 4 5 2 3
|
||||
Store 9(f4) 85
|
||||
86: 22(fvec2) Load 72(offset)
|
||||
87: 31(fvec3) ExtInst 1(GLSL.std.450) 78(InterpolateAtOffset) 33(if3) 86
|
||||
88: 7(fvec4) Load 9(f4)
|
||||
89: 31(fvec3) VectorShuffle 88 88 0 1 2
|
||||
90: 31(fvec3) FAdd 89 87
|
||||
91: 7(fvec4) Load 9(f4)
|
||||
92: 7(fvec4) VectorShuffle 91 90 4 5 6 3
|
||||
Store 9(f4) 92
|
||||
93: 22(fvec2) Load 72(offset)
|
||||
94: 7(fvec4) ExtInst 1(GLSL.std.450) 78(InterpolateAtOffset) 41(if4) 93
|
||||
95: 7(fvec4) Load 9(f4)
|
||||
96: 7(fvec4) FAdd 95 94
|
||||
Store 9(f4) 96
|
||||
99: 7(fvec4) Load 9(f4)
|
||||
Store 98(fragColor) 99
|
||||
Return
|
||||
FunctionEnd
|
||||
|
@ -7,12 +7,12 @@ Linked vertex stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 70
|
||||
// Id's are bound by 67
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Vertex 4 "main" 63 66 68 69
|
||||
EntryPoint Vertex 4 "main" 63 66
|
||||
Source GLSL 450
|
||||
Name 4 "main"
|
||||
Name 14 "S"
|
||||
@ -92,8 +92,6 @@ Linked vertex stage:
|
||||
MemberName 64(S) 1 "b"
|
||||
MemberName 64(S) 2 "c"
|
||||
Name 66 "soutinv"
|
||||
Name 68 "gl_VertexID"
|
||||
Name 69 "gl_InstanceID"
|
||||
Decorate 13 ArrayStride 32
|
||||
MemberDecorate 14(S) 0 Offset 0
|
||||
MemberDecorate 14(S) 1 ColMajor
|
||||
@ -175,8 +173,6 @@ Linked vertex stage:
|
||||
MemberDecorate 64(S) 1 Invariant
|
||||
MemberDecorate 64(S) 2 Invariant
|
||||
Decorate 66(soutinv) Invariant
|
||||
Decorate 68(gl_VertexID) BuiltIn VertexId
|
||||
Decorate 69(gl_InstanceID) BuiltIn InstanceId
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 1
|
||||
@ -240,9 +236,6 @@ Linked vertex stage:
|
||||
64(S): TypeStruct 8(ivec3) 13 7(int)
|
||||
65: TypePointer Output 64(S)
|
||||
66(soutinv): 65(ptr) Variable Output
|
||||
67: TypePointer Input 6(int)
|
||||
68(gl_VertexID): 67(ptr) Variable Input
|
||||
69(gl_InstanceID): 67(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
Return
|
||||
|
@ -11,7 +11,7 @@ Linked fragment stage:
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 14 26
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 140
|
||||
Name 4 "main"
|
||||
Name 9 "t"
|
||||
@ -39,8 +39,8 @@ Linked fragment stage:
|
||||
28: 24(fvec4) ConstantComposite 27 27 27 27
|
||||
29: 10(int) Constant 3
|
||||
30: TypeArray 24(fvec4) 29
|
||||
31: TypePointer UniformConstant 30
|
||||
32(u): 31(ptr) Variable UniformConstant
|
||||
31: TypePointer Private 30
|
||||
32(u): 31(ptr) Variable Private
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
9(t): 8(ptr) Variable Function
|
||||
|
@ -1,18 +1,20 @@
|
||||
spv.localAggregates.frag
|
||||
Warning, version 400 is not yet complete; most version-specific features are present, but some are missing.
|
||||
|
||||
|
||||
Linked fragment stage:
|
||||
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 138
|
||||
// Id's are bound by 143
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 40 98 108
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
Source GLSL 140
|
||||
EntryPoint Fragment 4 "main" 18 43 93 101 111 138 142
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 400
|
||||
Name 4 "main"
|
||||
Name 8 "s1"
|
||||
MemberName 8(s1) 0 "i"
|
||||
@ -23,26 +25,69 @@ Linked fragment stage:
|
||||
MemberName 10(s2) 2 "s1_1"
|
||||
MemberName 10(s2) 3 "bleh"
|
||||
Name 12 "locals2"
|
||||
Name 13 "s3"
|
||||
MemberName 13(s3) 0 "s2_1"
|
||||
MemberName 13(s3) 1 "i"
|
||||
MemberName 13(s3) 2 "f"
|
||||
MemberName 13(s3) 3 "s1_1"
|
||||
Name 15 "foo3"
|
||||
Name 36 "localFArray"
|
||||
Name 40 "coord"
|
||||
Name 49 "localIArray"
|
||||
Name 68 "x"
|
||||
Name 70 "localArray"
|
||||
Name 75 "i"
|
||||
Name 84 "a"
|
||||
Name 90 "condition"
|
||||
Name 98 "color"
|
||||
Name 108 "gl_FragColor"
|
||||
Name 128 "samp2D"
|
||||
Name 134 "foo"
|
||||
Name 135 "foo2"
|
||||
Name 137 "uFloatArray"
|
||||
Name 13 "s1"
|
||||
MemberName 13(s1) 0 "i"
|
||||
MemberName 13(s1) 1 "f"
|
||||
Name 14 "s2"
|
||||
MemberName 14(s2) 0 "i"
|
||||
MemberName 14(s2) 1 "f"
|
||||
MemberName 14(s2) 2 "s1_1"
|
||||
MemberName 14(s2) 3 "bleh"
|
||||
Name 15 "s1"
|
||||
MemberName 15(s1) 0 "i"
|
||||
MemberName 15(s1) 1 "f"
|
||||
Name 16 "s3"
|
||||
MemberName 16(s3) 0 "s2_1"
|
||||
MemberName 16(s3) 1 "i"
|
||||
MemberName 16(s3) 2 "f"
|
||||
MemberName 16(s3) 3 "s1_1"
|
||||
Name 18 "foo3"
|
||||
Name 39 "localFArray"
|
||||
Name 43 "coord"
|
||||
Name 52 "localIArray"
|
||||
Name 71 "x"
|
||||
Name 73 "localArray"
|
||||
Name 78 "i"
|
||||
Name 87 "a"
|
||||
Name 93 "condition"
|
||||
Name 101 "color"
|
||||
Name 111 "gl_FragColor"
|
||||
Name 131 "samp2D"
|
||||
Name 136 "s1"
|
||||
MemberName 136(s1) 0 "i"
|
||||
MemberName 136(s1) 1 "f"
|
||||
Name 138 "foo"
|
||||
Name 139 "s1"
|
||||
MemberName 139(s1) 0 "i"
|
||||
MemberName 139(s1) 1 "f"
|
||||
Name 140 "s2"
|
||||
MemberName 140(s2) 0 "i"
|
||||
MemberName 140(s2) 1 "f"
|
||||
MemberName 140(s2) 2 "s1_1"
|
||||
MemberName 140(s2) 3 "bleh"
|
||||
Name 142 "foo2"
|
||||
MemberDecorate 13(s1) 0 Flat
|
||||
MemberDecorate 13(s1) 1 Flat
|
||||
MemberDecorate 14(s2) 0 Flat
|
||||
MemberDecorate 14(s2) 1 Flat
|
||||
MemberDecorate 14(s2) 2 Flat
|
||||
MemberDecorate 14(s2) 3 Flat
|
||||
MemberDecorate 15(s1) 0 Flat
|
||||
MemberDecorate 15(s1) 1 Flat
|
||||
MemberDecorate 16(s3) 0 Flat
|
||||
MemberDecorate 16(s3) 1 Flat
|
||||
MemberDecorate 16(s3) 2 Flat
|
||||
MemberDecorate 16(s3) 3 Flat
|
||||
Decorate 93(condition) Flat
|
||||
Decorate 131(samp2D) DescriptorSet 0
|
||||
MemberDecorate 136(s1) 0 Flat
|
||||
MemberDecorate 136(s1) 1 Flat
|
||||
MemberDecorate 139(s1) 0 Flat
|
||||
MemberDecorate 139(s1) 1 Flat
|
||||
MemberDecorate 140(s2) 0 Flat
|
||||
MemberDecorate 140(s2) 1 Flat
|
||||
MemberDecorate 140(s2) 2 Flat
|
||||
MemberDecorate 140(s2) 3 Flat
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 1
|
||||
@ -51,166 +96,171 @@ Linked fragment stage:
|
||||
9: TypeVector 7(float) 4
|
||||
10(s2): TypeStruct 6(int) 7(float) 8(s1) 9(fvec4)
|
||||
11: TypePointer Function 10(s2)
|
||||
13(s3): TypeStruct 10(s2) 6(int) 7(float) 8(s1)
|
||||
14: TypePointer UniformConstant 13(s3)
|
||||
15(foo3): 14(ptr) Variable UniformConstant
|
||||
16: 6(int) Constant 0
|
||||
17: TypePointer UniformConstant 10(s2)
|
||||
20: TypePointer UniformConstant 6(int)
|
||||
23: TypeBool
|
||||
27: 6(int) Constant 2
|
||||
28: 6(int) Constant 1
|
||||
29: 7(float) Constant 1065353216
|
||||
30: TypePointer Function 7(float)
|
||||
32: TypeInt 32 0
|
||||
33: 32(int) Constant 16
|
||||
34: TypeArray 7(float) 33
|
||||
35: TypePointer Function 34
|
||||
37: 6(int) Constant 4
|
||||
38: TypeVector 7(float) 2
|
||||
39: TypePointer Input 38(fvec2)
|
||||
40(coord): 39(ptr) Variable Input
|
||||
41: 32(int) Constant 0
|
||||
42: TypePointer Input 7(float)
|
||||
46: 32(int) Constant 8
|
||||
47: TypeArray 6(int) 46
|
||||
48: TypePointer Function 47
|
||||
52: TypePointer Function 6(int)
|
||||
69: 6(int) Constant 5
|
||||
82: 6(int) Constant 16
|
||||
86: 7(float) Constant 0
|
||||
90(condition): 20(ptr) Variable UniformConstant
|
||||
96: 6(int) Constant 3
|
||||
97: TypePointer Input 9(fvec4)
|
||||
98(color): 97(ptr) Variable Input
|
||||
100: TypePointer Function 9(fvec4)
|
||||
102: 32(int) Constant 1
|
||||
105: 32(int) Constant 2
|
||||
107: TypePointer Output 9(fvec4)
|
||||
108(gl_FragColor): 107(ptr) Variable Output
|
||||
125: TypeImage 7(float) 2D sampled format:Unknown
|
||||
126: TypeSampledImage 125
|
||||
127: TypePointer UniformConstant 126
|
||||
128(samp2D): 127(ptr) Variable UniformConstant
|
||||
133: TypePointer UniformConstant 8(s1)
|
||||
134(foo): 133(ptr) Variable UniformConstant
|
||||
135(foo2): 17(ptr) Variable UniformConstant
|
||||
136: TypePointer UniformConstant 34
|
||||
137(uFloatArray): 136(ptr) Variable UniformConstant
|
||||
13(s1): TypeStruct 6(int) 7(float)
|
||||
14(s2): TypeStruct 6(int) 7(float) 13(s1) 9(fvec4)
|
||||
15(s1): TypeStruct 6(int) 7(float)
|
||||
16(s3): TypeStruct 14(s2) 6(int) 7(float) 15(s1)
|
||||
17: TypePointer Input 16(s3)
|
||||
18(foo3): 17(ptr) Variable Input
|
||||
19: 6(int) Constant 0
|
||||
20: TypePointer Input 14(s2)
|
||||
23: TypePointer Input 6(int)
|
||||
26: TypeBool
|
||||
30: 6(int) Constant 2
|
||||
31: 6(int) Constant 1
|
||||
32: 7(float) Constant 1065353216
|
||||
33: TypePointer Function 7(float)
|
||||
35: TypeInt 32 0
|
||||
36: 35(int) Constant 16
|
||||
37: TypeArray 7(float) 36
|
||||
38: TypePointer Function 37
|
||||
40: 6(int) Constant 4
|
||||
41: TypeVector 7(float) 2
|
||||
42: TypePointer Input 41(fvec2)
|
||||
43(coord): 42(ptr) Variable Input
|
||||
44: 35(int) Constant 0
|
||||
45: TypePointer Input 7(float)
|
||||
49: 35(int) Constant 8
|
||||
50: TypeArray 6(int) 49
|
||||
51: TypePointer Function 50
|
||||
55: TypePointer Function 6(int)
|
||||
72: 6(int) Constant 5
|
||||
85: 6(int) Constant 16
|
||||
89: 7(float) Constant 0
|
||||
93(condition): 23(ptr) Variable Input
|
||||
99: 6(int) Constant 3
|
||||
100: TypePointer Input 9(fvec4)
|
||||
101(color): 100(ptr) Variable Input
|
||||
103: TypePointer Function 9(fvec4)
|
||||
105: 35(int) Constant 1
|
||||
108: 35(int) Constant 2
|
||||
110: TypePointer Output 9(fvec4)
|
||||
111(gl_FragColor): 110(ptr) Variable Output
|
||||
128: TypeImage 7(float) 2D sampled format:Unknown
|
||||
129: TypeSampledImage 128
|
||||
130: TypePointer UniformConstant 129
|
||||
131(samp2D): 130(ptr) Variable UniformConstant
|
||||
136(s1): TypeStruct 6(int) 7(float)
|
||||
137: TypePointer Input 136(s1)
|
||||
138(foo): 137(ptr) Variable Input
|
||||
139(s1): TypeStruct 6(int) 7(float)
|
||||
140(s2): TypeStruct 6(int) 7(float) 139(s1) 9(fvec4)
|
||||
141: TypePointer Input 140(s2)
|
||||
142(foo2): 141(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
12(locals2): 11(ptr) Variable Function
|
||||
36(localFArray): 35(ptr) Variable Function
|
||||
49(localIArray): 48(ptr) Variable Function
|
||||
68(x): 52(ptr) Variable Function
|
||||
70(localArray): 35(ptr) Variable Function
|
||||
75(i): 52(ptr) Variable Function
|
||||
84(a): 35(ptr) Variable Function
|
||||
18: 17(ptr) AccessChain 15(foo3) 16
|
||||
19: 10(s2) Load 18
|
||||
Store 12(locals2) 19
|
||||
21: 20(ptr) AccessChain 15(foo3) 16 16
|
||||
22: 6(int) Load 21
|
||||
24: 23(bool) SGreaterThan 22 16
|
||||
SelectionMerge 26 None
|
||||
BranchConditional 24 25 54
|
||||
25: Label
|
||||
31: 30(ptr) AccessChain 12(locals2) 27 28
|
||||
Store 31 29
|
||||
43: 42(ptr) AccessChain 40(coord) 41
|
||||
44: 7(float) Load 43
|
||||
45: 30(ptr) AccessChain 36(localFArray) 37
|
||||
Store 45 44
|
||||
50: 20(ptr) AccessChain 15(foo3) 16 16
|
||||
51: 6(int) Load 50
|
||||
53: 52(ptr) AccessChain 49(localIArray) 27
|
||||
Store 53 51
|
||||
Branch 26
|
||||
54: Label
|
||||
55: 42(ptr) AccessChain 40(coord) 41
|
||||
56: 7(float) Load 55
|
||||
57: 30(ptr) AccessChain 12(locals2) 27 28
|
||||
Store 57 56
|
||||
58: 30(ptr) AccessChain 36(localFArray) 37
|
||||
Store 58 29
|
||||
59: 52(ptr) AccessChain 49(localIArray) 27
|
||||
Store 59 16
|
||||
Branch 26
|
||||
26: Label
|
||||
60: 52(ptr) AccessChain 49(localIArray) 27
|
||||
61: 6(int) Load 60
|
||||
62: 23(bool) IEqual 61 16
|
||||
SelectionMerge 64 None
|
||||
BranchConditional 62 63 64
|
||||
63: Label
|
||||
65: 30(ptr) AccessChain 36(localFArray) 37
|
||||
66: 7(float) Load 65
|
||||
67: 7(float) FAdd 66 29
|
||||
Store 65 67
|
||||
Branch 64
|
||||
64: Label
|
||||
Store 68(x) 69
|
||||
71: 6(int) Load 68(x)
|
||||
72: 42(ptr) AccessChain 40(coord) 41
|
||||
73: 7(float) Load 72
|
||||
74: 30(ptr) AccessChain 70(localArray) 71
|
||||
Store 74 73
|
||||
Store 75(i) 16
|
||||
Branch 76
|
||||
76: Label
|
||||
LoopMerge 78 79 None
|
||||
Branch 80
|
||||
80: Label
|
||||
81: 6(int) Load 75(i)
|
||||
83: 23(bool) SLessThan 81 82
|
||||
BranchConditional 83 77 78
|
||||
77: Label
|
||||
85: 6(int) Load 75(i)
|
||||
87: 30(ptr) AccessChain 84(a) 85
|
||||
Store 87 86
|
||||
39(localFArray): 38(ptr) Variable Function
|
||||
52(localIArray): 51(ptr) Variable Function
|
||||
71(x): 55(ptr) Variable Function
|
||||
73(localArray): 38(ptr) Variable Function
|
||||
78(i): 55(ptr) Variable Function
|
||||
87(a): 38(ptr) Variable Function
|
||||
21: 20(ptr) AccessChain 18(foo3) 19
|
||||
22: 14(s2) Load 21
|
||||
Store 12(locals2) 22
|
||||
24: 23(ptr) AccessChain 18(foo3) 19 19
|
||||
25: 6(int) Load 24
|
||||
27: 26(bool) SGreaterThan 25 19
|
||||
SelectionMerge 29 None
|
||||
BranchConditional 27 28 57
|
||||
28: Label
|
||||
34: 33(ptr) AccessChain 12(locals2) 30 31
|
||||
Store 34 32
|
||||
46: 45(ptr) AccessChain 43(coord) 44
|
||||
47: 7(float) Load 46
|
||||
48: 33(ptr) AccessChain 39(localFArray) 40
|
||||
Store 48 47
|
||||
53: 23(ptr) AccessChain 18(foo3) 19 19
|
||||
54: 6(int) Load 53
|
||||
56: 55(ptr) AccessChain 52(localIArray) 30
|
||||
Store 56 54
|
||||
Branch 29
|
||||
57: Label
|
||||
58: 45(ptr) AccessChain 43(coord) 44
|
||||
59: 7(float) Load 58
|
||||
60: 33(ptr) AccessChain 12(locals2) 30 31
|
||||
Store 60 59
|
||||
61: 33(ptr) AccessChain 39(localFArray) 40
|
||||
Store 61 32
|
||||
62: 55(ptr) AccessChain 52(localIArray) 30
|
||||
Store 62 19
|
||||
Branch 29
|
||||
29: Label
|
||||
63: 55(ptr) AccessChain 52(localIArray) 30
|
||||
64: 6(int) Load 63
|
||||
65: 26(bool) IEqual 64 19
|
||||
SelectionMerge 67 None
|
||||
BranchConditional 65 66 67
|
||||
66: Label
|
||||
68: 33(ptr) AccessChain 39(localFArray) 40
|
||||
69: 7(float) Load 68
|
||||
70: 7(float) FAdd 69 32
|
||||
Store 68 70
|
||||
Branch 67
|
||||
67: Label
|
||||
Store 71(x) 72
|
||||
74: 6(int) Load 71(x)
|
||||
75: 45(ptr) AccessChain 43(coord) 44
|
||||
76: 7(float) Load 75
|
||||
77: 33(ptr) AccessChain 73(localArray) 74
|
||||
Store 77 76
|
||||
Store 78(i) 19
|
||||
Branch 79
|
||||
79: Label
|
||||
88: 6(int) Load 75(i)
|
||||
89: 6(int) IAdd 88 28
|
||||
Store 75(i) 89
|
||||
Branch 76
|
||||
78: Label
|
||||
91: 6(int) Load 90(condition)
|
||||
92: 23(bool) IEqual 91 28
|
||||
SelectionMerge 94 None
|
||||
BranchConditional 92 93 94
|
||||
93: Label
|
||||
95: 34 Load 70(localArray)
|
||||
Store 84(a) 95
|
||||
Branch 94
|
||||
94: Label
|
||||
99: 9(fvec4) Load 98(color)
|
||||
101: 100(ptr) AccessChain 12(locals2) 96
|
||||
Store 101 99
|
||||
103: 42(ptr) AccessChain 40(coord) 102
|
||||
104: 7(float) Load 103
|
||||
106: 30(ptr) AccessChain 12(locals2) 96 105
|
||||
Store 106 104
|
||||
109: 100(ptr) AccessChain 12(locals2) 96
|
||||
110: 9(fvec4) Load 109
|
||||
111: 30(ptr) AccessChain 36(localFArray) 37
|
||||
112: 7(float) Load 111
|
||||
113: 30(ptr) AccessChain 12(locals2) 27 28
|
||||
114: 7(float) Load 113
|
||||
115: 7(float) FAdd 112 114
|
||||
116: 6(int) Load 68(x)
|
||||
117: 30(ptr) AccessChain 70(localArray) 116
|
||||
118: 7(float) Load 117
|
||||
119: 7(float) FAdd 115 118
|
||||
120: 6(int) Load 68(x)
|
||||
121: 30(ptr) AccessChain 84(a) 120
|
||||
122: 7(float) Load 121
|
||||
123: 7(float) FAdd 119 122
|
||||
124: 9(fvec4) VectorTimesScalar 110 123
|
||||
129: 126 Load 128(samp2D)
|
||||
130: 38(fvec2) Load 40(coord)
|
||||
131: 9(fvec4) ImageSampleImplicitLod 129 130
|
||||
132: 9(fvec4) FMul 124 131
|
||||
Store 108(gl_FragColor) 132
|
||||
LoopMerge 81 82 None
|
||||
Branch 83
|
||||
83: Label
|
||||
84: 6(int) Load 78(i)
|
||||
86: 26(bool) SLessThan 84 85
|
||||
BranchConditional 86 80 81
|
||||
80: Label
|
||||
88: 6(int) Load 78(i)
|
||||
90: 33(ptr) AccessChain 87(a) 88
|
||||
Store 90 89
|
||||
Branch 82
|
||||
82: Label
|
||||
91: 6(int) Load 78(i)
|
||||
92: 6(int) IAdd 91 31
|
||||
Store 78(i) 92
|
||||
Branch 79
|
||||
81: Label
|
||||
94: 6(int) Load 93(condition)
|
||||
95: 26(bool) IEqual 94 31
|
||||
SelectionMerge 97 None
|
||||
BranchConditional 95 96 97
|
||||
96: Label
|
||||
98: 37 Load 73(localArray)
|
||||
Store 87(a) 98
|
||||
Branch 97
|
||||
97: Label
|
||||
102: 9(fvec4) Load 101(color)
|
||||
104: 103(ptr) AccessChain 12(locals2) 99
|
||||
Store 104 102
|
||||
106: 45(ptr) AccessChain 43(coord) 105
|
||||
107: 7(float) Load 106
|
||||
109: 33(ptr) AccessChain 12(locals2) 99 108
|
||||
Store 109 107
|
||||
112: 103(ptr) AccessChain 12(locals2) 99
|
||||
113: 9(fvec4) Load 112
|
||||
114: 33(ptr) AccessChain 39(localFArray) 40
|
||||
115: 7(float) Load 114
|
||||
116: 33(ptr) AccessChain 12(locals2) 30 31
|
||||
117: 7(float) Load 116
|
||||
118: 7(float) FAdd 115 117
|
||||
119: 6(int) Load 71(x)
|
||||
120: 33(ptr) AccessChain 73(localArray) 119
|
||||
121: 7(float) Load 120
|
||||
122: 7(float) FAdd 118 121
|
||||
123: 6(int) Load 71(x)
|
||||
124: 33(ptr) AccessChain 87(a) 123
|
||||
125: 7(float) Load 124
|
||||
126: 7(float) FAdd 122 125
|
||||
127: 9(fvec4) VectorTimesScalar 113 126
|
||||
132: 129 Load 131(samp2D)
|
||||
133: 41(fvec2) Load 43(coord)
|
||||
134: 9(fvec4) ImageSampleImplicitLod 132 133
|
||||
135: 9(fvec4) FMul 127 134
|
||||
Store 111(gl_FragColor) 135
|
||||
Return
|
||||
FunctionEnd
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -5,64 +5,36 @@ Linked fragment stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 188
|
||||
// Id's are bound by 158
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 11 141
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
EntryPoint Fragment 4 "main" 11 17 27 80 140 142 143 144 145 146 147 148 149 150 151 152 153 154 157
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 140
|
||||
Name 4 "main"
|
||||
Name 9 "color"
|
||||
Name 11 "BaseColor"
|
||||
Name 18 "bigColor4"
|
||||
Name 28 "d4"
|
||||
Name 81 "d13"
|
||||
Name 141 "gl_FragColor"
|
||||
Name 143 "bigColor"
|
||||
Name 144 "bigColor1_1"
|
||||
Name 145 "bigColor1_2"
|
||||
Name 146 "bigColor1_3"
|
||||
Name 147 "bigColor2"
|
||||
Name 148 "bigColor3"
|
||||
Name 149 "bigColor5"
|
||||
Name 150 "bigColor6"
|
||||
Name 151 "bigColor7"
|
||||
Name 152 "bigColor8"
|
||||
Name 153 "d"
|
||||
Name 154 "d2"
|
||||
Name 155 "d3"
|
||||
Name 156 "d5"
|
||||
Name 157 "d6"
|
||||
Name 158 "d7"
|
||||
Name 159 "d8"
|
||||
Name 160 "d9"
|
||||
Name 161 "d10"
|
||||
Name 162 "d11"
|
||||
Name 163 "d12"
|
||||
Name 164 "d14"
|
||||
Name 165 "d15"
|
||||
Name 166 "d16"
|
||||
Name 167 "d17"
|
||||
Name 168 "d18"
|
||||
Name 169 "d19"
|
||||
Name 170 "d20"
|
||||
Name 171 "d21"
|
||||
Name 172 "d22"
|
||||
Name 173 "d23"
|
||||
Name 174 "d24"
|
||||
Name 175 "d25"
|
||||
Name 176 "d26"
|
||||
Name 177 "d27"
|
||||
Name 178 "d28"
|
||||
Name 179 "d29"
|
||||
Name 180 "d30"
|
||||
Name 181 "d31"
|
||||
Name 182 "d32"
|
||||
Name 183 "d33"
|
||||
Name 184 "d34"
|
||||
Name 187 "Count"
|
||||
Name 17 "bigColor4"
|
||||
Name 27 "d4"
|
||||
Name 80 "d13"
|
||||
Name 140 "gl_FragColor"
|
||||
Name 142 "bigColor"
|
||||
Name 143 "bigColor1_1"
|
||||
Name 144 "bigColor1_2"
|
||||
Name 145 "bigColor1_3"
|
||||
Name 146 "bigColor2"
|
||||
Name 147 "bigColor3"
|
||||
Name 148 "bigColor5"
|
||||
Name 149 "bigColor6"
|
||||
Name 150 "bigColor7"
|
||||
Name 151 "bigColor8"
|
||||
Name 152 "d"
|
||||
Name 153 "d2"
|
||||
Name 154 "d3"
|
||||
Name 157 "Count"
|
||||
Decorate 157(Count) Flat
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@ -70,67 +42,37 @@ Linked fragment stage:
|
||||
8: TypePointer Function 7(fvec4)
|
||||
10: TypePointer Input 7(fvec4)
|
||||
11(BaseColor): 10(ptr) Variable Input
|
||||
17: TypePointer UniformConstant 7(fvec4)
|
||||
18(bigColor4): 17(ptr) Variable UniformConstant
|
||||
22: TypeInt 32 0
|
||||
23: 22(int) Constant 0
|
||||
24: TypePointer Function 6(float)
|
||||
27: TypePointer UniformConstant 6(float)
|
||||
28(d4): 27(ptr) Variable UniformConstant
|
||||
30: TypeBool
|
||||
34: 6(float) Constant 1073741824
|
||||
35: 22(int) Constant 2
|
||||
48: 6(float) Constant 1065353216
|
||||
51: 22(int) Constant 1
|
||||
78: 22(int) Constant 3
|
||||
81(d13): 27(ptr) Variable UniformConstant
|
||||
140: TypePointer Output 7(fvec4)
|
||||
141(gl_FragColor): 140(ptr) Variable Output
|
||||
143(bigColor): 17(ptr) Variable UniformConstant
|
||||
144(bigColor1_1): 17(ptr) Variable UniformConstant
|
||||
145(bigColor1_2): 17(ptr) Variable UniformConstant
|
||||
146(bigColor1_3): 17(ptr) Variable UniformConstant
|
||||
147(bigColor2): 17(ptr) Variable UniformConstant
|
||||
148(bigColor3): 17(ptr) Variable UniformConstant
|
||||
149(bigColor5): 17(ptr) Variable UniformConstant
|
||||
150(bigColor6): 17(ptr) Variable UniformConstant
|
||||
151(bigColor7): 17(ptr) Variable UniformConstant
|
||||
152(bigColor8): 17(ptr) Variable UniformConstant
|
||||
153(d): 27(ptr) Variable UniformConstant
|
||||
154(d2): 27(ptr) Variable UniformConstant
|
||||
155(d3): 27(ptr) Variable UniformConstant
|
||||
156(d5): 27(ptr) Variable UniformConstant
|
||||
157(d6): 27(ptr) Variable UniformConstant
|
||||
158(d7): 27(ptr) Variable UniformConstant
|
||||
159(d8): 27(ptr) Variable UniformConstant
|
||||
160(d9): 27(ptr) Variable UniformConstant
|
||||
161(d10): 27(ptr) Variable UniformConstant
|
||||
162(d11): 27(ptr) Variable UniformConstant
|
||||
163(d12): 27(ptr) Variable UniformConstant
|
||||
164(d14): 27(ptr) Variable UniformConstant
|
||||
165(d15): 27(ptr) Variable UniformConstant
|
||||
166(d16): 27(ptr) Variable UniformConstant
|
||||
167(d17): 27(ptr) Variable UniformConstant
|
||||
168(d18): 27(ptr) Variable UniformConstant
|
||||
169(d19): 27(ptr) Variable UniformConstant
|
||||
170(d20): 27(ptr) Variable UniformConstant
|
||||
171(d21): 27(ptr) Variable UniformConstant
|
||||
172(d22): 27(ptr) Variable UniformConstant
|
||||
173(d23): 27(ptr) Variable UniformConstant
|
||||
174(d24): 27(ptr) Variable UniformConstant
|
||||
175(d25): 27(ptr) Variable UniformConstant
|
||||
176(d26): 27(ptr) Variable UniformConstant
|
||||
177(d27): 27(ptr) Variable UniformConstant
|
||||
178(d28): 27(ptr) Variable UniformConstant
|
||||
179(d29): 27(ptr) Variable UniformConstant
|
||||
180(d30): 27(ptr) Variable UniformConstant
|
||||
181(d31): 27(ptr) Variable UniformConstant
|
||||
182(d32): 27(ptr) Variable UniformConstant
|
||||
183(d33): 27(ptr) Variable UniformConstant
|
||||
184(d34): 27(ptr) Variable UniformConstant
|
||||
185: TypeInt 32 1
|
||||
186: TypePointer UniformConstant 185(int)
|
||||
187(Count): 186(ptr) Variable UniformConstant
|
||||
17(bigColor4): 10(ptr) Variable Input
|
||||
21: TypeInt 32 0
|
||||
22: 21(int) Constant 0
|
||||
23: TypePointer Function 6(float)
|
||||
26: TypePointer Input 6(float)
|
||||
27(d4): 26(ptr) Variable Input
|
||||
29: TypeBool
|
||||
33: 6(float) Constant 1073741824
|
||||
34: 21(int) Constant 2
|
||||
47: 6(float) Constant 1065353216
|
||||
50: 21(int) Constant 1
|
||||
77: 21(int) Constant 3
|
||||
80(d13): 26(ptr) Variable Input
|
||||
139: TypePointer Output 7(fvec4)
|
||||
140(gl_FragColor): 139(ptr) Variable Output
|
||||
142(bigColor): 10(ptr) Variable Input
|
||||
143(bigColor1_1): 10(ptr) Variable Input
|
||||
144(bigColor1_2): 10(ptr) Variable Input
|
||||
145(bigColor1_3): 10(ptr) Variable Input
|
||||
146(bigColor2): 10(ptr) Variable Input
|
||||
147(bigColor3): 10(ptr) Variable Input
|
||||
148(bigColor5): 10(ptr) Variable Input
|
||||
149(bigColor6): 10(ptr) Variable Input
|
||||
150(bigColor7): 10(ptr) Variable Input
|
||||
151(bigColor8): 10(ptr) Variable Input
|
||||
152(d): 26(ptr) Variable Input
|
||||
153(d2): 26(ptr) Variable Input
|
||||
154(d3): 26(ptr) Variable Input
|
||||
155: TypeInt 32 1
|
||||
156: TypePointer Input 155(int)
|
||||
157(Count): 156(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
9(color): 8(ptr) Variable Function
|
||||
@ -141,161 +83,161 @@ Linked fragment stage:
|
||||
LoopMerge 15 16 None
|
||||
Branch 14
|
||||
14: Label
|
||||
19: 7(fvec4) Load 18(bigColor4)
|
||||
20: 7(fvec4) Load 9(color)
|
||||
21: 7(fvec4) FAdd 20 19
|
||||
Store 9(color) 21
|
||||
25: 24(ptr) AccessChain 9(color) 23
|
||||
26: 6(float) Load 25
|
||||
29: 6(float) Load 28(d4)
|
||||
31: 30(bool) FOrdLessThan 26 29
|
||||
SelectionMerge 33 None
|
||||
BranchConditional 31 32 33
|
||||
32: Label
|
||||
36: 24(ptr) AccessChain 9(color) 35
|
||||
37: 6(float) Load 36
|
||||
38: 6(float) FAdd 37 34
|
||||
39: 24(ptr) AccessChain 9(color) 35
|
||||
Store 39 38
|
||||
40: 24(ptr) AccessChain 9(color) 35
|
||||
41: 6(float) Load 40
|
||||
42: 6(float) Load 28(d4)
|
||||
43: 30(bool) FOrdLessThan 41 42
|
||||
SelectionMerge 45 None
|
||||
BranchConditional 43 44 45
|
||||
44: Label
|
||||
46: 24(ptr) AccessChain 9(color) 23
|
||||
47: 6(float) Load 46
|
||||
49: 6(float) FAdd 47 48
|
||||
Store 46 49
|
||||
18: 7(fvec4) Load 17(bigColor4)
|
||||
19: 7(fvec4) Load 9(color)
|
||||
20: 7(fvec4) FAdd 19 18
|
||||
Store 9(color) 20
|
||||
24: 23(ptr) AccessChain 9(color) 22
|
||||
25: 6(float) Load 24
|
||||
28: 6(float) Load 27(d4)
|
||||
30: 29(bool) FOrdLessThan 25 28
|
||||
SelectionMerge 32 None
|
||||
BranchConditional 30 31 32
|
||||
31: Label
|
||||
35: 23(ptr) AccessChain 9(color) 34
|
||||
36: 6(float) Load 35
|
||||
37: 6(float) FAdd 36 33
|
||||
38: 23(ptr) AccessChain 9(color) 34
|
||||
Store 38 37
|
||||
39: 23(ptr) AccessChain 9(color) 34
|
||||
40: 6(float) Load 39
|
||||
41: 6(float) Load 27(d4)
|
||||
42: 29(bool) FOrdLessThan 40 41
|
||||
SelectionMerge 44 None
|
||||
BranchConditional 42 43 44
|
||||
43: Label
|
||||
45: 23(ptr) AccessChain 9(color) 22
|
||||
46: 6(float) Load 45
|
||||
48: 6(float) FAdd 46 47
|
||||
Store 45 48
|
||||
Branch 16
|
||||
45: Label
|
||||
Branch 33
|
||||
33: Label
|
||||
52: 24(ptr) AccessChain 9(color) 51
|
||||
53: 6(float) Load 52
|
||||
54: 6(float) Load 28(d4)
|
||||
55: 30(bool) FOrdLessThan 53 54
|
||||
SelectionMerge 57 None
|
||||
BranchConditional 55 56 63
|
||||
44: Label
|
||||
Branch 32
|
||||
32: Label
|
||||
51: 23(ptr) AccessChain 9(color) 50
|
||||
52: 6(float) Load 51
|
||||
53: 6(float) Load 27(d4)
|
||||
54: 29(bool) FOrdLessThan 52 53
|
||||
SelectionMerge 56 None
|
||||
BranchConditional 54 55 62
|
||||
55: Label
|
||||
57: 6(float) Load 27(d4)
|
||||
58: 23(ptr) AccessChain 9(color) 50
|
||||
59: 6(float) Load 58
|
||||
60: 6(float) FAdd 59 57
|
||||
61: 23(ptr) AccessChain 9(color) 50
|
||||
Store 61 60
|
||||
Branch 56
|
||||
62: Label
|
||||
63: 6(float) Load 27(d4)
|
||||
64: 23(ptr) AccessChain 9(color) 22
|
||||
65: 6(float) Load 64
|
||||
66: 6(float) FAdd 65 63
|
||||
67: 23(ptr) AccessChain 9(color) 22
|
||||
Store 67 66
|
||||
Branch 56
|
||||
56: Label
|
||||
58: 6(float) Load 28(d4)
|
||||
59: 24(ptr) AccessChain 9(color) 51
|
||||
60: 6(float) Load 59
|
||||
61: 6(float) FAdd 60 58
|
||||
62: 24(ptr) AccessChain 9(color) 51
|
||||
Store 62 61
|
||||
Branch 57
|
||||
63: Label
|
||||
64: 6(float) Load 28(d4)
|
||||
65: 24(ptr) AccessChain 9(color) 23
|
||||
66: 6(float) Load 65
|
||||
67: 6(float) FAdd 66 64
|
||||
68: 24(ptr) AccessChain 9(color) 23
|
||||
Store 68 67
|
||||
Branch 57
|
||||
57: Label
|
||||
Branch 16
|
||||
16: Label
|
||||
69: 24(ptr) AccessChain 9(color) 35
|
||||
70: 6(float) Load 69
|
||||
71: 6(float) Load 28(d4)
|
||||
72: 30(bool) FOrdLessThan 70 71
|
||||
BranchConditional 72 13 15
|
||||
68: 23(ptr) AccessChain 9(color) 34
|
||||
69: 6(float) Load 68
|
||||
70: 6(float) Load 27(d4)
|
||||
71: 29(bool) FOrdLessThan 69 70
|
||||
BranchConditional 71 13 15
|
||||
15: Label
|
||||
Branch 73
|
||||
73: Label
|
||||
LoopMerge 75 76 None
|
||||
Branch 77
|
||||
77: Label
|
||||
79: 24(ptr) AccessChain 9(color) 78
|
||||
80: 6(float) Load 79
|
||||
82: 6(float) Load 81(d13)
|
||||
83: 30(bool) FOrdLessThan 80 82
|
||||
BranchConditional 83 74 75
|
||||
74: Label
|
||||
84: 24(ptr) AccessChain 9(color) 35
|
||||
85: 6(float) Load 84
|
||||
86: 6(float) Load 81(d13)
|
||||
87: 30(bool) FOrdLessThan 85 86
|
||||
SelectionMerge 89 None
|
||||
BranchConditional 87 88 93
|
||||
88: Label
|
||||
90: 7(fvec4) Load 9(color)
|
||||
91: 7(fvec4) CompositeConstruct 48 48 48 48
|
||||
92: 7(fvec4) FAdd 90 91
|
||||
Store 9(color) 92
|
||||
Branch 89
|
||||
93: Label
|
||||
94: 7(fvec4) Load 9(color)
|
||||
95: 7(fvec4) CompositeConstruct 48 48 48 48
|
||||
96: 7(fvec4) FSub 94 95
|
||||
Store 9(color) 96
|
||||
Branch 89
|
||||
89: Label
|
||||
97: 7(fvec4) Load 18(bigColor4)
|
||||
98: 7(fvec4) Load 9(color)
|
||||
99: 7(fvec4) FAdd 98 97
|
||||
Store 9(color) 99
|
||||
100: 24(ptr) AccessChain 9(color) 23
|
||||
101: 6(float) Load 100
|
||||
102: 6(float) Load 28(d4)
|
||||
103: 30(bool) FOrdLessThan 101 102
|
||||
SelectionMerge 105 None
|
||||
BranchConditional 103 104 105
|
||||
104: Label
|
||||
106: 24(ptr) AccessChain 9(color) 35
|
||||
107: 6(float) Load 106
|
||||
108: 6(float) FAdd 107 34
|
||||
109: 24(ptr) AccessChain 9(color) 35
|
||||
Store 109 108
|
||||
110: 24(ptr) AccessChain 9(color) 35
|
||||
111: 6(float) Load 110
|
||||
112: 6(float) Load 28(d4)
|
||||
113: 30(bool) FOrdLessThan 111 112
|
||||
SelectionMerge 115 None
|
||||
BranchConditional 113 114 115
|
||||
114: Label
|
||||
116: 24(ptr) AccessChain 9(color) 23
|
||||
117: 6(float) Load 116
|
||||
118: 6(float) FAdd 117 48
|
||||
Store 116 118
|
||||
Branch 76
|
||||
115: Label
|
||||
Branch 105
|
||||
105: Label
|
||||
120: 24(ptr) AccessChain 9(color) 51
|
||||
121: 6(float) Load 120
|
||||
122: 6(float) Load 28(d4)
|
||||
123: 30(bool) FOrdLessThan 121 122
|
||||
SelectionMerge 125 None
|
||||
BranchConditional 123 124 131
|
||||
124: Label
|
||||
126: 6(float) Load 28(d4)
|
||||
127: 24(ptr) AccessChain 9(color) 51
|
||||
128: 6(float) Load 127
|
||||
129: 6(float) FAdd 128 126
|
||||
130: 24(ptr) AccessChain 9(color) 51
|
||||
Store 130 129
|
||||
Branch 125
|
||||
131: Label
|
||||
132: 6(float) Load 28(d4)
|
||||
133: 24(ptr) AccessChain 9(color) 23
|
||||
134: 6(float) Load 133
|
||||
135: 6(float) FAdd 134 132
|
||||
136: 24(ptr) AccessChain 9(color) 23
|
||||
Store 136 135
|
||||
Branch 125
|
||||
125: Label
|
||||
Branch 72
|
||||
72: Label
|
||||
LoopMerge 74 75 None
|
||||
Branch 76
|
||||
76: Label
|
||||
Branch 73
|
||||
78: 23(ptr) AccessChain 9(color) 77
|
||||
79: 6(float) Load 78
|
||||
81: 6(float) Load 80(d13)
|
||||
82: 29(bool) FOrdLessThan 79 81
|
||||
BranchConditional 82 73 74
|
||||
73: Label
|
||||
83: 23(ptr) AccessChain 9(color) 34
|
||||
84: 6(float) Load 83
|
||||
85: 6(float) Load 80(d13)
|
||||
86: 29(bool) FOrdLessThan 84 85
|
||||
SelectionMerge 88 None
|
||||
BranchConditional 86 87 92
|
||||
87: Label
|
||||
89: 7(fvec4) Load 9(color)
|
||||
90: 7(fvec4) CompositeConstruct 47 47 47 47
|
||||
91: 7(fvec4) FAdd 89 90
|
||||
Store 9(color) 91
|
||||
Branch 88
|
||||
92: Label
|
||||
93: 7(fvec4) Load 9(color)
|
||||
94: 7(fvec4) CompositeConstruct 47 47 47 47
|
||||
95: 7(fvec4) FSub 93 94
|
||||
Store 9(color) 95
|
||||
Branch 88
|
||||
88: Label
|
||||
96: 7(fvec4) Load 17(bigColor4)
|
||||
97: 7(fvec4) Load 9(color)
|
||||
98: 7(fvec4) FAdd 97 96
|
||||
Store 9(color) 98
|
||||
99: 23(ptr) AccessChain 9(color) 22
|
||||
100: 6(float) Load 99
|
||||
101: 6(float) Load 27(d4)
|
||||
102: 29(bool) FOrdLessThan 100 101
|
||||
SelectionMerge 104 None
|
||||
BranchConditional 102 103 104
|
||||
103: Label
|
||||
105: 23(ptr) AccessChain 9(color) 34
|
||||
106: 6(float) Load 105
|
||||
107: 6(float) FAdd 106 33
|
||||
108: 23(ptr) AccessChain 9(color) 34
|
||||
Store 108 107
|
||||
109: 23(ptr) AccessChain 9(color) 34
|
||||
110: 6(float) Load 109
|
||||
111: 6(float) Load 27(d4)
|
||||
112: 29(bool) FOrdLessThan 110 111
|
||||
SelectionMerge 114 None
|
||||
BranchConditional 112 113 114
|
||||
113: Label
|
||||
115: 23(ptr) AccessChain 9(color) 22
|
||||
116: 6(float) Load 115
|
||||
117: 6(float) FAdd 116 47
|
||||
Store 115 117
|
||||
Branch 75
|
||||
114: Label
|
||||
Branch 104
|
||||
104: Label
|
||||
119: 23(ptr) AccessChain 9(color) 50
|
||||
120: 6(float) Load 119
|
||||
121: 6(float) Load 27(d4)
|
||||
122: 29(bool) FOrdLessThan 120 121
|
||||
SelectionMerge 124 None
|
||||
BranchConditional 122 123 130
|
||||
123: Label
|
||||
125: 6(float) Load 27(d4)
|
||||
126: 23(ptr) AccessChain 9(color) 50
|
||||
127: 6(float) Load 126
|
||||
128: 6(float) FAdd 127 125
|
||||
129: 23(ptr) AccessChain 9(color) 50
|
||||
Store 129 128
|
||||
Branch 124
|
||||
130: Label
|
||||
131: 6(float) Load 27(d4)
|
||||
132: 23(ptr) AccessChain 9(color) 22
|
||||
133: 6(float) Load 132
|
||||
134: 6(float) FAdd 133 131
|
||||
135: 23(ptr) AccessChain 9(color) 22
|
||||
Store 135 134
|
||||
Branch 124
|
||||
124: Label
|
||||
Branch 75
|
||||
75: Label
|
||||
137: 7(fvec4) Load 9(color)
|
||||
138: 7(fvec4) CompositeConstruct 48 48 48 48
|
||||
139: 7(fvec4) FAdd 137 138
|
||||
Store 9(color) 139
|
||||
142: 7(fvec4) Load 9(color)
|
||||
Store 141(gl_FragColor) 142
|
||||
Branch 72
|
||||
74: Label
|
||||
136: 7(fvec4) Load 9(color)
|
||||
137: 7(fvec4) CompositeConstruct 47 47 47 47
|
||||
138: 7(fvec4) FAdd 136 137
|
||||
Store 9(color) 138
|
||||
141: 7(fvec4) Load 9(color)
|
||||
Store 140(gl_FragColor) 141
|
||||
Return
|
||||
FunctionEnd
|
||||
|
@ -1,17 +1,20 @@
|
||||
spv.matFun.vert
|
||||
Warning, version 400 is not yet complete; most version-specific features are present, but some are missing.
|
||||
|
||||
|
||||
Linked vertex stage:
|
||||
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 97
|
||||
// Id's are bound by 103
|
||||
|
||||
Capability Shader
|
||||
Capability ClipDistance
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Vertex 4 "main" 72 76 95 96
|
||||
Source GLSL 140
|
||||
EntryPoint Vertex 4 "main" 76 81
|
||||
Source GLSL 400
|
||||
Name 4 "main"
|
||||
Name 14 "xf(mf33;vf3;"
|
||||
Name 12 "m"
|
||||
@ -22,19 +25,32 @@ Linked vertex stage:
|
||||
Name 24 "m4"
|
||||
Name 25 "v"
|
||||
Name 65 "param"
|
||||
Name 72 "gl_Position"
|
||||
Name 74 "m4"
|
||||
Name 76 "v3"
|
||||
Name 77 "param"
|
||||
Name 79 "param"
|
||||
Name 83 "m3"
|
||||
Name 84 "param"
|
||||
Name 74 "gl_PerVertex"
|
||||
MemberName 74(gl_PerVertex) 0 "gl_Position"
|
||||
MemberName 74(gl_PerVertex) 1 "gl_PointSize"
|
||||
MemberName 74(gl_PerVertex) 2 "gl_ClipDistance"
|
||||
Name 76 ""
|
||||
Name 77 "bl"
|
||||
MemberName 77(bl) 0 "m4"
|
||||
MemberName 77(bl) 1 "m3"
|
||||
Name 79 "bName"
|
||||
Name 81 "v3"
|
||||
Name 82 "param"
|
||||
Name 86 "param"
|
||||
Name 95 "gl_VertexID"
|
||||
Name 96 "gl_InstanceID"
|
||||
Decorate 72(gl_Position) BuiltIn Position
|
||||
Decorate 95(gl_VertexID) BuiltIn VertexId
|
||||
Decorate 96(gl_InstanceID) BuiltIn InstanceId
|
||||
Name 89 "param"
|
||||
Name 93 "param"
|
||||
MemberDecorate 74(gl_PerVertex) 0 BuiltIn Position
|
||||
MemberDecorate 74(gl_PerVertex) 1 BuiltIn PointSize
|
||||
MemberDecorate 74(gl_PerVertex) 2 BuiltIn ClipDistance
|
||||
Decorate 74(gl_PerVertex) Block
|
||||
MemberDecorate 77(bl) 0 ColMajor
|
||||
MemberDecorate 77(bl) 0 Offset 0
|
||||
MemberDecorate 77(bl) 0 MatrixStride 16
|
||||
MemberDecorate 77(bl) 1 ColMajor
|
||||
MemberDecorate 77(bl) 1 Offset 64
|
||||
MemberDecorate 77(bl) 1 MatrixStride 16
|
||||
Decorate 77(bl) Block
|
||||
Decorate 79(bName) DescriptorSet 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@ -55,39 +71,45 @@ Linked vertex stage:
|
||||
43: 33(int) Constant 2
|
||||
47: 6(float) Constant 1065353216
|
||||
48: 6(float) Constant 0
|
||||
71: TypePointer Output 16(fvec4)
|
||||
72(gl_Position): 71(ptr) Variable Output
|
||||
73: TypePointer UniformConstant 17
|
||||
74(m4): 73(ptr) Variable UniformConstant
|
||||
75: TypePointer Input 7(fvec3)
|
||||
76(v3): 75(ptr) Variable Input
|
||||
82: TypePointer UniformConstant 8
|
||||
83(m3): 82(ptr) Variable UniformConstant
|
||||
94: TypePointer Input 33(int)
|
||||
95(gl_VertexID): 94(ptr) Variable Input
|
||||
96(gl_InstanceID): 94(ptr) Variable Input
|
||||
71: TypeInt 32 0
|
||||
72: 71(int) Constant 1
|
||||
73: TypeArray 6(float) 72
|
||||
74(gl_PerVertex): TypeStruct 16(fvec4) 6(float) 73
|
||||
75: TypePointer Output 74(gl_PerVertex)
|
||||
76: 75(ptr) Variable Output
|
||||
77(bl): TypeStruct 17 8
|
||||
78: TypePointer Uniform 77(bl)
|
||||
79(bName): 78(ptr) Variable Uniform
|
||||
80: TypePointer Input 7(fvec3)
|
||||
81(v3): 80(ptr) Variable Input
|
||||
83: TypePointer Uniform 17
|
||||
90: TypePointer Uniform 8
|
||||
101: TypePointer Output 16(fvec4)
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
77(param): 18(ptr) Variable Function
|
||||
79(param): 10(ptr) Variable Function
|
||||
84(param): 9(ptr) Variable Function
|
||||
82(param): 18(ptr) Variable Function
|
||||
86(param): 10(ptr) Variable Function
|
||||
78: 17 Load 74(m4)
|
||||
Store 77(param) 78
|
||||
80: 7(fvec3) Load 76(v3)
|
||||
Store 79(param) 80
|
||||
81: 7(fvec3) FunctionCall 26(mxv(mf44;vf3;) 77(param) 79(param)
|
||||
85: 8 Load 83(m3)
|
||||
Store 84(param) 85
|
||||
87: 7(fvec3) Load 76(v3)
|
||||
89(param): 9(ptr) Variable Function
|
||||
93(param): 10(ptr) Variable Function
|
||||
84: 83(ptr) AccessChain 79(bName) 34
|
||||
85: 17 Load 84
|
||||
Store 82(param) 85
|
||||
87: 7(fvec3) Load 81(v3)
|
||||
Store 86(param) 87
|
||||
88: 7(fvec3) FunctionCall 14(xf(mf33;vf3;) 84(param) 86(param)
|
||||
89: 7(fvec3) FAdd 81 88
|
||||
90: 6(float) CompositeExtract 89 0
|
||||
91: 6(float) CompositeExtract 89 1
|
||||
92: 6(float) CompositeExtract 89 2
|
||||
93: 16(fvec4) CompositeConstruct 90 91 92 47
|
||||
Store 72(gl_Position) 93
|
||||
88: 7(fvec3) FunctionCall 26(mxv(mf44;vf3;) 82(param) 86(param)
|
||||
91: 90(ptr) AccessChain 79(bName) 39
|
||||
92: 8 Load 91
|
||||
Store 89(param) 92
|
||||
94: 7(fvec3) Load 81(v3)
|
||||
Store 93(param) 94
|
||||
95: 7(fvec3) FunctionCall 14(xf(mf33;vf3;) 89(param) 93(param)
|
||||
96: 7(fvec3) FAdd 88 95
|
||||
97: 6(float) CompositeExtract 96 0
|
||||
98: 6(float) CompositeExtract 96 1
|
||||
99: 6(float) CompositeExtract 96 2
|
||||
100: 16(fvec4) CompositeConstruct 97 98 99 47
|
||||
102: 101(ptr) AccessChain 76 34
|
||||
Store 102 100
|
||||
Return
|
||||
FunctionEnd
|
||||
14(xf(mf33;vf3;): 7(fvec3) Function None 11
|
||||
|
@ -11,7 +11,7 @@ Linked fragment stage:
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 12 14 28 140 148 166
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 140
|
||||
Name 4 "main"
|
||||
Name 10 "sum34"
|
||||
|
@ -11,7 +11,7 @@ Linked fragment stage:
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 12 16 37 38 65 87 147 158 181 218 219 220
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 150
|
||||
Name 4 "main"
|
||||
Name 10 "m34"
|
||||
|
@ -13,7 +13,7 @@ Linked fragment stage:
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 9
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 450
|
||||
Name 4 "main"
|
||||
Name 9 "v"
|
||||
|
@ -16,7 +16,7 @@ Linked fragment stage:
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 17 26 29 55 81 84 91 247 277
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 430
|
||||
Name 4 "main"
|
||||
Name 9 "v"
|
||||
@ -49,9 +49,27 @@ Linked fragment stage:
|
||||
Name 271 "usCube"
|
||||
Name 275 "us2DArray"
|
||||
Name 277 "ic4D"
|
||||
Decorate 13(s2D) DescriptorSet 0
|
||||
Decorate 23(sCubeArrayShadow) DescriptorSet 0
|
||||
Decorate 42(s3D) DescriptorSet 0
|
||||
Decorate 51(s2DArray) DescriptorSet 0
|
||||
Decorate 64(s2DShadow) DescriptorSet 0
|
||||
Decorate 81(ic3D) Flat
|
||||
Decorate 84(ic1D) Flat
|
||||
Decorate 91(ic2D) Flat
|
||||
Decorate 100(sr) DescriptorSet 0
|
||||
Decorate 125(sCube) DescriptorSet 0
|
||||
Decorate 136(s2DArrayShadow) DescriptorSet 0
|
||||
Decorate 168(is2D) DescriptorSet 0
|
||||
Decorate 203(is3D) DescriptorSet 0
|
||||
Decorate 215(isCube) DescriptorSet 0
|
||||
Decorate 227(is2DArray) DescriptorSet 0
|
||||
Decorate 241(sCubeShadow) DescriptorSet 0
|
||||
Decorate 259(is2Dms) DescriptorSet 0
|
||||
Decorate 263(us2D) DescriptorSet 0
|
||||
Decorate 267(us3D) DescriptorSet 0
|
||||
Decorate 271(usCube) DescriptorSet 0
|
||||
Decorate 275(us2DArray) DescriptorSet 0
|
||||
Decorate 277(ic4D) Flat
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
|
@ -1,19 +1,16 @@
|
||||
spv.nonSquare.vert
|
||||
WARNING: 0:3: attribute deprecated in version 130; may be removed in future release
|
||||
WARNING: 0:4: attribute deprecated in version 130; may be removed in future release
|
||||
|
||||
|
||||
Linked vertex stage:
|
||||
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 94
|
||||
// Id's are bound by 90
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Vertex 4 "main" 12 28 55 92 93
|
||||
EntryPoint Vertex 4 "main" 12 22 28 55
|
||||
Source GLSL 140
|
||||
Name 4 "main"
|
||||
Name 9 "a"
|
||||
@ -23,11 +20,7 @@ Linked vertex stage:
|
||||
Name 22 "m32"
|
||||
Name 28 "gl_Position"
|
||||
Name 55 "v4"
|
||||
Name 92 "gl_VertexID"
|
||||
Name 93 "gl_InstanceID"
|
||||
Decorate 28(gl_Position) BuiltIn Position
|
||||
Decorate 92(gl_VertexID) BuiltIn VertexId
|
||||
Decorate 93(gl_InstanceID) BuiltIn InstanceId
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@ -39,8 +32,8 @@ Linked vertex stage:
|
||||
14: TypeMatrix 10(fvec3) 2
|
||||
15: TypePointer Function 14
|
||||
20: TypeMatrix 7(fvec2) 3
|
||||
21: TypePointer UniformConstant 20
|
||||
22(m32): 21(ptr) Variable UniformConstant
|
||||
21: TypePointer Output 20
|
||||
22(m32): 21(ptr) Variable Output
|
||||
26: TypeVector 6(float) 4
|
||||
27: TypePointer Output 26(fvec4)
|
||||
28(gl_Position): 27(ptr) Variable Output
|
||||
@ -90,10 +83,6 @@ Linked vertex stage:
|
||||
87: 6(float) Constant 1090519040
|
||||
88: 7(fvec2) ConstantComposite 86 87
|
||||
89: 79 ConstantComposite 82 84 85 88
|
||||
90: TypeInt 32 1
|
||||
91: TypePointer Input 90(int)
|
||||
92(gl_VertexID): 91(ptr) Variable Input
|
||||
93(gl_InstanceID): 91(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
9(a): 8(ptr) Variable Function
|
||||
|
@ -13,7 +13,7 @@ Linked fragment stage:
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 23 59 61 73 116
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source ESSL 310
|
||||
Name 4 "main"
|
||||
Name 12 "foo(vf3;"
|
||||
@ -106,10 +106,10 @@ Linked fragment stage:
|
||||
31: 15(bvec2) ConstantComposite 29 30
|
||||
36: TypeInt 32 1
|
||||
37: TypePointer Function 36(int)
|
||||
39: TypePointer UniformConstant 36(int)
|
||||
40(uniform_medium): 39(ptr) Variable UniformConstant
|
||||
42(uniform_high): 39(ptr) Variable UniformConstant
|
||||
48(uniform_low): 39(ptr) Variable UniformConstant
|
||||
39: TypePointer Private 36(int)
|
||||
40(uniform_medium): 39(ptr) Variable Private
|
||||
42(uniform_high): 39(ptr) Variable Private
|
||||
48(uniform_low): 39(ptr) Variable Private
|
||||
52: TypePointer Function 6(float)
|
||||
54: 6(float) Constant 1078774989
|
||||
56: 6(float) Constant 1232730691
|
||||
@ -125,8 +125,8 @@ Linked fragment stage:
|
||||
84: TypeVector 36(int) 2
|
||||
92: TypeInt 32 0
|
||||
93: 92(int) Constant 0
|
||||
103: TypePointer UniformConstant 15(bvec2)
|
||||
104(ub2): 103(ptr) Variable UniformConstant
|
||||
103: TypePointer Private 15(bvec2)
|
||||
104(ub2): 103(ptr) Variable Private
|
||||
111: 6(float) Constant 1065353216
|
||||
114(S): TypeStruct 6(float) 6(float)
|
||||
115: TypePointer Input 114(S)
|
||||
|
@ -11,7 +11,7 @@ Linked fragment stage:
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 90
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 140
|
||||
Name 4 "main"
|
||||
Name 8 "index"
|
||||
|
68
Test/baseResults/spv.pushConstant.vert.out
Normal file
68
Test/baseResults/spv.pushConstant.vert.out
Normal file
@ -0,0 +1,68 @@
|
||||
spv.pushConstant.vert
|
||||
Warning, version 400 is not yet complete; most version-specific features are present, but some are missing.
|
||||
|
||||
|
||||
Linked vertex stage:
|
||||
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 35
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Vertex 4 "main" 24
|
||||
Source GLSL 400
|
||||
Name 4 "main"
|
||||
Name 11 "Material"
|
||||
MemberName 11(Material) 0 "kind"
|
||||
MemberName 11(Material) 1 "fa"
|
||||
Name 13 "matInst"
|
||||
Name 24 "color"
|
||||
Decorate 10 ArrayStride 4
|
||||
MemberDecorate 11(Material) 0 Offset 0
|
||||
MemberDecorate 11(Material) 1 Offset 4
|
||||
Decorate 11(Material) Block
|
||||
Decorate 13(matInst) DescriptorSet 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 1
|
||||
7: TypeFloat 32
|
||||
8: TypeInt 32 0
|
||||
9: 8(int) Constant 3
|
||||
10: TypeArray 7(float) 9
|
||||
11(Material): TypeStruct 6(int) 10
|
||||
12: TypePointer PushConstant 11(Material)
|
||||
13(matInst): 12(ptr) Variable PushConstant
|
||||
14: 6(int) Constant 0
|
||||
15: TypePointer PushConstant 6(int)
|
||||
22: TypeVector 7(float) 4
|
||||
23: TypePointer Output 22(fvec4)
|
||||
24(color): 23(ptr) Variable Output
|
||||
25: 7(float) Constant 1045220557
|
||||
26: 22(fvec4) ConstantComposite 25 25 25 25
|
||||
28: 7(float) Constant 1056964608
|
||||
29: 22(fvec4) ConstantComposite 28 28 28 28
|
||||
31: 7(float) Constant 0
|
||||
32: 22(fvec4) ConstantComposite 31 31 31 31
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
16: 15(ptr) AccessChain 13(matInst) 14
|
||||
17: 6(int) Load 16
|
||||
SelectionMerge 21 None
|
||||
Switch 17 20
|
||||
case 1: 18
|
||||
case 2: 19
|
||||
20: Label
|
||||
Store 24(color) 32
|
||||
Branch 21
|
||||
18: Label
|
||||
Store 24(color) 26
|
||||
Branch 21
|
||||
19: Label
|
||||
Store 24(color) 29
|
||||
Branch 21
|
||||
21: Label
|
||||
Return
|
||||
FunctionEnd
|
@ -7,12 +7,12 @@ Linked vertex stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 25
|
||||
// Id's are bound by 21
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Vertex 4 "main" 9 11 13 15 17 19 23 24
|
||||
EntryPoint Vertex 4 "main" 9 11 13 15 17 19
|
||||
Source GLSL 430
|
||||
Name 4 "main"
|
||||
Name 9 "outVc"
|
||||
@ -21,13 +21,9 @@ Linked vertex stage:
|
||||
Name 15 "outVf"
|
||||
Name 17 "outVn"
|
||||
Name 19 "outVcn"
|
||||
Name 23 "gl_VertexID"
|
||||
Name 24 "gl_InstanceID"
|
||||
Decorate 15(outVf) Flat
|
||||
Decorate 17(outVn) NoPerspective
|
||||
Decorate 19(outVcn) NoPerspective
|
||||
Decorate 23(gl_VertexID) BuiltIn VertexId
|
||||
Decorate 24(gl_InstanceID) BuiltIn InstanceId
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@ -40,10 +36,6 @@ Linked vertex stage:
|
||||
15(outVf): 8(ptr) Variable Output
|
||||
17(outVn): 8(ptr) Variable Output
|
||||
19(outVcn): 8(ptr) Variable Output
|
||||
21: TypeInt 32 1
|
||||
22: TypePointer Input 21(int)
|
||||
23(gl_VertexID): 22(ptr) Variable Input
|
||||
24(gl_InstanceID): 22(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
12: 7(fvec4) Load 11(inV)
|
||||
|
@ -18,7 +18,7 @@ Linked fragment stage:
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main"
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 430
|
||||
Name 4 "main"
|
||||
Name 9 "lod"
|
||||
@ -46,6 +46,26 @@ Linked fragment stage:
|
||||
Name 195 "usampCubeA"
|
||||
Name 232 "sampBuf"
|
||||
Name 236 "sampRect"
|
||||
Decorate 13(samp1D) DescriptorSet 0
|
||||
Decorate 24(isamp2D) DescriptorSet 0
|
||||
Decorate 36(usamp3D) DescriptorSet 0
|
||||
Decorate 49(sampCube) DescriptorSet 0
|
||||
Decorate 59(isamp1DA) DescriptorSet 0
|
||||
Decorate 69(usamp2DA) DescriptorSet 0
|
||||
Decorate 79(isampCubeA) DescriptorSet 0
|
||||
Decorate 89(samp1Ds) DescriptorSet 0
|
||||
Decorate 99(samp2Ds) DescriptorSet 0
|
||||
Decorate 109(sampCubes) DescriptorSet 0
|
||||
Decorate 119(samp1DAs) DescriptorSet 0
|
||||
Decorate 129(samp2DAs) DescriptorSet 0
|
||||
Decorate 139(sampCubeAs) DescriptorSet 0
|
||||
Decorate 154(usamp2D) DescriptorSet 0
|
||||
Decorate 163(isamp3D) DescriptorSet 0
|
||||
Decorate 172(isampCube) DescriptorSet 0
|
||||
Decorate 186(samp2DA) DescriptorSet 0
|
||||
Decorate 195(usampCubeA) DescriptorSet 0
|
||||
Decorate 232(sampBuf) DescriptorSet 0
|
||||
Decorate 236(sampRect) DescriptorSet 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
|
427
Test/baseResults/spv.separate.frag.out
Normal file
427
Test/baseResults/spv.separate.frag.out
Normal file
@ -0,0 +1,427 @@
|
||||
spv.separate.frag
|
||||
Warning, version 400 is not yet complete; most version-specific features are present, but some are missing.
|
||||
|
||||
|
||||
Linked fragment stage:
|
||||
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 319
|
||||
|
||||
Capability Shader
|
||||
Capability SampledRect
|
||||
Capability Sampled1D
|
||||
Capability SampledCubeArray
|
||||
Capability SampledBuffer
|
||||
Capability ImageMSArray
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 11 34
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 400
|
||||
Name 4 "main"
|
||||
Name 6 "foo("
|
||||
Name 11 "color"
|
||||
Name 14 "t2d"
|
||||
Name 18 "s"
|
||||
Name 31 "t3d"
|
||||
Name 34 "i"
|
||||
Name 41 "sA"
|
||||
Name 58 "tex2D"
|
||||
Name 64 "texCube"
|
||||
Name 71 "texCubeArray"
|
||||
Name 77 "sShadow"
|
||||
Name 84 "itexCubeArray"
|
||||
Name 91 "utexCubeArray"
|
||||
Name 98 "tex1DArray"
|
||||
Name 106 "itex1DArray"
|
||||
Name 113 "utex1D"
|
||||
Name 120 "itex1D"
|
||||
Name 127 "utex1DArray"
|
||||
Name 134 "texBuffer"
|
||||
Name 146 "tex2DArray"
|
||||
Name 158 "itex2D"
|
||||
Name 165 "itex3D"
|
||||
Name 172 "itexCube"
|
||||
Name 179 "itex2DArray"
|
||||
Name 186 "utex2D"
|
||||
Name 193 "utex3D"
|
||||
Name 200 "utexCube"
|
||||
Name 207 "utex2DArray"
|
||||
Name 214 "itex2DRect"
|
||||
Name 221 "utex2DRect"
|
||||
Name 228 "itexBuffer"
|
||||
Name 235 "utexBuffer"
|
||||
Name 242 "tex2DMS"
|
||||
Name 249 "itex2DMS"
|
||||
Name 256 "utex2DMS"
|
||||
Name 263 "tex2DMSArray"
|
||||
Name 270 "itex2DMSArray"
|
||||
Name 277 "utex2DMSArray"
|
||||
Name 284 "tex1D"
|
||||
Name 294 "tex3D"
|
||||
Name 305 "tex2DRect"
|
||||
Decorate 14(t2d) DescriptorSet 0
|
||||
Decorate 18(s) DescriptorSet 0
|
||||
Decorate 31(t3d) DescriptorSet 0
|
||||
Decorate 34(i) Flat
|
||||
Decorate 41(sA) DescriptorSet 0
|
||||
Decorate 58(tex2D) DescriptorSet 0
|
||||
Decorate 64(texCube) DescriptorSet 0
|
||||
Decorate 71(texCubeArray) DescriptorSet 0
|
||||
Decorate 77(sShadow) DescriptorSet 0
|
||||
Decorate 84(itexCubeArray) DescriptorSet 0
|
||||
Decorate 91(utexCubeArray) DescriptorSet 0
|
||||
Decorate 98(tex1DArray) DescriptorSet 0
|
||||
Decorate 106(itex1DArray) DescriptorSet 0
|
||||
Decorate 113(utex1D) DescriptorSet 0
|
||||
Decorate 120(itex1D) DescriptorSet 0
|
||||
Decorate 127(utex1DArray) DescriptorSet 0
|
||||
Decorate 134(texBuffer) DescriptorSet 0
|
||||
Decorate 146(tex2DArray) DescriptorSet 0
|
||||
Decorate 158(itex2D) DescriptorSet 0
|
||||
Decorate 165(itex3D) DescriptorSet 0
|
||||
Decorate 172(itexCube) DescriptorSet 0
|
||||
Decorate 179(itex2DArray) DescriptorSet 0
|
||||
Decorate 186(utex2D) DescriptorSet 0
|
||||
Decorate 193(utex3D) DescriptorSet 0
|
||||
Decorate 200(utexCube) DescriptorSet 0
|
||||
Decorate 207(utex2DArray) DescriptorSet 0
|
||||
Decorate 214(itex2DRect) DescriptorSet 0
|
||||
Decorate 221(utex2DRect) DescriptorSet 0
|
||||
Decorate 228(itexBuffer) DescriptorSet 0
|
||||
Decorate 235(utexBuffer) DescriptorSet 0
|
||||
Decorate 242(tex2DMS) DescriptorSet 0
|
||||
Decorate 249(itex2DMS) DescriptorSet 0
|
||||
Decorate 256(utex2DMS) DescriptorSet 0
|
||||
Decorate 263(tex2DMSArray) DescriptorSet 0
|
||||
Decorate 270(itex2DMSArray) DescriptorSet 0
|
||||
Decorate 277(utex2DMSArray) DescriptorSet 0
|
||||
Decorate 284(tex1D) DescriptorSet 0
|
||||
Decorate 294(tex3D) DescriptorSet 0
|
||||
Decorate 305(tex2DRect) DescriptorSet 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
8: TypeFloat 32
|
||||
9: TypeVector 8(float) 4
|
||||
10: TypePointer Output 9(fvec4)
|
||||
11(color): 10(ptr) Variable Output
|
||||
12: TypeImage 8(float) 2D sampled format:Unknown
|
||||
13: TypePointer UniformConstant 12
|
||||
14(t2d): 13(ptr) Variable UniformConstant
|
||||
16: TypeSampler
|
||||
17: TypePointer UniformConstant 16
|
||||
18(s): 17(ptr) Variable UniformConstant
|
||||
20: TypeSampledImage 12
|
||||
22: TypeVector 8(float) 2
|
||||
23: 8(float) Constant 1056964608
|
||||
24: 22(fvec2) ConstantComposite 23 23
|
||||
26: TypeImage 8(float) 3D sampled format:Unknown
|
||||
27: TypeInt 32 0
|
||||
28: 27(int) Constant 4
|
||||
29: TypeArray 26 28
|
||||
30: TypePointer UniformConstant 29
|
||||
31(t3d): 30(ptr) Variable UniformConstant
|
||||
32: TypeInt 32 1
|
||||
33: TypePointer Input 32(int)
|
||||
34(i): 33(ptr) Variable Input
|
||||
36: TypePointer UniformConstant 26
|
||||
39: TypeArray 16 28
|
||||
40: TypePointer UniformConstant 39
|
||||
41(sA): 40(ptr) Variable UniformConstant
|
||||
42: 32(int) Constant 2
|
||||
45: TypeSampledImage 26
|
||||
47: TypeVector 8(float) 3
|
||||
48: 47(fvec3) ConstantComposite 23 23 23
|
||||
58(tex2D): 13(ptr) Variable UniformConstant
|
||||
62: TypeImage 8(float) Cube sampled format:Unknown
|
||||
63: TypePointer UniformConstant 62
|
||||
64(texCube): 63(ptr) Variable UniformConstant
|
||||
67: TypeSampledImage 62
|
||||
69: TypeImage 8(float) Cube array sampled format:Unknown
|
||||
70: TypePointer UniformConstant 69
|
||||
71(texCubeArray): 70(ptr) Variable UniformConstant
|
||||
74: TypeSampledImage 69
|
||||
77(sShadow): 17(ptr) Variable UniformConstant
|
||||
79: TypeImage 8(float) Cube depth array sampled format:Unknown
|
||||
80: TypeSampledImage 79
|
||||
82: TypeImage 32(int) Cube array sampled format:Unknown
|
||||
83: TypePointer UniformConstant 82
|
||||
84(itexCubeArray): 83(ptr) Variable UniformConstant
|
||||
87: TypeSampledImage 82
|
||||
89: TypeImage 27(int) Cube array sampled format:Unknown
|
||||
90: TypePointer UniformConstant 89
|
||||
91(utexCubeArray): 90(ptr) Variable UniformConstant
|
||||
94: TypeSampledImage 89
|
||||
96: TypeImage 8(float) 1D array sampled format:Unknown
|
||||
97: TypePointer UniformConstant 96
|
||||
98(tex1DArray): 97(ptr) Variable UniformConstant
|
||||
101: TypeImage 8(float) 1D depth array sampled format:Unknown
|
||||
102: TypeSampledImage 101
|
||||
104: TypeImage 32(int) 1D array sampled format:Unknown
|
||||
105: TypePointer UniformConstant 104
|
||||
106(itex1DArray): 105(ptr) Variable UniformConstant
|
||||
109: TypeSampledImage 104
|
||||
111: TypeImage 27(int) 1D sampled format:Unknown
|
||||
112: TypePointer UniformConstant 111
|
||||
113(utex1D): 112(ptr) Variable UniformConstant
|
||||
116: TypeSampledImage 111
|
||||
118: TypeImage 32(int) 1D sampled format:Unknown
|
||||
119: TypePointer UniformConstant 118
|
||||
120(itex1D): 119(ptr) Variable UniformConstant
|
||||
123: TypeSampledImage 118
|
||||
125: TypeImage 27(int) 1D array sampled format:Unknown
|
||||
126: TypePointer UniformConstant 125
|
||||
127(utex1DArray): 126(ptr) Variable UniformConstant
|
||||
130: TypeSampledImage 125
|
||||
132: TypeImage 8(float) Buffer sampled format:Unknown
|
||||
133: TypePointer UniformConstant 132
|
||||
134(texBuffer): 133(ptr) Variable UniformConstant
|
||||
137: TypeSampledImage 132
|
||||
141: TypeImage 8(float) Cube depth sampled format:Unknown
|
||||
142: TypeSampledImage 141
|
||||
144: TypeImage 8(float) 2D array sampled format:Unknown
|
||||
145: TypePointer UniformConstant 144
|
||||
146(tex2DArray): 145(ptr) Variable UniformConstant
|
||||
149: TypeSampledImage 144
|
||||
153: TypeImage 8(float) 2D depth array sampled format:Unknown
|
||||
154: TypeSampledImage 153
|
||||
156: TypeImage 32(int) 2D sampled format:Unknown
|
||||
157: TypePointer UniformConstant 156
|
||||
158(itex2D): 157(ptr) Variable UniformConstant
|
||||
161: TypeSampledImage 156
|
||||
163: TypeImage 32(int) 3D sampled format:Unknown
|
||||
164: TypePointer UniformConstant 163
|
||||
165(itex3D): 164(ptr) Variable UniformConstant
|
||||
168: TypeSampledImage 163
|
||||
170: TypeImage 32(int) Cube sampled format:Unknown
|
||||
171: TypePointer UniformConstant 170
|
||||
172(itexCube): 171(ptr) Variable UniformConstant
|
||||
175: TypeSampledImage 170
|
||||
177: TypeImage 32(int) 2D array sampled format:Unknown
|
||||
178: TypePointer UniformConstant 177
|
||||
179(itex2DArray): 178(ptr) Variable UniformConstant
|
||||
182: TypeSampledImage 177
|
||||
184: TypeImage 27(int) 2D sampled format:Unknown
|
||||
185: TypePointer UniformConstant 184
|
||||
186(utex2D): 185(ptr) Variable UniformConstant
|
||||
189: TypeSampledImage 184
|
||||
191: TypeImage 27(int) 3D sampled format:Unknown
|
||||
192: TypePointer UniformConstant 191
|
||||
193(utex3D): 192(ptr) Variable UniformConstant
|
||||
196: TypeSampledImage 191
|
||||
198: TypeImage 27(int) Cube sampled format:Unknown
|
||||
199: TypePointer UniformConstant 198
|
||||
200(utexCube): 199(ptr) Variable UniformConstant
|
||||
203: TypeSampledImage 198
|
||||
205: TypeImage 27(int) 2D array sampled format:Unknown
|
||||
206: TypePointer UniformConstant 205
|
||||
207(utex2DArray): 206(ptr) Variable UniformConstant
|
||||
210: TypeSampledImage 205
|
||||
212: TypeImage 32(int) Rect sampled format:Unknown
|
||||
213: TypePointer UniformConstant 212
|
||||
214(itex2DRect): 213(ptr) Variable UniformConstant
|
||||
217: TypeSampledImage 212
|
||||
219: TypeImage 27(int) Rect sampled format:Unknown
|
||||
220: TypePointer UniformConstant 219
|
||||
221(utex2DRect): 220(ptr) Variable UniformConstant
|
||||
224: TypeSampledImage 219
|
||||
226: TypeImage 32(int) Buffer sampled format:Unknown
|
||||
227: TypePointer UniformConstant 226
|
||||
228(itexBuffer): 227(ptr) Variable UniformConstant
|
||||
231: TypeSampledImage 226
|
||||
233: TypeImage 27(int) Buffer sampled format:Unknown
|
||||
234: TypePointer UniformConstant 233
|
||||
235(utexBuffer): 234(ptr) Variable UniformConstant
|
||||
238: TypeSampledImage 233
|
||||
240: TypeImage 8(float) 2D multi-sampled sampled format:Unknown
|
||||
241: TypePointer UniformConstant 240
|
||||
242(tex2DMS): 241(ptr) Variable UniformConstant
|
||||
245: TypeSampledImage 240
|
||||
247: TypeImage 32(int) 2D multi-sampled sampled format:Unknown
|
||||
248: TypePointer UniformConstant 247
|
||||
249(itex2DMS): 248(ptr) Variable UniformConstant
|
||||
252: TypeSampledImage 247
|
||||
254: TypeImage 27(int) 2D multi-sampled sampled format:Unknown
|
||||
255: TypePointer UniformConstant 254
|
||||
256(utex2DMS): 255(ptr) Variable UniformConstant
|
||||
259: TypeSampledImage 254
|
||||
261: TypeImage 8(float) 2D array multi-sampled sampled format:Unknown
|
||||
262: TypePointer UniformConstant 261
|
||||
263(tex2DMSArray): 262(ptr) Variable UniformConstant
|
||||
266: TypeSampledImage 261
|
||||
268: TypeImage 32(int) 2D array multi-sampled sampled format:Unknown
|
||||
269: TypePointer UniformConstant 268
|
||||
270(itex2DMSArray): 269(ptr) Variable UniformConstant
|
||||
273: TypeSampledImage 268
|
||||
275: TypeImage 27(int) 2D array multi-sampled sampled format:Unknown
|
||||
276: TypePointer UniformConstant 275
|
||||
277(utex2DMSArray): 276(ptr) Variable UniformConstant
|
||||
280: TypeSampledImage 275
|
||||
282: TypeImage 8(float) 1D sampled format:Unknown
|
||||
283: TypePointer UniformConstant 282
|
||||
284(tex1D): 283(ptr) Variable UniformConstant
|
||||
287: TypeSampledImage 282
|
||||
291: TypeImage 8(float) 1D depth sampled format:Unknown
|
||||
292: TypeSampledImage 291
|
||||
294(tex3D): 36(ptr) Variable UniformConstant
|
||||
300: TypeImage 8(float) 2D depth sampled format:Unknown
|
||||
301: TypeSampledImage 300
|
||||
303: TypeImage 8(float) Rect sampled format:Unknown
|
||||
304: TypePointer UniformConstant 303
|
||||
305(tex2DRect): 304(ptr) Variable UniformConstant
|
||||
308: TypeSampledImage 303
|
||||
312: TypeImage 8(float) Rect depth sampled format:Unknown
|
||||
313: TypeSampledImage 312
|
||||
317: TypeSampledImage 96
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
15: 12 Load 14(t2d)
|
||||
19: 16 Load 18(s)
|
||||
21: 20 SampledImage 15 19
|
||||
25: 9(fvec4) ImageSampleImplicitLod 21 24
|
||||
Store 11(color) 25
|
||||
35: 32(int) Load 34(i)
|
||||
37: 36(ptr) AccessChain 31(t3d) 35
|
||||
38: 26 Load 37
|
||||
43: 17(ptr) AccessChain 41(sA) 42
|
||||
44: 16 Load 43
|
||||
46: 45 SampledImage 38 44
|
||||
49: 9(fvec4) ImageSampleImplicitLod 46 48
|
||||
50: 9(fvec4) Load 11(color)
|
||||
51: 9(fvec4) FAdd 50 49
|
||||
Store 11(color) 51
|
||||
52: 12 Load 14(t2d)
|
||||
53: 16 Load 18(s)
|
||||
54: 20 SampledImage 52 53
|
||||
55: 9(fvec4) ImageSampleImplicitLod 54 24
|
||||
56: 9(fvec4) Load 11(color)
|
||||
57: 9(fvec4) FAdd 56 55
|
||||
Store 11(color) 57
|
||||
Return
|
||||
FunctionEnd
|
||||
6(foo(): 2 Function None 3
|
||||
7: Label
|
||||
59: 12 Load 58(tex2D)
|
||||
60: 16 Load 18(s)
|
||||
61: 20 SampledImage 59 60
|
||||
65: 62 Load 64(texCube)
|
||||
66: 16 Load 18(s)
|
||||
68: 67 SampledImage 65 66
|
||||
72: 69 Load 71(texCubeArray)
|
||||
73: 16 Load 18(s)
|
||||
75: 74 SampledImage 72 73
|
||||
76: 69 Load 71(texCubeArray)
|
||||
78: 16 Load 77(sShadow)
|
||||
81: 80 SampledImage 76 78
|
||||
85: 82 Load 84(itexCubeArray)
|
||||
86: 16 Load 18(s)
|
||||
88: 87 SampledImage 85 86
|
||||
92: 89 Load 91(utexCubeArray)
|
||||
93: 16 Load 18(s)
|
||||
95: 94 SampledImage 92 93
|
||||
99: 96 Load 98(tex1DArray)
|
||||
100: 16 Load 77(sShadow)
|
||||
103: 102 SampledImage 99 100
|
||||
107: 104 Load 106(itex1DArray)
|
||||
108: 16 Load 18(s)
|
||||
110: 109 SampledImage 107 108
|
||||
114: 111 Load 113(utex1D)
|
||||
115: 16 Load 18(s)
|
||||
117: 116 SampledImage 114 115
|
||||
121: 118 Load 120(itex1D)
|
||||
122: 16 Load 18(s)
|
||||
124: 123 SampledImage 121 122
|
||||
128: 125 Load 127(utex1DArray)
|
||||
129: 16 Load 18(s)
|
||||
131: 130 SampledImage 128 129
|
||||
135: 132 Load 134(texBuffer)
|
||||
136: 16 Load 18(s)
|
||||
138: 137 SampledImage 135 136
|
||||
139: 62 Load 64(texCube)
|
||||
140: 16 Load 77(sShadow)
|
||||
143: 142 SampledImage 139 140
|
||||
147: 144 Load 146(tex2DArray)
|
||||
148: 16 Load 18(s)
|
||||
150: 149 SampledImage 147 148
|
||||
151: 144 Load 146(tex2DArray)
|
||||
152: 16 Load 77(sShadow)
|
||||
155: 154 SampledImage 151 152
|
||||
159: 156 Load 158(itex2D)
|
||||
160: 16 Load 18(s)
|
||||
162: 161 SampledImage 159 160
|
||||
166: 163 Load 165(itex3D)
|
||||
167: 16 Load 18(s)
|
||||
169: 168 SampledImage 166 167
|
||||
173: 170 Load 172(itexCube)
|
||||
174: 16 Load 18(s)
|
||||
176: 175 SampledImage 173 174
|
||||
180: 177 Load 179(itex2DArray)
|
||||
181: 16 Load 18(s)
|
||||
183: 182 SampledImage 180 181
|
||||
187: 184 Load 186(utex2D)
|
||||
188: 16 Load 18(s)
|
||||
190: 189 SampledImage 187 188
|
||||
194: 191 Load 193(utex3D)
|
||||
195: 16 Load 18(s)
|
||||
197: 196 SampledImage 194 195
|
||||
201: 198 Load 200(utexCube)
|
||||
202: 16 Load 18(s)
|
||||
204: 203 SampledImage 201 202
|
||||
208: 205 Load 207(utex2DArray)
|
||||
209: 16 Load 18(s)
|
||||
211: 210 SampledImage 208 209
|
||||
215: 212 Load 214(itex2DRect)
|
||||
216: 16 Load 18(s)
|
||||
218: 217 SampledImage 215 216
|
||||
222: 219 Load 221(utex2DRect)
|
||||
223: 16 Load 18(s)
|
||||
225: 224 SampledImage 222 223
|
||||
229: 226 Load 228(itexBuffer)
|
||||
230: 16 Load 18(s)
|
||||
232: 231 SampledImage 229 230
|
||||
236: 233 Load 235(utexBuffer)
|
||||
237: 16 Load 18(s)
|
||||
239: 238 SampledImage 236 237
|
||||
243: 240 Load 242(tex2DMS)
|
||||
244: 16 Load 18(s)
|
||||
246: 245 SampledImage 243 244
|
||||
250: 247 Load 249(itex2DMS)
|
||||
251: 16 Load 18(s)
|
||||
253: 252 SampledImage 250 251
|
||||
257: 254 Load 256(utex2DMS)
|
||||
258: 16 Load 18(s)
|
||||
260: 259 SampledImage 257 258
|
||||
264: 261 Load 263(tex2DMSArray)
|
||||
265: 16 Load 18(s)
|
||||
267: 266 SampledImage 264 265
|
||||
271: 268 Load 270(itex2DMSArray)
|
||||
272: 16 Load 18(s)
|
||||
274: 273 SampledImage 271 272
|
||||
278: 275 Load 277(utex2DMSArray)
|
||||
279: 16 Load 18(s)
|
||||
281: 280 SampledImage 278 279
|
||||
285: 282 Load 284(tex1D)
|
||||
286: 16 Load 18(s)
|
||||
288: 287 SampledImage 285 286
|
||||
289: 282 Load 284(tex1D)
|
||||
290: 16 Load 77(sShadow)
|
||||
293: 292 SampledImage 289 290
|
||||
295: 26 Load 294(tex3D)
|
||||
296: 16 Load 18(s)
|
||||
297: 45 SampledImage 295 296
|
||||
298: 12 Load 58(tex2D)
|
||||
299: 16 Load 77(sShadow)
|
||||
302: 301 SampledImage 298 299
|
||||
306: 303 Load 305(tex2DRect)
|
||||
307: 16 Load 18(s)
|
||||
309: 308 SampledImage 306 307
|
||||
310: 303 Load 305(tex2DRect)
|
||||
311: 16 Load 77(sShadow)
|
||||
314: 313 SampledImage 310 311
|
||||
315: 96 Load 98(tex1DArray)
|
||||
316: 16 Load 18(s)
|
||||
318: 317 SampledImage 315 316
|
||||
Return
|
||||
FunctionEnd
|
@ -7,12 +7,12 @@ Linked vertex stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 25
|
||||
// Id's are bound by 22
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Vertex 4 "main" 9 23 24
|
||||
EntryPoint Vertex 4 "main" 9
|
||||
Source GLSL 450
|
||||
Name 4 "main"
|
||||
Name 9 "color"
|
||||
@ -20,16 +20,12 @@ Linked vertex stage:
|
||||
MemberName 10(setBuf) 0 "color"
|
||||
Name 12 "setBufInst"
|
||||
Name 21 "samp2D"
|
||||
Name 23 "gl_VertexID"
|
||||
Name 24 "gl_InstanceID"
|
||||
Decorate 10(setBuf) GLSLShared
|
||||
MemberDecorate 10(setBuf) 0 Offset 0
|
||||
Decorate 10(setBuf) BufferBlock
|
||||
Decorate 12(setBufInst) DescriptorSet 0
|
||||
Decorate 12(setBufInst) Binding 8
|
||||
Decorate 21(samp2D) DescriptorSet 4
|
||||
Decorate 21(samp2D) Binding 7
|
||||
Decorate 23(gl_VertexID) BuiltIn VertexId
|
||||
Decorate 24(gl_InstanceID) BuiltIn InstanceId
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@ -46,9 +42,6 @@ Linked vertex stage:
|
||||
19: TypeSampledImage 18
|
||||
20: TypePointer UniformConstant 19
|
||||
21(samp2D): 20(ptr) Variable UniformConstant
|
||||
22: TypePointer Input 13(int)
|
||||
23(gl_VertexID): 22(ptr) Variable Input
|
||||
24(gl_InstanceID): 22(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
16: 15(ptr) AccessChain 12(setBufInst) 14
|
||||
|
@ -12,8 +12,8 @@ Linked fragment stage:
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 9 25
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
EntryPoint Fragment 4 "main" 9 11 15 25 27 30
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 450
|
||||
Name 4 "main"
|
||||
Name 9 "icolor"
|
||||
@ -22,25 +22,29 @@ Linked fragment stage:
|
||||
Name 25 "ucolor"
|
||||
Name 27 "u3"
|
||||
Name 30 "i1"
|
||||
Decorate 11(i3) Flat
|
||||
Decorate 15(u1) Flat
|
||||
Decorate 27(u3) Flat
|
||||
Decorate 30(i1) Flat
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 1
|
||||
7: TypeVector 6(int) 3
|
||||
8: TypePointer Output 7(ivec3)
|
||||
9(icolor): 8(ptr) Variable Output
|
||||
10: TypePointer UniformConstant 7(ivec3)
|
||||
11(i3): 10(ptr) Variable UniformConstant
|
||||
10: TypePointer Input 7(ivec3)
|
||||
11(i3): 10(ptr) Variable Input
|
||||
13: TypeInt 32 0
|
||||
14: TypePointer UniformConstant 13(int)
|
||||
15(u1): 14(ptr) Variable UniformConstant
|
||||
14: TypePointer Input 13(int)
|
||||
15(u1): 14(ptr) Variable Input
|
||||
17: TypeVector 13(int) 3
|
||||
20: 13(int) Constant 4
|
||||
24: TypePointer Output 17(ivec3)
|
||||
25(ucolor): 24(ptr) Variable Output
|
||||
26: TypePointer UniformConstant 17(ivec3)
|
||||
27(u3): 26(ptr) Variable UniformConstant
|
||||
29: TypePointer UniformConstant 6(int)
|
||||
30(i1): 29(ptr) Variable UniformConstant
|
||||
26: TypePointer Input 17(ivec3)
|
||||
27(u3): 26(ptr) Variable Input
|
||||
29: TypePointer Input 6(int)
|
||||
30(i1): 29(ptr) Variable Input
|
||||
34: 6(int) Constant 5
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
|
@ -7,26 +7,28 @@ Linked fragment stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 144
|
||||
// Id's are bound by 147
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 12 24
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
EntryPoint Fragment 4 "main" 12 24 34 113 140 142
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 400
|
||||
Name 4 "main"
|
||||
Name 8 "foo("
|
||||
Name 12 "of1"
|
||||
Name 24 "of4"
|
||||
Name 27 "ub"
|
||||
Name 31 "ui"
|
||||
Name 41 "uba"
|
||||
Name 110 "uf"
|
||||
Name 137 "uiv4"
|
||||
Name 139 "uv4"
|
||||
Name 142 "ub41"
|
||||
Name 143 "ub42"
|
||||
Name 34 "ui"
|
||||
Name 44 "uba"
|
||||
Name 113 "uf"
|
||||
Name 140 "uiv4"
|
||||
Name 142 "uv4"
|
||||
Name 145 "ub41"
|
||||
Name 146 "ub42"
|
||||
Decorate 34(ui) Flat
|
||||
Decorate 140(uiv4) Flat
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeBool
|
||||
@ -41,185 +43,191 @@ Linked fragment stage:
|
||||
23: TypePointer Output 22(fvec4)
|
||||
24(of4): 23(ptr) Variable Output
|
||||
25: 22(fvec4) ConstantComposite 21 21 21 21
|
||||
26: TypePointer UniformConstant 6(bool)
|
||||
27(ub): 26(ptr) Variable UniformConstant
|
||||
29: TypeInt 32 1
|
||||
30: TypePointer UniformConstant 29(int)
|
||||
31(ui): 30(ptr) Variable UniformConstant
|
||||
33: 29(int) Constant 2
|
||||
41(uba): 26(ptr) Variable UniformConstant
|
||||
109: TypePointer UniformConstant 10(float)
|
||||
110(uf): 109(ptr) Variable UniformConstant
|
||||
113: 10(float) Constant 1082130432
|
||||
135: TypeVector 29(int) 4
|
||||
136: TypePointer UniformConstant 135(ivec4)
|
||||
137(uiv4): 136(ptr) Variable UniformConstant
|
||||
138: TypePointer UniformConstant 22(fvec4)
|
||||
139(uv4): 138(ptr) Variable UniformConstant
|
||||
140: TypeVector 6(bool) 4
|
||||
141: TypePointer UniformConstant 140(bvec4)
|
||||
142(ub41): 141(ptr) Variable UniformConstant
|
||||
143(ub42): 141(ptr) Variable UniformConstant
|
||||
26: TypePointer Private 6(bool)
|
||||
27(ub): 26(ptr) Variable Private
|
||||
32: TypeInt 32 1
|
||||
33: TypePointer Input 32(int)
|
||||
34(ui): 33(ptr) Variable Input
|
||||
36: 32(int) Constant 2
|
||||
44(uba): 26(ptr) Variable Private
|
||||
112: TypePointer Input 10(float)
|
||||
113(uf): 112(ptr) Variable Input
|
||||
116: 10(float) Constant 1082130432
|
||||
138: TypeVector 32(int) 4
|
||||
139: TypePointer Input 138(ivec4)
|
||||
140(uiv4): 139(ptr) Variable Input
|
||||
141: TypePointer Input 22(fvec4)
|
||||
142(uv4): 141(ptr) Variable Input
|
||||
143: TypeVector 6(bool) 4
|
||||
144: TypePointer Private 143(bvec4)
|
||||
145(ub41): 144(ptr) Variable Private
|
||||
146(ub42): 144(ptr) Variable Private
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
Store 12(of1) 21
|
||||
Store 24(of4) 25
|
||||
28: 6(bool) Load 27(ub)
|
||||
32: 29(int) Load 31(ui)
|
||||
34: 6(bool) SGreaterThan 32 33
|
||||
35: 6(bool) LogicalOr 28 34
|
||||
SelectionMerge 37 None
|
||||
BranchConditional 35 36 37
|
||||
36: Label
|
||||
38: 10(float) Load 12(of1)
|
||||
39: 10(float) FAdd 38 14
|
||||
Store 12(of1) 39
|
||||
Branch 37
|
||||
37: Label
|
||||
40: 6(bool) Load 27(ub)
|
||||
42: 6(bool) Load 41(uba)
|
||||
43: 6(bool) LogicalNot 42
|
||||
44: 6(bool) LogicalAnd 40 43
|
||||
SelectionMerge 46 None
|
||||
BranchConditional 44 45 46
|
||||
45: Label
|
||||
47: 10(float) Load 12(of1)
|
||||
48: 10(float) FAdd 47 14
|
||||
Store 12(of1) 48
|
||||
Branch 46
|
||||
46: Label
|
||||
49: 6(bool) Load 27(ub)
|
||||
50: 6(bool) LogicalNot 49
|
||||
SelectionMerge 52 None
|
||||
BranchConditional 50 51 52
|
||||
51: Label
|
||||
53: 6(bool) FunctionCall 8(foo()
|
||||
Branch 52
|
||||
52: Label
|
||||
54: 6(bool) Phi 49 46 53 51
|
||||
SelectionMerge 56 None
|
||||
BranchConditional 54 55 56
|
||||
29: 6(bool) LogicalNot 28
|
||||
SelectionMerge 31 None
|
||||
BranchConditional 29 30 31
|
||||
30: Label
|
||||
35: 32(int) Load 34(ui)
|
||||
37: 6(bool) SGreaterThan 35 36
|
||||
Branch 31
|
||||
31: Label
|
||||
38: 6(bool) Phi 28 5 37 30
|
||||
SelectionMerge 40 None
|
||||
BranchConditional 38 39 40
|
||||
39: Label
|
||||
41: 10(float) Load 12(of1)
|
||||
42: 10(float) FAdd 41 14
|
||||
Store 12(of1) 42
|
||||
Branch 40
|
||||
40: Label
|
||||
43: 6(bool) Load 27(ub)
|
||||
45: 6(bool) Load 44(uba)
|
||||
46: 6(bool) LogicalNot 45
|
||||
47: 6(bool) LogicalAnd 43 46
|
||||
SelectionMerge 49 None
|
||||
BranchConditional 47 48 49
|
||||
48: Label
|
||||
50: 10(float) Load 12(of1)
|
||||
51: 10(float) FAdd 50 14
|
||||
Store 12(of1) 51
|
||||
Branch 49
|
||||
49: Label
|
||||
52: 6(bool) Load 27(ub)
|
||||
53: 6(bool) LogicalNot 52
|
||||
SelectionMerge 55 None
|
||||
BranchConditional 53 54 55
|
||||
54: Label
|
||||
56: 6(bool) FunctionCall 8(foo()
|
||||
Branch 55
|
||||
55: Label
|
||||
57: 10(float) Load 12(of1)
|
||||
58: 10(float) FAdd 57 14
|
||||
Store 12(of1) 58
|
||||
Branch 56
|
||||
56: Label
|
||||
59: 6(bool) Load 27(ub)
|
||||
SelectionMerge 61 None
|
||||
BranchConditional 59 60 61
|
||||
60: Label
|
||||
62: 6(bool) FunctionCall 8(foo()
|
||||
Branch 61
|
||||
61: Label
|
||||
63: 6(bool) Phi 59 56 62 60
|
||||
SelectionMerge 65 None
|
||||
BranchConditional 63 64 65
|
||||
57: 6(bool) Phi 52 49 56 54
|
||||
SelectionMerge 59 None
|
||||
BranchConditional 57 58 59
|
||||
58: Label
|
||||
60: 10(float) Load 12(of1)
|
||||
61: 10(float) FAdd 60 14
|
||||
Store 12(of1) 61
|
||||
Branch 59
|
||||
59: Label
|
||||
62: 6(bool) Load 27(ub)
|
||||
SelectionMerge 64 None
|
||||
BranchConditional 62 63 64
|
||||
63: Label
|
||||
65: 6(bool) FunctionCall 8(foo()
|
||||
Branch 64
|
||||
64: Label
|
||||
66: 10(float) Load 12(of1)
|
||||
67: 10(float) FAdd 66 14
|
||||
Store 12(of1) 67
|
||||
Branch 65
|
||||
65: Label
|
||||
68: 6(bool) FunctionCall 8(foo()
|
||||
69: 6(bool) Load 27(ub)
|
||||
70: 6(bool) LogicalOr 68 69
|
||||
SelectionMerge 72 None
|
||||
BranchConditional 70 71 72
|
||||
71: Label
|
||||
73: 10(float) Load 12(of1)
|
||||
74: 10(float) FAdd 73 14
|
||||
Store 12(of1) 74
|
||||
Branch 72
|
||||
72: Label
|
||||
75: 6(bool) FunctionCall 8(foo()
|
||||
76: 6(bool) Load 27(ub)
|
||||
77: 6(bool) LogicalAnd 75 76
|
||||
SelectionMerge 79 None
|
||||
BranchConditional 77 78 79
|
||||
78: Label
|
||||
80: 10(float) Load 12(of1)
|
||||
81: 10(float) FAdd 80 14
|
||||
Store 12(of1) 81
|
||||
Branch 79
|
||||
79: Label
|
||||
82: 6(bool) Load 27(ub)
|
||||
83: 6(bool) LogicalNot 82
|
||||
SelectionMerge 85 None
|
||||
BranchConditional 83 84 85
|
||||
84: Label
|
||||
86: 10(float) Load 12(of1)
|
||||
87: 10(float) FAdd 86 14
|
||||
Store 12(of1) 87
|
||||
88: 6(bool) FOrdGreaterThan 87 14
|
||||
Branch 85
|
||||
85: Label
|
||||
89: 6(bool) Phi 82 79 88 84
|
||||
SelectionMerge 91 None
|
||||
BranchConditional 89 90 91
|
||||
90: Label
|
||||
92: 22(fvec4) Load 24(of4)
|
||||
93: 22(fvec4) CompositeConstruct 14 14 14 14
|
||||
94: 22(fvec4) FAdd 92 93
|
||||
Store 24(of4) 94
|
||||
Branch 91
|
||||
91: Label
|
||||
95: 10(float) Load 12(of1)
|
||||
96: 10(float) FAdd 95 14
|
||||
Store 12(of1) 96
|
||||
97: 6(bool) FOrdGreaterThan 96 14
|
||||
98: 6(bool) Load 27(ub)
|
||||
99: 6(bool) LogicalOr 97 98
|
||||
SelectionMerge 101 None
|
||||
BranchConditional 99 100 101
|
||||
100: Label
|
||||
102: 22(fvec4) Load 24(of4)
|
||||
103: 22(fvec4) CompositeConstruct 14 14 14 14
|
||||
104: 22(fvec4) FAdd 102 103
|
||||
Store 24(of4) 104
|
||||
Branch 101
|
||||
101: Label
|
||||
105: 6(bool) Load 27(ub)
|
||||
106: 6(bool) LogicalNot 105
|
||||
SelectionMerge 108 None
|
||||
BranchConditional 106 107 108
|
||||
107: Label
|
||||
111: 10(float) Load 110(uf)
|
||||
112: 10(float) ExtInst 1(GLSL.std.450) 13(Sin) 111
|
||||
114: 10(float) FMul 112 113
|
||||
115: 10(float) Load 12(of1)
|
||||
116: 6(bool) FOrdGreaterThan 114 115
|
||||
Branch 108
|
||||
108: Label
|
||||
117: 6(bool) Phi 105 101 116 107
|
||||
SelectionMerge 119 None
|
||||
BranchConditional 117 118 119
|
||||
118: Label
|
||||
120: 10(float) Load 12(of1)
|
||||
121: 10(float) FAdd 120 14
|
||||
Store 12(of1) 121
|
||||
Branch 119
|
||||
119: Label
|
||||
122: 6(bool) Load 27(ub)
|
||||
SelectionMerge 124 None
|
||||
BranchConditional 122 123 124
|
||||
123: Label
|
||||
125: 10(float) Load 110(uf)
|
||||
126: 10(float) ExtInst 1(GLSL.std.450) 13(Sin) 125
|
||||
127: 10(float) FMul 126 113
|
||||
128: 10(float) Load 12(of1)
|
||||
129: 6(bool) FOrdGreaterThan 127 128
|
||||
Branch 124
|
||||
124: Label
|
||||
130: 6(bool) Phi 122 119 129 123
|
||||
SelectionMerge 132 None
|
||||
BranchConditional 130 131 132
|
||||
131: Label
|
||||
133: 10(float) Load 12(of1)
|
||||
134: 10(float) FAdd 133 14
|
||||
Store 12(of1) 134
|
||||
Branch 132
|
||||
132: Label
|
||||
66: 6(bool) Phi 62 59 65 63
|
||||
SelectionMerge 68 None
|
||||
BranchConditional 66 67 68
|
||||
67: Label
|
||||
69: 10(float) Load 12(of1)
|
||||
70: 10(float) FAdd 69 14
|
||||
Store 12(of1) 70
|
||||
Branch 68
|
||||
68: Label
|
||||
71: 6(bool) FunctionCall 8(foo()
|
||||
72: 6(bool) Load 27(ub)
|
||||
73: 6(bool) LogicalOr 71 72
|
||||
SelectionMerge 75 None
|
||||
BranchConditional 73 74 75
|
||||
74: Label
|
||||
76: 10(float) Load 12(of1)
|
||||
77: 10(float) FAdd 76 14
|
||||
Store 12(of1) 77
|
||||
Branch 75
|
||||
75: Label
|
||||
78: 6(bool) FunctionCall 8(foo()
|
||||
79: 6(bool) Load 27(ub)
|
||||
80: 6(bool) LogicalAnd 78 79
|
||||
SelectionMerge 82 None
|
||||
BranchConditional 80 81 82
|
||||
81: Label
|
||||
83: 10(float) Load 12(of1)
|
||||
84: 10(float) FAdd 83 14
|
||||
Store 12(of1) 84
|
||||
Branch 82
|
||||
82: Label
|
||||
85: 6(bool) Load 27(ub)
|
||||
86: 6(bool) LogicalNot 85
|
||||
SelectionMerge 88 None
|
||||
BranchConditional 86 87 88
|
||||
87: Label
|
||||
89: 10(float) Load 12(of1)
|
||||
90: 10(float) FAdd 89 14
|
||||
Store 12(of1) 90
|
||||
91: 6(bool) FOrdGreaterThan 90 14
|
||||
Branch 88
|
||||
88: Label
|
||||
92: 6(bool) Phi 85 82 91 87
|
||||
SelectionMerge 94 None
|
||||
BranchConditional 92 93 94
|
||||
93: Label
|
||||
95: 22(fvec4) Load 24(of4)
|
||||
96: 22(fvec4) CompositeConstruct 14 14 14 14
|
||||
97: 22(fvec4) FAdd 95 96
|
||||
Store 24(of4) 97
|
||||
Branch 94
|
||||
94: Label
|
||||
98: 10(float) Load 12(of1)
|
||||
99: 10(float) FAdd 98 14
|
||||
Store 12(of1) 99
|
||||
100: 6(bool) FOrdGreaterThan 99 14
|
||||
101: 6(bool) Load 27(ub)
|
||||
102: 6(bool) LogicalOr 100 101
|
||||
SelectionMerge 104 None
|
||||
BranchConditional 102 103 104
|
||||
103: Label
|
||||
105: 22(fvec4) Load 24(of4)
|
||||
106: 22(fvec4) CompositeConstruct 14 14 14 14
|
||||
107: 22(fvec4) FAdd 105 106
|
||||
Store 24(of4) 107
|
||||
Branch 104
|
||||
104: Label
|
||||
108: 6(bool) Load 27(ub)
|
||||
109: 6(bool) LogicalNot 108
|
||||
SelectionMerge 111 None
|
||||
BranchConditional 109 110 111
|
||||
110: Label
|
||||
114: 10(float) Load 113(uf)
|
||||
115: 10(float) ExtInst 1(GLSL.std.450) 13(Sin) 114
|
||||
117: 10(float) FMul 115 116
|
||||
118: 10(float) Load 12(of1)
|
||||
119: 6(bool) FOrdGreaterThan 117 118
|
||||
Branch 111
|
||||
111: Label
|
||||
120: 6(bool) Phi 108 104 119 110
|
||||
SelectionMerge 122 None
|
||||
BranchConditional 120 121 122
|
||||
121: Label
|
||||
123: 10(float) Load 12(of1)
|
||||
124: 10(float) FAdd 123 14
|
||||
Store 12(of1) 124
|
||||
Branch 122
|
||||
122: Label
|
||||
125: 6(bool) Load 27(ub)
|
||||
SelectionMerge 127 None
|
||||
BranchConditional 125 126 127
|
||||
126: Label
|
||||
128: 10(float) Load 113(uf)
|
||||
129: 10(float) ExtInst 1(GLSL.std.450) 13(Sin) 128
|
||||
130: 10(float) FMul 129 116
|
||||
131: 10(float) Load 12(of1)
|
||||
132: 6(bool) FOrdGreaterThan 130 131
|
||||
Branch 127
|
||||
127: Label
|
||||
133: 6(bool) Phi 125 122 132 126
|
||||
SelectionMerge 135 None
|
||||
BranchConditional 133 134 135
|
||||
134: Label
|
||||
136: 10(float) Load 12(of1)
|
||||
137: 10(float) FAdd 136 14
|
||||
Store 12(of1) 137
|
||||
Branch 135
|
||||
135: Label
|
||||
Return
|
||||
FunctionEnd
|
||||
8(foo(): 6(bool) Function None 7
|
||||
|
@ -5,20 +5,18 @@ Linked fragment stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 23
|
||||
// Id's are bound by 19
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 12 17
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 150
|
||||
Name 4 "main"
|
||||
Name 9 "foo("
|
||||
Name 12 "BaseColor"
|
||||
Name 17 "gl_FragColor"
|
||||
Name 20 "bigColor"
|
||||
Name 22 "d"
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@ -28,10 +26,6 @@ Linked fragment stage:
|
||||
12(BaseColor): 11(ptr) Variable Input
|
||||
16: TypePointer Output 7(fvec4)
|
||||
17(gl_FragColor): 16(ptr) Variable Output
|
||||
19: TypePointer UniformConstant 7(fvec4)
|
||||
20(bigColor): 19(ptr) Variable UniformConstant
|
||||
21: TypePointer UniformConstant 6(float)
|
||||
22(d): 21(ptr) Variable UniformConstant
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
18: 7(fvec4) FunctionCall 9(foo()
|
||||
|
@ -1,16 +1,18 @@
|
||||
spv.simpleMat.vert
|
||||
WARNING: 0:3: varying deprecated in version 130; may be removed in future release
|
||||
|
||||
|
||||
Linked vertex stage:
|
||||
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 42
|
||||
// Id's are bound by 39
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Vertex 4 "main" 9 15 19 23 34 40 41
|
||||
EntryPoint Vertex 4 "main" 9 12 15 19 23 34
|
||||
Source GLSL 330
|
||||
Name 4 "main"
|
||||
Name 9 "glPos"
|
||||
@ -19,10 +21,6 @@ Linked vertex stage:
|
||||
Name 19 "f"
|
||||
Name 23 "am3"
|
||||
Name 34 "arraym"
|
||||
Name 40 "gl_VertexID"
|
||||
Name 41 "gl_InstanceID"
|
||||
Decorate 40(gl_VertexID) BuiltIn VertexId
|
||||
Decorate 41(gl_InstanceID) BuiltIn InstanceId
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@ -30,8 +28,8 @@ Linked vertex stage:
|
||||
8: TypePointer Output 7(fvec4)
|
||||
9(glPos): 8(ptr) Variable Output
|
||||
10: TypeMatrix 7(fvec4) 4
|
||||
11: TypePointer UniformConstant 10
|
||||
12(mvp): 11(ptr) Variable UniformConstant
|
||||
11: TypePointer Output 10
|
||||
12(mvp): 11(ptr) Variable Output
|
||||
14: TypePointer Input 7(fvec4)
|
||||
15(v): 14(ptr) Variable Input
|
||||
18: TypePointer Output 6(float)
|
||||
@ -50,9 +48,6 @@ Linked vertex stage:
|
||||
33: TypePointer Input 32
|
||||
34(arraym): 33(ptr) Variable Input
|
||||
35: 24(int) Constant 1
|
||||
39: TypePointer Input 24(int)
|
||||
40(gl_VertexID): 39(ptr) Variable Input
|
||||
41(gl_InstanceID): 39(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
13: 10 Load 12(mvp)
|
||||
|
@ -15,8 +15,8 @@ Linked fragment stage:
|
||||
Capability SampledCubeArray
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 384
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
EntryPoint Fragment 4 "main" 33 48 89 360 384
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 450
|
||||
SourceExtension "GL_ARB_sparse_texture2"
|
||||
Name 4 "main"
|
||||
@ -45,6 +45,19 @@ Linked fragment stage:
|
||||
Name 289 "s2DRectShadow"
|
||||
Name 360 "offsets"
|
||||
Name 384 "outColor"
|
||||
Decorate 29(s2D) DescriptorSet 0
|
||||
Decorate 44(s3D) DescriptorSet 0
|
||||
Decorate 59(isCube) DescriptorSet 0
|
||||
Decorate 71(s2DShadow) DescriptorSet 0
|
||||
Decorate 86(sCubeArrayShadow) DescriptorSet 0
|
||||
Decorate 108(usCubeArray) DescriptorSet 0
|
||||
Decorate 140(us2DRect) DescriptorSet 0
|
||||
Decorate 154(s2DArrayShadow) DescriptorSet 0
|
||||
Decorate 186(s2DMS) DescriptorSet 0
|
||||
Decorate 223(is2DArray) DescriptorSet 0
|
||||
Decorate 256(sCubeShadow) DescriptorSet 0
|
||||
Decorate 289(s2DRectShadow) DescriptorSet 0
|
||||
Decorate 360(offsets) Flat
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 1
|
||||
@ -68,16 +81,16 @@ Linked fragment stage:
|
||||
28: TypePointer UniformConstant 27
|
||||
29(s2D): 28(ptr) Variable UniformConstant
|
||||
31: TypeVector 10(float) 2
|
||||
32: TypePointer UniformConstant 31(fvec2)
|
||||
33(c2): 32(ptr) Variable UniformConstant
|
||||
32: TypePointer Input 31(fvec2)
|
||||
33(c2): 32(ptr) Variable Input
|
||||
35(ResType): TypeStruct 6(int) 11(fvec4)
|
||||
41: TypeImage 10(float) 3D sampled format:Unknown
|
||||
42: TypeSampledImage 41
|
||||
43: TypePointer UniformConstant 42
|
||||
44(s3D): 43(ptr) Variable UniformConstant
|
||||
46: TypeVector 10(float) 3
|
||||
47: TypePointer UniformConstant 46(fvec3)
|
||||
48(c3): 47(ptr) Variable UniformConstant
|
||||
47: TypePointer Input 46(fvec3)
|
||||
48(c3): 47(ptr) Variable Input
|
||||
50: 10(float) Constant 1073741824
|
||||
56: TypeImage 6(int) Cube sampled format:Unknown
|
||||
57: TypeSampledImage 56
|
||||
@ -94,8 +107,8 @@ Linked fragment stage:
|
||||
84: TypeSampledImage 83
|
||||
85: TypePointer UniformConstant 84
|
||||
86(sCubeArrayShadow): 85(ptr) Variable UniformConstant
|
||||
88: TypePointer UniformConstant 11(fvec4)
|
||||
89(c4): 88(ptr) Variable UniformConstant
|
||||
88: TypePointer Input 11(fvec4)
|
||||
89(c4): 88(ptr) Variable Input
|
||||
91: 10(float) Constant 1065353216
|
||||
105: TypeImage 20(int) Cube array sampled format:Unknown
|
||||
106: TypeSampledImage 105
|
||||
@ -147,8 +160,8 @@ Linked fragment stage:
|
||||
335: 143(ivec2) ConstantComposite 190 190
|
||||
357: 20(int) Constant 4
|
||||
358: TypeArray 143(ivec2) 357
|
||||
359: TypePointer UniformConstant 358
|
||||
360(offsets): 359(ptr) Variable UniformConstant
|
||||
359: TypePointer Input 358
|
||||
360(offsets): 359(ptr) Variable Input
|
||||
383: TypePointer Output 11(fvec4)
|
||||
384(outColor): 383(ptr) Variable Output
|
||||
387: TypeBool
|
||||
|
@ -16,8 +16,8 @@ Linked fragment stage:
|
||||
Capability SampledCubeArray
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 345
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
EntryPoint Fragment 4 "main" 33 36 51 95 345
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 450
|
||||
SourceExtension "GL_ARB_sparse_texture_clamp"
|
||||
Name 4 "main"
|
||||
@ -45,6 +45,17 @@ Linked fragment stage:
|
||||
Name 286 "s2DRectShadow"
|
||||
Name 305 "is2DArray"
|
||||
Name 345 "outColor"
|
||||
Decorate 29(s2D) DescriptorSet 0
|
||||
Decorate 47(s3D) DescriptorSet 0
|
||||
Decorate 63(isCube) DescriptorSet 0
|
||||
Decorate 76(s2DShadow) DescriptorSet 0
|
||||
Decorate 92(sCubeArrayShadow) DescriptorSet 0
|
||||
Decorate 154(us2DRect) DescriptorSet 0
|
||||
Decorate 170(s2DArrayShadow) DescriptorSet 0
|
||||
Decorate 218(sCubeShadow) DescriptorSet 0
|
||||
Decorate 235(usCubeArray) DescriptorSet 0
|
||||
Decorate 286(s2DRectShadow) DescriptorSet 0
|
||||
Decorate 305(is2DArray) DescriptorSet 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 1
|
||||
@ -68,18 +79,18 @@ Linked fragment stage:
|
||||
28: TypePointer UniformConstant 27
|
||||
29(s2D): 28(ptr) Variable UniformConstant
|
||||
31: TypeVector 10(float) 2
|
||||
32: TypePointer UniformConstant 31(fvec2)
|
||||
33(c2): 32(ptr) Variable UniformConstant
|
||||
35: TypePointer UniformConstant 10(float)
|
||||
36(lodClamp): 35(ptr) Variable UniformConstant
|
||||
32: TypePointer Input 31(fvec2)
|
||||
33(c2): 32(ptr) Variable Input
|
||||
35: TypePointer Input 10(float)
|
||||
36(lodClamp): 35(ptr) Variable Input
|
||||
38(ResType): TypeStruct 6(int) 11(fvec4)
|
||||
44: TypeImage 10(float) 3D sampled format:Unknown
|
||||
45: TypeSampledImage 44
|
||||
46: TypePointer UniformConstant 45
|
||||
47(s3D): 46(ptr) Variable UniformConstant
|
||||
49: TypeVector 10(float) 3
|
||||
50: TypePointer UniformConstant 49(fvec3)
|
||||
51(c3): 50(ptr) Variable UniformConstant
|
||||
50: TypePointer Input 49(fvec3)
|
||||
51(c3): 50(ptr) Variable Input
|
||||
54: 10(float) Constant 1073741824
|
||||
60: TypeImage 6(int) Cube sampled format:Unknown
|
||||
61: TypeSampledImage 60
|
||||
@ -96,8 +107,8 @@ Linked fragment stage:
|
||||
90: TypeSampledImage 89
|
||||
91: TypePointer UniformConstant 90
|
||||
92(sCubeArrayShadow): 91(ptr) Variable UniformConstant
|
||||
94: TypePointer UniformConstant 11(fvec4)
|
||||
95(c4): 94(ptr) Variable UniformConstant
|
||||
94: TypePointer Input 11(fvec4)
|
||||
95(c4): 94(ptr) Variable Input
|
||||
97: 10(float) Constant 1065353216
|
||||
142: TypeVector 6(int) 3
|
||||
143: 6(int) Constant 2
|
||||
|
55
Test/baseResults/spv.specConstant.comp.out
Normal file
55
Test/baseResults/spv.specConstant.comp.out
Normal file
@ -0,0 +1,55 @@
|
||||
spv.specConstant.comp
|
||||
Warning, version 450 is not yet complete; most version-specific features are present, but some are missing.
|
||||
|
||||
|
||||
Linked compute stage:
|
||||
|
||||
|
||||
// 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 GLCompute 4 "main"
|
||||
ExecutionMode 4 LocalSize 32 32 1
|
||||
Source GLSL 450
|
||||
Name 4 "main"
|
||||
Name 7 "bn"
|
||||
MemberName 7(bn) 0 "a"
|
||||
Name 9 "bi"
|
||||
MemberDecorate 7(bn) 0 Offset 0
|
||||
Decorate 7(bn) BufferBlock
|
||||
Decorate 9(bi) DescriptorSet 0
|
||||
Decorate 12 SpecId 18
|
||||
Decorate 14 SpecId 19
|
||||
Decorate 16 BuiltIn WorkgroupSize
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 0
|
||||
7(bn): TypeStruct 6(int)
|
||||
8: TypePointer Uniform 7(bn)
|
||||
9(bi): 8(ptr) Variable Uniform
|
||||
10: TypeInt 32 1
|
||||
11: 10(int) Constant 0
|
||||
12: 6(int) SpecConstant 32
|
||||
13: 6(int) Constant 32
|
||||
14: 6(int) SpecConstant 1
|
||||
15: TypeVector 6(int) 3
|
||||
16: 15(ivec3) SpecConstantComposite 12 13 14
|
||||
17: 6(int) Constant 0
|
||||
19: 6(int) Constant 1
|
||||
22: 6(int) Constant 2
|
||||
25: TypePointer Uniform 6(int)
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
18: 6(int) CompositeExtract 16 0
|
||||
20: 6(int) CompositeExtract 16 1
|
||||
21: 6(int) IMul 18 20
|
||||
23: 6(int) CompositeExtract 16 2
|
||||
24: 6(int) IMul 21 23
|
||||
26: 25(ptr) AccessChain 9(bi) 11
|
||||
Store 26 24
|
||||
Return
|
||||
FunctionEnd
|
124
Test/baseResults/spv.specConstant.vert.out
Normal file
124
Test/baseResults/spv.specConstant.vert.out
Normal file
@ -0,0 +1,124 @@
|
||||
spv.specConstant.vert
|
||||
Warning, version 400 is not yet complete; most version-specific features are present, but some are missing.
|
||||
|
||||
|
||||
Linked vertex stage:
|
||||
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 72
|
||||
|
||||
Capability Shader
|
||||
Capability Float64
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Vertex 4 "main" 17 19 25 50
|
||||
Source GLSL 400
|
||||
Name 4 "main"
|
||||
Name 14 "foo(vf4[s1498];"
|
||||
Name 13 "p"
|
||||
Name 17 "color"
|
||||
Name 19 "ucol"
|
||||
Name 25 "size"
|
||||
Name 44 "param"
|
||||
Name 50 "dupUcol"
|
||||
Decorate 9 SpecId 16
|
||||
Decorate 27 SpecId 17
|
||||
Decorate 31 SpecId 22
|
||||
Decorate 36 SpecId 19
|
||||
Decorate 37 SpecId 18
|
||||
Decorate 47 SpecId 116
|
||||
Decorate 57 SpecId 117
|
||||
Decorate 60 SpecId 122
|
||||
Decorate 64 SpecId 119
|
||||
Decorate 65 SpecId 118
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
7: TypeVector 6(float) 4
|
||||
8: TypeInt 32 1
|
||||
9: 8(int) SpecConstant 5
|
||||
10: TypeArray 7(fvec4) 9
|
||||
11: TypePointer Function 10
|
||||
12: TypeFunction 2 11(ptr)
|
||||
16: TypePointer Output 7(fvec4)
|
||||
17(color): 16(ptr) Variable Output
|
||||
18: TypePointer Input 10
|
||||
19(ucol): 18(ptr) Variable Input
|
||||
20: 8(int) Constant 2
|
||||
21: TypePointer Input 7(fvec4)
|
||||
24: TypePointer Output 8(int)
|
||||
25(size): 24(ptr) Variable Output
|
||||
26: TypeBool
|
||||
27: 26(bool) SpecConstantTrue
|
||||
30: TypeInt 32 0
|
||||
31: 30(int) SpecConstant 2
|
||||
35: TypeFloat 64
|
||||
36: 35(float) SpecConstant 1413754136 1074340347
|
||||
37: 6(float) SpecConstant 1078523331
|
||||
47: 8(int) SpecConstant 12
|
||||
48: TypeArray 7(fvec4) 47
|
||||
49: TypePointer Input 48
|
||||
50(dupUcol): 49(ptr) Variable Input
|
||||
57: 26(bool) SpecConstantTrue
|
||||
60: 30(int) SpecConstant 2
|
||||
64: 35(float) SpecConstant 1413754136 1074340347
|
||||
65: 6(float) SpecConstant 1078523331
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
44(param): 11(ptr) Variable Function
|
||||
22: 21(ptr) AccessChain 19(ucol) 20
|
||||
23: 7(fvec4) Load 22
|
||||
Store 17(color) 23
|
||||
Store 25(size) 9
|
||||
SelectionMerge 29 None
|
||||
BranchConditional 27 28 29
|
||||
28: Label
|
||||
32: 6(float) ConvertUToF 31
|
||||
33: 7(fvec4) Load 17(color)
|
||||
34: 7(fvec4) VectorTimesScalar 33 32
|
||||
Store 17(color) 34
|
||||
Branch 29
|
||||
29: Label
|
||||
38: 35(float) FConvert 37
|
||||
39: 35(float) FDiv 36 38
|
||||
40: 6(float) FConvert 39
|
||||
41: 7(fvec4) Load 17(color)
|
||||
42: 7(fvec4) CompositeConstruct 40 40 40 40
|
||||
43: 7(fvec4) FAdd 41 42
|
||||
Store 17(color) 43
|
||||
45: 10 Load 19(ucol)
|
||||
Store 44(param) 45
|
||||
46: 2 FunctionCall 14(foo(vf4[s1498];) 44(param)
|
||||
Return
|
||||
FunctionEnd
|
||||
14(foo(vf4[s1498];): 2 Function None 12
|
||||
13(p): 11(ptr) FunctionParameter
|
||||
15: Label
|
||||
51: 21(ptr) AccessChain 50(dupUcol) 20
|
||||
52: 7(fvec4) Load 51
|
||||
53: 7(fvec4) Load 17(color)
|
||||
54: 7(fvec4) FAdd 53 52
|
||||
Store 17(color) 54
|
||||
55: 8(int) Load 25(size)
|
||||
56: 8(int) IAdd 55 47
|
||||
Store 25(size) 56
|
||||
SelectionMerge 59 None
|
||||
BranchConditional 57 58 59
|
||||
58: Label
|
||||
61: 6(float) ConvertUToF 60
|
||||
62: 7(fvec4) Load 17(color)
|
||||
63: 7(fvec4) VectorTimesScalar 62 61
|
||||
Store 17(color) 63
|
||||
Branch 59
|
||||
59: Label
|
||||
66: 35(float) FConvert 65
|
||||
67: 35(float) FDiv 64 66
|
||||
68: 6(float) FConvert 67
|
||||
69: 7(fvec4) Load 17(color)
|
||||
70: 7(fvec4) CompositeConstruct 68 68 68 68
|
||||
71: 7(fvec4) FAdd 69 70
|
||||
Store 17(color) 71
|
||||
Return
|
||||
FunctionEnd
|
@ -11,7 +11,7 @@ Linked fragment stage:
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 31 44
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 140
|
||||
Name 4 "main"
|
||||
Name 8 "lunarStruct1"
|
||||
@ -33,6 +33,7 @@ Linked fragment stage:
|
||||
Name 40 "samp2D"
|
||||
Name 44 "coord"
|
||||
Name 49 "foo"
|
||||
Decorate 40(samp2D) DescriptorSet 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 1
|
||||
@ -40,14 +41,14 @@ Linked fragment stage:
|
||||
8(lunarStruct1): TypeStruct 6(int) 7(float)
|
||||
9(lunarStruct2): TypeStruct 6(int) 7(float) 8(lunarStruct1)
|
||||
10(lunarStruct3): TypeStruct 9(lunarStruct2) 6(int) 7(float) 8(lunarStruct1)
|
||||
11: TypePointer UniformConstant 10(lunarStruct3)
|
||||
12(foo3): 11(ptr) Variable UniformConstant
|
||||
11: TypePointer Private 10(lunarStruct3)
|
||||
12(foo3): 11(ptr) Variable Private
|
||||
13: 6(int) Constant 0
|
||||
14: TypePointer UniformConstant 6(int)
|
||||
14: TypePointer Private 6(int)
|
||||
17: TypeBool
|
||||
21: TypePointer Function 9(lunarStruct2)
|
||||
23: TypePointer UniformConstant 9(lunarStruct2)
|
||||
27(foo2): 23(ptr) Variable UniformConstant
|
||||
23: TypePointer Private 9(lunarStruct2)
|
||||
27(foo2): 23(ptr) Variable Private
|
||||
29: TypeVector 7(float) 4
|
||||
30: TypePointer Output 29(fvec4)
|
||||
31(gl_FragColor): 30(ptr) Variable Output
|
||||
@ -61,8 +62,8 @@ Linked fragment stage:
|
||||
42: TypeVector 7(float) 2
|
||||
43: TypePointer Input 42(fvec2)
|
||||
44(coord): 43(ptr) Variable Input
|
||||
48: TypePointer UniformConstant 8(lunarStruct1)
|
||||
49(foo): 48(ptr) Variable UniformConstant
|
||||
48: TypePointer Private 8(lunarStruct1)
|
||||
49(foo): 48(ptr) Variable Private
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
22(locals2): 21(ptr) Variable Function
|
||||
|
@ -11,7 +11,7 @@ Linked fragment stage:
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 61 99
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 140
|
||||
Name 4 "main"
|
||||
Name 8 "s0"
|
||||
@ -44,6 +44,7 @@ Linked fragment stage:
|
||||
Name 99 "gl_FragColor"
|
||||
Name 116 "samp2D"
|
||||
Name 122 "foo2"
|
||||
Decorate 116(samp2D) DescriptorSet 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 1
|
||||
@ -55,11 +56,11 @@ Linked fragment stage:
|
||||
12: 11(int) Constant 12
|
||||
13: TypeArray 10(s2) 12
|
||||
14(s3): TypeStruct 13 6(int) 7(float) 9(s1)
|
||||
15: TypePointer UniformConstant 14(s3)
|
||||
16(foo3): 15(ptr) Variable UniformConstant
|
||||
15: TypePointer Private 14(s3)
|
||||
16(foo3): 15(ptr) Variable Private
|
||||
17: 6(int) Constant 0
|
||||
18: 6(int) Constant 9
|
||||
19: TypePointer UniformConstant 6(int)
|
||||
19: TypePointer Private 6(int)
|
||||
22: TypeBool
|
||||
26: TypePointer Function 10(s2)
|
||||
28: 6(int) Constant 1
|
||||
@ -78,8 +79,8 @@ Linked fragment stage:
|
||||
44: TypeArray 9(s1) 43
|
||||
45: TypePointer Function 44
|
||||
47: 6(int) Constant 6
|
||||
48: TypePointer UniformConstant 9(s1)
|
||||
49(foo1): 48(ptr) Variable UniformConstant
|
||||
48: TypePointer Private 9(s1)
|
||||
49(foo1): 48(ptr) Variable Private
|
||||
52: TypePointer Function 8(s0)
|
||||
54(s00): TypeStruct 8(s0)
|
||||
55: TypePointer Function 54(s00)
|
||||
@ -90,15 +91,15 @@ Linked fragment stage:
|
||||
62: 11(int) Constant 0
|
||||
63: TypePointer Input 7(float)
|
||||
67: 11(int) Constant 1
|
||||
70: TypePointer UniformConstant 8(s0)
|
||||
71(foo0): 70(ptr) Variable UniformConstant
|
||||
70: TypePointer Private 8(s0)
|
||||
71(foo0): 70(ptr) Variable Private
|
||||
75: 7(float) Constant 1073741824
|
||||
76: 7(float) Constant 1077936128
|
||||
77: 7(float) Constant 1082130432
|
||||
78: 7(float) Constant 1084227584
|
||||
79: 38 ConstantComposite 41 29 75 76 77 78
|
||||
85: TypePointer UniformConstant 54(s00)
|
||||
86(foo00): 85(ptr) Variable UniformConstant
|
||||
85: TypePointer Private 54(s00)
|
||||
86(foo00): 85(ptr) Variable Private
|
||||
88: TypePointer Function 6(int)
|
||||
91: 6(int) Constant 5
|
||||
97: TypeVector 7(float) 4
|
||||
@ -109,8 +110,8 @@ Linked fragment stage:
|
||||
114: TypeSampledImage 113
|
||||
115: TypePointer UniformConstant 114
|
||||
116(samp2D): 115(ptr) Variable UniformConstant
|
||||
121: TypePointer UniformConstant 10(s2)
|
||||
122(foo2): 121(ptr) Variable UniformConstant
|
||||
121: TypePointer Private 10(s2)
|
||||
122(foo2): 121(ptr) Variable Private
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
27(locals2): 26(ptr) Variable Function
|
||||
|
@ -11,7 +11,7 @@ Linked fragment stage:
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 45 54
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 140
|
||||
Name 4 "main"
|
||||
Name 8 "scale"
|
||||
@ -28,6 +28,7 @@ Linked fragment stage:
|
||||
Name 50 "samp2D"
|
||||
Name 54 "coord"
|
||||
Name 59 "foo"
|
||||
Decorate 50(samp2D) DescriptorSet 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@ -46,16 +47,16 @@ Linked fragment stage:
|
||||
20: TypeArray 18(lunarStruct1) 19
|
||||
21(lunarStruct2): TypeStruct 13 6(float) 20
|
||||
22: TypeArray 21(lunarStruct2) 12
|
||||
23: TypePointer UniformConstant 22
|
||||
24(foo2): 23(ptr) Variable UniformConstant
|
||||
23: TypePointer Private 22
|
||||
24(foo2): 23(ptr) Variable Private
|
||||
25: 10(int) Constant 3
|
||||
26: 10(int) Constant 0
|
||||
27: 10(int) Constant 4
|
||||
28: TypePointer UniformConstant 10(int)
|
||||
28: TypePointer Private 10(int)
|
||||
31: TypeBool
|
||||
35: 10(int) Constant 2
|
||||
36: 11(int) Constant 0
|
||||
37: TypePointer UniformConstant 6(float)
|
||||
37: TypePointer Private 6(float)
|
||||
41: 10(int) Constant 1
|
||||
44: TypePointer Output 16(fvec4)
|
||||
45(gl_FragColor): 44(ptr) Variable Output
|
||||
@ -66,8 +67,8 @@ Linked fragment stage:
|
||||
52: TypeVector 6(float) 2
|
||||
53: TypePointer Input 52(fvec2)
|
||||
54(coord): 53(ptr) Variable Input
|
||||
58: TypePointer UniformConstant 18(lunarStruct1)
|
||||
59(foo): 58(ptr) Variable UniformConstant
|
||||
58: TypePointer Private 18(lunarStruct1)
|
||||
59(foo): 58(ptr) Variable Private
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
8(scale): 7(ptr) Variable Function
|
||||
|
123
Test/baseResults/spv.subpass.frag.out
Normal file
123
Test/baseResults/spv.subpass.frag.out
Normal file
@ -0,0 +1,123 @@
|
||||
spv.subpass.frag
|
||||
Warning, version 400 is not yet complete; most version-specific features are present, but some are missing.
|
||||
|
||||
|
||||
Linked fragment stage:
|
||||
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 70
|
||||
|
||||
Capability Shader
|
||||
Capability InputAttachment
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 15 27 54
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 400
|
||||
Name 4 "main"
|
||||
Name 11 "foo(iIPM1;"
|
||||
Name 10 "sb"
|
||||
Name 15 "icolor"
|
||||
Name 27 "color"
|
||||
Name 30 "sub"
|
||||
Name 35 "subMS"
|
||||
Name 42 "isub"
|
||||
Name 46 "isubMS"
|
||||
Name 54 "ucolor"
|
||||
Name 57 "usub"
|
||||
Name 62 "usubMS"
|
||||
Name 67 "param"
|
||||
Decorate 30(sub) DescriptorSet 0
|
||||
Decorate 30(sub) InputAttachmentIndex 1
|
||||
Decorate 35(subMS) DescriptorSet 0
|
||||
Decorate 35(subMS) InputAttachmentIndex 2
|
||||
Decorate 42(isub) DescriptorSet 0
|
||||
Decorate 42(isub) InputAttachmentIndex 3
|
||||
Decorate 46(isubMS) DescriptorSet 0
|
||||
Decorate 46(isubMS) InputAttachmentIndex 4
|
||||
Decorate 57(usub) DescriptorSet 0
|
||||
Decorate 57(usub) InputAttachmentIndex 5
|
||||
Decorate 62(usubMS) DescriptorSet 0
|
||||
Decorate 62(usubMS) InputAttachmentIndex 6
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 1
|
||||
7: TypeImage 6(int) SubpassData multi-sampled nonsampled format:Unknown
|
||||
8: TypePointer Function 7
|
||||
9: TypeFunction 2 8(ptr)
|
||||
13: TypeVector 6(int) 4
|
||||
14: TypePointer Output 13(ivec4)
|
||||
15(icolor): 14(ptr) Variable Output
|
||||
17: 6(int) Constant 3
|
||||
18: 6(int) Constant 0
|
||||
19: TypeVector 6(int) 2
|
||||
20: 19(ivec2) ConstantComposite 18 18
|
||||
24: TypeFloat 32
|
||||
25: TypeVector 24(float) 4
|
||||
26: TypePointer Output 25(fvec4)
|
||||
27(color): 26(ptr) Variable Output
|
||||
28: TypeImage 24(float) SubpassData nonsampled format:Unknown
|
||||
29: TypePointer UniformConstant 28
|
||||
30(sub): 29(ptr) Variable UniformConstant
|
||||
33: TypeImage 24(float) SubpassData multi-sampled nonsampled format:Unknown
|
||||
34: TypePointer UniformConstant 33
|
||||
35(subMS): 34(ptr) Variable UniformConstant
|
||||
40: TypeImage 6(int) SubpassData nonsampled format:Unknown
|
||||
41: TypePointer UniformConstant 40
|
||||
42(isub): 41(ptr) Variable UniformConstant
|
||||
45: TypePointer UniformConstant 7
|
||||
46(isubMS): 45(ptr) Variable UniformConstant
|
||||
51: TypeInt 32 0
|
||||
52: TypeVector 51(int) 4
|
||||
53: TypePointer Output 52(ivec4)
|
||||
54(ucolor): 53(ptr) Variable Output
|
||||
55: TypeImage 51(int) SubpassData nonsampled format:Unknown
|
||||
56: TypePointer UniformConstant 55
|
||||
57(usub): 56(ptr) Variable UniformConstant
|
||||
60: TypeImage 51(int) SubpassData multi-sampled nonsampled format:Unknown
|
||||
61: TypePointer UniformConstant 60
|
||||
62(usubMS): 61(ptr) Variable UniformConstant
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
67(param): 8(ptr) Variable Function
|
||||
31: 28 Load 30(sub)
|
||||
32: 25(fvec4) ImageRead 31 20
|
||||
Store 27(color) 32
|
||||
36: 33 Load 35(subMS)
|
||||
37: 25(fvec4) ImageRead 36 20 Sample 17
|
||||
38: 25(fvec4) Load 27(color)
|
||||
39: 25(fvec4) FAdd 38 37
|
||||
Store 27(color) 39
|
||||
43: 40 Load 42(isub)
|
||||
44: 13(ivec4) ImageRead 43 20
|
||||
Store 15(icolor) 44
|
||||
47: 7 Load 46(isubMS)
|
||||
48: 13(ivec4) ImageRead 47 20 Sample 17
|
||||
49: 13(ivec4) Load 15(icolor)
|
||||
50: 13(ivec4) IAdd 49 48
|
||||
Store 15(icolor) 50
|
||||
58: 55 Load 57(usub)
|
||||
59: 52(ivec4) ImageRead 58 20
|
||||
Store 54(ucolor) 59
|
||||
63: 60 Load 62(usubMS)
|
||||
64: 52(ivec4) ImageRead 63 20 Sample 17
|
||||
65: 52(ivec4) Load 54(ucolor)
|
||||
66: 52(ivec4) IAdd 65 64
|
||||
Store 54(ucolor) 66
|
||||
68: 7 Load 46(isubMS)
|
||||
Store 67(param) 68
|
||||
69: 2 FunctionCall 11(foo(iIPM1;) 67(param)
|
||||
Return
|
||||
FunctionEnd
|
||||
11(foo(iIPM1;): 2 Function None 9
|
||||
10(sb): 8(ptr) FunctionParameter
|
||||
12: Label
|
||||
16: 7 Load 10(sb)
|
||||
21: 13(ivec4) ImageRead 16 20 Sample 17
|
||||
22: 13(ivec4) Load 15(icolor)
|
||||
23: 13(ivec4) IAdd 22 21
|
||||
Store 15(icolor) 23
|
||||
Return
|
||||
FunctionEnd
|
@ -15,8 +15,8 @@ Linked fragment stage:
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 75 227
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
EntryPoint Fragment 4 "main" 62 75 129 227 233
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source ESSL 310
|
||||
Name 4 "main"
|
||||
Name 15 "foo1(vf4;vf4;i1;"
|
||||
@ -64,6 +64,7 @@ Linked fragment stage:
|
||||
Decorate 55 RelaxedPrecision
|
||||
Decorate 60(local) RelaxedPrecision
|
||||
Decorate 62(c) RelaxedPrecision
|
||||
Decorate 62(c) Flat
|
||||
Decorate 63 RelaxedPrecision
|
||||
Decorate 64 RelaxedPrecision
|
||||
Decorate 66 RelaxedPrecision
|
||||
@ -104,6 +105,7 @@ Linked fragment stage:
|
||||
Decorate 126 RelaxedPrecision
|
||||
Decorate 127 RelaxedPrecision
|
||||
Decorate 129(d) RelaxedPrecision
|
||||
Decorate 129(d) Flat
|
||||
Decorate 130 RelaxedPrecision
|
||||
Decorate 134 RelaxedPrecision
|
||||
Decorate 135 RelaxedPrecision
|
||||
@ -185,13 +187,13 @@ Linked fragment stage:
|
||||
37: 7(fvec4) ConstantComposite 36 36 36 36
|
||||
48: 6(float) Constant 1065353216
|
||||
49: 7(fvec4) ConstantComposite 48 48 48 48
|
||||
61: TypePointer UniformConstant 9(int)
|
||||
62(c): 61(ptr) Variable UniformConstant
|
||||
61: TypePointer Input 9(int)
|
||||
62(c): 61(ptr) Variable Input
|
||||
65: 9(int) Constant 1
|
||||
72: TypePointer Function 6(float)
|
||||
74: TypePointer Input 6(float)
|
||||
75(x): 74(ptr) Variable Input
|
||||
129(d): 61(ptr) Variable UniformConstant
|
||||
129(d): 61(ptr) Variable Input
|
||||
156: 9(int) Constant 0
|
||||
163: 9(int) Constant 10
|
||||
164: TypeBool
|
||||
@ -201,8 +203,8 @@ Linked fragment stage:
|
||||
208: 6(float) Constant 1079739679
|
||||
226: TypePointer Output 6(float)
|
||||
227(color): 226(ptr) Variable Output
|
||||
232: TypePointer UniformConstant 7(fvec4)
|
||||
233(v): 232(ptr) Variable UniformConstant
|
||||
232: TypePointer Input 7(fvec4)
|
||||
233(v): 232(ptr) Variable Input
|
||||
241: TypeInt 32 0
|
||||
242: 241(int) Constant 1
|
||||
253: 241(int) Constant 2
|
||||
|
@ -5,13 +5,13 @@ Linked fragment stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 109
|
||||
// Id's are bound by 108
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 30 69
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
EntryPoint Fragment 4 "main" 14 30 69 107
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 140
|
||||
Name 4 "main"
|
||||
Name 8 "blendscale"
|
||||
@ -27,7 +27,7 @@ Linked fragment stage:
|
||||
Name 69 "gl_FragColor"
|
||||
Name 81 "c"
|
||||
Name 83 "rep"
|
||||
Name 108 "blend"
|
||||
Name 107 "blend"
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@ -35,8 +35,8 @@ Linked fragment stage:
|
||||
9: 6(float) Constant 1071971828
|
||||
10: TypeVector 6(float) 4
|
||||
11: TypePointer Function 10(fvec4)
|
||||
13: TypePointer UniformConstant 10(fvec4)
|
||||
14(u): 13(ptr) Variable UniformConstant
|
||||
13: TypePointer Input 10(fvec4)
|
||||
14(u): 13(ptr) Variable Input
|
||||
25: TypeInt 32 0
|
||||
26: 25(int) Constant 2
|
||||
28: TypeVector 6(float) 2
|
||||
@ -45,8 +45,8 @@ Linked fragment stage:
|
||||
35: 25(int) Constant 0
|
||||
40: 25(int) Constant 1
|
||||
54: TypeBool
|
||||
55: TypePointer UniformConstant 54(bool)
|
||||
56(p): 55(ptr) Variable UniformConstant
|
||||
55: TypePointer Private 54(bool)
|
||||
56(p): 55(ptr) Variable Private
|
||||
60: TypePointer Input 6(float)
|
||||
68: TypePointer Output 10(fvec4)
|
||||
69(gl_FragColor): 68(ptr) Variable Output
|
||||
@ -56,8 +56,7 @@ Linked fragment stage:
|
||||
86: 10(fvec4) ConstantComposite 84 84 84 85
|
||||
92: 6(float) Constant 3212836864
|
||||
102: 6(float) Constant 1079613850
|
||||
107: TypePointer UniformConstant 6(float)
|
||||
108(blend): 107(ptr) Variable UniformConstant
|
||||
107(blend): 60(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
8(blendscale): 7(ptr) Variable Function
|
||||
|
@ -7,26 +7,28 @@ Linked fragment stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 56
|
||||
// Id's are bound by 55
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 20 38 44
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
EntryPoint Fragment 4 "main" 20 22 37 43 46 49
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 400
|
||||
Name 4 "main"
|
||||
Name 8 "blendscale"
|
||||
Name 12 "v"
|
||||
Name 16 "texSampler2D"
|
||||
Name 20 "t"
|
||||
Name 23 "scale"
|
||||
Name 30 "w"
|
||||
Name 34 "texSampler3D"
|
||||
Name 38 "coords"
|
||||
Name 44 "gl_FragColor"
|
||||
Name 47 "u"
|
||||
Name 50 "blend"
|
||||
Name 22 "scale"
|
||||
Name 29 "w"
|
||||
Name 33 "texSampler3D"
|
||||
Name 37 "coords"
|
||||
Name 43 "gl_FragColor"
|
||||
Name 46 "u"
|
||||
Name 49 "blend"
|
||||
Decorate 16(texSampler2D) DescriptorSet 0
|
||||
Decorate 33(texSampler3D) DescriptorSet 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@ -41,49 +43,48 @@ Linked fragment stage:
|
||||
18: TypeVector 6(float) 2
|
||||
19: TypePointer Input 18(fvec2)
|
||||
20(t): 19(ptr) Variable Input
|
||||
22: TypePointer UniformConstant 18(fvec2)
|
||||
23(scale): 22(ptr) Variable UniformConstant
|
||||
31: TypeImage 6(float) 3D sampled format:Unknown
|
||||
32: TypeSampledImage 31
|
||||
33: TypePointer UniformConstant 32
|
||||
34(texSampler3D): 33(ptr) Variable UniformConstant
|
||||
36: TypeVector 6(float) 3
|
||||
37: TypePointer Input 36(fvec3)
|
||||
38(coords): 37(ptr) Variable Input
|
||||
43: TypePointer Output 10(fvec4)
|
||||
44(gl_FragColor): 43(ptr) Variable Output
|
||||
46: TypePointer UniformConstant 10(fvec4)
|
||||
47(u): 46(ptr) Variable UniformConstant
|
||||
49: TypePointer UniformConstant 6(float)
|
||||
50(blend): 49(ptr) Variable UniformConstant
|
||||
22(scale): 19(ptr) Variable Input
|
||||
30: TypeImage 6(float) 3D sampled format:Unknown
|
||||
31: TypeSampledImage 30
|
||||
32: TypePointer UniformConstant 31
|
||||
33(texSampler3D): 32(ptr) Variable UniformConstant
|
||||
35: TypeVector 6(float) 3
|
||||
36: TypePointer Input 35(fvec3)
|
||||
37(coords): 36(ptr) Variable Input
|
||||
42: TypePointer Output 10(fvec4)
|
||||
43(gl_FragColor): 42(ptr) Variable Output
|
||||
45: TypePointer Input 10(fvec4)
|
||||
46(u): 45(ptr) Variable Input
|
||||
48: TypePointer Input 6(float)
|
||||
49(blend): 48(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
8(blendscale): 7(ptr) Variable Function
|
||||
12(v): 11(ptr) Variable Function
|
||||
30(w): 11(ptr) Variable Function
|
||||
29(w): 11(ptr) Variable Function
|
||||
Store 8(blendscale) 9
|
||||
17: 14 Load 16(texSampler2D)
|
||||
21: 18(fvec2) Load 20(t)
|
||||
24: 18(fvec2) Load 23(scale)
|
||||
25: 18(fvec2) FAdd 21 24
|
||||
26: 18(fvec2) Load 23(scale)
|
||||
27: 18(fvec2) FDiv 25 26
|
||||
28: 10(fvec4) ImageSampleImplicitLod 17 27
|
||||
29: 10(fvec4) VectorShuffle 28 28 3 2 1 0
|
||||
Store 12(v) 29
|
||||
35: 32 Load 34(texSampler3D)
|
||||
39: 36(fvec3) Load 38(coords)
|
||||
40: 10(fvec4) ImageSampleImplicitLod 35 39
|
||||
41: 10(fvec4) Load 12(v)
|
||||
42: 10(fvec4) FAdd 40 41
|
||||
Store 30(w) 42
|
||||
45: 10(fvec4) Load 30(w)
|
||||
48: 10(fvec4) Load 47(u)
|
||||
51: 6(float) Load 50(blend)
|
||||
52: 6(float) Load 8(blendscale)
|
||||
53: 6(float) FMul 51 52
|
||||
54: 10(fvec4) CompositeConstruct 53 53 53 53
|
||||
55: 10(fvec4) ExtInst 1(GLSL.std.450) 46(FMix) 45 48 54
|
||||
Store 44(gl_FragColor) 55
|
||||
23: 18(fvec2) Load 22(scale)
|
||||
24: 18(fvec2) FAdd 21 23
|
||||
25: 18(fvec2) Load 22(scale)
|
||||
26: 18(fvec2) FDiv 24 25
|
||||
27: 10(fvec4) ImageSampleImplicitLod 17 26
|
||||
28: 10(fvec4) VectorShuffle 27 27 3 2 1 0
|
||||
Store 12(v) 28
|
||||
34: 31 Load 33(texSampler3D)
|
||||
38: 35(fvec3) Load 37(coords)
|
||||
39: 10(fvec4) ImageSampleImplicitLod 34 38
|
||||
40: 10(fvec4) Load 12(v)
|
||||
41: 10(fvec4) FAdd 39 40
|
||||
Store 29(w) 41
|
||||
44: 10(fvec4) Load 29(w)
|
||||
47: 10(fvec4) Load 46(u)
|
||||
50: 6(float) Load 49(blend)
|
||||
51: 6(float) Load 8(blendscale)
|
||||
52: 6(float) FMul 50 51
|
||||
53: 10(fvec4) CompositeConstruct 52 52 52 52
|
||||
54: 10(fvec4) ExtInst 1(GLSL.std.450) 46(FMix) 44 47 53
|
||||
Store 43(gl_FragColor) 54
|
||||
Return
|
||||
FunctionEnd
|
||||
|
@ -7,12 +7,12 @@ Linked vertex stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 28
|
||||
// Id's are bound by 24
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Vertex 4 "main" 9 11 15 21 26 27
|
||||
EntryPoint Vertex 4 "main" 9 11 15 18 21
|
||||
Source GLSL 140
|
||||
Name 4 "main"
|
||||
Name 9 "uv"
|
||||
@ -20,11 +20,7 @@ Linked vertex stage:
|
||||
Name 15 "gl_Position"
|
||||
Name 18 "transform"
|
||||
Name 21 "position"
|
||||
Name 26 "gl_VertexID"
|
||||
Name 27 "gl_InstanceID"
|
||||
Decorate 15(gl_Position) BuiltIn Position
|
||||
Decorate 26(gl_VertexID) BuiltIn VertexId
|
||||
Decorate 27(gl_InstanceID) BuiltIn InstanceId
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@ -37,14 +33,10 @@ Linked vertex stage:
|
||||
14: TypePointer Output 13(fvec4)
|
||||
15(gl_Position): 14(ptr) Variable Output
|
||||
16: TypeMatrix 13(fvec4) 4
|
||||
17: TypePointer UniformConstant 16
|
||||
18(transform): 17(ptr) Variable UniformConstant
|
||||
17: TypePointer Input 16
|
||||
18(transform): 17(ptr) Variable Input
|
||||
20: TypePointer Input 13(fvec4)
|
||||
21(position): 20(ptr) Variable Input
|
||||
24: TypeInt 32 1
|
||||
25: TypePointer Input 24(int)
|
||||
26(gl_VertexID): 25(ptr) Variable Input
|
||||
27(gl_InstanceID): 25(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
12: 7(fvec2) Load 11(uv_in)
|
||||
|
@ -1,18 +1,22 @@
|
||||
spv.texture.frag
|
||||
WARNING: 0:10: varying deprecated in version 130; may be removed in future release
|
||||
WARNING: 0:11: varying deprecated in version 130; may be removed in future release
|
||||
WARNING: 0:12: varying deprecated in version 130; may be removed in future release
|
||||
|
||||
|
||||
Linked fragment stage:
|
||||
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 291
|
||||
// Id's are bound by 290
|
||||
|
||||
Capability Shader
|
||||
Capability Sampled1D
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 47 276 290
|
||||
ExecutionMode 4 OriginLowerLeft
|
||||
EntryPoint Fragment 4 "main" 47 276 279 282 288 289
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 140
|
||||
Name 4 "main"
|
||||
Name 8 "blendscale"
|
||||
@ -37,8 +41,14 @@ Linked fragment stage:
|
||||
Name 276 "gl_FragColor"
|
||||
Name 279 "u"
|
||||
Name 282 "blend"
|
||||
Name 289 "scale"
|
||||
Name 290 "t"
|
||||
Name 288 "scale"
|
||||
Name 289 "t"
|
||||
Decorate 32(texSampler1D) DescriptorSet 0
|
||||
Decorate 72(texSampler2D) DescriptorSet 0
|
||||
Decorate 98(texSampler3D) DescriptorSet 0
|
||||
Decorate 124(texSamplerCube) DescriptorSet 0
|
||||
Decorate 139(shadowSampler1D) DescriptorSet 0
|
||||
Decorate 158(shadowSampler2D) DescriptorSet 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@ -97,13 +107,12 @@ Linked fragment stage:
|
||||
251: 205(ivec2) ConstantComposite 249 250
|
||||
275: TypePointer Output 22(fvec4)
|
||||
276(gl_FragColor): 275(ptr) Variable Output
|
||||
278: TypePointer UniformConstant 22(fvec4)
|
||||
279(u): 278(ptr) Variable UniformConstant
|
||||
281: TypePointer UniformConstant 6(float)
|
||||
282(blend): 281(ptr) Variable UniformConstant
|
||||
288: TypePointer UniformConstant 45(fvec2)
|
||||
289(scale): 288(ptr) Variable UniformConstant
|
||||
290(t): 46(ptr) Variable Input
|
||||
278: TypePointer Input 22(fvec4)
|
||||
279(u): 278(ptr) Variable Input
|
||||
281: TypePointer Input 6(float)
|
||||
282(blend): 281(ptr) Variable Input
|
||||
288(scale): 46(ptr) Variable Input
|
||||
289(t): 46(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
8(blendscale): 7(ptr) Variable Function
|
||||
|
@ -5,13 +5,13 @@ Linked vertex stage:
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 146
|
||||
// Id's are bound by 142
|
||||
|
||||
Capability Shader
|
||||
Capability Sampled1D
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Vertex 4 "main" 39 140 144 145
|
||||
EntryPoint Vertex 4 "main" 39 140
|
||||
Source GLSL 140
|
||||
Name 4 "main"
|
||||
Name 8 "lod"
|
||||
@ -27,11 +27,13 @@ Linked vertex stage:
|
||||
Name 102 "shadowSampler1D"
|
||||
Name 114 "shadowSampler2D"
|
||||
Name 140 "gl_Position"
|
||||
Name 144 "gl_VertexID"
|
||||
Name 145 "gl_InstanceID"
|
||||
Decorate 29(texSampler1D) DescriptorSet 0
|
||||
Decorate 54(texSampler2D) DescriptorSet 0
|
||||
Decorate 76(texSampler3D) DescriptorSet 0
|
||||
Decorate 92(texSamplerCube) DescriptorSet 0
|
||||
Decorate 102(shadowSampler1D) DescriptorSet 0
|
||||
Decorate 114(shadowSampler2D) DescriptorSet 0
|
||||
Decorate 140(gl_Position) BuiltIn Position
|
||||
Decorate 144(gl_VertexID) BuiltIn VertexId
|
||||
Decorate 145(gl_InstanceID) BuiltIn InstanceId
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@ -78,10 +80,6 @@ Linked vertex stage:
|
||||
114(shadowSampler2D): 113(ptr) Variable UniformConstant
|
||||
139: TypePointer Output 18(fvec4)
|
||||
140(gl_Position): 139(ptr) Variable Output
|
||||
142: TypeInt 32 1
|
||||
143: TypePointer Input 142(int)
|
||||
144(gl_VertexID): 143(ptr) Variable Input
|
||||
145(gl_InstanceID): 143(ptr) Variable Input
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
8(lod): 7(ptr) Variable Function
|
||||
|
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