Lines Matching defs:spec
411 ShaderOperatorCase (Context& context, const char* caseName, const char* description, bool isVertexCase, ShaderEvalFunc evalFunc, const char* shaderOp, const ShaderDataSpec& spec);
421 ShaderOperatorCase::ShaderOperatorCase (Context& context, const char* caseName, const char* description, bool isVertexCase, ShaderEvalFunc evalFunc, const char* shaderOp, const ShaderDataSpec& spec)
423 , m_evaluator(evalFunc, spec.resultScale, spec.resultBias)
425 const char* precision = spec.precision != PRECISION_LAST ? getPrecisionName(spec.precision) : DE_NULL;
433 for (int i = 0; i < spec.numInputs; i++)
435 bool isBoolVal = de::inRange<int>(spec.inputs[i].type, TYPE_BOOL, TYPE_BOOL_VEC4);
436 bool isIntVal = de::inRange<int>(spec.inputs[i].type, TYPE_INT, TYPE_INT_VEC4);
438 Precision prec = isBoolVal || (isIntVal && spec.precision == PRECISION_LOWP) ? PRECISION_MEDIUMP : spec.precision;
444 for (int i = 0; i < spec.numInputs; i++)
454 for (int i = 0; i < spec.numInputs; i++)
472 for (int i = 0; i < spec.numInputs; i++)
474 DataType inType = spec.inputs[i].type;
509 const char* outTypeName = getDataTypeName(spec.output);
510 bool isBoolOut = de::inRange<int>(spec.output, TYPE_BOOL, TYPE_BOOL_VEC4);
521 bool isResFloatVec = de::inRange<int>(spec.output, TYPE_FLOAT, TYPE_FLOAT_VEC4);
522 int outScalarSize = getDataTypeScalarSize(spec.output);
537 float resultScale = spec.resultScale;
538 float resultBias = spec.resultBias;
555 for (int i = 0; i < spec.numInputs; i++)
567 m_userAttribTransforms.resize(spec.numInputs);
568 for (int inputNdx = 0; inputNdx < spec.numInputs; inputNdx++)
570 const ShaderValue& v = spec.inputs[inputNdx];