Merge branch 'master' into textureQueryLOD
This commit is contained in:
commit
a40e4ac3f7
14
BUILD.bazel
14
BUILD.bazel
@ -49,6 +49,11 @@ py_binary(
|
|||||||
srcs = ["build_info.py"],
|
srcs = ["build_info.py"],
|
||||||
)
|
)
|
||||||
|
|
||||||
|
py_binary(
|
||||||
|
name = "gen_extension_headers",
|
||||||
|
srcs = ["gen_extension_headers.py"],
|
||||||
|
)
|
||||||
|
|
||||||
genrule(
|
genrule(
|
||||||
name = "gen_build_info_h",
|
name = "gen_build_info_h",
|
||||||
srcs = ["CHANGES.md", "build_info.h.tmpl"],
|
srcs = ["CHANGES.md", "build_info.h.tmpl"],
|
||||||
@ -58,6 +63,14 @@ genrule(
|
|||||||
tools = [":build_info"],
|
tools = [":build_info"],
|
||||||
)
|
)
|
||||||
|
|
||||||
|
genrule(
|
||||||
|
name = "gen_extension_headers_h",
|
||||||
|
srcs = ["glslang/ExtensionHeaders", "gen_extension_headers.py"],
|
||||||
|
outs = ["glslang/glsl_intrinsic_header.h"],
|
||||||
|
cmd_bash = "$(location gen_extension_headers) -i $(location glslang/ExtensionHeaders) -o $(location glslang/glsl_intrinsic_header.h)",
|
||||||
|
tools = [":gen_extension_headers"],
|
||||||
|
)
|
||||||
|
|
||||||
COMMON_COPTS = select({
|
COMMON_COPTS = select({
|
||||||
"@bazel_tools//src/conditions:windows": [""],
|
"@bazel_tools//src/conditions:windows": [""],
|
||||||
"//conditions:default": [
|
"//conditions:default": [
|
||||||
@ -206,6 +219,7 @@ cc_binary(
|
|||||||
srcs = [
|
srcs = [
|
||||||
"StandAlone/StandAlone.cpp",
|
"StandAlone/StandAlone.cpp",
|
||||||
"StandAlone/Worklist.h",
|
"StandAlone/Worklist.h",
|
||||||
|
":glslang/glsl_intrinsic_header.h"
|
||||||
],
|
],
|
||||||
copts = COMMON_COPTS,
|
copts = COMMON_COPTS,
|
||||||
deps = [
|
deps = [
|
||||||
|
18
BUILD.gn
18
BUILD.gn
@ -69,6 +69,23 @@ action("glslang_build_info") {
|
|||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
action("glslang_extension_headers") {
|
||||||
|
script = "gen_extension_headers.py"
|
||||||
|
|
||||||
|
out_file = "${target_gen_dir}/include/glslang/glsl_intrinsic_header.h"
|
||||||
|
|
||||||
|
inputs = [
|
||||||
|
script
|
||||||
|
]
|
||||||
|
outputs = [ out_file ]
|
||||||
|
args = [
|
||||||
|
"-i",
|
||||||
|
rebase_path("glslang/ExtensionHeaders", root_build_dir),
|
||||||
|
"-o",
|
||||||
|
rebase_path(out_file, root_build_dir),
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
spirv_tools_dir = glslang_spirv_tools_dir
|
spirv_tools_dir = glslang_spirv_tools_dir
|
||||||
if (!defined(glslang_angle)) {
|
if (!defined(glslang_angle)) {
|
||||||
glslang_angle = false
|
glslang_angle = false
|
||||||
@ -302,6 +319,7 @@ executable("glslang_validator") {
|
|||||||
":glslang_build_info",
|
":glslang_build_info",
|
||||||
":glslang_default_resource_limits_sources",
|
":glslang_default_resource_limits_sources",
|
||||||
":glslang_sources",
|
":glslang_sources",
|
||||||
|
":glslang_extension_headers",
|
||||||
]
|
]
|
||||||
public_configs = [ ":glslang_hlsl" ]
|
public_configs = [ ":glslang_hlsl" ]
|
||||||
|
|
||||||
|
16
CHANGES.md
16
CHANGES.md
@ -3,6 +3,22 @@
|
|||||||
All notable changes to this project will be documented in this file.
|
All notable changes to this project will be documented in this file.
|
||||||
This project adheres to [Semantic Versioning](https://semver.org/).
|
This project adheres to [Semantic Versioning](https://semver.org/).
|
||||||
|
|
||||||
|
## 11.7.0 2021-11-11
|
||||||
|
|
||||||
|
### Other changes
|
||||||
|
* Add support for targeting Vulkan 1.2 in the C API
|
||||||
|
|
||||||
|
## 11.6.0 2021-08-25
|
||||||
|
|
||||||
|
### Other changes
|
||||||
|
* Atomic memory function only for shader storage block member or shared variable
|
||||||
|
* Add support for gl_MaxVaryingVectors for ogl
|
||||||
|
* Fix loading bool arrays from interface blocks
|
||||||
|
* Generate separate stores for partially swizzled memory stores
|
||||||
|
* Allow layout(std430) uniform with GL_EXT_scalar_block_layout
|
||||||
|
* Support for pragma STDGL invariant(all)
|
||||||
|
* Support for GL_NV_ray_tracing_motion_blur
|
||||||
|
|
||||||
## 11.5.0 2021-06-23
|
## 11.5.0 2021-06-23
|
||||||
|
|
||||||
### Other changes
|
### Other changes
|
||||||
|
@ -118,7 +118,7 @@ if(USE_CCACHE)
|
|||||||
find_program(CCACHE_FOUND ccache)
|
find_program(CCACHE_FOUND ccache)
|
||||||
if(CCACHE_FOUND)
|
if(CCACHE_FOUND)
|
||||||
set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE ccache)
|
set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE ccache)
|
||||||
endif(CCACHE_FOUND)
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(ENABLE_CTEST)
|
if(ENABLE_CTEST)
|
||||||
@ -127,26 +127,27 @@ endif()
|
|||||||
|
|
||||||
if(ENABLE_HLSL)
|
if(ENABLE_HLSL)
|
||||||
add_definitions(-DENABLE_HLSL)
|
add_definitions(-DENABLE_HLSL)
|
||||||
endif(ENABLE_HLSL)
|
endif()
|
||||||
|
|
||||||
if(ENABLE_GLSLANG_WEBMIN)
|
if(ENABLE_GLSLANG_WEBMIN)
|
||||||
add_definitions(-DGLSLANG_WEB)
|
add_definitions(-DGLSLANG_WEB)
|
||||||
if(ENABLE_GLSLANG_WEBMIN_DEVEL)
|
if(ENABLE_GLSLANG_WEBMIN_DEVEL)
|
||||||
add_definitions(-DGLSLANG_WEB_DEVEL)
|
add_definitions(-DGLSLANG_WEB_DEVEL)
|
||||||
endif(ENABLE_GLSLANG_WEBMIN_DEVEL)
|
endif()
|
||||||
endif(ENABLE_GLSLANG_WEBMIN)
|
endif()
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(CMAKE_DEBUG_POSTFIX "d")
|
set(CMAKE_DEBUG_POSTFIX "d")
|
||||||
if(MSVC)
|
option(OVERRIDE_MSVCCRT "Overrides runtime of MSVC " ON)
|
||||||
|
if(MSVC AND OVERRIDE_MSVCCRT)
|
||||||
include(ChooseMSVCCRT.cmake)
|
include(ChooseMSVCCRT.cmake)
|
||||||
endif(MSVC)
|
endif()
|
||||||
add_definitions(-DGLSLANG_OSINCLUDE_WIN32)
|
add_definitions(-DGLSLANG_OSINCLUDE_WIN32)
|
||||||
elseif(UNIX)
|
elseif(UNIX)
|
||||||
add_definitions(-DGLSLANG_OSINCLUDE_UNIX)
|
add_definitions(-DGLSLANG_OSINCLUDE_UNIX)
|
||||||
else(WIN32)
|
else()
|
||||||
message("unknown platform")
|
message("unknown platform")
|
||||||
endif(WIN32)
|
endif()
|
||||||
|
|
||||||
if(${CMAKE_CXX_COMPILER_ID} MATCHES "GNU")
|
if(${CMAKE_CXX_COMPILER_ID} MATCHES "GNU")
|
||||||
add_compile_options(-Wall -Wmaybe-uninitialized -Wuninitialized -Wunused -Wunused-local-typedefs
|
add_compile_options(-Wall -Wmaybe-uninitialized -Wuninitialized -Wunused -Wunused-local-typedefs
|
||||||
@ -197,7 +198,7 @@ elseif(MSVC)
|
|||||||
if(ENABLE_EXCEPTIONS)
|
if(ENABLE_EXCEPTIONS)
|
||||||
add_compile_options(/EHsc) # Enable Exceptions
|
add_compile_options(/EHsc) # Enable Exceptions
|
||||||
else()
|
else()
|
||||||
string(REGEX REPLACE /EHsc "" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS}) # Try to remove default /EHsc cxx_flag
|
string(REGEX REPLACE "/EHsc" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}") # Try to remove default /EHsc cxx_flag
|
||||||
add_compile_options(/D_HAS_EXCEPTIONS=0)
|
add_compile_options(/D_HAS_EXCEPTIONS=0)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
@ -212,7 +213,7 @@ if(ENABLE_GLSLANG_JS)
|
|||||||
add_compile_options(-Wno-unused-variable -Wno-unused-const-variable)
|
add_compile_options(-Wno-unused-variable -Wno-unused-const-variable)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
endif(ENABLE_GLSLANG_JS)
|
endif()
|
||||||
|
|
||||||
# Request C++11
|
# Request C++11
|
||||||
if(${CMAKE_VERSION} VERSION_LESS 3.1)
|
if(${CMAKE_VERSION} VERSION_LESS 3.1)
|
||||||
@ -328,7 +329,7 @@ endif()
|
|||||||
add_subdirectory(SPIRV)
|
add_subdirectory(SPIRV)
|
||||||
if(ENABLE_HLSL)
|
if(ENABLE_HLSL)
|
||||||
add_subdirectory(hlsl)
|
add_subdirectory(hlsl)
|
||||||
endif(ENABLE_HLSL)
|
endif()
|
||||||
if(ENABLE_CTEST)
|
if(ENABLE_CTEST)
|
||||||
add_subdirectory(gtests)
|
add_subdirectory(gtests)
|
||||||
endif()
|
endif()
|
||||||
@ -345,11 +346,11 @@ if(ENABLE_CTEST AND BUILD_TESTING)
|
|||||||
set(RESULTS_PATH ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION>/localResults)
|
set(RESULTS_PATH ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION>/localResults)
|
||||||
set(VALIDATOR_PATH ${CMAKE_CURRENT_BINARY_DIR}/StandAlone/$<CONFIGURATION>/glslangValidator)
|
set(VALIDATOR_PATH ${CMAKE_CURRENT_BINARY_DIR}/StandAlone/$<CONFIGURATION>/glslangValidator)
|
||||||
set(REMAP_PATH ${CMAKE_CURRENT_BINARY_DIR}/StandAlone/$<CONFIGURATION>/spirv-remap)
|
set(REMAP_PATH ${CMAKE_CURRENT_BINARY_DIR}/StandAlone/$<CONFIGURATION>/spirv-remap)
|
||||||
else(CMAKE_CONFIGURATION_TYPES)
|
else()
|
||||||
set(RESULTS_PATH ${CMAKE_CURRENT_BINARY_DIR}/localResults)
|
set(RESULTS_PATH ${CMAKE_CURRENT_BINARY_DIR}/localResults)
|
||||||
set(VALIDATOR_PATH ${CMAKE_CURRENT_BINARY_DIR}/StandAlone/glslangValidator)
|
set(VALIDATOR_PATH ${CMAKE_CURRENT_BINARY_DIR}/StandAlone/glslangValidator)
|
||||||
set(REMAP_PATH ${CMAKE_CURRENT_BINARY_DIR}/StandAlone/spirv-remap)
|
set(REMAP_PATH ${CMAKE_CURRENT_BINARY_DIR}/StandAlone/spirv-remap)
|
||||||
endif(CMAKE_CONFIGURATION_TYPES)
|
endif()
|
||||||
|
|
||||||
add_test(NAME glslang-testsuite
|
add_test(NAME glslang-testsuite
|
||||||
COMMAND bash ${IGNORE_CR_FLAG} runtests ${RESULTS_PATH} ${VALIDATOR_PATH} ${REMAP_PATH}
|
COMMAND bash ${IGNORE_CR_FLAG} runtests ${RESULTS_PATH} ${VALIDATOR_PATH} ${REMAP_PATH}
|
||||||
|
@ -101,12 +101,12 @@ if(ENABLE_OPT)
|
|||||||
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}/External>)
|
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}/External>)
|
||||||
else()
|
else()
|
||||||
target_link_libraries(SPIRV PRIVATE MachineIndependent)
|
target_link_libraries(SPIRV PRIVATE MachineIndependent)
|
||||||
endif(ENABLE_OPT)
|
endif()
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
source_group("Source" FILES ${SOURCES} ${HEADERS})
|
source_group("Source" FILES ${SOURCES} ${HEADERS})
|
||||||
source_group("Source" FILES ${SPVREMAP_SOURCES} ${SPVREMAP_HEADERS})
|
source_group("Source" FILES ${SPVREMAP_SOURCES} ${SPVREMAP_HEADERS})
|
||||||
endif(WIN32)
|
endif()
|
||||||
|
|
||||||
if(ENABLE_GLSLANG_INSTALL)
|
if(ENABLE_GLSLANG_INSTALL)
|
||||||
if(BUILD_SHARED_LIBS)
|
if(BUILD_SHARED_LIBS)
|
||||||
@ -135,4 +135,4 @@ if(ENABLE_GLSLANG_INSTALL)
|
|||||||
install(EXPORT SPIRVTargets DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake)
|
install(EXPORT SPIRVTargets DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake)
|
||||||
|
|
||||||
install(FILES ${HEADERS} ${SPVREMAP_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/glslang/SPIRV/)
|
install(FILES ${HEADERS} ${SPVREMAP_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/glslang/SPIRV/)
|
||||||
endif(ENABLE_GLSLANG_INSTALL)
|
endif()
|
||||||
|
@ -69,6 +69,9 @@ const char* const E_SPV_NV_mesh_shader = "SPV_NV_mesh_shader";
|
|||||||
//SPV_NV_raytracing
|
//SPV_NV_raytracing
|
||||||
const char* const E_SPV_NV_ray_tracing = "SPV_NV_ray_tracing";
|
const char* const E_SPV_NV_ray_tracing = "SPV_NV_ray_tracing";
|
||||||
|
|
||||||
|
//SPV_NV_ray_tracing_motion_blur
|
||||||
|
const char* const E_SPV_NV_ray_tracing_motion_blur = "SPV_NV_ray_tracing_motion_blur";
|
||||||
|
|
||||||
//SPV_NV_shading_rate
|
//SPV_NV_shading_rate
|
||||||
const char* const E_SPV_NV_shading_rate = "SPV_NV_shading_rate";
|
const char* const E_SPV_NV_shading_rate = "SPV_NV_shading_rate";
|
||||||
|
|
||||||
|
@ -1033,6 +1033,10 @@ spv::BuiltIn TGlslangToSpvTraverser::TranslateBuiltInDecoration(glslang::TBuiltI
|
|||||||
return spv::BuiltInIncomingRayFlagsKHR;
|
return spv::BuiltInIncomingRayFlagsKHR;
|
||||||
case glslang::EbvGeometryIndex:
|
case glslang::EbvGeometryIndex:
|
||||||
return spv::BuiltInRayGeometryIndexKHR;
|
return spv::BuiltInRayGeometryIndexKHR;
|
||||||
|
case glslang::EbvCurrentRayTimeNV:
|
||||||
|
builder.addExtension(spv::E_SPV_NV_ray_tracing_motion_blur);
|
||||||
|
builder.addCapability(spv::CapabilityRayTracingMotionBlurNV);
|
||||||
|
return spv::BuiltInCurrentRayTimeNV;
|
||||||
|
|
||||||
// barycentrics
|
// barycentrics
|
||||||
case glslang::EbvBaryCoordNV:
|
case glslang::EbvBaryCoordNV:
|
||||||
@ -1826,10 +1830,10 @@ TGlslangToSpvTraverser::TGlslangToSpvTraverser(unsigned int spvVersion,
|
|||||||
std::vector<spv::Id> operandIds;
|
std::vector<spv::Id> operandIds;
|
||||||
assert(!modeId.second.empty());
|
assert(!modeId.second.empty());
|
||||||
for (auto extraOperand : modeId.second) {
|
for (auto extraOperand : modeId.second) {
|
||||||
int nextConst = 0;
|
if (extraOperand->getType().getQualifier().isSpecConstant())
|
||||||
spv::Id operandId = createSpvConstantFromConstUnionArray(
|
operandIds.push_back(getSymbolId(extraOperand->getAsSymbolNode()));
|
||||||
extraOperand->getType(), extraOperand->getConstArray(), nextConst, false);
|
else
|
||||||
operandIds.push_back(operandId);
|
operandIds.push_back(createSpvConstant(*extraOperand));
|
||||||
}
|
}
|
||||||
builder.addExecutionModeId(shaderEntry, static_cast<spv::ExecutionMode>(modeId.first), operandIds);
|
builder.addExecutionModeId(shaderEntry, static_cast<spv::ExecutionMode>(modeId.first), operandIds);
|
||||||
}
|
}
|
||||||
@ -3018,6 +3022,7 @@ bool TGlslangToSpvTraverser::visitAggregate(glslang::TVisit visit, glslang::TInt
|
|||||||
case glslang::EOpIgnoreIntersectionNV:
|
case glslang::EOpIgnoreIntersectionNV:
|
||||||
case glslang::EOpTerminateRayNV:
|
case glslang::EOpTerminateRayNV:
|
||||||
case glslang::EOpTraceNV:
|
case glslang::EOpTraceNV:
|
||||||
|
case glslang::EOpTraceRayMotionNV:
|
||||||
case glslang::EOpTraceKHR:
|
case glslang::EOpTraceKHR:
|
||||||
case glslang::EOpExecuteCallableNV:
|
case glslang::EOpExecuteCallableNV:
|
||||||
case glslang::EOpExecuteCallableKHR:
|
case glslang::EOpExecuteCallableKHR:
|
||||||
@ -3317,9 +3322,11 @@ bool TGlslangToSpvTraverser::visitAggregate(glslang::TVisit visit, glslang::TInt
|
|||||||
bool cond = glslangOperands[arg]->getAsConstantUnion()->getConstArray()[0].getBConst();
|
bool cond = glslangOperands[arg]->getAsConstantUnion()->getConstArray()[0].getBConst();
|
||||||
operands.push_back(builder.makeIntConstant(cond ? 1 : 0));
|
operands.push_back(builder.makeIntConstant(cond ? 1 : 0));
|
||||||
} else if ((arg == 10 && glslangOp == glslang::EOpTraceKHR) ||
|
} else if ((arg == 10 && glslangOp == glslang::EOpTraceKHR) ||
|
||||||
|
(arg == 11 && glslangOp == glslang::EOpTraceRayMotionNV) ||
|
||||||
(arg == 1 && glslangOp == glslang::EOpExecuteCallableKHR)) {
|
(arg == 1 && glslangOp == glslang::EOpExecuteCallableKHR)) {
|
||||||
const int opdNum = glslangOp == glslang::EOpTraceKHR ? 10 : 1;
|
const int opdNum = glslangOp == glslang::EOpTraceKHR ? 10 : (glslangOp == glslang::EOpTraceRayMotionNV ? 11 : 1);
|
||||||
const int set = glslangOp == glslang::EOpTraceKHR ? 0 : 1;
|
const int set = glslangOp == glslang::EOpExecuteCallableKHR ? 1 : 0;
|
||||||
|
|
||||||
const int location = glslangOperands[opdNum]->getAsConstantUnion()->getConstArray()[0].getUConst();
|
const int location = glslangOperands[opdNum]->getAsConstantUnion()->getConstArray()[0].getUConst();
|
||||||
auto itNode = locationToSymbol[set].find(location);
|
auto itNode = locationToSymbol[set].find(location);
|
||||||
visitSymbol(itNode->second);
|
visitSymbol(itNode->second);
|
||||||
@ -3377,7 +3384,7 @@ bool TGlslangToSpvTraverser::visitAggregate(glslang::TVisit visit, glslang::TInt
|
|||||||
const auto& spirvInst = node->getSpirvInstruction();
|
const auto& spirvInst = node->getSpirvInstruction();
|
||||||
if (spirvInst.set == "") {
|
if (spirvInst.set == "") {
|
||||||
std::vector<spv::IdImmediate> idImmOps;
|
std::vector<spv::IdImmediate> idImmOps;
|
||||||
for (int i = 0; i < glslangOperands.size(); ++i) {
|
for (unsigned int i = 0; i < glslangOperands.size(); ++i) {
|
||||||
if (glslangOperands[i]->getAsTyped()->getQualifier().isSpirvLiteral()) {
|
if (glslangOperands[i]->getAsTyped()->getQualifier().isSpirvLiteral()) {
|
||||||
// Translate the constant to a literal value
|
// Translate the constant to a literal value
|
||||||
std::vector<unsigned> literals;
|
std::vector<unsigned> literals;
|
||||||
@ -3933,12 +3940,14 @@ spv::Id TGlslangToSpvTraverser::getSampledType(const glslang::TSampler& sampler)
|
|||||||
builder.addExtension(spv::E_SPV_AMD_gpu_shader_half_float_fetch);
|
builder.addExtension(spv::E_SPV_AMD_gpu_shader_half_float_fetch);
|
||||||
builder.addCapability(spv::CapabilityFloat16ImageAMD);
|
builder.addCapability(spv::CapabilityFloat16ImageAMD);
|
||||||
return builder.makeFloatType(16);
|
return builder.makeFloatType(16);
|
||||||
case glslang::EbtInt64: return builder.makeIntType(64);
|
case glslang::EbtInt64:
|
||||||
builder.addExtension(spv::E_SPV_EXT_shader_image_int64);
|
builder.addExtension(spv::E_SPV_EXT_shader_image_int64);
|
||||||
builder.addCapability(spv::CapabilityFloat16ImageAMD);
|
builder.addCapability(spv::CapabilityInt64ImageEXT);
|
||||||
case glslang::EbtUint64: return builder.makeUintType(64);
|
return builder.makeIntType(64);
|
||||||
|
case glslang::EbtUint64:
|
||||||
builder.addExtension(spv::E_SPV_EXT_shader_image_int64);
|
builder.addExtension(spv::E_SPV_EXT_shader_image_int64);
|
||||||
builder.addCapability(spv::CapabilityFloat16ImageAMD);
|
builder.addCapability(spv::CapabilityInt64ImageEXT);
|
||||||
|
return builder.makeUintType(64);
|
||||||
#endif
|
#endif
|
||||||
default:
|
default:
|
||||||
assert(0);
|
assert(0);
|
||||||
@ -4139,68 +4148,55 @@ spv::Id TGlslangToSpvTraverser::convertGlslangToSpvType(const glslang::TType& ty
|
|||||||
const auto& spirvType = type.getSpirvType();
|
const auto& spirvType = type.getSpirvType();
|
||||||
const auto& spirvInst = spirvType.spirvInst;
|
const auto& spirvInst = spirvType.spirvInst;
|
||||||
|
|
||||||
std::vector<spv::Id> operands;
|
std::vector<spv::IdImmediate> operands;
|
||||||
for (const auto& typeParam : spirvType.typeParams) {
|
for (const auto& typeParam : spirvType.typeParams) {
|
||||||
if (typeParam.isConstant) {
|
// Constant expression
|
||||||
// Constant expression
|
if (typeParam.constant->isLiteral()) {
|
||||||
if (typeParam.constant->isLiteral()) {
|
if (typeParam.constant->getBasicType() == glslang::EbtFloat) {
|
||||||
if (typeParam.constant->getBasicType() == glslang::EbtFloat) {
|
float floatValue = static_cast<float>(typeParam.constant->getConstArray()[0].getDConst());
|
||||||
float floatValue = static_cast<float>(typeParam.constant->getConstArray()[0].getDConst());
|
unsigned literal = *reinterpret_cast<unsigned*>(&floatValue);
|
||||||
unsigned literal = *reinterpret_cast<unsigned*>(&floatValue);
|
operands.push_back({false, literal});
|
||||||
operands.push_back(literal);
|
} else if (typeParam.constant->getBasicType() == glslang::EbtInt) {
|
||||||
} else if (typeParam.constant->getBasicType() == glslang::EbtInt) {
|
unsigned literal = typeParam.constant->getConstArray()[0].getIConst();
|
||||||
unsigned literal = typeParam.constant->getConstArray()[0].getIConst();
|
operands.push_back({false, literal});
|
||||||
operands.push_back(literal);
|
} else if (typeParam.constant->getBasicType() == glslang::EbtUint) {
|
||||||
} else if (typeParam.constant->getBasicType() == glslang::EbtUint) {
|
unsigned literal = typeParam.constant->getConstArray()[0].getUConst();
|
||||||
unsigned literal = typeParam.constant->getConstArray()[0].getUConst();
|
operands.push_back({false, literal});
|
||||||
operands.push_back(literal);
|
} else if (typeParam.constant->getBasicType() == glslang::EbtBool) {
|
||||||
} else if (typeParam.constant->getBasicType() == glslang::EbtBool) {
|
unsigned literal = typeParam.constant->getConstArray()[0].getBConst();
|
||||||
unsigned literal = typeParam.constant->getConstArray()[0].getBConst();
|
operands.push_back({false, literal});
|
||||||
operands.push_back(literal);
|
} else if (typeParam.constant->getBasicType() == glslang::EbtString) {
|
||||||
} else if (typeParam.constant->getBasicType() == glslang::EbtString) {
|
auto str = typeParam.constant->getConstArray()[0].getSConst()->c_str();
|
||||||
auto str = typeParam.constant->getConstArray()[0].getSConst()->c_str();
|
unsigned literal = 0;
|
||||||
unsigned literal = 0;
|
char* literalPtr = reinterpret_cast<char*>(&literal);
|
||||||
char* literalPtr = reinterpret_cast<char*>(&literal);
|
unsigned charCount = 0;
|
||||||
unsigned charCount = 0;
|
char ch = 0;
|
||||||
char ch = 0;
|
do {
|
||||||
do {
|
ch = *(str++);
|
||||||
ch = *(str++);
|
*(literalPtr++) = ch;
|
||||||
*(literalPtr++) = ch;
|
++charCount;
|
||||||
++charCount;
|
if (charCount == 4) {
|
||||||
if (charCount == 4) {
|
operands.push_back({false, literal});
|
||||||
operands.push_back(literal);
|
literalPtr = reinterpret_cast<char*>(&literal);
|
||||||
literalPtr = reinterpret_cast<char*>(&literal);
|
charCount = 0;
|
||||||
charCount = 0;
|
|
||||||
}
|
|
||||||
} while (ch != 0);
|
|
||||||
|
|
||||||
// Partial literal is padded with 0
|
|
||||||
if (charCount > 0) {
|
|
||||||
for (; charCount < 4; ++charCount)
|
|
||||||
*(literalPtr++) = 0;
|
|
||||||
operands.push_back(literal);
|
|
||||||
}
|
}
|
||||||
} else
|
} while (ch != 0);
|
||||||
assert(0); // Unexpected type
|
|
||||||
} else {
|
// Partial literal is padded with 0
|
||||||
int nextConst = 0;
|
if (charCount > 0) {
|
||||||
spv::Id constant = createSpvConstantFromConstUnionArray(
|
for (; charCount < 4; ++charCount)
|
||||||
typeParam.constant->getType(), typeParam.constant->getConstArray(), nextConst, false);
|
*(literalPtr++) = 0;
|
||||||
operands.push_back(constant);
|
operands.push_back({false, literal});
|
||||||
}
|
}
|
||||||
} else {
|
} else
|
||||||
// Type specifier
|
assert(0); // Unexpected type
|
||||||
spv::Id typeId = convertGlslangToSpvType(*typeParam.type);
|
} else
|
||||||
operands.push_back(typeId);
|
operands.push_back({true, createSpvConstant(*typeParam.constant)});
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (spirvInst.set == "")
|
assert(spirvInst.set == ""); // Currently, couldn't be extended instructions.
|
||||||
spvType = builder.createOp(static_cast<spv::Op>(spirvInst.id), spv::NoType, operands);
|
spvType = builder.makeGenericType(static_cast<spv::Op>(spirvInst.id), operands);
|
||||||
else {
|
|
||||||
spvType = builder.createBuiltinCall(
|
|
||||||
spv::NoType, getExtBuiltins(spirvInst.set.c_str()), spirvInst.id, operands);
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
@ -7499,6 +7495,8 @@ spv::Id TGlslangToSpvTraverser::createInvocationsOperation(glslang::TOperator op
|
|||||||
break;
|
break;
|
||||||
case glslang::EOpReadFirstInvocation:
|
case glslang::EOpReadFirstInvocation:
|
||||||
opCode = spv::OpSubgroupFirstInvocationKHR;
|
opCode = spv::OpSubgroupFirstInvocationKHR;
|
||||||
|
if (builder.isVectorType(typeId))
|
||||||
|
return CreateInvocationsVectorOperation(opCode, groupOperation, typeId, operands);
|
||||||
break;
|
break;
|
||||||
case glslang::EOpBallot:
|
case glslang::EOpBallot:
|
||||||
{
|
{
|
||||||
@ -7623,7 +7621,7 @@ spv::Id TGlslangToSpvTraverser::CreateInvocationsVectorOperation(spv::Op op, spv
|
|||||||
assert(op == spv::OpGroupFMin || op == spv::OpGroupUMin || op == spv::OpGroupSMin ||
|
assert(op == spv::OpGroupFMin || op == spv::OpGroupUMin || op == spv::OpGroupSMin ||
|
||||||
op == spv::OpGroupFMax || op == spv::OpGroupUMax || op == spv::OpGroupSMax ||
|
op == spv::OpGroupFMax || op == spv::OpGroupUMax || op == spv::OpGroupSMax ||
|
||||||
op == spv::OpGroupFAdd || op == spv::OpGroupIAdd || op == spv::OpGroupBroadcast ||
|
op == spv::OpGroupFAdd || op == spv::OpGroupIAdd || op == spv::OpGroupBroadcast ||
|
||||||
op == spv::OpSubgroupReadInvocationKHR ||
|
op == spv::OpSubgroupReadInvocationKHR || op == spv::OpSubgroupFirstInvocationKHR ||
|
||||||
op == spv::OpGroupFMinNonUniformAMD || op == spv::OpGroupUMinNonUniformAMD ||
|
op == spv::OpGroupFMinNonUniformAMD || op == spv::OpGroupUMinNonUniformAMD ||
|
||||||
op == spv::OpGroupSMinNonUniformAMD ||
|
op == spv::OpGroupSMinNonUniformAMD ||
|
||||||
op == spv::OpGroupFMaxNonUniformAMD || op == spv::OpGroupUMaxNonUniformAMD ||
|
op == spv::OpGroupFMaxNonUniformAMD || op == spv::OpGroupUMaxNonUniformAMD ||
|
||||||
@ -7652,6 +7650,8 @@ spv::Id TGlslangToSpvTraverser::CreateInvocationsVectorOperation(spv::Op op, spv
|
|||||||
spvGroupOperands.push_back(scalar);
|
spvGroupOperands.push_back(scalar);
|
||||||
spv::IdImmediate operand = { true, operands[1] };
|
spv::IdImmediate operand = { true, operands[1] };
|
||||||
spvGroupOperands.push_back(operand);
|
spvGroupOperands.push_back(operand);
|
||||||
|
} else if (op == spv::OpSubgroupFirstInvocationKHR) {
|
||||||
|
spvGroupOperands.push_back(scalar);
|
||||||
} else if (op == spv::OpGroupBroadcast) {
|
} else if (op == spv::OpGroupBroadcast) {
|
||||||
spv::IdImmediate scope = { true, builder.makeUintConstant(spv::ScopeSubgroup) };
|
spv::IdImmediate scope = { true, builder.makeUintConstant(spv::ScopeSubgroup) };
|
||||||
spvGroupOperands.push_back(scope);
|
spvGroupOperands.push_back(scope);
|
||||||
@ -8322,6 +8322,11 @@ spv::Id TGlslangToSpvTraverser::createMiscOperation(glslang::TOperator op, spv::
|
|||||||
case glslang::EOpTraceNV:
|
case glslang::EOpTraceNV:
|
||||||
builder.createNoResultOp(spv::OpTraceNV, operands);
|
builder.createNoResultOp(spv::OpTraceNV, operands);
|
||||||
return 0;
|
return 0;
|
||||||
|
case glslang::EOpTraceRayMotionNV:
|
||||||
|
builder.addExtension(spv::E_SPV_NV_ray_tracing_motion_blur);
|
||||||
|
builder.addCapability(spv::CapabilityRayTracingMotionBlurNV);
|
||||||
|
builder.createNoResultOp(spv::OpTraceRayMotionNV, operands);
|
||||||
|
return 0;
|
||||||
case glslang::EOpTraceKHR:
|
case glslang::EOpTraceKHR:
|
||||||
builder.createNoResultOp(spv::OpTraceRayKHR, operands);
|
builder.createNoResultOp(spv::OpTraceRayKHR, operands);
|
||||||
return 0;
|
return 0;
|
||||||
@ -8829,12 +8834,12 @@ spv::Id TGlslangToSpvTraverser::getSymbolId(const glslang::TIntermSymbol* symbol
|
|||||||
std::vector<spv::Id> operandIds;
|
std::vector<spv::Id> operandIds;
|
||||||
assert(!decorateId.second.empty());
|
assert(!decorateId.second.empty());
|
||||||
for (auto extraOperand : decorateId.second) {
|
for (auto extraOperand : decorateId.second) {
|
||||||
int nextConst = 0;
|
if (extraOperand->getQualifier().isSpecConstant())
|
||||||
spv::Id operandId = createSpvConstantFromConstUnionArray(
|
operandIds.push_back(getSymbolId(extraOperand->getAsSymbolNode()));
|
||||||
extraOperand->getType(), extraOperand->getConstArray(), nextConst, false);
|
else
|
||||||
operandIds.push_back(operandId);
|
operandIds.push_back(createSpvConstant(*extraOperand));
|
||||||
}
|
}
|
||||||
builder.addDecoration(id, static_cast<spv::Decoration>(decorateId.first), operandIds);
|
builder.addDecorationId(id, static_cast<spv::Decoration>(decorateId.first), operandIds);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Add spirv_decorate_string
|
// Add spirv_decorate_string
|
||||||
|
@ -427,6 +427,37 @@ Id Builder::makeCooperativeMatrixType(Id component, Id scope, Id rows, Id cols)
|
|||||||
return type->getResultId();
|
return type->getResultId();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Id Builder::makeGenericType(spv::Op opcode, std::vector<spv::IdImmediate>& operands)
|
||||||
|
{
|
||||||
|
// try to find it
|
||||||
|
Instruction* type;
|
||||||
|
for (int t = 0; t < (int)groupedTypes[opcode].size(); ++t) {
|
||||||
|
type = groupedTypes[opcode][t];
|
||||||
|
if (type->getNumOperands() != operands.size())
|
||||||
|
continue; // Number mismatch, find next
|
||||||
|
|
||||||
|
bool match = true;
|
||||||
|
for (int op = 0; match && op < operands.size(); ++op) {
|
||||||
|
match = (operands[op].isId ? type->getIdOperand(op) : type->getImmediateOperand(op)) == operands[op].word;
|
||||||
|
}
|
||||||
|
if (match)
|
||||||
|
return type->getResultId();
|
||||||
|
}
|
||||||
|
|
||||||
|
// not found, make it
|
||||||
|
type = new Instruction(getUniqueId(), NoType, opcode);
|
||||||
|
for (int op = 0; op < operands.size(); ++op) {
|
||||||
|
if (operands[op].isId)
|
||||||
|
type->addIdOperand(operands[op].word);
|
||||||
|
else
|
||||||
|
type->addImmediateOperand(operands[op].word);
|
||||||
|
}
|
||||||
|
groupedTypes[opcode].push_back(type);
|
||||||
|
constantsTypesGlobals.push_back(std::unique_ptr<Instruction>(type));
|
||||||
|
module.mapInstruction(type);
|
||||||
|
|
||||||
|
return type->getResultId();
|
||||||
|
}
|
||||||
|
|
||||||
// TODO: performance: track arrays per stride
|
// TODO: performance: track arrays per stride
|
||||||
// If a stride is supplied (non-zero) make an array.
|
// If a stride is supplied (non-zero) make an array.
|
||||||
@ -2812,6 +2843,7 @@ void Builder::accessChainStore(Id rvalue, Decoration nonUniform, spv::MemoryAcce
|
|||||||
accessChain.component == NoResult) {
|
accessChain.component == NoResult) {
|
||||||
for (unsigned int i = 0; i < accessChain.swizzle.size(); ++i) {
|
for (unsigned int i = 0; i < accessChain.swizzle.size(); ++i) {
|
||||||
accessChain.indexChain.push_back(makeUintConstant(accessChain.swizzle[i]));
|
accessChain.indexChain.push_back(makeUintConstant(accessChain.swizzle[i]));
|
||||||
|
accessChain.instr = NoResult;
|
||||||
|
|
||||||
Id base = collapseAccessChain();
|
Id base = collapseAccessChain();
|
||||||
addDecoration(base, nonUniform);
|
addDecoration(base, nonUniform);
|
||||||
|
@ -181,6 +181,7 @@ public:
|
|||||||
Id makeSamplerType();
|
Id makeSamplerType();
|
||||||
Id makeSampledImageType(Id imageType);
|
Id makeSampledImageType(Id imageType);
|
||||||
Id makeCooperativeMatrixType(Id component, Id scope, Id rows, Id cols);
|
Id makeCooperativeMatrixType(Id component, Id scope, Id rows, Id cols);
|
||||||
|
Id makeGenericType(spv::Op opcode, std::vector<spv::IdImmediate>& operands);
|
||||||
|
|
||||||
// accelerationStructureNV type
|
// accelerationStructureNV type
|
||||||
Id makeAccelerationStructureType();
|
Id makeAccelerationStructureType();
|
||||||
|
@ -44,10 +44,8 @@
|
|||||||
#include <algorithm>
|
#include <algorithm>
|
||||||
|
|
||||||
#include "SpvBuilder.h"
|
#include "SpvBuilder.h"
|
||||||
|
|
||||||
#include "spirv.hpp"
|
#include "spirv.hpp"
|
||||||
#include "GlslangToSpv.h"
|
|
||||||
#include "SpvBuilder.h"
|
|
||||||
namespace spv {
|
namespace spv {
|
||||||
#include "GLSL.std.450.h"
|
#include "GLSL.std.450.h"
|
||||||
#include "GLSL.ext.KHR.h"
|
#include "GLSL.ext.KHR.h"
|
||||||
@ -113,8 +111,6 @@ void Builder::postProcessType(const Instruction& inst, Id typeId)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case OpAccessChain:
|
|
||||||
case OpPtrAccessChain:
|
|
||||||
case OpCopyObject:
|
case OpCopyObject:
|
||||||
break;
|
break;
|
||||||
case OpFConvert:
|
case OpFConvert:
|
||||||
@ -161,26 +157,43 @@ void Builder::postProcessType(const Instruction& inst, Id typeId)
|
|||||||
switch (inst.getImmediateOperand(1)) {
|
switch (inst.getImmediateOperand(1)) {
|
||||||
case GLSLstd450Frexp:
|
case GLSLstd450Frexp:
|
||||||
case GLSLstd450FrexpStruct:
|
case GLSLstd450FrexpStruct:
|
||||||
if (getSpvVersion() < glslang::EShTargetSpv_1_3 && containsType(typeId, OpTypeInt, 16))
|
if (getSpvVersion() < spv::Spv_1_3 && containsType(typeId, OpTypeInt, 16))
|
||||||
addExtension(spv::E_SPV_AMD_gpu_shader_int16);
|
addExtension(spv::E_SPV_AMD_gpu_shader_int16);
|
||||||
break;
|
break;
|
||||||
case GLSLstd450InterpolateAtCentroid:
|
case GLSLstd450InterpolateAtCentroid:
|
||||||
case GLSLstd450InterpolateAtSample:
|
case GLSLstd450InterpolateAtSample:
|
||||||
case GLSLstd450InterpolateAtOffset:
|
case GLSLstd450InterpolateAtOffset:
|
||||||
if (getSpvVersion() < glslang::EShTargetSpv_1_3 && containsType(typeId, OpTypeFloat, 16))
|
if (getSpvVersion() < spv::Spv_1_3 && containsType(typeId, OpTypeFloat, 16))
|
||||||
addExtension(spv::E_SPV_AMD_gpu_shader_half_float);
|
addExtension(spv::E_SPV_AMD_gpu_shader_half_float);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case OpAccessChain:
|
||||||
|
case OpPtrAccessChain:
|
||||||
|
if (isPointerType(typeId))
|
||||||
|
break;
|
||||||
|
if (basicTypeOp == OpTypeInt) {
|
||||||
|
if (width == 16)
|
||||||
|
addCapability(CapabilityInt16);
|
||||||
|
else if (width == 8)
|
||||||
|
addCapability(CapabilityInt8);
|
||||||
|
}
|
||||||
default:
|
default:
|
||||||
if (basicTypeOp == OpTypeFloat && width == 16)
|
if (basicTypeOp == OpTypeInt) {
|
||||||
addCapability(CapabilityFloat16);
|
if (width == 16)
|
||||||
if (basicTypeOp == OpTypeInt && width == 16)
|
addCapability(CapabilityInt16);
|
||||||
addCapability(CapabilityInt16);
|
else if (width == 8)
|
||||||
if (basicTypeOp == OpTypeInt && width == 8)
|
addCapability(CapabilityInt8);
|
||||||
addCapability(CapabilityInt8);
|
else if (width == 64)
|
||||||
|
addCapability(CapabilityInt64);
|
||||||
|
} else if (basicTypeOp == OpTypeFloat) {
|
||||||
|
if (width == 16)
|
||||||
|
addCapability(CapabilityFloat16);
|
||||||
|
else if (width == 64)
|
||||||
|
addCapability(CapabilityFloat64);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -426,6 +426,7 @@ const char* BuiltInString(int builtIn)
|
|||||||
case BuiltInSMCountNV: return "SMCountNV";
|
case BuiltInSMCountNV: return "SMCountNV";
|
||||||
case BuiltInWarpIDNV: return "WarpIDNV";
|
case BuiltInWarpIDNV: return "WarpIDNV";
|
||||||
case BuiltInSMIDNV: return "SMIDNV";
|
case BuiltInSMIDNV: return "SMIDNV";
|
||||||
|
case BuiltInCurrentRayTimeNV: return "CurrentRayTimeNV";
|
||||||
|
|
||||||
default: return "Bad";
|
default: return "Bad";
|
||||||
}
|
}
|
||||||
@ -899,6 +900,12 @@ const char* CapabilityString(int info)
|
|||||||
case CapabilityDeviceGroup: return "DeviceGroup";
|
case CapabilityDeviceGroup: return "DeviceGroup";
|
||||||
case CapabilityMultiView: return "MultiView";
|
case CapabilityMultiView: return "MultiView";
|
||||||
|
|
||||||
|
case CapabilityDenormPreserve: return "DenormPreserve";
|
||||||
|
case CapabilityDenormFlushToZero: return "DenormFlushToZero";
|
||||||
|
case CapabilitySignedZeroInfNanPreserve: return "SignedZeroInfNanPreserve";
|
||||||
|
case CapabilityRoundingModeRTE: return "RoundingModeRTE";
|
||||||
|
case CapabilityRoundingModeRTZ: return "RoundingModeRTZ";
|
||||||
|
|
||||||
case CapabilityStencilExportEXT: return "StencilExportEXT";
|
case CapabilityStencilExportEXT: return "StencilExportEXT";
|
||||||
|
|
||||||
case CapabilityFloat16ImageAMD: return "Float16ImageAMD";
|
case CapabilityFloat16ImageAMD: return "Float16ImageAMD";
|
||||||
@ -916,6 +923,7 @@ const char* CapabilityString(int info)
|
|||||||
case CapabilityPerViewAttributesNV: return "PerViewAttributesNV";
|
case CapabilityPerViewAttributesNV: return "PerViewAttributesNV";
|
||||||
case CapabilityGroupNonUniformPartitionedNV: return "GroupNonUniformPartitionedNV";
|
case CapabilityGroupNonUniformPartitionedNV: return "GroupNonUniformPartitionedNV";
|
||||||
case CapabilityRayTracingNV: return "RayTracingNV";
|
case CapabilityRayTracingNV: return "RayTracingNV";
|
||||||
|
case CapabilityRayTracingMotionBlurNV: return "RayTracingMotionBlurNV";
|
||||||
case CapabilityRayTracingKHR: return "RayTracingKHR";
|
case CapabilityRayTracingKHR: return "RayTracingKHR";
|
||||||
case CapabilityRayQueryKHR: return "RayQueryKHR";
|
case CapabilityRayQueryKHR: return "RayQueryKHR";
|
||||||
case CapabilityRayTracingProvisionalKHR: return "RayTracingProvisionalKHR";
|
case CapabilityRayTracingProvisionalKHR: return "RayTracingProvisionalKHR";
|
||||||
@ -1382,6 +1390,7 @@ const char* OpcodeString(int op)
|
|||||||
case OpTerminateRayNV: return "OpTerminateRayNV";
|
case OpTerminateRayNV: return "OpTerminateRayNV";
|
||||||
case OpTerminateRayKHR: return "OpTerminateRayKHR";
|
case OpTerminateRayKHR: return "OpTerminateRayKHR";
|
||||||
case OpTraceNV: return "OpTraceNV";
|
case OpTraceNV: return "OpTraceNV";
|
||||||
|
case OpTraceRayMotionNV: return "OpTraceRayMotionNV";
|
||||||
case OpTraceRayKHR: return "OpTraceRayKHR";
|
case OpTraceRayKHR: return "OpTraceRayKHR";
|
||||||
case OpTypeAccelerationStructureKHR: return "OpTypeAccelerationStructureKHR";
|
case OpTypeAccelerationStructureKHR: return "OpTypeAccelerationStructureKHR";
|
||||||
case OpExecuteCallableNV: return "OpExecuteCallableNV";
|
case OpExecuteCallableNV: return "OpExecuteCallableNV";
|
||||||
@ -2812,6 +2821,20 @@ void Parameterize()
|
|||||||
InstructionDesc[OpTraceNV].operands.push(OperandId, "'Payload'");
|
InstructionDesc[OpTraceNV].operands.push(OperandId, "'Payload'");
|
||||||
InstructionDesc[OpTraceNV].setResultAndType(false, false);
|
InstructionDesc[OpTraceNV].setResultAndType(false, false);
|
||||||
|
|
||||||
|
InstructionDesc[OpTraceRayMotionNV].operands.push(OperandId, "'Acceleration Structure'");
|
||||||
|
InstructionDesc[OpTraceRayMotionNV].operands.push(OperandId, "'Ray Flags'");
|
||||||
|
InstructionDesc[OpTraceRayMotionNV].operands.push(OperandId, "'Cull Mask'");
|
||||||
|
InstructionDesc[OpTraceRayMotionNV].operands.push(OperandId, "'SBT Record Offset'");
|
||||||
|
InstructionDesc[OpTraceRayMotionNV].operands.push(OperandId, "'SBT Record Stride'");
|
||||||
|
InstructionDesc[OpTraceRayMotionNV].operands.push(OperandId, "'Miss Index'");
|
||||||
|
InstructionDesc[OpTraceRayMotionNV].operands.push(OperandId, "'Ray Origin'");
|
||||||
|
InstructionDesc[OpTraceRayMotionNV].operands.push(OperandId, "'TMin'");
|
||||||
|
InstructionDesc[OpTraceRayMotionNV].operands.push(OperandId, "'Ray Direction'");
|
||||||
|
InstructionDesc[OpTraceRayMotionNV].operands.push(OperandId, "'TMax'");
|
||||||
|
InstructionDesc[OpTraceRayMotionNV].operands.push(OperandId, "'Time'");
|
||||||
|
InstructionDesc[OpTraceRayMotionNV].operands.push(OperandId, "'Payload'");
|
||||||
|
InstructionDesc[OpTraceRayMotionNV].setResultAndType(false, false);
|
||||||
|
|
||||||
InstructionDesc[OpTraceRayKHR].operands.push(OperandId, "'Acceleration Structure'");
|
InstructionDesc[OpTraceRayKHR].operands.push(OperandId, "'Acceleration Structure'");
|
||||||
InstructionDesc[OpTraceRayKHR].operands.push(OperandId, "'Ray Flags'");
|
InstructionDesc[OpTraceRayKHR].operands.push(OperandId, "'Ray Flags'");
|
||||||
InstructionDesc[OpTraceRayKHR].operands.push(OperandId, "'Cull Mask'");
|
InstructionDesc[OpTraceRayKHR].operands.push(OperandId, "'Cull Mask'");
|
||||||
|
@ -652,6 +652,7 @@ enum BuiltIn {
|
|||||||
BuiltInHitTNV = 5332,
|
BuiltInHitTNV = 5332,
|
||||||
BuiltInHitKindKHR = 5333,
|
BuiltInHitKindKHR = 5333,
|
||||||
BuiltInHitKindNV = 5333,
|
BuiltInHitKindNV = 5333,
|
||||||
|
BuiltInCurrentRayTimeNV = 5334,
|
||||||
BuiltInIncomingRayFlagsKHR = 5351,
|
BuiltInIncomingRayFlagsKHR = 5351,
|
||||||
BuiltInIncomingRayFlagsNV = 5351,
|
BuiltInIncomingRayFlagsNV = 5351,
|
||||||
BuiltInRayGeometryIndexKHR = 5352,
|
BuiltInRayGeometryIndexKHR = 5352,
|
||||||
@ -988,6 +989,7 @@ enum Capability {
|
|||||||
CapabilityStorageTexelBufferArrayNonUniformIndexing = 5312,
|
CapabilityStorageTexelBufferArrayNonUniformIndexing = 5312,
|
||||||
CapabilityStorageTexelBufferArrayNonUniformIndexingEXT = 5312,
|
CapabilityStorageTexelBufferArrayNonUniformIndexingEXT = 5312,
|
||||||
CapabilityRayTracingNV = 5340,
|
CapabilityRayTracingNV = 5340,
|
||||||
|
CapabilityRayTracingMotionBlurNV = 5341,
|
||||||
CapabilityVulkanMemoryModel = 5345,
|
CapabilityVulkanMemoryModel = 5345,
|
||||||
CapabilityVulkanMemoryModelKHR = 5345,
|
CapabilityVulkanMemoryModelKHR = 5345,
|
||||||
CapabilityVulkanMemoryModelDeviceScope = 5346,
|
CapabilityVulkanMemoryModelDeviceScope = 5346,
|
||||||
@ -1503,6 +1505,8 @@ enum Op {
|
|||||||
OpIgnoreIntersectionNV = 5335,
|
OpIgnoreIntersectionNV = 5335,
|
||||||
OpTerminateRayNV = 5336,
|
OpTerminateRayNV = 5336,
|
||||||
OpTraceNV = 5337,
|
OpTraceNV = 5337,
|
||||||
|
OpTraceMotionNV = 5338,
|
||||||
|
OpTraceRayMotionNV = 5339,
|
||||||
OpTypeAccelerationStructureKHR = 5341,
|
OpTypeAccelerationStructureKHR = 5341,
|
||||||
OpTypeAccelerationStructureNV = 5341,
|
OpTypeAccelerationStructureNV = 5341,
|
||||||
OpExecuteCallableNV = 5344,
|
OpExecuteCallableNV = 5344,
|
||||||
@ -1539,7 +1543,7 @@ enum Op {
|
|||||||
OpUSubSatINTEL = 5596,
|
OpUSubSatINTEL = 5596,
|
||||||
OpIMul32x16INTEL = 5597,
|
OpIMul32x16INTEL = 5597,
|
||||||
OpUMul32x16INTEL = 5598,
|
OpUMul32x16INTEL = 5598,
|
||||||
OpConstFunctionPointerINTEL = 5600,
|
OpConstantFunctionPointerINTEL = 5600,
|
||||||
OpFunctionPointerCallINTEL = 5601,
|
OpFunctionPointerCallINTEL = 5601,
|
||||||
OpAsmTargetINTEL = 5609,
|
OpAsmTargetINTEL = 5609,
|
||||||
OpAsmINTEL = 5610,
|
OpAsmINTEL = 5610,
|
||||||
@ -2090,6 +2094,8 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) {
|
|||||||
case OpIgnoreIntersectionNV: *hasResult = false; *hasResultType = false; break;
|
case OpIgnoreIntersectionNV: *hasResult = false; *hasResultType = false; break;
|
||||||
case OpTerminateRayNV: *hasResult = false; *hasResultType = false; break;
|
case OpTerminateRayNV: *hasResult = false; *hasResultType = false; break;
|
||||||
case OpTraceNV: *hasResult = false; *hasResultType = false; break;
|
case OpTraceNV: *hasResult = false; *hasResultType = false; break;
|
||||||
|
case OpTraceMotionNV: *hasResult = false; *hasResultType = false; break;
|
||||||
|
case OpTraceRayMotionNV: *hasResult = false; *hasResultType = false; break;
|
||||||
case OpTypeAccelerationStructureNV: *hasResult = true; *hasResultType = false; break;
|
case OpTypeAccelerationStructureNV: *hasResult = true; *hasResultType = false; break;
|
||||||
case OpExecuteCallableNV: *hasResult = false; *hasResultType = false; break;
|
case OpExecuteCallableNV: *hasResult = false; *hasResultType = false; break;
|
||||||
case OpTypeCooperativeMatrixNV: *hasResult = true; *hasResultType = false; break;
|
case OpTypeCooperativeMatrixNV: *hasResult = true; *hasResultType = false; break;
|
||||||
@ -2125,7 +2131,7 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) {
|
|||||||
case OpUSubSatINTEL: *hasResult = true; *hasResultType = true; break;
|
case OpUSubSatINTEL: *hasResult = true; *hasResultType = true; break;
|
||||||
case OpIMul32x16INTEL: *hasResult = true; *hasResultType = true; break;
|
case OpIMul32x16INTEL: *hasResult = true; *hasResultType = true; break;
|
||||||
case OpUMul32x16INTEL: *hasResult = true; *hasResultType = true; break;
|
case OpUMul32x16INTEL: *hasResult = true; *hasResultType = true; break;
|
||||||
case OpConstFunctionPointerINTEL: *hasResult = true; *hasResultType = true; break;
|
case OpConstantFunctionPointerINTEL: *hasResult = true; *hasResultType = true; break;
|
||||||
case OpFunctionPointerCallINTEL: *hasResult = true; *hasResultType = true; break;
|
case OpFunctionPointerCallINTEL: *hasResult = true; *hasResultType = true; break;
|
||||||
case OpAsmTargetINTEL: *hasResult = true; *hasResultType = true; break;
|
case OpAsmTargetINTEL: *hasResult = true; *hasResultType = true; break;
|
||||||
case OpAsmINTEL: *hasResult = true; *hasResultType = true; break;
|
case OpAsmINTEL: *hasResult = true; *hasResultType = true; break;
|
||||||
|
@ -31,6 +31,22 @@
|
|||||||
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||||
# POSSIBILITY OF SUCH DAMAGE.
|
# POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
|
find_host_package(PythonInterp 3 REQUIRED)
|
||||||
|
|
||||||
|
set(GLSLANG_INTRINSIC_H "${GLSLANG_GENERATED_INCLUDEDIR}/glslang/glsl_intrinsic_header.h")
|
||||||
|
set(GLSLANG_INTRINSIC_PY "${CMAKE_CURRENT_SOURCE_DIR}/../gen_extension_headers.py")
|
||||||
|
set(GLSLANG_INTRINSIC_HEADER_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../glslang/ExtensionHeaders")
|
||||||
|
|
||||||
|
add_custom_command(
|
||||||
|
OUTPUT ${GLSLANG_INTRINSIC_H}
|
||||||
|
COMMAND ${PYTHON_EXECUTABLE} "${GLSLANG_INTRINSIC_PY}"
|
||||||
|
"-i" ${GLSLANG_INTRINSIC_HEADER_DIR}
|
||||||
|
"-o" ${GLSLANG_INTRINSIC_H}
|
||||||
|
DEPENDS ${GLSLANG_INTRINSIC_PY}
|
||||||
|
COMMENT "Generating ${GLSLANG_INTRINSIC_H}")
|
||||||
|
|
||||||
|
#add_custom_target(glslangValidator DEPENDS ${GLSLANG_INTRINSIC_H})
|
||||||
|
|
||||||
add_library(glslang-default-resource-limits
|
add_library(glslang-default-resource-limits
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/ResourceLimits.cpp
|
${CMAKE_CURRENT_SOURCE_DIR}/ResourceLimits.cpp
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/resource_limits_c.cpp)
|
${CMAKE_CURRENT_SOURCE_DIR}/resource_limits_c.cpp)
|
||||||
@ -41,7 +57,7 @@ target_include_directories(glslang-default-resource-limits
|
|||||||
PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
|
PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
|
||||||
PUBLIC $<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}>)
|
PUBLIC $<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}>)
|
||||||
|
|
||||||
set(SOURCES StandAlone.cpp DirStackFileIncluder.h)
|
set(SOURCES StandAlone.cpp DirStackFileIncluder.h ${GLSLANG_INTRINSIC_H})
|
||||||
|
|
||||||
add_executable(glslangValidator ${SOURCES})
|
add_executable(glslangValidator ${SOURCES})
|
||||||
set_property(TARGET glslangValidator PROPERTY FOLDER tools)
|
set_property(TARGET glslangValidator PROPERTY FOLDER tools)
|
||||||
@ -62,7 +78,7 @@ elseif(UNIX)
|
|||||||
if(NOT ANDROID)
|
if(NOT ANDROID)
|
||||||
set(LIBRARIES ${LIBRARIES} pthread)
|
set(LIBRARIES ${LIBRARIES} pthread)
|
||||||
endif()
|
endif()
|
||||||
endif(WIN32)
|
endif()
|
||||||
|
|
||||||
target_link_libraries(glslangValidator ${LIBRARIES})
|
target_link_libraries(glslangValidator ${LIBRARIES})
|
||||||
target_include_directories(glslangValidator PUBLIC
|
target_include_directories(glslangValidator PUBLIC
|
||||||
@ -73,7 +89,7 @@ if(ENABLE_OPT)
|
|||||||
target_include_directories(glslangValidator
|
target_include_directories(glslangValidator
|
||||||
PRIVATE ${spirv-tools_SOURCE_DIR}/include
|
PRIVATE ${spirv-tools_SOURCE_DIR}/include
|
||||||
)
|
)
|
||||||
endif(ENABLE_OPT)
|
endif()
|
||||||
|
|
||||||
if(ENABLE_SPVREMAPPER)
|
if(ENABLE_SPVREMAPPER)
|
||||||
set(REMAPPER_SOURCES spirv-remap.cpp)
|
set(REMAPPER_SOURCES spirv-remap.cpp)
|
||||||
@ -85,7 +101,7 @@ endif()
|
|||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
source_group("Source" FILES ${SOURCES})
|
source_group("Source" FILES ${SOURCES})
|
||||||
endif(WIN32)
|
endif()
|
||||||
|
|
||||||
if(ENABLE_GLSLANG_INSTALL)
|
if(ENABLE_GLSLANG_INSTALL)
|
||||||
install(TARGETS glslangValidator EXPORT glslangValidatorTargets
|
install(TARGETS glslangValidator EXPORT glslangValidatorTargets
|
||||||
@ -108,4 +124,4 @@ if(ENABLE_GLSLANG_INSTALL)
|
|||||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
||||||
endif()
|
endif()
|
||||||
install(EXPORT glslang-default-resource-limitsTargets DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake)
|
install(EXPORT glslang-default-resource-limitsTargets DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake)
|
||||||
endif(ENABLE_GLSLANG_INSTALL)
|
endif()
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
// Copyright (C) 2002-2005 3Dlabs Inc. Ltd.
|
// Copyright (C) 2002-2005 3Dlabs Inc. Ltd.
|
||||||
// Copyright (C) 2013-2016 LunarG, Inc.
|
// Copyright (C) 2013-2016 LunarG, Inc.
|
||||||
// Copyright (C) 2016-2020 Google, Inc.
|
// Copyright (C) 2016-2020 Google, Inc.
|
||||||
|
// Modifications Copyright(C) 2021 Advanced Micro Devices, Inc.All rights reserved.
|
||||||
//
|
//
|
||||||
// All rights reserved.
|
// All rights reserved.
|
||||||
//
|
//
|
||||||
@ -65,6 +66,8 @@
|
|||||||
// Build-time generated includes
|
// Build-time generated includes
|
||||||
#include "glslang/build_info.h"
|
#include "glslang/build_info.h"
|
||||||
|
|
||||||
|
#include "glslang/glsl_intrinsic_header.h"
|
||||||
|
|
||||||
extern "C" {
|
extern "C" {
|
||||||
GLSLANG_EXPORT void ShOutputHtml();
|
GLSLANG_EXPORT void ShOutputHtml();
|
||||||
}
|
}
|
||||||
@ -174,6 +177,7 @@ const char* shaderStageName = nullptr;
|
|||||||
const char* variableName = nullptr;
|
const char* variableName = nullptr;
|
||||||
bool HlslEnable16BitTypes = false;
|
bool HlslEnable16BitTypes = false;
|
||||||
bool HlslDX9compatible = false;
|
bool HlslDX9compatible = false;
|
||||||
|
bool HlslDxPositionW = false;
|
||||||
bool DumpBuiltinSymbols = false;
|
bool DumpBuiltinSymbols = false;
|
||||||
std::vector<std::string> IncludeDirectoryList;
|
std::vector<std::string> IncludeDirectoryList;
|
||||||
|
|
||||||
@ -263,6 +267,7 @@ protected:
|
|||||||
|
|
||||||
// Track the user's #define and #undef from the command line.
|
// Track the user's #define and #undef from the command line.
|
||||||
TPreamble UserPreamble;
|
TPreamble UserPreamble;
|
||||||
|
std::string PreambleString;
|
||||||
|
|
||||||
//
|
//
|
||||||
// Create the default name for saving a binary if -o is not provided.
|
// Create the default name for saving a binary if -o is not provided.
|
||||||
@ -658,6 +663,8 @@ void ProcessArguments(std::vector<std::unique_ptr<glslang::TWorkItem>>& workItem
|
|||||||
HlslEnable16BitTypes = true;
|
HlslEnable16BitTypes = true;
|
||||||
} else if (lowerword == "hlsl-dx9-compatible") {
|
} else if (lowerword == "hlsl-dx9-compatible") {
|
||||||
HlslDX9compatible = true;
|
HlslDX9compatible = true;
|
||||||
|
} else if (lowerword == "hlsl-dx-position-w") {
|
||||||
|
HlslDxPositionW = true;
|
||||||
} else if (lowerword == "auto-sampled-textures") {
|
} else if (lowerword == "auto-sampled-textures") {
|
||||||
autoSampledTextures = true;
|
autoSampledTextures = true;
|
||||||
} else if (lowerword == "invert-y" || // synonyms
|
} else if (lowerword == "invert-y" || // synonyms
|
||||||
@ -1204,8 +1211,17 @@ void CompileAndLinkShaderUnits(std::vector<ShaderCompUnit> compUnits)
|
|||||||
"Use '-e <name>'.\n");
|
"Use '-e <name>'.\n");
|
||||||
shader->setSourceEntryPoint(sourceEntryPointName);
|
shader->setSourceEntryPoint(sourceEntryPointName);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::string intrinsicString = getIntrinsic(compUnit.text, compUnit.count);
|
||||||
|
|
||||||
|
PreambleString = "";
|
||||||
if (UserPreamble.isSet())
|
if (UserPreamble.isSet())
|
||||||
shader->setPreamble(UserPreamble.get());
|
PreambleString.append(UserPreamble.get());
|
||||||
|
|
||||||
|
if (!intrinsicString.empty())
|
||||||
|
PreambleString.append(intrinsicString);
|
||||||
|
|
||||||
|
shader->setPreamble(PreambleString.c_str());
|
||||||
shader->addProcesses(Processes);
|
shader->addProcesses(Processes);
|
||||||
|
|
||||||
#ifndef GLSLANG_WEB
|
#ifndef GLSLANG_WEB
|
||||||
@ -1271,6 +1287,9 @@ void CompileAndLinkShaderUnits(std::vector<ShaderCompUnit> compUnits)
|
|||||||
if (Options & EOptionInvertY)
|
if (Options & EOptionInvertY)
|
||||||
shader->setInvertY(true);
|
shader->setInvertY(true);
|
||||||
|
|
||||||
|
if (HlslDxPositionW)
|
||||||
|
shader->setDxPositionW(true);
|
||||||
|
|
||||||
// Set up the environment, some subsettings take precedence over earlier
|
// Set up the environment, some subsettings take precedence over earlier
|
||||||
// ways of setting things.
|
// ways of setting things.
|
||||||
if (Options & EOptionSpv) {
|
if (Options & EOptionSpv) {
|
||||||
@ -1834,6 +1853,8 @@ void usage()
|
|||||||
" --hlsl-dx9-compatible interprets sampler declarations as a\n"
|
" --hlsl-dx9-compatible interprets sampler declarations as a\n"
|
||||||
" texture/sampler combo like DirectX9 would,\n"
|
" texture/sampler combo like DirectX9 would,\n"
|
||||||
" and recognizes DirectX9-specific semantics\n"
|
" and recognizes DirectX9-specific semantics\n"
|
||||||
|
" --hlsl-dx-position-w W component of SV_Position in HLSL fragment\n"
|
||||||
|
" shaders compatible with DirectX\n"
|
||||||
" --invert-y | --iy invert position.Y output in vertex shader\n"
|
" --invert-y | --iy invert position.Y output in vertex shader\n"
|
||||||
" --keep-uncalled | --ku don't eliminate uncalled functions\n"
|
" --keep-uncalled | --ku don't eliminate uncalled functions\n"
|
||||||
" --nan-clamp favor non-NaN operand in min, max, and clamp\n"
|
" --nan-clamp favor non-NaN operand in min, max, and clamp\n"
|
||||||
|
20
Test/BestMatchFunction.vert
Normal file
20
Test/BestMatchFunction.vert
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
#version 150
|
||||||
|
#extension GL_ARB_gpu_shader5 : require
|
||||||
|
|
||||||
|
uniform ivec4 u1;
|
||||||
|
uniform uvec4 u2;
|
||||||
|
out vec4 result;
|
||||||
|
vec4 f(in vec4 a, in vec4 b){ return a * b;} // choice 1
|
||||||
|
vec4 f(in uvec4 a, in uvec4 b){ return vec4(a - b);} // choice 2
|
||||||
|
|
||||||
|
void main()
|
||||||
|
{
|
||||||
|
result = f(u1, u2); // should match choice 2. which have less implicit conversion.
|
||||||
|
switch (gl_VertexID)
|
||||||
|
{
|
||||||
|
case 0: gl_Position = vec4(-1.0, 1.0, 0.0, 1.0); break;
|
||||||
|
case 1: gl_Position = vec4( 1.0, 1.0, 0.0, 1.0); break;
|
||||||
|
case 2: gl_Position = vec4(-1.0,-1.0, 0.0, 1.0); break;
|
||||||
|
case 3: gl_Position = vec4( 1.0,-1.0, 0.0, 1.0); break;
|
||||||
|
}
|
||||||
|
}
|
18
Test/GL_ARB_draw_instanced.vert
Normal file
18
Test/GL_ARB_draw_instanced.vert
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
#version 150
|
||||||
|
#extension GL_ARB_draw_instanced : require
|
||||||
|
#define ID gl_InstanceID
|
||||||
|
|
||||||
|
uniform mat4 gtf_ModelViewProjectionMatrix;
|
||||||
|
uniform vec3 instanceOffsets[3];
|
||||||
|
in vec4 va[gl_MaxVertexAttribs];
|
||||||
|
out vec4 color;
|
||||||
|
|
||||||
|
void main (void)
|
||||||
|
{
|
||||||
|
vec4 vertex = vec4(va[0].xy / 3.0, va[0].zw) + vec4(instanceOffsets[ID], 1.0);
|
||||||
|
color = vec4(0, 0, 0, 0);
|
||||||
|
for (int i = 1; i < gl_MaxVertexAttribs; i++)
|
||||||
|
color += va[i];
|
||||||
|
gl_Position = gtf_ModelViewProjectionMatrix * vertex;
|
||||||
|
gl_PointSize = 1.0;
|
||||||
|
}
|
13
Test/GL_EXT_shader_integer_mix.vert
Normal file
13
Test/GL_EXT_shader_integer_mix.vert
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
#version 330
|
||||||
|
#extension GL_EXT_shader_integer_mix: require
|
||||||
|
|
||||||
|
|
||||||
|
#if !defined GL_EXT_shader_integer_mix
|
||||||
|
# error GL_EXT_shader_integer_mix is not defined
|
||||||
|
#elif GL_EXT_shader_integer_mix != 1
|
||||||
|
# error GL_EXT_shader_integer_mix is not equal to 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
void main(void) {
|
||||||
|
gl_Position = vec4(0);
|
||||||
|
}
|
28
Test/atomicCounterARBOps.vert
Normal file
28
Test/atomicCounterARBOps.vert
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
#version 450 core
|
||||||
|
#extension GL_ARB_shader_atomic_counters: enable
|
||||||
|
#extension GL_ARB_shader_atomic_counter_ops:enable
|
||||||
|
|
||||||
|
layout(binding = 0) uniform atomic_uint counter;
|
||||||
|
|
||||||
|
out highp vec4 vsColor;
|
||||||
|
|
||||||
|
void main(){
|
||||||
|
vec4 outColor = vec4(1.0);
|
||||||
|
uint ret;
|
||||||
|
|
||||||
|
ret = atomicCounterAddARB(counter, 4u);
|
||||||
|
ret = atomicCounterSubtractARB(counter, 4u);
|
||||||
|
ret = atomicCounterMinARB(counter, 4u);
|
||||||
|
ret = atomicCounterMaxARB(counter, 4u);
|
||||||
|
ret = atomicCounterAndARB(counter, 4u);
|
||||||
|
ret = atomicCounterOrARB(counter, 4u);
|
||||||
|
ret = atomicCounterXorARB(counter, 4u);
|
||||||
|
ret = atomicCounterExchangeARB(counter, 4u);
|
||||||
|
ret = atomicCounterCompSwapARB(counter, 4u, 4u);
|
||||||
|
|
||||||
|
uint after = atomicCounter(counter);
|
||||||
|
if (after == ret)
|
||||||
|
outColor = vec4(0.0);
|
||||||
|
|
||||||
|
vsColor = outColor;
|
||||||
|
}
|
@ -6,19 +6,17 @@ hlsl.flattenSubset.frag
|
|||||||
Capability Shader
|
Capability Shader
|
||||||
1: ExtInstImport "GLSL.std.450"
|
1: ExtInstImport "GLSL.std.450"
|
||||||
MemoryModel Logical GLSL450
|
MemoryModel Logical GLSL450
|
||||||
EntryPoint Fragment 4 "main" 47 50
|
EntryPoint Fragment 4 "main" 50
|
||||||
ExecutionMode 4 OriginUpperLeft
|
ExecutionMode 4 OriginUpperLeft
|
||||||
Source HLSL 500
|
Source HLSL 500
|
||||||
Name 4 "main"
|
Name 4 "main"
|
||||||
Name 21 "samp"
|
Name 21 "samp"
|
||||||
Name 33 "tex"
|
Name 33 "tex"
|
||||||
Name 47 "vpos"
|
|
||||||
Name 50 "@entryPointOutput"
|
Name 50 "@entryPointOutput"
|
||||||
Decorate 21(samp) DescriptorSet 0
|
Decorate 21(samp) DescriptorSet 0
|
||||||
Decorate 21(samp) Binding 0
|
Decorate 21(samp) Binding 0
|
||||||
Decorate 33(tex) DescriptorSet 0
|
Decorate 33(tex) DescriptorSet 0
|
||||||
Decorate 33(tex) Binding 1
|
Decorate 33(tex) Binding 1
|
||||||
Decorate 47(vpos) Location 0
|
|
||||||
Decorate 50(@entryPointOutput) Location 0
|
Decorate 50(@entryPointOutput) Location 0
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
@ -34,8 +32,6 @@ hlsl.flattenSubset.frag
|
|||||||
39: TypeVector 6(float) 2
|
39: TypeVector 6(float) 2
|
||||||
40: 6(float) Constant 1056964608
|
40: 6(float) Constant 1056964608
|
||||||
41: 39(fvec2) ConstantComposite 40 40
|
41: 39(fvec2) ConstantComposite 40 40
|
||||||
46: TypePointer Input 7(fvec4)
|
|
||||||
47(vpos): 46(ptr) Variable Input
|
|
||||||
49: TypePointer Output 7(fvec4)
|
49: TypePointer Output 7(fvec4)
|
||||||
50(@entryPointOutput): 49(ptr) Variable Output
|
50(@entryPointOutput): 49(ptr) Variable Output
|
||||||
4(main): 2 Function None 3
|
4(main): 2 Function None 3
|
||||||
|
@ -6,13 +6,11 @@ hlsl.flattenSubset2.frag
|
|||||||
Capability Shader
|
Capability Shader
|
||||||
1: ExtInstImport "GLSL.std.450"
|
1: ExtInstImport "GLSL.std.450"
|
||||||
MemoryModel Logical GLSL450
|
MemoryModel Logical GLSL450
|
||||||
EntryPoint Fragment 4 "main" 49 52
|
EntryPoint Fragment 4 "main" 52
|
||||||
ExecutionMode 4 OriginUpperLeft
|
ExecutionMode 4 OriginUpperLeft
|
||||||
Source HLSL 500
|
Source HLSL 500
|
||||||
Name 4 "main"
|
Name 4 "main"
|
||||||
Name 49 "vpos"
|
|
||||||
Name 52 "@entryPointOutput"
|
Name 52 "@entryPointOutput"
|
||||||
Decorate 49(vpos) Location 0
|
|
||||||
Decorate 52(@entryPointOutput) Location 0
|
Decorate 52(@entryPointOutput) Location 0
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
@ -20,8 +18,6 @@ hlsl.flattenSubset2.frag
|
|||||||
7: TypeVector 6(float) 4
|
7: TypeVector 6(float) 4
|
||||||
43: 6(float) Constant 0
|
43: 6(float) Constant 0
|
||||||
44: 7(fvec4) ConstantComposite 43 43 43 43
|
44: 7(fvec4) ConstantComposite 43 43 43 43
|
||||||
48: TypePointer Input 7(fvec4)
|
|
||||||
49(vpos): 48(ptr) Variable Input
|
|
||||||
51: TypePointer Output 7(fvec4)
|
51: TypePointer Output 7(fvec4)
|
||||||
52(@entryPointOutput): 51(ptr) Variable Output
|
52(@entryPointOutput): 51(ptr) Variable Output
|
||||||
4(main): 2 Function None 3
|
4(main): 2 Function None 3
|
||||||
|
@ -24,18 +24,18 @@ ERROR: node is still EOpNull!
|
|||||||
0:42 Function Definition: main( ( global void)
|
0:42 Function Definition: main( ( global void)
|
||||||
0:42 Function Parameters:
|
0:42 Function Parameters:
|
||||||
0:44 Sequence
|
0:44 Sequence
|
||||||
0:44 texture ( global lowp 4-component vector of int)
|
0:44 texture ( global lowp 4-component vector of int, operation at mediump)
|
||||||
0:44 sampler: direct index for structure ( global lowp isampler3D)
|
0:44 sampler: direct index for structure ( global lowp isampler3D)
|
||||||
0:44 's' ( uniform structure{ global mediump 4-component vector of float u, global mediump 4-component vector of uint v, global lowp isampler3D sampler, global mediump 3-component vector of float w, global structure{ global mediump int a} t})
|
0:44 's' ( uniform structure{ global mediump 4-component vector of float u, global mediump 4-component vector of uint v, global lowp isampler3D sampler, global mediump 3-component vector of float w, global structure{ global mediump int a} t})
|
||||||
0:44 Constant:
|
0:44 Constant:
|
||||||
0:44 2 (const int)
|
0:44 2 (const int)
|
||||||
0:44 Construct vec3 ( temp lowp 3-component vector of float)
|
0:44 Construct vec3 ( temp mediump 3-component vector of float)
|
||||||
0:44 Convert int to float ( temp lowp float)
|
0:44 Convert int to float ( temp mediump float)
|
||||||
0:44 ni: direct index for structure (layout( column_major shared) uniform mediump int)
|
0:44 ni: direct index for structure (layout( column_major shared) uniform mediump int)
|
||||||
0:44 'inst' (layout( column_major shared) uniform block{layout( column_major shared) uniform mediump 4-component vector of uint nbv, layout( column_major shared) uniform mediump int ni})
|
0:44 'inst' (layout( column_major shared) uniform block{layout( column_major shared) uniform mediump 4-component vector of uint nbv, layout( column_major shared) uniform mediump int ni})
|
||||||
0:44 Constant:
|
0:44 Constant:
|
||||||
0:44 1 (const int)
|
0:44 1 (const int)
|
||||||
0:44 Convert uint to float ( temp lowp float)
|
0:44 Convert uint to float ( temp mediump float)
|
||||||
0:44 direct index ( temp mediump uint)
|
0:44 direct index ( temp mediump uint)
|
||||||
0:44 bv: direct index for structure (layout( column_major shared) uniform mediump 4-component vector of uint)
|
0:44 bv: direct index for structure (layout( column_major shared) uniform mediump 4-component vector of uint)
|
||||||
0:44 'anon@0' (layout( column_major shared) uniform block{layout( column_major shared) uniform mediump 4-component vector of uint bv, layout( column_major shared) uniform mediump 2X2 matrix of float bm2, layout( column_major shared) uniform lowp isampler2D sampler, layout( column_major shared) uniform structure{ global mediump int a} t, layout( column_major shared) uniform structure{ global mediump 4-component vector of float u, global mediump 4-component vector of uint v, global lowp isampler3D sampler, global mediump 3-component vector of float w, layout( column_major) global structure{ global mediump int a} t} fbs})
|
0:44 'anon@0' (layout( column_major shared) uniform block{layout( column_major shared) uniform mediump 4-component vector of uint bv, layout( column_major shared) uniform mediump 2X2 matrix of float bm2, layout( column_major shared) uniform lowp isampler2D sampler, layout( column_major shared) uniform structure{ global mediump int a} t, layout( column_major shared) uniform structure{ global mediump 4-component vector of float u, global mediump 4-component vector of uint v, global lowp isampler3D sampler, global mediump 3-component vector of float w, layout( column_major) global structure{ global mediump int a} t} fbs})
|
||||||
@ -43,7 +43,7 @@ ERROR: node is still EOpNull!
|
|||||||
0:44 0 (const uint)
|
0:44 0 (const uint)
|
||||||
0:44 Constant:
|
0:44 Constant:
|
||||||
0:44 1 (const int)
|
0:44 1 (const int)
|
||||||
0:44 Convert uint to float ( temp lowp float)
|
0:44 Convert uint to float ( temp mediump float)
|
||||||
0:44 direct index ( temp mediump uint)
|
0:44 direct index ( temp mediump uint)
|
||||||
0:44 nbv: direct index for structure (layout( column_major shared) uniform mediump 4-component vector of uint)
|
0:44 nbv: direct index for structure (layout( column_major shared) uniform mediump 4-component vector of uint)
|
||||||
0:44 direct index (layout( column_major shared) temp block{layout( column_major shared) uniform mediump 4-component vector of uint nbv, layout( column_major shared) uniform mediump int ni})
|
0:44 direct index (layout( column_major shared) temp block{layout( column_major shared) uniform mediump 4-component vector of uint nbv, layout( column_major shared) uniform mediump int ni})
|
||||||
@ -92,18 +92,18 @@ ERROR: node is still EOpNull!
|
|||||||
0:42 Function Definition: main( ( global void)
|
0:42 Function Definition: main( ( global void)
|
||||||
0:42 Function Parameters:
|
0:42 Function Parameters:
|
||||||
0:44 Sequence
|
0:44 Sequence
|
||||||
0:44 texture ( global lowp 4-component vector of int)
|
0:44 texture ( global lowp 4-component vector of int, operation at mediump)
|
||||||
0:44 sampler: direct index for structure ( global lowp isampler3D)
|
0:44 sampler: direct index for structure ( global lowp isampler3D)
|
||||||
0:44 's' ( uniform structure{ global mediump 4-component vector of float u, global mediump 4-component vector of uint v, global lowp isampler3D sampler, global mediump 3-component vector of float w, global structure{ global mediump int a} t})
|
0:44 's' ( uniform structure{ global mediump 4-component vector of float u, global mediump 4-component vector of uint v, global lowp isampler3D sampler, global mediump 3-component vector of float w, global structure{ global mediump int a} t})
|
||||||
0:44 Constant:
|
0:44 Constant:
|
||||||
0:44 2 (const int)
|
0:44 2 (const int)
|
||||||
0:44 Construct vec3 ( temp lowp 3-component vector of float)
|
0:44 Construct vec3 ( temp mediump 3-component vector of float)
|
||||||
0:44 Convert int to float ( temp lowp float)
|
0:44 Convert int to float ( temp mediump float)
|
||||||
0:44 ni: direct index for structure (layout( column_major shared) uniform mediump int)
|
0:44 ni: direct index for structure (layout( column_major shared) uniform mediump int)
|
||||||
0:44 'inst' (layout( column_major shared) uniform block{layout( column_major shared) uniform mediump 4-component vector of uint nbv, layout( column_major shared) uniform mediump int ni})
|
0:44 'inst' (layout( column_major shared) uniform block{layout( column_major shared) uniform mediump 4-component vector of uint nbv, layout( column_major shared) uniform mediump int ni})
|
||||||
0:44 Constant:
|
0:44 Constant:
|
||||||
0:44 1 (const int)
|
0:44 1 (const int)
|
||||||
0:44 Convert uint to float ( temp lowp float)
|
0:44 Convert uint to float ( temp mediump float)
|
||||||
0:44 direct index ( temp mediump uint)
|
0:44 direct index ( temp mediump uint)
|
||||||
0:44 bv: direct index for structure (layout( column_major shared) uniform mediump 4-component vector of uint)
|
0:44 bv: direct index for structure (layout( column_major shared) uniform mediump 4-component vector of uint)
|
||||||
0:44 'anon@0' (layout( column_major shared) uniform block{layout( column_major shared) uniform mediump 4-component vector of uint bv, layout( column_major shared) uniform mediump 2X2 matrix of float bm2, layout( column_major shared) uniform lowp isampler2D sampler, layout( column_major shared) uniform structure{ global mediump int a} t, layout( column_major shared) uniform structure{ global mediump 4-component vector of float u, global mediump 4-component vector of uint v, global lowp isampler3D sampler, global mediump 3-component vector of float w, layout( column_major) global structure{ global mediump int a} t} fbs})
|
0:44 'anon@0' (layout( column_major shared) uniform block{layout( column_major shared) uniform mediump 4-component vector of uint bv, layout( column_major shared) uniform mediump 2X2 matrix of float bm2, layout( column_major shared) uniform lowp isampler2D sampler, layout( column_major shared) uniform structure{ global mediump int a} t, layout( column_major shared) uniform structure{ global mediump 4-component vector of float u, global mediump 4-component vector of uint v, global lowp isampler3D sampler, global mediump 3-component vector of float w, layout( column_major) global structure{ global mediump int a} t} fbs})
|
||||||
@ -111,7 +111,7 @@ ERROR: node is still EOpNull!
|
|||||||
0:44 0 (const uint)
|
0:44 0 (const uint)
|
||||||
0:44 Constant:
|
0:44 Constant:
|
||||||
0:44 1 (const int)
|
0:44 1 (const int)
|
||||||
0:44 Convert uint to float ( temp lowp float)
|
0:44 Convert uint to float ( temp mediump float)
|
||||||
0:44 direct index ( temp mediump uint)
|
0:44 direct index ( temp mediump uint)
|
||||||
0:44 nbv: direct index for structure (layout( column_major shared) uniform mediump 4-component vector of uint)
|
0:44 nbv: direct index for structure (layout( column_major shared) uniform mediump 4-component vector of uint)
|
||||||
0:44 direct index (layout( column_major shared) temp block{layout( column_major shared) uniform mediump 4-component vector of uint nbv, layout( column_major shared) uniform mediump int ni})
|
0:44 direct index (layout( column_major shared) temp block{layout( column_major shared) uniform mediump 4-component vector of uint nbv, layout( column_major shared) uniform mediump int ni})
|
||||||
|
@ -180,7 +180,7 @@ ERROR: node is still EOpNull!
|
|||||||
0:91 'i' ( temp highp int)
|
0:91 'i' ( temp highp int)
|
||||||
0:92 imageStore ( global highp void)
|
0:92 imageStore ( global highp void)
|
||||||
0:92 'ii2da' ( writeonly uniform highp iimage2DArray)
|
0:92 'ii2da' ( writeonly uniform highp iimage2DArray)
|
||||||
0:92 Construct ivec3 ( temp 3-component vector of int)
|
0:92 Construct ivec3 ( temp highp 3-component vector of int)
|
||||||
0:92 'i' ( temp highp int)
|
0:92 'i' ( temp highp int)
|
||||||
0:92 'i' ( temp highp int)
|
0:92 'i' ( temp highp int)
|
||||||
0:92 'i' ( temp highp int)
|
0:92 'i' ( temp highp int)
|
||||||
@ -189,9 +189,9 @@ ERROR: node is still EOpNull!
|
|||||||
0:92 0 (const int)
|
0:92 0 (const int)
|
||||||
0:92 0 (const int)
|
0:92 0 (const int)
|
||||||
0:92 0 (const int)
|
0:92 0 (const int)
|
||||||
0:93 imageLoad ( global mediump 4-component vector of float)
|
0:93 imageLoad ( global mediump 4-component vector of float, operation at highp)
|
||||||
0:93 'img2Drgba' (layout( rgba32f) readonly uniform mediump image2D)
|
0:93 'img2Drgba' (layout( rgba32f) readonly uniform mediump image2D)
|
||||||
0:93 Construct ivec2 ( temp mediump 2-component vector of int)
|
0:93 Construct ivec2 ( temp highp 2-component vector of int)
|
||||||
0:93 'i' ( temp highp int)
|
0:93 'i' ( temp highp int)
|
||||||
0:93 'i' ( temp highp int)
|
0:93 'i' ( temp highp int)
|
||||||
0:94 imageLoad ( global highp 4-component vector of int)
|
0:94 imageLoad ( global highp 4-component vector of int)
|
||||||
|
@ -270,7 +270,7 @@ ERROR: node is still EOpNull!
|
|||||||
0:42 Constant:
|
0:42 Constant:
|
||||||
0:42 0.000000
|
0:42 0.000000
|
||||||
0:42 0.000000
|
0:42 0.000000
|
||||||
0:42 Convert float to int ( temp highp 2-component vector of int)
|
0:42 Convert float to int ( temp mediump 2-component vector of int)
|
||||||
0:42 'c2D' ( smooth in mediump 2-component vector of float)
|
0:42 'c2D' ( smooth in mediump 2-component vector of float)
|
||||||
0:43 textureProjGradOffset ( global highp 4-component vector of uint)
|
0:43 textureProjGradOffset ( global highp 4-component vector of uint)
|
||||||
0:43 'usamp2d' ( uniform highp usampler2D)
|
0:43 'usamp2d' ( uniform highp usampler2D)
|
||||||
@ -471,7 +471,7 @@ ERROR: node is still EOpNull!
|
|||||||
0:211 Constant:
|
0:211 Constant:
|
||||||
0:211 0.100000
|
0:211 0.100000
|
||||||
0:211 0.100000
|
0:211 0.100000
|
||||||
0:211 Convert float to int ( temp highp 2-component vector of int)
|
0:211 Convert float to int ( temp mediump 2-component vector of int)
|
||||||
0:211 'inf' ( smooth in mediump 2-component vector of float)
|
0:211 'inf' ( smooth in mediump 2-component vector of float)
|
||||||
0:212 textureGatherOffsets ( global highp 4-component vector of float)
|
0:212 textureGatherOffsets ( global highp 4-component vector of float)
|
||||||
0:212 direct index ( temp highp sampler2D)
|
0:212 direct index ( temp highp sampler2D)
|
||||||
@ -507,7 +507,7 @@ ERROR: node is still EOpNull!
|
|||||||
0:221 Constant:
|
0:221 Constant:
|
||||||
0:221 0.100000
|
0:221 0.100000
|
||||||
0:221 0.100000
|
0:221 0.100000
|
||||||
0:221 Convert float to int ( temp highp 2-component vector of int)
|
0:221 Convert float to int ( temp mediump 2-component vector of int)
|
||||||
0:221 'inf' ( smooth in mediump 2-component vector of float)
|
0:221 'inf' ( smooth in mediump 2-component vector of float)
|
||||||
0:222 textureGatherOffsets ( global highp 4-component vector of float)
|
0:222 textureGatherOffsets ( global highp 4-component vector of float)
|
||||||
0:222 direct index ( temp highp sampler2D)
|
0:222 direct index ( temp highp sampler2D)
|
||||||
|
@ -330,7 +330,7 @@ ERROR: node is still EOpNull!
|
|||||||
0:164 'sIndex' ( uniform highp int)
|
0:164 'sIndex' ( uniform highp int)
|
||||||
0:164 Constant:
|
0:164 Constant:
|
||||||
0:164 2 (const int)
|
0:164 2 (const int)
|
||||||
0:165 textureGatherOffset ( global lowp 4-component vector of float)
|
0:165 textureGatherOffset ( global lowp 4-component vector of float, operation at highp)
|
||||||
0:165 direct index ( temp lowp sampler2D)
|
0:165 direct index ( temp lowp sampler2D)
|
||||||
0:165 'sArray' ( uniform 4-element array of lowp sampler2D)
|
0:165 'sArray' ( uniform 4-element array of lowp sampler2D)
|
||||||
0:165 Constant:
|
0:165 Constant:
|
||||||
@ -338,7 +338,7 @@ ERROR: node is still EOpNull!
|
|||||||
0:165 Constant:
|
0:165 Constant:
|
||||||
0:165 0.100000
|
0:165 0.100000
|
||||||
0:165 0.100000
|
0:165 0.100000
|
||||||
0:165 Convert float to int ( temp lowp 2-component vector of int)
|
0:165 Convert float to int ( temp highp 2-component vector of int)
|
||||||
0:165 'inf' ( in highp 2-component vector of float)
|
0:165 'inf' ( in highp 2-component vector of float)
|
||||||
0:166 textureGatherOffsets ( global lowp 4-component vector of float, operation at highp)
|
0:166 textureGatherOffsets ( global lowp 4-component vector of float, operation at highp)
|
||||||
0:166 direct index ( temp lowp sampler2D)
|
0:166 direct index ( temp lowp sampler2D)
|
||||||
@ -394,7 +394,7 @@ ERROR: node is still EOpNull!
|
|||||||
0:179 'sIndex' ( uniform highp int)
|
0:179 'sIndex' ( uniform highp int)
|
||||||
0:179 Constant:
|
0:179 Constant:
|
||||||
0:179 2 (const int)
|
0:179 2 (const int)
|
||||||
0:180 textureGatherOffset ( global lowp 4-component vector of float)
|
0:180 textureGatherOffset ( global lowp 4-component vector of float, operation at highp)
|
||||||
0:180 direct index ( temp lowp sampler2D)
|
0:180 direct index ( temp lowp sampler2D)
|
||||||
0:180 'sArray' ( uniform 4-element array of lowp sampler2D)
|
0:180 'sArray' ( uniform 4-element array of lowp sampler2D)
|
||||||
0:180 Constant:
|
0:180 Constant:
|
||||||
@ -402,7 +402,7 @@ ERROR: node is still EOpNull!
|
|||||||
0:180 Constant:
|
0:180 Constant:
|
||||||
0:180 0.100000
|
0:180 0.100000
|
||||||
0:180 0.100000
|
0:180 0.100000
|
||||||
0:180 Convert float to int ( temp lowp 2-component vector of int)
|
0:180 Convert float to int ( temp highp 2-component vector of int)
|
||||||
0:180 'inf' ( in highp 2-component vector of float)
|
0:180 'inf' ( in highp 2-component vector of float)
|
||||||
0:181 textureGatherOffsets ( global lowp 4-component vector of float, operation at highp)
|
0:181 textureGatherOffsets ( global lowp 4-component vector of float, operation at highp)
|
||||||
0:181 direct index ( temp lowp sampler2D)
|
0:181 direct index ( temp lowp sampler2D)
|
||||||
|
@ -121,7 +121,7 @@ ERROR: node is still EOpNull!
|
|||||||
0:76 'inf' ( smooth in mediump 2-component vector of float)
|
0:76 'inf' ( smooth in mediump 2-component vector of float)
|
||||||
0:76 'ing' ( smooth in mediump 2-component vector of float)
|
0:76 'ing' ( smooth in mediump 2-component vector of float)
|
||||||
0:76 'h' ( noContraction temp mediump 2-component vector of float)
|
0:76 'h' ( noContraction temp mediump 2-component vector of float)
|
||||||
0:77 textureGatherOffset ( global lowp 4-component vector of float)
|
0:77 textureGatherOffset ( global lowp 4-component vector of float, operation at mediump)
|
||||||
0:77 direct index ( temp lowp sampler2D)
|
0:77 direct index ( temp lowp sampler2D)
|
||||||
0:77 'sArray' ( uniform 4-element array of lowp sampler2D)
|
0:77 'sArray' ( uniform 4-element array of lowp sampler2D)
|
||||||
0:77 Constant:
|
0:77 Constant:
|
||||||
@ -129,7 +129,7 @@ ERROR: node is still EOpNull!
|
|||||||
0:77 Constant:
|
0:77 Constant:
|
||||||
0:77 0.100000
|
0:77 0.100000
|
||||||
0:77 0.100000
|
0:77 0.100000
|
||||||
0:77 Convert float to int ( temp lowp 2-component vector of int)
|
0:77 Convert float to int ( temp mediump 2-component vector of int)
|
||||||
0:77 'inf' ( smooth in mediump 2-component vector of float)
|
0:77 'inf' ( smooth in mediump 2-component vector of float)
|
||||||
0:78 textureGatherOffsets ( global lowp 4-component vector of float, operation at mediump)
|
0:78 textureGatherOffsets ( global lowp 4-component vector of float, operation at mediump)
|
||||||
0:78 direct index ( temp lowp sampler2D)
|
0:78 direct index ( temp lowp sampler2D)
|
||||||
|
@ -99,7 +99,7 @@ ERROR: node is still EOpNull!
|
|||||||
0:70 'sIndex' ( uniform highp int)
|
0:70 'sIndex' ( uniform highp int)
|
||||||
0:70 Constant:
|
0:70 Constant:
|
||||||
0:70 2 (const int)
|
0:70 2 (const int)
|
||||||
0:71 textureGatherOffset ( global lowp 4-component vector of float)
|
0:71 textureGatherOffset ( global lowp 4-component vector of float, operation at highp)
|
||||||
0:71 direct index ( temp lowp sampler2D)
|
0:71 direct index ( temp lowp sampler2D)
|
||||||
0:71 'sArray' ( uniform 4-element array of lowp sampler2D)
|
0:71 'sArray' ( uniform 4-element array of lowp sampler2D)
|
||||||
0:71 Constant:
|
0:71 Constant:
|
||||||
@ -107,7 +107,7 @@ ERROR: node is still EOpNull!
|
|||||||
0:71 Constant:
|
0:71 Constant:
|
||||||
0:71 0.100000
|
0:71 0.100000
|
||||||
0:71 0.100000
|
0:71 0.100000
|
||||||
0:71 Convert float to int ( temp lowp 2-component vector of int)
|
0:71 Convert float to int ( temp highp 2-component vector of int)
|
||||||
0:71 'inf' ( in highp 2-component vector of float)
|
0:71 'inf' ( in highp 2-component vector of float)
|
||||||
0:72 textureGatherOffsets ( global lowp 4-component vector of float, operation at highp)
|
0:72 textureGatherOffsets ( global lowp 4-component vector of float, operation at highp)
|
||||||
0:72 direct index ( temp lowp sampler2D)
|
0:72 direct index ( temp lowp sampler2D)
|
||||||
|
206
Test/baseResults/BestMatchFunction.vert.out
Normal file
206
Test/baseResults/BestMatchFunction.vert.out
Normal file
@ -0,0 +1,206 @@
|
|||||||
|
BestMatchFunction.vert
|
||||||
|
WARNING: 0:2: '#extension' : extension is only partially supported: GL_ARB_gpu_shader5
|
||||||
|
|
||||||
|
Shader version: 150
|
||||||
|
Requested GL_ARB_gpu_shader5
|
||||||
|
0:? Sequence
|
||||||
|
0:7 Function Definition: f(vf4;vf4; ( global 4-component vector of float)
|
||||||
|
0:7 Function Parameters:
|
||||||
|
0:7 'a' ( in 4-component vector of float)
|
||||||
|
0:7 'b' ( in 4-component vector of float)
|
||||||
|
0:7 Sequence
|
||||||
|
0:7 Branch: Return with expression
|
||||||
|
0:7 component-wise multiply ( temp 4-component vector of float)
|
||||||
|
0:7 'a' ( in 4-component vector of float)
|
||||||
|
0:7 'b' ( in 4-component vector of float)
|
||||||
|
0:8 Function Definition: f(vu4;vu4; ( global 4-component vector of float)
|
||||||
|
0:8 Function Parameters:
|
||||||
|
0:8 'a' ( in 4-component vector of uint)
|
||||||
|
0:8 'b' ( in 4-component vector of uint)
|
||||||
|
0:8 Sequence
|
||||||
|
0:8 Branch: Return with expression
|
||||||
|
0:8 Convert uint to float ( temp 4-component vector of float)
|
||||||
|
0:8 subtract ( temp 4-component vector of uint)
|
||||||
|
0:8 'a' ( in 4-component vector of uint)
|
||||||
|
0:8 'b' ( in 4-component vector of uint)
|
||||||
|
0:10 Function Definition: main( ( global void)
|
||||||
|
0:10 Function Parameters:
|
||||||
|
0:12 Sequence
|
||||||
|
0:12 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:12 'result' ( smooth out 4-component vector of float)
|
||||||
|
0:12 Function Call: f(vu4;vu4; ( global 4-component vector of float)
|
||||||
|
0:12 Convert int to uint ( temp 4-component vector of uint)
|
||||||
|
0:12 'u1' ( uniform 4-component vector of int)
|
||||||
|
0:12 'u2' ( uniform 4-component vector of uint)
|
||||||
|
0:13 switch
|
||||||
|
0:13 condition
|
||||||
|
0:13 'gl_VertexID' ( gl_VertexId int VertexId)
|
||||||
|
0:13 body
|
||||||
|
0:13 Sequence
|
||||||
|
0:15 case: with expression
|
||||||
|
0:15 Constant:
|
||||||
|
0:15 0 (const int)
|
||||||
|
0:? Sequence
|
||||||
|
0:15 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:15 gl_Position: direct index for structure ( gl_Position 4-component vector of float Position)
|
||||||
|
0:15 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:15 Constant:
|
||||||
|
0:15 0 (const uint)
|
||||||
|
0:15 Constant:
|
||||||
|
0:15 -1.000000
|
||||||
|
0:15 1.000000
|
||||||
|
0:15 0.000000
|
||||||
|
0:15 1.000000
|
||||||
|
0:15 Branch: Break
|
||||||
|
0:16 case: with expression
|
||||||
|
0:16 Constant:
|
||||||
|
0:16 1 (const int)
|
||||||
|
0:? Sequence
|
||||||
|
0:16 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:16 gl_Position: direct index for structure ( gl_Position 4-component vector of float Position)
|
||||||
|
0:16 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:16 Constant:
|
||||||
|
0:16 0 (const uint)
|
||||||
|
0:16 Constant:
|
||||||
|
0:16 1.000000
|
||||||
|
0:16 1.000000
|
||||||
|
0:16 0.000000
|
||||||
|
0:16 1.000000
|
||||||
|
0:16 Branch: Break
|
||||||
|
0:17 case: with expression
|
||||||
|
0:17 Constant:
|
||||||
|
0:17 2 (const int)
|
||||||
|
0:? Sequence
|
||||||
|
0:17 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:17 gl_Position: direct index for structure ( gl_Position 4-component vector of float Position)
|
||||||
|
0:17 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:17 Constant:
|
||||||
|
0:17 0 (const uint)
|
||||||
|
0:17 Constant:
|
||||||
|
0:17 -1.000000
|
||||||
|
0:17 -1.000000
|
||||||
|
0:17 0.000000
|
||||||
|
0:17 1.000000
|
||||||
|
0:17 Branch: Break
|
||||||
|
0:18 case: with expression
|
||||||
|
0:18 Constant:
|
||||||
|
0:18 3 (const int)
|
||||||
|
0:? Sequence
|
||||||
|
0:18 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:18 gl_Position: direct index for structure ( gl_Position 4-component vector of float Position)
|
||||||
|
0:18 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:18 Constant:
|
||||||
|
0:18 0 (const uint)
|
||||||
|
0:18 Constant:
|
||||||
|
0:18 1.000000
|
||||||
|
0:18 -1.000000
|
||||||
|
0:18 0.000000
|
||||||
|
0:18 1.000000
|
||||||
|
0:18 Branch: Break
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'u1' ( uniform 4-component vector of int)
|
||||||
|
0:? 'u2' ( uniform 4-component vector of uint)
|
||||||
|
0:? 'result' ( smooth out 4-component vector of float)
|
||||||
|
0:? 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:? 'gl_VertexID' ( gl_VertexId int VertexId)
|
||||||
|
0:? 'gl_InstanceID' ( gl_InstanceId int InstanceId)
|
||||||
|
|
||||||
|
|
||||||
|
Linked vertex stage:
|
||||||
|
|
||||||
|
|
||||||
|
Shader version: 150
|
||||||
|
Requested GL_ARB_gpu_shader5
|
||||||
|
0:? Sequence
|
||||||
|
0:8 Function Definition: f(vu4;vu4; ( global 4-component vector of float)
|
||||||
|
0:8 Function Parameters:
|
||||||
|
0:8 'a' ( in 4-component vector of uint)
|
||||||
|
0:8 'b' ( in 4-component vector of uint)
|
||||||
|
0:8 Sequence
|
||||||
|
0:8 Branch: Return with expression
|
||||||
|
0:8 Convert uint to float ( temp 4-component vector of float)
|
||||||
|
0:8 subtract ( temp 4-component vector of uint)
|
||||||
|
0:8 'a' ( in 4-component vector of uint)
|
||||||
|
0:8 'b' ( in 4-component vector of uint)
|
||||||
|
0:10 Function Definition: main( ( global void)
|
||||||
|
0:10 Function Parameters:
|
||||||
|
0:12 Sequence
|
||||||
|
0:12 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:12 'result' ( smooth out 4-component vector of float)
|
||||||
|
0:12 Function Call: f(vu4;vu4; ( global 4-component vector of float)
|
||||||
|
0:12 Convert int to uint ( temp 4-component vector of uint)
|
||||||
|
0:12 'u1' ( uniform 4-component vector of int)
|
||||||
|
0:12 'u2' ( uniform 4-component vector of uint)
|
||||||
|
0:13 switch
|
||||||
|
0:13 condition
|
||||||
|
0:13 'gl_VertexID' ( gl_VertexId int VertexId)
|
||||||
|
0:13 body
|
||||||
|
0:13 Sequence
|
||||||
|
0:15 case: with expression
|
||||||
|
0:15 Constant:
|
||||||
|
0:15 0 (const int)
|
||||||
|
0:? Sequence
|
||||||
|
0:15 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:15 gl_Position: direct index for structure ( gl_Position 4-component vector of float Position)
|
||||||
|
0:15 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:15 Constant:
|
||||||
|
0:15 0 (const uint)
|
||||||
|
0:15 Constant:
|
||||||
|
0:15 -1.000000
|
||||||
|
0:15 1.000000
|
||||||
|
0:15 0.000000
|
||||||
|
0:15 1.000000
|
||||||
|
0:15 Branch: Break
|
||||||
|
0:16 case: with expression
|
||||||
|
0:16 Constant:
|
||||||
|
0:16 1 (const int)
|
||||||
|
0:? Sequence
|
||||||
|
0:16 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:16 gl_Position: direct index for structure ( gl_Position 4-component vector of float Position)
|
||||||
|
0:16 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:16 Constant:
|
||||||
|
0:16 0 (const uint)
|
||||||
|
0:16 Constant:
|
||||||
|
0:16 1.000000
|
||||||
|
0:16 1.000000
|
||||||
|
0:16 0.000000
|
||||||
|
0:16 1.000000
|
||||||
|
0:16 Branch: Break
|
||||||
|
0:17 case: with expression
|
||||||
|
0:17 Constant:
|
||||||
|
0:17 2 (const int)
|
||||||
|
0:? Sequence
|
||||||
|
0:17 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:17 gl_Position: direct index for structure ( gl_Position 4-component vector of float Position)
|
||||||
|
0:17 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:17 Constant:
|
||||||
|
0:17 0 (const uint)
|
||||||
|
0:17 Constant:
|
||||||
|
0:17 -1.000000
|
||||||
|
0:17 -1.000000
|
||||||
|
0:17 0.000000
|
||||||
|
0:17 1.000000
|
||||||
|
0:17 Branch: Break
|
||||||
|
0:18 case: with expression
|
||||||
|
0:18 Constant:
|
||||||
|
0:18 3 (const int)
|
||||||
|
0:? Sequence
|
||||||
|
0:18 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:18 gl_Position: direct index for structure ( gl_Position 4-component vector of float Position)
|
||||||
|
0:18 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:18 Constant:
|
||||||
|
0:18 0 (const uint)
|
||||||
|
0:18 Constant:
|
||||||
|
0:18 1.000000
|
||||||
|
0:18 -1.000000
|
||||||
|
0:18 0.000000
|
||||||
|
0:18 1.000000
|
||||||
|
0:18 Branch: Break
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'u1' ( uniform 4-component vector of int)
|
||||||
|
0:? 'u2' ( uniform 4-component vector of uint)
|
||||||
|
0:? 'result' ( smooth out 4-component vector of float)
|
||||||
|
0:? 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:? 'gl_VertexID' ( gl_VertexId int VertexId)
|
||||||
|
0:? 'gl_InstanceID' ( gl_InstanceId int InstanceId)
|
||||||
|
|
189
Test/baseResults/GL_ARB_draw_instanced.vert.out
Normal file
189
Test/baseResults/GL_ARB_draw_instanced.vert.out
Normal file
@ -0,0 +1,189 @@
|
|||||||
|
GL_ARB_draw_instanced.vert
|
||||||
|
Shader version: 150
|
||||||
|
Requested GL_ARB_draw_instanced
|
||||||
|
0:? Sequence
|
||||||
|
0:10 Function Definition: main( ( global void)
|
||||||
|
0:10 Function Parameters:
|
||||||
|
0:12 Sequence
|
||||||
|
0:12 Sequence
|
||||||
|
0:12 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:12 'vertex' ( temp 4-component vector of float)
|
||||||
|
0:12 add ( temp 4-component vector of float)
|
||||||
|
0:12 Construct vec4 ( temp 4-component vector of float)
|
||||||
|
0:12 divide ( temp 2-component vector of float)
|
||||||
|
0:12 vector swizzle ( temp 2-component vector of float)
|
||||||
|
0:12 direct index ( temp 4-component vector of float)
|
||||||
|
0:12 'va' ( in 64-element array of 4-component vector of float)
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 0 (const int)
|
||||||
|
0:12 Sequence
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 0 (const int)
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 1 (const int)
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 3.000000
|
||||||
|
0:12 vector swizzle ( temp 2-component vector of float)
|
||||||
|
0:12 direct index ( temp 4-component vector of float)
|
||||||
|
0:12 'va' ( in 64-element array of 4-component vector of float)
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 0 (const int)
|
||||||
|
0:12 Sequence
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 2 (const int)
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 3 (const int)
|
||||||
|
0:12 Construct vec4 ( temp 4-component vector of float)
|
||||||
|
0:12 indirect index ( temp 3-component vector of float)
|
||||||
|
0:12 'instanceOffsets' ( uniform 3-element array of 3-component vector of float)
|
||||||
|
0:12 'gl_InstanceID' ( gl_InstanceId int InstanceId)
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 1.000000
|
||||||
|
0:13 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:13 'color' ( smooth out 4-component vector of float)
|
||||||
|
0:13 Constant:
|
||||||
|
0:13 0.000000
|
||||||
|
0:13 0.000000
|
||||||
|
0:13 0.000000
|
||||||
|
0:13 0.000000
|
||||||
|
0:14 Sequence
|
||||||
|
0:14 Sequence
|
||||||
|
0:14 move second child to first child ( temp int)
|
||||||
|
0:14 'i' ( temp int)
|
||||||
|
0:14 Constant:
|
||||||
|
0:14 1 (const int)
|
||||||
|
0:14 Loop with condition tested first
|
||||||
|
0:14 Loop Condition
|
||||||
|
0:14 Compare Less Than ( temp bool)
|
||||||
|
0:14 'i' ( temp int)
|
||||||
|
0:14 Constant:
|
||||||
|
0:14 64 (const int)
|
||||||
|
0:14 Loop Body
|
||||||
|
0:15 add second child into first child ( temp 4-component vector of float)
|
||||||
|
0:15 'color' ( smooth out 4-component vector of float)
|
||||||
|
0:15 indirect index ( temp 4-component vector of float)
|
||||||
|
0:15 'va' ( in 64-element array of 4-component vector of float)
|
||||||
|
0:15 'i' ( temp int)
|
||||||
|
0:14 Loop Terminal Expression
|
||||||
|
0:14 Post-Increment ( temp int)
|
||||||
|
0:14 'i' ( temp int)
|
||||||
|
0:16 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:16 gl_Position: direct index for structure ( gl_Position 4-component vector of float Position)
|
||||||
|
0:16 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:16 Constant:
|
||||||
|
0:16 0 (const uint)
|
||||||
|
0:16 matrix-times-vector ( temp 4-component vector of float)
|
||||||
|
0:16 'gtf_ModelViewProjectionMatrix' ( uniform 4X4 matrix of float)
|
||||||
|
0:16 'vertex' ( temp 4-component vector of float)
|
||||||
|
0:17 move second child to first child ( temp float)
|
||||||
|
0:17 gl_PointSize: direct index for structure ( gl_PointSize float PointSize)
|
||||||
|
0:17 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:17 Constant:
|
||||||
|
0:17 1 (const uint)
|
||||||
|
0:17 Constant:
|
||||||
|
0:17 1.000000
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'gtf_ModelViewProjectionMatrix' ( uniform 4X4 matrix of float)
|
||||||
|
0:? 'instanceOffsets' ( uniform 3-element array of 3-component vector of float)
|
||||||
|
0:? 'va' ( in 64-element array of 4-component vector of float)
|
||||||
|
0:? 'color' ( smooth out 4-component vector of float)
|
||||||
|
0:? 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:? 'gl_VertexID' ( gl_VertexId int VertexId)
|
||||||
|
0:? 'gl_InstanceID' ( gl_InstanceId int InstanceId)
|
||||||
|
|
||||||
|
|
||||||
|
Linked vertex stage:
|
||||||
|
|
||||||
|
|
||||||
|
Shader version: 150
|
||||||
|
Requested GL_ARB_draw_instanced
|
||||||
|
0:? Sequence
|
||||||
|
0:10 Function Definition: main( ( global void)
|
||||||
|
0:10 Function Parameters:
|
||||||
|
0:12 Sequence
|
||||||
|
0:12 Sequence
|
||||||
|
0:12 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:12 'vertex' ( temp 4-component vector of float)
|
||||||
|
0:12 add ( temp 4-component vector of float)
|
||||||
|
0:12 Construct vec4 ( temp 4-component vector of float)
|
||||||
|
0:12 divide ( temp 2-component vector of float)
|
||||||
|
0:12 vector swizzle ( temp 2-component vector of float)
|
||||||
|
0:12 direct index ( temp 4-component vector of float)
|
||||||
|
0:12 'va' ( in 64-element array of 4-component vector of float)
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 0 (const int)
|
||||||
|
0:12 Sequence
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 0 (const int)
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 1 (const int)
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 3.000000
|
||||||
|
0:12 vector swizzle ( temp 2-component vector of float)
|
||||||
|
0:12 direct index ( temp 4-component vector of float)
|
||||||
|
0:12 'va' ( in 64-element array of 4-component vector of float)
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 0 (const int)
|
||||||
|
0:12 Sequence
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 2 (const int)
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 3 (const int)
|
||||||
|
0:12 Construct vec4 ( temp 4-component vector of float)
|
||||||
|
0:12 indirect index ( temp 3-component vector of float)
|
||||||
|
0:12 'instanceOffsets' ( uniform 3-element array of 3-component vector of float)
|
||||||
|
0:12 'gl_InstanceID' ( gl_InstanceId int InstanceId)
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 1.000000
|
||||||
|
0:13 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:13 'color' ( smooth out 4-component vector of float)
|
||||||
|
0:13 Constant:
|
||||||
|
0:13 0.000000
|
||||||
|
0:13 0.000000
|
||||||
|
0:13 0.000000
|
||||||
|
0:13 0.000000
|
||||||
|
0:14 Sequence
|
||||||
|
0:14 Sequence
|
||||||
|
0:14 move second child to first child ( temp int)
|
||||||
|
0:14 'i' ( temp int)
|
||||||
|
0:14 Constant:
|
||||||
|
0:14 1 (const int)
|
||||||
|
0:14 Loop with condition tested first
|
||||||
|
0:14 Loop Condition
|
||||||
|
0:14 Compare Less Than ( temp bool)
|
||||||
|
0:14 'i' ( temp int)
|
||||||
|
0:14 Constant:
|
||||||
|
0:14 64 (const int)
|
||||||
|
0:14 Loop Body
|
||||||
|
0:15 add second child into first child ( temp 4-component vector of float)
|
||||||
|
0:15 'color' ( smooth out 4-component vector of float)
|
||||||
|
0:15 indirect index ( temp 4-component vector of float)
|
||||||
|
0:15 'va' ( in 64-element array of 4-component vector of float)
|
||||||
|
0:15 'i' ( temp int)
|
||||||
|
0:14 Loop Terminal Expression
|
||||||
|
0:14 Post-Increment ( temp int)
|
||||||
|
0:14 'i' ( temp int)
|
||||||
|
0:16 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:16 gl_Position: direct index for structure ( gl_Position 4-component vector of float Position)
|
||||||
|
0:16 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:16 Constant:
|
||||||
|
0:16 0 (const uint)
|
||||||
|
0:16 matrix-times-vector ( temp 4-component vector of float)
|
||||||
|
0:16 'gtf_ModelViewProjectionMatrix' ( uniform 4X4 matrix of float)
|
||||||
|
0:16 'vertex' ( temp 4-component vector of float)
|
||||||
|
0:17 move second child to first child ( temp float)
|
||||||
|
0:17 gl_PointSize: direct index for structure ( gl_PointSize float PointSize)
|
||||||
|
0:17 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:17 Constant:
|
||||||
|
0:17 1 (const uint)
|
||||||
|
0:17 Constant:
|
||||||
|
0:17 1.000000
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'gtf_ModelViewProjectionMatrix' ( uniform 4X4 matrix of float)
|
||||||
|
0:? 'instanceOffsets' ( uniform 3-element array of 3-component vector of float)
|
||||||
|
0:? 'va' ( in 64-element array of 4-component vector of float)
|
||||||
|
0:? 'color' ( smooth out 4-component vector of float)
|
||||||
|
0:? 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:? 'gl_VertexID' ( gl_VertexId int VertexId)
|
||||||
|
0:? 'gl_InstanceID' ( gl_InstanceId int InstanceId)
|
||||||
|
|
47
Test/baseResults/GL_EXT_shader_integer_mix.vert.out
Normal file
47
Test/baseResults/GL_EXT_shader_integer_mix.vert.out
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
GL_EXT_shader_integer_mix.vert
|
||||||
|
Shader version: 330
|
||||||
|
Requested GL_EXT_shader_integer_mix
|
||||||
|
0:? Sequence
|
||||||
|
0:11 Function Definition: main( ( global void)
|
||||||
|
0:11 Function Parameters:
|
||||||
|
0:12 Sequence
|
||||||
|
0:12 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:12 gl_Position: direct index for structure ( gl_Position 4-component vector of float Position)
|
||||||
|
0:12 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 0 (const uint)
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 0.000000
|
||||||
|
0:12 0.000000
|
||||||
|
0:12 0.000000
|
||||||
|
0:12 0.000000
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:? 'gl_VertexID' ( gl_VertexId int VertexId)
|
||||||
|
0:? 'gl_InstanceID' ( gl_InstanceId int InstanceId)
|
||||||
|
|
||||||
|
|
||||||
|
Linked vertex stage:
|
||||||
|
|
||||||
|
|
||||||
|
Shader version: 330
|
||||||
|
Requested GL_EXT_shader_integer_mix
|
||||||
|
0:? Sequence
|
||||||
|
0:11 Function Definition: main( ( global void)
|
||||||
|
0:11 Function Parameters:
|
||||||
|
0:12 Sequence
|
||||||
|
0:12 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:12 gl_Position: direct index for structure ( gl_Position 4-component vector of float Position)
|
||||||
|
0:12 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 0 (const uint)
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 0.000000
|
||||||
|
0:12 0.000000
|
||||||
|
0:12 0.000000
|
||||||
|
0:12 0.000000
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:? 'gl_VertexID' ( gl_VertexId int VertexId)
|
||||||
|
0:? 'gl_InstanceID' ( gl_InstanceId int InstanceId)
|
||||||
|
|
201
Test/baseResults/atomicCounterARBOps.vert.out
Normal file
201
Test/baseResults/atomicCounterARBOps.vert.out
Normal file
@ -0,0 +1,201 @@
|
|||||||
|
atomicCounterARBOps.vert
|
||||||
|
Shader version: 450
|
||||||
|
Requested GL_ARB_shader_atomic_counter_ops
|
||||||
|
Requested GL_ARB_shader_atomic_counters
|
||||||
|
0:? Sequence
|
||||||
|
0:9 Function Definition: main( ( global void)
|
||||||
|
0:9 Function Parameters:
|
||||||
|
0:10 Sequence
|
||||||
|
0:10 Sequence
|
||||||
|
0:10 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:10 'outColor' ( temp 4-component vector of float)
|
||||||
|
0:10 Constant:
|
||||||
|
0:10 1.000000
|
||||||
|
0:10 1.000000
|
||||||
|
0:10 1.000000
|
||||||
|
0:10 1.000000
|
||||||
|
0:13 move second child to first child ( temp uint)
|
||||||
|
0:13 'ret' ( temp uint)
|
||||||
|
0:13 AtomicCounterAdd ( global uint)
|
||||||
|
0:13 'counter' (layout( binding=0 offset=0) uniform atomic_uint)
|
||||||
|
0:13 Constant:
|
||||||
|
0:13 4 (const uint)
|
||||||
|
0:14 move second child to first child ( temp uint)
|
||||||
|
0:14 'ret' ( temp uint)
|
||||||
|
0:14 AtomicCounterSubtract ( global uint)
|
||||||
|
0:14 'counter' (layout( binding=0 offset=0) uniform atomic_uint)
|
||||||
|
0:14 Constant:
|
||||||
|
0:14 4 (const uint)
|
||||||
|
0:15 move second child to first child ( temp uint)
|
||||||
|
0:15 'ret' ( temp uint)
|
||||||
|
0:15 AtomicCounterMin ( global uint)
|
||||||
|
0:15 'counter' (layout( binding=0 offset=0) uniform atomic_uint)
|
||||||
|
0:15 Constant:
|
||||||
|
0:15 4 (const uint)
|
||||||
|
0:16 move second child to first child ( temp uint)
|
||||||
|
0:16 'ret' ( temp uint)
|
||||||
|
0:16 AtomicCounterMax ( global uint)
|
||||||
|
0:16 'counter' (layout( binding=0 offset=0) uniform atomic_uint)
|
||||||
|
0:16 Constant:
|
||||||
|
0:16 4 (const uint)
|
||||||
|
0:17 move second child to first child ( temp uint)
|
||||||
|
0:17 'ret' ( temp uint)
|
||||||
|
0:17 AtomicCounterAnd ( global uint)
|
||||||
|
0:17 'counter' (layout( binding=0 offset=0) uniform atomic_uint)
|
||||||
|
0:17 Constant:
|
||||||
|
0:17 4 (const uint)
|
||||||
|
0:18 move second child to first child ( temp uint)
|
||||||
|
0:18 'ret' ( temp uint)
|
||||||
|
0:18 AtomicCounterOr ( global uint)
|
||||||
|
0:18 'counter' (layout( binding=0 offset=0) uniform atomic_uint)
|
||||||
|
0:18 Constant:
|
||||||
|
0:18 4 (const uint)
|
||||||
|
0:19 move second child to first child ( temp uint)
|
||||||
|
0:19 'ret' ( temp uint)
|
||||||
|
0:19 AtomicCounterXor ( global uint)
|
||||||
|
0:19 'counter' (layout( binding=0 offset=0) uniform atomic_uint)
|
||||||
|
0:19 Constant:
|
||||||
|
0:19 4 (const uint)
|
||||||
|
0:20 move second child to first child ( temp uint)
|
||||||
|
0:20 'ret' ( temp uint)
|
||||||
|
0:20 AtomicCounterExchange ( global uint)
|
||||||
|
0:20 'counter' (layout( binding=0 offset=0) uniform atomic_uint)
|
||||||
|
0:20 Constant:
|
||||||
|
0:20 4 (const uint)
|
||||||
|
0:21 move second child to first child ( temp uint)
|
||||||
|
0:21 'ret' ( temp uint)
|
||||||
|
0:21 AtomicCounterCompSwap ( global uint)
|
||||||
|
0:21 'counter' (layout( binding=0 offset=0) uniform atomic_uint)
|
||||||
|
0:21 Constant:
|
||||||
|
0:21 4 (const uint)
|
||||||
|
0:21 Constant:
|
||||||
|
0:21 4 (const uint)
|
||||||
|
0:23 Sequence
|
||||||
|
0:23 move second child to first child ( temp uint)
|
||||||
|
0:23 'after' ( temp uint)
|
||||||
|
0:23 AtomicCounter ( global uint)
|
||||||
|
0:23 'counter' (layout( binding=0 offset=0) uniform atomic_uint)
|
||||||
|
0:24 Test condition and select ( temp void)
|
||||||
|
0:24 Condition
|
||||||
|
0:24 Compare Equal ( temp bool)
|
||||||
|
0:24 'after' ( temp uint)
|
||||||
|
0:24 'ret' ( temp uint)
|
||||||
|
0:24 true case
|
||||||
|
0:25 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:25 'outColor' ( temp 4-component vector of float)
|
||||||
|
0:25 Constant:
|
||||||
|
0:25 0.000000
|
||||||
|
0:25 0.000000
|
||||||
|
0:25 0.000000
|
||||||
|
0:25 0.000000
|
||||||
|
0:27 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:27 'vsColor' ( smooth out 4-component vector of float)
|
||||||
|
0:27 'outColor' ( temp 4-component vector of float)
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'counter' (layout( binding=0 offset=0) uniform atomic_uint)
|
||||||
|
0:? 'vsColor' ( smooth out 4-component vector of float)
|
||||||
|
0:? 'gl_VertexID' ( gl_VertexId int VertexId)
|
||||||
|
0:? 'gl_InstanceID' ( gl_InstanceId int InstanceId)
|
||||||
|
|
||||||
|
|
||||||
|
Linked vertex stage:
|
||||||
|
|
||||||
|
|
||||||
|
Shader version: 450
|
||||||
|
Requested GL_ARB_shader_atomic_counter_ops
|
||||||
|
Requested GL_ARB_shader_atomic_counters
|
||||||
|
0:? Sequence
|
||||||
|
0:9 Function Definition: main( ( global void)
|
||||||
|
0:9 Function Parameters:
|
||||||
|
0:10 Sequence
|
||||||
|
0:10 Sequence
|
||||||
|
0:10 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:10 'outColor' ( temp 4-component vector of float)
|
||||||
|
0:10 Constant:
|
||||||
|
0:10 1.000000
|
||||||
|
0:10 1.000000
|
||||||
|
0:10 1.000000
|
||||||
|
0:10 1.000000
|
||||||
|
0:13 move second child to first child ( temp uint)
|
||||||
|
0:13 'ret' ( temp uint)
|
||||||
|
0:13 AtomicCounterAdd ( global uint)
|
||||||
|
0:13 'counter' (layout( binding=0 offset=0) uniform atomic_uint)
|
||||||
|
0:13 Constant:
|
||||||
|
0:13 4 (const uint)
|
||||||
|
0:14 move second child to first child ( temp uint)
|
||||||
|
0:14 'ret' ( temp uint)
|
||||||
|
0:14 AtomicCounterSubtract ( global uint)
|
||||||
|
0:14 'counter' (layout( binding=0 offset=0) uniform atomic_uint)
|
||||||
|
0:14 Constant:
|
||||||
|
0:14 4 (const uint)
|
||||||
|
0:15 move second child to first child ( temp uint)
|
||||||
|
0:15 'ret' ( temp uint)
|
||||||
|
0:15 AtomicCounterMin ( global uint)
|
||||||
|
0:15 'counter' (layout( binding=0 offset=0) uniform atomic_uint)
|
||||||
|
0:15 Constant:
|
||||||
|
0:15 4 (const uint)
|
||||||
|
0:16 move second child to first child ( temp uint)
|
||||||
|
0:16 'ret' ( temp uint)
|
||||||
|
0:16 AtomicCounterMax ( global uint)
|
||||||
|
0:16 'counter' (layout( binding=0 offset=0) uniform atomic_uint)
|
||||||
|
0:16 Constant:
|
||||||
|
0:16 4 (const uint)
|
||||||
|
0:17 move second child to first child ( temp uint)
|
||||||
|
0:17 'ret' ( temp uint)
|
||||||
|
0:17 AtomicCounterAnd ( global uint)
|
||||||
|
0:17 'counter' (layout( binding=0 offset=0) uniform atomic_uint)
|
||||||
|
0:17 Constant:
|
||||||
|
0:17 4 (const uint)
|
||||||
|
0:18 move second child to first child ( temp uint)
|
||||||
|
0:18 'ret' ( temp uint)
|
||||||
|
0:18 AtomicCounterOr ( global uint)
|
||||||
|
0:18 'counter' (layout( binding=0 offset=0) uniform atomic_uint)
|
||||||
|
0:18 Constant:
|
||||||
|
0:18 4 (const uint)
|
||||||
|
0:19 move second child to first child ( temp uint)
|
||||||
|
0:19 'ret' ( temp uint)
|
||||||
|
0:19 AtomicCounterXor ( global uint)
|
||||||
|
0:19 'counter' (layout( binding=0 offset=0) uniform atomic_uint)
|
||||||
|
0:19 Constant:
|
||||||
|
0:19 4 (const uint)
|
||||||
|
0:20 move second child to first child ( temp uint)
|
||||||
|
0:20 'ret' ( temp uint)
|
||||||
|
0:20 AtomicCounterExchange ( global uint)
|
||||||
|
0:20 'counter' (layout( binding=0 offset=0) uniform atomic_uint)
|
||||||
|
0:20 Constant:
|
||||||
|
0:20 4 (const uint)
|
||||||
|
0:21 move second child to first child ( temp uint)
|
||||||
|
0:21 'ret' ( temp uint)
|
||||||
|
0:21 AtomicCounterCompSwap ( global uint)
|
||||||
|
0:21 'counter' (layout( binding=0 offset=0) uniform atomic_uint)
|
||||||
|
0:21 Constant:
|
||||||
|
0:21 4 (const uint)
|
||||||
|
0:21 Constant:
|
||||||
|
0:21 4 (const uint)
|
||||||
|
0:23 Sequence
|
||||||
|
0:23 move second child to first child ( temp uint)
|
||||||
|
0:23 'after' ( temp uint)
|
||||||
|
0:23 AtomicCounter ( global uint)
|
||||||
|
0:23 'counter' (layout( binding=0 offset=0) uniform atomic_uint)
|
||||||
|
0:24 Test condition and select ( temp void)
|
||||||
|
0:24 Condition
|
||||||
|
0:24 Compare Equal ( temp bool)
|
||||||
|
0:24 'after' ( temp uint)
|
||||||
|
0:24 'ret' ( temp uint)
|
||||||
|
0:24 true case
|
||||||
|
0:25 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:25 'outColor' ( temp 4-component vector of float)
|
||||||
|
0:25 Constant:
|
||||||
|
0:25 0.000000
|
||||||
|
0:25 0.000000
|
||||||
|
0:25 0.000000
|
||||||
|
0:25 0.000000
|
||||||
|
0:27 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:27 'vsColor' ( smooth out 4-component vector of float)
|
||||||
|
0:27 'outColor' ( temp 4-component vector of float)
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'counter' (layout( binding=0 offset=0) uniform atomic_uint)
|
||||||
|
0:? 'vsColor' ( smooth out 4-component vector of float)
|
||||||
|
0:? 'gl_VertexID' ( gl_VertexId int VertexId)
|
||||||
|
0:? 'gl_InstanceID' ( gl_InstanceId int InstanceId)
|
||||||
|
|
@ -3,8 +3,8 @@ Shader version: 450
|
|||||||
Requested GL_EXT_shader_explicit_arithmetic_types
|
Requested GL_EXT_shader_explicit_arithmetic_types
|
||||||
local_size = (1, 1, 1)
|
local_size = (1, 1, 1)
|
||||||
0:? Sequence
|
0:? Sequence
|
||||||
0:48 Function Definition: main( ( global void)
|
0:69 Function Definition: main( ( global void)
|
||||||
0:48 Function Parameters:
|
0:69 Function Parameters:
|
||||||
0:? Linker Objects
|
0:? Linker Objects
|
||||||
0:? 'bool_init' ( const bool)
|
0:? 'bool_init' ( const bool)
|
||||||
0:? true (const bool)
|
0:? true (const bool)
|
||||||
@ -29,6 +29,12 @@ local_size = (1, 1, 1)
|
|||||||
0:? 'float32_t_init' ( const float)
|
0:? 'float32_t_init' ( const float)
|
||||||
0:? 13.000000
|
0:? 13.000000
|
||||||
0:? 'float64_t_init' ( const double)
|
0:? 'float64_t_init' ( const double)
|
||||||
|
0:? 4.000000
|
||||||
|
0:? 'neg_float16_t_init' ( const float16_t)
|
||||||
|
0:? -42.000000
|
||||||
|
0:? 'neg_float32_t_init' ( const float)
|
||||||
|
0:? -13.000000
|
||||||
|
0:? 'neg_float64_t_init' ( const double)
|
||||||
0:? -4.000000
|
0:? -4.000000
|
||||||
0:? 'bool_to_bool' ( const bool)
|
0:? 'bool_to_bool' ( const bool)
|
||||||
0:? true (const bool)
|
0:? true (const bool)
|
||||||
@ -77,7 +83,7 @@ local_size = (1, 1, 1)
|
|||||||
0:? 'float32_t_to_int8_t' ( const int8_t)
|
0:? 'float32_t_to_int8_t' ( const int8_t)
|
||||||
0:? 13 (const int8_t)
|
0:? 13 (const int8_t)
|
||||||
0:? 'float64_t_to_int8_t' ( const int8_t)
|
0:? 'float64_t_to_int8_t' ( const int8_t)
|
||||||
0:? -4 (const int8_t)
|
0:? 4 (const int8_t)
|
||||||
0:? 'bool_to_int16_t' ( const int16_t)
|
0:? 'bool_to_int16_t' ( const int16_t)
|
||||||
0:? 1 (const int16_t)
|
0:? 1 (const int16_t)
|
||||||
0:? 'int8_t_to_int16_t' ( const int16_t)
|
0:? 'int8_t_to_int16_t' ( const int16_t)
|
||||||
@ -101,7 +107,7 @@ local_size = (1, 1, 1)
|
|||||||
0:? 'float32_t_to_int16_t' ( const int16_t)
|
0:? 'float32_t_to_int16_t' ( const int16_t)
|
||||||
0:? 13 (const int16_t)
|
0:? 13 (const int16_t)
|
||||||
0:? 'float64_t_to_int16_t' ( const int16_t)
|
0:? 'float64_t_to_int16_t' ( const int16_t)
|
||||||
0:? -4 (const int16_t)
|
0:? 4 (const int16_t)
|
||||||
0:? 'bool_to_int32_t' ( const int)
|
0:? 'bool_to_int32_t' ( const int)
|
||||||
0:? 1 (const int)
|
0:? 1 (const int)
|
||||||
0:? 'int8_t_to_int32_t' ( const int)
|
0:? 'int8_t_to_int32_t' ( const int)
|
||||||
@ -125,7 +131,7 @@ local_size = (1, 1, 1)
|
|||||||
0:? 'float32_t_to_int32_t' ( const int)
|
0:? 'float32_t_to_int32_t' ( const int)
|
||||||
0:? 13 (const int)
|
0:? 13 (const int)
|
||||||
0:? 'float64_t_to_int32_t' ( const int)
|
0:? 'float64_t_to_int32_t' ( const int)
|
||||||
0:? -4 (const int)
|
0:? 4 (const int)
|
||||||
0:? 'bool_to_int64_t' ( const int64_t)
|
0:? 'bool_to_int64_t' ( const int64_t)
|
||||||
0:? 1 (const int64_t)
|
0:? 1 (const int64_t)
|
||||||
0:? 'int8_t_to_int64_t' ( const int64_t)
|
0:? 'int8_t_to_int64_t' ( const int64_t)
|
||||||
@ -149,7 +155,7 @@ local_size = (1, 1, 1)
|
|||||||
0:? 'float32_t_to_int64_t' ( const int64_t)
|
0:? 'float32_t_to_int64_t' ( const int64_t)
|
||||||
0:? 13 (const int64_t)
|
0:? 13 (const int64_t)
|
||||||
0:? 'float64_t_to_int64_t' ( const int64_t)
|
0:? 'float64_t_to_int64_t' ( const int64_t)
|
||||||
0:? -4 (const int64_t)
|
0:? 4 (const int64_t)
|
||||||
0:? 'bool_to_uint8_t' ( const uint8_t)
|
0:? 'bool_to_uint8_t' ( const uint8_t)
|
||||||
0:? 1 (const uint8_t)
|
0:? 1 (const uint8_t)
|
||||||
0:? 'int8_t_to_uint8_t' ( const uint8_t)
|
0:? 'int8_t_to_uint8_t' ( const uint8_t)
|
||||||
@ -173,7 +179,7 @@ local_size = (1, 1, 1)
|
|||||||
0:? 'float32_t_to_uint8_t' ( const uint8_t)
|
0:? 'float32_t_to_uint8_t' ( const uint8_t)
|
||||||
0:? 13 (const uint8_t)
|
0:? 13 (const uint8_t)
|
||||||
0:? 'float64_t_to_uint8_t' ( const uint8_t)
|
0:? 'float64_t_to_uint8_t' ( const uint8_t)
|
||||||
0:? 252 (const uint8_t)
|
0:? 4 (const uint8_t)
|
||||||
0:? 'bool_to_uint16_t' ( const uint16_t)
|
0:? 'bool_to_uint16_t' ( const uint16_t)
|
||||||
0:? 1 (const uint16_t)
|
0:? 1 (const uint16_t)
|
||||||
0:? 'int8_t_to_uint16_t' ( const uint16_t)
|
0:? 'int8_t_to_uint16_t' ( const uint16_t)
|
||||||
@ -197,7 +203,7 @@ local_size = (1, 1, 1)
|
|||||||
0:? 'float32_t_to_uint16_t' ( const uint16_t)
|
0:? 'float32_t_to_uint16_t' ( const uint16_t)
|
||||||
0:? 13 (const uint16_t)
|
0:? 13 (const uint16_t)
|
||||||
0:? 'float64_t_to_uint16_t' ( const uint16_t)
|
0:? 'float64_t_to_uint16_t' ( const uint16_t)
|
||||||
0:? 65532 (const uint16_t)
|
0:? 4 (const uint16_t)
|
||||||
0:? 'bool_to_uint32_t' ( const uint)
|
0:? 'bool_to_uint32_t' ( const uint)
|
||||||
0:? 1 (const uint)
|
0:? 1 (const uint)
|
||||||
0:? 'int8_t_to_uint32_t' ( const uint)
|
0:? 'int8_t_to_uint32_t' ( const uint)
|
||||||
@ -221,7 +227,7 @@ local_size = (1, 1, 1)
|
|||||||
0:? 'float32_t_to_uint32_t' ( const uint)
|
0:? 'float32_t_to_uint32_t' ( const uint)
|
||||||
0:? 13 (const uint)
|
0:? 13 (const uint)
|
||||||
0:? 'float64_t_to_uint32_t' ( const uint)
|
0:? 'float64_t_to_uint32_t' ( const uint)
|
||||||
0:? 4294967292 (const uint)
|
0:? 4 (const uint)
|
||||||
0:? 'bool_to_uint64_t' ( const uint64_t)
|
0:? 'bool_to_uint64_t' ( const uint64_t)
|
||||||
0:? 1 (const uint64_t)
|
0:? 1 (const uint64_t)
|
||||||
0:? 'int8_t_to_uint64_t' ( const uint64_t)
|
0:? 'int8_t_to_uint64_t' ( const uint64_t)
|
||||||
@ -245,7 +251,7 @@ local_size = (1, 1, 1)
|
|||||||
0:? 'float32_t_to_uint64_t' ( const uint64_t)
|
0:? 'float32_t_to_uint64_t' ( const uint64_t)
|
||||||
0:? 13 (const uint64_t)
|
0:? 13 (const uint64_t)
|
||||||
0:? 'float64_t_to_uint64_t' ( const uint64_t)
|
0:? 'float64_t_to_uint64_t' ( const uint64_t)
|
||||||
0:? 18446744073709551612 (const uint64_t)
|
0:? 4 (const uint64_t)
|
||||||
0:? 'bool_to_float16_t' ( const float16_t)
|
0:? 'bool_to_float16_t' ( const float16_t)
|
||||||
0:? 1.000000
|
0:? 1.000000
|
||||||
0:? 'int8_t_to_float16_t' ( const float16_t)
|
0:? 'int8_t_to_float16_t' ( const float16_t)
|
||||||
@ -269,7 +275,7 @@ local_size = (1, 1, 1)
|
|||||||
0:? 'float32_t_to_float16_t' ( const float16_t)
|
0:? 'float32_t_to_float16_t' ( const float16_t)
|
||||||
0:? 13.000000
|
0:? 13.000000
|
||||||
0:? 'float64_t_to_float16_t' ( const float16_t)
|
0:? 'float64_t_to_float16_t' ( const float16_t)
|
||||||
0:? -4.000000
|
0:? 4.000000
|
||||||
0:? 'bool_to_float32_t' ( const float)
|
0:? 'bool_to_float32_t' ( const float)
|
||||||
0:? 1.000000
|
0:? 1.000000
|
||||||
0:? 'int8_t_to_float32_t' ( const float)
|
0:? 'int8_t_to_float32_t' ( const float)
|
||||||
@ -293,7 +299,7 @@ local_size = (1, 1, 1)
|
|||||||
0:? 'float32_t_to_float32_t' ( const float)
|
0:? 'float32_t_to_float32_t' ( const float)
|
||||||
0:? 13.000000
|
0:? 13.000000
|
||||||
0:? 'float64_t_to_float32_t' ( const float)
|
0:? 'float64_t_to_float32_t' ( const float)
|
||||||
0:? -4.000000
|
0:? 4.000000
|
||||||
0:? 'bool_to_float64_t' ( const double)
|
0:? 'bool_to_float64_t' ( const double)
|
||||||
0:? 1.000000
|
0:? 1.000000
|
||||||
0:? 'int8_t_to_float64_t' ( const double)
|
0:? 'int8_t_to_float64_t' ( const double)
|
||||||
@ -317,6 +323,54 @@ local_size = (1, 1, 1)
|
|||||||
0:? 'float32_t_to_float64_t' ( const double)
|
0:? 'float32_t_to_float64_t' ( const double)
|
||||||
0:? 13.000000
|
0:? 13.000000
|
||||||
0:? 'float64_t_to_float64_t' ( const double)
|
0:? 'float64_t_to_float64_t' ( const double)
|
||||||
|
0:? 4.000000
|
||||||
|
0:? 'neg_float16_t_to_bool' ( const bool)
|
||||||
|
0:? true (const bool)
|
||||||
|
0:? 'neg_float32_t_to_bool' ( const bool)
|
||||||
|
0:? true (const bool)
|
||||||
|
0:? 'neg_float64_t_to_bool' ( const bool)
|
||||||
|
0:? true (const bool)
|
||||||
|
0:? 'neg_float16_t_to_int8_t' ( const int8_t)
|
||||||
|
0:? -42 (const int8_t)
|
||||||
|
0:? 'neg_float32_t_to_int8_t' ( const int8_t)
|
||||||
|
0:? -13 (const int8_t)
|
||||||
|
0:? 'neg_float64_t_to_int8_t' ( const int8_t)
|
||||||
|
0:? -4 (const int8_t)
|
||||||
|
0:? 'neg_float16_t_to_int16_t' ( const int16_t)
|
||||||
|
0:? -42 (const int16_t)
|
||||||
|
0:? 'neg_float32_t_to_int16_t' ( const int16_t)
|
||||||
|
0:? -13 (const int16_t)
|
||||||
|
0:? 'neg_float64_t_to_int16_t' ( const int16_t)
|
||||||
|
0:? -4 (const int16_t)
|
||||||
|
0:? 'neg_float16_t_to_int32_t' ( const int)
|
||||||
|
0:? -42 (const int)
|
||||||
|
0:? 'neg_float32_t_to_int32_t' ( const int)
|
||||||
|
0:? -13 (const int)
|
||||||
|
0:? 'neg_float64_t_to_int32_t' ( const int)
|
||||||
|
0:? -4 (const int)
|
||||||
|
0:? 'neg_float16_t_to_int64_t' ( const int64_t)
|
||||||
|
0:? -42 (const int64_t)
|
||||||
|
0:? 'neg_float32_t_to_int64_t' ( const int64_t)
|
||||||
|
0:? -13 (const int64_t)
|
||||||
|
0:? 'neg_float64_t_to_int64_t' ( const int64_t)
|
||||||
|
0:? -4 (const int64_t)
|
||||||
|
0:? 'neg_float16_t_to_float16_t' ( const float16_t)
|
||||||
|
0:? -42.000000
|
||||||
|
0:? 'neg_float32_t_to_float16_t' ( const float16_t)
|
||||||
|
0:? -13.000000
|
||||||
|
0:? 'neg_float64_t_to_float16_t' ( const float16_t)
|
||||||
|
0:? -4.000000
|
||||||
|
0:? 'neg_float16_t_to_float32_t' ( const float)
|
||||||
|
0:? -42.000000
|
||||||
|
0:? 'neg_float32_t_to_float32_t' ( const float)
|
||||||
|
0:? -13.000000
|
||||||
|
0:? 'neg_float64_t_to_float32_t' ( const float)
|
||||||
|
0:? -4.000000
|
||||||
|
0:? 'neg_float16_t_to_float64_t' ( const double)
|
||||||
|
0:? -42.000000
|
||||||
|
0:? 'neg_float32_t_to_float64_t' ( const double)
|
||||||
|
0:? -13.000000
|
||||||
|
0:? 'neg_float64_t_to_float64_t' ( const double)
|
||||||
0:? -4.000000
|
0:? -4.000000
|
||||||
|
|
||||||
|
|
||||||
@ -327,8 +381,8 @@ Shader version: 450
|
|||||||
Requested GL_EXT_shader_explicit_arithmetic_types
|
Requested GL_EXT_shader_explicit_arithmetic_types
|
||||||
local_size = (1, 1, 1)
|
local_size = (1, 1, 1)
|
||||||
0:? Sequence
|
0:? Sequence
|
||||||
0:48 Function Definition: main( ( global void)
|
0:69 Function Definition: main( ( global void)
|
||||||
0:48 Function Parameters:
|
0:69 Function Parameters:
|
||||||
0:? Linker Objects
|
0:? Linker Objects
|
||||||
0:? 'bool_init' ( const bool)
|
0:? 'bool_init' ( const bool)
|
||||||
0:? true (const bool)
|
0:? true (const bool)
|
||||||
@ -353,6 +407,12 @@ local_size = (1, 1, 1)
|
|||||||
0:? 'float32_t_init' ( const float)
|
0:? 'float32_t_init' ( const float)
|
||||||
0:? 13.000000
|
0:? 13.000000
|
||||||
0:? 'float64_t_init' ( const double)
|
0:? 'float64_t_init' ( const double)
|
||||||
|
0:? 4.000000
|
||||||
|
0:? 'neg_float16_t_init' ( const float16_t)
|
||||||
|
0:? -42.000000
|
||||||
|
0:? 'neg_float32_t_init' ( const float)
|
||||||
|
0:? -13.000000
|
||||||
|
0:? 'neg_float64_t_init' ( const double)
|
||||||
0:? -4.000000
|
0:? -4.000000
|
||||||
0:? 'bool_to_bool' ( const bool)
|
0:? 'bool_to_bool' ( const bool)
|
||||||
0:? true (const bool)
|
0:? true (const bool)
|
||||||
@ -401,7 +461,7 @@ local_size = (1, 1, 1)
|
|||||||
0:? 'float32_t_to_int8_t' ( const int8_t)
|
0:? 'float32_t_to_int8_t' ( const int8_t)
|
||||||
0:? 13 (const int8_t)
|
0:? 13 (const int8_t)
|
||||||
0:? 'float64_t_to_int8_t' ( const int8_t)
|
0:? 'float64_t_to_int8_t' ( const int8_t)
|
||||||
0:? -4 (const int8_t)
|
0:? 4 (const int8_t)
|
||||||
0:? 'bool_to_int16_t' ( const int16_t)
|
0:? 'bool_to_int16_t' ( const int16_t)
|
||||||
0:? 1 (const int16_t)
|
0:? 1 (const int16_t)
|
||||||
0:? 'int8_t_to_int16_t' ( const int16_t)
|
0:? 'int8_t_to_int16_t' ( const int16_t)
|
||||||
@ -425,7 +485,7 @@ local_size = (1, 1, 1)
|
|||||||
0:? 'float32_t_to_int16_t' ( const int16_t)
|
0:? 'float32_t_to_int16_t' ( const int16_t)
|
||||||
0:? 13 (const int16_t)
|
0:? 13 (const int16_t)
|
||||||
0:? 'float64_t_to_int16_t' ( const int16_t)
|
0:? 'float64_t_to_int16_t' ( const int16_t)
|
||||||
0:? -4 (const int16_t)
|
0:? 4 (const int16_t)
|
||||||
0:? 'bool_to_int32_t' ( const int)
|
0:? 'bool_to_int32_t' ( const int)
|
||||||
0:? 1 (const int)
|
0:? 1 (const int)
|
||||||
0:? 'int8_t_to_int32_t' ( const int)
|
0:? 'int8_t_to_int32_t' ( const int)
|
||||||
@ -449,7 +509,7 @@ local_size = (1, 1, 1)
|
|||||||
0:? 'float32_t_to_int32_t' ( const int)
|
0:? 'float32_t_to_int32_t' ( const int)
|
||||||
0:? 13 (const int)
|
0:? 13 (const int)
|
||||||
0:? 'float64_t_to_int32_t' ( const int)
|
0:? 'float64_t_to_int32_t' ( const int)
|
||||||
0:? -4 (const int)
|
0:? 4 (const int)
|
||||||
0:? 'bool_to_int64_t' ( const int64_t)
|
0:? 'bool_to_int64_t' ( const int64_t)
|
||||||
0:? 1 (const int64_t)
|
0:? 1 (const int64_t)
|
||||||
0:? 'int8_t_to_int64_t' ( const int64_t)
|
0:? 'int8_t_to_int64_t' ( const int64_t)
|
||||||
@ -473,7 +533,7 @@ local_size = (1, 1, 1)
|
|||||||
0:? 'float32_t_to_int64_t' ( const int64_t)
|
0:? 'float32_t_to_int64_t' ( const int64_t)
|
||||||
0:? 13 (const int64_t)
|
0:? 13 (const int64_t)
|
||||||
0:? 'float64_t_to_int64_t' ( const int64_t)
|
0:? 'float64_t_to_int64_t' ( const int64_t)
|
||||||
0:? -4 (const int64_t)
|
0:? 4 (const int64_t)
|
||||||
0:? 'bool_to_uint8_t' ( const uint8_t)
|
0:? 'bool_to_uint8_t' ( const uint8_t)
|
||||||
0:? 1 (const uint8_t)
|
0:? 1 (const uint8_t)
|
||||||
0:? 'int8_t_to_uint8_t' ( const uint8_t)
|
0:? 'int8_t_to_uint8_t' ( const uint8_t)
|
||||||
@ -497,7 +557,7 @@ local_size = (1, 1, 1)
|
|||||||
0:? 'float32_t_to_uint8_t' ( const uint8_t)
|
0:? 'float32_t_to_uint8_t' ( const uint8_t)
|
||||||
0:? 13 (const uint8_t)
|
0:? 13 (const uint8_t)
|
||||||
0:? 'float64_t_to_uint8_t' ( const uint8_t)
|
0:? 'float64_t_to_uint8_t' ( const uint8_t)
|
||||||
0:? 252 (const uint8_t)
|
0:? 4 (const uint8_t)
|
||||||
0:? 'bool_to_uint16_t' ( const uint16_t)
|
0:? 'bool_to_uint16_t' ( const uint16_t)
|
||||||
0:? 1 (const uint16_t)
|
0:? 1 (const uint16_t)
|
||||||
0:? 'int8_t_to_uint16_t' ( const uint16_t)
|
0:? 'int8_t_to_uint16_t' ( const uint16_t)
|
||||||
@ -521,7 +581,7 @@ local_size = (1, 1, 1)
|
|||||||
0:? 'float32_t_to_uint16_t' ( const uint16_t)
|
0:? 'float32_t_to_uint16_t' ( const uint16_t)
|
||||||
0:? 13 (const uint16_t)
|
0:? 13 (const uint16_t)
|
||||||
0:? 'float64_t_to_uint16_t' ( const uint16_t)
|
0:? 'float64_t_to_uint16_t' ( const uint16_t)
|
||||||
0:? 65532 (const uint16_t)
|
0:? 4 (const uint16_t)
|
||||||
0:? 'bool_to_uint32_t' ( const uint)
|
0:? 'bool_to_uint32_t' ( const uint)
|
||||||
0:? 1 (const uint)
|
0:? 1 (const uint)
|
||||||
0:? 'int8_t_to_uint32_t' ( const uint)
|
0:? 'int8_t_to_uint32_t' ( const uint)
|
||||||
@ -545,7 +605,7 @@ local_size = (1, 1, 1)
|
|||||||
0:? 'float32_t_to_uint32_t' ( const uint)
|
0:? 'float32_t_to_uint32_t' ( const uint)
|
||||||
0:? 13 (const uint)
|
0:? 13 (const uint)
|
||||||
0:? 'float64_t_to_uint32_t' ( const uint)
|
0:? 'float64_t_to_uint32_t' ( const uint)
|
||||||
0:? 4294967292 (const uint)
|
0:? 4 (const uint)
|
||||||
0:? 'bool_to_uint64_t' ( const uint64_t)
|
0:? 'bool_to_uint64_t' ( const uint64_t)
|
||||||
0:? 1 (const uint64_t)
|
0:? 1 (const uint64_t)
|
||||||
0:? 'int8_t_to_uint64_t' ( const uint64_t)
|
0:? 'int8_t_to_uint64_t' ( const uint64_t)
|
||||||
@ -569,7 +629,7 @@ local_size = (1, 1, 1)
|
|||||||
0:? 'float32_t_to_uint64_t' ( const uint64_t)
|
0:? 'float32_t_to_uint64_t' ( const uint64_t)
|
||||||
0:? 13 (const uint64_t)
|
0:? 13 (const uint64_t)
|
||||||
0:? 'float64_t_to_uint64_t' ( const uint64_t)
|
0:? 'float64_t_to_uint64_t' ( const uint64_t)
|
||||||
0:? 18446744073709551612 (const uint64_t)
|
0:? 4 (const uint64_t)
|
||||||
0:? 'bool_to_float16_t' ( const float16_t)
|
0:? 'bool_to_float16_t' ( const float16_t)
|
||||||
0:? 1.000000
|
0:? 1.000000
|
||||||
0:? 'int8_t_to_float16_t' ( const float16_t)
|
0:? 'int8_t_to_float16_t' ( const float16_t)
|
||||||
@ -593,7 +653,7 @@ local_size = (1, 1, 1)
|
|||||||
0:? 'float32_t_to_float16_t' ( const float16_t)
|
0:? 'float32_t_to_float16_t' ( const float16_t)
|
||||||
0:? 13.000000
|
0:? 13.000000
|
||||||
0:? 'float64_t_to_float16_t' ( const float16_t)
|
0:? 'float64_t_to_float16_t' ( const float16_t)
|
||||||
0:? -4.000000
|
0:? 4.000000
|
||||||
0:? 'bool_to_float32_t' ( const float)
|
0:? 'bool_to_float32_t' ( const float)
|
||||||
0:? 1.000000
|
0:? 1.000000
|
||||||
0:? 'int8_t_to_float32_t' ( const float)
|
0:? 'int8_t_to_float32_t' ( const float)
|
||||||
@ -617,7 +677,7 @@ local_size = (1, 1, 1)
|
|||||||
0:? 'float32_t_to_float32_t' ( const float)
|
0:? 'float32_t_to_float32_t' ( const float)
|
||||||
0:? 13.000000
|
0:? 13.000000
|
||||||
0:? 'float64_t_to_float32_t' ( const float)
|
0:? 'float64_t_to_float32_t' ( const float)
|
||||||
0:? -4.000000
|
0:? 4.000000
|
||||||
0:? 'bool_to_float64_t' ( const double)
|
0:? 'bool_to_float64_t' ( const double)
|
||||||
0:? 1.000000
|
0:? 1.000000
|
||||||
0:? 'int8_t_to_float64_t' ( const double)
|
0:? 'int8_t_to_float64_t' ( const double)
|
||||||
@ -641,5 +701,53 @@ local_size = (1, 1, 1)
|
|||||||
0:? 'float32_t_to_float64_t' ( const double)
|
0:? 'float32_t_to_float64_t' ( const double)
|
||||||
0:? 13.000000
|
0:? 13.000000
|
||||||
0:? 'float64_t_to_float64_t' ( const double)
|
0:? 'float64_t_to_float64_t' ( const double)
|
||||||
|
0:? 4.000000
|
||||||
|
0:? 'neg_float16_t_to_bool' ( const bool)
|
||||||
|
0:? true (const bool)
|
||||||
|
0:? 'neg_float32_t_to_bool' ( const bool)
|
||||||
|
0:? true (const bool)
|
||||||
|
0:? 'neg_float64_t_to_bool' ( const bool)
|
||||||
|
0:? true (const bool)
|
||||||
|
0:? 'neg_float16_t_to_int8_t' ( const int8_t)
|
||||||
|
0:? -42 (const int8_t)
|
||||||
|
0:? 'neg_float32_t_to_int8_t' ( const int8_t)
|
||||||
|
0:? -13 (const int8_t)
|
||||||
|
0:? 'neg_float64_t_to_int8_t' ( const int8_t)
|
||||||
|
0:? -4 (const int8_t)
|
||||||
|
0:? 'neg_float16_t_to_int16_t' ( const int16_t)
|
||||||
|
0:? -42 (const int16_t)
|
||||||
|
0:? 'neg_float32_t_to_int16_t' ( const int16_t)
|
||||||
|
0:? -13 (const int16_t)
|
||||||
|
0:? 'neg_float64_t_to_int16_t' ( const int16_t)
|
||||||
|
0:? -4 (const int16_t)
|
||||||
|
0:? 'neg_float16_t_to_int32_t' ( const int)
|
||||||
|
0:? -42 (const int)
|
||||||
|
0:? 'neg_float32_t_to_int32_t' ( const int)
|
||||||
|
0:? -13 (const int)
|
||||||
|
0:? 'neg_float64_t_to_int32_t' ( const int)
|
||||||
|
0:? -4 (const int)
|
||||||
|
0:? 'neg_float16_t_to_int64_t' ( const int64_t)
|
||||||
|
0:? -42 (const int64_t)
|
||||||
|
0:? 'neg_float32_t_to_int64_t' ( const int64_t)
|
||||||
|
0:? -13 (const int64_t)
|
||||||
|
0:? 'neg_float64_t_to_int64_t' ( const int64_t)
|
||||||
|
0:? -4 (const int64_t)
|
||||||
|
0:? 'neg_float16_t_to_float16_t' ( const float16_t)
|
||||||
|
0:? -42.000000
|
||||||
|
0:? 'neg_float32_t_to_float16_t' ( const float16_t)
|
||||||
|
0:? -13.000000
|
||||||
|
0:? 'neg_float64_t_to_float16_t' ( const float16_t)
|
||||||
|
0:? -4.000000
|
||||||
|
0:? 'neg_float16_t_to_float32_t' ( const float)
|
||||||
|
0:? -42.000000
|
||||||
|
0:? 'neg_float32_t_to_float32_t' ( const float)
|
||||||
|
0:? -13.000000
|
||||||
|
0:? 'neg_float64_t_to_float32_t' ( const float)
|
||||||
|
0:? -4.000000
|
||||||
|
0:? 'neg_float16_t_to_float64_t' ( const double)
|
||||||
|
0:? -42.000000
|
||||||
|
0:? 'neg_float32_t_to_float64_t' ( const double)
|
||||||
|
0:? -13.000000
|
||||||
|
0:? 'neg_float64_t_to_float64_t' ( const double)
|
||||||
0:? -4.000000
|
0:? -4.000000
|
||||||
|
|
||||||
|
@ -16,7 +16,7 @@ output primitive = points
|
|||||||
0:12 Constant:
|
0:12 Constant:
|
||||||
0:12 0 (const uint)
|
0:12 0 (const uint)
|
||||||
0:12 'gl_PrimitiveIDIn' ( in highp int PrimitiveID)
|
0:12 'gl_PrimitiveIDIn' ( in highp int PrimitiveID)
|
||||||
0:12 Construct uvec4 ( temp highp 4-component vector of uint)
|
0:12 Construct uvec4 ( temp mediump 4-component vector of uint)
|
||||||
0:12 'gl_SubgroupSize' ( in mediump uint SubgroupSize)
|
0:12 'gl_SubgroupSize' ( in mediump uint SubgroupSize)
|
||||||
0:12 'gl_SubgroupInvocationID' ( in mediump uint SubgroupInvocationID)
|
0:12 'gl_SubgroupInvocationID' ( in mediump uint SubgroupInvocationID)
|
||||||
0:12 Constant:
|
0:12 Constant:
|
||||||
@ -47,7 +47,7 @@ output primitive = points
|
|||||||
0:12 Constant:
|
0:12 Constant:
|
||||||
0:12 0 (const uint)
|
0:12 0 (const uint)
|
||||||
0:12 'gl_PrimitiveIDIn' ( in highp int PrimitiveID)
|
0:12 'gl_PrimitiveIDIn' ( in highp int PrimitiveID)
|
||||||
0:12 Construct uvec4 ( temp highp 4-component vector of uint)
|
0:12 Construct uvec4 ( temp mediump 4-component vector of uint)
|
||||||
0:12 'gl_SubgroupSize' ( in mediump uint SubgroupSize)
|
0:12 'gl_SubgroupSize' ( in mediump uint SubgroupSize)
|
||||||
0:12 'gl_SubgroupInvocationID' ( in mediump uint SubgroupInvocationID)
|
0:12 'gl_SubgroupInvocationID' ( in mediump uint SubgroupInvocationID)
|
||||||
0:12 Constant:
|
0:12 Constant:
|
||||||
|
@ -13,7 +13,7 @@ vertices = 1
|
|||||||
0:11 Constant:
|
0:11 Constant:
|
||||||
0:11 0 (const uint)
|
0:11 0 (const uint)
|
||||||
0:11 'gl_PrimitiveID' ( in highp int PrimitiveID)
|
0:11 'gl_PrimitiveID' ( in highp int PrimitiveID)
|
||||||
0:11 Construct uvec4 ( temp highp 4-component vector of uint)
|
0:11 Construct uvec4 ( temp mediump 4-component vector of uint)
|
||||||
0:11 'gl_SubgroupSize' ( in mediump uint SubgroupSize)
|
0:11 'gl_SubgroupSize' ( in mediump uint SubgroupSize)
|
||||||
0:11 'gl_SubgroupInvocationID' ( in mediump uint SubgroupInvocationID)
|
0:11 'gl_SubgroupInvocationID' ( in mediump uint SubgroupInvocationID)
|
||||||
0:11 Constant:
|
0:11 Constant:
|
||||||
@ -41,7 +41,7 @@ vertices = 1
|
|||||||
0:11 Constant:
|
0:11 Constant:
|
||||||
0:11 0 (const uint)
|
0:11 0 (const uint)
|
||||||
0:11 'gl_PrimitiveID' ( in highp int PrimitiveID)
|
0:11 'gl_PrimitiveID' ( in highp int PrimitiveID)
|
||||||
0:11 Construct uvec4 ( temp highp 4-component vector of uint)
|
0:11 Construct uvec4 ( temp mediump 4-component vector of uint)
|
||||||
0:11 'gl_SubgroupSize' ( in mediump uint SubgroupSize)
|
0:11 'gl_SubgroupSize' ( in mediump uint SubgroupSize)
|
||||||
0:11 'gl_SubgroupInvocationID' ( in mediump uint SubgroupInvocationID)
|
0:11 'gl_SubgroupInvocationID' ( in mediump uint SubgroupInvocationID)
|
||||||
0:11 Constant:
|
0:11 Constant:
|
||||||
|
@ -15,7 +15,7 @@ triangle order = none
|
|||||||
0:11 Constant:
|
0:11 Constant:
|
||||||
0:11 0 (const uint)
|
0:11 0 (const uint)
|
||||||
0:11 'gl_PrimitiveID' ( in highp int PrimitiveID)
|
0:11 'gl_PrimitiveID' ( in highp int PrimitiveID)
|
||||||
0:11 Construct uvec4 ( temp highp 4-component vector of uint)
|
0:11 Construct uvec4 ( temp mediump 4-component vector of uint)
|
||||||
0:11 'gl_SubgroupSize' ( in mediump uint SubgroupSize)
|
0:11 'gl_SubgroupSize' ( in mediump uint SubgroupSize)
|
||||||
0:11 'gl_SubgroupInvocationID' ( in mediump uint SubgroupInvocationID)
|
0:11 'gl_SubgroupInvocationID' ( in mediump uint SubgroupInvocationID)
|
||||||
0:11 Constant:
|
0:11 Constant:
|
||||||
@ -45,7 +45,7 @@ triangle order = ccw
|
|||||||
0:11 Constant:
|
0:11 Constant:
|
||||||
0:11 0 (const uint)
|
0:11 0 (const uint)
|
||||||
0:11 'gl_PrimitiveID' ( in highp int PrimitiveID)
|
0:11 'gl_PrimitiveID' ( in highp int PrimitiveID)
|
||||||
0:11 Construct uvec4 ( temp highp 4-component vector of uint)
|
0:11 Construct uvec4 ( temp mediump 4-component vector of uint)
|
||||||
0:11 'gl_SubgroupSize' ( in mediump uint SubgroupSize)
|
0:11 'gl_SubgroupSize' ( in mediump uint SubgroupSize)
|
||||||
0:11 'gl_SubgroupInvocationID' ( in mediump uint SubgroupInvocationID)
|
0:11 'gl_SubgroupInvocationID' ( in mediump uint SubgroupInvocationID)
|
||||||
0:11 Constant:
|
0:11 Constant:
|
||||||
|
@ -12,7 +12,7 @@ Requested GL_KHR_shader_subgroup_basic
|
|||||||
0:10 Constant:
|
0:10 Constant:
|
||||||
0:10 0 (const uint)
|
0:10 0 (const uint)
|
||||||
0:10 'gl_VertexID' ( gl_VertexId highp int VertexId)
|
0:10 'gl_VertexID' ( gl_VertexId highp int VertexId)
|
||||||
0:10 Construct uvec4 ( temp highp 4-component vector of uint)
|
0:10 Construct uvec4 ( temp mediump 4-component vector of uint)
|
||||||
0:10 'gl_SubgroupSize' ( in mediump uint SubgroupSize)
|
0:10 'gl_SubgroupSize' ( in mediump uint SubgroupSize)
|
||||||
0:10 'gl_SubgroupInvocationID' ( in mediump uint SubgroupInvocationID)
|
0:10 'gl_SubgroupInvocationID' ( in mediump uint SubgroupInvocationID)
|
||||||
0:10 Constant:
|
0:10 Constant:
|
||||||
@ -41,7 +41,7 @@ Requested GL_KHR_shader_subgroup_basic
|
|||||||
0:10 Constant:
|
0:10 Constant:
|
||||||
0:10 0 (const uint)
|
0:10 0 (const uint)
|
||||||
0:10 'gl_VertexID' ( gl_VertexId highp int VertexId)
|
0:10 'gl_VertexID' ( gl_VertexId highp int VertexId)
|
||||||
0:10 Construct uvec4 ( temp highp 4-component vector of uint)
|
0:10 Construct uvec4 ( temp mediump 4-component vector of uint)
|
||||||
0:10 'gl_SubgroupSize' ( in mediump uint SubgroupSize)
|
0:10 'gl_SubgroupSize' ( in mediump uint SubgroupSize)
|
||||||
0:10 'gl_SubgroupInvocationID' ( in mediump uint SubgroupInvocationID)
|
0:10 'gl_SubgroupInvocationID' ( in mediump uint SubgroupInvocationID)
|
||||||
0:10 Constant:
|
0:10 Constant:
|
||||||
|
@ -16,9 +16,9 @@ using depth_any
|
|||||||
0:31 Constant:
|
0:31 Constant:
|
||||||
0:31 0.100000
|
0:31 0.100000
|
||||||
0:31 Constant:
|
0:31 Constant:
|
||||||
0:31 0.500000
|
|
||||||
0:31 Constant:
|
|
||||||
0:31 1 (const int)
|
0:31 1 (const int)
|
||||||
|
0:31 Constant:
|
||||||
|
0:31 0.500000
|
||||||
0:32 Sequence
|
0:32 Sequence
|
||||||
0:32 move second child to first child ( temp 4-component vector of int)
|
0:32 move second child to first child ( temp 4-component vector of int)
|
||||||
0:32 'txval11' ( temp 4-component vector of int)
|
0:32 'txval11' ( temp 4-component vector of int)
|
||||||
@ -29,9 +29,9 @@ using depth_any
|
|||||||
0:32 Constant:
|
0:32 Constant:
|
||||||
0:32 0.200000
|
0:32 0.200000
|
||||||
0:32 Constant:
|
0:32 Constant:
|
||||||
0:32 0.500000
|
|
||||||
0:32 Constant:
|
|
||||||
0:32 1 (const int)
|
0:32 1 (const int)
|
||||||
|
0:32 Constant:
|
||||||
|
0:32 0.500000
|
||||||
0:33 Sequence
|
0:33 Sequence
|
||||||
0:33 move second child to first child ( temp 4-component vector of uint)
|
0:33 move second child to first child ( temp 4-component vector of uint)
|
||||||
0:33 'txval12' ( temp 4-component vector of uint)
|
0:33 'txval12' ( temp 4-component vector of uint)
|
||||||
@ -42,9 +42,9 @@ using depth_any
|
|||||||
0:33 Constant:
|
0:33 Constant:
|
||||||
0:33 0.300000
|
0:33 0.300000
|
||||||
0:33 Constant:
|
0:33 Constant:
|
||||||
0:33 0.500000
|
|
||||||
0:33 Constant:
|
|
||||||
0:33 1 (const int)
|
0:33 1 (const int)
|
||||||
|
0:33 Constant:
|
||||||
|
0:33 0.500000
|
||||||
0:35 Sequence
|
0:35 Sequence
|
||||||
0:35 move second child to first child ( temp 4-component vector of float)
|
0:35 move second child to first child ( temp 4-component vector of float)
|
||||||
0:35 'txval20' ( temp 4-component vector of float)
|
0:35 'txval20' ( temp 4-component vector of float)
|
||||||
@ -56,10 +56,10 @@ using depth_any
|
|||||||
0:35 0.100000
|
0:35 0.100000
|
||||||
0:35 0.200000
|
0:35 0.200000
|
||||||
0:35 Constant:
|
0:35 Constant:
|
||||||
0:35 0.500000
|
|
||||||
0:35 Constant:
|
|
||||||
0:35 1 (const int)
|
0:35 1 (const int)
|
||||||
0:35 0 (const int)
|
0:35 0 (const int)
|
||||||
|
0:35 Constant:
|
||||||
|
0:35 0.500000
|
||||||
0:36 Sequence
|
0:36 Sequence
|
||||||
0:36 move second child to first child ( temp 4-component vector of int)
|
0:36 move second child to first child ( temp 4-component vector of int)
|
||||||
0:36 'txval21' ( temp 4-component vector of int)
|
0:36 'txval21' ( temp 4-component vector of int)
|
||||||
@ -71,10 +71,10 @@ using depth_any
|
|||||||
0:36 0.300000
|
0:36 0.300000
|
||||||
0:36 0.400000
|
0:36 0.400000
|
||||||
0:36 Constant:
|
0:36 Constant:
|
||||||
0:36 0.500000
|
0:36 1 (const int)
|
||||||
|
0:36 1 (const int)
|
||||||
0:36 Constant:
|
0:36 Constant:
|
||||||
0:36 1 (const int)
|
0:36 0.500000
|
||||||
0:36 1 (const int)
|
|
||||||
0:37 Sequence
|
0:37 Sequence
|
||||||
0:37 move second child to first child ( temp 4-component vector of uint)
|
0:37 move second child to first child ( temp 4-component vector of uint)
|
||||||
0:37 'txval22' ( temp 4-component vector of uint)
|
0:37 'txval22' ( temp 4-component vector of uint)
|
||||||
@ -86,10 +86,10 @@ using depth_any
|
|||||||
0:37 0.500000
|
0:37 0.500000
|
||||||
0:37 0.600000
|
0:37 0.600000
|
||||||
0:37 Constant:
|
0:37 Constant:
|
||||||
0:37 0.500000
|
|
||||||
0:37 Constant:
|
|
||||||
0:37 1 (const int)
|
0:37 1 (const int)
|
||||||
0:37 -1 (const int)
|
0:37 -1 (const int)
|
||||||
|
0:37 Constant:
|
||||||
|
0:37 0.500000
|
||||||
0:39 Sequence
|
0:39 Sequence
|
||||||
0:39 move second child to first child ( temp 4-component vector of float)
|
0:39 move second child to first child ( temp 4-component vector of float)
|
||||||
0:39 'txval30' ( temp 4-component vector of float)
|
0:39 'txval30' ( temp 4-component vector of float)
|
||||||
@ -102,11 +102,11 @@ using depth_any
|
|||||||
0:39 0.200000
|
0:39 0.200000
|
||||||
0:39 0.300000
|
0:39 0.300000
|
||||||
0:39 Constant:
|
0:39 Constant:
|
||||||
0:39 0.500000
|
|
||||||
0:39 Constant:
|
|
||||||
0:39 1 (const int)
|
0:39 1 (const int)
|
||||||
0:39 0 (const int)
|
0:39 0 (const int)
|
||||||
0:39 1 (const int)
|
0:39 1 (const int)
|
||||||
|
0:39 Constant:
|
||||||
|
0:39 0.500000
|
||||||
0:40 Sequence
|
0:40 Sequence
|
||||||
0:40 move second child to first child ( temp 4-component vector of int)
|
0:40 move second child to first child ( temp 4-component vector of int)
|
||||||
0:40 'txval31' ( temp 4-component vector of int)
|
0:40 'txval31' ( temp 4-component vector of int)
|
||||||
@ -119,11 +119,11 @@ using depth_any
|
|||||||
0:40 0.500000
|
0:40 0.500000
|
||||||
0:40 0.600000
|
0:40 0.600000
|
||||||
0:40 Constant:
|
0:40 Constant:
|
||||||
0:40 0.500000
|
0:40 1 (const int)
|
||||||
|
0:40 1 (const int)
|
||||||
|
0:40 1 (const int)
|
||||||
0:40 Constant:
|
0:40 Constant:
|
||||||
0:40 1 (const int)
|
0:40 0.500000
|
||||||
0:40 1 (const int)
|
|
||||||
0:40 1 (const int)
|
|
||||||
0:41 Sequence
|
0:41 Sequence
|
||||||
0:41 move second child to first child ( temp 4-component vector of uint)
|
0:41 move second child to first child ( temp 4-component vector of uint)
|
||||||
0:41 'txval32' ( temp 4-component vector of uint)
|
0:41 'txval32' ( temp 4-component vector of uint)
|
||||||
@ -136,11 +136,11 @@ using depth_any
|
|||||||
0:41 0.800000
|
0:41 0.800000
|
||||||
0:41 0.900000
|
0:41 0.900000
|
||||||
0:41 Constant:
|
0:41 Constant:
|
||||||
0:41 0.500000
|
|
||||||
0:41 Constant:
|
|
||||||
0:41 1 (const int)
|
0:41 1 (const int)
|
||||||
0:41 0 (const int)
|
0:41 0 (const int)
|
||||||
0:41 -1 (const int)
|
0:41 -1 (const int)
|
||||||
|
0:41 Constant:
|
||||||
|
0:41 0.500000
|
||||||
0:45 move second child to first child ( temp 4-component vector of float)
|
0:45 move second child to first child ( temp 4-component vector of float)
|
||||||
0:45 Color: direct index for structure ( temp 4-component vector of float)
|
0:45 Color: direct index for structure ( temp 4-component vector of float)
|
||||||
0:45 'psout' ( temp structure{ temp 4-component vector of float Color, temp float Depth})
|
0:45 'psout' ( temp structure{ temp 4-component vector of float Color, temp float Depth})
|
||||||
@ -218,9 +218,9 @@ using depth_any
|
|||||||
0:31 Constant:
|
0:31 Constant:
|
||||||
0:31 0.100000
|
0:31 0.100000
|
||||||
0:31 Constant:
|
0:31 Constant:
|
||||||
0:31 0.500000
|
|
||||||
0:31 Constant:
|
|
||||||
0:31 1 (const int)
|
0:31 1 (const int)
|
||||||
|
0:31 Constant:
|
||||||
|
0:31 0.500000
|
||||||
0:32 Sequence
|
0:32 Sequence
|
||||||
0:32 move second child to first child ( temp 4-component vector of int)
|
0:32 move second child to first child ( temp 4-component vector of int)
|
||||||
0:32 'txval11' ( temp 4-component vector of int)
|
0:32 'txval11' ( temp 4-component vector of int)
|
||||||
@ -231,9 +231,9 @@ using depth_any
|
|||||||
0:32 Constant:
|
0:32 Constant:
|
||||||
0:32 0.200000
|
0:32 0.200000
|
||||||
0:32 Constant:
|
0:32 Constant:
|
||||||
0:32 0.500000
|
|
||||||
0:32 Constant:
|
|
||||||
0:32 1 (const int)
|
0:32 1 (const int)
|
||||||
|
0:32 Constant:
|
||||||
|
0:32 0.500000
|
||||||
0:33 Sequence
|
0:33 Sequence
|
||||||
0:33 move second child to first child ( temp 4-component vector of uint)
|
0:33 move second child to first child ( temp 4-component vector of uint)
|
||||||
0:33 'txval12' ( temp 4-component vector of uint)
|
0:33 'txval12' ( temp 4-component vector of uint)
|
||||||
@ -244,9 +244,9 @@ using depth_any
|
|||||||
0:33 Constant:
|
0:33 Constant:
|
||||||
0:33 0.300000
|
0:33 0.300000
|
||||||
0:33 Constant:
|
0:33 Constant:
|
||||||
0:33 0.500000
|
|
||||||
0:33 Constant:
|
|
||||||
0:33 1 (const int)
|
0:33 1 (const int)
|
||||||
|
0:33 Constant:
|
||||||
|
0:33 0.500000
|
||||||
0:35 Sequence
|
0:35 Sequence
|
||||||
0:35 move second child to first child ( temp 4-component vector of float)
|
0:35 move second child to first child ( temp 4-component vector of float)
|
||||||
0:35 'txval20' ( temp 4-component vector of float)
|
0:35 'txval20' ( temp 4-component vector of float)
|
||||||
@ -258,10 +258,10 @@ using depth_any
|
|||||||
0:35 0.100000
|
0:35 0.100000
|
||||||
0:35 0.200000
|
0:35 0.200000
|
||||||
0:35 Constant:
|
0:35 Constant:
|
||||||
0:35 0.500000
|
|
||||||
0:35 Constant:
|
|
||||||
0:35 1 (const int)
|
0:35 1 (const int)
|
||||||
0:35 0 (const int)
|
0:35 0 (const int)
|
||||||
|
0:35 Constant:
|
||||||
|
0:35 0.500000
|
||||||
0:36 Sequence
|
0:36 Sequence
|
||||||
0:36 move second child to first child ( temp 4-component vector of int)
|
0:36 move second child to first child ( temp 4-component vector of int)
|
||||||
0:36 'txval21' ( temp 4-component vector of int)
|
0:36 'txval21' ( temp 4-component vector of int)
|
||||||
@ -273,10 +273,10 @@ using depth_any
|
|||||||
0:36 0.300000
|
0:36 0.300000
|
||||||
0:36 0.400000
|
0:36 0.400000
|
||||||
0:36 Constant:
|
0:36 Constant:
|
||||||
0:36 0.500000
|
0:36 1 (const int)
|
||||||
|
0:36 1 (const int)
|
||||||
0:36 Constant:
|
0:36 Constant:
|
||||||
0:36 1 (const int)
|
0:36 0.500000
|
||||||
0:36 1 (const int)
|
|
||||||
0:37 Sequence
|
0:37 Sequence
|
||||||
0:37 move second child to first child ( temp 4-component vector of uint)
|
0:37 move second child to first child ( temp 4-component vector of uint)
|
||||||
0:37 'txval22' ( temp 4-component vector of uint)
|
0:37 'txval22' ( temp 4-component vector of uint)
|
||||||
@ -288,10 +288,10 @@ using depth_any
|
|||||||
0:37 0.500000
|
0:37 0.500000
|
||||||
0:37 0.600000
|
0:37 0.600000
|
||||||
0:37 Constant:
|
0:37 Constant:
|
||||||
0:37 0.500000
|
|
||||||
0:37 Constant:
|
|
||||||
0:37 1 (const int)
|
0:37 1 (const int)
|
||||||
0:37 -1 (const int)
|
0:37 -1 (const int)
|
||||||
|
0:37 Constant:
|
||||||
|
0:37 0.500000
|
||||||
0:39 Sequence
|
0:39 Sequence
|
||||||
0:39 move second child to first child ( temp 4-component vector of float)
|
0:39 move second child to first child ( temp 4-component vector of float)
|
||||||
0:39 'txval30' ( temp 4-component vector of float)
|
0:39 'txval30' ( temp 4-component vector of float)
|
||||||
@ -304,11 +304,11 @@ using depth_any
|
|||||||
0:39 0.200000
|
0:39 0.200000
|
||||||
0:39 0.300000
|
0:39 0.300000
|
||||||
0:39 Constant:
|
0:39 Constant:
|
||||||
0:39 0.500000
|
|
||||||
0:39 Constant:
|
|
||||||
0:39 1 (const int)
|
0:39 1 (const int)
|
||||||
0:39 0 (const int)
|
0:39 0 (const int)
|
||||||
0:39 1 (const int)
|
0:39 1 (const int)
|
||||||
|
0:39 Constant:
|
||||||
|
0:39 0.500000
|
||||||
0:40 Sequence
|
0:40 Sequence
|
||||||
0:40 move second child to first child ( temp 4-component vector of int)
|
0:40 move second child to first child ( temp 4-component vector of int)
|
||||||
0:40 'txval31' ( temp 4-component vector of int)
|
0:40 'txval31' ( temp 4-component vector of int)
|
||||||
@ -321,11 +321,11 @@ using depth_any
|
|||||||
0:40 0.500000
|
0:40 0.500000
|
||||||
0:40 0.600000
|
0:40 0.600000
|
||||||
0:40 Constant:
|
0:40 Constant:
|
||||||
0:40 0.500000
|
0:40 1 (const int)
|
||||||
|
0:40 1 (const int)
|
||||||
|
0:40 1 (const int)
|
||||||
0:40 Constant:
|
0:40 Constant:
|
||||||
0:40 1 (const int)
|
0:40 0.500000
|
||||||
0:40 1 (const int)
|
|
||||||
0:40 1 (const int)
|
|
||||||
0:41 Sequence
|
0:41 Sequence
|
||||||
0:41 move second child to first child ( temp 4-component vector of uint)
|
0:41 move second child to first child ( temp 4-component vector of uint)
|
||||||
0:41 'txval32' ( temp 4-component vector of uint)
|
0:41 'txval32' ( temp 4-component vector of uint)
|
||||||
@ -338,11 +338,11 @@ using depth_any
|
|||||||
0:41 0.800000
|
0:41 0.800000
|
||||||
0:41 0.900000
|
0:41 0.900000
|
||||||
0:41 Constant:
|
0:41 Constant:
|
||||||
0:41 0.500000
|
|
||||||
0:41 Constant:
|
|
||||||
0:41 1 (const int)
|
0:41 1 (const int)
|
||||||
0:41 0 (const int)
|
0:41 0 (const int)
|
||||||
0:41 -1 (const int)
|
0:41 -1 (const int)
|
||||||
|
0:41 Constant:
|
||||||
|
0:41 0.500000
|
||||||
0:45 move second child to first child ( temp 4-component vector of float)
|
0:45 move second child to first child ( temp 4-component vector of float)
|
||||||
0:45 Color: direct index for structure ( temp 4-component vector of float)
|
0:45 Color: direct index for structure ( temp 4-component vector of float)
|
||||||
0:45 'psout' ( temp structure{ temp 4-component vector of float Color, temp float Depth})
|
0:45 'psout' ( temp structure{ temp 4-component vector of float Color, temp float Depth})
|
||||||
@ -399,7 +399,6 @@ using depth_any
|
|||||||
0:? '@entryPointOutput.Depth' ( out float FragDepth)
|
0:? '@entryPointOutput.Depth' ( out float FragDepth)
|
||||||
0:? '@entryPointOutput.Color' (layout( location=0) out 4-component vector of float)
|
0:? '@entryPointOutput.Color' (layout( location=0) out 4-component vector of float)
|
||||||
|
|
||||||
Validation failed
|
|
||||||
// Module Version 10000
|
// Module Version 10000
|
||||||
// Generated by (magic number): 8000a
|
// Generated by (magic number): 8000a
|
||||||
// Id's are bound by 161
|
// Id's are bound by 161
|
||||||
@ -489,12 +488,12 @@ Validation failed
|
|||||||
20(g_sSamp): 19(ptr) Variable UniformConstant
|
20(g_sSamp): 19(ptr) Variable UniformConstant
|
||||||
22: TypeSampledImage 14
|
22: TypeSampledImage 14
|
||||||
24: 6(float) Constant 1036831949
|
24: 6(float) Constant 1036831949
|
||||||
25: 6(float) Constant 1056964608
|
25: TypeInt 32 1
|
||||||
26: TypeInt 32 1
|
26: 25(int) Constant 1
|
||||||
27: 26(int) Constant 1
|
27: 6(float) Constant 1056964608
|
||||||
29: TypeVector 26(int) 4
|
29: TypeVector 25(int) 4
|
||||||
30: TypePointer Function 29(ivec4)
|
30: TypePointer Function 29(ivec4)
|
||||||
32: TypeImage 26(int) 1D sampled format:Unknown
|
32: TypeImage 25(int) 1D sampled format:Unknown
|
||||||
33: TypePointer UniformConstant 32
|
33: TypePointer UniformConstant 32
|
||||||
34(g_tTex1di4): 33(ptr) Variable UniformConstant
|
34(g_tTex1di4): 33(ptr) Variable UniformConstant
|
||||||
37: TypeSampledImage 32
|
37: TypeSampledImage 32
|
||||||
@ -513,38 +512,38 @@ Validation failed
|
|||||||
60: TypeSampledImage 55
|
60: TypeSampledImage 55
|
||||||
62: TypeVector 6(float) 2
|
62: TypeVector 6(float) 2
|
||||||
63: 62(fvec2) ConstantComposite 24 39
|
63: 62(fvec2) ConstantComposite 24 39
|
||||||
64: TypeVector 26(int) 2
|
64: TypeVector 25(int) 2
|
||||||
65: 26(int) Constant 0
|
65: 25(int) Constant 0
|
||||||
66: 64(ivec2) ConstantComposite 27 65
|
66: 64(ivec2) ConstantComposite 26 65
|
||||||
69: TypeImage 26(int) 2D sampled format:Unknown
|
69: TypeImage 25(int) 2D sampled format:Unknown
|
||||||
70: TypePointer UniformConstant 69
|
70: TypePointer UniformConstant 69
|
||||||
71(g_tTex2di4): 70(ptr) Variable UniformConstant
|
71(g_tTex2di4): 70(ptr) Variable UniformConstant
|
||||||
74: TypeSampledImage 69
|
74: TypeSampledImage 69
|
||||||
76: 6(float) Constant 1053609165
|
76: 6(float) Constant 1053609165
|
||||||
77: 62(fvec2) ConstantComposite 52 76
|
77: 62(fvec2) ConstantComposite 52 76
|
||||||
78: 64(ivec2) ConstantComposite 27 27
|
78: 64(ivec2) ConstantComposite 26 26
|
||||||
81: TypeImage 41(int) 2D sampled format:Unknown
|
81: TypeImage 41(int) 2D sampled format:Unknown
|
||||||
82: TypePointer UniformConstant 81
|
82: TypePointer UniformConstant 81
|
||||||
83(g_tTex2du4): 82(ptr) Variable UniformConstant
|
83(g_tTex2du4): 82(ptr) Variable UniformConstant
|
||||||
86: TypeSampledImage 81
|
86: TypeSampledImage 81
|
||||||
88: 6(float) Constant 1058642330
|
88: 6(float) Constant 1058642330
|
||||||
89: 62(fvec2) ConstantComposite 25 88
|
89: 62(fvec2) ConstantComposite 27 88
|
||||||
90: 26(int) Constant 4294967295
|
90: 25(int) Constant 4294967295
|
||||||
91: 64(ivec2) ConstantComposite 27 90
|
91: 64(ivec2) ConstantComposite 26 90
|
||||||
94: TypeImage 6(float) 3D sampled format:Unknown
|
94: TypeImage 6(float) 3D sampled format:Unknown
|
||||||
95: TypePointer UniformConstant 94
|
95: TypePointer UniformConstant 94
|
||||||
96(g_tTex3df4): 95(ptr) Variable UniformConstant
|
96(g_tTex3df4): 95(ptr) Variable UniformConstant
|
||||||
99: TypeSampledImage 94
|
99: TypeSampledImage 94
|
||||||
101: TypeVector 6(float) 3
|
101: TypeVector 6(float) 3
|
||||||
102: 101(fvec3) ConstantComposite 24 39 52
|
102: 101(fvec3) ConstantComposite 24 39 52
|
||||||
103: TypeVector 26(int) 3
|
103: TypeVector 25(int) 3
|
||||||
104: 103(ivec3) ConstantComposite 27 65 27
|
104: 103(ivec3) ConstantComposite 26 65 26
|
||||||
107: TypeImage 26(int) 3D sampled format:Unknown
|
107: TypeImage 25(int) 3D sampled format:Unknown
|
||||||
108: TypePointer UniformConstant 107
|
108: TypePointer UniformConstant 107
|
||||||
109(g_tTex3di4): 108(ptr) Variable UniformConstant
|
109(g_tTex3di4): 108(ptr) Variable UniformConstant
|
||||||
112: TypeSampledImage 107
|
112: TypeSampledImage 107
|
||||||
114: 101(fvec3) ConstantComposite 76 25 88
|
114: 101(fvec3) ConstantComposite 76 27 88
|
||||||
115: 103(ivec3) ConstantComposite 27 27 27
|
115: 103(ivec3) ConstantComposite 26 26 26
|
||||||
118: TypeImage 41(int) 3D sampled format:Unknown
|
118: TypeImage 41(int) 3D sampled format:Unknown
|
||||||
119: TypePointer UniformConstant 118
|
119: TypePointer UniformConstant 118
|
||||||
120(g_tTex3du4): 119(ptr) Variable UniformConstant
|
120(g_tTex3du4): 119(ptr) Variable UniformConstant
|
||||||
@ -553,7 +552,7 @@ Validation failed
|
|||||||
126: 6(float) Constant 1061997773
|
126: 6(float) Constant 1061997773
|
||||||
127: 6(float) Constant 1063675494
|
127: 6(float) Constant 1063675494
|
||||||
128: 101(fvec3) ConstantComposite 125 126 127
|
128: 101(fvec3) ConstantComposite 125 126 127
|
||||||
129: 103(ivec3) ConstantComposite 27 65 90
|
129: 103(ivec3) ConstantComposite 26 65 90
|
||||||
131: TypePointer Function 8(PS_OUTPUT)
|
131: TypePointer Function 8(PS_OUTPUT)
|
||||||
133: 6(float) Constant 1065353216
|
133: 6(float) Constant 1065353216
|
||||||
134: 7(fvec4) ConstantComposite 133 133 133 133
|
134: 7(fvec4) ConstantComposite 133 133 133 133
|
||||||
@ -566,7 +565,7 @@ Validation failed
|
|||||||
152: TypeImage 6(float) Cube sampled format:Unknown
|
152: TypeImage 6(float) Cube sampled format:Unknown
|
||||||
153: TypePointer UniformConstant 152
|
153: TypePointer UniformConstant 152
|
||||||
154(g_tTexcdf4): 153(ptr) Variable UniformConstant
|
154(g_tTexcdf4): 153(ptr) Variable UniformConstant
|
||||||
155: TypeImage 26(int) Cube sampled format:Unknown
|
155: TypeImage 25(int) Cube sampled format:Unknown
|
||||||
156: TypePointer UniformConstant 155
|
156: TypePointer UniformConstant 155
|
||||||
157(g_tTexcdi4): 156(ptr) Variable UniformConstant
|
157(g_tTexcdi4): 156(ptr) Variable UniformConstant
|
||||||
158: TypeImage 41(int) Cube sampled format:Unknown
|
158: TypeImage 41(int) Cube sampled format:Unknown
|
||||||
@ -580,7 +579,7 @@ Validation failed
|
|||||||
145: 12(ptr) AccessChain 141(flattenTemp) 65
|
145: 12(ptr) AccessChain 141(flattenTemp) 65
|
||||||
146: 7(fvec4) Load 145
|
146: 7(fvec4) Load 145
|
||||||
Store 144(@entryPointOutput.Color) 146
|
Store 144(@entryPointOutput.Color) 146
|
||||||
149: 136(ptr) AccessChain 141(flattenTemp) 27
|
149: 136(ptr) AccessChain 141(flattenTemp) 26
|
||||||
150: 6(float) Load 149
|
150: 6(float) Load 149
|
||||||
Store 148(@entryPointOutput.Depth) 150
|
Store 148(@entryPointOutput.Depth) 150
|
||||||
Return
|
Return
|
||||||
@ -600,51 +599,51 @@ Validation failed
|
|||||||
17: 14 Load 16(g_tTex1df4)
|
17: 14 Load 16(g_tTex1df4)
|
||||||
21: 18 Load 20(g_sSamp)
|
21: 18 Load 20(g_sSamp)
|
||||||
23: 22 SampledImage 17 21
|
23: 22 SampledImage 17 21
|
||||||
28: 7(fvec4) ImageSampleImplicitLod 23 24 Bias ConstOffset 27 25
|
28: 7(fvec4) ImageSampleImplicitLod 23 24 Bias ConstOffset 27 26
|
||||||
Store 13(txval10) 28
|
Store 13(txval10) 28
|
||||||
35: 32 Load 34(g_tTex1di4)
|
35: 32 Load 34(g_tTex1di4)
|
||||||
36: 18 Load 20(g_sSamp)
|
36: 18 Load 20(g_sSamp)
|
||||||
38: 37 SampledImage 35 36
|
38: 37 SampledImage 35 36
|
||||||
40: 29(ivec4) ImageSampleImplicitLod 38 39 Bias ConstOffset 27 25
|
40: 29(ivec4) ImageSampleImplicitLod 38 39 Bias ConstOffset 27 26
|
||||||
Store 31(txval11) 40
|
Store 31(txval11) 40
|
||||||
48: 45 Load 47(g_tTex1du4)
|
48: 45 Load 47(g_tTex1du4)
|
||||||
49: 18 Load 20(g_sSamp)
|
49: 18 Load 20(g_sSamp)
|
||||||
51: 50 SampledImage 48 49
|
51: 50 SampledImage 48 49
|
||||||
53: 42(ivec4) ImageSampleImplicitLod 51 52 Bias ConstOffset 27 25
|
53: 42(ivec4) ImageSampleImplicitLod 51 52 Bias ConstOffset 27 26
|
||||||
Store 44(txval12) 53
|
Store 44(txval12) 53
|
||||||
58: 55 Load 57(g_tTex2df4)
|
58: 55 Load 57(g_tTex2df4)
|
||||||
59: 18 Load 20(g_sSamp)
|
59: 18 Load 20(g_sSamp)
|
||||||
61: 60 SampledImage 58 59
|
61: 60 SampledImage 58 59
|
||||||
67: 7(fvec4) ImageSampleImplicitLod 61 63 Bias ConstOffset 66 25
|
67: 7(fvec4) ImageSampleImplicitLod 61 63 Bias ConstOffset 27 66
|
||||||
Store 54(txval20) 67
|
Store 54(txval20) 67
|
||||||
72: 69 Load 71(g_tTex2di4)
|
72: 69 Load 71(g_tTex2di4)
|
||||||
73: 18 Load 20(g_sSamp)
|
73: 18 Load 20(g_sSamp)
|
||||||
75: 74 SampledImage 72 73
|
75: 74 SampledImage 72 73
|
||||||
79: 29(ivec4) ImageSampleImplicitLod 75 77 Bias ConstOffset 78 25
|
79: 29(ivec4) ImageSampleImplicitLod 75 77 Bias ConstOffset 27 78
|
||||||
Store 68(txval21) 79
|
Store 68(txval21) 79
|
||||||
84: 81 Load 83(g_tTex2du4)
|
84: 81 Load 83(g_tTex2du4)
|
||||||
85: 18 Load 20(g_sSamp)
|
85: 18 Load 20(g_sSamp)
|
||||||
87: 86 SampledImage 84 85
|
87: 86 SampledImage 84 85
|
||||||
92: 42(ivec4) ImageSampleImplicitLod 87 89 Bias ConstOffset 91 25
|
92: 42(ivec4) ImageSampleImplicitLod 87 89 Bias ConstOffset 27 91
|
||||||
Store 80(txval22) 92
|
Store 80(txval22) 92
|
||||||
97: 94 Load 96(g_tTex3df4)
|
97: 94 Load 96(g_tTex3df4)
|
||||||
98: 18 Load 20(g_sSamp)
|
98: 18 Load 20(g_sSamp)
|
||||||
100: 99 SampledImage 97 98
|
100: 99 SampledImage 97 98
|
||||||
105: 7(fvec4) ImageSampleImplicitLod 100 102 Bias ConstOffset 104 25
|
105: 7(fvec4) ImageSampleImplicitLod 100 102 Bias ConstOffset 27 104
|
||||||
Store 93(txval30) 105
|
Store 93(txval30) 105
|
||||||
110: 107 Load 109(g_tTex3di4)
|
110: 107 Load 109(g_tTex3di4)
|
||||||
111: 18 Load 20(g_sSamp)
|
111: 18 Load 20(g_sSamp)
|
||||||
113: 112 SampledImage 110 111
|
113: 112 SampledImage 110 111
|
||||||
116: 29(ivec4) ImageSampleImplicitLod 113 114 Bias ConstOffset 115 25
|
116: 29(ivec4) ImageSampleImplicitLod 113 114 Bias ConstOffset 27 115
|
||||||
Store 106(txval31) 116
|
Store 106(txval31) 116
|
||||||
121: 118 Load 120(g_tTex3du4)
|
121: 118 Load 120(g_tTex3du4)
|
||||||
122: 18 Load 20(g_sSamp)
|
122: 18 Load 20(g_sSamp)
|
||||||
124: 123 SampledImage 121 122
|
124: 123 SampledImage 121 122
|
||||||
130: 42(ivec4) ImageSampleImplicitLod 124 128 Bias ConstOffset 129 25
|
130: 42(ivec4) ImageSampleImplicitLod 124 128 Bias ConstOffset 27 129
|
||||||
Store 117(txval32) 130
|
Store 117(txval32) 130
|
||||||
135: 12(ptr) AccessChain 132(psout) 65
|
135: 12(ptr) AccessChain 132(psout) 65
|
||||||
Store 135 134
|
Store 135 134
|
||||||
137: 136(ptr) AccessChain 132(psout) 27
|
137: 136(ptr) AccessChain 132(psout) 26
|
||||||
Store 137 133
|
Store 137 133
|
||||||
138:8(PS_OUTPUT) Load 132(psout)
|
138:8(PS_OUTPUT) Load 132(psout)
|
||||||
ReturnValue 138
|
ReturnValue 138
|
||||||
|
@ -17,9 +17,9 @@ using depth_any
|
|||||||
0:23 0.100000
|
0:23 0.100000
|
||||||
0:23 0.200000
|
0:23 0.200000
|
||||||
0:23 Constant:
|
0:23 Constant:
|
||||||
0:23 0.500000
|
|
||||||
0:23 Constant:
|
|
||||||
0:23 0 (const int)
|
0:23 0 (const int)
|
||||||
|
0:23 Constant:
|
||||||
|
0:23 0.500000
|
||||||
0:24 Sequence
|
0:24 Sequence
|
||||||
0:24 move second child to first child ( temp 4-component vector of int)
|
0:24 move second child to first child ( temp 4-component vector of int)
|
||||||
0:24 'txval11' ( temp 4-component vector of int)
|
0:24 'txval11' ( temp 4-component vector of int)
|
||||||
@ -31,9 +31,9 @@ using depth_any
|
|||||||
0:24 0.200000
|
0:24 0.200000
|
||||||
0:24 0.300000
|
0:24 0.300000
|
||||||
0:24 Constant:
|
0:24 Constant:
|
||||||
0:24 0.500000
|
|
||||||
0:24 Constant:
|
|
||||||
0:24 1 (const int)
|
0:24 1 (const int)
|
||||||
|
0:24 Constant:
|
||||||
|
0:24 0.500000
|
||||||
0:25 Sequence
|
0:25 Sequence
|
||||||
0:25 move second child to first child ( temp 4-component vector of uint)
|
0:25 move second child to first child ( temp 4-component vector of uint)
|
||||||
0:25 'txval12' ( temp 4-component vector of uint)
|
0:25 'txval12' ( temp 4-component vector of uint)
|
||||||
@ -45,9 +45,9 @@ using depth_any
|
|||||||
0:25 0.300000
|
0:25 0.300000
|
||||||
0:25 0.400000
|
0:25 0.400000
|
||||||
0:25 Constant:
|
0:25 Constant:
|
||||||
0:25 0.500000
|
|
||||||
0:25 Constant:
|
|
||||||
0:25 2 (const int)
|
0:25 2 (const int)
|
||||||
|
0:25 Constant:
|
||||||
|
0:25 0.500000
|
||||||
0:27 Sequence
|
0:27 Sequence
|
||||||
0:27 move second child to first child ( temp 4-component vector of float)
|
0:27 move second child to first child ( temp 4-component vector of float)
|
||||||
0:27 'txval20' ( temp 4-component vector of float)
|
0:27 'txval20' ( temp 4-component vector of float)
|
||||||
@ -60,10 +60,10 @@ using depth_any
|
|||||||
0:27 0.200000
|
0:27 0.200000
|
||||||
0:27 0.300000
|
0:27 0.300000
|
||||||
0:27 Constant:
|
0:27 Constant:
|
||||||
0:27 0.500000
|
0:27 0 (const int)
|
||||||
|
0:27 0 (const int)
|
||||||
0:27 Constant:
|
0:27 Constant:
|
||||||
0:27 0 (const int)
|
0:27 0.500000
|
||||||
0:27 0 (const int)
|
|
||||||
0:28 Sequence
|
0:28 Sequence
|
||||||
0:28 move second child to first child ( temp 4-component vector of int)
|
0:28 move second child to first child ( temp 4-component vector of int)
|
||||||
0:28 'txval21' ( temp 4-component vector of int)
|
0:28 'txval21' ( temp 4-component vector of int)
|
||||||
@ -76,10 +76,10 @@ using depth_any
|
|||||||
0:28 0.400000
|
0:28 0.400000
|
||||||
0:28 0.500000
|
0:28 0.500000
|
||||||
0:28 Constant:
|
0:28 Constant:
|
||||||
0:28 0.500000
|
0:28 0 (const int)
|
||||||
|
0:28 0 (const int)
|
||||||
0:28 Constant:
|
0:28 Constant:
|
||||||
0:28 0 (const int)
|
0:28 0.500000
|
||||||
0:28 0 (const int)
|
|
||||||
0:29 Sequence
|
0:29 Sequence
|
||||||
0:29 move second child to first child ( temp 4-component vector of uint)
|
0:29 move second child to first child ( temp 4-component vector of uint)
|
||||||
0:29 'txval22' ( temp 4-component vector of uint)
|
0:29 'txval22' ( temp 4-component vector of uint)
|
||||||
@ -92,10 +92,10 @@ using depth_any
|
|||||||
0:29 0.600000
|
0:29 0.600000
|
||||||
0:29 0.700000
|
0:29 0.700000
|
||||||
0:29 Constant:
|
0:29 Constant:
|
||||||
0:29 0.500000
|
|
||||||
0:29 Constant:
|
|
||||||
0:29 0 (const int)
|
0:29 0 (const int)
|
||||||
0:29 1 (const int)
|
0:29 1 (const int)
|
||||||
|
0:29 Constant:
|
||||||
|
0:29 0.500000
|
||||||
0:33 move second child to first child ( temp 4-component vector of float)
|
0:33 move second child to first child ( temp 4-component vector of float)
|
||||||
0:33 Color: direct index for structure ( temp 4-component vector of float)
|
0:33 Color: direct index for structure ( temp 4-component vector of float)
|
||||||
0:33 'psout' ( temp structure{ temp 4-component vector of float Color, temp float Depth})
|
0:33 'psout' ( temp structure{ temp 4-component vector of float Color, temp float Depth})
|
||||||
@ -168,9 +168,9 @@ using depth_any
|
|||||||
0:23 0.100000
|
0:23 0.100000
|
||||||
0:23 0.200000
|
0:23 0.200000
|
||||||
0:23 Constant:
|
0:23 Constant:
|
||||||
0:23 0.500000
|
|
||||||
0:23 Constant:
|
|
||||||
0:23 0 (const int)
|
0:23 0 (const int)
|
||||||
|
0:23 Constant:
|
||||||
|
0:23 0.500000
|
||||||
0:24 Sequence
|
0:24 Sequence
|
||||||
0:24 move second child to first child ( temp 4-component vector of int)
|
0:24 move second child to first child ( temp 4-component vector of int)
|
||||||
0:24 'txval11' ( temp 4-component vector of int)
|
0:24 'txval11' ( temp 4-component vector of int)
|
||||||
@ -182,9 +182,9 @@ using depth_any
|
|||||||
0:24 0.200000
|
0:24 0.200000
|
||||||
0:24 0.300000
|
0:24 0.300000
|
||||||
0:24 Constant:
|
0:24 Constant:
|
||||||
0:24 0.500000
|
|
||||||
0:24 Constant:
|
|
||||||
0:24 1 (const int)
|
0:24 1 (const int)
|
||||||
|
0:24 Constant:
|
||||||
|
0:24 0.500000
|
||||||
0:25 Sequence
|
0:25 Sequence
|
||||||
0:25 move second child to first child ( temp 4-component vector of uint)
|
0:25 move second child to first child ( temp 4-component vector of uint)
|
||||||
0:25 'txval12' ( temp 4-component vector of uint)
|
0:25 'txval12' ( temp 4-component vector of uint)
|
||||||
@ -196,9 +196,9 @@ using depth_any
|
|||||||
0:25 0.300000
|
0:25 0.300000
|
||||||
0:25 0.400000
|
0:25 0.400000
|
||||||
0:25 Constant:
|
0:25 Constant:
|
||||||
0:25 0.500000
|
|
||||||
0:25 Constant:
|
|
||||||
0:25 2 (const int)
|
0:25 2 (const int)
|
||||||
|
0:25 Constant:
|
||||||
|
0:25 0.500000
|
||||||
0:27 Sequence
|
0:27 Sequence
|
||||||
0:27 move second child to first child ( temp 4-component vector of float)
|
0:27 move second child to first child ( temp 4-component vector of float)
|
||||||
0:27 'txval20' ( temp 4-component vector of float)
|
0:27 'txval20' ( temp 4-component vector of float)
|
||||||
@ -211,10 +211,10 @@ using depth_any
|
|||||||
0:27 0.200000
|
0:27 0.200000
|
||||||
0:27 0.300000
|
0:27 0.300000
|
||||||
0:27 Constant:
|
0:27 Constant:
|
||||||
0:27 0.500000
|
0:27 0 (const int)
|
||||||
|
0:27 0 (const int)
|
||||||
0:27 Constant:
|
0:27 Constant:
|
||||||
0:27 0 (const int)
|
0:27 0.500000
|
||||||
0:27 0 (const int)
|
|
||||||
0:28 Sequence
|
0:28 Sequence
|
||||||
0:28 move second child to first child ( temp 4-component vector of int)
|
0:28 move second child to first child ( temp 4-component vector of int)
|
||||||
0:28 'txval21' ( temp 4-component vector of int)
|
0:28 'txval21' ( temp 4-component vector of int)
|
||||||
@ -227,10 +227,10 @@ using depth_any
|
|||||||
0:28 0.400000
|
0:28 0.400000
|
||||||
0:28 0.500000
|
0:28 0.500000
|
||||||
0:28 Constant:
|
0:28 Constant:
|
||||||
0:28 0.500000
|
0:28 0 (const int)
|
||||||
|
0:28 0 (const int)
|
||||||
0:28 Constant:
|
0:28 Constant:
|
||||||
0:28 0 (const int)
|
0:28 0.500000
|
||||||
0:28 0 (const int)
|
|
||||||
0:29 Sequence
|
0:29 Sequence
|
||||||
0:29 move second child to first child ( temp 4-component vector of uint)
|
0:29 move second child to first child ( temp 4-component vector of uint)
|
||||||
0:29 'txval22' ( temp 4-component vector of uint)
|
0:29 'txval22' ( temp 4-component vector of uint)
|
||||||
@ -243,10 +243,10 @@ using depth_any
|
|||||||
0:29 0.600000
|
0:29 0.600000
|
||||||
0:29 0.700000
|
0:29 0.700000
|
||||||
0:29 Constant:
|
0:29 Constant:
|
||||||
0:29 0.500000
|
|
||||||
0:29 Constant:
|
|
||||||
0:29 0 (const int)
|
0:29 0 (const int)
|
||||||
0:29 1 (const int)
|
0:29 1 (const int)
|
||||||
|
0:29 Constant:
|
||||||
|
0:29 0.500000
|
||||||
0:33 move second child to first child ( temp 4-component vector of float)
|
0:33 move second child to first child ( temp 4-component vector of float)
|
||||||
0:33 Color: direct index for structure ( temp 4-component vector of float)
|
0:33 Color: direct index for structure ( temp 4-component vector of float)
|
||||||
0:33 'psout' ( temp structure{ temp 4-component vector of float Color, temp float Depth})
|
0:33 'psout' ( temp structure{ temp 4-component vector of float Color, temp float Depth})
|
||||||
@ -297,7 +297,6 @@ using depth_any
|
|||||||
0:? '@entryPointOutput.Depth' ( out float FragDepth)
|
0:? '@entryPointOutput.Depth' ( out float FragDepth)
|
||||||
0:? '@entryPointOutput.Color' (layout( location=0) out 4-component vector of float)
|
0:? '@entryPointOutput.Color' (layout( location=0) out 4-component vector of float)
|
||||||
|
|
||||||
Validation failed
|
|
||||||
// Module Version 10000
|
// Module Version 10000
|
||||||
// Generated by (magic number): 8000a
|
// Generated by (magic number): 8000a
|
||||||
// Id's are bound by 118
|
// Id's are bound by 118
|
||||||
@ -369,18 +368,18 @@ Validation failed
|
|||||||
25: 6(float) Constant 1036831949
|
25: 6(float) Constant 1036831949
|
||||||
26: 6(float) Constant 1045220557
|
26: 6(float) Constant 1045220557
|
||||||
27: 24(fvec2) ConstantComposite 25 26
|
27: 24(fvec2) ConstantComposite 25 26
|
||||||
28: 6(float) Constant 1056964608
|
28: TypeInt 32 1
|
||||||
29: TypeInt 32 1
|
29: 28(int) Constant 0
|
||||||
30: 29(int) Constant 0
|
30: 6(float) Constant 1056964608
|
||||||
32: TypeVector 29(int) 4
|
32: TypeVector 28(int) 4
|
||||||
33: TypePointer Function 32(ivec4)
|
33: TypePointer Function 32(ivec4)
|
||||||
35: TypeImage 29(int) 1D array sampled format:Unknown
|
35: TypeImage 28(int) 1D array sampled format:Unknown
|
||||||
36: TypePointer UniformConstant 35
|
36: TypePointer UniformConstant 35
|
||||||
37(g_tTex1di4): 36(ptr) Variable UniformConstant
|
37(g_tTex1di4): 36(ptr) Variable UniformConstant
|
||||||
40: TypeSampledImage 35
|
40: TypeSampledImage 35
|
||||||
42: 6(float) Constant 1050253722
|
42: 6(float) Constant 1050253722
|
||||||
43: 24(fvec2) ConstantComposite 26 42
|
43: 24(fvec2) ConstantComposite 26 42
|
||||||
44: 29(int) Constant 1
|
44: 28(int) Constant 1
|
||||||
46: TypeInt 32 0
|
46: TypeInt 32 0
|
||||||
47: TypeVector 46(int) 4
|
47: TypeVector 46(int) 4
|
||||||
48: TypePointer Function 47(ivec4)
|
48: TypePointer Function 47(ivec4)
|
||||||
@ -390,28 +389,28 @@ Validation failed
|
|||||||
55: TypeSampledImage 50
|
55: TypeSampledImage 50
|
||||||
57: 6(float) Constant 1053609165
|
57: 6(float) Constant 1053609165
|
||||||
58: 24(fvec2) ConstantComposite 42 57
|
58: 24(fvec2) ConstantComposite 42 57
|
||||||
59: 29(int) Constant 2
|
59: 28(int) Constant 2
|
||||||
62: TypeImage 6(float) 2D array sampled format:Unknown
|
62: TypeImage 6(float) 2D array sampled format:Unknown
|
||||||
63: TypePointer UniformConstant 62
|
63: TypePointer UniformConstant 62
|
||||||
64(g_tTex2df4): 63(ptr) Variable UniformConstant
|
64(g_tTex2df4): 63(ptr) Variable UniformConstant
|
||||||
67: TypeSampledImage 62
|
67: TypeSampledImage 62
|
||||||
69: TypeVector 6(float) 3
|
69: TypeVector 6(float) 3
|
||||||
70: 69(fvec3) ConstantComposite 25 26 42
|
70: 69(fvec3) ConstantComposite 25 26 42
|
||||||
71: TypeVector 29(int) 2
|
71: TypeVector 28(int) 2
|
||||||
72: 71(ivec2) ConstantComposite 30 30
|
72: 71(ivec2) ConstantComposite 29 29
|
||||||
75: TypeImage 29(int) 2D array sampled format:Unknown
|
75: TypeImage 28(int) 2D array sampled format:Unknown
|
||||||
76: TypePointer UniformConstant 75
|
76: TypePointer UniformConstant 75
|
||||||
77(g_tTex2di4): 76(ptr) Variable UniformConstant
|
77(g_tTex2di4): 76(ptr) Variable UniformConstant
|
||||||
80: TypeSampledImage 75
|
80: TypeSampledImage 75
|
||||||
82: 69(fvec3) ConstantComposite 42 57 28
|
82: 69(fvec3) ConstantComposite 42 57 30
|
||||||
85: TypeImage 46(int) 2D array sampled format:Unknown
|
85: TypeImage 46(int) 2D array sampled format:Unknown
|
||||||
86: TypePointer UniformConstant 85
|
86: TypePointer UniformConstant 85
|
||||||
87(g_tTex2du4): 86(ptr) Variable UniformConstant
|
87(g_tTex2du4): 86(ptr) Variable UniformConstant
|
||||||
90: TypeSampledImage 85
|
90: TypeSampledImage 85
|
||||||
92: 6(float) Constant 1058642330
|
92: 6(float) Constant 1058642330
|
||||||
93: 6(float) Constant 1060320051
|
93: 6(float) Constant 1060320051
|
||||||
94: 69(fvec3) ConstantComposite 28 92 93
|
94: 69(fvec3) ConstantComposite 30 92 93
|
||||||
95: 71(ivec2) ConstantComposite 30 44
|
95: 71(ivec2) ConstantComposite 29 44
|
||||||
97: TypePointer Function 8(PS_OUTPUT)
|
97: TypePointer Function 8(PS_OUTPUT)
|
||||||
99: 6(float) Constant 1065353216
|
99: 6(float) Constant 1065353216
|
||||||
100: 7(fvec4) ConstantComposite 99 99 99 99
|
100: 7(fvec4) ConstantComposite 99 99 99 99
|
||||||
@ -426,7 +425,7 @@ Validation failed
|
|||||||
107(flattenTemp): 97(ptr) Variable Function
|
107(flattenTemp): 97(ptr) Variable Function
|
||||||
108:8(PS_OUTPUT) FunctionCall 10(@main()
|
108:8(PS_OUTPUT) FunctionCall 10(@main()
|
||||||
Store 107(flattenTemp) 108
|
Store 107(flattenTemp) 108
|
||||||
111: 12(ptr) AccessChain 107(flattenTemp) 30
|
111: 12(ptr) AccessChain 107(flattenTemp) 29
|
||||||
112: 7(fvec4) Load 111
|
112: 7(fvec4) Load 111
|
||||||
Store 110(@entryPointOutput.Color) 112
|
Store 110(@entryPointOutput.Color) 112
|
||||||
115: 102(ptr) AccessChain 107(flattenTemp) 44
|
115: 102(ptr) AccessChain 107(flattenTemp) 44
|
||||||
@ -446,34 +445,34 @@ Validation failed
|
|||||||
17: 14 Load 16(g_tTex1df4)
|
17: 14 Load 16(g_tTex1df4)
|
||||||
21: 18 Load 20(g_sSamp)
|
21: 18 Load 20(g_sSamp)
|
||||||
23: 22 SampledImage 17 21
|
23: 22 SampledImage 17 21
|
||||||
31: 7(fvec4) ImageSampleImplicitLod 23 27 Bias ConstOffset 30 28
|
31: 7(fvec4) ImageSampleImplicitLod 23 27 Bias ConstOffset 30 29
|
||||||
Store 13(txval10) 31
|
Store 13(txval10) 31
|
||||||
38: 35 Load 37(g_tTex1di4)
|
38: 35 Load 37(g_tTex1di4)
|
||||||
39: 18 Load 20(g_sSamp)
|
39: 18 Load 20(g_sSamp)
|
||||||
41: 40 SampledImage 38 39
|
41: 40 SampledImage 38 39
|
||||||
45: 32(ivec4) ImageSampleImplicitLod 41 43 Bias ConstOffset 44 28
|
45: 32(ivec4) ImageSampleImplicitLod 41 43 Bias ConstOffset 30 44
|
||||||
Store 34(txval11) 45
|
Store 34(txval11) 45
|
||||||
53: 50 Load 52(g_tTex1du4)
|
53: 50 Load 52(g_tTex1du4)
|
||||||
54: 18 Load 20(g_sSamp)
|
54: 18 Load 20(g_sSamp)
|
||||||
56: 55 SampledImage 53 54
|
56: 55 SampledImage 53 54
|
||||||
60: 47(ivec4) ImageSampleImplicitLod 56 58 Bias ConstOffset 59 28
|
60: 47(ivec4) ImageSampleImplicitLod 56 58 Bias ConstOffset 30 59
|
||||||
Store 49(txval12) 60
|
Store 49(txval12) 60
|
||||||
65: 62 Load 64(g_tTex2df4)
|
65: 62 Load 64(g_tTex2df4)
|
||||||
66: 18 Load 20(g_sSamp)
|
66: 18 Load 20(g_sSamp)
|
||||||
68: 67 SampledImage 65 66
|
68: 67 SampledImage 65 66
|
||||||
73: 7(fvec4) ImageSampleImplicitLod 68 70 Bias ConstOffset 72 28
|
73: 7(fvec4) ImageSampleImplicitLod 68 70 Bias ConstOffset 30 72
|
||||||
Store 61(txval20) 73
|
Store 61(txval20) 73
|
||||||
78: 75 Load 77(g_tTex2di4)
|
78: 75 Load 77(g_tTex2di4)
|
||||||
79: 18 Load 20(g_sSamp)
|
79: 18 Load 20(g_sSamp)
|
||||||
81: 80 SampledImage 78 79
|
81: 80 SampledImage 78 79
|
||||||
83: 32(ivec4) ImageSampleImplicitLod 81 82 Bias ConstOffset 72 28
|
83: 32(ivec4) ImageSampleImplicitLod 81 82 Bias ConstOffset 30 72
|
||||||
Store 74(txval21) 83
|
Store 74(txval21) 83
|
||||||
88: 85 Load 87(g_tTex2du4)
|
88: 85 Load 87(g_tTex2du4)
|
||||||
89: 18 Load 20(g_sSamp)
|
89: 18 Load 20(g_sSamp)
|
||||||
91: 90 SampledImage 88 89
|
91: 90 SampledImage 88 89
|
||||||
96: 47(ivec4) ImageSampleImplicitLod 91 94 Bias ConstOffset 95 28
|
96: 47(ivec4) ImageSampleImplicitLod 91 94 Bias ConstOffset 30 95
|
||||||
Store 84(txval22) 96
|
Store 84(txval22) 96
|
||||||
101: 12(ptr) AccessChain 98(psout) 30
|
101: 12(ptr) AccessChain 98(psout) 29
|
||||||
Store 101 100
|
Store 101 100
|
||||||
103: 102(ptr) AccessChain 98(psout) 44
|
103: 102(ptr) AccessChain 98(psout) 44
|
||||||
Store 103 99
|
Store 103 99
|
||||||
|
140
Test/baseResults/hlsl.structbuffer.rwbyte2.comp.out
Normal file
140
Test/baseResults/hlsl.structbuffer.rwbyte2.comp.out
Normal file
@ -0,0 +1,140 @@
|
|||||||
|
hlsl.structbuffer.rwbyte2.comp
|
||||||
|
Shader version: 500
|
||||||
|
local_size = (1, 1, 1)
|
||||||
|
0:? Sequence
|
||||||
|
0:6 Function Definition: @main( ( temp void)
|
||||||
|
0:6 Function Parameters:
|
||||||
|
0:? Sequence
|
||||||
|
0:7 Sequence
|
||||||
|
0:7 move second child to first child ( temp uint)
|
||||||
|
0:7 'f' ( temp uint)
|
||||||
|
0:7 indirect index (layout( row_major std430) buffer uint)
|
||||||
|
0:7 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
|
||||||
|
0:7 'g_bbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
|
||||||
|
0:7 Constant:
|
||||||
|
0:7 0 (const uint)
|
||||||
|
0:7 right-shift ( temp int)
|
||||||
|
0:7 Constant:
|
||||||
|
0:7 16 (const int)
|
||||||
|
0:7 Constant:
|
||||||
|
0:7 2 (const int)
|
||||||
|
0:8 move second child to first child ( temp uint)
|
||||||
|
0:8 direct index (layout( row_major std430) buffer uint)
|
||||||
|
0:8 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
|
||||||
|
0:8 'g_sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
|
||||||
|
0:8 Constant:
|
||||||
|
0:8 0 (const uint)
|
||||||
|
0:8 Constant:
|
||||||
|
0:8 0 (const int)
|
||||||
|
0:8 'f' ( temp uint)
|
||||||
|
0:6 Function Definition: main( ( temp void)
|
||||||
|
0:6 Function Parameters:
|
||||||
|
0:? Sequence
|
||||||
|
0:6 Function Call: @main( ( temp void)
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'g_sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
|
||||||
|
0:? 'g_bbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
|
||||||
|
|
||||||
|
|
||||||
|
Linked compute stage:
|
||||||
|
|
||||||
|
|
||||||
|
Shader version: 500
|
||||||
|
local_size = (1, 1, 1)
|
||||||
|
0:? Sequence
|
||||||
|
0:6 Function Definition: @main( ( temp void)
|
||||||
|
0:6 Function Parameters:
|
||||||
|
0:? Sequence
|
||||||
|
0:7 Sequence
|
||||||
|
0:7 move second child to first child ( temp uint)
|
||||||
|
0:7 'f' ( temp uint)
|
||||||
|
0:7 indirect index (layout( row_major std430) buffer uint)
|
||||||
|
0:7 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
|
||||||
|
0:7 'g_bbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
|
||||||
|
0:7 Constant:
|
||||||
|
0:7 0 (const uint)
|
||||||
|
0:7 right-shift ( temp int)
|
||||||
|
0:7 Constant:
|
||||||
|
0:7 16 (const int)
|
||||||
|
0:7 Constant:
|
||||||
|
0:7 2 (const int)
|
||||||
|
0:8 move second child to first child ( temp uint)
|
||||||
|
0:8 direct index (layout( row_major std430) buffer uint)
|
||||||
|
0:8 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
|
||||||
|
0:8 'g_sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
|
||||||
|
0:8 Constant:
|
||||||
|
0:8 0 (const uint)
|
||||||
|
0:8 Constant:
|
||||||
|
0:8 0 (const int)
|
||||||
|
0:8 'f' ( temp uint)
|
||||||
|
0:6 Function Definition: main( ( temp void)
|
||||||
|
0:6 Function Parameters:
|
||||||
|
0:? Sequence
|
||||||
|
0:6 Function Call: @main( ( temp void)
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'g_sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
|
||||||
|
0:? 'g_bbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
|
||||||
|
|
||||||
|
// Module Version 10000
|
||||||
|
// Generated by (magic number): 8000a
|
||||||
|
// Id's are bound by 30
|
||||||
|
|
||||||
|
Capability Shader
|
||||||
|
1: ExtInstImport "GLSL.std.450"
|
||||||
|
MemoryModel Logical GLSL450
|
||||||
|
EntryPoint GLCompute 4 "main"
|
||||||
|
ExecutionMode 4 LocalSize 1 1 1
|
||||||
|
Source HLSL 500
|
||||||
|
Name 4 "main"
|
||||||
|
Name 6 "@main("
|
||||||
|
Name 10 "f"
|
||||||
|
Name 12 "g_bbuf"
|
||||||
|
MemberName 12(g_bbuf) 0 "@data"
|
||||||
|
Name 14 "g_bbuf"
|
||||||
|
Name 24 "g_sbuf"
|
||||||
|
MemberName 24(g_sbuf) 0 "@data"
|
||||||
|
Name 26 "g_sbuf"
|
||||||
|
Decorate 11 ArrayStride 4
|
||||||
|
MemberDecorate 12(g_bbuf) 0 Offset 0
|
||||||
|
Decorate 12(g_bbuf) BufferBlock
|
||||||
|
Decorate 14(g_bbuf) DescriptorSet 0
|
||||||
|
Decorate 14(g_bbuf) Binding 1
|
||||||
|
Decorate 23 ArrayStride 4
|
||||||
|
MemberDecorate 24(g_sbuf) 0 Offset 0
|
||||||
|
Decorate 24(g_sbuf) BufferBlock
|
||||||
|
Decorate 26(g_sbuf) DescriptorSet 0
|
||||||
|
Decorate 26(g_sbuf) Binding 0
|
||||||
|
2: TypeVoid
|
||||||
|
3: TypeFunction 2
|
||||||
|
8: TypeInt 32 0
|
||||||
|
9: TypePointer Function 8(int)
|
||||||
|
11: TypeRuntimeArray 8(int)
|
||||||
|
12(g_bbuf): TypeStruct 11
|
||||||
|
13: TypePointer Uniform 12(g_bbuf)
|
||||||
|
14(g_bbuf): 13(ptr) Variable Uniform
|
||||||
|
15: TypeInt 32 1
|
||||||
|
16: 15(int) Constant 0
|
||||||
|
17: 15(int) Constant 16
|
||||||
|
18: 15(int) Constant 2
|
||||||
|
20: TypePointer Uniform 8(int)
|
||||||
|
23: TypeRuntimeArray 8(int)
|
||||||
|
24(g_sbuf): TypeStruct 23
|
||||||
|
25: TypePointer Uniform 24(g_sbuf)
|
||||||
|
26(g_sbuf): 25(ptr) Variable Uniform
|
||||||
|
4(main): 2 Function None 3
|
||||||
|
5: Label
|
||||||
|
29: 2 FunctionCall 6(@main()
|
||||||
|
Return
|
||||||
|
FunctionEnd
|
||||||
|
6(@main(): 2 Function None 3
|
||||||
|
7: Label
|
||||||
|
10(f): 9(ptr) Variable Function
|
||||||
|
19: 15(int) ShiftRightArithmetic 17 18
|
||||||
|
21: 20(ptr) AccessChain 14(g_bbuf) 16 19
|
||||||
|
22: 8(int) Load 21
|
||||||
|
Store 10(f) 22
|
||||||
|
27: 8(int) Load 10(f)
|
||||||
|
28: 20(ptr) AccessChain 26(g_sbuf) 16 16
|
||||||
|
Store 28 27
|
||||||
|
Return
|
||||||
|
FunctionEnd
|
268
Test/baseResults/hlsl.w-recip.frag.out
Normal file
268
Test/baseResults/hlsl.w-recip.frag.out
Normal file
@ -0,0 +1,268 @@
|
|||||||
|
hlsl.w-recip.frag
|
||||||
|
Shader version: 500
|
||||||
|
gl_FragCoord origin is upper left
|
||||||
|
0:? Sequence
|
||||||
|
0:5 Function Definition: @main(vf4; ( temp 4-component vector of float)
|
||||||
|
0:5 Function Parameters:
|
||||||
|
0:5 'vpos' ( in 4-component vector of float)
|
||||||
|
0:? Sequence
|
||||||
|
0:6 Sequence
|
||||||
|
0:6 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:6 'vpos_t' ( temp 4-component vector of float)
|
||||||
|
0:6 Construct vec4 ( temp 4-component vector of float)
|
||||||
|
0:6 vector swizzle ( temp 3-component vector of float)
|
||||||
|
0:6 'vpos' ( in 4-component vector of float)
|
||||||
|
0:6 Sequence
|
||||||
|
0:6 Constant:
|
||||||
|
0:6 0 (const int)
|
||||||
|
0:6 Constant:
|
||||||
|
0:6 1 (const int)
|
||||||
|
0:6 Constant:
|
||||||
|
0:6 2 (const int)
|
||||||
|
0:6 divide ( temp float)
|
||||||
|
0:6 Constant:
|
||||||
|
0:6 1.000000
|
||||||
|
0:6 direct index ( temp float)
|
||||||
|
0:6 'vpos' ( in 4-component vector of float)
|
||||||
|
0:6 Constant:
|
||||||
|
0:6 3 (const int)
|
||||||
|
0:7 Test condition and select ( temp void)
|
||||||
|
0:7 Condition
|
||||||
|
0:7 Compare Less Than ( temp bool)
|
||||||
|
0:7 direct index ( temp float)
|
||||||
|
0:7 'vpos_t' ( temp 4-component vector of float)
|
||||||
|
0:7 Constant:
|
||||||
|
0:7 0 (const int)
|
||||||
|
0:7 Constant:
|
||||||
|
0:7 400.000000
|
||||||
|
0:7 true case
|
||||||
|
0:8 Branch: Return with expression
|
||||||
|
0:8 AmbientColor: direct index for structure ( uniform 4-component vector of float)
|
||||||
|
0:8 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float AmbientColor, uniform 4-component vector of float AmbientColor2})
|
||||||
|
0:8 Constant:
|
||||||
|
0:8 0 (const uint)
|
||||||
|
0:7 false case
|
||||||
|
0:10 Branch: Return with expression
|
||||||
|
0:10 AmbientColor2: direct index for structure ( uniform 4-component vector of float)
|
||||||
|
0:10 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float AmbientColor, uniform 4-component vector of float AmbientColor2})
|
||||||
|
0:10 Constant:
|
||||||
|
0:10 1 (const uint)
|
||||||
|
0:5 Function Definition: main( ( temp void)
|
||||||
|
0:5 Function Parameters:
|
||||||
|
0:? Sequence
|
||||||
|
0:5 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:? 'vpos' ( temp 4-component vector of float)
|
||||||
|
0:5 Construct vec4 ( temp 4-component vector of float)
|
||||||
|
0:5 vector swizzle ( temp 3-component vector of float)
|
||||||
|
0:? 'vpos' ( in 4-component vector of float FragCoord)
|
||||||
|
0:5 Sequence
|
||||||
|
0:5 Constant:
|
||||||
|
0:5 0 (const int)
|
||||||
|
0:5 Constant:
|
||||||
|
0:5 1 (const int)
|
||||||
|
0:5 Constant:
|
||||||
|
0:5 2 (const int)
|
||||||
|
0:5 divide ( temp float)
|
||||||
|
0:5 Constant:
|
||||||
|
0:5 1.000000
|
||||||
|
0:5 direct index ( temp float)
|
||||||
|
0:? 'vpos' ( in 4-component vector of float FragCoord)
|
||||||
|
0:5 Constant:
|
||||||
|
0:5 3 (const int)
|
||||||
|
0:5 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
|
||||||
|
0:5 Function Call: @main(vf4; ( temp 4-component vector of float)
|
||||||
|
0:? 'vpos' ( temp 4-component vector of float)
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float AmbientColor, uniform 4-component vector of float AmbientColor2})
|
||||||
|
0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
|
||||||
|
0:? 'vpos' ( in 4-component vector of float FragCoord)
|
||||||
|
|
||||||
|
|
||||||
|
Linked fragment stage:
|
||||||
|
|
||||||
|
|
||||||
|
Shader version: 500
|
||||||
|
gl_FragCoord origin is upper left
|
||||||
|
0:? Sequence
|
||||||
|
0:5 Function Definition: @main(vf4; ( temp 4-component vector of float)
|
||||||
|
0:5 Function Parameters:
|
||||||
|
0:5 'vpos' ( in 4-component vector of float)
|
||||||
|
0:? Sequence
|
||||||
|
0:6 Sequence
|
||||||
|
0:6 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:6 'vpos_t' ( temp 4-component vector of float)
|
||||||
|
0:6 Construct vec4 ( temp 4-component vector of float)
|
||||||
|
0:6 vector swizzle ( temp 3-component vector of float)
|
||||||
|
0:6 'vpos' ( in 4-component vector of float)
|
||||||
|
0:6 Sequence
|
||||||
|
0:6 Constant:
|
||||||
|
0:6 0 (const int)
|
||||||
|
0:6 Constant:
|
||||||
|
0:6 1 (const int)
|
||||||
|
0:6 Constant:
|
||||||
|
0:6 2 (const int)
|
||||||
|
0:6 divide ( temp float)
|
||||||
|
0:6 Constant:
|
||||||
|
0:6 1.000000
|
||||||
|
0:6 direct index ( temp float)
|
||||||
|
0:6 'vpos' ( in 4-component vector of float)
|
||||||
|
0:6 Constant:
|
||||||
|
0:6 3 (const int)
|
||||||
|
0:7 Test condition and select ( temp void)
|
||||||
|
0:7 Condition
|
||||||
|
0:7 Compare Less Than ( temp bool)
|
||||||
|
0:7 direct index ( temp float)
|
||||||
|
0:7 'vpos_t' ( temp 4-component vector of float)
|
||||||
|
0:7 Constant:
|
||||||
|
0:7 0 (const int)
|
||||||
|
0:7 Constant:
|
||||||
|
0:7 400.000000
|
||||||
|
0:7 true case
|
||||||
|
0:8 Branch: Return with expression
|
||||||
|
0:8 AmbientColor: direct index for structure ( uniform 4-component vector of float)
|
||||||
|
0:8 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float AmbientColor, uniform 4-component vector of float AmbientColor2})
|
||||||
|
0:8 Constant:
|
||||||
|
0:8 0 (const uint)
|
||||||
|
0:7 false case
|
||||||
|
0:10 Branch: Return with expression
|
||||||
|
0:10 AmbientColor2: direct index for structure ( uniform 4-component vector of float)
|
||||||
|
0:10 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float AmbientColor, uniform 4-component vector of float AmbientColor2})
|
||||||
|
0:10 Constant:
|
||||||
|
0:10 1 (const uint)
|
||||||
|
0:5 Function Definition: main( ( temp void)
|
||||||
|
0:5 Function Parameters:
|
||||||
|
0:? Sequence
|
||||||
|
0:5 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:? 'vpos' ( temp 4-component vector of float)
|
||||||
|
0:5 Construct vec4 ( temp 4-component vector of float)
|
||||||
|
0:5 vector swizzle ( temp 3-component vector of float)
|
||||||
|
0:? 'vpos' ( in 4-component vector of float FragCoord)
|
||||||
|
0:5 Sequence
|
||||||
|
0:5 Constant:
|
||||||
|
0:5 0 (const int)
|
||||||
|
0:5 Constant:
|
||||||
|
0:5 1 (const int)
|
||||||
|
0:5 Constant:
|
||||||
|
0:5 2 (const int)
|
||||||
|
0:5 divide ( temp float)
|
||||||
|
0:5 Constant:
|
||||||
|
0:5 1.000000
|
||||||
|
0:5 direct index ( temp float)
|
||||||
|
0:? 'vpos' ( in 4-component vector of float FragCoord)
|
||||||
|
0:5 Constant:
|
||||||
|
0:5 3 (const int)
|
||||||
|
0:5 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
|
||||||
|
0:5 Function Call: @main(vf4; ( temp 4-component vector of float)
|
||||||
|
0:? 'vpos' ( temp 4-component vector of float)
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float AmbientColor, uniform 4-component vector of float AmbientColor2})
|
||||||
|
0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
|
||||||
|
0:? 'vpos' ( in 4-component vector of float FragCoord)
|
||||||
|
|
||||||
|
// Module Version 10000
|
||||||
|
// Generated by (magic number): 8000a
|
||||||
|
// Id's are bound by 69
|
||||||
|
|
||||||
|
Capability Shader
|
||||||
|
1: ExtInstImport "GLSL.std.450"
|
||||||
|
MemoryModel Logical GLSL450
|
||||||
|
EntryPoint Fragment 4 "main" 53 65
|
||||||
|
ExecutionMode 4 OriginUpperLeft
|
||||||
|
Source HLSL 500
|
||||||
|
Name 4 "main"
|
||||||
|
Name 11 "@main(vf4;"
|
||||||
|
Name 10 "vpos"
|
||||||
|
Name 13 "vpos_t"
|
||||||
|
Name 36 "$Global"
|
||||||
|
MemberName 36($Global) 0 "AmbientColor"
|
||||||
|
MemberName 36($Global) 1 "AmbientColor2"
|
||||||
|
Name 38 ""
|
||||||
|
Name 51 "vpos"
|
||||||
|
Name 53 "vpos"
|
||||||
|
Name 65 "@entryPointOutput"
|
||||||
|
Name 66 "param"
|
||||||
|
MemberDecorate 36($Global) 0 Offset 0
|
||||||
|
MemberDecorate 36($Global) 1 Offset 16
|
||||||
|
Decorate 36($Global) Block
|
||||||
|
Decorate 38 DescriptorSet 0
|
||||||
|
Decorate 38 Binding 0
|
||||||
|
Decorate 53(vpos) BuiltIn FragCoord
|
||||||
|
Decorate 65(@entryPointOutput) Location 0
|
||||||
|
2: TypeVoid
|
||||||
|
3: TypeFunction 2
|
||||||
|
6: TypeFloat 32
|
||||||
|
7: TypeVector 6(float) 4
|
||||||
|
8: TypePointer Function 7(fvec4)
|
||||||
|
9: TypeFunction 7(fvec4) 8(ptr)
|
||||||
|
14: TypeVector 6(float) 3
|
||||||
|
17: 6(float) Constant 1065353216
|
||||||
|
18: TypeInt 32 0
|
||||||
|
19: 18(int) Constant 3
|
||||||
|
20: TypePointer Function 6(float)
|
||||||
|
28: 18(int) Constant 0
|
||||||
|
31: 6(float) Constant 1137180672
|
||||||
|
32: TypeBool
|
||||||
|
36($Global): TypeStruct 7(fvec4) 7(fvec4)
|
||||||
|
37: TypePointer Uniform 36($Global)
|
||||||
|
38: 37(ptr) Variable Uniform
|
||||||
|
39: TypeInt 32 1
|
||||||
|
40: 39(int) Constant 0
|
||||||
|
41: TypePointer Uniform 7(fvec4)
|
||||||
|
46: 39(int) Constant 1
|
||||||
|
52: TypePointer Input 7(fvec4)
|
||||||
|
53(vpos): 52(ptr) Variable Input
|
||||||
|
56: TypePointer Input 6(float)
|
||||||
|
64: TypePointer Output 7(fvec4)
|
||||||
|
65(@entryPointOutput): 64(ptr) Variable Output
|
||||||
|
4(main): 2 Function None 3
|
||||||
|
5: Label
|
||||||
|
51(vpos): 8(ptr) Variable Function
|
||||||
|
66(param): 8(ptr) Variable Function
|
||||||
|
54: 7(fvec4) Load 53(vpos)
|
||||||
|
55: 14(fvec3) VectorShuffle 54 54 0 1 2
|
||||||
|
57: 56(ptr) AccessChain 53(vpos) 19
|
||||||
|
58: 6(float) Load 57
|
||||||
|
59: 6(float) FDiv 17 58
|
||||||
|
60: 6(float) CompositeExtract 55 0
|
||||||
|
61: 6(float) CompositeExtract 55 1
|
||||||
|
62: 6(float) CompositeExtract 55 2
|
||||||
|
63: 7(fvec4) CompositeConstruct 60 61 62 59
|
||||||
|
Store 51(vpos) 63
|
||||||
|
67: 7(fvec4) Load 51(vpos)
|
||||||
|
Store 66(param) 67
|
||||||
|
68: 7(fvec4) FunctionCall 11(@main(vf4;) 66(param)
|
||||||
|
Store 65(@entryPointOutput) 68
|
||||||
|
Return
|
||||||
|
FunctionEnd
|
||||||
|
11(@main(vf4;): 7(fvec4) Function None 9
|
||||||
|
10(vpos): 8(ptr) FunctionParameter
|
||||||
|
12: Label
|
||||||
|
13(vpos_t): 8(ptr) Variable Function
|
||||||
|
15: 7(fvec4) Load 10(vpos)
|
||||||
|
16: 14(fvec3) VectorShuffle 15 15 0 1 2
|
||||||
|
21: 20(ptr) AccessChain 10(vpos) 19
|
||||||
|
22: 6(float) Load 21
|
||||||
|
23: 6(float) FDiv 17 22
|
||||||
|
24: 6(float) CompositeExtract 16 0
|
||||||
|
25: 6(float) CompositeExtract 16 1
|
||||||
|
26: 6(float) CompositeExtract 16 2
|
||||||
|
27: 7(fvec4) CompositeConstruct 24 25 26 23
|
||||||
|
Store 13(vpos_t) 27
|
||||||
|
29: 20(ptr) AccessChain 13(vpos_t) 28
|
||||||
|
30: 6(float) Load 29
|
||||||
|
33: 32(bool) FOrdLessThan 30 31
|
||||||
|
SelectionMerge 35 None
|
||||||
|
BranchConditional 33 34 45
|
||||||
|
34: Label
|
||||||
|
42: 41(ptr) AccessChain 38 40
|
||||||
|
43: 7(fvec4) Load 42
|
||||||
|
ReturnValue 43
|
||||||
|
45: Label
|
||||||
|
47: 41(ptr) AccessChain 38 46
|
||||||
|
48: 7(fvec4) Load 47
|
||||||
|
ReturnValue 48
|
||||||
|
35: Label
|
||||||
|
Unreachable
|
||||||
|
FunctionEnd
|
413
Test/baseResults/iomap.blockOutVariableIn.2.vert.out
Normal file
413
Test/baseResults/iomap.blockOutVariableIn.2.vert.out
Normal file
@ -0,0 +1,413 @@
|
|||||||
|
iomap.blockOutVariableIn.2.vert
|
||||||
|
Shader version: 440
|
||||||
|
0:? Sequence
|
||||||
|
0:9 Function Definition: main( ( global void)
|
||||||
|
0:9 Function Parameters:
|
||||||
|
0:11 Sequence
|
||||||
|
0:11 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:11 a1: direct index for structure ( out 4-component vector of float)
|
||||||
|
0:11 'anon@0' (layout( location=0) out block{ out 4-component vector of float a1, out 2-component vector of float a2})
|
||||||
|
0:11 Constant:
|
||||||
|
0:11 0 (const uint)
|
||||||
|
0:11 Constant:
|
||||||
|
0:11 1.000000
|
||||||
|
0:11 1.000000
|
||||||
|
0:11 1.000000
|
||||||
|
0:11 1.000000
|
||||||
|
0:12 move second child to first child ( temp 2-component vector of float)
|
||||||
|
0:12 a2: direct index for structure ( out 2-component vector of float)
|
||||||
|
0:12 'anon@0' (layout( location=0) out block{ out 4-component vector of float a1, out 2-component vector of float a2})
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 1 (const uint)
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 0.500000
|
||||||
|
0:12 0.500000
|
||||||
|
0:13 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:13 gl_Position: direct index for structure ( gl_Position 4-component vector of float Position)
|
||||||
|
0:13 'anon@1' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:13 Constant:
|
||||||
|
0:13 0 (const uint)
|
||||||
|
0:13 Constant:
|
||||||
|
0:13 1.000000
|
||||||
|
0:13 1.000000
|
||||||
|
0:13 1.000000
|
||||||
|
0:13 1.000000
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'anon@0' (layout( location=0) out block{ out 4-component vector of float a1, out 2-component vector of float a2})
|
||||||
|
0:? 'anon@1' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:? 'gl_VertexID' ( gl_VertexId int VertexId)
|
||||||
|
0:? 'gl_InstanceID' ( gl_InstanceId int InstanceId)
|
||||||
|
|
||||||
|
iomap.blockOutVariableIn.geom
|
||||||
|
Shader version: 440
|
||||||
|
invocations = -1
|
||||||
|
max_vertices = 3
|
||||||
|
input primitive = triangles
|
||||||
|
output primitive = triangle_strip
|
||||||
|
0:? Sequence
|
||||||
|
0:12 Function Definition: main( ( global void)
|
||||||
|
0:12 Function Parameters:
|
||||||
|
0:14 Sequence
|
||||||
|
0:14 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:14 'a1' (layout( location=0 stream=0) out 4-component vector of float)
|
||||||
|
0:14 direct index (layout( location=0) temp 4-component vector of float)
|
||||||
|
0:14 'in_a1' (layout( location=0) in 3-element array of 4-component vector of float)
|
||||||
|
0:14 Constant:
|
||||||
|
0:14 0 (const int)
|
||||||
|
0:15 move second child to first child ( temp 2-component vector of float)
|
||||||
|
0:15 'a2' (layout( location=1 stream=0) out 2-component vector of float)
|
||||||
|
0:15 direct index (layout( location=1) temp 2-component vector of float)
|
||||||
|
0:15 'in_a2' (layout( location=1) in 3-element array of 2-component vector of float)
|
||||||
|
0:15 Constant:
|
||||||
|
0:15 0 (const int)
|
||||||
|
0:16 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:16 gl_Position: direct index for structure (layout( stream=0) gl_Position 4-component vector of float Position)
|
||||||
|
0:16 'anon@0' (layout( stream=0) out block{layout( stream=0) gl_Position 4-component vector of float Position gl_Position, layout( stream=0) gl_PointSize float PointSize gl_PointSize, layout( stream=0) out unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:16 Constant:
|
||||||
|
0:16 0 (const uint)
|
||||||
|
0:16 Constant:
|
||||||
|
0:16 1.000000
|
||||||
|
0:16 1.000000
|
||||||
|
0:16 1.000000
|
||||||
|
0:16 1.000000
|
||||||
|
0:17 EmitVertex ( global void)
|
||||||
|
0:19 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:19 'a1' (layout( location=0 stream=0) out 4-component vector of float)
|
||||||
|
0:19 direct index (layout( location=0) temp 4-component vector of float)
|
||||||
|
0:19 'in_a1' (layout( location=0) in 3-element array of 4-component vector of float)
|
||||||
|
0:19 Constant:
|
||||||
|
0:19 1 (const int)
|
||||||
|
0:20 move second child to first child ( temp 2-component vector of float)
|
||||||
|
0:20 'a2' (layout( location=1 stream=0) out 2-component vector of float)
|
||||||
|
0:20 direct index (layout( location=1) temp 2-component vector of float)
|
||||||
|
0:20 'in_a2' (layout( location=1) in 3-element array of 2-component vector of float)
|
||||||
|
0:20 Constant:
|
||||||
|
0:20 1 (const int)
|
||||||
|
0:21 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:21 gl_Position: direct index for structure (layout( stream=0) gl_Position 4-component vector of float Position)
|
||||||
|
0:21 'anon@0' (layout( stream=0) out block{layout( stream=0) gl_Position 4-component vector of float Position gl_Position, layout( stream=0) gl_PointSize float PointSize gl_PointSize, layout( stream=0) out unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:21 Constant:
|
||||||
|
0:21 0 (const uint)
|
||||||
|
0:21 Constant:
|
||||||
|
0:21 1.000000
|
||||||
|
0:21 1.000000
|
||||||
|
0:21 1.000000
|
||||||
|
0:21 1.000000
|
||||||
|
0:22 EmitVertex ( global void)
|
||||||
|
0:24 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:24 'a1' (layout( location=0 stream=0) out 4-component vector of float)
|
||||||
|
0:24 direct index (layout( location=0) temp 4-component vector of float)
|
||||||
|
0:24 'in_a1' (layout( location=0) in 3-element array of 4-component vector of float)
|
||||||
|
0:24 Constant:
|
||||||
|
0:24 2 (const int)
|
||||||
|
0:25 move second child to first child ( temp 2-component vector of float)
|
||||||
|
0:25 'a2' (layout( location=1 stream=0) out 2-component vector of float)
|
||||||
|
0:25 direct index (layout( location=1) temp 2-component vector of float)
|
||||||
|
0:25 'in_a2' (layout( location=1) in 3-element array of 2-component vector of float)
|
||||||
|
0:25 Constant:
|
||||||
|
0:25 2 (const int)
|
||||||
|
0:26 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:26 gl_Position: direct index for structure (layout( stream=0) gl_Position 4-component vector of float Position)
|
||||||
|
0:26 'anon@0' (layout( stream=0) out block{layout( stream=0) gl_Position 4-component vector of float Position gl_Position, layout( stream=0) gl_PointSize float PointSize gl_PointSize, layout( stream=0) out unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:26 Constant:
|
||||||
|
0:26 0 (const uint)
|
||||||
|
0:26 Constant:
|
||||||
|
0:26 1.000000
|
||||||
|
0:26 1.000000
|
||||||
|
0:26 1.000000
|
||||||
|
0:26 1.000000
|
||||||
|
0:27 EmitVertex ( global void)
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'in_a1' (layout( location=0) in 3-element array of 4-component vector of float)
|
||||||
|
0:? 'in_a2' (layout( location=1) in 3-element array of 2-component vector of float)
|
||||||
|
0:? 'a1' (layout( location=0 stream=0) out 4-component vector of float)
|
||||||
|
0:? 'a2' (layout( location=1 stream=0) out 2-component vector of float)
|
||||||
|
0:? 'anon@0' (layout( stream=0) out block{layout( stream=0) gl_Position 4-component vector of float Position gl_Position, layout( stream=0) gl_PointSize float PointSize gl_PointSize, layout( stream=0) out unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
|
||||||
|
|
||||||
|
Linked vertex stage:
|
||||||
|
|
||||||
|
|
||||||
|
Linked geometry stage:
|
||||||
|
|
||||||
|
|
||||||
|
Shader version: 440
|
||||||
|
0:? Sequence
|
||||||
|
0:9 Function Definition: main( ( global void)
|
||||||
|
0:9 Function Parameters:
|
||||||
|
0:11 Sequence
|
||||||
|
0:11 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:11 a1: direct index for structure ( out 4-component vector of float)
|
||||||
|
0:11 'anon@0' (layout( location=0) out block{ out 4-component vector of float a1, out 2-component vector of float a2})
|
||||||
|
0:11 Constant:
|
||||||
|
0:11 0 (const uint)
|
||||||
|
0:11 Constant:
|
||||||
|
0:11 1.000000
|
||||||
|
0:11 1.000000
|
||||||
|
0:11 1.000000
|
||||||
|
0:11 1.000000
|
||||||
|
0:12 move second child to first child ( temp 2-component vector of float)
|
||||||
|
0:12 a2: direct index for structure ( out 2-component vector of float)
|
||||||
|
0:12 'anon@0' (layout( location=0) out block{ out 4-component vector of float a1, out 2-component vector of float a2})
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 1 (const uint)
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 0.500000
|
||||||
|
0:12 0.500000
|
||||||
|
0:13 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:13 gl_Position: direct index for structure ( gl_Position 4-component vector of float Position)
|
||||||
|
0:13 'anon@1' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:13 Constant:
|
||||||
|
0:13 0 (const uint)
|
||||||
|
0:13 Constant:
|
||||||
|
0:13 1.000000
|
||||||
|
0:13 1.000000
|
||||||
|
0:13 1.000000
|
||||||
|
0:13 1.000000
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'anon@0' (layout( location=0) out block{ out 4-component vector of float a1, out 2-component vector of float a2})
|
||||||
|
0:? 'anon@1' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:? 'gl_VertexID' ( gl_VertexId int VertexId)
|
||||||
|
0:? 'gl_InstanceID' ( gl_InstanceId int InstanceId)
|
||||||
|
Shader version: 440
|
||||||
|
invocations = 1
|
||||||
|
max_vertices = 3
|
||||||
|
input primitive = triangles
|
||||||
|
output primitive = triangle_strip
|
||||||
|
0:? Sequence
|
||||||
|
0:12 Function Definition: main( ( global void)
|
||||||
|
0:12 Function Parameters:
|
||||||
|
0:14 Sequence
|
||||||
|
0:14 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:14 'a1' (layout( location=0 stream=0) out 4-component vector of float)
|
||||||
|
0:14 direct index (layout( location=0) temp 4-component vector of float)
|
||||||
|
0:14 'in_a1' (layout( location=0) in 3-element array of 4-component vector of float)
|
||||||
|
0:14 Constant:
|
||||||
|
0:14 0 (const int)
|
||||||
|
0:15 move second child to first child ( temp 2-component vector of float)
|
||||||
|
0:15 'a2' (layout( location=1 stream=0) out 2-component vector of float)
|
||||||
|
0:15 direct index (layout( location=1) temp 2-component vector of float)
|
||||||
|
0:15 'in_a2' (layout( location=1) in 3-element array of 2-component vector of float)
|
||||||
|
0:15 Constant:
|
||||||
|
0:15 0 (const int)
|
||||||
|
0:16 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:16 gl_Position: direct index for structure (layout( stream=0) gl_Position 4-component vector of float Position)
|
||||||
|
0:16 'anon@0' (layout( stream=0) out block{layout( stream=0) gl_Position 4-component vector of float Position gl_Position, layout( stream=0) gl_PointSize float PointSize gl_PointSize, layout( stream=0) out 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:16 Constant:
|
||||||
|
0:16 0 (const uint)
|
||||||
|
0:16 Constant:
|
||||||
|
0:16 1.000000
|
||||||
|
0:16 1.000000
|
||||||
|
0:16 1.000000
|
||||||
|
0:16 1.000000
|
||||||
|
0:17 EmitVertex ( global void)
|
||||||
|
0:19 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:19 'a1' (layout( location=0 stream=0) out 4-component vector of float)
|
||||||
|
0:19 direct index (layout( location=0) temp 4-component vector of float)
|
||||||
|
0:19 'in_a1' (layout( location=0) in 3-element array of 4-component vector of float)
|
||||||
|
0:19 Constant:
|
||||||
|
0:19 1 (const int)
|
||||||
|
0:20 move second child to first child ( temp 2-component vector of float)
|
||||||
|
0:20 'a2' (layout( location=1 stream=0) out 2-component vector of float)
|
||||||
|
0:20 direct index (layout( location=1) temp 2-component vector of float)
|
||||||
|
0:20 'in_a2' (layout( location=1) in 3-element array of 2-component vector of float)
|
||||||
|
0:20 Constant:
|
||||||
|
0:20 1 (const int)
|
||||||
|
0:21 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:21 gl_Position: direct index for structure (layout( stream=0) gl_Position 4-component vector of float Position)
|
||||||
|
0:21 'anon@0' (layout( stream=0) out block{layout( stream=0) gl_Position 4-component vector of float Position gl_Position, layout( stream=0) gl_PointSize float PointSize gl_PointSize, layout( stream=0) out 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:21 Constant:
|
||||||
|
0:21 0 (const uint)
|
||||||
|
0:21 Constant:
|
||||||
|
0:21 1.000000
|
||||||
|
0:21 1.000000
|
||||||
|
0:21 1.000000
|
||||||
|
0:21 1.000000
|
||||||
|
0:22 EmitVertex ( global void)
|
||||||
|
0:24 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:24 'a1' (layout( location=0 stream=0) out 4-component vector of float)
|
||||||
|
0:24 direct index (layout( location=0) temp 4-component vector of float)
|
||||||
|
0:24 'in_a1' (layout( location=0) in 3-element array of 4-component vector of float)
|
||||||
|
0:24 Constant:
|
||||||
|
0:24 2 (const int)
|
||||||
|
0:25 move second child to first child ( temp 2-component vector of float)
|
||||||
|
0:25 'a2' (layout( location=1 stream=0) out 2-component vector of float)
|
||||||
|
0:25 direct index (layout( location=1) temp 2-component vector of float)
|
||||||
|
0:25 'in_a2' (layout( location=1) in 3-element array of 2-component vector of float)
|
||||||
|
0:25 Constant:
|
||||||
|
0:25 2 (const int)
|
||||||
|
0:26 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:26 gl_Position: direct index for structure (layout( stream=0) gl_Position 4-component vector of float Position)
|
||||||
|
0:26 'anon@0' (layout( stream=0) out block{layout( stream=0) gl_Position 4-component vector of float Position gl_Position, layout( stream=0) gl_PointSize float PointSize gl_PointSize, layout( stream=0) out 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:26 Constant:
|
||||||
|
0:26 0 (const uint)
|
||||||
|
0:26 Constant:
|
||||||
|
0:26 1.000000
|
||||||
|
0:26 1.000000
|
||||||
|
0:26 1.000000
|
||||||
|
0:26 1.000000
|
||||||
|
0:27 EmitVertex ( global void)
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'in_a1' (layout( location=0) in 3-element array of 4-component vector of float)
|
||||||
|
0:? 'in_a2' (layout( location=1) in 3-element array of 2-component vector of float)
|
||||||
|
0:? 'a1' (layout( location=0 stream=0) out 4-component vector of float)
|
||||||
|
0:? 'a2' (layout( location=1 stream=0) out 2-component vector of float)
|
||||||
|
0:? 'anon@0' (layout( stream=0) out block{layout( stream=0) gl_Position 4-component vector of float Position gl_Position, layout( stream=0) gl_PointSize float PointSize gl_PointSize, layout( stream=0) out 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
|
||||||
|
// Module Version 10000
|
||||||
|
// Generated by (magic number): 8000a
|
||||||
|
// Id's are bound by 33
|
||||||
|
|
||||||
|
Capability Shader
|
||||||
|
1: ExtInstImport "GLSL.std.450"
|
||||||
|
MemoryModel Logical GLSL450
|
||||||
|
EntryPoint Vertex 4 "main" 11 28 31 32
|
||||||
|
Source GLSL 440
|
||||||
|
Name 4 "main"
|
||||||
|
Name 9 "Block"
|
||||||
|
MemberName 9(Block) 0 "a1"
|
||||||
|
MemberName 9(Block) 1 "a2"
|
||||||
|
Name 11 ""
|
||||||
|
Name 26 "gl_PerVertex"
|
||||||
|
MemberName 26(gl_PerVertex) 0 "gl_Position"
|
||||||
|
MemberName 26(gl_PerVertex) 1 "gl_PointSize"
|
||||||
|
MemberName 26(gl_PerVertex) 2 "gl_ClipDistance"
|
||||||
|
Name 28 ""
|
||||||
|
Name 31 "gl_VertexID"
|
||||||
|
Name 32 "gl_InstanceID"
|
||||||
|
Decorate 9(Block) Block
|
||||||
|
Decorate 11 Location 0
|
||||||
|
MemberDecorate 26(gl_PerVertex) 0 BuiltIn Position
|
||||||
|
MemberDecorate 26(gl_PerVertex) 1 BuiltIn PointSize
|
||||||
|
MemberDecorate 26(gl_PerVertex) 2 BuiltIn ClipDistance
|
||||||
|
Decorate 26(gl_PerVertex) Block
|
||||||
|
Decorate 31(gl_VertexID) BuiltIn VertexId
|
||||||
|
Decorate 32(gl_InstanceID) BuiltIn InstanceId
|
||||||
|
2: TypeVoid
|
||||||
|
3: TypeFunction 2
|
||||||
|
6: TypeFloat 32
|
||||||
|
7: TypeVector 6(float) 4
|
||||||
|
8: TypeVector 6(float) 2
|
||||||
|
9(Block): TypeStruct 7(fvec4) 8(fvec2)
|
||||||
|
10: TypePointer Output 9(Block)
|
||||||
|
11: 10(ptr) Variable Output
|
||||||
|
12: TypeInt 32 1
|
||||||
|
13: 12(int) Constant 0
|
||||||
|
14: 6(float) Constant 1065353216
|
||||||
|
15: 7(fvec4) ConstantComposite 14 14 14 14
|
||||||
|
16: TypePointer Output 7(fvec4)
|
||||||
|
18: 12(int) Constant 1
|
||||||
|
19: 6(float) Constant 1056964608
|
||||||
|
20: 8(fvec2) ConstantComposite 19 19
|
||||||
|
21: TypePointer Output 8(fvec2)
|
||||||
|
23: TypeInt 32 0
|
||||||
|
24: 23(int) Constant 1
|
||||||
|
25: TypeArray 6(float) 24
|
||||||
|
26(gl_PerVertex): TypeStruct 7(fvec4) 6(float) 25
|
||||||
|
27: TypePointer Output 26(gl_PerVertex)
|
||||||
|
28: 27(ptr) Variable Output
|
||||||
|
30: TypePointer Input 12(int)
|
||||||
|
31(gl_VertexID): 30(ptr) Variable Input
|
||||||
|
32(gl_InstanceID): 30(ptr) Variable Input
|
||||||
|
4(main): 2 Function None 3
|
||||||
|
5: Label
|
||||||
|
17: 16(ptr) AccessChain 11 13
|
||||||
|
Store 17 15
|
||||||
|
22: 21(ptr) AccessChain 11 18
|
||||||
|
Store 22 20
|
||||||
|
29: 16(ptr) AccessChain 28 13
|
||||||
|
Store 29 15
|
||||||
|
Return
|
||||||
|
FunctionEnd
|
||||||
|
// Module Version 10000
|
||||||
|
// Generated by (magic number): 8000a
|
||||||
|
// Id's are bound by 49
|
||||||
|
|
||||||
|
Capability Geometry
|
||||||
|
1: ExtInstImport "GLSL.std.450"
|
||||||
|
MemoryModel Logical GLSL450
|
||||||
|
EntryPoint Geometry 4 "main" 9 14 22 25 33
|
||||||
|
ExecutionMode 4 Triangles
|
||||||
|
ExecutionMode 4 Invocations 1
|
||||||
|
ExecutionMode 4 OutputTriangleStrip
|
||||||
|
ExecutionMode 4 OutputVertices 3
|
||||||
|
Source GLSL 440
|
||||||
|
Name 4 "main"
|
||||||
|
Name 9 "a1"
|
||||||
|
Name 14 "in_a1"
|
||||||
|
Name 22 "a2"
|
||||||
|
Name 25 "in_a2"
|
||||||
|
Name 31 "gl_PerVertex"
|
||||||
|
MemberName 31(gl_PerVertex) 0 "gl_Position"
|
||||||
|
MemberName 31(gl_PerVertex) 1 "gl_PointSize"
|
||||||
|
MemberName 31(gl_PerVertex) 2 "gl_ClipDistance"
|
||||||
|
Name 33 ""
|
||||||
|
Decorate 9(a1) Location 0
|
||||||
|
Decorate 14(in_a1) Location 0
|
||||||
|
Decorate 22(a2) Location 1
|
||||||
|
Decorate 25(in_a2) Location 1
|
||||||
|
MemberDecorate 31(gl_PerVertex) 0 BuiltIn Position
|
||||||
|
MemberDecorate 31(gl_PerVertex) 1 BuiltIn PointSize
|
||||||
|
MemberDecorate 31(gl_PerVertex) 2 BuiltIn ClipDistance
|
||||||
|
Decorate 31(gl_PerVertex) Block
|
||||||
|
2: TypeVoid
|
||||||
|
3: TypeFunction 2
|
||||||
|
6: TypeFloat 32
|
||||||
|
7: TypeVector 6(float) 4
|
||||||
|
8: TypePointer Output 7(fvec4)
|
||||||
|
9(a1): 8(ptr) Variable Output
|
||||||
|
10: TypeInt 32 0
|
||||||
|
11: 10(int) Constant 3
|
||||||
|
12: TypeArray 7(fvec4) 11
|
||||||
|
13: TypePointer Input 12
|
||||||
|
14(in_a1): 13(ptr) Variable Input
|
||||||
|
15: TypeInt 32 1
|
||||||
|
16: 15(int) Constant 0
|
||||||
|
17: TypePointer Input 7(fvec4)
|
||||||
|
20: TypeVector 6(float) 2
|
||||||
|
21: TypePointer Output 20(fvec2)
|
||||||
|
22(a2): 21(ptr) Variable Output
|
||||||
|
23: TypeArray 20(fvec2) 11
|
||||||
|
24: TypePointer Input 23
|
||||||
|
25(in_a2): 24(ptr) Variable Input
|
||||||
|
26: TypePointer Input 20(fvec2)
|
||||||
|
29: 10(int) Constant 1
|
||||||
|
30: TypeArray 6(float) 29
|
||||||
|
31(gl_PerVertex): TypeStruct 7(fvec4) 6(float) 30
|
||||||
|
32: TypePointer Output 31(gl_PerVertex)
|
||||||
|
33: 32(ptr) Variable Output
|
||||||
|
34: 6(float) Constant 1065353216
|
||||||
|
35: 7(fvec4) ConstantComposite 34 34 34 34
|
||||||
|
37: 15(int) Constant 1
|
||||||
|
43: 15(int) Constant 2
|
||||||
|
4(main): 2 Function None 3
|
||||||
|
5: Label
|
||||||
|
18: 17(ptr) AccessChain 14(in_a1) 16
|
||||||
|
19: 7(fvec4) Load 18
|
||||||
|
Store 9(a1) 19
|
||||||
|
27: 26(ptr) AccessChain 25(in_a2) 16
|
||||||
|
28: 20(fvec2) Load 27
|
||||||
|
Store 22(a2) 28
|
||||||
|
36: 8(ptr) AccessChain 33 16
|
||||||
|
Store 36 35
|
||||||
|
EmitVertex
|
||||||
|
38: 17(ptr) AccessChain 14(in_a1) 37
|
||||||
|
39: 7(fvec4) Load 38
|
||||||
|
Store 9(a1) 39
|
||||||
|
40: 26(ptr) AccessChain 25(in_a2) 37
|
||||||
|
41: 20(fvec2) Load 40
|
||||||
|
Store 22(a2) 41
|
||||||
|
42: 8(ptr) AccessChain 33 16
|
||||||
|
Store 42 35
|
||||||
|
EmitVertex
|
||||||
|
44: 17(ptr) AccessChain 14(in_a1) 43
|
||||||
|
45: 7(fvec4) Load 44
|
||||||
|
Store 9(a1) 45
|
||||||
|
46: 26(ptr) AccessChain 25(in_a2) 43
|
||||||
|
47: 20(fvec2) Load 46
|
||||||
|
Store 22(a2) 47
|
||||||
|
48: 8(ptr) AccessChain 33 16
|
||||||
|
Store 48 35
|
||||||
|
EmitVertex
|
||||||
|
Return
|
||||||
|
FunctionEnd
|
234
Test/baseResults/iomap.blockOutVariableIn.vert.out
Normal file
234
Test/baseResults/iomap.blockOutVariableIn.vert.out
Normal file
@ -0,0 +1,234 @@
|
|||||||
|
iomap.blockOutVariableIn.vert
|
||||||
|
Shader version: 440
|
||||||
|
0:? Sequence
|
||||||
|
0:9 Function Definition: main( ( global void)
|
||||||
|
0:9 Function Parameters:
|
||||||
|
0:11 Sequence
|
||||||
|
0:11 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:11 a1: direct index for structure ( out 4-component vector of float)
|
||||||
|
0:11 'anon@0' (layout( location=0) out block{ out 4-component vector of float a1, out 2-component vector of float a2})
|
||||||
|
0:11 Constant:
|
||||||
|
0:11 0 (const uint)
|
||||||
|
0:11 Constant:
|
||||||
|
0:11 1.000000
|
||||||
|
0:11 1.000000
|
||||||
|
0:11 1.000000
|
||||||
|
0:11 1.000000
|
||||||
|
0:12 move second child to first child ( temp 2-component vector of float)
|
||||||
|
0:12 a2: direct index for structure ( out 2-component vector of float)
|
||||||
|
0:12 'anon@0' (layout( location=0) out block{ out 4-component vector of float a1, out 2-component vector of float a2})
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 1 (const uint)
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 0.500000
|
||||||
|
0:12 0.500000
|
||||||
|
0:13 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:13 gl_Position: direct index for structure ( gl_Position 4-component vector of float Position)
|
||||||
|
0:13 'anon@1' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:13 Constant:
|
||||||
|
0:13 0 (const uint)
|
||||||
|
0:13 Constant:
|
||||||
|
0:13 1.000000
|
||||||
|
0:13 1.000000
|
||||||
|
0:13 1.000000
|
||||||
|
0:13 1.000000
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'anon@0' (layout( location=0) out block{ out 4-component vector of float a1, out 2-component vector of float a2})
|
||||||
|
0:? 'anon@1' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:? 'gl_VertexID' ( gl_VertexId int VertexId)
|
||||||
|
0:? 'gl_InstanceID' ( gl_InstanceId int InstanceId)
|
||||||
|
|
||||||
|
iomap.blockOutVariableIn.frag
|
||||||
|
Shader version: 440
|
||||||
|
0:? Sequence
|
||||||
|
0:8 Function Definition: main( ( global void)
|
||||||
|
0:8 Function Parameters:
|
||||||
|
0:10 Sequence
|
||||||
|
0:10 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:10 'color' (layout( location=0) out 4-component vector of float)
|
||||||
|
0:10 Construct vec4 ( temp 4-component vector of float)
|
||||||
|
0:10 vector swizzle ( temp 2-component vector of float)
|
||||||
|
0:10 'a1' (layout( location=0) smooth in 4-component vector of float)
|
||||||
|
0:10 Sequence
|
||||||
|
0:10 Constant:
|
||||||
|
0:10 0 (const int)
|
||||||
|
0:10 Constant:
|
||||||
|
0:10 1 (const int)
|
||||||
|
0:10 'a2' (layout( location=1) smooth in 2-component vector of float)
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'a1' (layout( location=0) smooth in 4-component vector of float)
|
||||||
|
0:? 'a2' (layout( location=1) smooth in 2-component vector of float)
|
||||||
|
0:? 'color' (layout( location=0) out 4-component vector of float)
|
||||||
|
|
||||||
|
|
||||||
|
Linked vertex stage:
|
||||||
|
|
||||||
|
|
||||||
|
Linked fragment stage:
|
||||||
|
|
||||||
|
|
||||||
|
Shader version: 440
|
||||||
|
0:? Sequence
|
||||||
|
0:9 Function Definition: main( ( global void)
|
||||||
|
0:9 Function Parameters:
|
||||||
|
0:11 Sequence
|
||||||
|
0:11 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:11 a1: direct index for structure ( out 4-component vector of float)
|
||||||
|
0:11 'anon@0' (layout( location=0) out block{ out 4-component vector of float a1, out 2-component vector of float a2})
|
||||||
|
0:11 Constant:
|
||||||
|
0:11 0 (const uint)
|
||||||
|
0:11 Constant:
|
||||||
|
0:11 1.000000
|
||||||
|
0:11 1.000000
|
||||||
|
0:11 1.000000
|
||||||
|
0:11 1.000000
|
||||||
|
0:12 move second child to first child ( temp 2-component vector of float)
|
||||||
|
0:12 a2: direct index for structure ( out 2-component vector of float)
|
||||||
|
0:12 'anon@0' (layout( location=0) out block{ out 4-component vector of float a1, out 2-component vector of float a2})
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 1 (const uint)
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 0.500000
|
||||||
|
0:12 0.500000
|
||||||
|
0:13 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:13 gl_Position: direct index for structure ( gl_Position 4-component vector of float Position)
|
||||||
|
0:13 'anon@1' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:13 Constant:
|
||||||
|
0:13 0 (const uint)
|
||||||
|
0:13 Constant:
|
||||||
|
0:13 1.000000
|
||||||
|
0:13 1.000000
|
||||||
|
0:13 1.000000
|
||||||
|
0:13 1.000000
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'anon@0' (layout( location=0) out block{ out 4-component vector of float a1, out 2-component vector of float a2})
|
||||||
|
0:? 'anon@1' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:? 'gl_VertexID' ( gl_VertexId int VertexId)
|
||||||
|
0:? 'gl_InstanceID' ( gl_InstanceId int InstanceId)
|
||||||
|
Shader version: 440
|
||||||
|
0:? Sequence
|
||||||
|
0:8 Function Definition: main( ( global void)
|
||||||
|
0:8 Function Parameters:
|
||||||
|
0:10 Sequence
|
||||||
|
0:10 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:10 'color' (layout( location=0) out 4-component vector of float)
|
||||||
|
0:10 Construct vec4 ( temp 4-component vector of float)
|
||||||
|
0:10 vector swizzle ( temp 2-component vector of float)
|
||||||
|
0:10 'a1' (layout( location=0) smooth in 4-component vector of float)
|
||||||
|
0:10 Sequence
|
||||||
|
0:10 Constant:
|
||||||
|
0:10 0 (const int)
|
||||||
|
0:10 Constant:
|
||||||
|
0:10 1 (const int)
|
||||||
|
0:10 'a2' (layout( location=1) smooth in 2-component vector of float)
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'a1' (layout( location=0) smooth in 4-component vector of float)
|
||||||
|
0:? 'a2' (layout( location=1) smooth in 2-component vector of float)
|
||||||
|
0:? 'color' (layout( location=0) out 4-component vector of float)
|
||||||
|
|
||||||
|
// Module Version 10000
|
||||||
|
// Generated by (magic number): 8000a
|
||||||
|
// Id's are bound by 33
|
||||||
|
|
||||||
|
Capability Shader
|
||||||
|
1: ExtInstImport "GLSL.std.450"
|
||||||
|
MemoryModel Logical GLSL450
|
||||||
|
EntryPoint Vertex 4 "main" 11 28 31 32
|
||||||
|
Source GLSL 440
|
||||||
|
Name 4 "main"
|
||||||
|
Name 9 "Block"
|
||||||
|
MemberName 9(Block) 0 "a1"
|
||||||
|
MemberName 9(Block) 1 "a2"
|
||||||
|
Name 11 ""
|
||||||
|
Name 26 "gl_PerVertex"
|
||||||
|
MemberName 26(gl_PerVertex) 0 "gl_Position"
|
||||||
|
MemberName 26(gl_PerVertex) 1 "gl_PointSize"
|
||||||
|
MemberName 26(gl_PerVertex) 2 "gl_ClipDistance"
|
||||||
|
Name 28 ""
|
||||||
|
Name 31 "gl_VertexID"
|
||||||
|
Name 32 "gl_InstanceID"
|
||||||
|
Decorate 9(Block) Block
|
||||||
|
Decorate 11 Location 0
|
||||||
|
MemberDecorate 26(gl_PerVertex) 0 BuiltIn Position
|
||||||
|
MemberDecorate 26(gl_PerVertex) 1 BuiltIn PointSize
|
||||||
|
MemberDecorate 26(gl_PerVertex) 2 BuiltIn ClipDistance
|
||||||
|
Decorate 26(gl_PerVertex) Block
|
||||||
|
Decorate 31(gl_VertexID) BuiltIn VertexId
|
||||||
|
Decorate 32(gl_InstanceID) BuiltIn InstanceId
|
||||||
|
2: TypeVoid
|
||||||
|
3: TypeFunction 2
|
||||||
|
6: TypeFloat 32
|
||||||
|
7: TypeVector 6(float) 4
|
||||||
|
8: TypeVector 6(float) 2
|
||||||
|
9(Block): TypeStruct 7(fvec4) 8(fvec2)
|
||||||
|
10: TypePointer Output 9(Block)
|
||||||
|
11: 10(ptr) Variable Output
|
||||||
|
12: TypeInt 32 1
|
||||||
|
13: 12(int) Constant 0
|
||||||
|
14: 6(float) Constant 1065353216
|
||||||
|
15: 7(fvec4) ConstantComposite 14 14 14 14
|
||||||
|
16: TypePointer Output 7(fvec4)
|
||||||
|
18: 12(int) Constant 1
|
||||||
|
19: 6(float) Constant 1056964608
|
||||||
|
20: 8(fvec2) ConstantComposite 19 19
|
||||||
|
21: TypePointer Output 8(fvec2)
|
||||||
|
23: TypeInt 32 0
|
||||||
|
24: 23(int) Constant 1
|
||||||
|
25: TypeArray 6(float) 24
|
||||||
|
26(gl_PerVertex): TypeStruct 7(fvec4) 6(float) 25
|
||||||
|
27: TypePointer Output 26(gl_PerVertex)
|
||||||
|
28: 27(ptr) Variable Output
|
||||||
|
30: TypePointer Input 12(int)
|
||||||
|
31(gl_VertexID): 30(ptr) Variable Input
|
||||||
|
32(gl_InstanceID): 30(ptr) Variable Input
|
||||||
|
4(main): 2 Function None 3
|
||||||
|
5: Label
|
||||||
|
17: 16(ptr) AccessChain 11 13
|
||||||
|
Store 17 15
|
||||||
|
22: 21(ptr) AccessChain 11 18
|
||||||
|
Store 22 20
|
||||||
|
29: 16(ptr) AccessChain 28 13
|
||||||
|
Store 29 15
|
||||||
|
Return
|
||||||
|
FunctionEnd
|
||||||
|
// Module Version 10000
|
||||||
|
// Generated by (magic number): 8000a
|
||||||
|
// Id's are bound by 23
|
||||||
|
|
||||||
|
Capability Shader
|
||||||
|
1: ExtInstImport "GLSL.std.450"
|
||||||
|
MemoryModel Logical GLSL450
|
||||||
|
EntryPoint Fragment 4 "main" 9 11 16
|
||||||
|
ExecutionMode 4 OriginLowerLeft
|
||||||
|
Source GLSL 440
|
||||||
|
Name 4 "main"
|
||||||
|
Name 9 "color"
|
||||||
|
Name 11 "a1"
|
||||||
|
Name 16 "a2"
|
||||||
|
Decorate 9(color) Location 0
|
||||||
|
Decorate 11(a1) Location 0
|
||||||
|
Decorate 16(a2) Location 1
|
||||||
|
2: TypeVoid
|
||||||
|
3: TypeFunction 2
|
||||||
|
6: TypeFloat 32
|
||||||
|
7: TypeVector 6(float) 4
|
||||||
|
8: TypePointer Output 7(fvec4)
|
||||||
|
9(color): 8(ptr) Variable Output
|
||||||
|
10: TypePointer Input 7(fvec4)
|
||||||
|
11(a1): 10(ptr) Variable Input
|
||||||
|
12: TypeVector 6(float) 2
|
||||||
|
15: TypePointer Input 12(fvec2)
|
||||||
|
16(a2): 15(ptr) Variable Input
|
||||||
|
4(main): 2 Function None 3
|
||||||
|
5: Label
|
||||||
|
13: 7(fvec4) Load 11(a1)
|
||||||
|
14: 12(fvec2) VectorShuffle 13 13 0 1
|
||||||
|
17: 12(fvec2) Load 16(a2)
|
||||||
|
18: 6(float) CompositeExtract 14 0
|
||||||
|
19: 6(float) CompositeExtract 14 1
|
||||||
|
20: 6(float) CompositeExtract 17 0
|
||||||
|
21: 6(float) CompositeExtract 17 1
|
||||||
|
22: 7(fvec4) CompositeConstruct 18 19 20 21
|
||||||
|
Store 9(color) 22
|
||||||
|
Return
|
||||||
|
FunctionEnd
|
276
Test/baseResults/iomap.variableOutBlockIn.2.vert.out
Normal file
276
Test/baseResults/iomap.variableOutBlockIn.2.vert.out
Normal file
@ -0,0 +1,276 @@
|
|||||||
|
iomap.variableOutBlockIn.2.vert
|
||||||
|
Shader version: 440
|
||||||
|
0:? Sequence
|
||||||
|
0:6 Function Definition: main( ( global void)
|
||||||
|
0:6 Function Parameters:
|
||||||
|
0:8 Sequence
|
||||||
|
0:8 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:8 'a1' (layout( location=0) smooth out 4-component vector of float)
|
||||||
|
0:8 Constant:
|
||||||
|
0:8 1.000000
|
||||||
|
0:8 1.000000
|
||||||
|
0:8 1.000000
|
||||||
|
0:8 1.000000
|
||||||
|
0:9 move second child to first child ( temp 2-component vector of float)
|
||||||
|
0:9 'a2' (layout( location=1) smooth out 2-component vector of float)
|
||||||
|
0:9 Constant:
|
||||||
|
0:9 0.500000
|
||||||
|
0:9 0.500000
|
||||||
|
0:10 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:10 gl_Position: direct index for structure ( gl_Position 4-component vector of float Position)
|
||||||
|
0:10 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:10 Constant:
|
||||||
|
0:10 0 (const uint)
|
||||||
|
0:10 Constant:
|
||||||
|
0:10 1.000000
|
||||||
|
0:10 1.000000
|
||||||
|
0:10 1.000000
|
||||||
|
0:10 1.000000
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'a1' (layout( location=0) smooth out 4-component vector of float)
|
||||||
|
0:? 'a2' (layout( location=1) smooth out 2-component vector of float)
|
||||||
|
0:? 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:? 'gl_VertexID' ( gl_VertexId int VertexId)
|
||||||
|
0:? 'gl_InstanceID' ( gl_InstanceId int InstanceId)
|
||||||
|
|
||||||
|
iomap.variableOutBlockIn.geom
|
||||||
|
Shader version: 440
|
||||||
|
invocations = -1
|
||||||
|
max_vertices = 3
|
||||||
|
input primitive = triangles
|
||||||
|
output primitive = triangle_strip
|
||||||
|
0:? Sequence
|
||||||
|
0:14 Function Definition: main( ( global void)
|
||||||
|
0:14 Function Parameters:
|
||||||
|
0:16 Sequence
|
||||||
|
0:16 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:16 'a1' (layout( location=0 stream=0) out 4-component vector of float)
|
||||||
|
0:16 Constant:
|
||||||
|
0:16 1.000000
|
||||||
|
0:16 1.000000
|
||||||
|
0:16 1.000000
|
||||||
|
0:16 1.000000
|
||||||
|
0:17 move second child to first child ( temp 2-component vector of float)
|
||||||
|
0:17 'a2' (layout( location=1 stream=0) out 2-component vector of float)
|
||||||
|
0:17 Constant:
|
||||||
|
0:17 0.500000
|
||||||
|
0:17 0.500000
|
||||||
|
0:18 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:18 gl_Position: direct index for structure (layout( stream=0) gl_Position 4-component vector of float Position)
|
||||||
|
0:18 'anon@0' (layout( stream=0) out block{layout( stream=0) gl_Position 4-component vector of float Position gl_Position, layout( stream=0) gl_PointSize float PointSize gl_PointSize, layout( stream=0) out unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:18 Constant:
|
||||||
|
0:18 0 (const uint)
|
||||||
|
0:18 Constant:
|
||||||
|
0:18 1.000000
|
||||||
|
0:18 1.000000
|
||||||
|
0:18 1.000000
|
||||||
|
0:18 1.000000
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'gin' (layout( location=0) in 3-element array of block{ in 4-component vector of float a1, in 2-component vector of float a2})
|
||||||
|
0:? 'a1' (layout( location=0 stream=0) out 4-component vector of float)
|
||||||
|
0:? 'a2' (layout( location=1 stream=0) out 2-component vector of float)
|
||||||
|
0:? 'anon@0' (layout( stream=0) out block{layout( stream=0) gl_Position 4-component vector of float Position gl_Position, layout( stream=0) gl_PointSize float PointSize gl_PointSize, layout( stream=0) out unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
|
||||||
|
|
||||||
|
Linked vertex stage:
|
||||||
|
|
||||||
|
|
||||||
|
Linked geometry stage:
|
||||||
|
|
||||||
|
|
||||||
|
Shader version: 440
|
||||||
|
0:? Sequence
|
||||||
|
0:6 Function Definition: main( ( global void)
|
||||||
|
0:6 Function Parameters:
|
||||||
|
0:8 Sequence
|
||||||
|
0:8 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:8 'a1' (layout( location=0) smooth out 4-component vector of float)
|
||||||
|
0:8 Constant:
|
||||||
|
0:8 1.000000
|
||||||
|
0:8 1.000000
|
||||||
|
0:8 1.000000
|
||||||
|
0:8 1.000000
|
||||||
|
0:9 move second child to first child ( temp 2-component vector of float)
|
||||||
|
0:9 'a2' (layout( location=1) smooth out 2-component vector of float)
|
||||||
|
0:9 Constant:
|
||||||
|
0:9 0.500000
|
||||||
|
0:9 0.500000
|
||||||
|
0:10 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:10 gl_Position: direct index for structure ( gl_Position 4-component vector of float Position)
|
||||||
|
0:10 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:10 Constant:
|
||||||
|
0:10 0 (const uint)
|
||||||
|
0:10 Constant:
|
||||||
|
0:10 1.000000
|
||||||
|
0:10 1.000000
|
||||||
|
0:10 1.000000
|
||||||
|
0:10 1.000000
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'a1' (layout( location=0) smooth out 4-component vector of float)
|
||||||
|
0:? 'a2' (layout( location=1) smooth out 2-component vector of float)
|
||||||
|
0:? 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:? 'gl_VertexID' ( gl_VertexId int VertexId)
|
||||||
|
0:? 'gl_InstanceID' ( gl_InstanceId int InstanceId)
|
||||||
|
Shader version: 440
|
||||||
|
invocations = 1
|
||||||
|
max_vertices = 3
|
||||||
|
input primitive = triangles
|
||||||
|
output primitive = triangle_strip
|
||||||
|
0:? Sequence
|
||||||
|
0:14 Function Definition: main( ( global void)
|
||||||
|
0:14 Function Parameters:
|
||||||
|
0:16 Sequence
|
||||||
|
0:16 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:16 'a1' (layout( location=0 stream=0) out 4-component vector of float)
|
||||||
|
0:16 Constant:
|
||||||
|
0:16 1.000000
|
||||||
|
0:16 1.000000
|
||||||
|
0:16 1.000000
|
||||||
|
0:16 1.000000
|
||||||
|
0:17 move second child to first child ( temp 2-component vector of float)
|
||||||
|
0:17 'a2' (layout( location=1 stream=0) out 2-component vector of float)
|
||||||
|
0:17 Constant:
|
||||||
|
0:17 0.500000
|
||||||
|
0:17 0.500000
|
||||||
|
0:18 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:18 gl_Position: direct index for structure (layout( stream=0) gl_Position 4-component vector of float Position)
|
||||||
|
0:18 'anon@0' (layout( stream=0) out block{layout( stream=0) gl_Position 4-component vector of float Position gl_Position, layout( stream=0) gl_PointSize float PointSize gl_PointSize, layout( stream=0) out 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:18 Constant:
|
||||||
|
0:18 0 (const uint)
|
||||||
|
0:18 Constant:
|
||||||
|
0:18 1.000000
|
||||||
|
0:18 1.000000
|
||||||
|
0:18 1.000000
|
||||||
|
0:18 1.000000
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'gin' (layout( location=0) in 3-element array of block{ in 4-component vector of float a1, in 2-component vector of float a2})
|
||||||
|
0:? 'a1' (layout( location=0 stream=0) out 4-component vector of float)
|
||||||
|
0:? 'a2' (layout( location=1 stream=0) out 2-component vector of float)
|
||||||
|
0:? 'anon@0' (layout( stream=0) out block{layout( stream=0) gl_Position 4-component vector of float Position gl_Position, layout( stream=0) gl_PointSize float PointSize gl_PointSize, layout( stream=0) out 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
|
||||||
|
// Module Version 10000
|
||||||
|
// Generated by (magic number): 8000a
|
||||||
|
// Id's are bound by 29
|
||||||
|
|
||||||
|
Capability Shader
|
||||||
|
1: ExtInstImport "GLSL.std.450"
|
||||||
|
MemoryModel Logical GLSL450
|
||||||
|
EntryPoint Vertex 4 "main" 9 14 22 27 28
|
||||||
|
Source GLSL 440
|
||||||
|
Name 4 "main"
|
||||||
|
Name 9 "a1"
|
||||||
|
Name 14 "a2"
|
||||||
|
Name 20 "gl_PerVertex"
|
||||||
|
MemberName 20(gl_PerVertex) 0 "gl_Position"
|
||||||
|
MemberName 20(gl_PerVertex) 1 "gl_PointSize"
|
||||||
|
MemberName 20(gl_PerVertex) 2 "gl_ClipDistance"
|
||||||
|
Name 22 ""
|
||||||
|
Name 27 "gl_VertexID"
|
||||||
|
Name 28 "gl_InstanceID"
|
||||||
|
Decorate 9(a1) Location 0
|
||||||
|
Decorate 14(a2) Location 1
|
||||||
|
MemberDecorate 20(gl_PerVertex) 0 BuiltIn Position
|
||||||
|
MemberDecorate 20(gl_PerVertex) 1 BuiltIn PointSize
|
||||||
|
MemberDecorate 20(gl_PerVertex) 2 BuiltIn ClipDistance
|
||||||
|
Decorate 20(gl_PerVertex) Block
|
||||||
|
Decorate 27(gl_VertexID) BuiltIn VertexId
|
||||||
|
Decorate 28(gl_InstanceID) BuiltIn InstanceId
|
||||||
|
2: TypeVoid
|
||||||
|
3: TypeFunction 2
|
||||||
|
6: TypeFloat 32
|
||||||
|
7: TypeVector 6(float) 4
|
||||||
|
8: TypePointer Output 7(fvec4)
|
||||||
|
9(a1): 8(ptr) Variable Output
|
||||||
|
10: 6(float) Constant 1065353216
|
||||||
|
11: 7(fvec4) ConstantComposite 10 10 10 10
|
||||||
|
12: TypeVector 6(float) 2
|
||||||
|
13: TypePointer Output 12(fvec2)
|
||||||
|
14(a2): 13(ptr) Variable Output
|
||||||
|
15: 6(float) Constant 1056964608
|
||||||
|
16: 12(fvec2) ConstantComposite 15 15
|
||||||
|
17: TypeInt 32 0
|
||||||
|
18: 17(int) Constant 1
|
||||||
|
19: TypeArray 6(float) 18
|
||||||
|
20(gl_PerVertex): TypeStruct 7(fvec4) 6(float) 19
|
||||||
|
21: TypePointer Output 20(gl_PerVertex)
|
||||||
|
22: 21(ptr) Variable Output
|
||||||
|
23: TypeInt 32 1
|
||||||
|
24: 23(int) Constant 0
|
||||||
|
26: TypePointer Input 23(int)
|
||||||
|
27(gl_VertexID): 26(ptr) Variable Input
|
||||||
|
28(gl_InstanceID): 26(ptr) Variable Input
|
||||||
|
4(main): 2 Function None 3
|
||||||
|
5: Label
|
||||||
|
Store 9(a1) 11
|
||||||
|
Store 14(a2) 16
|
||||||
|
25: 8(ptr) AccessChain 22 24
|
||||||
|
Store 25 11
|
||||||
|
Return
|
||||||
|
FunctionEnd
|
||||||
|
// Module Version 10000
|
||||||
|
// Generated by (magic number): 8000a
|
||||||
|
// Id's are bound by 31
|
||||||
|
|
||||||
|
Capability Geometry
|
||||||
|
1: ExtInstImport "GLSL.std.450"
|
||||||
|
MemoryModel Logical GLSL450
|
||||||
|
EntryPoint Geometry 4 "main" 9 14 22 30
|
||||||
|
ExecutionMode 4 Triangles
|
||||||
|
ExecutionMode 4 Invocations 1
|
||||||
|
ExecutionMode 4 OutputTriangleStrip
|
||||||
|
ExecutionMode 4 OutputVertices 3
|
||||||
|
Source GLSL 440
|
||||||
|
Name 4 "main"
|
||||||
|
Name 9 "a1"
|
||||||
|
Name 14 "a2"
|
||||||
|
Name 20 "gl_PerVertex"
|
||||||
|
MemberName 20(gl_PerVertex) 0 "gl_Position"
|
||||||
|
MemberName 20(gl_PerVertex) 1 "gl_PointSize"
|
||||||
|
MemberName 20(gl_PerVertex) 2 "gl_ClipDistance"
|
||||||
|
Name 22 ""
|
||||||
|
Name 26 "Inputs"
|
||||||
|
MemberName 26(Inputs) 0 "a1"
|
||||||
|
MemberName 26(Inputs) 1 "a2"
|
||||||
|
Name 30 "gin"
|
||||||
|
Decorate 9(a1) Location 0
|
||||||
|
Decorate 14(a2) Location 1
|
||||||
|
MemberDecorate 20(gl_PerVertex) 0 BuiltIn Position
|
||||||
|
MemberDecorate 20(gl_PerVertex) 1 BuiltIn PointSize
|
||||||
|
MemberDecorate 20(gl_PerVertex) 2 BuiltIn ClipDistance
|
||||||
|
Decorate 20(gl_PerVertex) Block
|
||||||
|
Decorate 26(Inputs) Block
|
||||||
|
Decorate 30(gin) Location 0
|
||||||
|
2: TypeVoid
|
||||||
|
3: TypeFunction 2
|
||||||
|
6: TypeFloat 32
|
||||||
|
7: TypeVector 6(float) 4
|
||||||
|
8: TypePointer Output 7(fvec4)
|
||||||
|
9(a1): 8(ptr) Variable Output
|
||||||
|
10: 6(float) Constant 1065353216
|
||||||
|
11: 7(fvec4) ConstantComposite 10 10 10 10
|
||||||
|
12: TypeVector 6(float) 2
|
||||||
|
13: TypePointer Output 12(fvec2)
|
||||||
|
14(a2): 13(ptr) Variable Output
|
||||||
|
15: 6(float) Constant 1056964608
|
||||||
|
16: 12(fvec2) ConstantComposite 15 15
|
||||||
|
17: TypeInt 32 0
|
||||||
|
18: 17(int) Constant 1
|
||||||
|
19: TypeArray 6(float) 18
|
||||||
|
20(gl_PerVertex): TypeStruct 7(fvec4) 6(float) 19
|
||||||
|
21: TypePointer Output 20(gl_PerVertex)
|
||||||
|
22: 21(ptr) Variable Output
|
||||||
|
23: TypeInt 32 1
|
||||||
|
24: 23(int) Constant 0
|
||||||
|
26(Inputs): TypeStruct 7(fvec4) 12(fvec2)
|
||||||
|
27: 17(int) Constant 3
|
||||||
|
28: TypeArray 26(Inputs) 27
|
||||||
|
29: TypePointer Input 28
|
||||||
|
30(gin): 29(ptr) Variable Input
|
||||||
|
4(main): 2 Function None 3
|
||||||
|
5: Label
|
||||||
|
Store 9(a1) 11
|
||||||
|
Store 14(a2) 16
|
||||||
|
25: 8(ptr) AccessChain 22 24
|
||||||
|
Store 25 11
|
||||||
|
Return
|
||||||
|
FunctionEnd
|
236
Test/baseResults/iomap.variableOutBlockIn.vert.out
Normal file
236
Test/baseResults/iomap.variableOutBlockIn.vert.out
Normal file
@ -0,0 +1,236 @@
|
|||||||
|
iomap.variableOutBlockIn.vert
|
||||||
|
Shader version: 440
|
||||||
|
0:? Sequence
|
||||||
|
0:6 Function Definition: main( ( global void)
|
||||||
|
0:6 Function Parameters:
|
||||||
|
0:8 Sequence
|
||||||
|
0:8 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:8 'a1' (layout( location=0) smooth out 4-component vector of float)
|
||||||
|
0:8 Constant:
|
||||||
|
0:8 1.000000
|
||||||
|
0:8 1.000000
|
||||||
|
0:8 1.000000
|
||||||
|
0:8 1.000000
|
||||||
|
0:9 move second child to first child ( temp 2-component vector of float)
|
||||||
|
0:9 'a2' (layout( location=1) smooth out 2-component vector of float)
|
||||||
|
0:9 Constant:
|
||||||
|
0:9 0.500000
|
||||||
|
0:9 0.500000
|
||||||
|
0:10 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:10 gl_Position: direct index for structure ( gl_Position 4-component vector of float Position)
|
||||||
|
0:10 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:10 Constant:
|
||||||
|
0:10 0 (const uint)
|
||||||
|
0:10 Constant:
|
||||||
|
0:10 1.000000
|
||||||
|
0:10 1.000000
|
||||||
|
0:10 1.000000
|
||||||
|
0:10 1.000000
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'a1' (layout( location=0) smooth out 4-component vector of float)
|
||||||
|
0:? 'a2' (layout( location=1) smooth out 2-component vector of float)
|
||||||
|
0:? 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:? 'gl_VertexID' ( gl_VertexId int VertexId)
|
||||||
|
0:? 'gl_InstanceID' ( gl_InstanceId int InstanceId)
|
||||||
|
|
||||||
|
iomap.variableOutBlockIn.frag
|
||||||
|
Shader version: 440
|
||||||
|
0:? Sequence
|
||||||
|
0:10 Function Definition: main( ( global void)
|
||||||
|
0:10 Function Parameters:
|
||||||
|
0:12 Sequence
|
||||||
|
0:12 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:12 'color' (layout( location=0) out 4-component vector of float)
|
||||||
|
0:12 Construct vec4 ( temp 4-component vector of float)
|
||||||
|
0:12 vector swizzle ( temp 2-component vector of float)
|
||||||
|
0:12 a1: direct index for structure ( in 4-component vector of float)
|
||||||
|
0:12 'anon@0' (layout( location=0) in block{ in 4-component vector of float a1, in 2-component vector of float a2})
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 0 (const uint)
|
||||||
|
0:12 Sequence
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 0 (const int)
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 1 (const int)
|
||||||
|
0:12 a2: direct index for structure ( in 2-component vector of float)
|
||||||
|
0:12 'anon@0' (layout( location=0) in block{ in 4-component vector of float a1, in 2-component vector of float a2})
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 1 (const uint)
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'anon@0' (layout( location=0) in block{ in 4-component vector of float a1, in 2-component vector of float a2})
|
||||||
|
0:? 'color' (layout( location=0) out 4-component vector of float)
|
||||||
|
|
||||||
|
|
||||||
|
Linked vertex stage:
|
||||||
|
|
||||||
|
|
||||||
|
Linked fragment stage:
|
||||||
|
|
||||||
|
|
||||||
|
Shader version: 440
|
||||||
|
0:? Sequence
|
||||||
|
0:6 Function Definition: main( ( global void)
|
||||||
|
0:6 Function Parameters:
|
||||||
|
0:8 Sequence
|
||||||
|
0:8 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:8 'a1' (layout( location=0) smooth out 4-component vector of float)
|
||||||
|
0:8 Constant:
|
||||||
|
0:8 1.000000
|
||||||
|
0:8 1.000000
|
||||||
|
0:8 1.000000
|
||||||
|
0:8 1.000000
|
||||||
|
0:9 move second child to first child ( temp 2-component vector of float)
|
||||||
|
0:9 'a2' (layout( location=1) smooth out 2-component vector of float)
|
||||||
|
0:9 Constant:
|
||||||
|
0:9 0.500000
|
||||||
|
0:9 0.500000
|
||||||
|
0:10 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:10 gl_Position: direct index for structure ( gl_Position 4-component vector of float Position)
|
||||||
|
0:10 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:10 Constant:
|
||||||
|
0:10 0 (const uint)
|
||||||
|
0:10 Constant:
|
||||||
|
0:10 1.000000
|
||||||
|
0:10 1.000000
|
||||||
|
0:10 1.000000
|
||||||
|
0:10 1.000000
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'a1' (layout( location=0) smooth out 4-component vector of float)
|
||||||
|
0:? 'a2' (layout( location=1) smooth out 2-component vector of float)
|
||||||
|
0:? 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:? 'gl_VertexID' ( gl_VertexId int VertexId)
|
||||||
|
0:? 'gl_InstanceID' ( gl_InstanceId int InstanceId)
|
||||||
|
Shader version: 440
|
||||||
|
0:? Sequence
|
||||||
|
0:10 Function Definition: main( ( global void)
|
||||||
|
0:10 Function Parameters:
|
||||||
|
0:12 Sequence
|
||||||
|
0:12 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:12 'color' (layout( location=0) out 4-component vector of float)
|
||||||
|
0:12 Construct vec4 ( temp 4-component vector of float)
|
||||||
|
0:12 vector swizzle ( temp 2-component vector of float)
|
||||||
|
0:12 a1: direct index for structure ( in 4-component vector of float)
|
||||||
|
0:12 'anon@0' (layout( location=0) in block{ in 4-component vector of float a1, in 2-component vector of float a2})
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 0 (const uint)
|
||||||
|
0:12 Sequence
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 0 (const int)
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 1 (const int)
|
||||||
|
0:12 a2: direct index for structure ( in 2-component vector of float)
|
||||||
|
0:12 'anon@0' (layout( location=0) in block{ in 4-component vector of float a1, in 2-component vector of float a2})
|
||||||
|
0:12 Constant:
|
||||||
|
0:12 1 (const uint)
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'anon@0' (layout( location=0) in block{ in 4-component vector of float a1, in 2-component vector of float a2})
|
||||||
|
0:? 'color' (layout( location=0) out 4-component vector of float)
|
||||||
|
|
||||||
|
// Module Version 10000
|
||||||
|
// Generated by (magic number): 8000a
|
||||||
|
// Id's are bound by 29
|
||||||
|
|
||||||
|
Capability Shader
|
||||||
|
1: ExtInstImport "GLSL.std.450"
|
||||||
|
MemoryModel Logical GLSL450
|
||||||
|
EntryPoint Vertex 4 "main" 9 14 22 27 28
|
||||||
|
Source GLSL 440
|
||||||
|
Name 4 "main"
|
||||||
|
Name 9 "a1"
|
||||||
|
Name 14 "a2"
|
||||||
|
Name 20 "gl_PerVertex"
|
||||||
|
MemberName 20(gl_PerVertex) 0 "gl_Position"
|
||||||
|
MemberName 20(gl_PerVertex) 1 "gl_PointSize"
|
||||||
|
MemberName 20(gl_PerVertex) 2 "gl_ClipDistance"
|
||||||
|
Name 22 ""
|
||||||
|
Name 27 "gl_VertexID"
|
||||||
|
Name 28 "gl_InstanceID"
|
||||||
|
Decorate 9(a1) Location 0
|
||||||
|
Decorate 14(a2) Location 1
|
||||||
|
MemberDecorate 20(gl_PerVertex) 0 BuiltIn Position
|
||||||
|
MemberDecorate 20(gl_PerVertex) 1 BuiltIn PointSize
|
||||||
|
MemberDecorate 20(gl_PerVertex) 2 BuiltIn ClipDistance
|
||||||
|
Decorate 20(gl_PerVertex) Block
|
||||||
|
Decorate 27(gl_VertexID) BuiltIn VertexId
|
||||||
|
Decorate 28(gl_InstanceID) BuiltIn InstanceId
|
||||||
|
2: TypeVoid
|
||||||
|
3: TypeFunction 2
|
||||||
|
6: TypeFloat 32
|
||||||
|
7: TypeVector 6(float) 4
|
||||||
|
8: TypePointer Output 7(fvec4)
|
||||||
|
9(a1): 8(ptr) Variable Output
|
||||||
|
10: 6(float) Constant 1065353216
|
||||||
|
11: 7(fvec4) ConstantComposite 10 10 10 10
|
||||||
|
12: TypeVector 6(float) 2
|
||||||
|
13: TypePointer Output 12(fvec2)
|
||||||
|
14(a2): 13(ptr) Variable Output
|
||||||
|
15: 6(float) Constant 1056964608
|
||||||
|
16: 12(fvec2) ConstantComposite 15 15
|
||||||
|
17: TypeInt 32 0
|
||||||
|
18: 17(int) Constant 1
|
||||||
|
19: TypeArray 6(float) 18
|
||||||
|
20(gl_PerVertex): TypeStruct 7(fvec4) 6(float) 19
|
||||||
|
21: TypePointer Output 20(gl_PerVertex)
|
||||||
|
22: 21(ptr) Variable Output
|
||||||
|
23: TypeInt 32 1
|
||||||
|
24: 23(int) Constant 0
|
||||||
|
26: TypePointer Input 23(int)
|
||||||
|
27(gl_VertexID): 26(ptr) Variable Input
|
||||||
|
28(gl_InstanceID): 26(ptr) Variable Input
|
||||||
|
4(main): 2 Function None 3
|
||||||
|
5: Label
|
||||||
|
Store 9(a1) 11
|
||||||
|
Store 14(a2) 16
|
||||||
|
25: 8(ptr) AccessChain 22 24
|
||||||
|
Store 25 11
|
||||||
|
Return
|
||||||
|
FunctionEnd
|
||||||
|
// Module Version 10000
|
||||||
|
// Generated by (magic number): 8000a
|
||||||
|
// Id's are bound by 29
|
||||||
|
|
||||||
|
Capability Shader
|
||||||
|
1: ExtInstImport "GLSL.std.450"
|
||||||
|
MemoryModel Logical GLSL450
|
||||||
|
EntryPoint Fragment 4 "main" 9 13
|
||||||
|
ExecutionMode 4 OriginLowerLeft
|
||||||
|
Source GLSL 440
|
||||||
|
Name 4 "main"
|
||||||
|
Name 9 "color"
|
||||||
|
Name 11 "Inputs"
|
||||||
|
MemberName 11(Inputs) 0 "a1"
|
||||||
|
MemberName 11(Inputs) 1 "a2"
|
||||||
|
Name 13 ""
|
||||||
|
Decorate 9(color) Location 0
|
||||||
|
Decorate 11(Inputs) Block
|
||||||
|
Decorate 13 Location 0
|
||||||
|
2: TypeVoid
|
||||||
|
3: TypeFunction 2
|
||||||
|
6: TypeFloat 32
|
||||||
|
7: TypeVector 6(float) 4
|
||||||
|
8: TypePointer Output 7(fvec4)
|
||||||
|
9(color): 8(ptr) Variable Output
|
||||||
|
10: TypeVector 6(float) 2
|
||||||
|
11(Inputs): TypeStruct 7(fvec4) 10(fvec2)
|
||||||
|
12: TypePointer Input 11(Inputs)
|
||||||
|
13: 12(ptr) Variable Input
|
||||||
|
14: TypeInt 32 1
|
||||||
|
15: 14(int) Constant 0
|
||||||
|
16: TypePointer Input 7(fvec4)
|
||||||
|
20: 14(int) Constant 1
|
||||||
|
21: TypePointer Input 10(fvec2)
|
||||||
|
4(main): 2 Function None 3
|
||||||
|
5: Label
|
||||||
|
17: 16(ptr) AccessChain 13 15
|
||||||
|
18: 7(fvec4) Load 17
|
||||||
|
19: 10(fvec2) VectorShuffle 18 18 0 1
|
||||||
|
22: 21(ptr) AccessChain 13 20
|
||||||
|
23: 10(fvec2) Load 22
|
||||||
|
24: 6(float) CompositeExtract 19 0
|
||||||
|
25: 6(float) CompositeExtract 19 1
|
||||||
|
26: 6(float) CompositeExtract 23 0
|
||||||
|
27: 6(float) CompositeExtract 23 1
|
||||||
|
28: 7(fvec4) CompositeConstruct 24 25 26 27
|
||||||
|
Store 9(color) 28
|
||||||
|
Return
|
||||||
|
FunctionEnd
|
154
Test/baseResults/link.redeclareBuiltin.vert.out
Normal file
154
Test/baseResults/link.redeclareBuiltin.vert.out
Normal file
@ -0,0 +1,154 @@
|
|||||||
|
link.redeclareBuiltin.vert
|
||||||
|
Shader version: 410
|
||||||
|
0:? Sequence
|
||||||
|
0:8 Function Definition: main( ( global void)
|
||||||
|
0:8 Function Parameters:
|
||||||
|
0:10 Sequence
|
||||||
|
0:10 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:10 gl_Position: direct index for structure ( gl_Position 4-component vector of float Position)
|
||||||
|
0:10 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position})
|
||||||
|
0:10 Constant:
|
||||||
|
0:10 0 (const uint)
|
||||||
|
0:10 Constant:
|
||||||
|
0:10 1.000000
|
||||||
|
0:10 1.000000
|
||||||
|
0:10 1.000000
|
||||||
|
0:10 1.000000
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position})
|
||||||
|
0:? 'gl_VertexID' ( gl_VertexId int VertexId)
|
||||||
|
0:? 'gl_InstanceID' ( gl_InstanceId int InstanceId)
|
||||||
|
|
||||||
|
link.redeclareBuiltin.geom
|
||||||
|
Shader version: 410
|
||||||
|
invocations = -1
|
||||||
|
max_vertices = 3
|
||||||
|
input primitive = triangles
|
||||||
|
output primitive = triangle_strip
|
||||||
|
0:? Sequence
|
||||||
|
0:11 Function Definition: main( ( global void)
|
||||||
|
0:11 Function Parameters:
|
||||||
|
0:13 Sequence
|
||||||
|
0:13 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:13 gl_Position: direct index for structure (layout( stream=0) gl_Position 4-component vector of float Position)
|
||||||
|
0:13 'anon@0' (layout( stream=0) out block{layout( stream=0) gl_Position 4-component vector of float Position gl_Position, layout( stream=0) gl_PointSize float PointSize gl_PointSize, layout( stream=0) out unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:13 Constant:
|
||||||
|
0:13 0 (const uint)
|
||||||
|
0:13 gl_Position: direct index for structure ( in 4-component vector of float Position)
|
||||||
|
0:13 direct index ( temp block{ in 4-component vector of float Position gl_Position})
|
||||||
|
0:13 'gl_in' ( in 3-element array of block{ in 4-component vector of float Position gl_Position})
|
||||||
|
0:13 Constant:
|
||||||
|
0:13 0 (const int)
|
||||||
|
0:13 Constant:
|
||||||
|
0:13 0 (const int)
|
||||||
|
0:14 EmitVertex ( global void)
|
||||||
|
0:16 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:16 gl_Position: direct index for structure (layout( stream=0) gl_Position 4-component vector of float Position)
|
||||||
|
0:16 'anon@0' (layout( stream=0) out block{layout( stream=0) gl_Position 4-component vector of float Position gl_Position, layout( stream=0) gl_PointSize float PointSize gl_PointSize, layout( stream=0) out unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:16 Constant:
|
||||||
|
0:16 0 (const uint)
|
||||||
|
0:16 gl_Position: direct index for structure ( in 4-component vector of float Position)
|
||||||
|
0:16 direct index ( temp block{ in 4-component vector of float Position gl_Position})
|
||||||
|
0:16 'gl_in' ( in 3-element array of block{ in 4-component vector of float Position gl_Position})
|
||||||
|
0:16 Constant:
|
||||||
|
0:16 1 (const int)
|
||||||
|
0:16 Constant:
|
||||||
|
0:16 0 (const int)
|
||||||
|
0:17 EmitVertex ( global void)
|
||||||
|
0:19 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:19 gl_Position: direct index for structure (layout( stream=0) gl_Position 4-component vector of float Position)
|
||||||
|
0:19 'anon@0' (layout( stream=0) out block{layout( stream=0) gl_Position 4-component vector of float Position gl_Position, layout( stream=0) gl_PointSize float PointSize gl_PointSize, layout( stream=0) out unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:19 Constant:
|
||||||
|
0:19 0 (const uint)
|
||||||
|
0:19 gl_Position: direct index for structure ( in 4-component vector of float Position)
|
||||||
|
0:19 direct index ( temp block{ in 4-component vector of float Position gl_Position})
|
||||||
|
0:19 'gl_in' ( in 3-element array of block{ in 4-component vector of float Position gl_Position})
|
||||||
|
0:19 Constant:
|
||||||
|
0:19 2 (const int)
|
||||||
|
0:19 Constant:
|
||||||
|
0:19 0 (const int)
|
||||||
|
0:20 EmitVertex ( global void)
|
||||||
|
0:22 EndPrimitive ( global void)
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'gl_in' ( in 3-element array of block{ in 4-component vector of float Position gl_Position})
|
||||||
|
0:? 'anon@0' (layout( stream=0) out block{layout( stream=0) gl_Position 4-component vector of float Position gl_Position, layout( stream=0) gl_PointSize float PointSize gl_PointSize, layout( stream=0) out unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
|
||||||
|
|
||||||
|
Linked vertex stage:
|
||||||
|
|
||||||
|
|
||||||
|
Linked geometry stage:
|
||||||
|
|
||||||
|
|
||||||
|
Shader version: 410
|
||||||
|
0:? Sequence
|
||||||
|
0:8 Function Definition: main( ( global void)
|
||||||
|
0:8 Function Parameters:
|
||||||
|
0:10 Sequence
|
||||||
|
0:10 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:10 gl_Position: direct index for structure ( gl_Position 4-component vector of float Position)
|
||||||
|
0:10 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position})
|
||||||
|
0:10 Constant:
|
||||||
|
0:10 0 (const uint)
|
||||||
|
0:10 Constant:
|
||||||
|
0:10 1.000000
|
||||||
|
0:10 1.000000
|
||||||
|
0:10 1.000000
|
||||||
|
0:10 1.000000
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position})
|
||||||
|
0:? 'gl_VertexID' ( gl_VertexId int VertexId)
|
||||||
|
0:? 'gl_InstanceID' ( gl_InstanceId int InstanceId)
|
||||||
|
Shader version: 410
|
||||||
|
invocations = 1
|
||||||
|
max_vertices = 3
|
||||||
|
input primitive = triangles
|
||||||
|
output primitive = triangle_strip
|
||||||
|
0:? Sequence
|
||||||
|
0:11 Function Definition: main( ( global void)
|
||||||
|
0:11 Function Parameters:
|
||||||
|
0:13 Sequence
|
||||||
|
0:13 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:13 gl_Position: direct index for structure (layout( stream=0) gl_Position 4-component vector of float Position)
|
||||||
|
0:13 'anon@0' (layout( stream=0) out block{layout( stream=0) gl_Position 4-component vector of float Position gl_Position, layout( stream=0) gl_PointSize float PointSize gl_PointSize, layout( stream=0) out 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:13 Constant:
|
||||||
|
0:13 0 (const uint)
|
||||||
|
0:13 gl_Position: direct index for structure ( in 4-component vector of float Position)
|
||||||
|
0:13 direct index ( temp block{ in 4-component vector of float Position gl_Position})
|
||||||
|
0:13 'gl_in' ( in 3-element array of block{ in 4-component vector of float Position gl_Position})
|
||||||
|
0:13 Constant:
|
||||||
|
0:13 0 (const int)
|
||||||
|
0:13 Constant:
|
||||||
|
0:13 0 (const int)
|
||||||
|
0:14 EmitVertex ( global void)
|
||||||
|
0:16 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:16 gl_Position: direct index for structure (layout( stream=0) gl_Position 4-component vector of float Position)
|
||||||
|
0:16 'anon@0' (layout( stream=0) out block{layout( stream=0) gl_Position 4-component vector of float Position gl_Position, layout( stream=0) gl_PointSize float PointSize gl_PointSize, layout( stream=0) out 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:16 Constant:
|
||||||
|
0:16 0 (const uint)
|
||||||
|
0:16 gl_Position: direct index for structure ( in 4-component vector of float Position)
|
||||||
|
0:16 direct index ( temp block{ in 4-component vector of float Position gl_Position})
|
||||||
|
0:16 'gl_in' ( in 3-element array of block{ in 4-component vector of float Position gl_Position})
|
||||||
|
0:16 Constant:
|
||||||
|
0:16 1 (const int)
|
||||||
|
0:16 Constant:
|
||||||
|
0:16 0 (const int)
|
||||||
|
0:17 EmitVertex ( global void)
|
||||||
|
0:19 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:19 gl_Position: direct index for structure (layout( stream=0) gl_Position 4-component vector of float Position)
|
||||||
|
0:19 'anon@0' (layout( stream=0) out block{layout( stream=0) gl_Position 4-component vector of float Position gl_Position, layout( stream=0) gl_PointSize float PointSize gl_PointSize, layout( stream=0) out 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:19 Constant:
|
||||||
|
0:19 0 (const uint)
|
||||||
|
0:19 gl_Position: direct index for structure ( in 4-component vector of float Position)
|
||||||
|
0:19 direct index ( temp block{ in 4-component vector of float Position gl_Position})
|
||||||
|
0:19 'gl_in' ( in 3-element array of block{ in 4-component vector of float Position gl_Position})
|
||||||
|
0:19 Constant:
|
||||||
|
0:19 2 (const int)
|
||||||
|
0:19 Constant:
|
||||||
|
0:19 0 (const int)
|
||||||
|
0:20 EmitVertex ( global void)
|
||||||
|
0:22 EndPrimitive ( global void)
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'gl_in' ( in 3-element array of block{ in 4-component vector of float Position gl_Position})
|
||||||
|
0:? 'anon@0' (layout( stream=0) out block{layout( stream=0) gl_Position 4-component vector of float Position gl_Position, layout( stream=0) gl_PointSize float PointSize gl_PointSize, layout( stream=0) out 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
|
254
Test/baseResults/link.tesselation.tese.out
Normal file
254
Test/baseResults/link.tesselation.tese.out
Normal file
@ -0,0 +1,254 @@
|
|||||||
|
link.tesselation.tese
|
||||||
|
Shader version: 440
|
||||||
|
input primitive = triangles
|
||||||
|
vertex spacing = fractional_odd_spacing
|
||||||
|
triangle order = cw
|
||||||
|
0:? Sequence
|
||||||
|
0:15 Function Definition: main( ( global void)
|
||||||
|
0:15 Function Parameters:
|
||||||
|
0:17 Sequence
|
||||||
|
0:17 Sequence
|
||||||
|
0:17 move second child to first child ( temp float)
|
||||||
|
0:17 'u' ( temp float)
|
||||||
|
0:17 direct index ( temp float)
|
||||||
|
0:17 'gl_TessCoord' ( in 3-component vector of float TessCoord)
|
||||||
|
0:17 Constant:
|
||||||
|
0:17 0 (const int)
|
||||||
|
0:18 Sequence
|
||||||
|
0:18 move second child to first child ( temp float)
|
||||||
|
0:18 'v' ( temp float)
|
||||||
|
0:18 direct index ( temp float)
|
||||||
|
0:18 'gl_TessCoord' ( in 3-component vector of float TessCoord)
|
||||||
|
0:18 Constant:
|
||||||
|
0:18 1 (const int)
|
||||||
|
0:19 Sequence
|
||||||
|
0:19 move second child to first child ( temp float)
|
||||||
|
0:19 'w' ( temp float)
|
||||||
|
0:19 direct index ( temp float)
|
||||||
|
0:19 'gl_TessCoord' ( in 3-component vector of float TessCoord)
|
||||||
|
0:19 Constant:
|
||||||
|
0:19 2 (const int)
|
||||||
|
0:21 Sequence
|
||||||
|
0:21 move second child to first child ( temp 2-component vector of float)
|
||||||
|
0:21 'newUv' ( temp 2-component vector of float)
|
||||||
|
0:21 Construct vec2 ( temp 2-component vector of float)
|
||||||
|
0:21 add ( temp 2-component vector of float)
|
||||||
|
0:21 add ( temp 2-component vector of float)
|
||||||
|
0:21 vector-scale ( temp 2-component vector of float)
|
||||||
|
0:21 'u' ( temp float)
|
||||||
|
0:21 texCoord: direct index for structure ( in 2-component vector of float)
|
||||||
|
0:21 direct index (layout( location=0) temp block{ in 2-component vector of float texCoord})
|
||||||
|
0:21 'IN' (layout( location=0) in 32-element array of block{ in 2-component vector of float texCoord})
|
||||||
|
0:21 Constant:
|
||||||
|
0:21 0 (const int)
|
||||||
|
0:21 Constant:
|
||||||
|
0:21 0 (const int)
|
||||||
|
0:21 vector-scale ( temp 2-component vector of float)
|
||||||
|
0:21 'v' ( temp float)
|
||||||
|
0:21 texCoord: direct index for structure ( in 2-component vector of float)
|
||||||
|
0:21 direct index (layout( location=0) temp block{ in 2-component vector of float texCoord})
|
||||||
|
0:21 'IN' (layout( location=0) in 32-element array of block{ in 2-component vector of float texCoord})
|
||||||
|
0:21 Constant:
|
||||||
|
0:21 1 (const int)
|
||||||
|
0:21 Constant:
|
||||||
|
0:21 0 (const int)
|
||||||
|
0:21 vector-scale ( temp 2-component vector of float)
|
||||||
|
0:21 'w' ( temp float)
|
||||||
|
0:21 texCoord: direct index for structure ( in 2-component vector of float)
|
||||||
|
0:21 direct index (layout( location=0) temp block{ in 2-component vector of float texCoord})
|
||||||
|
0:21 'IN' (layout( location=0) in 32-element array of block{ in 2-component vector of float texCoord})
|
||||||
|
0:21 Constant:
|
||||||
|
0:21 2 (const int)
|
||||||
|
0:21 Constant:
|
||||||
|
0:21 0 (const int)
|
||||||
|
0:22 move second child to first child ( temp 2-component vector of float)
|
||||||
|
0:22 texCoord: direct index for structure ( out 2-component vector of float)
|
||||||
|
0:22 'OUT' (layout( location=0) out block{ out 2-component vector of float texCoord})
|
||||||
|
0:22 Constant:
|
||||||
|
0:22 0 (const int)
|
||||||
|
0:22 'newUv' ( temp 2-component vector of float)
|
||||||
|
0:23 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:23 gl_Position: direct index for structure ( gl_Position 4-component vector of float Position)
|
||||||
|
0:23 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:23 Constant:
|
||||||
|
0:23 0 (const uint)
|
||||||
|
0:23 gl_Position: direct index for structure ( in 4-component vector of float Position)
|
||||||
|
0:23 indirect index ( temp block{ in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize, in unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:23 'gl_in' ( in 32-element array of block{ in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize, in unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:23 'gl_PatchVerticesIn' ( in int PatchVertices)
|
||||||
|
0:23 Constant:
|
||||||
|
0:23 0 (const int)
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'IN' (layout( location=0) in 32-element array of block{ in 2-component vector of float texCoord})
|
||||||
|
0:? 'OUT' (layout( location=0) out block{ out 2-component vector of float texCoord})
|
||||||
|
0:? 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
|
||||||
|
link.tesselation.tesc
|
||||||
|
Shader version: 440
|
||||||
|
vertices = 3
|
||||||
|
0:? Sequence
|
||||||
|
0:14 Function Definition: main( ( global void)
|
||||||
|
0:14 Function Parameters:
|
||||||
|
0:16 Sequence
|
||||||
|
0:16 move second child to first child ( temp 2-component vector of float)
|
||||||
|
0:16 texCoord: direct index for structure ( out 2-component vector of float)
|
||||||
|
0:16 indirect index (layout( location=0) temp block{ out 2-component vector of float texCoord})
|
||||||
|
0:16 'OUT' (layout( location=0) out 3-element array of block{ out 2-component vector of float texCoord})
|
||||||
|
0:16 'gl_InvocationID' ( in int InvocationID)
|
||||||
|
0:16 Constant:
|
||||||
|
0:16 0 (const int)
|
||||||
|
0:16 texCoord: direct index for structure ( in 2-component vector of float)
|
||||||
|
0:16 indirect index (layout( location=0) temp block{ in 2-component vector of float texCoord})
|
||||||
|
0:16 'IN' (layout( location=0) in 32-element array of block{ in 2-component vector of float texCoord})
|
||||||
|
0:16 'gl_InvocationID' ( in int InvocationID)
|
||||||
|
0:16 Constant:
|
||||||
|
0:16 0 (const int)
|
||||||
|
0:18 Sequence
|
||||||
|
0:18 move second child to first child ( temp float)
|
||||||
|
0:18 'tessLevel' ( temp float)
|
||||||
|
0:18 Constant:
|
||||||
|
0:18 10.000000
|
||||||
|
0:19 move second child to first child ( temp float)
|
||||||
|
0:19 indirect index ( patch temp float TessLevelOuter)
|
||||||
|
0:19 'gl_TessLevelOuter' ( patch out 4-element array of float TessLevelOuter)
|
||||||
|
0:19 'gl_InvocationID' ( in int InvocationID)
|
||||||
|
0:19 'tessLevel' ( temp float)
|
||||||
|
0:20 move second child to first child ( temp float)
|
||||||
|
0:20 direct index ( patch temp float TessLevelInner)
|
||||||
|
0:20 'gl_TessLevelInner' ( patch out 2-element array of float TessLevelInner)
|
||||||
|
0:20 Constant:
|
||||||
|
0:20 0 (const int)
|
||||||
|
0:20 'tessLevel' ( temp float)
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'IN' (layout( location=0) in 32-element array of block{ in 2-component vector of float texCoord})
|
||||||
|
0:? 'OUT' (layout( location=0) out 3-element array of block{ out 2-component vector of float texCoord})
|
||||||
|
|
||||||
|
|
||||||
|
Linked tessellation control stage:
|
||||||
|
|
||||||
|
|
||||||
|
Linked tessellation evaluation stage:
|
||||||
|
|
||||||
|
|
||||||
|
Shader version: 440
|
||||||
|
vertices = 3
|
||||||
|
0:? Sequence
|
||||||
|
0:14 Function Definition: main( ( global void)
|
||||||
|
0:14 Function Parameters:
|
||||||
|
0:16 Sequence
|
||||||
|
0:16 move second child to first child ( temp 2-component vector of float)
|
||||||
|
0:16 texCoord: direct index for structure ( out 2-component vector of float)
|
||||||
|
0:16 indirect index (layout( location=0) temp block{ out 2-component vector of float texCoord})
|
||||||
|
0:16 'OUT' (layout( location=0) out 3-element array of block{ out 2-component vector of float texCoord})
|
||||||
|
0:16 'gl_InvocationID' ( in int InvocationID)
|
||||||
|
0:16 Constant:
|
||||||
|
0:16 0 (const int)
|
||||||
|
0:16 texCoord: direct index for structure ( in 2-component vector of float)
|
||||||
|
0:16 indirect index (layout( location=0) temp block{ in 2-component vector of float texCoord})
|
||||||
|
0:16 'IN' (layout( location=0) in 32-element array of block{ in 2-component vector of float texCoord})
|
||||||
|
0:16 'gl_InvocationID' ( in int InvocationID)
|
||||||
|
0:16 Constant:
|
||||||
|
0:16 0 (const int)
|
||||||
|
0:18 Sequence
|
||||||
|
0:18 move second child to first child ( temp float)
|
||||||
|
0:18 'tessLevel' ( temp float)
|
||||||
|
0:18 Constant:
|
||||||
|
0:18 10.000000
|
||||||
|
0:19 move second child to first child ( temp float)
|
||||||
|
0:19 indirect index ( patch temp float TessLevelOuter)
|
||||||
|
0:19 'gl_TessLevelOuter' ( patch out 4-element array of float TessLevelOuter)
|
||||||
|
0:19 'gl_InvocationID' ( in int InvocationID)
|
||||||
|
0:19 'tessLevel' ( temp float)
|
||||||
|
0:20 move second child to first child ( temp float)
|
||||||
|
0:20 direct index ( patch temp float TessLevelInner)
|
||||||
|
0:20 'gl_TessLevelInner' ( patch out 2-element array of float TessLevelInner)
|
||||||
|
0:20 Constant:
|
||||||
|
0:20 0 (const int)
|
||||||
|
0:20 'tessLevel' ( temp float)
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'IN' (layout( location=0) in 32-element array of block{ in 2-component vector of float texCoord})
|
||||||
|
0:? 'OUT' (layout( location=0) out 3-element array of block{ out 2-component vector of float texCoord})
|
||||||
|
Shader version: 440
|
||||||
|
input primitive = triangles
|
||||||
|
vertex spacing = fractional_odd_spacing
|
||||||
|
triangle order = cw
|
||||||
|
0:? Sequence
|
||||||
|
0:15 Function Definition: main( ( global void)
|
||||||
|
0:15 Function Parameters:
|
||||||
|
0:17 Sequence
|
||||||
|
0:17 Sequence
|
||||||
|
0:17 move second child to first child ( temp float)
|
||||||
|
0:17 'u' ( temp float)
|
||||||
|
0:17 direct index ( temp float)
|
||||||
|
0:17 'gl_TessCoord' ( in 3-component vector of float TessCoord)
|
||||||
|
0:17 Constant:
|
||||||
|
0:17 0 (const int)
|
||||||
|
0:18 Sequence
|
||||||
|
0:18 move second child to first child ( temp float)
|
||||||
|
0:18 'v' ( temp float)
|
||||||
|
0:18 direct index ( temp float)
|
||||||
|
0:18 'gl_TessCoord' ( in 3-component vector of float TessCoord)
|
||||||
|
0:18 Constant:
|
||||||
|
0:18 1 (const int)
|
||||||
|
0:19 Sequence
|
||||||
|
0:19 move second child to first child ( temp float)
|
||||||
|
0:19 'w' ( temp float)
|
||||||
|
0:19 direct index ( temp float)
|
||||||
|
0:19 'gl_TessCoord' ( in 3-component vector of float TessCoord)
|
||||||
|
0:19 Constant:
|
||||||
|
0:19 2 (const int)
|
||||||
|
0:21 Sequence
|
||||||
|
0:21 move second child to first child ( temp 2-component vector of float)
|
||||||
|
0:21 'newUv' ( temp 2-component vector of float)
|
||||||
|
0:21 Construct vec2 ( temp 2-component vector of float)
|
||||||
|
0:21 add ( temp 2-component vector of float)
|
||||||
|
0:21 add ( temp 2-component vector of float)
|
||||||
|
0:21 vector-scale ( temp 2-component vector of float)
|
||||||
|
0:21 'u' ( temp float)
|
||||||
|
0:21 texCoord: direct index for structure ( in 2-component vector of float)
|
||||||
|
0:21 direct index (layout( location=0) temp block{ in 2-component vector of float texCoord})
|
||||||
|
0:21 'IN' (layout( location=0) in 32-element array of block{ in 2-component vector of float texCoord})
|
||||||
|
0:21 Constant:
|
||||||
|
0:21 0 (const int)
|
||||||
|
0:21 Constant:
|
||||||
|
0:21 0 (const int)
|
||||||
|
0:21 vector-scale ( temp 2-component vector of float)
|
||||||
|
0:21 'v' ( temp float)
|
||||||
|
0:21 texCoord: direct index for structure ( in 2-component vector of float)
|
||||||
|
0:21 direct index (layout( location=0) temp block{ in 2-component vector of float texCoord})
|
||||||
|
0:21 'IN' (layout( location=0) in 32-element array of block{ in 2-component vector of float texCoord})
|
||||||
|
0:21 Constant:
|
||||||
|
0:21 1 (const int)
|
||||||
|
0:21 Constant:
|
||||||
|
0:21 0 (const int)
|
||||||
|
0:21 vector-scale ( temp 2-component vector of float)
|
||||||
|
0:21 'w' ( temp float)
|
||||||
|
0:21 texCoord: direct index for structure ( in 2-component vector of float)
|
||||||
|
0:21 direct index (layout( location=0) temp block{ in 2-component vector of float texCoord})
|
||||||
|
0:21 'IN' (layout( location=0) in 32-element array of block{ in 2-component vector of float texCoord})
|
||||||
|
0:21 Constant:
|
||||||
|
0:21 2 (const int)
|
||||||
|
0:21 Constant:
|
||||||
|
0:21 0 (const int)
|
||||||
|
0:22 move second child to first child ( temp 2-component vector of float)
|
||||||
|
0:22 texCoord: direct index for structure ( out 2-component vector of float)
|
||||||
|
0:22 'OUT' (layout( location=0) out block{ out 2-component vector of float texCoord})
|
||||||
|
0:22 Constant:
|
||||||
|
0:22 0 (const int)
|
||||||
|
0:22 'newUv' ( temp 2-component vector of float)
|
||||||
|
0:23 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:23 gl_Position: direct index for structure ( gl_Position 4-component vector of float Position)
|
||||||
|
0:23 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:23 Constant:
|
||||||
|
0:23 0 (const uint)
|
||||||
|
0:23 gl_Position: direct index for structure ( in 4-component vector of float Position)
|
||||||
|
0:23 indirect index ( temp block{ in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize, in 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:23 'gl_in' ( in 32-element array of block{ in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize, in 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:23 'gl_PatchVerticesIn' ( in int PatchVertices)
|
||||||
|
0:23 Constant:
|
||||||
|
0:23 0 (const int)
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'IN' (layout( location=0) in 32-element array of block{ in 2-component vector of float texCoord})
|
||||||
|
0:? 'OUT' (layout( location=0) out block{ out 2-component vector of float texCoord})
|
||||||
|
0:? 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
|
94
Test/baseResults/link.tesselation.vert.out
Normal file
94
Test/baseResults/link.tesselation.vert.out
Normal file
@ -0,0 +1,94 @@
|
|||||||
|
link.tesselation.vert
|
||||||
|
Shader version: 440
|
||||||
|
0:? Sequence
|
||||||
|
0:11 Function Definition: main( ( global void)
|
||||||
|
0:11 Function Parameters:
|
||||||
|
0:13 Sequence
|
||||||
|
0:13 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:13 gl_Position: direct index for structure ( gl_Position 4-component vector of float Position)
|
||||||
|
0:13 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:13 Constant:
|
||||||
|
0:13 0 (const uint)
|
||||||
|
0:13 'i_Pos' (layout( location=0) in 4-component vector of float)
|
||||||
|
0:14 move second child to first child ( temp 2-component vector of float)
|
||||||
|
0:14 texCoord: direct index for structure ( out 2-component vector of float)
|
||||||
|
0:14 'OUT' (layout( location=0) out block{ out 2-component vector of float texCoord})
|
||||||
|
0:14 Constant:
|
||||||
|
0:14 0 (const int)
|
||||||
|
0:14 'i_Tex' (layout( location=1) in 2-component vector of float)
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'i_Pos' (layout( location=0) in 4-component vector of float)
|
||||||
|
0:? 'i_Tex' (layout( location=1) in 2-component vector of float)
|
||||||
|
0:? 'OUT' (layout( location=0) out block{ out 2-component vector of float texCoord})
|
||||||
|
0:? 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out unsized 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:? 'gl_VertexID' ( gl_VertexId int VertexId)
|
||||||
|
0:? 'gl_InstanceID' ( gl_InstanceId int InstanceId)
|
||||||
|
|
||||||
|
link.tesselation.frag
|
||||||
|
Shader version: 440
|
||||||
|
0:? Sequence
|
||||||
|
0:12 Function Definition: main( ( global void)
|
||||||
|
0:12 Function Parameters:
|
||||||
|
0:14 Sequence
|
||||||
|
0:14 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:14 'oColor' (layout( location=0) out 4-component vector of float)
|
||||||
|
0:14 texture ( global 4-component vector of float)
|
||||||
|
0:14 'mytex' (layout( binding=0) uniform sampler2D)
|
||||||
|
0:14 texCoord: direct index for structure ( in 2-component vector of float)
|
||||||
|
0:14 'IN' (layout( location=0) in block{ in 2-component vector of float texCoord})
|
||||||
|
0:14 Constant:
|
||||||
|
0:14 0 (const int)
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'IN' (layout( location=0) in block{ in 2-component vector of float texCoord})
|
||||||
|
0:? 'oColor' (layout( location=0) out 4-component vector of float)
|
||||||
|
0:? 'mytex' (layout( binding=0) uniform sampler2D)
|
||||||
|
|
||||||
|
|
||||||
|
Linked vertex stage:
|
||||||
|
|
||||||
|
|
||||||
|
Linked fragment stage:
|
||||||
|
|
||||||
|
|
||||||
|
Shader version: 440
|
||||||
|
0:? Sequence
|
||||||
|
0:11 Function Definition: main( ( global void)
|
||||||
|
0:11 Function Parameters:
|
||||||
|
0:13 Sequence
|
||||||
|
0:13 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:13 gl_Position: direct index for structure ( gl_Position 4-component vector of float Position)
|
||||||
|
0:13 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:13 Constant:
|
||||||
|
0:13 0 (const uint)
|
||||||
|
0:13 'i_Pos' (layout( location=0) in 4-component vector of float)
|
||||||
|
0:14 move second child to first child ( temp 2-component vector of float)
|
||||||
|
0:14 texCoord: direct index for structure ( out 2-component vector of float)
|
||||||
|
0:14 'OUT' (layout( location=0) out block{ out 2-component vector of float texCoord})
|
||||||
|
0:14 Constant:
|
||||||
|
0:14 0 (const int)
|
||||||
|
0:14 'i_Tex' (layout( location=1) in 2-component vector of float)
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'i_Pos' (layout( location=0) in 4-component vector of float)
|
||||||
|
0:? 'i_Tex' (layout( location=1) in 2-component vector of float)
|
||||||
|
0:? 'OUT' (layout( location=0) out block{ out 2-component vector of float texCoord})
|
||||||
|
0:? 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
|
||||||
|
0:? 'gl_VertexID' ( gl_VertexId int VertexId)
|
||||||
|
0:? 'gl_InstanceID' ( gl_InstanceId int InstanceId)
|
||||||
|
Shader version: 440
|
||||||
|
0:? Sequence
|
||||||
|
0:12 Function Definition: main( ( global void)
|
||||||
|
0:12 Function Parameters:
|
||||||
|
0:14 Sequence
|
||||||
|
0:14 move second child to first child ( temp 4-component vector of float)
|
||||||
|
0:14 'oColor' (layout( location=0) out 4-component vector of float)
|
||||||
|
0:14 texture ( global 4-component vector of float)
|
||||||
|
0:14 'mytex' (layout( binding=0) uniform sampler2D)
|
||||||
|
0:14 texCoord: direct index for structure ( in 2-component vector of float)
|
||||||
|
0:14 'IN' (layout( location=0) in block{ in 2-component vector of float texCoord})
|
||||||
|
0:14 Constant:
|
||||||
|
0:14 0 (const int)
|
||||||
|
0:? Linker Objects
|
||||||
|
0:? 'IN' (layout( location=0) in block{ in 2-component vector of float texCoord})
|
||||||
|
0:? 'oColor' (layout( location=0) out 4-component vector of float)
|
||||||
|
0:? 'mytex' (layout( binding=0) uniform sampler2D)
|
||||||
|
|
@ -28,8 +28,6 @@ rayQuery.rgen
|
|||||||
MemberDecorate 26(block) 0 Offset 0
|
MemberDecorate 26(block) 0 Offset 0
|
||||||
MemberDecorate 26(block) 1 Offset 16
|
MemberDecorate 26(block) 1 Offset 16
|
||||||
Decorate 26(block) BufferBlock
|
Decorate 26(block) BufferBlock
|
||||||
Decorate 28 DescriptorSet 0
|
|
||||||
Decorate 28 Binding 1
|
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
6: TypeInt 32 0
|
6: TypeInt 32 0
|
||||||
|
@ -31,7 +31,6 @@ spv.1.4.OpEntryPoint.frag
|
|||||||
Decorate 25(uniformv) Binding 0
|
Decorate 25(uniformv) Binding 0
|
||||||
MemberDecorate 31(pushB) 0 Offset 0
|
MemberDecorate 31(pushB) 0 Offset 0
|
||||||
Decorate 31(pushB) Block
|
Decorate 31(pushB) Block
|
||||||
Decorate 33(pushv) Binding 2
|
|
||||||
MemberDecorate 39(bbt) 0 Offset 0
|
MemberDecorate 39(bbt) 0 Offset 0
|
||||||
Decorate 39(bbt) Block
|
Decorate 39(bbt) Block
|
||||||
Decorate 41(bufferv) DescriptorSet 0
|
Decorate 41(bufferv) DescriptorSet 0
|
||||||
|
33
Test/baseResults/spv.AnyHitShaderMotion.rahit.out
Normal file
33
Test/baseResults/spv.AnyHitShaderMotion.rahit.out
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
spv.AnyHitShaderMotion.rahit
|
||||||
|
// Module Version 10400
|
||||||
|
// Generated by (magic number): 8000a
|
||||||
|
// Id's are bound by 14
|
||||||
|
|
||||||
|
Capability RayTracingKHR
|
||||||
|
Capability RayTracingMotionBlurNV
|
||||||
|
Extension "SPV_KHR_ray_tracing"
|
||||||
|
Extension "SPV_NV_ray_tracing_motion_blur"
|
||||||
|
1: ExtInstImport "GLSL.std.450"
|
||||||
|
MemoryModel Logical GLSL450
|
||||||
|
EntryPoint AnyHitKHR 4 "main" 10
|
||||||
|
Source GLSL 460
|
||||||
|
SourceExtension "GL_NV_ray_tracing_motion_blur"
|
||||||
|
Name 4 "main"
|
||||||
|
Name 8 "time"
|
||||||
|
Name 10 "gl_CurrentRayTimeNV"
|
||||||
|
Decorate 10(gl_CurrentRayTimeNV) BuiltIn CurrentRayTimeNV
|
||||||
|
2: TypeVoid
|
||||||
|
3: TypeFunction 2
|
||||||
|
6: TypeFloat 32
|
||||||
|
7: TypePointer Function 6(float)
|
||||||
|
9: TypePointer Input 6(float)
|
||||||
|
10(gl_CurrentRayTimeNV): 9(ptr) Variable Input
|
||||||
|
12: 6(float) Constant 1056964608
|
||||||
|
4(main): 2 Function None 3
|
||||||
|
5: Label
|
||||||
|
8(time): 7(ptr) Variable Function
|
||||||
|
11: 6(float) Load 10(gl_CurrentRayTimeNV)
|
||||||
|
13: 6(float) FAdd 11 12
|
||||||
|
Store 8(time) 13
|
||||||
|
Return
|
||||||
|
FunctionEnd
|
59
Test/baseResults/spv.ClosestHitShaderMotion.rchit.out
Normal file
59
Test/baseResults/spv.ClosestHitShaderMotion.rchit.out
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
spv.ClosestHitShaderMotion.rchit
|
||||||
|
// Module Version 10400
|
||||||
|
// Generated by (magic number): 8000a
|
||||||
|
// Id's are bound by 33
|
||||||
|
|
||||||
|
Capability RayTracingKHR
|
||||||
|
Capability RayTracingMotionBlurNV
|
||||||
|
Extension "SPV_KHR_ray_tracing"
|
||||||
|
Extension "SPV_NV_ray_tracing_motion_blur"
|
||||||
|
1: ExtInstImport "GLSL.std.450"
|
||||||
|
MemoryModel Logical GLSL450
|
||||||
|
EntryPoint ClosestHitKHR 4 "main" 10 16 32
|
||||||
|
Source GLSL 460
|
||||||
|
SourceExtension "GL_EXT_ray_tracing"
|
||||||
|
SourceExtension "GL_NV_ray_tracing_motion_blur"
|
||||||
|
Name 4 "main"
|
||||||
|
Name 8 "time"
|
||||||
|
Name 10 "gl_CurrentRayTimeNV"
|
||||||
|
Name 16 "accEXT"
|
||||||
|
Name 32 "incomingPayloadEXT"
|
||||||
|
Decorate 10(gl_CurrentRayTimeNV) BuiltIn CurrentRayTimeNV
|
||||||
|
Decorate 16(accEXT) DescriptorSet 0
|
||||||
|
Decorate 16(accEXT) Binding 0
|
||||||
|
Decorate 32(incomingPayloadEXT) Location 0
|
||||||
|
2: TypeVoid
|
||||||
|
3: TypeFunction 2
|
||||||
|
6: TypeFloat 32
|
||||||
|
7: TypePointer Function 6(float)
|
||||||
|
9: TypePointer Input 6(float)
|
||||||
|
10(gl_CurrentRayTimeNV): 9(ptr) Variable Input
|
||||||
|
12: 6(float) Constant 1056964608
|
||||||
|
14: TypeAccelerationStructureKHR
|
||||||
|
15: TypePointer UniformConstant 14
|
||||||
|
16(accEXT): 15(ptr) Variable UniformConstant
|
||||||
|
18: TypeInt 32 0
|
||||||
|
19: 18(int) Constant 0
|
||||||
|
20: 18(int) Constant 1
|
||||||
|
21: 18(int) Constant 2
|
||||||
|
22: 18(int) Constant 3
|
||||||
|
23: TypeVector 6(float) 3
|
||||||
|
24: 23(fvec3) ConstantComposite 12 12 12
|
||||||
|
25: 6(float) Constant 1065353216
|
||||||
|
26: 23(fvec3) ConstantComposite 25 25 25
|
||||||
|
27: 6(float) Constant 1061158912
|
||||||
|
28: TypeInt 32 1
|
||||||
|
29: 28(int) Constant 0
|
||||||
|
30: TypeVector 6(float) 4
|
||||||
|
31: TypePointer IncomingRayPayloadKHR 30(fvec4)
|
||||||
|
32(incomingPayloadEXT): 31(ptr) Variable IncomingRayPayloadKHR
|
||||||
|
4(main): 2 Function None 3
|
||||||
|
5: Label
|
||||||
|
8(time): 7(ptr) Variable Function
|
||||||
|
11: 6(float) Load 10(gl_CurrentRayTimeNV)
|
||||||
|
13: 6(float) FAdd 11 12
|
||||||
|
Store 8(time) 13
|
||||||
|
17: 14 Load 16(accEXT)
|
||||||
|
TraceRayMotionNV 17 19 20 21 22 19 24 12 26 27 25 32(incomingPayloadEXT)
|
||||||
|
Return
|
||||||
|
FunctionEnd
|
33
Test/baseResults/spv.IntersectShaderMotion.rint.out
Normal file
33
Test/baseResults/spv.IntersectShaderMotion.rint.out
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
spv.IntersectShaderMotion.rint
|
||||||
|
// Module Version 10400
|
||||||
|
// Generated by (magic number): 8000a
|
||||||
|
// Id's are bound by 14
|
||||||
|
|
||||||
|
Capability RayTracingKHR
|
||||||
|
Capability RayTracingMotionBlurNV
|
||||||
|
Extension "SPV_KHR_ray_tracing"
|
||||||
|
Extension "SPV_NV_ray_tracing_motion_blur"
|
||||||
|
1: ExtInstImport "GLSL.std.450"
|
||||||
|
MemoryModel Logical GLSL450
|
||||||
|
EntryPoint IntersectionKHR 4 "main" 10
|
||||||
|
Source GLSL 460
|
||||||
|
SourceExtension "GL_NV_ray_tracing_motion_blur"
|
||||||
|
Name 4 "main"
|
||||||
|
Name 8 "time"
|
||||||
|
Name 10 "gl_CurrentRayTimeNV"
|
||||||
|
Decorate 10(gl_CurrentRayTimeNV) BuiltIn CurrentRayTimeNV
|
||||||
|
2: TypeVoid
|
||||||
|
3: TypeFunction 2
|
||||||
|
6: TypeFloat 32
|
||||||
|
7: TypePointer Function 6(float)
|
||||||
|
9: TypePointer Input 6(float)
|
||||||
|
10(gl_CurrentRayTimeNV): 9(ptr) Variable Input
|
||||||
|
12: 6(float) Constant 1056964608
|
||||||
|
4(main): 2 Function None 3
|
||||||
|
5: Label
|
||||||
|
8(time): 7(ptr) Variable Function
|
||||||
|
11: 6(float) Load 10(gl_CurrentRayTimeNV)
|
||||||
|
13: 6(float) FAdd 11 12
|
||||||
|
Store 8(time) 13
|
||||||
|
Return
|
||||||
|
FunctionEnd
|
59
Test/baseResults/spv.MissShaderMotion.rmiss.out
Normal file
59
Test/baseResults/spv.MissShaderMotion.rmiss.out
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
spv.MissShaderMotion.rmiss
|
||||||
|
// Module Version 10400
|
||||||
|
// Generated by (magic number): 8000a
|
||||||
|
// Id's are bound by 33
|
||||||
|
|
||||||
|
Capability RayTracingKHR
|
||||||
|
Capability RayTracingMotionBlurNV
|
||||||
|
Extension "SPV_KHR_ray_tracing"
|
||||||
|
Extension "SPV_NV_ray_tracing_motion_blur"
|
||||||
|
1: ExtInstImport "GLSL.std.450"
|
||||||
|
MemoryModel Logical GLSL450
|
||||||
|
EntryPoint MissKHR 4 "main" 10 16 32
|
||||||
|
Source GLSL 460
|
||||||
|
SourceExtension "GL_EXT_ray_tracing"
|
||||||
|
SourceExtension "GL_NV_ray_tracing_motion_blur"
|
||||||
|
Name 4 "main"
|
||||||
|
Name 8 "time"
|
||||||
|
Name 10 "gl_CurrentRayTimeNV"
|
||||||
|
Name 16 "accEXT"
|
||||||
|
Name 32 "localPayloadEXT"
|
||||||
|
Decorate 10(gl_CurrentRayTimeNV) BuiltIn CurrentRayTimeNV
|
||||||
|
Decorate 16(accEXT) DescriptorSet 0
|
||||||
|
Decorate 16(accEXT) Binding 0
|
||||||
|
Decorate 32(localPayloadEXT) Location 0
|
||||||
|
2: TypeVoid
|
||||||
|
3: TypeFunction 2
|
||||||
|
6: TypeFloat 32
|
||||||
|
7: TypePointer Function 6(float)
|
||||||
|
9: TypePointer Input 6(float)
|
||||||
|
10(gl_CurrentRayTimeNV): 9(ptr) Variable Input
|
||||||
|
12: 6(float) Constant 1056964608
|
||||||
|
14: TypeAccelerationStructureKHR
|
||||||
|
15: TypePointer UniformConstant 14
|
||||||
|
16(accEXT): 15(ptr) Variable UniformConstant
|
||||||
|
18: TypeInt 32 0
|
||||||
|
19: 18(int) Constant 0
|
||||||
|
20: 18(int) Constant 1
|
||||||
|
21: 18(int) Constant 2
|
||||||
|
22: 18(int) Constant 3
|
||||||
|
23: TypeVector 6(float) 3
|
||||||
|
24: 23(fvec3) ConstantComposite 12 12 12
|
||||||
|
25: 6(float) Constant 1065353216
|
||||||
|
26: 23(fvec3) ConstantComposite 25 25 25
|
||||||
|
27: 6(float) Constant 1061158912
|
||||||
|
28: TypeInt 32 1
|
||||||
|
29: 28(int) Constant 0
|
||||||
|
30: TypeVector 6(float) 4
|
||||||
|
31: TypePointer RayPayloadKHR 30(fvec4)
|
||||||
|
32(localPayloadEXT): 31(ptr) Variable RayPayloadKHR
|
||||||
|
4(main): 2 Function None 3
|
||||||
|
5: Label
|
||||||
|
8(time): 7(ptr) Variable Function
|
||||||
|
11: 6(float) Load 10(gl_CurrentRayTimeNV)
|
||||||
|
13: 6(float) FAdd 11 12
|
||||||
|
Store 8(time) 13
|
||||||
|
17: 14 Load 16(accEXT)
|
||||||
|
TraceRayMotionNV 17 19 20 21 22 19 24 12 26 27 25 32(localPayloadEXT)
|
||||||
|
Return
|
||||||
|
FunctionEnd
|
@ -31,8 +31,6 @@ spv.RayGenShader.rgen
|
|||||||
MemberDecorate 37(block) 0 Offset 0
|
MemberDecorate 37(block) 0 Offset 0
|
||||||
MemberDecorate 37(block) 1 Offset 16
|
MemberDecorate 37(block) 1 Offset 16
|
||||||
Decorate 37(block) BufferBlock
|
Decorate 37(block) BufferBlock
|
||||||
Decorate 39 DescriptorSet 0
|
|
||||||
Decorate 39 Binding 2
|
|
||||||
Decorate 50(accNV1) DescriptorSet 0
|
Decorate 50(accNV1) DescriptorSet 0
|
||||||
Decorate 50(accNV1) Binding 1
|
Decorate 50(accNV1) Binding 1
|
||||||
Decorate 53(payload) Location 0
|
Decorate 53(payload) Location 0
|
||||||
|
@ -30,8 +30,6 @@ spv.RayGenShader11.rgen
|
|||||||
MemberDecorate 37(block) 0 Offset 0
|
MemberDecorate 37(block) 0 Offset 0
|
||||||
MemberDecorate 37(block) 1 Offset 16
|
MemberDecorate 37(block) 1 Offset 16
|
||||||
Decorate 37(block) Block
|
Decorate 37(block) Block
|
||||||
Decorate 39 DescriptorSet 0
|
|
||||||
Decorate 39 Binding 1
|
|
||||||
Decorate 52(payload) Location 0
|
Decorate 52(payload) Location 0
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
|
@ -37,8 +37,6 @@ spv.RayGenShaderArray.rgen
|
|||||||
MemberDecorate 34(block) 1 Offset 16
|
MemberDecorate 34(block) 1 Offset 16
|
||||||
MemberDecorate 34(block) 2 Offset 28
|
MemberDecorate 34(block) 2 Offset 28
|
||||||
Decorate 34(block) BufferBlock
|
Decorate 34(block) BufferBlock
|
||||||
Decorate 36 DescriptorSet 0
|
|
||||||
Decorate 36 Binding 2
|
|
||||||
Decorate 60(accNV1) DescriptorSet 0
|
Decorate 60(accNV1) DescriptorSet 0
|
||||||
Decorate 60(accNV1) Binding 1
|
Decorate 60(accNV1) Binding 1
|
||||||
Decorate 75 DecorationNonUniformEXT
|
Decorate 75 DecorationNonUniformEXT
|
||||||
|
81
Test/baseResults/spv.RayGenShaderMotion.rgen.out
Normal file
81
Test/baseResults/spv.RayGenShaderMotion.rgen.out
Normal file
@ -0,0 +1,81 @@
|
|||||||
|
spv.RayGenShaderMotion.rgen
|
||||||
|
// Module Version 10400
|
||||||
|
// Generated by (magic number): 8000a
|
||||||
|
// Id's are bound by 47
|
||||||
|
|
||||||
|
Capability RayTracingKHR
|
||||||
|
Capability RayTracingMotionBlurNV
|
||||||
|
Extension "SPV_KHR_ray_tracing"
|
||||||
|
Extension "SPV_NV_ray_tracing_motion_blur"
|
||||||
|
1: ExtInstImport "GLSL.std.450"
|
||||||
|
MemoryModel Logical GLSL450
|
||||||
|
EntryPoint RayGenerationKHR 4 "main" 11 21 29 46
|
||||||
|
Source GLSL 460
|
||||||
|
SourceExtension "GL_EXT_ray_tracing"
|
||||||
|
SourceExtension "GL_NV_ray_tracing_motion_blur"
|
||||||
|
Name 4 "main"
|
||||||
|
Name 8 "lx"
|
||||||
|
Name 11 "gl_LaunchIDEXT"
|
||||||
|
Name 16 "ly"
|
||||||
|
Name 20 "sx"
|
||||||
|
Name 21 "gl_LaunchSizeEXT"
|
||||||
|
Name 24 "sy"
|
||||||
|
Name 29 "accEXT"
|
||||||
|
Name 46 "payloadEXT"
|
||||||
|
Decorate 11(gl_LaunchIDEXT) BuiltIn LaunchIdKHR
|
||||||
|
Decorate 21(gl_LaunchSizeEXT) BuiltIn LaunchSizeKHR
|
||||||
|
Decorate 29(accEXT) DescriptorSet 0
|
||||||
|
Decorate 29(accEXT) Binding 0
|
||||||
|
Decorate 46(payloadEXT) Location 0
|
||||||
|
2: TypeVoid
|
||||||
|
3: TypeFunction 2
|
||||||
|
6: TypeInt 32 0
|
||||||
|
7: TypePointer Function 6(int)
|
||||||
|
9: TypeVector 6(int) 3
|
||||||
|
10: TypePointer Input 9(ivec3)
|
||||||
|
11(gl_LaunchIDEXT): 10(ptr) Variable Input
|
||||||
|
12: 6(int) Constant 0
|
||||||
|
13: TypePointer Input 6(int)
|
||||||
|
17: 6(int) Constant 1
|
||||||
|
21(gl_LaunchSizeEXT): 10(ptr) Variable Input
|
||||||
|
27: TypeAccelerationStructureKHR
|
||||||
|
28: TypePointer UniformConstant 27
|
||||||
|
29(accEXT): 28(ptr) Variable UniformConstant
|
||||||
|
35: TypeFloat 32
|
||||||
|
36: TypeVector 35(float) 3
|
||||||
|
37: 35(float) Constant 1056964608
|
||||||
|
38: 36(fvec3) ConstantComposite 37 37 37
|
||||||
|
39: 35(float) Constant 1065353216
|
||||||
|
40: 36(fvec3) ConstantComposite 39 39 39
|
||||||
|
41: 35(float) Constant 1061158912
|
||||||
|
42: TypeInt 32 1
|
||||||
|
43: 42(int) Constant 0
|
||||||
|
44: TypeVector 35(float) 4
|
||||||
|
45: TypePointer RayPayloadKHR 44(fvec4)
|
||||||
|
46(payloadEXT): 45(ptr) Variable RayPayloadKHR
|
||||||
|
4(main): 2 Function None 3
|
||||||
|
5: Label
|
||||||
|
8(lx): 7(ptr) Variable Function
|
||||||
|
16(ly): 7(ptr) Variable Function
|
||||||
|
20(sx): 7(ptr) Variable Function
|
||||||
|
24(sy): 7(ptr) Variable Function
|
||||||
|
14: 13(ptr) AccessChain 11(gl_LaunchIDEXT) 12
|
||||||
|
15: 6(int) Load 14
|
||||||
|
Store 8(lx) 15
|
||||||
|
18: 13(ptr) AccessChain 11(gl_LaunchIDEXT) 17
|
||||||
|
19: 6(int) Load 18
|
||||||
|
Store 16(ly) 19
|
||||||
|
22: 13(ptr) AccessChain 21(gl_LaunchSizeEXT) 12
|
||||||
|
23: 6(int) Load 22
|
||||||
|
Store 20(sx) 23
|
||||||
|
25: 13(ptr) AccessChain 21(gl_LaunchSizeEXT) 17
|
||||||
|
26: 6(int) Load 25
|
||||||
|
Store 24(sy) 26
|
||||||
|
30: 27 Load 29(accEXT)
|
||||||
|
31: 6(int) Load 8(lx)
|
||||||
|
32: 6(int) Load 16(ly)
|
||||||
|
33: 6(int) Load 20(sx)
|
||||||
|
34: 6(int) Load 24(sy)
|
||||||
|
TraceRayMotionNV 30 31 32 33 34 12 38 37 40 41 37 46(payloadEXT)
|
||||||
|
Return
|
||||||
|
FunctionEnd
|
@ -73,6 +73,7 @@ spv.ext.AnyHitShader.rahit
|
|||||||
Decorate 98(gl_SubgroupSize) RelaxedPrecision
|
Decorate 98(gl_SubgroupSize) RelaxedPrecision
|
||||||
Decorate 98(gl_SubgroupSize) BuiltIn SubgroupSize
|
Decorate 98(gl_SubgroupSize) BuiltIn SubgroupSize
|
||||||
Decorate 99 RelaxedPrecision
|
Decorate 99 RelaxedPrecision
|
||||||
|
Decorate 100 RelaxedPrecision
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
6: TypeInt 32 0
|
6: TypeInt 32 0
|
||||||
|
@ -38,10 +38,21 @@ spv.ext.ClosestHitShader_Subgroup.rchit
|
|||||||
Decorate 28(gl_SubgroupInvocationID) RelaxedPrecision
|
Decorate 28(gl_SubgroupInvocationID) RelaxedPrecision
|
||||||
Decorate 28(gl_SubgroupInvocationID) BuiltIn SubgroupLocalInvocationId
|
Decorate 28(gl_SubgroupInvocationID) BuiltIn SubgroupLocalInvocationId
|
||||||
Decorate 29 RelaxedPrecision
|
Decorate 29 RelaxedPrecision
|
||||||
|
Decorate 30 RelaxedPrecision
|
||||||
Decorate 34(gl_SubGroupGeMaskARB) BuiltIn SubgroupGeMaskKHR
|
Decorate 34(gl_SubGroupGeMaskARB) BuiltIn SubgroupGeMaskKHR
|
||||||
|
Decorate 41 RelaxedPrecision
|
||||||
|
Decorate 42 RelaxedPrecision
|
||||||
Decorate 43(gl_SubgroupGtMask) BuiltIn SubgroupGtMaskKHR
|
Decorate 43(gl_SubgroupGtMask) BuiltIn SubgroupGtMaskKHR
|
||||||
|
Decorate 46 RelaxedPrecision
|
||||||
|
Decorate 46 RelaxedPrecision
|
||||||
|
Decorate 47 RelaxedPrecision
|
||||||
Decorate 48(gl_SubgroupLeMask) BuiltIn SubgroupLeMaskKHR
|
Decorate 48(gl_SubgroupLeMask) BuiltIn SubgroupLeMaskKHR
|
||||||
|
Decorate 51 RelaxedPrecision
|
||||||
|
Decorate 51 RelaxedPrecision
|
||||||
|
Decorate 52 RelaxedPrecision
|
||||||
Decorate 53(gl_SubGroupLtMaskARB) BuiltIn SubgroupLtMaskKHR
|
Decorate 53(gl_SubGroupLtMaskARB) BuiltIn SubgroupLtMaskKHR
|
||||||
|
Decorate 59 RelaxedPrecision
|
||||||
|
Decorate 60 RelaxedPrecision
|
||||||
Decorate 61(gl_SMIDNV) BuiltIn SMIDNV
|
Decorate 61(gl_SMIDNV) BuiltIn SMIDNV
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
|
@ -49,8 +49,6 @@ spv.ext.RayGenSBTlayout.rgen
|
|||||||
MemberDecorate 36(block) 9 Offset 120
|
MemberDecorate 36(block) 9 Offset 120
|
||||||
MemberDecorate 36(block) 10 Offset 128
|
MemberDecorate 36(block) 10 Offset 128
|
||||||
Decorate 36(block) Block
|
Decorate 36(block) Block
|
||||||
Decorate 38 DescriptorSet 0
|
|
||||||
Decorate 38 Binding 0
|
|
||||||
Decorate 60(payload) Location 1
|
Decorate 60(payload) Location 1
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
|
@ -49,8 +49,6 @@ spv.ext.RayGenSBTlayout140.rgen
|
|||||||
MemberDecorate 36(block) 9 Offset 136
|
MemberDecorate 36(block) 9 Offset 136
|
||||||
MemberDecorate 36(block) 10 Offset 144
|
MemberDecorate 36(block) 10 Offset 144
|
||||||
Decorate 36(block) Block
|
Decorate 36(block) Block
|
||||||
Decorate 38 DescriptorSet 0
|
|
||||||
Decorate 38 Binding 0
|
|
||||||
Decorate 60(payload) Location 1
|
Decorate 60(payload) Location 1
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
|
@ -49,8 +49,6 @@ spv.ext.RayGenSBTlayout430.rgen
|
|||||||
MemberDecorate 36(block) 9 Offset 120
|
MemberDecorate 36(block) 9 Offset 120
|
||||||
MemberDecorate 36(block) 10 Offset 128
|
MemberDecorate 36(block) 10 Offset 128
|
||||||
Decorate 36(block) Block
|
Decorate 36(block) Block
|
||||||
Decorate 38 DescriptorSet 0
|
|
||||||
Decorate 38 Binding 0
|
|
||||||
Decorate 60(payload) Location 1
|
Decorate 60(payload) Location 1
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
|
@ -50,8 +50,6 @@ spv.ext.RayGenSBTlayoutscalar.rgen
|
|||||||
MemberDecorate 36(block) 9 Offset 96
|
MemberDecorate 36(block) 9 Offset 96
|
||||||
MemberDecorate 36(block) 10 Offset 104
|
MemberDecorate 36(block) 10 Offset 104
|
||||||
Decorate 36(block) Block
|
Decorate 36(block) Block
|
||||||
Decorate 38 DescriptorSet 0
|
|
||||||
Decorate 38 Binding 0
|
|
||||||
Decorate 60(payload) Location 1
|
Decorate 60(payload) Location 1
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
|
@ -34,8 +34,6 @@ spv.ext.RayGenShader.rgen
|
|||||||
MemberDecorate 38(block) 0 Offset 0
|
MemberDecorate 38(block) 0 Offset 0
|
||||||
MemberDecorate 38(block) 1 Offset 16
|
MemberDecorate 38(block) 1 Offset 16
|
||||||
Decorate 38(block) Block
|
Decorate 38(block) Block
|
||||||
Decorate 40 DescriptorSet 0
|
|
||||||
Decorate 40 Binding 3
|
|
||||||
Decorate 53(payload) Location 1
|
Decorate 53(payload) Location 1
|
||||||
Decorate 54(accEXT1) DescriptorSet 0
|
Decorate 54(accEXT1) DescriptorSet 0
|
||||||
Decorate 54(accEXT1) Binding 1
|
Decorate 54(accEXT1) Binding 1
|
||||||
|
@ -30,8 +30,6 @@ spv.ext.RayGenShader11.rgen
|
|||||||
MemberDecorate 37(block) 0 Offset 0
|
MemberDecorate 37(block) 0 Offset 0
|
||||||
MemberDecorate 37(block) 1 Offset 16
|
MemberDecorate 37(block) 1 Offset 16
|
||||||
Decorate 37(block) Block
|
Decorate 37(block) Block
|
||||||
Decorate 39 DescriptorSet 0
|
|
||||||
Decorate 39 Binding 1
|
|
||||||
Decorate 52(payload) Location 1
|
Decorate 52(payload) Location 1
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
|
@ -43,8 +43,6 @@ spv.ext.RayGenShaderArray.rgen
|
|||||||
MemberDecorate 36(block) 3 Offset 32
|
MemberDecorate 36(block) 3 Offset 32
|
||||||
MemberDecorate 36(block) 4 Offset 40
|
MemberDecorate 36(block) 4 Offset 40
|
||||||
Decorate 36(block) Block
|
Decorate 36(block) Block
|
||||||
Decorate 38 DescriptorSet 0
|
|
||||||
Decorate 38 Binding 2
|
|
||||||
Decorate 61(payload) Location 1
|
Decorate 61(payload) Location 1
|
||||||
Decorate 65(accEXT1) DescriptorSet 0
|
Decorate 65(accEXT1) DescriptorSet 0
|
||||||
Decorate 65(accEXT1) Binding 1
|
Decorate 65(accEXT1) Binding 1
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -1,7 +1,7 @@
|
|||||||
spv.int16.frag
|
spv.int16.frag
|
||||||
// Module Version 10000
|
// Module Version 10000
|
||||||
// Generated by (magic number): 8000a
|
// Generated by (magic number): 8000a
|
||||||
// Id's are bound by 535
|
// Id's are bound by 549
|
||||||
|
|
||||||
Capability Shader
|
Capability Shader
|
||||||
Capability Float16
|
Capability Float16
|
||||||
@ -48,53 +48,55 @@ spv.int16.frag
|
|||||||
Name 154 "i8v"
|
Name 154 "i8v"
|
||||||
Name 163 "u8v"
|
Name 163 "u8v"
|
||||||
Name 176 "bv"
|
Name 176 "bv"
|
||||||
Name 195 "u16v"
|
Name 196 "arr"
|
||||||
Name 200 "i16"
|
Name 204 "u16v"
|
||||||
Name 220 "i"
|
Name 209 "i16"
|
||||||
Name 227 "uv"
|
Name 229 "i"
|
||||||
Name 243 "i64"
|
Name 236 "uv"
|
||||||
Name 281 "b"
|
Name 252 "i64"
|
||||||
Name 343 "i16v"
|
Name 290 "b"
|
||||||
Name 346 "i16"
|
Name 353 "f"
|
||||||
Name 356 "u16v"
|
Name 357 "i16v"
|
||||||
Name 358 "u16"
|
Name 360 "i16"
|
||||||
Name 428 "i32"
|
Name 370 "u16v"
|
||||||
Name 431 "i64"
|
Name 372 "u16"
|
||||||
Name 434 "i16v4"
|
Name 442 "i32"
|
||||||
Name 437 "u32"
|
Name 445 "i64"
|
||||||
Name 438 "u16v2"
|
Name 448 "i16v4"
|
||||||
Name 442 "u64"
|
Name 451 "u32"
|
||||||
Name 445 "u16v4"
|
Name 452 "u16v2"
|
||||||
Name 457 "bv"
|
Name 456 "u64"
|
||||||
Name 530 "Block"
|
Name 459 "u16v4"
|
||||||
MemberName 530(Block) 0 "i16"
|
Name 471 "bv"
|
||||||
MemberName 530(Block) 1 "i16v2"
|
Name 544 "Block"
|
||||||
MemberName 530(Block) 2 "i16v3"
|
MemberName 544(Block) 0 "i16"
|
||||||
MemberName 530(Block) 3 "i16v4"
|
MemberName 544(Block) 1 "i16v2"
|
||||||
MemberName 530(Block) 4 "u16"
|
MemberName 544(Block) 2 "i16v3"
|
||||||
MemberName 530(Block) 5 "u16v2"
|
MemberName 544(Block) 3 "i16v4"
|
||||||
MemberName 530(Block) 6 "u16v3"
|
MemberName 544(Block) 4 "u16"
|
||||||
MemberName 530(Block) 7 "u16v4"
|
MemberName 544(Block) 5 "u16v2"
|
||||||
Name 532 "block"
|
MemberName 544(Block) 6 "u16v3"
|
||||||
Name 533 "si16"
|
MemberName 544(Block) 7 "u16v4"
|
||||||
Name 534 "su16"
|
Name 546 "block"
|
||||||
|
Name 547 "si16"
|
||||||
|
Name 548 "su16"
|
||||||
MemberDecorate 24(Uniforms) 0 Offset 0
|
MemberDecorate 24(Uniforms) 0 Offset 0
|
||||||
Decorate 24(Uniforms) Block
|
Decorate 24(Uniforms) Block
|
||||||
Decorate 26 DescriptorSet 0
|
Decorate 26 DescriptorSet 0
|
||||||
Decorate 26 Binding 0
|
Decorate 26 Binding 0
|
||||||
MemberDecorate 530(Block) 0 Offset 0
|
MemberDecorate 544(Block) 0 Offset 0
|
||||||
MemberDecorate 530(Block) 1 Offset 4
|
MemberDecorate 544(Block) 1 Offset 4
|
||||||
MemberDecorate 530(Block) 2 Offset 8
|
MemberDecorate 544(Block) 2 Offset 8
|
||||||
MemberDecorate 530(Block) 3 Offset 16
|
MemberDecorate 544(Block) 3 Offset 16
|
||||||
MemberDecorate 530(Block) 4 Offset 24
|
MemberDecorate 544(Block) 4 Offset 24
|
||||||
MemberDecorate 530(Block) 5 Offset 28
|
MemberDecorate 544(Block) 5 Offset 28
|
||||||
MemberDecorate 530(Block) 6 Offset 32
|
MemberDecorate 544(Block) 6 Offset 32
|
||||||
MemberDecorate 530(Block) 7 Offset 40
|
MemberDecorate 544(Block) 7 Offset 40
|
||||||
Decorate 530(Block) Block
|
Decorate 544(Block) Block
|
||||||
Decorate 532(block) DescriptorSet 0
|
Decorate 546(block) DescriptorSet 0
|
||||||
Decorate 532(block) Binding 1
|
Decorate 546(block) Binding 1
|
||||||
Decorate 533(si16) SpecId 100
|
Decorate 547(si16) SpecId 100
|
||||||
Decorate 534(su16) SpecId 101
|
Decorate 548(su16) SpecId 101
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
14: TypeInt 16 1
|
14: TypeInt 16 1
|
||||||
@ -160,37 +162,46 @@ spv.int16.frag
|
|||||||
185: 36(int16_t) Constant 1
|
185: 36(int16_t) Constant 1
|
||||||
186: 57(i16vec2) ConstantComposite 184 184
|
186: 57(i16vec2) ConstantComposite 184 184
|
||||||
187: 57(i16vec2) ConstantComposite 185 185
|
187: 57(i16vec2) ConstantComposite 185 185
|
||||||
193: TypeVector 36(int16_t) 3
|
193: 17(int) Constant 4
|
||||||
194: TypePointer Function 193(i16vec3)
|
194: TypeArray 97(float) 193
|
||||||
197: TypeVector 14(int16_t) 3
|
195: TypePointer Function 194
|
||||||
219: TypePointer Function 27(int)
|
197: 97(float) Constant 1065353216
|
||||||
225: TypeVector 17(int) 3
|
198: 97(float) Constant 1073741824
|
||||||
226: TypePointer Function 225(ivec3)
|
199: 97(float) Constant 1077936128
|
||||||
242: TypePointer Function 71(int64_t)
|
200: 97(float) Constant 1082130432
|
||||||
264: 17(int) Constant 1
|
201: 194 ConstantComposite 197 198 199 200
|
||||||
270: 17(int) Constant 2
|
202: TypeVector 36(int16_t) 3
|
||||||
276: TypeVector 27(int) 3
|
203: TypePointer Function 202(i16vec3)
|
||||||
280: TypePointer Function 173(bool)
|
206: TypeVector 14(int16_t) 3
|
||||||
282: 17(int) Constant 0
|
228: TypePointer Function 27(int)
|
||||||
296: TypePointer Function 17(int)
|
234: TypeVector 17(int) 3
|
||||||
354: 52(i16vec2) ConstantComposite 21 21
|
235: TypePointer Function 234(ivec3)
|
||||||
363:193(i16vec3) ConstantComposite 184 184 184
|
251: TypePointer Function 71(int64_t)
|
||||||
405: 173(bool) ConstantTrue
|
273: 17(int) Constant 1
|
||||||
412: 173(bool) ConstantFalse
|
279: 17(int) Constant 2
|
||||||
413: 174(bvec2) ConstantComposite 412 412
|
285: TypeVector 27(int) 3
|
||||||
425: TypeVector 173(bool) 3
|
289: TypePointer Function 173(bool)
|
||||||
426: 425(bvec3) ConstantComposite 412 412 412
|
291: 17(int) Constant 0
|
||||||
432: TypeVector 14(int16_t) 4
|
305: TypePointer Function 17(int)
|
||||||
433: TypePointer Function 432(i16vec4)
|
352: TypePointer Function 97(float)
|
||||||
441: TypePointer Function 77(int64_t)
|
368: 52(i16vec2) ConstantComposite 21 21
|
||||||
443: TypeVector 36(int16_t) 4
|
377:202(i16vec3) ConstantComposite 184 184 184
|
||||||
444: TypePointer Function 443(i16vec4)
|
419: 173(bool) ConstantTrue
|
||||||
456: TypePointer Function 425(bvec3)
|
426: 173(bool) ConstantFalse
|
||||||
530(Block): TypeStruct 14(int16_t) 52(i16vec2) 197(i16vec3) 432(i16vec4) 36(int16_t) 57(i16vec2) 193(i16vec3) 443(i16vec4)
|
427: 174(bvec2) ConstantComposite 426 426
|
||||||
531: TypePointer Uniform 530(Block)
|
439: TypeVector 173(bool) 3
|
||||||
532(block): 531(ptr) Variable Uniform
|
440: 439(bvec3) ConstantComposite 426 426 426
|
||||||
533(si16): 14(int16_t) SpecConstant 4294967286
|
446: TypeVector 14(int16_t) 4
|
||||||
534(su16): 36(int16_t) SpecConstant 20
|
447: TypePointer Function 446(i16vec4)
|
||||||
|
455: TypePointer Function 77(int64_t)
|
||||||
|
457: TypeVector 36(int16_t) 4
|
||||||
|
458: TypePointer Function 457(i16vec4)
|
||||||
|
470: TypePointer Function 439(bvec3)
|
||||||
|
544(Block): TypeStruct 14(int16_t) 52(i16vec2) 206(i16vec3) 446(i16vec4) 36(int16_t) 57(i16vec2) 202(i16vec3) 457(i16vec4)
|
||||||
|
545: TypePointer Uniform 544(Block)
|
||||||
|
546(block): 545(ptr) Variable Uniform
|
||||||
|
547(si16): 14(int16_t) SpecConstant 4294967286
|
||||||
|
548(su16): 36(int16_t) SpecConstant 20
|
||||||
4(main): 2 Function None 3
|
4(main): 2 Function None 3
|
||||||
5: Label
|
5: Label
|
||||||
Return
|
Return
|
||||||
@ -364,397 +375,404 @@ spv.int16.frag
|
|||||||
FunctionEnd
|
FunctionEnd
|
||||||
10(operators(): 2 Function None 3
|
10(operators(): 2 Function None 3
|
||||||
11: Label
|
11: Label
|
||||||
195(u16v): 194(ptr) Variable Function
|
196(arr): 195(ptr) Variable Function
|
||||||
200(i16): 15(ptr) Variable Function
|
204(u16v): 203(ptr) Variable Function
|
||||||
220(i): 219(ptr) Variable Function
|
209(i16): 15(ptr) Variable Function
|
||||||
227(uv): 226(ptr) Variable Function
|
229(i): 228(ptr) Variable Function
|
||||||
243(i64): 242(ptr) Variable Function
|
236(uv): 235(ptr) Variable Function
|
||||||
281(b): 280(ptr) Variable Function
|
252(i64): 251(ptr) Variable Function
|
||||||
196:193(i16vec3) Load 195(u16v)
|
290(b): 289(ptr) Variable Function
|
||||||
198:197(i16vec3) CompositeConstruct 179 179 179
|
353(f): 352(ptr) Variable Function
|
||||||
199:193(i16vec3) IAdd 196 198
|
Store 196(arr) 201
|
||||||
Store 195(u16v) 199
|
205:202(i16vec3) Load 204(u16v)
|
||||||
201: 14(int16_t) Load 200(i16)
|
207:206(i16vec3) CompositeConstruct 179 179 179
|
||||||
202: 14(int16_t) ISub 201 179
|
208:202(i16vec3) IAdd 205 207
|
||||||
Store 200(i16) 202
|
Store 204(u16v) 208
|
||||||
203: 14(int16_t) Load 200(i16)
|
210: 14(int16_t) Load 209(i16)
|
||||||
204: 14(int16_t) IAdd 203 179
|
211: 14(int16_t) ISub 210 179
|
||||||
Store 200(i16) 204
|
Store 209(i16) 211
|
||||||
205:193(i16vec3) Load 195(u16v)
|
212: 14(int16_t) Load 209(i16)
|
||||||
206:197(i16vec3) CompositeConstruct 179 179 179
|
213: 14(int16_t) IAdd 212 179
|
||||||
207:193(i16vec3) ISub 205 206
|
Store 209(i16) 213
|
||||||
Store 195(u16v) 207
|
214:202(i16vec3) Load 204(u16v)
|
||||||
208:193(i16vec3) Load 195(u16v)
|
215:206(i16vec3) CompositeConstruct 179 179 179
|
||||||
209:193(i16vec3) Not 208
|
216:202(i16vec3) ISub 214 215
|
||||||
Store 195(u16v) 209
|
Store 204(u16v) 216
|
||||||
210: 14(int16_t) Load 200(i16)
|
217:202(i16vec3) Load 204(u16v)
|
||||||
Store 200(i16) 210
|
218:202(i16vec3) Not 217
|
||||||
211:193(i16vec3) Load 195(u16v)
|
Store 204(u16v) 218
|
||||||
212:193(i16vec3) SNegate 211
|
219: 14(int16_t) Load 209(i16)
|
||||||
Store 195(u16v) 212
|
Store 209(i16) 219
|
||||||
213: 14(int16_t) Load 200(i16)
|
220:202(i16vec3) Load 204(u16v)
|
||||||
214: 14(int16_t) Load 200(i16)
|
221:202(i16vec3) SNegate 220
|
||||||
215: 14(int16_t) IAdd 214 213
|
Store 204(u16v) 221
|
||||||
Store 200(i16) 215
|
222: 14(int16_t) Load 209(i16)
|
||||||
216:193(i16vec3) Load 195(u16v)
|
223: 14(int16_t) Load 209(i16)
|
||||||
217:193(i16vec3) Load 195(u16v)
|
224: 14(int16_t) IAdd 223 222
|
||||||
218:193(i16vec3) ISub 217 216
|
Store 209(i16) 224
|
||||||
Store 195(u16v) 218
|
225:202(i16vec3) Load 204(u16v)
|
||||||
221: 14(int16_t) Load 200(i16)
|
226:202(i16vec3) Load 204(u16v)
|
||||||
222: 27(int) SConvert 221
|
227:202(i16vec3) ISub 226 225
|
||||||
223: 27(int) Load 220(i)
|
Store 204(u16v) 227
|
||||||
224: 27(int) IMul 223 222
|
230: 14(int16_t) Load 209(i16)
|
||||||
Store 220(i) 224
|
231: 27(int) SConvert 230
|
||||||
228:193(i16vec3) Load 195(u16v)
|
232: 27(int) Load 229(i)
|
||||||
229: 225(ivec3) UConvert 228
|
233: 27(int) IMul 232 231
|
||||||
230: 225(ivec3) Load 227(uv)
|
Store 229(i) 233
|
||||||
231: 225(ivec3) UDiv 230 229
|
237:202(i16vec3) Load 204(u16v)
|
||||||
Store 227(uv) 231
|
238: 234(ivec3) UConvert 237
|
||||||
232: 14(int16_t) Load 200(i16)
|
239: 234(ivec3) Load 236(uv)
|
||||||
233: 27(int) SConvert 232
|
240: 234(ivec3) UDiv 239 238
|
||||||
234: 17(int) Bitcast 233
|
Store 236(uv) 240
|
||||||
235: 225(ivec3) Load 227(uv)
|
241: 14(int16_t) Load 209(i16)
|
||||||
236: 225(ivec3) CompositeConstruct 234 234 234
|
242: 27(int) SConvert 241
|
||||||
237: 225(ivec3) UMod 235 236
|
243: 17(int) Bitcast 242
|
||||||
Store 227(uv) 237
|
244: 234(ivec3) Load 236(uv)
|
||||||
238:193(i16vec3) Load 195(u16v)
|
245: 234(ivec3) CompositeConstruct 243 243 243
|
||||||
239: 225(ivec3) UConvert 238
|
246: 234(ivec3) UMod 244 245
|
||||||
240: 225(ivec3) Load 227(uv)
|
Store 236(uv) 246
|
||||||
241: 225(ivec3) IAdd 239 240
|
247:202(i16vec3) Load 204(u16v)
|
||||||
Store 227(uv) 241
|
248: 234(ivec3) UConvert 247
|
||||||
244: 14(int16_t) Load 200(i16)
|
249: 234(ivec3) Load 236(uv)
|
||||||
245: 71(int64_t) SConvert 244
|
250: 234(ivec3) IAdd 248 249
|
||||||
246: 71(int64_t) Load 243(i64)
|
Store 236(uv) 250
|
||||||
247: 71(int64_t) ISub 245 246
|
253: 14(int16_t) Load 209(i16)
|
||||||
Store 243(i64) 247
|
254: 71(int64_t) SConvert 253
|
||||||
248:193(i16vec3) Load 195(u16v)
|
255: 71(int64_t) Load 252(i64)
|
||||||
249: 225(ivec3) UConvert 248
|
256: 71(int64_t) ISub 254 255
|
||||||
250: 225(ivec3) Load 227(uv)
|
Store 252(i64) 256
|
||||||
251: 225(ivec3) IMul 249 250
|
257:202(i16vec3) Load 204(u16v)
|
||||||
Store 227(uv) 251
|
258: 234(ivec3) UConvert 257
|
||||||
252: 14(int16_t) Load 200(i16)
|
259: 234(ivec3) Load 236(uv)
|
||||||
253: 71(int64_t) SConvert 252
|
260: 234(ivec3) IMul 258 259
|
||||||
254: 71(int64_t) Load 243(i64)
|
Store 236(uv) 260
|
||||||
255: 71(int64_t) IMul 253 254
|
261: 14(int16_t) Load 209(i16)
|
||||||
Store 243(i64) 255
|
262: 71(int64_t) SConvert 261
|
||||||
256: 14(int16_t) Load 200(i16)
|
263: 71(int64_t) Load 252(i64)
|
||||||
257: 27(int) SConvert 256
|
264: 71(int64_t) IMul 262 263
|
||||||
258: 27(int) Load 220(i)
|
Store 252(i64) 264
|
||||||
259: 27(int) SMod 257 258
|
265: 14(int16_t) Load 209(i16)
|
||||||
Store 220(i) 259
|
266: 27(int) SConvert 265
|
||||||
260: 14(int16_t) Load 200(i16)
|
267: 27(int) Load 229(i)
|
||||||
261:193(i16vec3) Load 195(u16v)
|
268: 27(int) SMod 266 267
|
||||||
262:197(i16vec3) CompositeConstruct 260 260 260
|
Store 229(i) 268
|
||||||
263:193(i16vec3) ShiftLeftLogical 261 262
|
269: 14(int16_t) Load 209(i16)
|
||||||
Store 195(u16v) 263
|
270:202(i16vec3) Load 204(u16v)
|
||||||
265: 37(ptr) AccessChain 195(u16v) 264
|
271:206(i16vec3) CompositeConstruct 269 269 269
|
||||||
266: 36(int16_t) Load 265
|
272:202(i16vec3) ShiftLeftLogical 270 271
|
||||||
267: 14(int16_t) Load 200(i16)
|
Store 204(u16v) 272
|
||||||
268: 14(int16_t) ShiftRightArithmetic 267 266
|
274: 37(ptr) AccessChain 204(u16v) 273
|
||||||
Store 200(i16) 268
|
275: 36(int16_t) Load 274
|
||||||
269: 14(int16_t) Load 200(i16)
|
276: 14(int16_t) Load 209(i16)
|
||||||
271: 37(ptr) AccessChain 195(u16v) 270
|
277: 14(int16_t) ShiftRightArithmetic 276 275
|
||||||
272: 36(int16_t) Load 271
|
Store 209(i16) 277
|
||||||
273: 14(int16_t) ShiftLeftLogical 269 272
|
278: 14(int16_t) Load 209(i16)
|
||||||
Store 200(i16) 273
|
280: 37(ptr) AccessChain 204(u16v) 279
|
||||||
274:193(i16vec3) Load 195(u16v)
|
281: 36(int16_t) Load 280
|
||||||
275: 27(int) Load 220(i)
|
282: 14(int16_t) ShiftLeftLogical 278 281
|
||||||
277: 276(ivec3) CompositeConstruct 275 275 275
|
Store 209(i16) 282
|
||||||
278:193(i16vec3) ShiftLeftLogical 274 277
|
283:202(i16vec3) Load 204(u16v)
|
||||||
279: 225(ivec3) UConvert 278
|
284: 27(int) Load 229(i)
|
||||||
Store 227(uv) 279
|
286: 285(ivec3) CompositeConstruct 284 284 284
|
||||||
283: 37(ptr) AccessChain 195(u16v) 282
|
287:202(i16vec3) ShiftLeftLogical 283 286
|
||||||
284: 36(int16_t) Load 283
|
288: 234(ivec3) UConvert 287
|
||||||
285: 14(int16_t) Load 200(i16)
|
Store 236(uv) 288
|
||||||
286: 36(int16_t) Bitcast 285
|
292: 37(ptr) AccessChain 204(u16v) 291
|
||||||
287: 173(bool) INotEqual 284 286
|
293: 36(int16_t) Load 292
|
||||||
Store 281(b) 287
|
294: 14(int16_t) Load 209(i16)
|
||||||
288: 14(int16_t) Load 200(i16)
|
295: 36(int16_t) Bitcast 294
|
||||||
289: 36(int16_t) Bitcast 288
|
296: 173(bool) INotEqual 293 295
|
||||||
290: 37(ptr) AccessChain 195(u16v) 282
|
Store 290(b) 296
|
||||||
291: 36(int16_t) Load 290
|
297: 14(int16_t) Load 209(i16)
|
||||||
292: 173(bool) IEqual 289 291
|
298: 36(int16_t) Bitcast 297
|
||||||
Store 281(b) 292
|
299: 37(ptr) AccessChain 204(u16v) 291
|
||||||
293: 37(ptr) AccessChain 195(u16v) 282
|
300: 36(int16_t) Load 299
|
||||||
294: 36(int16_t) Load 293
|
301: 173(bool) IEqual 298 300
|
||||||
295: 17(int) UConvert 294
|
Store 290(b) 301
|
||||||
297: 296(ptr) AccessChain 227(uv) 264
|
302: 37(ptr) AccessChain 204(u16v) 291
|
||||||
298: 17(int) Load 297
|
303: 36(int16_t) Load 302
|
||||||
299: 173(bool) UGreaterThan 295 298
|
304: 17(int) UConvert 303
|
||||||
Store 281(b) 299
|
306: 305(ptr) AccessChain 236(uv) 273
|
||||||
300: 14(int16_t) Load 200(i16)
|
307: 17(int) Load 306
|
||||||
301: 27(int) SConvert 300
|
308: 173(bool) UGreaterThan 304 307
|
||||||
302: 27(int) Load 220(i)
|
Store 290(b) 308
|
||||||
303: 173(bool) SLessThan 301 302
|
309: 14(int16_t) Load 209(i16)
|
||||||
Store 281(b) 303
|
310: 27(int) SConvert 309
|
||||||
304: 37(ptr) AccessChain 195(u16v) 264
|
311: 27(int) Load 229(i)
|
||||||
305: 36(int16_t) Load 304
|
312: 173(bool) SLessThan 310 311
|
||||||
306: 17(int) UConvert 305
|
Store 290(b) 312
|
||||||
307: 296(ptr) AccessChain 227(uv) 282
|
313: 37(ptr) AccessChain 204(u16v) 273
|
||||||
308: 17(int) Load 307
|
314: 36(int16_t) Load 313
|
||||||
309: 173(bool) UGreaterThanEqual 306 308
|
315: 17(int) UConvert 314
|
||||||
Store 281(b) 309
|
316: 305(ptr) AccessChain 236(uv) 291
|
||||||
310: 14(int16_t) Load 200(i16)
|
317: 17(int) Load 316
|
||||||
311: 27(int) SConvert 310
|
318: 173(bool) UGreaterThanEqual 315 317
|
||||||
312: 27(int) Load 220(i)
|
Store 290(b) 318
|
||||||
313: 173(bool) SLessThanEqual 311 312
|
319: 14(int16_t) Load 209(i16)
|
||||||
Store 281(b) 313
|
320: 27(int) SConvert 319
|
||||||
314: 14(int16_t) Load 200(i16)
|
321: 27(int) Load 229(i)
|
||||||
315: 27(int) SConvert 314
|
322: 173(bool) SLessThanEqual 320 321
|
||||||
316: 17(int) Bitcast 315
|
Store 290(b) 322
|
||||||
317: 225(ivec3) Load 227(uv)
|
323: 14(int16_t) Load 209(i16)
|
||||||
318: 225(ivec3) CompositeConstruct 316 316 316
|
324: 27(int) SConvert 323
|
||||||
319: 225(ivec3) BitwiseOr 317 318
|
325: 17(int) Bitcast 324
|
||||||
Store 227(uv) 319
|
326: 234(ivec3) Load 236(uv)
|
||||||
320: 14(int16_t) Load 200(i16)
|
327: 234(ivec3) CompositeConstruct 325 325 325
|
||||||
321: 27(int) SConvert 320
|
328: 234(ivec3) BitwiseOr 326 327
|
||||||
322: 27(int) Load 220(i)
|
Store 236(uv) 328
|
||||||
323: 27(int) BitwiseOr 321 322
|
329: 14(int16_t) Load 209(i16)
|
||||||
Store 220(i) 323
|
330: 27(int) SConvert 329
|
||||||
324: 14(int16_t) Load 200(i16)
|
331: 27(int) Load 229(i)
|
||||||
325: 71(int64_t) SConvert 324
|
332: 27(int) BitwiseOr 330 331
|
||||||
326: 71(int64_t) Load 243(i64)
|
Store 229(i) 332
|
||||||
327: 71(int64_t) BitwiseAnd 326 325
|
333: 14(int16_t) Load 209(i16)
|
||||||
Store 243(i64) 327
|
334: 71(int64_t) SConvert 333
|
||||||
328:193(i16vec3) Load 195(u16v)
|
335: 71(int64_t) Load 252(i64)
|
||||||
329: 225(ivec3) UConvert 328
|
336: 71(int64_t) BitwiseAnd 335 334
|
||||||
330: 225(ivec3) Load 227(uv)
|
Store 252(i64) 336
|
||||||
331: 225(ivec3) BitwiseAnd 329 330
|
337:202(i16vec3) Load 204(u16v)
|
||||||
Store 227(uv) 331
|
338: 234(ivec3) UConvert 337
|
||||||
332: 14(int16_t) Load 200(i16)
|
339: 234(ivec3) Load 236(uv)
|
||||||
333: 27(int) SConvert 332
|
340: 234(ivec3) BitwiseAnd 338 339
|
||||||
334: 17(int) Bitcast 333
|
Store 236(uv) 340
|
||||||
335: 225(ivec3) Load 227(uv)
|
341: 14(int16_t) Load 209(i16)
|
||||||
336: 225(ivec3) CompositeConstruct 334 334 334
|
342: 27(int) SConvert 341
|
||||||
337: 225(ivec3) BitwiseXor 335 336
|
343: 17(int) Bitcast 342
|
||||||
Store 227(uv) 337
|
344: 234(ivec3) Load 236(uv)
|
||||||
338:193(i16vec3) Load 195(u16v)
|
345: 234(ivec3) CompositeConstruct 343 343 343
|
||||||
339: 14(int16_t) Load 200(i16)
|
346: 234(ivec3) BitwiseXor 344 345
|
||||||
340: 36(int16_t) Bitcast 339
|
Store 236(uv) 346
|
||||||
341:193(i16vec3) CompositeConstruct 340 340 340
|
347:202(i16vec3) Load 204(u16v)
|
||||||
342:193(i16vec3) BitwiseXor 338 341
|
348: 14(int16_t) Load 209(i16)
|
||||||
Store 195(u16v) 342
|
349: 36(int16_t) Bitcast 348
|
||||||
|
350:202(i16vec3) CompositeConstruct 349 349 349
|
||||||
|
351:202(i16vec3) BitwiseXor 347 350
|
||||||
|
Store 204(u16v) 351
|
||||||
|
354: 14(int16_t) Load 209(i16)
|
||||||
|
355: 352(ptr) AccessChain 196(arr) 354
|
||||||
|
356: 97(float) Load 355
|
||||||
|
Store 353(f) 356
|
||||||
Return
|
Return
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
12(builtinFuncs(): 2 Function None 3
|
12(builtinFuncs(): 2 Function None 3
|
||||||
13: Label
|
13: Label
|
||||||
343(i16v): 53(ptr) Variable Function
|
357(i16v): 53(ptr) Variable Function
|
||||||
346(i16): 15(ptr) Variable Function
|
360(i16): 15(ptr) Variable Function
|
||||||
356(u16v): 194(ptr) Variable Function
|
370(u16v): 203(ptr) Variable Function
|
||||||
358(u16): 37(ptr) Variable Function
|
372(u16): 37(ptr) Variable Function
|
||||||
428(i32): 219(ptr) Variable Function
|
442(i32): 228(ptr) Variable Function
|
||||||
431(i64): 242(ptr) Variable Function
|
445(i64): 251(ptr) Variable Function
|
||||||
434(i16v4): 433(ptr) Variable Function
|
448(i16v4): 447(ptr) Variable Function
|
||||||
437(u32): 296(ptr) Variable Function
|
451(u32): 305(ptr) Variable Function
|
||||||
438(u16v2): 58(ptr) Variable Function
|
452(u16v2): 58(ptr) Variable Function
|
||||||
442(u64): 441(ptr) Variable Function
|
456(u64): 455(ptr) Variable Function
|
||||||
445(u16v4): 444(ptr) Variable Function
|
459(u16v4): 458(ptr) Variable Function
|
||||||
457(bv): 456(ptr) Variable Function
|
471(bv): 470(ptr) Variable Function
|
||||||
344: 52(i16vec2) Load 343(i16v)
|
358: 52(i16vec2) Load 357(i16v)
|
||||||
345: 52(i16vec2) ExtInst 1(GLSL.std.450) 5(SAbs) 344
|
359: 52(i16vec2) ExtInst 1(GLSL.std.450) 5(SAbs) 358
|
||||||
Store 343(i16v) 345
|
Store 357(i16v) 359
|
||||||
347: 14(int16_t) Load 346(i16)
|
361: 14(int16_t) Load 360(i16)
|
||||||
348: 14(int16_t) ExtInst 1(GLSL.std.450) 7(SSign) 347
|
362: 14(int16_t) ExtInst 1(GLSL.std.450) 7(SSign) 361
|
||||||
Store 346(i16) 348
|
Store 360(i16) 362
|
||||||
349: 52(i16vec2) Load 343(i16v)
|
363: 52(i16vec2) Load 357(i16v)
|
||||||
350: 14(int16_t) Load 346(i16)
|
364: 14(int16_t) Load 360(i16)
|
||||||
351: 52(i16vec2) CompositeConstruct 350 350
|
365: 52(i16vec2) CompositeConstruct 364 364
|
||||||
352: 52(i16vec2) ExtInst 1(GLSL.std.450) 39(SMin) 349 351
|
366: 52(i16vec2) ExtInst 1(GLSL.std.450) 39(SMin) 363 365
|
||||||
Store 343(i16v) 352
|
Store 357(i16v) 366
|
||||||
353: 52(i16vec2) Load 343(i16v)
|
367: 52(i16vec2) Load 357(i16v)
|
||||||
355: 52(i16vec2) ExtInst 1(GLSL.std.450) 39(SMin) 353 354
|
369: 52(i16vec2) ExtInst 1(GLSL.std.450) 39(SMin) 367 368
|
||||||
Store 343(i16v) 355
|
Store 357(i16v) 369
|
||||||
357:193(i16vec3) Load 356(u16v)
|
371:202(i16vec3) Load 370(u16v)
|
||||||
359: 36(int16_t) Load 358(u16)
|
373: 36(int16_t) Load 372(u16)
|
||||||
360:193(i16vec3) CompositeConstruct 359 359 359
|
374:202(i16vec3) CompositeConstruct 373 373 373
|
||||||
361:193(i16vec3) ExtInst 1(GLSL.std.450) 38(UMin) 357 360
|
375:202(i16vec3) ExtInst 1(GLSL.std.450) 38(UMin) 371 374
|
||||||
Store 356(u16v) 361
|
Store 370(u16v) 375
|
||||||
362:193(i16vec3) Load 356(u16v)
|
376:202(i16vec3) Load 370(u16v)
|
||||||
364:193(i16vec3) ExtInst 1(GLSL.std.450) 38(UMin) 362 363
|
378:202(i16vec3) ExtInst 1(GLSL.std.450) 38(UMin) 376 377
|
||||||
Store 356(u16v) 364
|
Store 370(u16v) 378
|
||||||
365: 52(i16vec2) Load 343(i16v)
|
379: 52(i16vec2) Load 357(i16v)
|
||||||
366: 14(int16_t) Load 346(i16)
|
380: 14(int16_t) Load 360(i16)
|
||||||
367: 52(i16vec2) CompositeConstruct 366 366
|
381: 52(i16vec2) CompositeConstruct 380 380
|
||||||
368: 52(i16vec2) ExtInst 1(GLSL.std.450) 42(SMax) 365 367
|
382: 52(i16vec2) ExtInst 1(GLSL.std.450) 42(SMax) 379 381
|
||||||
Store 343(i16v) 368
|
Store 357(i16v) 382
|
||||||
369: 52(i16vec2) Load 343(i16v)
|
383: 52(i16vec2) Load 357(i16v)
|
||||||
370: 52(i16vec2) ExtInst 1(GLSL.std.450) 42(SMax) 369 354
|
384: 52(i16vec2) ExtInst 1(GLSL.std.450) 42(SMax) 383 368
|
||||||
Store 343(i16v) 370
|
Store 357(i16v) 384
|
||||||
371:193(i16vec3) Load 356(u16v)
|
385:202(i16vec3) Load 370(u16v)
|
||||||
372: 36(int16_t) Load 358(u16)
|
386: 36(int16_t) Load 372(u16)
|
||||||
373:193(i16vec3) CompositeConstruct 372 372 372
|
387:202(i16vec3) CompositeConstruct 386 386 386
|
||||||
374:193(i16vec3) ExtInst 1(GLSL.std.450) 41(UMax) 371 373
|
388:202(i16vec3) ExtInst 1(GLSL.std.450) 41(UMax) 385 387
|
||||||
Store 356(u16v) 374
|
Store 370(u16v) 388
|
||||||
375:193(i16vec3) Load 356(u16v)
|
389:202(i16vec3) Load 370(u16v)
|
||||||
376:193(i16vec3) ExtInst 1(GLSL.std.450) 41(UMax) 375 363
|
390:202(i16vec3) ExtInst 1(GLSL.std.450) 41(UMax) 389 377
|
||||||
Store 356(u16v) 376
|
Store 370(u16v) 390
|
||||||
377: 52(i16vec2) Load 343(i16v)
|
391: 52(i16vec2) Load 357(i16v)
|
||||||
378: 14(int16_t) Load 346(i16)
|
392: 14(int16_t) Load 360(i16)
|
||||||
379: 14(int16_t) SNegate 378
|
393: 14(int16_t) SNegate 392
|
||||||
380: 14(int16_t) Load 346(i16)
|
394: 14(int16_t) Load 360(i16)
|
||||||
381: 52(i16vec2) CompositeConstruct 379 379
|
395: 52(i16vec2) CompositeConstruct 393 393
|
||||||
382: 52(i16vec2) CompositeConstruct 380 380
|
396: 52(i16vec2) CompositeConstruct 394 394
|
||||||
383: 52(i16vec2) ExtInst 1(GLSL.std.450) 45(SClamp) 377 381 382
|
397: 52(i16vec2) ExtInst 1(GLSL.std.450) 45(SClamp) 391 395 396
|
||||||
Store 343(i16v) 383
|
Store 357(i16v) 397
|
||||||
384: 52(i16vec2) Load 343(i16v)
|
398: 52(i16vec2) Load 357(i16v)
|
||||||
385: 52(i16vec2) Load 343(i16v)
|
399: 52(i16vec2) Load 357(i16v)
|
||||||
386: 52(i16vec2) SNegate 385
|
400: 52(i16vec2) SNegate 399
|
||||||
387: 52(i16vec2) Load 343(i16v)
|
401: 52(i16vec2) Load 357(i16v)
|
||||||
388: 52(i16vec2) ExtInst 1(GLSL.std.450) 45(SClamp) 384 386 387
|
402: 52(i16vec2) ExtInst 1(GLSL.std.450) 45(SClamp) 398 400 401
|
||||||
Store 343(i16v) 388
|
Store 357(i16v) 402
|
||||||
389:193(i16vec3) Load 356(u16v)
|
403:202(i16vec3) Load 370(u16v)
|
||||||
390: 36(int16_t) Load 358(u16)
|
404: 36(int16_t) Load 372(u16)
|
||||||
391: 36(int16_t) SNegate 390
|
405: 36(int16_t) SNegate 404
|
||||||
392: 36(int16_t) Load 358(u16)
|
406: 36(int16_t) Load 372(u16)
|
||||||
393:193(i16vec3) CompositeConstruct 391 391 391
|
407:202(i16vec3) CompositeConstruct 405 405 405
|
||||||
394:193(i16vec3) CompositeConstruct 392 392 392
|
408:202(i16vec3) CompositeConstruct 406 406 406
|
||||||
395:193(i16vec3) ExtInst 1(GLSL.std.450) 44(UClamp) 389 393 394
|
409:202(i16vec3) ExtInst 1(GLSL.std.450) 44(UClamp) 403 407 408
|
||||||
Store 356(u16v) 395
|
Store 370(u16v) 409
|
||||||
396:193(i16vec3) Load 356(u16v)
|
410:202(i16vec3) Load 370(u16v)
|
||||||
397:193(i16vec3) Load 356(u16v)
|
411:202(i16vec3) Load 370(u16v)
|
||||||
398:193(i16vec3) SNegate 397
|
412:202(i16vec3) SNegate 411
|
||||||
399:193(i16vec3) Load 356(u16v)
|
413:202(i16vec3) Load 370(u16v)
|
||||||
400:193(i16vec3) ExtInst 1(GLSL.std.450) 44(UClamp) 396 398 399
|
414:202(i16vec3) ExtInst 1(GLSL.std.450) 44(UClamp) 410 412 413
|
||||||
Store 356(u16v) 400
|
Store 370(u16v) 414
|
||||||
401: 15(ptr) AccessChain 343(i16v) 282
|
415: 15(ptr) AccessChain 357(i16v) 291
|
||||||
402: 14(int16_t) Load 401
|
416: 14(int16_t) Load 415
|
||||||
403: 15(ptr) AccessChain 343(i16v) 264
|
417: 15(ptr) AccessChain 357(i16v) 273
|
||||||
404: 14(int16_t) Load 403
|
418: 14(int16_t) Load 417
|
||||||
406: 14(int16_t) Select 405 404 402
|
420: 14(int16_t) Select 419 418 416
|
||||||
Store 346(i16) 406
|
Store 360(i16) 420
|
||||||
407: 14(int16_t) Load 346(i16)
|
421: 14(int16_t) Load 360(i16)
|
||||||
408: 52(i16vec2) CompositeConstruct 407 407
|
422: 52(i16vec2) CompositeConstruct 421 421
|
||||||
409: 14(int16_t) Load 346(i16)
|
423: 14(int16_t) Load 360(i16)
|
||||||
410: 14(int16_t) SNegate 409
|
424: 14(int16_t) SNegate 423
|
||||||
411: 52(i16vec2) CompositeConstruct 410 410
|
425: 52(i16vec2) CompositeConstruct 424 424
|
||||||
414: 52(i16vec2) Select 413 411 408
|
428: 52(i16vec2) Select 427 425 422
|
||||||
Store 343(i16v) 414
|
Store 357(i16v) 428
|
||||||
415: 37(ptr) AccessChain 356(u16v) 282
|
429: 37(ptr) AccessChain 370(u16v) 291
|
||||||
416: 36(int16_t) Load 415
|
430: 36(int16_t) Load 429
|
||||||
417: 37(ptr) AccessChain 356(u16v) 264
|
431: 37(ptr) AccessChain 370(u16v) 273
|
||||||
418: 36(int16_t) Load 417
|
432: 36(int16_t) Load 431
|
||||||
419: 36(int16_t) Select 405 418 416
|
433: 36(int16_t) Select 419 432 430
|
||||||
Store 358(u16) 419
|
Store 372(u16) 433
|
||||||
420: 36(int16_t) Load 358(u16)
|
434: 36(int16_t) Load 372(u16)
|
||||||
421:193(i16vec3) CompositeConstruct 420 420 420
|
435:202(i16vec3) CompositeConstruct 434 434 434
|
||||||
422: 36(int16_t) Load 358(u16)
|
436: 36(int16_t) Load 372(u16)
|
||||||
423: 36(int16_t) SNegate 422
|
437: 36(int16_t) SNegate 436
|
||||||
424:193(i16vec3) CompositeConstruct 423 423 423
|
438:202(i16vec3) CompositeConstruct 437 437 437
|
||||||
427:193(i16vec3) Select 426 424 421
|
441:202(i16vec3) Select 440 438 435
|
||||||
Store 356(u16v) 427
|
Store 370(u16v) 441
|
||||||
429: 52(i16vec2) Load 343(i16v)
|
443: 52(i16vec2) Load 357(i16v)
|
||||||
430: 27(int) Bitcast 429
|
444: 27(int) Bitcast 443
|
||||||
Store 428(i32) 430
|
Store 442(i32) 444
|
||||||
435:432(i16vec4) Load 434(i16v4)
|
449:446(i16vec4) Load 448(i16v4)
|
||||||
436: 71(int64_t) Bitcast 435
|
450: 71(int64_t) Bitcast 449
|
||||||
Store 431(i64) 436
|
Store 445(i64) 450
|
||||||
439: 57(i16vec2) Load 438(u16v2)
|
453: 57(i16vec2) Load 452(u16v2)
|
||||||
440: 17(int) Bitcast 439
|
454: 17(int) Bitcast 453
|
||||||
Store 437(u32) 440
|
Store 451(u32) 454
|
||||||
446:443(i16vec4) Load 445(u16v4)
|
460:457(i16vec4) Load 459(u16v4)
|
||||||
447: 77(int64_t) Bitcast 446
|
461: 77(int64_t) Bitcast 460
|
||||||
Store 442(u64) 447
|
Store 456(u64) 461
|
||||||
448: 27(int) Load 428(i32)
|
462: 27(int) Load 442(i32)
|
||||||
449: 52(i16vec2) Bitcast 448
|
463: 52(i16vec2) Bitcast 462
|
||||||
Store 343(i16v) 449
|
Store 357(i16v) 463
|
||||||
450: 71(int64_t) Load 431(i64)
|
464: 71(int64_t) Load 445(i64)
|
||||||
451:432(i16vec4) Bitcast 450
|
465:446(i16vec4) Bitcast 464
|
||||||
Store 434(i16v4) 451
|
Store 448(i16v4) 465
|
||||||
452: 17(int) Load 437(u32)
|
466: 17(int) Load 451(u32)
|
||||||
453: 57(i16vec2) Bitcast 452
|
467: 57(i16vec2) Bitcast 466
|
||||||
Store 438(u16v2) 453
|
Store 452(u16v2) 467
|
||||||
454: 77(int64_t) Load 442(u64)
|
468: 77(int64_t) Load 456(u64)
|
||||||
455:443(i16vec4) Bitcast 454
|
469:457(i16vec4) Bitcast 468
|
||||||
Store 445(u16v4) 455
|
Store 459(u16v4) 469
|
||||||
458:193(i16vec3) Load 356(u16v)
|
472:202(i16vec3) Load 370(u16v)
|
||||||
459: 36(int16_t) Load 358(u16)
|
473: 36(int16_t) Load 372(u16)
|
||||||
460:193(i16vec3) CompositeConstruct 459 459 459
|
474:202(i16vec3) CompositeConstruct 473 473 473
|
||||||
461: 425(bvec3) ULessThan 458 460
|
475: 439(bvec3) ULessThan 472 474
|
||||||
Store 457(bv) 461
|
Store 471(bv) 475
|
||||||
462: 52(i16vec2) Load 343(i16v)
|
476: 52(i16vec2) Load 357(i16v)
|
||||||
463: 14(int16_t) Load 346(i16)
|
477: 14(int16_t) Load 360(i16)
|
||||||
464: 52(i16vec2) CompositeConstruct 463 463
|
478: 52(i16vec2) CompositeConstruct 477 477
|
||||||
465: 174(bvec2) SLessThan 462 464
|
479: 174(bvec2) SLessThan 476 478
|
||||||
466: 280(ptr) AccessChain 457(bv) 282
|
480: 289(ptr) AccessChain 471(bv) 291
|
||||||
467: 173(bool) CompositeExtract 465 0
|
481: 173(bool) CompositeExtract 479 0
|
||||||
Store 466 467
|
|
||||||
468: 280(ptr) AccessChain 457(bv) 264
|
|
||||||
469: 173(bool) CompositeExtract 465 1
|
|
||||||
Store 468 469
|
|
||||||
470:193(i16vec3) Load 356(u16v)
|
|
||||||
471: 36(int16_t) Load 358(u16)
|
|
||||||
472:193(i16vec3) CompositeConstruct 471 471 471
|
|
||||||
473: 425(bvec3) ULessThanEqual 470 472
|
|
||||||
Store 457(bv) 473
|
|
||||||
474: 52(i16vec2) Load 343(i16v)
|
|
||||||
475: 14(int16_t) Load 346(i16)
|
|
||||||
476: 52(i16vec2) CompositeConstruct 475 475
|
|
||||||
477: 174(bvec2) SLessThanEqual 474 476
|
|
||||||
478: 280(ptr) AccessChain 457(bv) 282
|
|
||||||
479: 173(bool) CompositeExtract 477 0
|
|
||||||
Store 478 479
|
|
||||||
480: 280(ptr) AccessChain 457(bv) 264
|
|
||||||
481: 173(bool) CompositeExtract 477 1
|
|
||||||
Store 480 481
|
Store 480 481
|
||||||
482:193(i16vec3) Load 356(u16v)
|
482: 289(ptr) AccessChain 471(bv) 273
|
||||||
483: 36(int16_t) Load 358(u16)
|
483: 173(bool) CompositeExtract 479 1
|
||||||
484:193(i16vec3) CompositeConstruct 483 483 483
|
Store 482 483
|
||||||
485: 425(bvec3) UGreaterThan 482 484
|
484:202(i16vec3) Load 370(u16v)
|
||||||
Store 457(bv) 485
|
485: 36(int16_t) Load 372(u16)
|
||||||
486: 52(i16vec2) Load 343(i16v)
|
486:202(i16vec3) CompositeConstruct 485 485 485
|
||||||
487: 14(int16_t) Load 346(i16)
|
487: 439(bvec3) ULessThanEqual 484 486
|
||||||
488: 52(i16vec2) CompositeConstruct 487 487
|
Store 471(bv) 487
|
||||||
489: 174(bvec2) SGreaterThan 486 488
|
488: 52(i16vec2) Load 357(i16v)
|
||||||
490: 280(ptr) AccessChain 457(bv) 282
|
489: 14(int16_t) Load 360(i16)
|
||||||
491: 173(bool) CompositeExtract 489 0
|
490: 52(i16vec2) CompositeConstruct 489 489
|
||||||
Store 490 491
|
491: 174(bvec2) SLessThanEqual 488 490
|
||||||
492: 280(ptr) AccessChain 457(bv) 264
|
492: 289(ptr) AccessChain 471(bv) 291
|
||||||
493: 173(bool) CompositeExtract 489 1
|
493: 173(bool) CompositeExtract 491 0
|
||||||
Store 492 493
|
Store 492 493
|
||||||
494:193(i16vec3) Load 356(u16v)
|
494: 289(ptr) AccessChain 471(bv) 273
|
||||||
495: 36(int16_t) Load 358(u16)
|
495: 173(bool) CompositeExtract 491 1
|
||||||
496:193(i16vec3) CompositeConstruct 495 495 495
|
Store 494 495
|
||||||
497: 425(bvec3) UGreaterThanEqual 494 496
|
496:202(i16vec3) Load 370(u16v)
|
||||||
Store 457(bv) 497
|
497: 36(int16_t) Load 372(u16)
|
||||||
498: 52(i16vec2) Load 343(i16v)
|
498:202(i16vec3) CompositeConstruct 497 497 497
|
||||||
499: 14(int16_t) Load 346(i16)
|
499: 439(bvec3) UGreaterThan 496 498
|
||||||
500: 52(i16vec2) CompositeConstruct 499 499
|
Store 471(bv) 499
|
||||||
501: 174(bvec2) SGreaterThanEqual 498 500
|
500: 52(i16vec2) Load 357(i16v)
|
||||||
502: 280(ptr) AccessChain 457(bv) 282
|
501: 14(int16_t) Load 360(i16)
|
||||||
503: 173(bool) CompositeExtract 501 0
|
502: 52(i16vec2) CompositeConstruct 501 501
|
||||||
Store 502 503
|
503: 174(bvec2) SGreaterThan 500 502
|
||||||
504: 280(ptr) AccessChain 457(bv) 264
|
504: 289(ptr) AccessChain 471(bv) 291
|
||||||
505: 173(bool) CompositeExtract 501 1
|
505: 173(bool) CompositeExtract 503 0
|
||||||
Store 504 505
|
Store 504 505
|
||||||
506:193(i16vec3) Load 356(u16v)
|
506: 289(ptr) AccessChain 471(bv) 273
|
||||||
507: 36(int16_t) Load 358(u16)
|
507: 173(bool) CompositeExtract 503 1
|
||||||
508:193(i16vec3) CompositeConstruct 507 507 507
|
Store 506 507
|
||||||
509: 425(bvec3) IEqual 506 508
|
508:202(i16vec3) Load 370(u16v)
|
||||||
Store 457(bv) 509
|
509: 36(int16_t) Load 372(u16)
|
||||||
510: 52(i16vec2) Load 343(i16v)
|
510:202(i16vec3) CompositeConstruct 509 509 509
|
||||||
511: 14(int16_t) Load 346(i16)
|
511: 439(bvec3) UGreaterThanEqual 508 510
|
||||||
512: 52(i16vec2) CompositeConstruct 511 511
|
Store 471(bv) 511
|
||||||
513: 174(bvec2) IEqual 510 512
|
512: 52(i16vec2) Load 357(i16v)
|
||||||
514: 280(ptr) AccessChain 457(bv) 282
|
513: 14(int16_t) Load 360(i16)
|
||||||
515: 173(bool) CompositeExtract 513 0
|
514: 52(i16vec2) CompositeConstruct 513 513
|
||||||
Store 514 515
|
515: 174(bvec2) SGreaterThanEqual 512 514
|
||||||
516: 280(ptr) AccessChain 457(bv) 264
|
516: 289(ptr) AccessChain 471(bv) 291
|
||||||
517: 173(bool) CompositeExtract 513 1
|
517: 173(bool) CompositeExtract 515 0
|
||||||
Store 516 517
|
Store 516 517
|
||||||
518:193(i16vec3) Load 356(u16v)
|
518: 289(ptr) AccessChain 471(bv) 273
|
||||||
519: 36(int16_t) Load 358(u16)
|
519: 173(bool) CompositeExtract 515 1
|
||||||
520:193(i16vec3) CompositeConstruct 519 519 519
|
Store 518 519
|
||||||
521: 425(bvec3) INotEqual 518 520
|
520:202(i16vec3) Load 370(u16v)
|
||||||
Store 457(bv) 521
|
521: 36(int16_t) Load 372(u16)
|
||||||
522: 52(i16vec2) Load 343(i16v)
|
522:202(i16vec3) CompositeConstruct 521 521 521
|
||||||
523: 14(int16_t) Load 346(i16)
|
523: 439(bvec3) IEqual 520 522
|
||||||
524: 52(i16vec2) CompositeConstruct 523 523
|
Store 471(bv) 523
|
||||||
525: 174(bvec2) INotEqual 522 524
|
524: 52(i16vec2) Load 357(i16v)
|
||||||
526: 280(ptr) AccessChain 457(bv) 282
|
525: 14(int16_t) Load 360(i16)
|
||||||
527: 173(bool) CompositeExtract 525 0
|
526: 52(i16vec2) CompositeConstruct 525 525
|
||||||
Store 526 527
|
527: 174(bvec2) IEqual 524 526
|
||||||
528: 280(ptr) AccessChain 457(bv) 264
|
528: 289(ptr) AccessChain 471(bv) 291
|
||||||
529: 173(bool) CompositeExtract 525 1
|
529: 173(bool) CompositeExtract 527 0
|
||||||
Store 528 529
|
Store 528 529
|
||||||
|
530: 289(ptr) AccessChain 471(bv) 273
|
||||||
|
531: 173(bool) CompositeExtract 527 1
|
||||||
|
Store 530 531
|
||||||
|
532:202(i16vec3) Load 370(u16v)
|
||||||
|
533: 36(int16_t) Load 372(u16)
|
||||||
|
534:202(i16vec3) CompositeConstruct 533 533 533
|
||||||
|
535: 439(bvec3) INotEqual 532 534
|
||||||
|
Store 471(bv) 535
|
||||||
|
536: 52(i16vec2) Load 357(i16v)
|
||||||
|
537: 14(int16_t) Load 360(i16)
|
||||||
|
538: 52(i16vec2) CompositeConstruct 537 537
|
||||||
|
539: 174(bvec2) INotEqual 536 538
|
||||||
|
540: 289(ptr) AccessChain 471(bv) 291
|
||||||
|
541: 173(bool) CompositeExtract 539 0
|
||||||
|
Store 540 541
|
||||||
|
542: 289(ptr) AccessChain 471(bv) 273
|
||||||
|
543: 173(bool) CompositeExtract 539 1
|
||||||
|
Store 542 543
|
||||||
Return
|
Return
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
spv.int8.frag
|
spv.int8.frag
|
||||||
// Module Version 10300
|
// Module Version 10300
|
||||||
// Generated by (magic number): 8000a
|
// Generated by (magic number): 8000a
|
||||||
// Id's are bound by 530
|
// Id's are bound by 544
|
||||||
|
|
||||||
Capability Shader
|
Capability Shader
|
||||||
Capability Float16
|
Capability Float16
|
||||||
@ -48,53 +48,55 @@ spv.int8.frag
|
|||||||
Name 117 "f64v"
|
Name 117 "f64v"
|
||||||
Name 144 "u16v"
|
Name 144 "u16v"
|
||||||
Name 174 "bv"
|
Name 174 "bv"
|
||||||
Name 192 "u8v"
|
Name 193 "arr"
|
||||||
Name 197 "i8"
|
Name 201 "u8v"
|
||||||
Name 217 "i"
|
Name 206 "i8"
|
||||||
Name 224 "uv"
|
Name 226 "i"
|
||||||
Name 240 "i16"
|
Name 233 "uv"
|
||||||
Name 276 "b"
|
Name 249 "i16"
|
||||||
Name 338 "i8v"
|
Name 285 "b"
|
||||||
Name 341 "i8"
|
Name 348 "f"
|
||||||
Name 351 "u8v"
|
Name 352 "i8v"
|
||||||
Name 353 "u8"
|
Name 355 "i8"
|
||||||
Name 423 "i16"
|
Name 365 "u8v"
|
||||||
Name 426 "i32"
|
Name 367 "u8"
|
||||||
Name 429 "i8v4"
|
Name 437 "i16"
|
||||||
Name 433 "u16"
|
Name 440 "i32"
|
||||||
Name 434 "u8v2"
|
Name 443 "i8v4"
|
||||||
Name 437 "u32"
|
Name 447 "u16"
|
||||||
Name 440 "u8v4"
|
Name 448 "u8v2"
|
||||||
Name 452 "bv"
|
Name 451 "u32"
|
||||||
Name 525 "Block"
|
Name 454 "u8v4"
|
||||||
MemberName 525(Block) 0 "i8"
|
Name 466 "bv"
|
||||||
MemberName 525(Block) 1 "i8v2"
|
Name 539 "Block"
|
||||||
MemberName 525(Block) 2 "i8v3"
|
MemberName 539(Block) 0 "i8"
|
||||||
MemberName 525(Block) 3 "i8v4"
|
MemberName 539(Block) 1 "i8v2"
|
||||||
MemberName 525(Block) 4 "u8"
|
MemberName 539(Block) 2 "i8v3"
|
||||||
MemberName 525(Block) 5 "u8v2"
|
MemberName 539(Block) 3 "i8v4"
|
||||||
MemberName 525(Block) 6 "u8v3"
|
MemberName 539(Block) 4 "u8"
|
||||||
MemberName 525(Block) 7 "u8v4"
|
MemberName 539(Block) 5 "u8v2"
|
||||||
Name 527 "block"
|
MemberName 539(Block) 6 "u8v3"
|
||||||
Name 528 "si8"
|
MemberName 539(Block) 7 "u8v4"
|
||||||
Name 529 "su8"
|
Name 541 "block"
|
||||||
|
Name 542 "si8"
|
||||||
|
Name 543 "su8"
|
||||||
MemberDecorate 24(Uniforms) 0 Offset 0
|
MemberDecorate 24(Uniforms) 0 Offset 0
|
||||||
Decorate 24(Uniforms) Block
|
Decorate 24(Uniforms) Block
|
||||||
Decorate 26 DescriptorSet 0
|
Decorate 26 DescriptorSet 0
|
||||||
Decorate 26 Binding 0
|
Decorate 26 Binding 0
|
||||||
MemberDecorate 525(Block) 0 Offset 0
|
MemberDecorate 539(Block) 0 Offset 0
|
||||||
MemberDecorate 525(Block) 1 Offset 2
|
MemberDecorate 539(Block) 1 Offset 2
|
||||||
MemberDecorate 525(Block) 2 Offset 4
|
MemberDecorate 539(Block) 2 Offset 4
|
||||||
MemberDecorate 525(Block) 3 Offset 8
|
MemberDecorate 539(Block) 3 Offset 8
|
||||||
MemberDecorate 525(Block) 4 Offset 12
|
MemberDecorate 539(Block) 4 Offset 12
|
||||||
MemberDecorate 525(Block) 5 Offset 14
|
MemberDecorate 539(Block) 5 Offset 14
|
||||||
MemberDecorate 525(Block) 6 Offset 16
|
MemberDecorate 539(Block) 6 Offset 16
|
||||||
MemberDecorate 525(Block) 7 Offset 20
|
MemberDecorate 539(Block) 7 Offset 20
|
||||||
Decorate 525(Block) Block
|
Decorate 539(Block) Block
|
||||||
Decorate 527(block) DescriptorSet 0
|
Decorate 541(block) DescriptorSet 0
|
||||||
Decorate 527(block) Binding 1
|
Decorate 541(block) Binding 1
|
||||||
Decorate 528(si8) SpecId 100
|
Decorate 542(si8) SpecId 100
|
||||||
Decorate 529(su8) SpecId 101
|
Decorate 543(su8) SpecId 101
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
14: TypeInt 8 1
|
14: TypeInt 8 1
|
||||||
@ -159,36 +161,45 @@ spv.int8.frag
|
|||||||
182: 36(int8_t) Constant 1
|
182: 36(int8_t) Constant 1
|
||||||
183: 49(i8vec2) ConstantComposite 181 181
|
183: 49(i8vec2) ConstantComposite 181 181
|
||||||
184: 49(i8vec2) ConstantComposite 182 182
|
184: 49(i8vec2) ConstantComposite 182 182
|
||||||
190: TypeVector 36(int8_t) 3
|
190: 17(int) Constant 4
|
||||||
191: TypePointer Function 190(i8vec3)
|
191: TypeArray 108(float) 190
|
||||||
194: TypeVector 14(int8_t) 3
|
192: TypePointer Function 191
|
||||||
216: TypePointer Function 27(int)
|
194: 108(float) Constant 1065353216
|
||||||
222: TypeVector 17(int) 3
|
195: 108(float) Constant 1073741824
|
||||||
223: TypePointer Function 222(ivec3)
|
196: 108(float) Constant 1077936128
|
||||||
239: TypePointer Function 57(int16_t)
|
197: 108(float) Constant 1082130432
|
||||||
261: 17(int) Constant 1
|
198: 191 ConstantComposite 194 195 196 197
|
||||||
267: 17(int) Constant 2
|
199: TypeVector 36(int8_t) 3
|
||||||
275: TypePointer Function 171(bool)
|
200: TypePointer Function 199(i8vec3)
|
||||||
277: 17(int) Constant 0
|
203: TypeVector 14(int8_t) 3
|
||||||
291: TypePointer Function 17(int)
|
225: TypePointer Function 27(int)
|
||||||
349: 52(i8vec2) ConstantComposite 21 21
|
231: TypeVector 17(int) 3
|
||||||
358: 190(i8vec3) ConstantComposite 181 181 181
|
232: TypePointer Function 231(ivec3)
|
||||||
400: 171(bool) ConstantTrue
|
248: TypePointer Function 57(int16_t)
|
||||||
407: 171(bool) ConstantFalse
|
270: 17(int) Constant 1
|
||||||
408: 172(bvec2) ConstantComposite 407 407
|
276: 17(int) Constant 2
|
||||||
420: TypeVector 171(bool) 3
|
284: TypePointer Function 171(bool)
|
||||||
421: 420(bvec3) ConstantComposite 407 407 407
|
286: 17(int) Constant 0
|
||||||
427: TypeVector 14(int8_t) 4
|
300: TypePointer Function 17(int)
|
||||||
428: TypePointer Function 427(i8vec4)
|
347: TypePointer Function 108(float)
|
||||||
432: TypePointer Function 64(int16_t)
|
363: 52(i8vec2) ConstantComposite 21 21
|
||||||
438: TypeVector 36(int8_t) 4
|
372: 199(i8vec3) ConstantComposite 181 181 181
|
||||||
439: TypePointer Function 438(i8vec4)
|
414: 171(bool) ConstantTrue
|
||||||
451: TypePointer Function 420(bvec3)
|
421: 171(bool) ConstantFalse
|
||||||
525(Block): TypeStruct 14(int8_t) 52(i8vec2) 194(i8vec3) 427(i8vec4) 36(int8_t) 49(i8vec2) 190(i8vec3) 438(i8vec4)
|
422: 172(bvec2) ConstantComposite 421 421
|
||||||
526: TypePointer Uniform 525(Block)
|
434: TypeVector 171(bool) 3
|
||||||
527(block): 526(ptr) Variable Uniform
|
435: 434(bvec3) ConstantComposite 421 421 421
|
||||||
528(si8): 14(int8_t) SpecConstant 4294967286
|
441: TypeVector 14(int8_t) 4
|
||||||
529(su8): 36(int8_t) SpecConstant 20
|
442: TypePointer Function 441(i8vec4)
|
||||||
|
446: TypePointer Function 64(int16_t)
|
||||||
|
452: TypeVector 36(int8_t) 4
|
||||||
|
453: TypePointer Function 452(i8vec4)
|
||||||
|
465: TypePointer Function 434(bvec3)
|
||||||
|
539(Block): TypeStruct 14(int8_t) 52(i8vec2) 203(i8vec3) 441(i8vec4) 36(int8_t) 49(i8vec2) 199(i8vec3) 452(i8vec4)
|
||||||
|
540: TypePointer Uniform 539(Block)
|
||||||
|
541(block): 540(ptr) Variable Uniform
|
||||||
|
542(si8): 14(int8_t) SpecConstant 4294967286
|
||||||
|
543(su8): 36(int8_t) SpecConstant 20
|
||||||
4(main): 2 Function None 3
|
4(main): 2 Function None 3
|
||||||
5: Label
|
5: Label
|
||||||
Return
|
Return
|
||||||
@ -360,396 +371,403 @@ spv.int8.frag
|
|||||||
FunctionEnd
|
FunctionEnd
|
||||||
10(operators(): 2 Function None 3
|
10(operators(): 2 Function None 3
|
||||||
11: Label
|
11: Label
|
||||||
192(u8v): 191(ptr) Variable Function
|
193(arr): 192(ptr) Variable Function
|
||||||
197(i8): 15(ptr) Variable Function
|
201(u8v): 200(ptr) Variable Function
|
||||||
217(i): 216(ptr) Variable Function
|
206(i8): 15(ptr) Variable Function
|
||||||
224(uv): 223(ptr) Variable Function
|
226(i): 225(ptr) Variable Function
|
||||||
240(i16): 239(ptr) Variable Function
|
233(uv): 232(ptr) Variable Function
|
||||||
276(b): 275(ptr) Variable Function
|
249(i16): 248(ptr) Variable Function
|
||||||
193: 190(i8vec3) Load 192(u8v)
|
285(b): 284(ptr) Variable Function
|
||||||
195: 194(i8vec3) CompositeConstruct 176 176 176
|
348(f): 347(ptr) Variable Function
|
||||||
196: 190(i8vec3) IAdd 193 195
|
Store 193(arr) 198
|
||||||
Store 192(u8v) 196
|
202: 199(i8vec3) Load 201(u8v)
|
||||||
198: 14(int8_t) Load 197(i8)
|
204: 203(i8vec3) CompositeConstruct 176 176 176
|
||||||
199: 14(int8_t) ISub 198 176
|
205: 199(i8vec3) IAdd 202 204
|
||||||
Store 197(i8) 199
|
Store 201(u8v) 205
|
||||||
200: 14(int8_t) Load 197(i8)
|
207: 14(int8_t) Load 206(i8)
|
||||||
201: 14(int8_t) IAdd 200 176
|
208: 14(int8_t) ISub 207 176
|
||||||
Store 197(i8) 201
|
Store 206(i8) 208
|
||||||
202: 190(i8vec3) Load 192(u8v)
|
209: 14(int8_t) Load 206(i8)
|
||||||
203: 194(i8vec3) CompositeConstruct 176 176 176
|
210: 14(int8_t) IAdd 209 176
|
||||||
204: 190(i8vec3) ISub 202 203
|
Store 206(i8) 210
|
||||||
Store 192(u8v) 204
|
211: 199(i8vec3) Load 201(u8v)
|
||||||
205: 190(i8vec3) Load 192(u8v)
|
212: 203(i8vec3) CompositeConstruct 176 176 176
|
||||||
206: 190(i8vec3) Not 205
|
213: 199(i8vec3) ISub 211 212
|
||||||
Store 192(u8v) 206
|
Store 201(u8v) 213
|
||||||
207: 14(int8_t) Load 197(i8)
|
214: 199(i8vec3) Load 201(u8v)
|
||||||
Store 197(i8) 207
|
215: 199(i8vec3) Not 214
|
||||||
208: 190(i8vec3) Load 192(u8v)
|
Store 201(u8v) 215
|
||||||
209: 190(i8vec3) SNegate 208
|
216: 14(int8_t) Load 206(i8)
|
||||||
Store 192(u8v) 209
|
Store 206(i8) 216
|
||||||
210: 14(int8_t) Load 197(i8)
|
217: 199(i8vec3) Load 201(u8v)
|
||||||
211: 14(int8_t) Load 197(i8)
|
218: 199(i8vec3) SNegate 217
|
||||||
212: 14(int8_t) IAdd 211 210
|
Store 201(u8v) 218
|
||||||
Store 197(i8) 212
|
219: 14(int8_t) Load 206(i8)
|
||||||
213: 190(i8vec3) Load 192(u8v)
|
220: 14(int8_t) Load 206(i8)
|
||||||
214: 190(i8vec3) Load 192(u8v)
|
221: 14(int8_t) IAdd 220 219
|
||||||
215: 190(i8vec3) ISub 214 213
|
Store 206(i8) 221
|
||||||
Store 192(u8v) 215
|
222: 199(i8vec3) Load 201(u8v)
|
||||||
218: 14(int8_t) Load 197(i8)
|
223: 199(i8vec3) Load 201(u8v)
|
||||||
219: 27(int) SConvert 218
|
224: 199(i8vec3) ISub 223 222
|
||||||
220: 27(int) Load 217(i)
|
Store 201(u8v) 224
|
||||||
221: 27(int) IMul 220 219
|
227: 14(int8_t) Load 206(i8)
|
||||||
Store 217(i) 221
|
228: 27(int) SConvert 227
|
||||||
225: 190(i8vec3) Load 192(u8v)
|
229: 27(int) Load 226(i)
|
||||||
226: 222(ivec3) UConvert 225
|
230: 27(int) IMul 229 228
|
||||||
227: 222(ivec3) Load 224(uv)
|
Store 226(i) 230
|
||||||
228: 222(ivec3) UDiv 227 226
|
234: 199(i8vec3) Load 201(u8v)
|
||||||
Store 224(uv) 228
|
235: 231(ivec3) UConvert 234
|
||||||
229: 14(int8_t) Load 197(i8)
|
236: 231(ivec3) Load 233(uv)
|
||||||
230: 27(int) SConvert 229
|
237: 231(ivec3) UDiv 236 235
|
||||||
231: 17(int) Bitcast 230
|
Store 233(uv) 237
|
||||||
232: 222(ivec3) Load 224(uv)
|
238: 14(int8_t) Load 206(i8)
|
||||||
233: 222(ivec3) CompositeConstruct 231 231 231
|
239: 27(int) SConvert 238
|
||||||
234: 222(ivec3) UMod 232 233
|
240: 17(int) Bitcast 239
|
||||||
Store 224(uv) 234
|
241: 231(ivec3) Load 233(uv)
|
||||||
235: 190(i8vec3) Load 192(u8v)
|
242: 231(ivec3) CompositeConstruct 240 240 240
|
||||||
236: 222(ivec3) UConvert 235
|
243: 231(ivec3) UMod 241 242
|
||||||
237: 222(ivec3) Load 224(uv)
|
Store 233(uv) 243
|
||||||
238: 222(ivec3) IAdd 236 237
|
244: 199(i8vec3) Load 201(u8v)
|
||||||
Store 224(uv) 238
|
245: 231(ivec3) UConvert 244
|
||||||
241: 14(int8_t) Load 197(i8)
|
246: 231(ivec3) Load 233(uv)
|
||||||
242: 57(int16_t) SConvert 241
|
247: 231(ivec3) IAdd 245 246
|
||||||
243: 57(int16_t) Load 240(i16)
|
Store 233(uv) 247
|
||||||
244: 57(int16_t) ISub 242 243
|
250: 14(int8_t) Load 206(i8)
|
||||||
Store 240(i16) 244
|
251: 57(int16_t) SConvert 250
|
||||||
245: 190(i8vec3) Load 192(u8v)
|
252: 57(int16_t) Load 249(i16)
|
||||||
246: 222(ivec3) UConvert 245
|
253: 57(int16_t) ISub 251 252
|
||||||
247: 222(ivec3) Load 224(uv)
|
Store 249(i16) 253
|
||||||
248: 222(ivec3) IMul 246 247
|
254: 199(i8vec3) Load 201(u8v)
|
||||||
Store 224(uv) 248
|
255: 231(ivec3) UConvert 254
|
||||||
249: 14(int8_t) Load 197(i8)
|
256: 231(ivec3) Load 233(uv)
|
||||||
250: 57(int16_t) SConvert 249
|
257: 231(ivec3) IMul 255 256
|
||||||
251: 57(int16_t) Load 240(i16)
|
Store 233(uv) 257
|
||||||
252: 57(int16_t) IMul 250 251
|
258: 14(int8_t) Load 206(i8)
|
||||||
Store 240(i16) 252
|
259: 57(int16_t) SConvert 258
|
||||||
253: 14(int8_t) Load 197(i8)
|
260: 57(int16_t) Load 249(i16)
|
||||||
254: 27(int) SConvert 253
|
261: 57(int16_t) IMul 259 260
|
||||||
255: 27(int) Load 217(i)
|
Store 249(i16) 261
|
||||||
256: 27(int) SMod 254 255
|
262: 14(int8_t) Load 206(i8)
|
||||||
Store 217(i) 256
|
263: 27(int) SConvert 262
|
||||||
257: 14(int8_t) Load 197(i8)
|
264: 27(int) Load 226(i)
|
||||||
258: 190(i8vec3) Load 192(u8v)
|
265: 27(int) SMod 263 264
|
||||||
259: 194(i8vec3) CompositeConstruct 257 257 257
|
Store 226(i) 265
|
||||||
260: 190(i8vec3) ShiftLeftLogical 258 259
|
266: 14(int8_t) Load 206(i8)
|
||||||
Store 192(u8v) 260
|
267: 199(i8vec3) Load 201(u8v)
|
||||||
262: 37(ptr) AccessChain 192(u8v) 261
|
268: 203(i8vec3) CompositeConstruct 266 266 266
|
||||||
263: 36(int8_t) Load 262
|
269: 199(i8vec3) ShiftLeftLogical 267 268
|
||||||
264: 14(int8_t) Load 197(i8)
|
Store 201(u8v) 269
|
||||||
265: 14(int8_t) ShiftRightArithmetic 264 263
|
271: 37(ptr) AccessChain 201(u8v) 270
|
||||||
Store 197(i8) 265
|
272: 36(int8_t) Load 271
|
||||||
266: 14(int8_t) Load 197(i8)
|
273: 14(int8_t) Load 206(i8)
|
||||||
268: 37(ptr) AccessChain 192(u8v) 267
|
274: 14(int8_t) ShiftRightArithmetic 273 272
|
||||||
269: 36(int8_t) Load 268
|
Store 206(i8) 274
|
||||||
270: 14(int8_t) ShiftLeftLogical 266 269
|
275: 14(int8_t) Load 206(i8)
|
||||||
Store 197(i8) 270
|
277: 37(ptr) AccessChain 201(u8v) 276
|
||||||
271: 190(i8vec3) Load 192(u8v)
|
278: 36(int8_t) Load 277
|
||||||
272: 14(int8_t) Load 197(i8)
|
279: 14(int8_t) ShiftLeftLogical 275 278
|
||||||
273: 194(i8vec3) CompositeConstruct 272 272 272
|
Store 206(i8) 279
|
||||||
274: 190(i8vec3) ShiftLeftLogical 271 273
|
280: 199(i8vec3) Load 201(u8v)
|
||||||
Store 192(u8v) 274
|
281: 14(int8_t) Load 206(i8)
|
||||||
278: 37(ptr) AccessChain 192(u8v) 277
|
282: 203(i8vec3) CompositeConstruct 281 281 281
|
||||||
279: 36(int8_t) Load 278
|
283: 199(i8vec3) ShiftLeftLogical 280 282
|
||||||
280: 14(int8_t) Load 197(i8)
|
Store 201(u8v) 283
|
||||||
281: 36(int8_t) Bitcast 280
|
287: 37(ptr) AccessChain 201(u8v) 286
|
||||||
282: 171(bool) INotEqual 279 281
|
288: 36(int8_t) Load 287
|
||||||
Store 276(b) 282
|
289: 14(int8_t) Load 206(i8)
|
||||||
283: 14(int8_t) Load 197(i8)
|
290: 36(int8_t) Bitcast 289
|
||||||
284: 36(int8_t) Bitcast 283
|
291: 171(bool) INotEqual 288 290
|
||||||
285: 37(ptr) AccessChain 192(u8v) 277
|
Store 285(b) 291
|
||||||
286: 36(int8_t) Load 285
|
292: 14(int8_t) Load 206(i8)
|
||||||
287: 171(bool) IEqual 284 286
|
293: 36(int8_t) Bitcast 292
|
||||||
Store 276(b) 287
|
294: 37(ptr) AccessChain 201(u8v) 286
|
||||||
288: 37(ptr) AccessChain 192(u8v) 277
|
295: 36(int8_t) Load 294
|
||||||
289: 36(int8_t) Load 288
|
296: 171(bool) IEqual 293 295
|
||||||
290: 17(int) UConvert 289
|
Store 285(b) 296
|
||||||
292: 291(ptr) AccessChain 224(uv) 261
|
297: 37(ptr) AccessChain 201(u8v) 286
|
||||||
293: 17(int) Load 292
|
298: 36(int8_t) Load 297
|
||||||
294: 171(bool) UGreaterThan 290 293
|
299: 17(int) UConvert 298
|
||||||
Store 276(b) 294
|
301: 300(ptr) AccessChain 233(uv) 270
|
||||||
295: 14(int8_t) Load 197(i8)
|
302: 17(int) Load 301
|
||||||
296: 27(int) SConvert 295
|
303: 171(bool) UGreaterThan 299 302
|
||||||
297: 27(int) Load 217(i)
|
Store 285(b) 303
|
||||||
298: 171(bool) SLessThan 296 297
|
304: 14(int8_t) Load 206(i8)
|
||||||
Store 276(b) 298
|
305: 27(int) SConvert 304
|
||||||
299: 37(ptr) AccessChain 192(u8v) 261
|
306: 27(int) Load 226(i)
|
||||||
300: 36(int8_t) Load 299
|
307: 171(bool) SLessThan 305 306
|
||||||
301: 17(int) UConvert 300
|
Store 285(b) 307
|
||||||
302: 291(ptr) AccessChain 224(uv) 277
|
308: 37(ptr) AccessChain 201(u8v) 270
|
||||||
303: 17(int) Load 302
|
309: 36(int8_t) Load 308
|
||||||
304: 171(bool) UGreaterThanEqual 301 303
|
310: 17(int) UConvert 309
|
||||||
Store 276(b) 304
|
311: 300(ptr) AccessChain 233(uv) 286
|
||||||
305: 14(int8_t) Load 197(i8)
|
312: 17(int) Load 311
|
||||||
306: 27(int) SConvert 305
|
313: 171(bool) UGreaterThanEqual 310 312
|
||||||
307: 27(int) Load 217(i)
|
Store 285(b) 313
|
||||||
308: 171(bool) SLessThanEqual 306 307
|
314: 14(int8_t) Load 206(i8)
|
||||||
Store 276(b) 308
|
315: 27(int) SConvert 314
|
||||||
309: 14(int8_t) Load 197(i8)
|
316: 27(int) Load 226(i)
|
||||||
310: 27(int) SConvert 309
|
317: 171(bool) SLessThanEqual 315 316
|
||||||
311: 17(int) Bitcast 310
|
Store 285(b) 317
|
||||||
312: 222(ivec3) Load 224(uv)
|
318: 14(int8_t) Load 206(i8)
|
||||||
313: 222(ivec3) CompositeConstruct 311 311 311
|
319: 27(int) SConvert 318
|
||||||
314: 222(ivec3) BitwiseOr 312 313
|
320: 17(int) Bitcast 319
|
||||||
Store 224(uv) 314
|
321: 231(ivec3) Load 233(uv)
|
||||||
315: 14(int8_t) Load 197(i8)
|
322: 231(ivec3) CompositeConstruct 320 320 320
|
||||||
316: 27(int) SConvert 315
|
323: 231(ivec3) BitwiseOr 321 322
|
||||||
317: 27(int) Load 217(i)
|
Store 233(uv) 323
|
||||||
318: 27(int) BitwiseOr 316 317
|
324: 14(int8_t) Load 206(i8)
|
||||||
Store 217(i) 318
|
325: 27(int) SConvert 324
|
||||||
319: 14(int8_t) Load 197(i8)
|
326: 27(int) Load 226(i)
|
||||||
320: 57(int16_t) SConvert 319
|
327: 27(int) BitwiseOr 325 326
|
||||||
321: 57(int16_t) Load 240(i16)
|
Store 226(i) 327
|
||||||
322: 57(int16_t) BitwiseAnd 321 320
|
328: 14(int8_t) Load 206(i8)
|
||||||
Store 240(i16) 322
|
329: 57(int16_t) SConvert 328
|
||||||
323: 190(i8vec3) Load 192(u8v)
|
330: 57(int16_t) Load 249(i16)
|
||||||
324: 222(ivec3) UConvert 323
|
331: 57(int16_t) BitwiseAnd 330 329
|
||||||
325: 222(ivec3) Load 224(uv)
|
Store 249(i16) 331
|
||||||
326: 222(ivec3) BitwiseAnd 324 325
|
332: 199(i8vec3) Load 201(u8v)
|
||||||
Store 224(uv) 326
|
333: 231(ivec3) UConvert 332
|
||||||
327: 14(int8_t) Load 197(i8)
|
334: 231(ivec3) Load 233(uv)
|
||||||
328: 27(int) SConvert 327
|
335: 231(ivec3) BitwiseAnd 333 334
|
||||||
329: 17(int) Bitcast 328
|
Store 233(uv) 335
|
||||||
330: 222(ivec3) Load 224(uv)
|
336: 14(int8_t) Load 206(i8)
|
||||||
331: 222(ivec3) CompositeConstruct 329 329 329
|
337: 27(int) SConvert 336
|
||||||
332: 222(ivec3) BitwiseXor 330 331
|
338: 17(int) Bitcast 337
|
||||||
Store 224(uv) 332
|
339: 231(ivec3) Load 233(uv)
|
||||||
333: 190(i8vec3) Load 192(u8v)
|
340: 231(ivec3) CompositeConstruct 338 338 338
|
||||||
334: 14(int8_t) Load 197(i8)
|
341: 231(ivec3) BitwiseXor 339 340
|
||||||
335: 36(int8_t) Bitcast 334
|
Store 233(uv) 341
|
||||||
336: 190(i8vec3) CompositeConstruct 335 335 335
|
342: 199(i8vec3) Load 201(u8v)
|
||||||
337: 190(i8vec3) BitwiseXor 333 336
|
343: 14(int8_t) Load 206(i8)
|
||||||
Store 192(u8v) 337
|
344: 36(int8_t) Bitcast 343
|
||||||
|
345: 199(i8vec3) CompositeConstruct 344 344 344
|
||||||
|
346: 199(i8vec3) BitwiseXor 342 345
|
||||||
|
Store 201(u8v) 346
|
||||||
|
349: 14(int8_t) Load 206(i8)
|
||||||
|
350: 347(ptr) AccessChain 193(arr) 349
|
||||||
|
351: 108(float) Load 350
|
||||||
|
Store 348(f) 351
|
||||||
Return
|
Return
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
12(builtinFuncs(): 2 Function None 3
|
12(builtinFuncs(): 2 Function None 3
|
||||||
13: Label
|
13: Label
|
||||||
338(i8v): 53(ptr) Variable Function
|
352(i8v): 53(ptr) Variable Function
|
||||||
341(i8): 15(ptr) Variable Function
|
355(i8): 15(ptr) Variable Function
|
||||||
351(u8v): 191(ptr) Variable Function
|
365(u8v): 200(ptr) Variable Function
|
||||||
353(u8): 37(ptr) Variable Function
|
367(u8): 37(ptr) Variable Function
|
||||||
423(i16): 239(ptr) Variable Function
|
437(i16): 248(ptr) Variable Function
|
||||||
426(i32): 216(ptr) Variable Function
|
440(i32): 225(ptr) Variable Function
|
||||||
429(i8v4): 428(ptr) Variable Function
|
443(i8v4): 442(ptr) Variable Function
|
||||||
433(u16): 432(ptr) Variable Function
|
447(u16): 446(ptr) Variable Function
|
||||||
434(u8v2): 50(ptr) Variable Function
|
448(u8v2): 50(ptr) Variable Function
|
||||||
437(u32): 291(ptr) Variable Function
|
451(u32): 300(ptr) Variable Function
|
||||||
440(u8v4): 439(ptr) Variable Function
|
454(u8v4): 453(ptr) Variable Function
|
||||||
452(bv): 451(ptr) Variable Function
|
466(bv): 465(ptr) Variable Function
|
||||||
339: 52(i8vec2) Load 338(i8v)
|
353: 52(i8vec2) Load 352(i8v)
|
||||||
340: 52(i8vec2) ExtInst 1(GLSL.std.450) 5(SAbs) 339
|
354: 52(i8vec2) ExtInst 1(GLSL.std.450) 5(SAbs) 353
|
||||||
Store 338(i8v) 340
|
Store 352(i8v) 354
|
||||||
342: 14(int8_t) Load 341(i8)
|
356: 14(int8_t) Load 355(i8)
|
||||||
343: 14(int8_t) ExtInst 1(GLSL.std.450) 7(SSign) 342
|
357: 14(int8_t) ExtInst 1(GLSL.std.450) 7(SSign) 356
|
||||||
Store 341(i8) 343
|
Store 355(i8) 357
|
||||||
344: 52(i8vec2) Load 338(i8v)
|
358: 52(i8vec2) Load 352(i8v)
|
||||||
345: 14(int8_t) Load 341(i8)
|
359: 14(int8_t) Load 355(i8)
|
||||||
346: 52(i8vec2) CompositeConstruct 345 345
|
360: 52(i8vec2) CompositeConstruct 359 359
|
||||||
347: 52(i8vec2) ExtInst 1(GLSL.std.450) 39(SMin) 344 346
|
361: 52(i8vec2) ExtInst 1(GLSL.std.450) 39(SMin) 358 360
|
||||||
Store 338(i8v) 347
|
Store 352(i8v) 361
|
||||||
348: 52(i8vec2) Load 338(i8v)
|
362: 52(i8vec2) Load 352(i8v)
|
||||||
350: 52(i8vec2) ExtInst 1(GLSL.std.450) 39(SMin) 348 349
|
364: 52(i8vec2) ExtInst 1(GLSL.std.450) 39(SMin) 362 363
|
||||||
Store 338(i8v) 350
|
Store 352(i8v) 364
|
||||||
352: 190(i8vec3) Load 351(u8v)
|
366: 199(i8vec3) Load 365(u8v)
|
||||||
354: 36(int8_t) Load 353(u8)
|
368: 36(int8_t) Load 367(u8)
|
||||||
355: 190(i8vec3) CompositeConstruct 354 354 354
|
369: 199(i8vec3) CompositeConstruct 368 368 368
|
||||||
356: 190(i8vec3) ExtInst 1(GLSL.std.450) 38(UMin) 352 355
|
370: 199(i8vec3) ExtInst 1(GLSL.std.450) 38(UMin) 366 369
|
||||||
Store 351(u8v) 356
|
Store 365(u8v) 370
|
||||||
357: 190(i8vec3) Load 351(u8v)
|
371: 199(i8vec3) Load 365(u8v)
|
||||||
359: 190(i8vec3) ExtInst 1(GLSL.std.450) 38(UMin) 357 358
|
373: 199(i8vec3) ExtInst 1(GLSL.std.450) 38(UMin) 371 372
|
||||||
Store 351(u8v) 359
|
Store 365(u8v) 373
|
||||||
360: 52(i8vec2) Load 338(i8v)
|
374: 52(i8vec2) Load 352(i8v)
|
||||||
361: 14(int8_t) Load 341(i8)
|
375: 14(int8_t) Load 355(i8)
|
||||||
362: 52(i8vec2) CompositeConstruct 361 361
|
376: 52(i8vec2) CompositeConstruct 375 375
|
||||||
363: 52(i8vec2) ExtInst 1(GLSL.std.450) 42(SMax) 360 362
|
377: 52(i8vec2) ExtInst 1(GLSL.std.450) 42(SMax) 374 376
|
||||||
Store 338(i8v) 363
|
Store 352(i8v) 377
|
||||||
364: 52(i8vec2) Load 338(i8v)
|
378: 52(i8vec2) Load 352(i8v)
|
||||||
365: 52(i8vec2) ExtInst 1(GLSL.std.450) 42(SMax) 364 349
|
379: 52(i8vec2) ExtInst 1(GLSL.std.450) 42(SMax) 378 363
|
||||||
Store 338(i8v) 365
|
Store 352(i8v) 379
|
||||||
366: 190(i8vec3) Load 351(u8v)
|
380: 199(i8vec3) Load 365(u8v)
|
||||||
367: 36(int8_t) Load 353(u8)
|
381: 36(int8_t) Load 367(u8)
|
||||||
368: 190(i8vec3) CompositeConstruct 367 367 367
|
382: 199(i8vec3) CompositeConstruct 381 381 381
|
||||||
369: 190(i8vec3) ExtInst 1(GLSL.std.450) 41(UMax) 366 368
|
383: 199(i8vec3) ExtInst 1(GLSL.std.450) 41(UMax) 380 382
|
||||||
Store 351(u8v) 369
|
Store 365(u8v) 383
|
||||||
370: 190(i8vec3) Load 351(u8v)
|
384: 199(i8vec3) Load 365(u8v)
|
||||||
371: 190(i8vec3) ExtInst 1(GLSL.std.450) 41(UMax) 370 358
|
385: 199(i8vec3) ExtInst 1(GLSL.std.450) 41(UMax) 384 372
|
||||||
Store 351(u8v) 371
|
Store 365(u8v) 385
|
||||||
372: 52(i8vec2) Load 338(i8v)
|
386: 52(i8vec2) Load 352(i8v)
|
||||||
373: 14(int8_t) Load 341(i8)
|
387: 14(int8_t) Load 355(i8)
|
||||||
374: 14(int8_t) SNegate 373
|
388: 14(int8_t) SNegate 387
|
||||||
375: 14(int8_t) Load 341(i8)
|
389: 14(int8_t) Load 355(i8)
|
||||||
376: 52(i8vec2) CompositeConstruct 374 374
|
390: 52(i8vec2) CompositeConstruct 388 388
|
||||||
377: 52(i8vec2) CompositeConstruct 375 375
|
391: 52(i8vec2) CompositeConstruct 389 389
|
||||||
378: 52(i8vec2) ExtInst 1(GLSL.std.450) 45(SClamp) 372 376 377
|
392: 52(i8vec2) ExtInst 1(GLSL.std.450) 45(SClamp) 386 390 391
|
||||||
Store 338(i8v) 378
|
Store 352(i8v) 392
|
||||||
379: 52(i8vec2) Load 338(i8v)
|
393: 52(i8vec2) Load 352(i8v)
|
||||||
380: 52(i8vec2) Load 338(i8v)
|
394: 52(i8vec2) Load 352(i8v)
|
||||||
381: 52(i8vec2) SNegate 380
|
395: 52(i8vec2) SNegate 394
|
||||||
382: 52(i8vec2) Load 338(i8v)
|
396: 52(i8vec2) Load 352(i8v)
|
||||||
383: 52(i8vec2) ExtInst 1(GLSL.std.450) 45(SClamp) 379 381 382
|
397: 52(i8vec2) ExtInst 1(GLSL.std.450) 45(SClamp) 393 395 396
|
||||||
Store 338(i8v) 383
|
Store 352(i8v) 397
|
||||||
384: 190(i8vec3) Load 351(u8v)
|
398: 199(i8vec3) Load 365(u8v)
|
||||||
385: 36(int8_t) Load 353(u8)
|
399: 36(int8_t) Load 367(u8)
|
||||||
386: 36(int8_t) SNegate 385
|
400: 36(int8_t) SNegate 399
|
||||||
387: 36(int8_t) Load 353(u8)
|
401: 36(int8_t) Load 367(u8)
|
||||||
388: 190(i8vec3) CompositeConstruct 386 386 386
|
402: 199(i8vec3) CompositeConstruct 400 400 400
|
||||||
389: 190(i8vec3) CompositeConstruct 387 387 387
|
403: 199(i8vec3) CompositeConstruct 401 401 401
|
||||||
390: 190(i8vec3) ExtInst 1(GLSL.std.450) 44(UClamp) 384 388 389
|
404: 199(i8vec3) ExtInst 1(GLSL.std.450) 44(UClamp) 398 402 403
|
||||||
Store 351(u8v) 390
|
Store 365(u8v) 404
|
||||||
391: 190(i8vec3) Load 351(u8v)
|
405: 199(i8vec3) Load 365(u8v)
|
||||||
392: 190(i8vec3) Load 351(u8v)
|
406: 199(i8vec3) Load 365(u8v)
|
||||||
393: 190(i8vec3) SNegate 392
|
407: 199(i8vec3) SNegate 406
|
||||||
394: 190(i8vec3) Load 351(u8v)
|
408: 199(i8vec3) Load 365(u8v)
|
||||||
395: 190(i8vec3) ExtInst 1(GLSL.std.450) 44(UClamp) 391 393 394
|
409: 199(i8vec3) ExtInst 1(GLSL.std.450) 44(UClamp) 405 407 408
|
||||||
Store 351(u8v) 395
|
Store 365(u8v) 409
|
||||||
396: 15(ptr) AccessChain 338(i8v) 277
|
410: 15(ptr) AccessChain 352(i8v) 286
|
||||||
397: 14(int8_t) Load 396
|
411: 14(int8_t) Load 410
|
||||||
398: 15(ptr) AccessChain 338(i8v) 261
|
412: 15(ptr) AccessChain 352(i8v) 270
|
||||||
399: 14(int8_t) Load 398
|
413: 14(int8_t) Load 412
|
||||||
401: 14(int8_t) Select 400 399 397
|
415: 14(int8_t) Select 414 413 411
|
||||||
Store 341(i8) 401
|
Store 355(i8) 415
|
||||||
402: 14(int8_t) Load 341(i8)
|
416: 14(int8_t) Load 355(i8)
|
||||||
403: 52(i8vec2) CompositeConstruct 402 402
|
417: 52(i8vec2) CompositeConstruct 416 416
|
||||||
404: 14(int8_t) Load 341(i8)
|
418: 14(int8_t) Load 355(i8)
|
||||||
405: 14(int8_t) SNegate 404
|
419: 14(int8_t) SNegate 418
|
||||||
406: 52(i8vec2) CompositeConstruct 405 405
|
420: 52(i8vec2) CompositeConstruct 419 419
|
||||||
409: 52(i8vec2) Select 408 406 403
|
423: 52(i8vec2) Select 422 420 417
|
||||||
Store 338(i8v) 409
|
Store 352(i8v) 423
|
||||||
410: 37(ptr) AccessChain 351(u8v) 277
|
424: 37(ptr) AccessChain 365(u8v) 286
|
||||||
411: 36(int8_t) Load 410
|
425: 36(int8_t) Load 424
|
||||||
412: 37(ptr) AccessChain 351(u8v) 261
|
426: 37(ptr) AccessChain 365(u8v) 270
|
||||||
413: 36(int8_t) Load 412
|
427: 36(int8_t) Load 426
|
||||||
414: 36(int8_t) Select 400 413 411
|
428: 36(int8_t) Select 414 427 425
|
||||||
Store 353(u8) 414
|
Store 367(u8) 428
|
||||||
415: 36(int8_t) Load 353(u8)
|
429: 36(int8_t) Load 367(u8)
|
||||||
416: 190(i8vec3) CompositeConstruct 415 415 415
|
430: 199(i8vec3) CompositeConstruct 429 429 429
|
||||||
417: 36(int8_t) Load 353(u8)
|
431: 36(int8_t) Load 367(u8)
|
||||||
418: 36(int8_t) SNegate 417
|
432: 36(int8_t) SNegate 431
|
||||||
419: 190(i8vec3) CompositeConstruct 418 418 418
|
433: 199(i8vec3) CompositeConstruct 432 432 432
|
||||||
422: 190(i8vec3) Select 421 419 416
|
436: 199(i8vec3) Select 435 433 430
|
||||||
Store 351(u8v) 422
|
Store 365(u8v) 436
|
||||||
424: 52(i8vec2) Load 338(i8v)
|
438: 52(i8vec2) Load 352(i8v)
|
||||||
425: 57(int16_t) Bitcast 424
|
439: 57(int16_t) Bitcast 438
|
||||||
Store 423(i16) 425
|
Store 437(i16) 439
|
||||||
430: 427(i8vec4) Load 429(i8v4)
|
444: 441(i8vec4) Load 443(i8v4)
|
||||||
431: 27(int) Bitcast 430
|
445: 27(int) Bitcast 444
|
||||||
Store 426(i32) 431
|
Store 440(i32) 445
|
||||||
435: 49(i8vec2) Load 434(u8v2)
|
449: 49(i8vec2) Load 448(u8v2)
|
||||||
436: 64(int16_t) Bitcast 435
|
450: 64(int16_t) Bitcast 449
|
||||||
Store 433(u16) 436
|
Store 447(u16) 450
|
||||||
441: 438(i8vec4) Load 440(u8v4)
|
455: 452(i8vec4) Load 454(u8v4)
|
||||||
442: 17(int) Bitcast 441
|
456: 17(int) Bitcast 455
|
||||||
Store 437(u32) 442
|
Store 451(u32) 456
|
||||||
443: 57(int16_t) Load 423(i16)
|
457: 57(int16_t) Load 437(i16)
|
||||||
444: 52(i8vec2) Bitcast 443
|
458: 52(i8vec2) Bitcast 457
|
||||||
Store 338(i8v) 444
|
Store 352(i8v) 458
|
||||||
445: 27(int) Load 426(i32)
|
459: 27(int) Load 440(i32)
|
||||||
446: 427(i8vec4) Bitcast 445
|
460: 441(i8vec4) Bitcast 459
|
||||||
Store 429(i8v4) 446
|
Store 443(i8v4) 460
|
||||||
447: 64(int16_t) Load 433(u16)
|
461: 64(int16_t) Load 447(u16)
|
||||||
448: 49(i8vec2) Bitcast 447
|
462: 49(i8vec2) Bitcast 461
|
||||||
Store 434(u8v2) 448
|
Store 448(u8v2) 462
|
||||||
449: 17(int) Load 437(u32)
|
463: 17(int) Load 451(u32)
|
||||||
450: 438(i8vec4) Bitcast 449
|
464: 452(i8vec4) Bitcast 463
|
||||||
Store 440(u8v4) 450
|
Store 454(u8v4) 464
|
||||||
453: 190(i8vec3) Load 351(u8v)
|
467: 199(i8vec3) Load 365(u8v)
|
||||||
454: 36(int8_t) Load 353(u8)
|
468: 36(int8_t) Load 367(u8)
|
||||||
455: 190(i8vec3) CompositeConstruct 454 454 454
|
469: 199(i8vec3) CompositeConstruct 468 468 468
|
||||||
456: 420(bvec3) ULessThan 453 455
|
470: 434(bvec3) ULessThan 467 469
|
||||||
Store 452(bv) 456
|
Store 466(bv) 470
|
||||||
457: 52(i8vec2) Load 338(i8v)
|
471: 52(i8vec2) Load 352(i8v)
|
||||||
458: 14(int8_t) Load 341(i8)
|
472: 14(int8_t) Load 355(i8)
|
||||||
459: 52(i8vec2) CompositeConstruct 458 458
|
473: 52(i8vec2) CompositeConstruct 472 472
|
||||||
460: 172(bvec2) SLessThan 457 459
|
474: 172(bvec2) SLessThan 471 473
|
||||||
461: 275(ptr) AccessChain 452(bv) 277
|
475: 284(ptr) AccessChain 466(bv) 286
|
||||||
462: 171(bool) CompositeExtract 460 0
|
476: 171(bool) CompositeExtract 474 0
|
||||||
Store 461 462
|
|
||||||
463: 275(ptr) AccessChain 452(bv) 261
|
|
||||||
464: 171(bool) CompositeExtract 460 1
|
|
||||||
Store 463 464
|
|
||||||
465: 190(i8vec3) Load 351(u8v)
|
|
||||||
466: 36(int8_t) Load 353(u8)
|
|
||||||
467: 190(i8vec3) CompositeConstruct 466 466 466
|
|
||||||
468: 420(bvec3) ULessThanEqual 465 467
|
|
||||||
Store 452(bv) 468
|
|
||||||
469: 52(i8vec2) Load 338(i8v)
|
|
||||||
470: 14(int8_t) Load 341(i8)
|
|
||||||
471: 52(i8vec2) CompositeConstruct 470 470
|
|
||||||
472: 172(bvec2) SLessThanEqual 469 471
|
|
||||||
473: 275(ptr) AccessChain 452(bv) 277
|
|
||||||
474: 171(bool) CompositeExtract 472 0
|
|
||||||
Store 473 474
|
|
||||||
475: 275(ptr) AccessChain 452(bv) 261
|
|
||||||
476: 171(bool) CompositeExtract 472 1
|
|
||||||
Store 475 476
|
Store 475 476
|
||||||
477: 190(i8vec3) Load 351(u8v)
|
477: 284(ptr) AccessChain 466(bv) 270
|
||||||
478: 36(int8_t) Load 353(u8)
|
478: 171(bool) CompositeExtract 474 1
|
||||||
479: 190(i8vec3) CompositeConstruct 478 478 478
|
Store 477 478
|
||||||
480: 420(bvec3) UGreaterThan 477 479
|
479: 199(i8vec3) Load 365(u8v)
|
||||||
Store 452(bv) 480
|
480: 36(int8_t) Load 367(u8)
|
||||||
481: 52(i8vec2) Load 338(i8v)
|
481: 199(i8vec3) CompositeConstruct 480 480 480
|
||||||
482: 14(int8_t) Load 341(i8)
|
482: 434(bvec3) ULessThanEqual 479 481
|
||||||
483: 52(i8vec2) CompositeConstruct 482 482
|
Store 466(bv) 482
|
||||||
484: 172(bvec2) SGreaterThan 481 483
|
483: 52(i8vec2) Load 352(i8v)
|
||||||
485: 275(ptr) AccessChain 452(bv) 277
|
484: 14(int8_t) Load 355(i8)
|
||||||
486: 171(bool) CompositeExtract 484 0
|
485: 52(i8vec2) CompositeConstruct 484 484
|
||||||
Store 485 486
|
486: 172(bvec2) SLessThanEqual 483 485
|
||||||
487: 275(ptr) AccessChain 452(bv) 261
|
487: 284(ptr) AccessChain 466(bv) 286
|
||||||
488: 171(bool) CompositeExtract 484 1
|
488: 171(bool) CompositeExtract 486 0
|
||||||
Store 487 488
|
Store 487 488
|
||||||
489: 190(i8vec3) Load 351(u8v)
|
489: 284(ptr) AccessChain 466(bv) 270
|
||||||
490: 36(int8_t) Load 353(u8)
|
490: 171(bool) CompositeExtract 486 1
|
||||||
491: 190(i8vec3) CompositeConstruct 490 490 490
|
Store 489 490
|
||||||
492: 420(bvec3) UGreaterThanEqual 489 491
|
491: 199(i8vec3) Load 365(u8v)
|
||||||
Store 452(bv) 492
|
492: 36(int8_t) Load 367(u8)
|
||||||
493: 52(i8vec2) Load 338(i8v)
|
493: 199(i8vec3) CompositeConstruct 492 492 492
|
||||||
494: 14(int8_t) Load 341(i8)
|
494: 434(bvec3) UGreaterThan 491 493
|
||||||
495: 52(i8vec2) CompositeConstruct 494 494
|
Store 466(bv) 494
|
||||||
496: 172(bvec2) SGreaterThanEqual 493 495
|
495: 52(i8vec2) Load 352(i8v)
|
||||||
497: 275(ptr) AccessChain 452(bv) 277
|
496: 14(int8_t) Load 355(i8)
|
||||||
498: 171(bool) CompositeExtract 496 0
|
497: 52(i8vec2) CompositeConstruct 496 496
|
||||||
Store 497 498
|
498: 172(bvec2) SGreaterThan 495 497
|
||||||
499: 275(ptr) AccessChain 452(bv) 261
|
499: 284(ptr) AccessChain 466(bv) 286
|
||||||
500: 171(bool) CompositeExtract 496 1
|
500: 171(bool) CompositeExtract 498 0
|
||||||
Store 499 500
|
Store 499 500
|
||||||
501: 190(i8vec3) Load 351(u8v)
|
501: 284(ptr) AccessChain 466(bv) 270
|
||||||
502: 36(int8_t) Load 353(u8)
|
502: 171(bool) CompositeExtract 498 1
|
||||||
503: 190(i8vec3) CompositeConstruct 502 502 502
|
Store 501 502
|
||||||
504: 420(bvec3) IEqual 501 503
|
503: 199(i8vec3) Load 365(u8v)
|
||||||
Store 452(bv) 504
|
504: 36(int8_t) Load 367(u8)
|
||||||
505: 52(i8vec2) Load 338(i8v)
|
505: 199(i8vec3) CompositeConstruct 504 504 504
|
||||||
506: 14(int8_t) Load 341(i8)
|
506: 434(bvec3) UGreaterThanEqual 503 505
|
||||||
507: 52(i8vec2) CompositeConstruct 506 506
|
Store 466(bv) 506
|
||||||
508: 172(bvec2) IEqual 505 507
|
507: 52(i8vec2) Load 352(i8v)
|
||||||
509: 275(ptr) AccessChain 452(bv) 277
|
508: 14(int8_t) Load 355(i8)
|
||||||
510: 171(bool) CompositeExtract 508 0
|
509: 52(i8vec2) CompositeConstruct 508 508
|
||||||
Store 509 510
|
510: 172(bvec2) SGreaterThanEqual 507 509
|
||||||
511: 275(ptr) AccessChain 452(bv) 261
|
511: 284(ptr) AccessChain 466(bv) 286
|
||||||
512: 171(bool) CompositeExtract 508 1
|
512: 171(bool) CompositeExtract 510 0
|
||||||
Store 511 512
|
Store 511 512
|
||||||
513: 190(i8vec3) Load 351(u8v)
|
513: 284(ptr) AccessChain 466(bv) 270
|
||||||
514: 36(int8_t) Load 353(u8)
|
514: 171(bool) CompositeExtract 510 1
|
||||||
515: 190(i8vec3) CompositeConstruct 514 514 514
|
Store 513 514
|
||||||
516: 420(bvec3) INotEqual 513 515
|
515: 199(i8vec3) Load 365(u8v)
|
||||||
Store 452(bv) 516
|
516: 36(int8_t) Load 367(u8)
|
||||||
517: 52(i8vec2) Load 338(i8v)
|
517: 199(i8vec3) CompositeConstruct 516 516 516
|
||||||
518: 14(int8_t) Load 341(i8)
|
518: 434(bvec3) IEqual 515 517
|
||||||
519: 52(i8vec2) CompositeConstruct 518 518
|
Store 466(bv) 518
|
||||||
520: 172(bvec2) INotEqual 517 519
|
519: 52(i8vec2) Load 352(i8v)
|
||||||
521: 275(ptr) AccessChain 452(bv) 277
|
520: 14(int8_t) Load 355(i8)
|
||||||
522: 171(bool) CompositeExtract 520 0
|
521: 52(i8vec2) CompositeConstruct 520 520
|
||||||
Store 521 522
|
522: 172(bvec2) IEqual 519 521
|
||||||
523: 275(ptr) AccessChain 452(bv) 261
|
523: 284(ptr) AccessChain 466(bv) 286
|
||||||
524: 171(bool) CompositeExtract 520 1
|
524: 171(bool) CompositeExtract 522 0
|
||||||
Store 523 524
|
Store 523 524
|
||||||
|
525: 284(ptr) AccessChain 466(bv) 270
|
||||||
|
526: 171(bool) CompositeExtract 522 1
|
||||||
|
Store 525 526
|
||||||
|
527: 199(i8vec3) Load 365(u8v)
|
||||||
|
528: 36(int8_t) Load 367(u8)
|
||||||
|
529: 199(i8vec3) CompositeConstruct 528 528 528
|
||||||
|
530: 434(bvec3) INotEqual 527 529
|
||||||
|
Store 466(bv) 530
|
||||||
|
531: 52(i8vec2) Load 352(i8v)
|
||||||
|
532: 14(int8_t) Load 355(i8)
|
||||||
|
533: 52(i8vec2) CompositeConstruct 532 532
|
||||||
|
534: 172(bvec2) INotEqual 531 533
|
||||||
|
535: 284(ptr) AccessChain 466(bv) 286
|
||||||
|
536: 171(bool) CompositeExtract 534 0
|
||||||
|
Store 535 536
|
||||||
|
537: 284(ptr) AccessChain 466(bv) 270
|
||||||
|
538: 171(bool) CompositeExtract 534 1
|
||||||
|
Store 537 538
|
||||||
Return
|
Return
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
spv.intrinsicsSpirvLiteral.vert
|
spv.intrinsicsSpirvLiteral.vert
|
||||||
|
Validation failed
|
||||||
// Module Version 10000
|
// Module Version 10000
|
||||||
// Generated by (magic number): 8000a
|
// Generated by (magic number): 8000a
|
||||||
// Id's are bound by 12
|
// Id's are bound by 12
|
||||||
|
@ -22,7 +22,9 @@ Validation failed
|
|||||||
Decorate 11(as) Binding 0
|
Decorate 11(as) Binding 0
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
|
6: TypeRayQueryKHR
|
||||||
7: TypePointer Function 6
|
7: TypePointer Function 6
|
||||||
|
9: TypeAccelerationStructureKHR
|
||||||
10: TypePointer UniformConstant 9
|
10: TypePointer UniformConstant 9
|
||||||
11(as): 10(ptr) Variable UniformConstant
|
11(as): 10(ptr) Variable UniformConstant
|
||||||
13: TypeInt 32 0
|
13: TypeInt 32 0
|
||||||
@ -36,8 +38,6 @@ Validation failed
|
|||||||
4(main): 2 Function None 3
|
4(main): 2 Function None 3
|
||||||
5: Label
|
5: Label
|
||||||
8(rq): 7(ptr) Variable Function
|
8(rq): 7(ptr) Variable Function
|
||||||
6: TypeRayQueryKHR
|
|
||||||
9: TypeAccelerationStructureKHR
|
|
||||||
12: 9 Load 11(as)
|
12: 9 Load 11(as)
|
||||||
RayQueryInitializeKHR 8(rq) 12 14 14 18 17 20 19
|
RayQueryInitializeKHR 8(rq) 12 14 14 18 17 20 19
|
||||||
RayQueryTerminateKHR 8(rq)
|
RayQueryTerminateKHR 8(rq)
|
||||||
|
43
Test/baseResults/spv.intrinsicsSpirvTypeLocalVar.vert.out
Normal file
43
Test/baseResults/spv.intrinsicsSpirvTypeLocalVar.vert.out
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
spv.intrinsicsSpirvTypeLocalVar.vert
|
||||||
|
// Module Version 10000
|
||||||
|
// Generated by (magic number): 8000a
|
||||||
|
// Id's are bound by 22
|
||||||
|
|
||||||
|
Capability Shader
|
||||||
|
1: ExtInstImport "GLSL.std.450"
|
||||||
|
MemoryModel Logical GLSL450
|
||||||
|
EntryPoint Vertex 4 "main"
|
||||||
|
Source GLSL 460
|
||||||
|
SourceExtension "GL_EXT_spirv_intrinsics"
|
||||||
|
Name 4 "main"
|
||||||
|
Name 10 "func(spv-t1;"
|
||||||
|
Name 9 "emptyStruct"
|
||||||
|
Name 13 "size"
|
||||||
|
Name 16 "dummy"
|
||||||
|
Name 18 "param"
|
||||||
|
Decorate 13(size) SpecId 9
|
||||||
|
2: TypeVoid
|
||||||
|
3: TypeFunction 2
|
||||||
|
6: TypeStruct
|
||||||
|
7: TypePointer Function 6(struct)
|
||||||
|
8: TypeFunction 2 7(ptr)
|
||||||
|
12: TypeInt 32 1
|
||||||
|
13(size): 12(int) SpecConstant 9
|
||||||
|
14: TypeArray 6(struct) 13(size)
|
||||||
|
15: TypePointer Function 14
|
||||||
|
17: 12(int) Constant 1
|
||||||
|
4(main): 2 Function None 3
|
||||||
|
5: Label
|
||||||
|
16(dummy): 15(ptr) Variable Function
|
||||||
|
18(param): 7(ptr) Variable Function
|
||||||
|
19: 7(ptr) AccessChain 16(dummy) 17
|
||||||
|
20: 6(struct) Load 19
|
||||||
|
Store 18(param) 20
|
||||||
|
21: 2 FunctionCall 10(func(spv-t1;) 18(param)
|
||||||
|
Return
|
||||||
|
FunctionEnd
|
||||||
|
10(func(spv-t1;): 2 Function None 8
|
||||||
|
9(emptyStruct): 7(ptr) FunctionParameter
|
||||||
|
11: Label
|
||||||
|
Return
|
||||||
|
FunctionEnd
|
55
Test/baseResults/spv.invariantAll.vert.out
Normal file
55
Test/baseResults/spv.invariantAll.vert.out
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
spv.invariantAll.vert
|
||||||
|
// Module Version 10000
|
||||||
|
// Generated by (magic number): 8000a
|
||||||
|
// Id's are bound by 25
|
||||||
|
|
||||||
|
Capability Shader
|
||||||
|
1: ExtInstImport "GLSL.std.450"
|
||||||
|
MemoryModel Logical GLSL450
|
||||||
|
EntryPoint Vertex 4 "main" 13 17
|
||||||
|
Source GLSL 450
|
||||||
|
Name 4 "main"
|
||||||
|
Name 11 "gl_PerVertex"
|
||||||
|
MemberName 11(gl_PerVertex) 0 "gl_Position"
|
||||||
|
MemberName 11(gl_PerVertex) 1 "gl_PointSize"
|
||||||
|
MemberName 11(gl_PerVertex) 2 "gl_ClipDistance"
|
||||||
|
MemberName 11(gl_PerVertex) 3 "gl_CullDistance"
|
||||||
|
Name 13 ""
|
||||||
|
Name 17 "v"
|
||||||
|
MemberDecorate 11(gl_PerVertex) 0 Invariant
|
||||||
|
MemberDecorate 11(gl_PerVertex) 0 BuiltIn Position
|
||||||
|
MemberDecorate 11(gl_PerVertex) 1 Invariant
|
||||||
|
MemberDecorate 11(gl_PerVertex) 1 BuiltIn PointSize
|
||||||
|
MemberDecorate 11(gl_PerVertex) 2 Invariant
|
||||||
|
MemberDecorate 11(gl_PerVertex) 2 BuiltIn ClipDistance
|
||||||
|
MemberDecorate 11(gl_PerVertex) 3 Invariant
|
||||||
|
MemberDecorate 11(gl_PerVertex) 3 BuiltIn CullDistance
|
||||||
|
Decorate 11(gl_PerVertex) Block
|
||||||
|
Decorate 17(v) Location 0
|
||||||
|
Decorate 17(v) Invariant
|
||||||
|
2: TypeVoid
|
||||||
|
3: TypeFunction 2
|
||||||
|
6: TypeFloat 32
|
||||||
|
7: TypeVector 6(float) 4
|
||||||
|
8: TypeInt 32 0
|
||||||
|
9: 8(int) Constant 1
|
||||||
|
10: TypeArray 6(float) 9
|
||||||
|
11(gl_PerVertex): TypeStruct 7(fvec4) 6(float) 10 10
|
||||||
|
12: TypePointer Output 11(gl_PerVertex)
|
||||||
|
13: 12(ptr) Variable Output
|
||||||
|
14: TypeInt 32 1
|
||||||
|
15: 14(int) Constant 0
|
||||||
|
16: TypePointer Output 6(float)
|
||||||
|
17(v): 16(ptr) Variable Output
|
||||||
|
20: 6(float) Constant 0
|
||||||
|
21: 6(float) Constant 1065353216
|
||||||
|
23: TypePointer Output 7(fvec4)
|
||||||
|
4(main): 2 Function None 3
|
||||||
|
5: Label
|
||||||
|
18: 6(float) Load 17(v)
|
||||||
|
19: 6(float) Load 17(v)
|
||||||
|
22: 7(fvec4) CompositeConstruct 18 19 20 21
|
||||||
|
24: 23(ptr) AccessChain 13 15
|
||||||
|
Store 24 22
|
||||||
|
Return
|
||||||
|
FunctionEnd
|
@ -36,10 +36,6 @@ spv.precise.tese
|
|||||||
Decorate 43 NoContraction
|
Decorate 43 NoContraction
|
||||||
Decorate 62(in_f_color) RelaxedPrecision
|
Decorate 62(in_f_color) RelaxedPrecision
|
||||||
Decorate 62(in_f_color) Location 0
|
Decorate 62(in_f_color) Location 0
|
||||||
Decorate 67 RelaxedPrecision
|
|
||||||
Decorate 68 RelaxedPrecision
|
|
||||||
Decorate 69 RelaxedPrecision
|
|
||||||
Decorate 70 RelaxedPrecision
|
|
||||||
Decorate 97 NoContraction
|
Decorate 97 NoContraction
|
||||||
Decorate 99 NoContraction
|
Decorate 99 NoContraction
|
||||||
Decorate 101 NoContraction
|
Decorate 101 NoContraction
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
spv.shaderBallot.comp
|
spv.shaderBallot.comp
|
||||||
// Module Version 10000
|
// Module Version 10000
|
||||||
// Generated by (magic number): 8000a
|
// Generated by (magic number): 8000a
|
||||||
// Id's are bound by 343
|
// Id's are bound by 397
|
||||||
|
|
||||||
Capability Shader
|
Capability Shader
|
||||||
Capability Int64
|
Capability Int64
|
||||||
@ -42,7 +42,7 @@ spv.shaderBallot.comp
|
|||||||
Decorate 72(Buffers) BufferBlock
|
Decorate 72(Buffers) BufferBlock
|
||||||
Decorate 75(data) DescriptorSet 0
|
Decorate 75(data) DescriptorSet 0
|
||||||
Decorate 75(data) Binding 0
|
Decorate 75(data) Binding 0
|
||||||
Decorate 342 BuiltIn WorkgroupSize
|
Decorate 396 BuiltIn WorkgroupSize
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
6: TypeInt 32 0
|
6: TypeInt 32 0
|
||||||
@ -89,8 +89,8 @@ spv.shaderBallot.comp
|
|||||||
196: TypePointer Uniform 6(int)
|
196: TypePointer Uniform 6(int)
|
||||||
203: TypePointer Uniform 20(ivec4)
|
203: TypePointer Uniform 20(ivec4)
|
||||||
218: TypeVector 6(int) 3
|
218: TypeVector 6(int) 3
|
||||||
341: 6(int) Constant 8
|
395: 6(int) Constant 8
|
||||||
342: 218(ivec3) ConstantComposite 341 341 100
|
396: 218(ivec3) ConstantComposite 395 395 100
|
||||||
4(main): 2 Function None 3
|
4(main): 2 Function None 3
|
||||||
5: Label
|
5: Label
|
||||||
8(invocation): 7(ptr) Variable Function
|
8(invocation): 7(ptr) Variable Function
|
||||||
@ -329,107 +329,161 @@ spv.shaderBallot.comp
|
|||||||
257: 88(ptr) AccessChain 75(data) 86 77
|
257: 88(ptr) AccessChain 75(data) 86 77
|
||||||
258: 69(fvec4) Load 257
|
258: 69(fvec4) Load 257
|
||||||
259: 87(fvec2) VectorShuffle 258 258 0 1
|
259: 87(fvec2) VectorShuffle 258 258 0 1
|
||||||
260: 87(fvec2) SubgroupFirstInvocationKHR 259
|
260: 68(float) CompositeExtract 259 0
|
||||||
261: 79(ptr) AccessChain 75(data) 256 77 78
|
261: 68(float) SubgroupFirstInvocationKHR 260
|
||||||
262: 68(float) CompositeExtract 260 0
|
262: 68(float) CompositeExtract 259 1
|
||||||
Store 261 262
|
263: 68(float) SubgroupFirstInvocationKHR 262
|
||||||
263: 79(ptr) AccessChain 75(data) 256 77 100
|
264: 87(fvec2) CompositeConstruct 261 263
|
||||||
264: 68(float) CompositeExtract 260 1
|
265: 79(ptr) AccessChain 75(data) 256 77 78
|
||||||
Store 263 264
|
266: 68(float) CompositeExtract 264 0
|
||||||
265: 6(int) Load 8(invocation)
|
Store 265 266
|
||||||
266: 88(ptr) AccessChain 75(data) 104 77
|
267: 79(ptr) AccessChain 75(data) 256 77 100
|
||||||
267: 69(fvec4) Load 266
|
268: 68(float) CompositeExtract 264 1
|
||||||
268: 105(fvec3) VectorShuffle 267 267 0 1 2
|
Store 267 268
|
||||||
269: 105(fvec3) SubgroupFirstInvocationKHR 268
|
269: 6(int) Load 8(invocation)
|
||||||
270: 79(ptr) AccessChain 75(data) 265 77 78
|
270: 88(ptr) AccessChain 75(data) 104 77
|
||||||
271: 68(float) CompositeExtract 269 0
|
271: 69(fvec4) Load 270
|
||||||
Store 270 271
|
272: 105(fvec3) VectorShuffle 271 271 0 1 2
|
||||||
272: 79(ptr) AccessChain 75(data) 265 77 100
|
273: 68(float) CompositeExtract 272 0
|
||||||
273: 68(float) CompositeExtract 269 1
|
274: 68(float) SubgroupFirstInvocationKHR 273
|
||||||
Store 272 273
|
275: 68(float) CompositeExtract 272 1
|
||||||
274: 79(ptr) AccessChain 75(data) 265 77 121
|
276: 68(float) SubgroupFirstInvocationKHR 275
|
||||||
275: 68(float) CompositeExtract 269 2
|
277: 68(float) CompositeExtract 272 2
|
||||||
Store 274 275
|
278: 68(float) SubgroupFirstInvocationKHR 277
|
||||||
276: 6(int) Load 8(invocation)
|
279: 105(fvec3) CompositeConstruct 274 276 278
|
||||||
277: 88(ptr) AccessChain 75(data) 125 77
|
280: 79(ptr) AccessChain 75(data) 269 77 78
|
||||||
278: 69(fvec4) Load 277
|
281: 68(float) CompositeExtract 279 0
|
||||||
279: 69(fvec4) SubgroupFirstInvocationKHR 278
|
Store 280 281
|
||||||
280: 88(ptr) AccessChain 75(data) 276 77
|
282: 79(ptr) AccessChain 75(data) 269 77 100
|
||||||
Store 280 279
|
283: 68(float) CompositeExtract 279 1
|
||||||
281: 6(int) Load 8(invocation)
|
Store 282 283
|
||||||
282: 140(ptr) AccessChain 75(data) 77 86 78
|
284: 79(ptr) AccessChain 75(data) 269 77 121
|
||||||
283: 70(int) Load 282
|
285: 68(float) CompositeExtract 279 2
|
||||||
284: 70(int) SubgroupFirstInvocationKHR 283
|
Store 284 285
|
||||||
285: 140(ptr) AccessChain 75(data) 281 86 78
|
|
||||||
Store 285 284
|
|
||||||
286: 6(int) Load 8(invocation)
|
286: 6(int) Load 8(invocation)
|
||||||
287: 148(ptr) AccessChain 75(data) 86 86
|
287: 88(ptr) AccessChain 75(data) 125 77
|
||||||
288: 71(ivec4) Load 287
|
288: 69(fvec4) Load 287
|
||||||
289: 147(ivec2) VectorShuffle 288 288 0 1
|
289: 68(float) CompositeExtract 288 0
|
||||||
290: 147(ivec2) SubgroupFirstInvocationKHR 289
|
290: 68(float) SubgroupFirstInvocationKHR 289
|
||||||
291: 140(ptr) AccessChain 75(data) 286 86 78
|
291: 68(float) CompositeExtract 288 1
|
||||||
292: 70(int) CompositeExtract 290 0
|
292: 68(float) SubgroupFirstInvocationKHR 291
|
||||||
Store 291 292
|
293: 68(float) CompositeExtract 288 2
|
||||||
293: 140(ptr) AccessChain 75(data) 286 86 100
|
294: 68(float) SubgroupFirstInvocationKHR 293
|
||||||
294: 70(int) CompositeExtract 290 1
|
295: 68(float) CompositeExtract 288 3
|
||||||
Store 293 294
|
296: 68(float) SubgroupFirstInvocationKHR 295
|
||||||
295: 6(int) Load 8(invocation)
|
297: 69(fvec4) CompositeConstruct 290 292 294 296
|
||||||
296: 148(ptr) AccessChain 75(data) 104 86
|
298: 88(ptr) AccessChain 75(data) 286 77
|
||||||
297: 71(ivec4) Load 296
|
Store 298 297
|
||||||
298: 163(ivec3) VectorShuffle 297 297 0 1 2
|
299: 6(int) Load 8(invocation)
|
||||||
299: 163(ivec3) SubgroupFirstInvocationKHR 298
|
300: 140(ptr) AccessChain 75(data) 77 86 78
|
||||||
300: 140(ptr) AccessChain 75(data) 295 86 78
|
301: 70(int) Load 300
|
||||||
301: 70(int) CompositeExtract 299 0
|
302: 70(int) SubgroupFirstInvocationKHR 301
|
||||||
Store 300 301
|
303: 140(ptr) AccessChain 75(data) 299 86 78
|
||||||
302: 140(ptr) AccessChain 75(data) 295 86 100
|
Store 303 302
|
||||||
303: 70(int) CompositeExtract 299 1
|
304: 6(int) Load 8(invocation)
|
||||||
Store 302 303
|
305: 148(ptr) AccessChain 75(data) 86 86
|
||||||
304: 140(ptr) AccessChain 75(data) 295 86 121
|
306: 71(ivec4) Load 305
|
||||||
305: 70(int) CompositeExtract 299 2
|
307: 147(ivec2) VectorShuffle 306 306 0 1
|
||||||
Store 304 305
|
308: 70(int) CompositeExtract 307 0
|
||||||
306: 6(int) Load 8(invocation)
|
309: 70(int) SubgroupFirstInvocationKHR 308
|
||||||
307: 148(ptr) AccessChain 75(data) 125 86
|
310: 70(int) CompositeExtract 307 1
|
||||||
308: 71(ivec4) Load 307
|
311: 70(int) SubgroupFirstInvocationKHR 310
|
||||||
309: 71(ivec4) SubgroupFirstInvocationKHR 308
|
312: 147(ivec2) CompositeConstruct 309 311
|
||||||
310: 148(ptr) AccessChain 75(data) 306 86
|
313: 140(ptr) AccessChain 75(data) 304 86 78
|
||||||
Store 310 309
|
314: 70(int) CompositeExtract 312 0
|
||||||
311: 6(int) Load 8(invocation)
|
Store 313 314
|
||||||
312: 196(ptr) AccessChain 75(data) 77 104 78
|
315: 140(ptr) AccessChain 75(data) 304 86 100
|
||||||
313: 6(int) Load 312
|
316: 70(int) CompositeExtract 312 1
|
||||||
314: 6(int) SubgroupFirstInvocationKHR 313
|
Store 315 316
|
||||||
315: 196(ptr) AccessChain 75(data) 311 104 78
|
317: 6(int) Load 8(invocation)
|
||||||
Store 315 314
|
318: 148(ptr) AccessChain 75(data) 104 86
|
||||||
316: 6(int) Load 8(invocation)
|
319: 71(ivec4) Load 318
|
||||||
317: 203(ptr) AccessChain 75(data) 86 104
|
320: 163(ivec3) VectorShuffle 319 319 0 1 2
|
||||||
318: 20(ivec4) Load 317
|
321: 70(int) CompositeExtract 320 0
|
||||||
319: 26(ivec2) VectorShuffle 318 318 0 1
|
322: 70(int) SubgroupFirstInvocationKHR 321
|
||||||
320: 26(ivec2) SubgroupFirstInvocationKHR 319
|
323: 70(int) CompositeExtract 320 1
|
||||||
321: 196(ptr) AccessChain 75(data) 316 104 78
|
324: 70(int) SubgroupFirstInvocationKHR 323
|
||||||
322: 6(int) CompositeExtract 320 0
|
325: 70(int) CompositeExtract 320 2
|
||||||
Store 321 322
|
326: 70(int) SubgroupFirstInvocationKHR 325
|
||||||
323: 196(ptr) AccessChain 75(data) 316 104 100
|
327: 163(ivec3) CompositeConstruct 322 324 326
|
||||||
324: 6(int) CompositeExtract 320 1
|
328: 140(ptr) AccessChain 75(data) 317 86 78
|
||||||
Store 323 324
|
329: 70(int) CompositeExtract 327 0
|
||||||
325: 6(int) Load 8(invocation)
|
Store 328 329
|
||||||
326: 203(ptr) AccessChain 75(data) 104 104
|
330: 140(ptr) AccessChain 75(data) 317 86 100
|
||||||
327: 20(ivec4) Load 326
|
331: 70(int) CompositeExtract 327 1
|
||||||
328: 218(ivec3) VectorShuffle 327 327 0 1 2
|
|
||||||
329: 218(ivec3) SubgroupFirstInvocationKHR 328
|
|
||||||
330: 196(ptr) AccessChain 75(data) 325 104 78
|
|
||||||
331: 6(int) CompositeExtract 329 0
|
|
||||||
Store 330 331
|
Store 330 331
|
||||||
332: 196(ptr) AccessChain 75(data) 325 104 100
|
332: 140(ptr) AccessChain 75(data) 317 86 121
|
||||||
333: 6(int) CompositeExtract 329 1
|
333: 70(int) CompositeExtract 327 2
|
||||||
Store 332 333
|
Store 332 333
|
||||||
334: 196(ptr) AccessChain 75(data) 325 104 121
|
334: 6(int) Load 8(invocation)
|
||||||
335: 6(int) CompositeExtract 329 2
|
335: 148(ptr) AccessChain 75(data) 125 86
|
||||||
Store 334 335
|
336: 71(ivec4) Load 335
|
||||||
336: 6(int) Load 8(invocation)
|
337: 70(int) CompositeExtract 336 0
|
||||||
337: 203(ptr) AccessChain 75(data) 125 104
|
338: 70(int) SubgroupFirstInvocationKHR 337
|
||||||
338: 20(ivec4) Load 337
|
339: 70(int) CompositeExtract 336 1
|
||||||
339: 20(ivec4) SubgroupFirstInvocationKHR 338
|
340: 70(int) SubgroupFirstInvocationKHR 339
|
||||||
340: 203(ptr) AccessChain 75(data) 336 104
|
341: 70(int) CompositeExtract 336 2
|
||||||
Store 340 339
|
342: 70(int) SubgroupFirstInvocationKHR 341
|
||||||
|
343: 70(int) CompositeExtract 336 3
|
||||||
|
344: 70(int) SubgroupFirstInvocationKHR 343
|
||||||
|
345: 71(ivec4) CompositeConstruct 338 340 342 344
|
||||||
|
346: 148(ptr) AccessChain 75(data) 334 86
|
||||||
|
Store 346 345
|
||||||
|
347: 6(int) Load 8(invocation)
|
||||||
|
348: 196(ptr) AccessChain 75(data) 77 104 78
|
||||||
|
349: 6(int) Load 348
|
||||||
|
350: 6(int) SubgroupFirstInvocationKHR 349
|
||||||
|
351: 196(ptr) AccessChain 75(data) 347 104 78
|
||||||
|
Store 351 350
|
||||||
|
352: 6(int) Load 8(invocation)
|
||||||
|
353: 203(ptr) AccessChain 75(data) 86 104
|
||||||
|
354: 20(ivec4) Load 353
|
||||||
|
355: 26(ivec2) VectorShuffle 354 354 0 1
|
||||||
|
356: 6(int) CompositeExtract 355 0
|
||||||
|
357: 6(int) SubgroupFirstInvocationKHR 356
|
||||||
|
358: 6(int) CompositeExtract 355 1
|
||||||
|
359: 6(int) SubgroupFirstInvocationKHR 358
|
||||||
|
360: 26(ivec2) CompositeConstruct 357 359
|
||||||
|
361: 196(ptr) AccessChain 75(data) 352 104 78
|
||||||
|
362: 6(int) CompositeExtract 360 0
|
||||||
|
Store 361 362
|
||||||
|
363: 196(ptr) AccessChain 75(data) 352 104 100
|
||||||
|
364: 6(int) CompositeExtract 360 1
|
||||||
|
Store 363 364
|
||||||
|
365: 6(int) Load 8(invocation)
|
||||||
|
366: 203(ptr) AccessChain 75(data) 104 104
|
||||||
|
367: 20(ivec4) Load 366
|
||||||
|
368: 218(ivec3) VectorShuffle 367 367 0 1 2
|
||||||
|
369: 6(int) CompositeExtract 368 0
|
||||||
|
370: 6(int) SubgroupFirstInvocationKHR 369
|
||||||
|
371: 6(int) CompositeExtract 368 1
|
||||||
|
372: 6(int) SubgroupFirstInvocationKHR 371
|
||||||
|
373: 6(int) CompositeExtract 368 2
|
||||||
|
374: 6(int) SubgroupFirstInvocationKHR 373
|
||||||
|
375: 218(ivec3) CompositeConstruct 370 372 374
|
||||||
|
376: 196(ptr) AccessChain 75(data) 365 104 78
|
||||||
|
377: 6(int) CompositeExtract 375 0
|
||||||
|
Store 376 377
|
||||||
|
378: 196(ptr) AccessChain 75(data) 365 104 100
|
||||||
|
379: 6(int) CompositeExtract 375 1
|
||||||
|
Store 378 379
|
||||||
|
380: 196(ptr) AccessChain 75(data) 365 104 121
|
||||||
|
381: 6(int) CompositeExtract 375 2
|
||||||
|
Store 380 381
|
||||||
|
382: 6(int) Load 8(invocation)
|
||||||
|
383: 203(ptr) AccessChain 75(data) 125 104
|
||||||
|
384: 20(ivec4) Load 383
|
||||||
|
385: 6(int) CompositeExtract 384 0
|
||||||
|
386: 6(int) SubgroupFirstInvocationKHR 385
|
||||||
|
387: 6(int) CompositeExtract 384 1
|
||||||
|
388: 6(int) SubgroupFirstInvocationKHR 387
|
||||||
|
389: 6(int) CompositeExtract 384 2
|
||||||
|
390: 6(int) SubgroupFirstInvocationKHR 389
|
||||||
|
391: 6(int) CompositeExtract 384 3
|
||||||
|
392: 6(int) SubgroupFirstInvocationKHR 391
|
||||||
|
393: 20(ivec4) CompositeConstruct 386 388 390 392
|
||||||
|
394: 203(ptr) AccessChain 75(data) 382 104
|
||||||
|
Store 394 393
|
||||||
Branch 67
|
Branch 67
|
||||||
67: Label
|
67: Label
|
||||||
Return
|
Return
|
||||||
|
@ -24,6 +24,7 @@ spv.subgroup.frag
|
|||||||
Decorate 13(gl_SubgroupInvocationID) Flat
|
Decorate 13(gl_SubgroupInvocationID) Flat
|
||||||
Decorate 13(gl_SubgroupInvocationID) BuiltIn SubgroupLocalInvocationId
|
Decorate 13(gl_SubgroupInvocationID) BuiltIn SubgroupLocalInvocationId
|
||||||
Decorate 14 RelaxedPrecision
|
Decorate 14 RelaxedPrecision
|
||||||
|
Decorate 16 RelaxedPrecision
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
6: TypeInt 32 0
|
6: TypeInt 32 0
|
||||||
|
@ -33,6 +33,7 @@ spv.subgroup.geom
|
|||||||
Decorate 20(gl_SubgroupInvocationID) RelaxedPrecision
|
Decorate 20(gl_SubgroupInvocationID) RelaxedPrecision
|
||||||
Decorate 20(gl_SubgroupInvocationID) BuiltIn SubgroupLocalInvocationId
|
Decorate 20(gl_SubgroupInvocationID) BuiltIn SubgroupLocalInvocationId
|
||||||
Decorate 21 RelaxedPrecision
|
Decorate 21 RelaxedPrecision
|
||||||
|
Decorate 23 RelaxedPrecision
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
6: TypeInt 32 0
|
6: TypeInt 32 0
|
||||||
|
@ -30,6 +30,7 @@ spv.subgroup.tesc
|
|||||||
Decorate 20(gl_SubgroupInvocationID) RelaxedPrecision
|
Decorate 20(gl_SubgroupInvocationID) RelaxedPrecision
|
||||||
Decorate 20(gl_SubgroupInvocationID) BuiltIn SubgroupLocalInvocationId
|
Decorate 20(gl_SubgroupInvocationID) BuiltIn SubgroupLocalInvocationId
|
||||||
Decorate 21 RelaxedPrecision
|
Decorate 21 RelaxedPrecision
|
||||||
|
Decorate 23 RelaxedPrecision
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
6: TypeInt 32 0
|
6: TypeInt 32 0
|
||||||
|
@ -32,6 +32,7 @@ spv.subgroup.tese
|
|||||||
Decorate 20(gl_SubgroupInvocationID) RelaxedPrecision
|
Decorate 20(gl_SubgroupInvocationID) RelaxedPrecision
|
||||||
Decorate 20(gl_SubgroupInvocationID) BuiltIn SubgroupLocalInvocationId
|
Decorate 20(gl_SubgroupInvocationID) BuiltIn SubgroupLocalInvocationId
|
||||||
Decorate 21 RelaxedPrecision
|
Decorate 21 RelaxedPrecision
|
||||||
|
Decorate 23 RelaxedPrecision
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
6: TypeInt 32 0
|
6: TypeInt 32 0
|
||||||
|
@ -29,6 +29,7 @@ spv.subgroup.vert
|
|||||||
Decorate 20(gl_SubgroupInvocationID) RelaxedPrecision
|
Decorate 20(gl_SubgroupInvocationID) RelaxedPrecision
|
||||||
Decorate 20(gl_SubgroupInvocationID) BuiltIn SubgroupLocalInvocationId
|
Decorate 20(gl_SubgroupInvocationID) BuiltIn SubgroupLocalInvocationId
|
||||||
Decorate 21 RelaxedPrecision
|
Decorate 21 RelaxedPrecision
|
||||||
|
Decorate 23 RelaxedPrecision
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
6: TypeInt 32 0
|
6: TypeInt 32 0
|
||||||
|
@ -75,6 +75,7 @@ spv.uint.frag
|
|||||||
Decorate 90 RelaxedPrecision
|
Decorate 90 RelaxedPrecision
|
||||||
Decorate 91 RelaxedPrecision
|
Decorate 91 RelaxedPrecision
|
||||||
Decorate 92 RelaxedPrecision
|
Decorate 92 RelaxedPrecision
|
||||||
|
Decorate 93 RelaxedPrecision
|
||||||
Decorate 97 RelaxedPrecision
|
Decorate 97 RelaxedPrecision
|
||||||
Decorate 98 RelaxedPrecision
|
Decorate 98 RelaxedPrecision
|
||||||
Decorate 101 RelaxedPrecision
|
Decorate 101 RelaxedPrecision
|
||||||
|
@ -1,8 +1,7 @@
|
|||||||
spv.viewportArray2.tesc
|
spv.viewportArray2.tesc
|
||||||
Validation failed
|
|
||||||
// Module Version 10000
|
// Module Version 10000
|
||||||
// Generated by (magic number): 8000a
|
// Generated by (magic number): 8000a
|
||||||
// Id's are bound by 25
|
// Id's are bound by 23
|
||||||
|
|
||||||
Capability Tessellation
|
Capability Tessellation
|
||||||
Capability ShaderViewportIndexLayerNV
|
Capability ShaderViewportIndexLayerNV
|
||||||
@ -11,23 +10,21 @@ Validation failed
|
|||||||
Extension "SPV_NV_viewport_array2"
|
Extension "SPV_NV_viewport_array2"
|
||||||
1: ExtInstImport "GLSL.std.450"
|
1: ExtInstImport "GLSL.std.450"
|
||||||
MemoryModel Logical GLSL450
|
MemoryModel Logical GLSL450
|
||||||
EntryPoint TessellationControl 4 "main" 14 16 22 24
|
EntryPoint TessellationControl 4 "main" 14 16 22
|
||||||
ExecutionMode 4 OutputVertices 4
|
ExecutionMode 4 OutputVertices 4
|
||||||
Source GLSL 450
|
Source GLSL 430
|
||||||
SourceExtension "GL_NV_viewport_array2"
|
SourceExtension "GL_NV_viewport_array2"
|
||||||
Name 4 "main"
|
Name 4 "main"
|
||||||
Name 10 "gl_PerVertex"
|
Name 10 "gl_PerVertex"
|
||||||
MemberName 10(gl_PerVertex) 0 "gl_ViewportMask"
|
MemberName 10(gl_PerVertex) 0 "gl_ViewportMask"
|
||||||
Name 14 "gl_out"
|
Name 14 "gl_out"
|
||||||
Name 16 "gl_InvocationID"
|
Name 16 "gl_InvocationID"
|
||||||
Name 22 "gl_ViewportIndex"
|
Name 22 "gl_Layer"
|
||||||
Name 24 "gl_Layer"
|
|
||||||
MemberDecorate 10(gl_PerVertex) 0 BuiltIn ViewportMaskNV
|
MemberDecorate 10(gl_PerVertex) 0 BuiltIn ViewportMaskNV
|
||||||
Decorate 10(gl_PerVertex) Block
|
Decorate 10(gl_PerVertex) Block
|
||||||
Decorate 16(gl_InvocationID) BuiltIn InvocationId
|
Decorate 16(gl_InvocationID) BuiltIn InvocationId
|
||||||
Decorate 22(gl_ViewportIndex) BuiltIn ViewportIndex
|
Decorate 22(gl_Layer) BuiltIn Layer
|
||||||
Decorate 24(gl_Layer) BuiltIn Layer
|
Decorate 22(gl_Layer) ViewportRelativeNV
|
||||||
Decorate 24(gl_Layer) ViewportRelativeNV
|
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
6: TypeInt 32 1
|
6: TypeInt 32 1
|
||||||
@ -44,14 +41,11 @@ Validation failed
|
|||||||
18: 6(int) Constant 0
|
18: 6(int) Constant 0
|
||||||
19: 6(int) Constant 1
|
19: 6(int) Constant 1
|
||||||
20: TypePointer Output 6(int)
|
20: TypePointer Output 6(int)
|
||||||
22(gl_ViewportIndex): 20(ptr) Variable Output
|
22(gl_Layer): 20(ptr) Variable Output
|
||||||
23: 6(int) Constant 2
|
|
||||||
24(gl_Layer): 20(ptr) Variable Output
|
|
||||||
4(main): 2 Function None 3
|
4(main): 2 Function None 3
|
||||||
5: Label
|
5: Label
|
||||||
17: 6(int) Load 16(gl_InvocationID)
|
17: 6(int) Load 16(gl_InvocationID)
|
||||||
21: 20(ptr) AccessChain 14(gl_out) 17 18 18
|
21: 20(ptr) AccessChain 14(gl_out) 17 18 18
|
||||||
Store 21 19
|
Store 21 19
|
||||||
Store 22(gl_ViewportIndex) 23
|
|
||||||
Return
|
Return
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
|
@ -134,7 +134,7 @@ ERROR: node is still EOpNull!
|
|||||||
0:59 Condition
|
0:59 Condition
|
||||||
0:59 Compare Equal ( temp bool)
|
0:59 Compare Equal ( temp bool)
|
||||||
0:59 'shiftedii' ( temp mediump int)
|
0:59 'shiftedii' ( temp mediump int)
|
||||||
0:59 Convert uint to int ( temp int)
|
0:59 Convert uint to int ( temp mediump int)
|
||||||
0:59 'shiftedui' ( temp mediump uint)
|
0:59 'shiftedui' ( temp mediump uint)
|
||||||
0:59 true case
|
0:59 true case
|
||||||
0:60 move second child to first child ( temp mediump 4-component vector of uint)
|
0:60 move second child to first child ( temp mediump 4-component vector of uint)
|
||||||
@ -433,7 +433,7 @@ ERROR: node is still EOpNull!
|
|||||||
0:59 Condition
|
0:59 Condition
|
||||||
0:59 Compare Equal ( temp bool)
|
0:59 Compare Equal ( temp bool)
|
||||||
0:59 'shiftedii' ( temp mediump int)
|
0:59 'shiftedii' ( temp mediump int)
|
||||||
0:59 Convert uint to int ( temp int)
|
0:59 Convert uint to int ( temp mediump int)
|
||||||
0:59 'shiftedui' ( temp mediump uint)
|
0:59 'shiftedui' ( temp mediump uint)
|
||||||
0:59 true case
|
0:59 true case
|
||||||
0:60 move second child to first child ( temp mediump 4-component vector of uint)
|
0:60 move second child to first child ( temp mediump 4-component vector of uint)
|
||||||
|
@ -34,8 +34,8 @@ Shader version: 460
|
|||||||
0:? 'Color' ( smooth out highp 4-component vector of float)
|
0:? 'Color' ( smooth out highp 4-component vector of float)
|
||||||
0:? 'UV' ( smooth out highp 2-component vector of float)
|
0:? 'UV' ( smooth out highp 2-component vector of float)
|
||||||
0:? 'anon@1' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out unsized 1-element array of float ClipDistance gl_ClipDistance, out unsized 1-element array of float CullDistance gl_CullDistance})
|
0:? 'anon@1' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out unsized 1-element array of float ClipDistance gl_ClipDistance, out unsized 1-element array of float CullDistance gl_CullDistance})
|
||||||
0:? 'gl_VertexID' ( in int VertexIndex)
|
0:? 'gl_VertexIndex' ( in int VertexIndex)
|
||||||
0:? 'gl_InstanceID' ( in int InstanceIndex)
|
0:? 'gl_InstanceIndex' ( in int InstanceIndex)
|
||||||
|
|
||||||
vk.relaxed.changeSet.frag
|
vk.relaxed.changeSet.frag
|
||||||
Shader version: 460
|
Shader version: 460
|
||||||
@ -108,8 +108,8 @@ Shader version: 460
|
|||||||
0:? 'Color' ( smooth out highp 4-component vector of float)
|
0:? 'Color' ( smooth out highp 4-component vector of float)
|
||||||
0:? 'UV' ( smooth out highp 2-component vector of float)
|
0:? 'UV' ( smooth out highp 2-component vector of float)
|
||||||
0:? 'anon@1' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance, out 1-element array of float CullDistance gl_CullDistance})
|
0:? 'anon@1' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance, out 1-element array of float CullDistance gl_CullDistance})
|
||||||
0:? 'gl_VertexID' ( in int VertexIndex)
|
0:? 'gl_VertexIndex' ( in int VertexIndex)
|
||||||
0:? 'gl_InstanceID' ( in int InstanceIndex)
|
0:? 'gl_InstanceIndex' ( in int InstanceIndex)
|
||||||
Shader version: 460
|
Shader version: 460
|
||||||
gl_FragCoord origin is upper left
|
gl_FragCoord origin is upper left
|
||||||
0:? Sequence
|
0:? Sequence
|
||||||
@ -162,8 +162,8 @@ gl_FragCoord origin is upper left
|
|||||||
MemberName 28(gl_DefaultUniformBlock) 0 "projectionMatrix"
|
MemberName 28(gl_DefaultUniformBlock) 0 "projectionMatrix"
|
||||||
Name 30 ""
|
Name 30 ""
|
||||||
Name 34 "aPos"
|
Name 34 "aPos"
|
||||||
Name 44 "gl_VertexID"
|
Name 44 "gl_VertexIndex"
|
||||||
Name 45 "gl_InstanceID"
|
Name 45 "gl_InstanceIndex"
|
||||||
Decorate 9(Color) Location 0
|
Decorate 9(Color) Location 0
|
||||||
Decorate 11(aColor) Location 2
|
Decorate 11(aColor) Location 2
|
||||||
Decorate 15(UV) Location 1
|
Decorate 15(UV) Location 1
|
||||||
@ -180,8 +180,8 @@ gl_FragCoord origin is upper left
|
|||||||
Decorate 30 DescriptorSet 0
|
Decorate 30 DescriptorSet 0
|
||||||
Decorate 30 Binding 0
|
Decorate 30 Binding 0
|
||||||
Decorate 34(aPos) Location 0
|
Decorate 34(aPos) Location 0
|
||||||
Decorate 44(gl_VertexID) BuiltIn VertexIndex
|
Decorate 44(gl_VertexIndex) BuiltIn VertexIndex
|
||||||
Decorate 45(gl_InstanceID) BuiltIn InstanceIndex
|
Decorate 45(gl_InstanceIndex) BuiltIn InstanceIndex
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
6: TypeFloat 32
|
6: TypeFloat 32
|
||||||
@ -212,8 +212,8 @@ gl_FragCoord origin is upper left
|
|||||||
36: 6(float) Constant 0
|
36: 6(float) Constant 0
|
||||||
37: 6(float) Constant 1065353216
|
37: 6(float) Constant 1065353216
|
||||||
43: TypePointer Input 25(int)
|
43: TypePointer Input 25(int)
|
||||||
44(gl_VertexID): 43(ptr) Variable Input
|
44(gl_VertexIndex): 43(ptr) Variable Input
|
||||||
45(gl_InstanceID): 43(ptr) Variable Input
|
45(gl_InstanceIndex): 43(ptr) Variable Input
|
||||||
4(main): 2 Function None 3
|
4(main): 2 Function None 3
|
||||||
5: Label
|
5: Label
|
||||||
12: 7(fvec4) Load 11(aColor)
|
12: 7(fvec4) Load 11(aColor)
|
||||||
|
@ -28,8 +28,8 @@ Shader version: 460
|
|||||||
0:? Linker Objects
|
0:? Linker Objects
|
||||||
0:? 'io' (layout( location=0) smooth out highp 4-component vector of float)
|
0:? 'io' (layout( location=0) smooth out highp 4-component vector of float)
|
||||||
0:? 'anon@0' (layout( column_major std140) uniform block{ uniform highp 2-component vector of float a})
|
0:? 'anon@0' (layout( column_major std140) uniform block{ uniform highp 2-component vector of float a})
|
||||||
0:? 'gl_VertexID' ( in int VertexIndex)
|
0:? 'gl_VertexIndex' ( in int VertexIndex)
|
||||||
0:? 'gl_InstanceID' ( in int InstanceIndex)
|
0:? 'gl_InstanceIndex' ( in int InstanceIndex)
|
||||||
|
|
||||||
vk.relaxed.errorcheck.frag
|
vk.relaxed.errorcheck.frag
|
||||||
Shader version: 460
|
Shader version: 460
|
||||||
@ -94,8 +94,8 @@ Shader version: 460
|
|||||||
0:? Linker Objects
|
0:? Linker Objects
|
||||||
0:? 'io' (layout( location=0) smooth out highp 4-component vector of float)
|
0:? 'io' (layout( location=0) smooth out highp 4-component vector of float)
|
||||||
0:? 'anon@0' (layout( column_major std140) uniform block{ uniform highp 2-component vector of float a})
|
0:? 'anon@0' (layout( column_major std140) uniform block{ uniform highp 2-component vector of float a})
|
||||||
0:? 'gl_VertexID' ( in int VertexIndex)
|
0:? 'gl_VertexIndex' ( in int VertexIndex)
|
||||||
0:? 'gl_InstanceID' ( in int InstanceIndex)
|
0:? 'gl_InstanceIndex' ( in int InstanceIndex)
|
||||||
Shader version: 460
|
Shader version: 460
|
||||||
gl_FragCoord origin is upper left
|
gl_FragCoord origin is upper left
|
||||||
0:? Sequence
|
0:? Sequence
|
||||||
|
@ -93,7 +93,9 @@ Shader version: 460
|
|||||||
0:28 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b2, uniform highp 2-component vector of float b1, uniform highp 4-component vector of float c2, uniform highp 4-component vector of float d, uniform 4-element array of highp 4-component vector of float s})
|
0:28 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b2, uniform highp 2-component vector of float b1, uniform highp 4-component vector of float c2, uniform highp 4-component vector of float d, uniform 4-element array of highp 4-component vector of float s})
|
||||||
0:28 Constant:
|
0:28 Constant:
|
||||||
0:28 5 (const uint)
|
0:28 5 (const uint)
|
||||||
0:28 'gl_VertexID' ( in int VertexIndex)
|
0:28 subtract ( temp int)
|
||||||
|
0:28 'gl_VertexIndex' ( in int VertexIndex)
|
||||||
|
0:28 'gl_VertexIndex' ( in int VertexIndex)
|
||||||
0:29 move second child to first child ( temp highp float)
|
0:29 move second child to first child ( temp highp float)
|
||||||
0:29 direct index ( temp highp float)
|
0:29 direct index ( temp highp float)
|
||||||
0:29 'v' ( temp highp 4-component vector of float)
|
0:29 'v' ( temp highp 4-component vector of float)
|
||||||
@ -105,7 +107,9 @@ Shader version: 460
|
|||||||
0:29 Constant:
|
0:29 Constant:
|
||||||
0:29 0 (const int)
|
0:29 0 (const int)
|
||||||
0:29 Convert int to float ( temp highp float)
|
0:29 Convert int to float ( temp highp float)
|
||||||
0:29 'gl_InstanceID' ( in highp int InstanceIndex)
|
0:29 subtract ( temp highp int)
|
||||||
|
0:29 'gl_InstanceIndex' ( in highp int InstanceIndex)
|
||||||
|
0:29 'gl_InstanceIndex' ( in highp int InstanceIndex)
|
||||||
0:30 move second child to first child ( temp highp 4-component vector of float)
|
0:30 move second child to first child ( temp highp 4-component vector of float)
|
||||||
0:30 'io' (layout( location=0) smooth out highp 4-component vector of float)
|
0:30 'io' (layout( location=0) smooth out highp 4-component vector of float)
|
||||||
0:30 'v' ( temp highp 4-component vector of float)
|
0:30 'v' ( temp highp 4-component vector of float)
|
||||||
@ -113,8 +117,8 @@ Shader version: 460
|
|||||||
0:? 'io' (layout( location=0) smooth out highp 4-component vector of float)
|
0:? 'io' (layout( location=0) smooth out highp 4-component vector of float)
|
||||||
0:? 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b2, uniform highp 2-component vector of float b1, uniform highp 4-component vector of float c2, uniform highp 4-component vector of float d, uniform 4-element array of highp 4-component vector of float s})
|
0:? 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b2, uniform highp 2-component vector of float b1, uniform highp 4-component vector of float c2, uniform highp 4-component vector of float d, uniform 4-element array of highp 4-component vector of float s})
|
||||||
0:? 'anon@1' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter3, coherent volatile buffer highp uint counter2})
|
0:? 'anon@1' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter3, coherent volatile buffer highp uint counter2})
|
||||||
0:? 'gl_VertexID' ( in int VertexIndex)
|
0:? 'gl_VertexIndex' ( in int VertexIndex)
|
||||||
0:? 'gl_InstanceID' ( in int InstanceIndex)
|
0:? 'gl_InstanceIndex' ( in int InstanceIndex)
|
||||||
|
|
||||||
vk.relaxed.stagelink.frag
|
vk.relaxed.stagelink.frag
|
||||||
Shader version: 460
|
Shader version: 460
|
||||||
@ -311,7 +315,9 @@ Shader version: 460
|
|||||||
0:28 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b2, uniform highp 2-component vector of float b1, uniform highp 4-component vector of float c2, uniform highp 4-component vector of float d, uniform 4-element array of highp 4-component vector of float s})
|
0:28 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b2, uniform highp 2-component vector of float b1, uniform highp 4-component vector of float c2, uniform highp 4-component vector of float d, uniform 4-element array of highp 4-component vector of float s})
|
||||||
0:28 Constant:
|
0:28 Constant:
|
||||||
0:28 5 (const uint)
|
0:28 5 (const uint)
|
||||||
0:28 'gl_VertexID' ( in int VertexIndex)
|
0:28 subtract ( temp int)
|
||||||
|
0:28 'gl_VertexIndex' ( in int VertexIndex)
|
||||||
|
0:28 'gl_VertexIndex' ( in int VertexIndex)
|
||||||
0:29 move second child to first child ( temp highp float)
|
0:29 move second child to first child ( temp highp float)
|
||||||
0:29 direct index ( temp highp float)
|
0:29 direct index ( temp highp float)
|
||||||
0:29 'v' ( temp highp 4-component vector of float)
|
0:29 'v' ( temp highp 4-component vector of float)
|
||||||
@ -323,7 +329,9 @@ Shader version: 460
|
|||||||
0:29 Constant:
|
0:29 Constant:
|
||||||
0:29 0 (const int)
|
0:29 0 (const int)
|
||||||
0:29 Convert int to float ( temp highp float)
|
0:29 Convert int to float ( temp highp float)
|
||||||
0:29 'gl_InstanceID' ( in highp int InstanceIndex)
|
0:29 subtract ( temp highp int)
|
||||||
|
0:29 'gl_InstanceIndex' ( in highp int InstanceIndex)
|
||||||
|
0:29 'gl_InstanceIndex' ( in highp int InstanceIndex)
|
||||||
0:30 move second child to first child ( temp highp 4-component vector of float)
|
0:30 move second child to first child ( temp highp 4-component vector of float)
|
||||||
0:30 'io' (layout( location=0) smooth out highp 4-component vector of float)
|
0:30 'io' (layout( location=0) smooth out highp 4-component vector of float)
|
||||||
0:30 'v' ( temp highp 4-component vector of float)
|
0:30 'v' ( temp highp 4-component vector of float)
|
||||||
@ -331,8 +339,8 @@ Shader version: 460
|
|||||||
0:? 'io' (layout( location=0) smooth out highp 4-component vector of float)
|
0:? 'io' (layout( location=0) smooth out highp 4-component vector of float)
|
||||||
0:? 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b2, uniform highp 2-component vector of float b1, uniform highp 4-component vector of float c2, uniform highp 4-component vector of float d, uniform 4-element array of highp 4-component vector of float s})
|
0:? 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b2, uniform highp 2-component vector of float b1, uniform highp 4-component vector of float c2, uniform highp 4-component vector of float d, uniform 4-element array of highp 4-component vector of float s})
|
||||||
0:? 'anon@1' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter3, coherent volatile buffer highp uint counter2})
|
0:? 'anon@1' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter3, coherent volatile buffer highp uint counter2})
|
||||||
0:? 'gl_VertexID' ( in int VertexIndex)
|
0:? 'gl_VertexIndex' ( in int VertexIndex)
|
||||||
0:? 'gl_InstanceID' ( in int InstanceIndex)
|
0:? 'gl_InstanceIndex' ( in int InstanceIndex)
|
||||||
Shader version: 460
|
Shader version: 460
|
||||||
gl_FragCoord origin is upper left
|
gl_FragCoord origin is upper left
|
||||||
0:? Sequence
|
0:? Sequence
|
||||||
@ -428,12 +436,12 @@ gl_FragCoord origin is upper left
|
|||||||
|
|
||||||
// Module Version 10000
|
// Module Version 10000
|
||||||
// Generated by (magic number): 8000a
|
// Generated by (magic number): 8000a
|
||||||
// Id's are bound by 88
|
// Id's are bound by 92
|
||||||
|
|
||||||
Capability Shader
|
Capability Shader
|
||||||
1: ExtInstImport "GLSL.std.450"
|
1: ExtInstImport "GLSL.std.450"
|
||||||
MemoryModel Logical GLSL450
|
MemoryModel Logical GLSL450
|
||||||
EntryPoint Vertex 4 "main" 72 80 86
|
EntryPoint Vertex 4 "main" 72 82 90
|
||||||
Source GLSL 460
|
Source GLSL 460
|
||||||
Name 4 "main"
|
Name 4 "main"
|
||||||
Name 9 "foo("
|
Name 9 "foo("
|
||||||
@ -454,9 +462,9 @@ gl_FragCoord origin is upper left
|
|||||||
MemberName 35(gl_DefaultUniformBlock) 6 "c1"
|
MemberName 35(gl_DefaultUniformBlock) 6 "c1"
|
||||||
Name 37 ""
|
Name 37 ""
|
||||||
Name 67 "v"
|
Name 67 "v"
|
||||||
Name 72 "gl_VertexID"
|
Name 72 "gl_VertexIndex"
|
||||||
Name 80 "gl_InstanceID"
|
Name 82 "gl_InstanceIndex"
|
||||||
Name 86 "io"
|
Name 90 "io"
|
||||||
MemberDecorate 14(gl_AtomicCounterBlock_0) 0 Coherent
|
MemberDecorate 14(gl_AtomicCounterBlock_0) 0 Coherent
|
||||||
MemberDecorate 14(gl_AtomicCounterBlock_0) 0 Volatile
|
MemberDecorate 14(gl_AtomicCounterBlock_0) 0 Volatile
|
||||||
MemberDecorate 14(gl_AtomicCounterBlock_0) 0 Coherent
|
MemberDecorate 14(gl_AtomicCounterBlock_0) 0 Coherent
|
||||||
@ -483,9 +491,9 @@ gl_FragCoord origin is upper left
|
|||||||
Decorate 35(gl_DefaultUniformBlock) Block
|
Decorate 35(gl_DefaultUniformBlock) Block
|
||||||
Decorate 37 DescriptorSet 0
|
Decorate 37 DescriptorSet 0
|
||||||
Decorate 37 Binding 0
|
Decorate 37 Binding 0
|
||||||
Decorate 72(gl_VertexID) BuiltIn VertexIndex
|
Decorate 72(gl_VertexIndex) BuiltIn VertexIndex
|
||||||
Decorate 80(gl_InstanceID) BuiltIn InstanceIndex
|
Decorate 82(gl_InstanceIndex) BuiltIn InstanceIndex
|
||||||
Decorate 86(io) Location 0
|
Decorate 90(io) Location 0
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
6: TypeFloat 32
|
6: TypeFloat 32
|
||||||
@ -517,31 +525,35 @@ gl_FragCoord origin is upper left
|
|||||||
57: 17(int) Constant 4
|
57: 17(int) Constant 4
|
||||||
70: 17(int) Constant 5
|
70: 17(int) Constant 5
|
||||||
71: TypePointer Input 17(int)
|
71: TypePointer Input 17(int)
|
||||||
72(gl_VertexID): 71(ptr) Variable Input
|
72(gl_VertexIndex): 71(ptr) Variable Input
|
||||||
77: TypePointer Function 6(float)
|
79: TypePointer Function 6(float)
|
||||||
80(gl_InstanceID): 71(ptr) Variable Input
|
82(gl_InstanceIndex): 71(ptr) Variable Input
|
||||||
85: TypePointer Output 7(fvec4)
|
89: TypePointer Output 7(fvec4)
|
||||||
86(io): 85(ptr) Variable Output
|
90(io): 89(ptr) Variable Output
|
||||||
4(main): 2 Function None 3
|
4(main): 2 Function None 3
|
||||||
5: Label
|
5: Label
|
||||||
67(v): 30(ptr) Variable Function
|
67(v): 30(ptr) Variable Function
|
||||||
68: 7(fvec4) FunctionCall 9(foo()
|
68: 7(fvec4) FunctionCall 9(foo()
|
||||||
Store 67(v) 68
|
Store 67(v) 68
|
||||||
69: 7(fvec4) Load 67(v)
|
69: 7(fvec4) Load 67(v)
|
||||||
73: 17(int) Load 72(gl_VertexID)
|
73: 17(int) Load 72(gl_VertexIndex)
|
||||||
74: 38(ptr) AccessChain 37 70 73
|
74: 17(int) Load 72(gl_VertexIndex)
|
||||||
75: 7(fvec4) Load 74
|
75: 17(int) ISub 73 74
|
||||||
76: 7(fvec4) FAdd 69 75
|
76: 38(ptr) AccessChain 37 70 75
|
||||||
Store 67(v) 76
|
77: 7(fvec4) Load 76
|
||||||
78: 77(ptr) AccessChain 67(v) 22
|
78: 7(fvec4) FAdd 69 77
|
||||||
79: 6(float) Load 78
|
Store 67(v) 78
|
||||||
81: 17(int) Load 80(gl_InstanceID)
|
80: 79(ptr) AccessChain 67(v) 22
|
||||||
82: 6(float) ConvertSToF 81
|
81: 6(float) Load 80
|
||||||
83: 6(float) FSub 79 82
|
83: 17(int) Load 82(gl_InstanceIndex)
|
||||||
84: 77(ptr) AccessChain 67(v) 22
|
84: 17(int) Load 82(gl_InstanceIndex)
|
||||||
Store 84 83
|
85: 17(int) ISub 83 84
|
||||||
87: 7(fvec4) Load 67(v)
|
86: 6(float) ConvertSToF 85
|
||||||
Store 86(io) 87
|
87: 6(float) FSub 81 86
|
||||||
|
88: 79(ptr) AccessChain 67(v) 22
|
||||||
|
Store 88 87
|
||||||
|
91: 7(fvec4) Load 67(v)
|
||||||
|
Store 90(io) 91
|
||||||
Return
|
Return
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
9(foo(): 7(fvec4) Function None 8
|
9(foo(): 7(fvec4) Function None 8
|
||||||
|
@ -19,10 +19,10 @@ Shader version: 450
|
|||||||
0:14 Convert bool to float ( temp float)
|
0:14 Convert bool to float ( temp float)
|
||||||
0:14 'scbt' ( specialization-constant const bool)
|
0:14 'scbt' ( specialization-constant const bool)
|
||||||
0:14 true (const bool)
|
0:14 true (const bool)
|
||||||
0:15 Convert int to float ( temp float)
|
0:15 Convert int to float ( temp highp float)
|
||||||
0:15 'sci2' ( specialization-constant const highp int)
|
0:15 'sci2' ( specialization-constant const highp int)
|
||||||
0:15 2 (const int)
|
0:15 2 (const int)
|
||||||
0:17 Convert float to int ( temp int)
|
0:17 Convert float to int ( temp highp int)
|
||||||
0:17 'scf1' ( specialization-constant const highp float)
|
0:17 'scf1' ( specialization-constant const highp float)
|
||||||
0:17 1.000000
|
0:17 1.000000
|
||||||
0:18 Convert bool to int ( specialization-constant const int)
|
0:18 Convert bool to int ( specialization-constant const int)
|
||||||
@ -86,34 +86,34 @@ Shader version: 450
|
|||||||
0:35 2 (const int)
|
0:35 2 (const int)
|
||||||
0:35 'sci2' ( specialization-constant const highp int)
|
0:35 'sci2' ( specialization-constant const highp int)
|
||||||
0:35 2 (const int)
|
0:35 2 (const int)
|
||||||
0:37 Construct ivec2 ( specialization-constant const 2-component vector of int)
|
0:37 Construct ivec2 ( specialization-constant const highp 2-component vector of int)
|
||||||
0:37 'sci2' ( specialization-constant const highp int)
|
0:37 'sci2' ( specialization-constant const highp int)
|
||||||
0:37 2 (const int)
|
0:37 2 (const int)
|
||||||
0:37 'sci2' ( specialization-constant const highp int)
|
0:37 'sci2' ( specialization-constant const highp int)
|
||||||
0:37 2 (const int)
|
0:37 2 (const int)
|
||||||
0:38 Construct ivec2 ( temp 2-element array of 2-component vector of int)
|
0:38 Construct ivec2 ( temp 2-element array of highp 2-component vector of int)
|
||||||
0:38 Construct ivec2 ( specialization-constant const 2-component vector of int)
|
0:38 Construct ivec2 ( specialization-constant const highp 2-component vector of int)
|
||||||
0:38 'sci2' ( specialization-constant const highp int)
|
0:38 'sci2' ( specialization-constant const highp int)
|
||||||
0:38 2 (const int)
|
0:38 2 (const int)
|
||||||
0:38 'sci2' ( specialization-constant const highp int)
|
0:38 'sci2' ( specialization-constant const highp int)
|
||||||
0:38 2 (const int)
|
0:38 2 (const int)
|
||||||
0:38 Construct ivec2 ( specialization-constant const 2-component vector of int)
|
0:38 Construct ivec2 ( specialization-constant const highp 2-component vector of int)
|
||||||
0:38 'sci2' ( specialization-constant const highp int)
|
0:38 'sci2' ( specialization-constant const highp int)
|
||||||
0:38 2 (const int)
|
0:38 2 (const int)
|
||||||
0:38 'sci2' ( specialization-constant const highp int)
|
0:38 'sci2' ( specialization-constant const highp int)
|
||||||
0:38 2 (const int)
|
0:38 2 (const int)
|
||||||
0:40 Construct vec2 ( specialization-constant const 2-component vector of float)
|
0:40 Construct vec2 ( specialization-constant const highp 2-component vector of float)
|
||||||
0:40 'scf1' ( specialization-constant const highp float)
|
0:40 'scf1' ( specialization-constant const highp float)
|
||||||
0:40 1.000000
|
0:40 1.000000
|
||||||
0:40 'scf1' ( specialization-constant const highp float)
|
0:40 'scf1' ( specialization-constant const highp float)
|
||||||
0:40 1.000000
|
0:40 1.000000
|
||||||
0:41 Construct vec2 ( temp 2-element array of 2-component vector of float)
|
0:41 Construct vec2 ( temp 2-element array of highp 2-component vector of float)
|
||||||
0:41 Construct vec2 ( specialization-constant const 2-component vector of float)
|
0:41 Construct vec2 ( specialization-constant const highp 2-component vector of float)
|
||||||
0:41 'scf1' ( specialization-constant const highp float)
|
0:41 'scf1' ( specialization-constant const highp float)
|
||||||
0:41 1.000000
|
0:41 1.000000
|
||||||
0:41 'scf1' ( specialization-constant const highp float)
|
0:41 'scf1' ( specialization-constant const highp float)
|
||||||
0:41 1.000000
|
0:41 1.000000
|
||||||
0:41 Construct vec2 ( specialization-constant const 2-component vector of float)
|
0:41 Construct vec2 ( specialization-constant const highp 2-component vector of float)
|
||||||
0:41 'scf1' ( specialization-constant const highp float)
|
0:41 'scf1' ( specialization-constant const highp float)
|
||||||
0:41 1.000000
|
0:41 1.000000
|
||||||
0:41 'scf1' ( specialization-constant const highp float)
|
0:41 'scf1' ( specialization-constant const highp float)
|
||||||
@ -150,10 +150,10 @@ Shader version: 450
|
|||||||
0:14 Convert bool to float ( temp float)
|
0:14 Convert bool to float ( temp float)
|
||||||
0:14 'scbt' ( specialization-constant const bool)
|
0:14 'scbt' ( specialization-constant const bool)
|
||||||
0:14 true (const bool)
|
0:14 true (const bool)
|
||||||
0:15 Convert int to float ( temp float)
|
0:15 Convert int to float ( temp highp float)
|
||||||
0:15 'sci2' ( specialization-constant const highp int)
|
0:15 'sci2' ( specialization-constant const highp int)
|
||||||
0:15 2 (const int)
|
0:15 2 (const int)
|
||||||
0:17 Convert float to int ( temp int)
|
0:17 Convert float to int ( temp highp int)
|
||||||
0:17 'scf1' ( specialization-constant const highp float)
|
0:17 'scf1' ( specialization-constant const highp float)
|
||||||
0:17 1.000000
|
0:17 1.000000
|
||||||
0:18 Convert bool to int ( specialization-constant const int)
|
0:18 Convert bool to int ( specialization-constant const int)
|
||||||
@ -217,34 +217,34 @@ Shader version: 450
|
|||||||
0:35 2 (const int)
|
0:35 2 (const int)
|
||||||
0:35 'sci2' ( specialization-constant const highp int)
|
0:35 'sci2' ( specialization-constant const highp int)
|
||||||
0:35 2 (const int)
|
0:35 2 (const int)
|
||||||
0:37 Construct ivec2 ( specialization-constant const 2-component vector of int)
|
0:37 Construct ivec2 ( specialization-constant const highp 2-component vector of int)
|
||||||
0:37 'sci2' ( specialization-constant const highp int)
|
0:37 'sci2' ( specialization-constant const highp int)
|
||||||
0:37 2 (const int)
|
0:37 2 (const int)
|
||||||
0:37 'sci2' ( specialization-constant const highp int)
|
0:37 'sci2' ( specialization-constant const highp int)
|
||||||
0:37 2 (const int)
|
0:37 2 (const int)
|
||||||
0:38 Construct ivec2 ( temp 2-element array of 2-component vector of int)
|
0:38 Construct ivec2 ( temp 2-element array of highp 2-component vector of int)
|
||||||
0:38 Construct ivec2 ( specialization-constant const 2-component vector of int)
|
0:38 Construct ivec2 ( specialization-constant const highp 2-component vector of int)
|
||||||
0:38 'sci2' ( specialization-constant const highp int)
|
0:38 'sci2' ( specialization-constant const highp int)
|
||||||
0:38 2 (const int)
|
0:38 2 (const int)
|
||||||
0:38 'sci2' ( specialization-constant const highp int)
|
0:38 'sci2' ( specialization-constant const highp int)
|
||||||
0:38 2 (const int)
|
0:38 2 (const int)
|
||||||
0:38 Construct ivec2 ( specialization-constant const 2-component vector of int)
|
0:38 Construct ivec2 ( specialization-constant const highp 2-component vector of int)
|
||||||
0:38 'sci2' ( specialization-constant const highp int)
|
0:38 'sci2' ( specialization-constant const highp int)
|
||||||
0:38 2 (const int)
|
0:38 2 (const int)
|
||||||
0:38 'sci2' ( specialization-constant const highp int)
|
0:38 'sci2' ( specialization-constant const highp int)
|
||||||
0:38 2 (const int)
|
0:38 2 (const int)
|
||||||
0:40 Construct vec2 ( specialization-constant const 2-component vector of float)
|
0:40 Construct vec2 ( specialization-constant const highp 2-component vector of float)
|
||||||
0:40 'scf1' ( specialization-constant const highp float)
|
0:40 'scf1' ( specialization-constant const highp float)
|
||||||
0:40 1.000000
|
0:40 1.000000
|
||||||
0:40 'scf1' ( specialization-constant const highp float)
|
0:40 'scf1' ( specialization-constant const highp float)
|
||||||
0:40 1.000000
|
0:40 1.000000
|
||||||
0:41 Construct vec2 ( temp 2-element array of 2-component vector of float)
|
0:41 Construct vec2 ( temp 2-element array of highp 2-component vector of float)
|
||||||
0:41 Construct vec2 ( specialization-constant const 2-component vector of float)
|
0:41 Construct vec2 ( specialization-constant const highp 2-component vector of float)
|
||||||
0:41 'scf1' ( specialization-constant const highp float)
|
0:41 'scf1' ( specialization-constant const highp float)
|
||||||
0:41 1.000000
|
0:41 1.000000
|
||||||
0:41 'scf1' ( specialization-constant const highp float)
|
0:41 'scf1' ( specialization-constant const highp float)
|
||||||
0:41 1.000000
|
0:41 1.000000
|
||||||
0:41 Construct vec2 ( specialization-constant const 2-component vector of float)
|
0:41 Construct vec2 ( specialization-constant const highp 2-component vector of float)
|
||||||
0:41 'scf1' ( specialization-constant const highp float)
|
0:41 'scf1' ( specialization-constant const highp float)
|
||||||
0:41 1.000000
|
0:41 1.000000
|
||||||
0:41 'scf1' ( specialization-constant const highp float)
|
0:41 'scf1' ( specialization-constant const highp float)
|
||||||
|
@ -24,37 +24,38 @@ ERROR: 0:39: 'push_constant' : can only be used with a uniform
|
|||||||
ERROR: 0:43: 'non-opaque uniforms outside a block' : not allowed when using GLSL for Vulkan
|
ERROR: 0:43: 'non-opaque uniforms outside a block' : not allowed when using GLSL for Vulkan
|
||||||
ERROR: 0:43: 'push_constant' : can only be used with a block
|
ERROR: 0:43: 'push_constant' : can only be used with a block
|
||||||
ERROR: 0:45: 'push_constant' : cannot declare a default, can only be used on a block
|
ERROR: 0:45: 'push_constant' : cannot declare a default, can only be used on a block
|
||||||
ERROR: 0:51: 'binding' : sampler/texture/image requires layout(binding=X)
|
ERROR: 0:46: 'binding' : cannot be used with push_constant
|
||||||
ERROR: 0:52: 'binding' : sampler/texture/image requires layout(binding=X)
|
|
||||||
ERROR: 0:52: 'input_attachment_index' : can only be used with a subpass
|
|
||||||
ERROR: 0:53: 'binding' : sampler/texture/image requires layout(binding=X)
|
|
||||||
ERROR: 0:53: 'input_attachment_index' : can only be used with a subpass
|
|
||||||
ERROR: 0:54: 'binding' : sampler/texture/image requires layout(binding=X)
|
ERROR: 0:54: 'binding' : sampler/texture/image requires layout(binding=X)
|
||||||
ERROR: 0:54: 'subpass' : requires an input_attachment_index layout qualifier
|
|
||||||
ERROR: 0:55: 'binding' : sampler/texture/image requires layout(binding=X)
|
ERROR: 0:55: 'binding' : sampler/texture/image requires layout(binding=X)
|
||||||
ERROR: 0:60: 'subpassLoadMS' : no matching overloaded function found
|
ERROR: 0:55: 'input_attachment_index' : can only be used with a subpass
|
||||||
ERROR: 0:61: 'subpassLoad' : no matching overloaded function found
|
ERROR: 0:56: 'binding' : sampler/texture/image requires layout(binding=X)
|
||||||
|
ERROR: 0:56: 'input_attachment_index' : can only be used with a subpass
|
||||||
|
ERROR: 0:57: 'binding' : sampler/texture/image requires layout(binding=X)
|
||||||
|
ERROR: 0:57: 'subpass' : requires an input_attachment_index layout qualifier
|
||||||
|
ERROR: 0:58: 'binding' : sampler/texture/image requires layout(binding=X)
|
||||||
ERROR: 0:63: 'subpassLoadMS' : no matching overloaded function found
|
ERROR: 0:63: 'subpassLoadMS' : no matching overloaded function found
|
||||||
ERROR: 0:66: 'subroutine' : not allowed when generating SPIR-V
|
ERROR: 0:64: 'subpassLoad' : no matching overloaded function found
|
||||||
ERROR: 0:66: 'subroutine' : feature not yet implemented
|
ERROR: 0:66: 'subpassLoadMS' : no matching overloaded function found
|
||||||
ERROR: 0:67: 'subroutine' : not allowed when generating SPIR-V
|
ERROR: 0:69: 'subroutine' : not allowed when generating SPIR-V
|
||||||
ERROR: 0:67: 'subroutine' : feature not yet implemented
|
ERROR: 0:69: 'subroutine' : feature not yet implemented
|
||||||
ERROR: 0:69: 'non-opaque uniforms outside a block' : not allowed when using GLSL for Vulkan
|
ERROR: 0:70: 'subroutine' : not allowed when generating SPIR-V
|
||||||
ERROR: 0:73: 'texture' : no matching overloaded function found
|
ERROR: 0:70: 'subroutine' : feature not yet implemented
|
||||||
ERROR: 0:74: 'imageStore' : no matching overloaded function found
|
ERROR: 0:72: 'non-opaque uniforms outside a block' : not allowed when using GLSL for Vulkan
|
||||||
WARNING: 0:82: '' : all default precisions are highp; use precision statements to quiet warning, e.g.:
|
ERROR: 0:76: 'texture' : no matching overloaded function found
|
||||||
|
ERROR: 0:77: 'imageStore' : no matching overloaded function found
|
||||||
|
WARNING: 0:85: '' : all default precisions are highp; use precision statements to quiet warning, e.g.:
|
||||||
"precision mediump int; precision highp float;"
|
"precision mediump int; precision highp float;"
|
||||||
ERROR: 0:91: 'call argument' : sampler constructor must appear at point of use
|
|
||||||
ERROR: 0:92: 'call argument' : sampler constructor must appear at point of use
|
|
||||||
ERROR: 0:93: ',' : sampler constructor must appear at point of use
|
|
||||||
ERROR: 0:94: ':' : wrong operand types: no operation ':' exists that takes a left-hand operand of type ' temp sampler2D' and a right operand of type ' temp sampler2D' (or there is no acceptable conversion)
|
|
||||||
ERROR: 0:94: 'call argument' : sampler constructor must appear at point of use
|
ERROR: 0:94: 'call argument' : sampler constructor must appear at point of use
|
||||||
ERROR: 0:96: 'gl_NumSamples' : undeclared identifier
|
ERROR: 0:95: 'call argument' : sampler constructor must appear at point of use
|
||||||
ERROR: 0:101: 'noise1' : no matching overloaded function found
|
ERROR: 0:96: ',' : sampler constructor must appear at point of use
|
||||||
ERROR: 0:102: 'noise2' : no matching overloaded function found
|
ERROR: 0:97: ':' : wrong operand types: no operation ':' exists that takes a left-hand operand of type ' temp sampler2D' and a right operand of type ' temp sampler2D' (or there is no acceptable conversion)
|
||||||
ERROR: 0:103: 'noise3' : no matching overloaded function found
|
ERROR: 0:97: 'call argument' : sampler constructor must appear at point of use
|
||||||
ERROR: 0:104: 'noise4' : no matching overloaded function found
|
ERROR: 0:99: 'gl_NumSamples' : undeclared identifier
|
||||||
ERROR: 53 compilation errors. No code generated.
|
ERROR: 0:104: 'noise1' : no matching overloaded function found
|
||||||
|
ERROR: 0:105: 'noise2' : no matching overloaded function found
|
||||||
|
ERROR: 0:106: 'noise3' : no matching overloaded function found
|
||||||
|
ERROR: 0:107: 'noise4' : no matching overloaded function found
|
||||||
|
ERROR: 54 compilation errors. No code generated.
|
||||||
|
|
||||||
|
|
||||||
ERROR: Linking fragment stage: Only one push_constant block is allowed per stage
|
ERROR: Linking fragment stage: Only one push_constant block is allowed per stage
|
||||||
|
@ -13,11 +13,18 @@ const uint32_t uint32_t_init = uint32_t(3);
|
|||||||
const uint64_t uint64_t_init = uint64_t(4);
|
const uint64_t uint64_t_init = uint64_t(4);
|
||||||
const float16_t float16_t_init = float16_t(42.0);
|
const float16_t float16_t_init = float16_t(42.0);
|
||||||
const float32_t float32_t_init = float32_t(13.0);
|
const float32_t float32_t_init = float32_t(13.0);
|
||||||
const float64_t float64_t_init = float64_t(-4.0);
|
const float64_t float64_t_init = float64_t(4.0);
|
||||||
|
|
||||||
|
const float16_t neg_float16_t_init = float16_t(-42.0);
|
||||||
|
const float32_t neg_float32_t_init = float32_t(-13.0);
|
||||||
|
const float64_t neg_float64_t_init = float64_t(-4.0);
|
||||||
|
|
||||||
#define TYPE_TO_TYPE(x, y) \
|
#define TYPE_TO_TYPE(x, y) \
|
||||||
const x y##_to_##x = x(y##_init)
|
const x y##_to_##x = x(y##_init)
|
||||||
|
|
||||||
|
#define TYPE_TO_TYPE_PREFIX(prefix, x, y) \
|
||||||
|
const x prefix##_##y##_to_##x = x(prefix##_##y##_init)
|
||||||
|
|
||||||
#define TYPE_TO(x) \
|
#define TYPE_TO(x) \
|
||||||
TYPE_TO_TYPE(x, bool); \
|
TYPE_TO_TYPE(x, bool); \
|
||||||
TYPE_TO_TYPE(x, int8_t); \
|
TYPE_TO_TYPE(x, int8_t); \
|
||||||
@ -45,4 +52,18 @@ TYPE_TO(float16_t);
|
|||||||
TYPE_TO(float32_t);
|
TYPE_TO(float32_t);
|
||||||
TYPE_TO(float64_t);
|
TYPE_TO(float64_t);
|
||||||
|
|
||||||
|
#define NEG_FLOAT_TO(x) \
|
||||||
|
TYPE_TO_TYPE_PREFIX(neg, x, float16_t); \
|
||||||
|
TYPE_TO_TYPE_PREFIX(neg, x, float32_t); \
|
||||||
|
TYPE_TO_TYPE_PREFIX(neg, x, float64_t)
|
||||||
|
|
||||||
|
NEG_FLOAT_TO(bool);
|
||||||
|
NEG_FLOAT_TO(int8_t);
|
||||||
|
NEG_FLOAT_TO(int16_t);
|
||||||
|
NEG_FLOAT_TO(int32_t);
|
||||||
|
NEG_FLOAT_TO(int64_t);
|
||||||
|
NEG_FLOAT_TO(float16_t);
|
||||||
|
NEG_FLOAT_TO(float32_t);
|
||||||
|
NEG_FLOAT_TO(float64_t);
|
||||||
|
|
||||||
void main() {}
|
void main() {}
|
||||||
|
10
Test/hlsl.structbuffer.rwbyte2.comp
Normal file
10
Test/hlsl.structbuffer.rwbyte2.comp
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
RWStructuredBuffer<uint> g_sbuf;
|
||||||
|
RWByteAddressBuffer g_bbuf;
|
||||||
|
|
||||||
|
|
||||||
|
void main()
|
||||||
|
{
|
||||||
|
uint f = g_bbuf.Load(16);
|
||||||
|
g_sbuf[0] = f;
|
||||||
|
}
|
||||||
|
|
12
Test/hlsl.w-recip.frag
Normal file
12
Test/hlsl.w-recip.frag
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
float4 AmbientColor = float4(1, 0.5, 0, 1);
|
||||||
|
float4 AmbientColor2 = float4(0.5, 1, 0, 0);
|
||||||
|
|
||||||
|
float4 main(float4 vpos : SV_POSITION) : SV_TARGET
|
||||||
|
{
|
||||||
|
float4 vpos_t = float4(vpos.xyz, 1 / vpos.w);
|
||||||
|
if (vpos_t.x < 400)
|
||||||
|
return AmbientColor;
|
||||||
|
else
|
||||||
|
return AmbientColor2;
|
||||||
|
}
|
||||||
|
|
14
Test/iomap.blockOutVariableIn.2.vert
Normal file
14
Test/iomap.blockOutVariableIn.2.vert
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
#version 440
|
||||||
|
|
||||||
|
layout(location = 0) out Block
|
||||||
|
{
|
||||||
|
vec4 a1;
|
||||||
|
vec2 a2;
|
||||||
|
};
|
||||||
|
|
||||||
|
void main()
|
||||||
|
{
|
||||||
|
a1 = vec4(1.0);
|
||||||
|
a2 = vec2(0.5);
|
||||||
|
gl_Position = vec4(1.0);
|
||||||
|
}
|
11
Test/iomap.blockOutVariableIn.frag
Normal file
11
Test/iomap.blockOutVariableIn.frag
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
#version 440
|
||||||
|
|
||||||
|
layout(location = 0) in vec4 a1;
|
||||||
|
layout(location = 1) in vec2 a2;
|
||||||
|
|
||||||
|
layout(location = 0) out vec4 color;
|
||||||
|
|
||||||
|
void main()
|
||||||
|
{
|
||||||
|
color = vec4(a1.xy, a2);
|
||||||
|
}
|
28
Test/iomap.blockOutVariableIn.geom
Normal file
28
Test/iomap.blockOutVariableIn.geom
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
#version 440
|
||||||
|
|
||||||
|
layout(triangles) in;
|
||||||
|
layout(triangle_strip, max_vertices=3) out;
|
||||||
|
|
||||||
|
layout(location = 0) in vec4 in_a1[3];
|
||||||
|
layout(location = 1) in vec2 in_a2[3];
|
||||||
|
|
||||||
|
layout(location = 0) out vec4 a1;
|
||||||
|
layout(location = 1) out vec2 a2;
|
||||||
|
|
||||||
|
void main()
|
||||||
|
{
|
||||||
|
a1 = in_a1[0];
|
||||||
|
a2 = in_a2[0];
|
||||||
|
gl_Position = vec4(1.0);
|
||||||
|
EmitVertex();
|
||||||
|
|
||||||
|
a1 = in_a1[1];
|
||||||
|
a2 = in_a2[1];
|
||||||
|
gl_Position = vec4(1.0);
|
||||||
|
EmitVertex();
|
||||||
|
|
||||||
|
a1 = in_a1[2];
|
||||||
|
a2 = in_a2[2];
|
||||||
|
gl_Position = vec4(1.0);
|
||||||
|
EmitVertex();
|
||||||
|
}
|
14
Test/iomap.blockOutVariableIn.vert
Normal file
14
Test/iomap.blockOutVariableIn.vert
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
#version 440
|
||||||
|
|
||||||
|
layout(location = 0) out Block
|
||||||
|
{
|
||||||
|
vec4 a1;
|
||||||
|
vec2 a2;
|
||||||
|
};
|
||||||
|
|
||||||
|
void main()
|
||||||
|
{
|
||||||
|
a1 = vec4(1.0);
|
||||||
|
a2 = vec2(0.5);
|
||||||
|
gl_Position = vec4(1.0);
|
||||||
|
}
|
11
Test/iomap.variableOutBlockIn.2.vert
Normal file
11
Test/iomap.variableOutBlockIn.2.vert
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
#version 440
|
||||||
|
|
||||||
|
layout(location = 0) out vec4 a1;
|
||||||
|
layout(location = 1) out vec2 a2;
|
||||||
|
|
||||||
|
void main()
|
||||||
|
{
|
||||||
|
a1 = vec4(1.0);
|
||||||
|
a2 = vec2(0.5);
|
||||||
|
gl_Position = vec4(1.0);
|
||||||
|
}
|
13
Test/iomap.variableOutBlockIn.frag
Normal file
13
Test/iomap.variableOutBlockIn.frag
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
#version 440
|
||||||
|
|
||||||
|
layout(location = 0) in Inputs {
|
||||||
|
vec4 a1;
|
||||||
|
vec2 a2;
|
||||||
|
};
|
||||||
|
|
||||||
|
layout(location = 0) out vec4 color;
|
||||||
|
|
||||||
|
void main()
|
||||||
|
{
|
||||||
|
color = vec4(a1.xy, a2);
|
||||||
|
}
|
19
Test/iomap.variableOutBlockIn.geom
Normal file
19
Test/iomap.variableOutBlockIn.geom
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
#version 440
|
||||||
|
|
||||||
|
layout(triangles) in;
|
||||||
|
layout(triangle_strip, max_vertices=3) out;
|
||||||
|
|
||||||
|
layout(location = 0) in Inputs {
|
||||||
|
vec4 a1;
|
||||||
|
vec2 a2;
|
||||||
|
} gin[3];
|
||||||
|
|
||||||
|
layout(location = 0) out vec4 a1;
|
||||||
|
layout(location = 1) out vec2 a2;
|
||||||
|
|
||||||
|
void main()
|
||||||
|
{
|
||||||
|
a1 = vec4(1.0);
|
||||||
|
a2 = vec2(0.5);
|
||||||
|
gl_Position = vec4(1.0);
|
||||||
|
}
|
11
Test/iomap.variableOutBlockIn.vert
Normal file
11
Test/iomap.variableOutBlockIn.vert
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
#version 440
|
||||||
|
|
||||||
|
layout(location = 0) out vec4 a1;
|
||||||
|
layout(location = 1) out vec2 a2;
|
||||||
|
|
||||||
|
void main()
|
||||||
|
{
|
||||||
|
a1 = vec4(1.0);
|
||||||
|
a2 = vec2(0.5);
|
||||||
|
gl_Position = vec4(1.0);
|
||||||
|
}
|
23
Test/link.redeclareBuiltin.geom
Normal file
23
Test/link.redeclareBuiltin.geom
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
#version 410
|
||||||
|
|
||||||
|
layout(triangles) in;
|
||||||
|
layout(triangle_strip, max_vertices=3) out;
|
||||||
|
|
||||||
|
in gl_PerVertex
|
||||||
|
{
|
||||||
|
vec4 gl_Position;
|
||||||
|
} gl_in[];
|
||||||
|
|
||||||
|
void main()
|
||||||
|
{
|
||||||
|
gl_Position = gl_in[0].gl_Position;
|
||||||
|
EmitVertex();
|
||||||
|
|
||||||
|
gl_Position = gl_in[1].gl_Position;
|
||||||
|
EmitVertex();
|
||||||
|
|
||||||
|
gl_Position = gl_in[2].gl_Position;
|
||||||
|
EmitVertex();
|
||||||
|
|
||||||
|
EndPrimitive();
|
||||||
|
}
|
11
Test/link.redeclareBuiltin.vert
Normal file
11
Test/link.redeclareBuiltin.vert
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
#version 410
|
||||||
|
|
||||||
|
out gl_PerVertex
|
||||||
|
{
|
||||||
|
vec4 gl_Position;
|
||||||
|
};
|
||||||
|
|
||||||
|
void main()
|
||||||
|
{
|
||||||
|
gl_Position = vec4(1.0);
|
||||||
|
}
|
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