Lines Matching refs:subgroups
37 namespace subgroups
70 return glc::subgroups::check(datas, width, 0xFFFFFF);
77 return glc::subgroups::checkCompute(datas, numWorkgroups, localSize, 0xFFFFFF);
232 return subgroups::getFormatNameForGLSL(format) + "(0)";
236 return subgroups::getFormatNameForGLSL(format) + "(1)";
242 return subgroups::getFormatNameForGLSL(format) + "(intBitsToFloat(0x7f800000))";
246 return subgroups::getFormatNameForGLSL(format) + "(0x7fffffff)";
250 return subgroups::getFormatNameForGLSL(format) + "(0xffffffffu)";
262 return subgroups::getFormatNameForGLSL(format) + "(intBitsToFloat(0xff800000))";
266 return subgroups::getFormatNameForGLSL(format) + "(0x80000000)";
270 return subgroups::getFormatNameForGLSL(format) + "(0u)";
280 return subgroups::getFormatNameForGLSL(format) + "(~0)";
284 return subgroups::getFormatNameForGLSL(format) + "(0)";
288 return subgroups::getFormatNameForGLSL(format) + "(0)";
294 std::string formatName = subgroups::getFormatNameForGLSL(format);
349 string fmt = subgroups::getFormatNameForGLSL(caseDef.format);
436 subgroups::setFragmentShaderFrameBuffer(programCollection);
439 subgroups::setVertexShaderFrameBuffer(programCollection);
454 << " " << subgroups::getFormatNameForGLSL(caseDef.format) << " data[" << subgroups::maxSupportedSubgroupSize() << "];\n"
480 << " " << subgroups::getFormatNameForGLSL(caseDef.format) << " data[" << subgroups::maxSupportedSubgroupSize() << "];\n"
506 << " " << subgroups::getFormatNameForGLSL(caseDef.format) << " data[" << subgroups::maxSupportedSubgroupSize() << "];\n"
524 subgroups::setTesEvalShaderFrameBuffer(programCollection);
538 << " " << subgroups::getFormatNameForGLSL(caseDef.format) << " data[" << subgroups::maxSupportedSubgroupSize() << "];\n"
549 subgroups::setTesCtrlShaderFrameBuffer(programCollection);
577 << " " << subgroups::getFormatNameForGLSL(caseDef.format) << " data[];\n"
607 " " + subgroups::getFormatNameForGLSL(caseDef.format) + " data[];\n"
636 " " + subgroups::getFormatNameForGLSL(caseDef.format) + " data[];\n"
667 " " + subgroups::getFormatNameForGLSL(caseDef.format) + " data[];\n"
695 " " + subgroups::getFormatNameForGLSL(caseDef.format) + " data[];\n"
707 subgroups::addGeometryShadersFromTemplate(geometry, programCollection);
721 " " + subgroups::getFormatNameForGLSL(caseDef.format) + " data[];\n"
731 subgroups::addNoSubgroupShader(programCollection);
737 if (!subgroups::isSubgroupSupported(context))
740 if (!subgroups::isSubgroupFeatureSupportedForDevice(context, SUBGROUP_FEATURE_PARTITIONED_BIT_NV))
745 if (subgroups::isDoubleFormat(caseDef.format) &&
746 !subgroups::isDoubleSupportedForDevice(context))
754 if (!subgroups::areSubgroupOperationsSupportedForStage(
757 if (subgroups::areSubgroupOperationsRequiredForStage(
762 subgroups::getShaderStageName(caseDef.shaderStage) +
771 subgroups::SSBOData inputData;
773 inputData.layout = subgroups::SSBOData::LayoutStd140;
774 inputData.numElements = subgroups::maxSupportedSubgroupSize();
775 inputData.initializeType = subgroups::SSBOData::InitializeNonZero;
779 return subgroups::makeVertexFrameBufferTest(context, FORMAT_R32_UINT, &inputData, 1, checkVertexPipelineStages);
781 return subgroups::makeGeometryFrameBufferTest(context, FORMAT_R32_UINT, &inputData, 1, checkVertexPipelineStages);
783 return subgroups::makeTessellationEvaluationFrameBufferTest(context, FORMAT_R32_UINT, &inputData, 1, checkVertexPipelineStages, SHADER_STAGE_TESS_CONTROL_BIT);
785 return subgroups::makeTessellationEvaluationFrameBufferTest(context, FORMAT_R32_UINT, &inputData, 1, checkVertexPipelineStages, SHADER_STAGE_TESS_EVALUATION_BIT);
792 if (!subgroups::areSubgroupOperationsSupportedForStage(
795 if (subgroups::areSubgroupOperationsRequiredForStage(
816 subgroups::getShaderStageName(caseDef.shaderStage) +
819 subgroups::SSBOData inputData;
821 inputData.layout = subgroups::SSBOData::LayoutStd430;
822 inputData.numElements = subgroups::maxSupportedSubgroupSize();
823 inputData.initializeType = subgroups::SSBOData::InitializeNonZero;
826 return subgroups::makeComputeTest(context, FORMAT_R32_UINT, &inputData, 1, checkComputeStage);
834 if ( SHADER_STAGE_FRAGMENT_BIT != stages && !subgroups::isVertexSSBOSupportedForDevice(context))
845 subgroups::SSBOData inputData;
847 inputData.layout = subgroups::SSBOData::LayoutStd430;
848 inputData.numElements = subgroups::maxSupportedSubgroupSize();
849 inputData.initializeType = subgroups::SSBOData::InitializeNonZero;
853 return subgroups::allStages(context, FORMAT_R32_UINT, &inputData,
952 subgroups::getFormatNameForGLSL(format);
985 } // subgroups