Lines Matching refs:glu

167 static inline tcu::BVec4 getDerivateMask (glu::DataType type)
171 case glu::TYPE_FLOAT: return tcu::BVec4(true, false, false, false);
172 case glu::TYPE_FLOAT_VEC2: return tcu::BVec4(true, true, false, false);
173 case glu::TYPE_FLOAT_VEC3: return tcu::BVec4(true, true, true, false);
174 case glu::TYPE_FLOAT_VEC4: return tcu::BVec4(true, true, true, true);
210 static int getNumMantissaBits (const glu::Precision precision)
214 case glu::PRECISION_HIGHP: return 23;
215 case glu::PRECISION_MEDIUMP: return 10;
216 case glu::PRECISION_LOWP: return 6;
223 static int getMinExponent (const glu::Precision precision)
227 case glu::PRECISION_HIGHP: return -126;
228 case glu::PRECISION_MEDIUMP: return -14;
229 case glu::PRECISION_LOWP: return -8;
314 static inline tcu::Vec4 getDerivateThreshold (const glu::Precision precision, const tcu::Vec4& valueMin, const tcu::Vec4& valueMax, const tcu::Vec4& expectedDerivate)
358 glu::DataType dataType,
365 const int numComps = glu::getDataTypeFloatScalars(dataType);
425 glu::DataType dataType,
426 glu::Precision precision,
441 const int numComponents = glu::getDataTypeFloatScalars(dataType);
553 dataType = glu::TYPE_LAST;
554 precision = glu::PRECISION_LAST;
556 coordDataType = glu::TYPE_LAST;
557 coordPrecision = glu::PRECISION_LAST;
563 glu::DataType dataType;
564 glu::Precision precision;
567 glu::DataType coordDataType;
568 glu::Precision coordPrecision;
654 m_colorFormat = vk::mapTextureFormat(glu::mapGLInternalFormat(m_definitions.surfaceType == SURFACETYPE_FLOAT_FBO ? GL_RGBA32UI : GL_RGBA8));
694 if (m_definitions.coordDataType != glu::TYPE_LAST)
753 DE_ASSERT(glu::isDataTypeFloatOrVec(definitions.dataType));
755 instance.addUniform(0u, vk::VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER, glu::getDataTypeScalarSize(definitions.dataType) * sizeof(float), values.derivScale.getPtr());
756 instance.addUniform(1u, vk::VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER, glu::getDataTypeScalarSize(definitions.dataType) * sizeof(float), values.derivBias.getPtr());
822 static std::string genVertexSource (glu::DataType coordType, glu::Precision precision)
824 DE_ASSERT(coordType == glu::TYPE_LAST || glu::isDataTypeFloatOrVec(coordType));
829 + string(coordType != glu::TYPE_LAST ? "layout(location = 1) in ${PRECISION} ${DATATYPE} a_coord;\n"
837 + string(coordType != glu::TYPE_LAST ? " v_coord = a_coord;\n" : "") +
842 if (coordType != glu::TYPE_LAST)
844 vertexParams["PRECISION"] = glu::getPrecisionName(precision);
845 vertexParams["DATATYPE"] = glu::getDataTypeName(coordType);
894 glu::DataType type);
904 glu::DataType type)
909 m_definitions.precision = glu::PRECISION_HIGHP;
939 fragmentParams["PRECISION"] = glu::getPrecisionName(m_definitions.precision);
940 fragmentParams["DATATYPE"] = glu::getDataTypeName(m_definitions.dataType);
942 fragmentParams["VALUE"] = m_definitions.dataType == glu::TYPE_FLOAT_VEC4 ? "vec4(1.0, 7.2, -1e5, 0.0)" :
943 m_definitions.dataType == glu::TYPE_FLOAT_VEC3 ? "vec3(1e2, 8.0, 0.01)" :
944 m_definitions.dataType == glu::TYPE_FLOAT_VEC2 ? "vec2(-0.0, 2.7)" :
946 fragmentParams["CAST_TO_OUTPUT"] = m_definitions.dataType == glu::TYPE_FLOAT_VEC4 ? "res" :
947 m_definitions.dataType == glu::TYPE_FLOAT_VEC3 ? "vec4(res, 1.0)" :
948 m_definitions.dataType == glu::TYPE_FLOAT_VEC2 ? "vec4(res, 0.0, 1.0)" :
952 programCollection.glslSources.add("vert") << glu::VertexSource(genVertexSource(m_definitions.coordDataType, m_definitions.coordPrecision));
953 programCollection.glslSources.add("frag") << glu::FragmentSource(fragmentSrc);
1036 const int numComps = glu::getDataTypeFloatScalars(m_definitions.dataType);
1114 glu::DataType type,
1115 glu::Precision precision,
1133 glu::DataType type,
1134 glu::Precision precision,
1158 case glu::PRECISION_HIGHP:
1163 case glu::PRECISION_MEDIUMP:
1168 case glu::PRECISION_LOWP:
1220 fragmentParams["OUTPUT_TYPE"] = glu::getDataTypeName(packToInt ? glu::TYPE_UINT_VEC4 : glu::TYPE_FLOAT_VEC4);
1221 fragmentParams["OUTPUT_PREC"] = glu::getPrecisionName(packToInt ? glu::PRECISION_HIGHP : m_definitions.precision);
1222 fragmentParams["PRECISION"] = glu::getPrecisionName(m_definitions.precision);
1223 fragmentParams["DATATYPE"] = glu::getDataTypeName(m_definitions.dataType);
1228 fragmentParams["CAST_TO_OUTPUT"] = m_definitions.dataType == glu::TYPE_FLOAT_VEC4 ? "floatBitsToUint(res)" :
1229 m_definitions.dataType == glu::TYPE_FLOAT_VEC3 ? "floatBitsToUint(vec4(res, 1.0))" :
1230 m_definitions.dataType == glu::TYPE_FLOAT_VEC2 ? "floatBitsToUint(vec4(res, 0.0, 1.0))" :
1235 fragmentParams["CAST_TO_OUTPUT"] = m_definitions.dataType == glu::TYPE_FLOAT_VEC4 ? "res" :
1236 m_definitions.dataType == glu::TYPE_FLOAT_VEC3 ? "vec4(res, 1.0)" :
1237 m_definitions.dataType == glu::TYPE_FLOAT_VEC2 ? "vec4(res, 0.0, 1.0)" :
1242 programCollection.glslSources.add("vert") << glu::VertexSource(genVertexSource(m_definitions.coordDataType, m_definitions.coordPrecision));
1243 programCollection.glslSources.add("frag") << glu::FragmentSource(fragmentSrc) << buildOptions;
1277 const tcu::TextureFormat format = glu::mapGLInternalFormat(m_definitions.precision == glu::PRECISION_HIGHP ? GL_RGBA32F : GL_RGBA16F);
1341 const int numComps = glu::getDataTypeFloatScalars(m_definitions.dataType);
1413 glu::DataType type,
1414 glu::Precision precision,
1429 glu::DataType type,
1430 glu::Precision precision,
1438 m_definitions.coordDataType = glu::TYPE_FLOAT_VEC2;
1439 m_definitions.coordPrecision = glu::PRECISION_HIGHP;
1450 case glu::PRECISION_HIGHP:
1455 case glu::PRECISION_MEDIUMP:
1460 case glu::PRECISION_LOWP:
1532 fragmentParams["OUTPUT_TYPE"] = glu::getDataTypeName(packToInt ? glu::TYPE_UINT_VEC4 : glu::TYPE_FLOAT_VEC4);
1533 fragmentParams["OUTPUT_PREC"] = glu::getPrecisionName(packToInt ? glu::PRECISION_HIGHP : m_definitions.precision);
1534 fragmentParams["PRECISION"] = glu::getPrecisionName(m_definitions.precision);
1535 fragmentParams["DATATYPE"] = glu::getDataTypeName(m_definitions.dataType);
1537 fragmentParams["SWIZZLE"] = m_definitions.dataType == glu::TYPE_FLOAT_VEC4 ? "" :
1538 m_definitions.dataType == glu::TYPE_FLOAT_VEC3 ? ".xyz" :
1539 m_definitions.dataType == glu::TYPE_FLOAT_VEC2 ? ".xy" :
1544 fragmentParams["CAST_TO_OUTPUT"] = m_definitions.dataType == glu::TYPE_FLOAT_VEC4 ? "floatBitsToUint(res)" :
1545 m_definitions.dataType == glu::TYPE_FLOAT_VEC3 ? "floatBitsToUint(vec4(res, 1.0))" :
1546 m_definitions.dataType == glu::TYPE_FLOAT_VEC2 ? "floatBitsToUint(vec4(res, 0.0, 1.0))" :
1551 fragmentParams["CAST_TO_OUTPUT"] = m_definitions.dataType == glu::TYPE_FLOAT_VEC4 ? "res" :
1552 m_definitions.dataType == glu::TYPE_FLOAT_VEC3 ? "vec4(res, 1.0)" :
1553 m_definitions.dataType == glu::TYPE_FLOAT_VEC2 ? "vec4(res, 0.0, 1.0)" :
1558 programCollection.glslSources.add("vert") << glu::VertexSource(genVertexSource(m_definitions.coordDataType, m_definitions.coordPrecision));
1559 programCollection.glslSources.add("frag") << glu::FragmentSource(fragmentSrc);
1591 glu::DataType dataType;
1592 glu::Precision precision;
1594 FunctionSpec (const std::string& name_, DerivateFunc function_, glu::DataType dataType_, glu::Precision precision_)
1973 const glu::DataType dataType = vecSize > 1 ? glu::getDataTypeFloatVec(vecSize) : glu::TYPE_FLOAT;
1974 constantGroup->addChild(new ConstantDerivateCase(m_testCtx, glu::getDataTypeName(dataType), function, dataType));
1990 for (int precNdx = 0; precNdx < glu::PRECISION_LAST; precNdx++)
1992 const glu::DataType dataType = vecSize > 1 ? glu::getDataTypeFloatVec(vecSize) : glu::TYPE_FLOAT;
1993 const glu::Precision precision = glu::Precision(precNdx);
1998 if (caseNdx != 0 && precision == glu::PRECISION_LOWP)
2001 caseName << glu::getDataTypeName(dataType) << "_" << glu::getPrecisionName(precision);
2024 for (int precNdx = 0; precNdx < glu::PRECISION_LAST; precNdx++)
2026 const glu::DataType dataType = vecSize > 1 ? glu::getDataTypeFloatVec(vecSize) : glu::TYPE_FLOAT;
2027 const glu::Precision precision = glu::Precision(precNdx);
2030 if (surfaceType != SURFACETYPE_FLOAT_FBO && precision == glu::PRECISION_LOWP)
2033 caseName << glu::getDataTypeName(dataType) << "_" << glu::getPrecisionName(precision);
2055 for (int precNdx = 0; precNdx < glu::PRECISION_LAST; precNdx++)
2057 const glu::DataType dataType = vecSize > 1 ? glu::getDataTypeFloatVec(vecSize) : glu::TYPE_FLOAT;
2058 const glu::Precision precision = glu::Precision(precNdx);
2061 if (surfaceType != SURFACETYPE_FLOAT_FBO && precision == glu::PRECISION_LOWP)
2064 caseName << glu::getDataTypeName(dataType) << "_" << glu::getPrecisionName(precision);