Lines Matching refs:SIMD
27 sw::SIMD::Float Interpolate(const sw::SIMD::Float &x, const sw::SIMD::Float &y, const sw::SIMD::Flo… in Interpolate()
28 … const sw::SIMD::Float &A, const sw::SIMD::Float &B, const sw::SIMD::Float &C, in Interpolate()
31 sw::SIMD::Float interpolant = C; in Interpolate()
158 …dst.move(i, x + ((SIMD::Float(CmpLT(x, src.Float(i)) & SIMD::Int(1)) * SIMD::Float(2.0f)) - SIMD::… in EmitExtGLSLstd450()
159 …SIMD::Float(CmpEQ(Frac(src.Float(i)), SIMD::Float(0.5f)) & SIMD::Int(1)) * SIMD::Float(Int4(x) & S… in EmitExtGLSLstd450()
229 dst.move(i, CmpNLT(x.Float(i), edge.Float(i)) & As<SIMD::Int>(SIMD::Float(1.0f))); in EmitExtGLSLstd450()
242 SIMD::Float(0.0f)), in EmitExtGLSLstd450()
243 SIMD::Float(1.0f)); in EmitExtGLSLstd450()
297 …auto neg = As<SIMD::Int>(CmpLT(src.Float(i), SIMD::Float(-0.0f))) & As<SIMD::Int>(SIMD::Float(-1.0… in EmitExtGLSLstd450()
298 …auto pos = As<SIMD::Int>(CmpNLE(src.Float(i), SIMD::Float(+0.0f))) & As<SIMD::Int>(SIMD::Float(1.0… in EmitExtGLSLstd450()
308 auto neg = CmpLT(src.Int(i), SIMD::Int(0)) & SIMD::Int(-1); in EmitExtGLSLstd450()
309 auto pos = CmpNLE(src.Int(i), SIMD::Int(0)) & SIMD::Int(1); in EmitExtGLSLstd450()
319 SIMD::Float d = Dot(type.componentCount, I, N); in EmitExtGLSLstd450()
323 dst.move(i, I.Float(i) - SIMD::Float(2.0f) * d * N.Float(i)); in EmitExtGLSLstd450()
333 SIMD::Float d = Dot(type.componentCount, I, N); in EmitExtGLSLstd450()
334 SIMD::Float k = SIMD::Float(1.0f) - eta.Float(0) * eta.Float(0) * (SIMD::Float(1.0f) - d * d); in EmitExtGLSLstd450()
335 SIMD::Int pos = CmpNLT(k, SIMD::Float(0.0f)); in EmitExtGLSLstd450()
336 SIMD::Float t = (eta.Float(0) * d + Sqrt(k)); in EmitExtGLSLstd450()
340 dst.move(i, pos & As<SIMD::Int>(eta.Float(0) * I.Float(i) - t * N.Float(i))); in EmitExtGLSLstd450()
350 SIMD::Float d = Dot(type.componentCount, I, Nref); in EmitExtGLSLstd450()
351 SIMD::Int neg = CmpLT(d, SIMD::Float(0.0f)); in EmitExtGLSLstd450()
356 dst.move(i, (neg & As<SIMD::Int>(n)) | (~neg & As<SIMD::Int>(-n))); in EmitExtGLSLstd450()
363 SIMD::Float d = Dot(getType(getObject(insn.word(5))).componentCount, x, x); in EmitExtGLSLstd450()
371 SIMD::Float d = Dot(getType(getObject(insn.word(5))).componentCount, x, x); in EmitExtGLSLstd450()
372 SIMD::Float invLength = SIMD::Float(1.0f) / Sqrt(d); in EmitExtGLSLstd450()
386 SIMD::Float d = (p0.Float(0) - p1.Float(0)) * (p0.Float(0) - p1.Float(0)); in EmitExtGLSLstd450()
428 …dst.move(0, (SIMD::Int(Round(Min(Max(val.Float(0), SIMD::Float(-1.0f)), SIMD::Float(1.0f)) * SIMD:… in EmitExtGLSLstd450()
429 SIMD::Int(0xFF)) | in EmitExtGLSLstd450()
430 …((SIMD::Int(Round(Min(Max(val.Float(1), SIMD::Float(-1.0f)), SIMD::Float(1.0f)) * SIMD::Float(127.… in EmitExtGLSLstd450()
431 SIMD::Int(0xFF)) in EmitExtGLSLstd450()
433 …((SIMD::Int(Round(Min(Max(val.Float(2), SIMD::Float(-1.0f)), SIMD::Float(1.0f)) * SIMD::Float(127.… in EmitExtGLSLstd450()
434 SIMD::Int(0xFF)) in EmitExtGLSLstd450()
436 …((SIMD::Int(Round(Min(Max(val.Float(3), SIMD::Float(-1.0f)), SIMD::Float(1.0f)) * SIMD::Float(127.… in EmitExtGLSLstd450()
437 SIMD::Int(0xFF)) in EmitExtGLSLstd450()
444 …dst.move(0, (SIMD::UInt(Round(Min(Max(val.Float(0), SIMD::Float(0.0f)), SIMD::Float(1.0f)) * SIMD:… in EmitExtGLSLstd450()
445 …((SIMD::UInt(Round(Min(Max(val.Float(1), SIMD::Float(0.0f)), SIMD::Float(1.0f)) * SIMD::Float(255.… in EmitExtGLSLstd450()
446 …((SIMD::UInt(Round(Min(Max(val.Float(2), SIMD::Float(0.0f)), SIMD::Float(1.0f)) * SIMD::Float(255.… in EmitExtGLSLstd450()
447 …((SIMD::UInt(Round(Min(Max(val.Float(3), SIMD::Float(0.0f)), SIMD::Float(1.0f)) * SIMD::Float(255.… in EmitExtGLSLstd450()
453 …dst.move(0, (SIMD::Int(Round(Min(Max(val.Float(0), SIMD::Float(-1.0f)), SIMD::Float(1.0f)) * SIMD:… in EmitExtGLSLstd450()
454 SIMD::Int(0xFFFF)) | in EmitExtGLSLstd450()
455 …((SIMD::Int(Round(Min(Max(val.Float(1), SIMD::Float(-1.0f)), SIMD::Float(1.0f)) * SIMD::Float(3276… in EmitExtGLSLstd450()
456 SIMD::Int(0xFFFF)) in EmitExtGLSLstd450()
463 …dst.move(0, (SIMD::UInt(Round(Min(Max(val.Float(0), SIMD::Float(0.0f)), SIMD::Float(1.0f)) * SIMD:… in EmitExtGLSLstd450()
464 SIMD::UInt(0xFFFF)) | in EmitExtGLSLstd450()
465 …((SIMD::UInt(Round(Min(Max(val.Float(1), SIMD::Float(0.0f)), SIMD::Float(1.0f)) * SIMD::Float(6553… in EmitExtGLSLstd450()
466 SIMD::UInt(0xFFFF)) in EmitExtGLSLstd450()
479 …ve(0, Min(Max(SIMD::Float(((val.Int(0) << 24) & SIMD::Int(0xFF000000))) * SIMD::Float(1.0f / float… in EmitExtGLSLstd450()
480 …ve(1, Min(Max(SIMD::Float(((val.Int(0) << 16) & SIMD::Int(0xFF000000))) * SIMD::Float(1.0f / float… in EmitExtGLSLstd450()
481 …ove(2, Min(Max(SIMD::Float(((val.Int(0) << 8) & SIMD::Int(0xFF000000))) * SIMD::Float(1.0f / float… in EmitExtGLSLstd450()
482 ….move(3, Min(Max(SIMD::Float(((val.Int(0)) & SIMD::Int(0xFF000000))) * SIMD::Float(1.0f / float(0x… in EmitExtGLSLstd450()
488 dst.move(0, SIMD::Float((val.UInt(0) & SIMD::UInt(0xFF))) * SIMD::Float(1.0f / 255.f)); in EmitExtGLSLstd450()
489 dst.move(1, SIMD::Float(((val.UInt(0) >> 8) & SIMD::UInt(0xFF))) * SIMD::Float(1.0f / 255.f)); in EmitExtGLSLstd450()
490 dst.move(2, SIMD::Float(((val.UInt(0) >> 16) & SIMD::UInt(0xFF))) * SIMD::Float(1.0f / 255.f)); in EmitExtGLSLstd450()
491 dst.move(3, SIMD::Float(((val.UInt(0) >> 24) & SIMD::UInt(0xFF))) * SIMD::Float(1.0f / 255.f)); in EmitExtGLSLstd450()
498 dst.move(0, Min(Max(SIMD::Float(As<SIMD::Int>((val.UInt(0) & SIMD::UInt(0x0000FFFF)) << 16)) * in EmitExtGLSLstd450()
499 SIMD::Float(1.0f / float(0x7FFF0000)), in EmitExtGLSLstd450()
500 SIMD::Float(-1.0f)), in EmitExtGLSLstd450()
501 SIMD::Float(1.0f))); in EmitExtGLSLstd450()
502 …dst.move(1, Min(Max(SIMD::Float(As<SIMD::Int>(val.UInt(0) & SIMD::UInt(0xFFFF0000))) * SIMD::Float… in EmitExtGLSLstd450()
503 SIMD::Float(-1.0f)), in EmitExtGLSLstd450()
504 SIMD::Float(1.0f))); in EmitExtGLSLstd450()
511 …dst.move(0, SIMD::Float((val.UInt(0) & SIMD::UInt(0x0000FFFF)) << 16) * SIMD::Float(1.0f / float(0… in EmitExtGLSLstd450()
512 …dst.move(1, SIMD::Float(val.UInt(0) & SIMD::UInt(0xFFFF0000)) * SIMD::Float(1.0f / float(0xFFFF000… in EmitExtGLSLstd450()
518 dst.move(0, halfToFloatBits(val.UInt(0) & SIMD::UInt(0x0000FFFF))); in EmitExtGLSLstd450()
519 dst.move(1, halfToFloatBits((val.UInt(0) & SIMD::UInt(0xFFFF0000)) >> 16)); in EmitExtGLSLstd450()
572 auto isSignificandZero = SIMD::UInt(CmpEQ(significand.Int(i), SIMD::Int(0))); in EmitExtGLSLstd450()
573 auto isSignificandInf = SIMD::UInt(IsInf(in)); in EmitExtGLSLstd450()
574 auto isSignificandNaN = SIMD::UInt(IsNan(in)); in EmitExtGLSLstd450()
575 auto isExponentNotTooSmall = SIMD::UInt(CmpGE(combinedExponent, SIMD::Int(-126))); in EmitExtGLSLstd450()
576 auto isExponentNotTooLarge = SIMD::UInt(CmpLE(combinedExponent, SIMD::Int(128))); in EmitExtGLSLstd450()
579 SIMD::UInt v; in EmitExtGLSLstd450()
580 v = significand.UInt(i) & SIMD::UInt(0x7FFFFF); // Add significand. in EmitExtGLSLstd450()
581 v |= (SIMD::UInt(combinedExponent + SIMD::Int(126)) << SIMD::UInt(23)); // Add exponent. in EmitExtGLSLstd450()
584 v |= significand.UInt(i) & SIMD::UInt(0x80000000); // Add sign bit. in EmitExtGLSLstd450()
585 …v |= ~isExponentNotTooLarge & SIMD::UInt(0x7F800000); // Mark as inf if the exponent is too great. in EmitExtGLSLstd450()
592 dst.move(i, As<SIMD::Float>(v)); in EmitExtGLSLstd450()
601 dst.move(i, degrees.Float(i) * SIMD::Float(PI / 180.0f)); in EmitExtGLSLstd450()
610 dst.move(i, radians.Float(i) * SIMD::Float(180.0f / PI)); in EmitExtGLSLstd450()
900 dst.move(i, Cttz(v, true) | CmpEQ(v, SIMD::UInt(0))); in EmitExtGLSLstd450()
909 auto v = val.UInt(i) ^ As<SIMD::UInt>(CmpLT(val.Int(i), SIMD::Int(0))); in EmitExtGLSLstd450()
910 dst.move(i, SIMD::UInt(31) - Ctlz(v, false)); in EmitExtGLSLstd450()
919 dst.move(i, SIMD::UInt(31) - Ctlz(val.UInt(i), false)); in EmitExtGLSLstd450()
996 SIMD::Float SpirvShader::Interpolate(SIMD::Pointer const &ptr, int32_t location, Object::ID paramId… in Interpolate()
1003 return SIMD::Float(0.0f); in Interpolate()
1014 SIMD::Float x; in Interpolate()
1015 SIMD::Float y; in Interpolate()
1016 SIMD::Float rhw; in Interpolate()
1026 x = SIMD::Float(0.0f); in Interpolate()
1027 y = SIMD::Float(0.0f); in Interpolate()
1047 SIMD::Int samples = sampleOperand.Int(0) & SIMD::Int(NUM_SAMPLES - 1); in Interpolate()
1049 for(int i = 0; i < SIMD::Width; ++i) in Interpolate()
1074 return SIMD::Float(0.0f); in Interpolate()
1092 return SIMD::Float(0.0f); in Interpolate()
1100 SIMD::Float SpirvRoutine::interpolateAtXY(const SIMD::Float &x, const SIMD::Float &y, const SIMD::F… in interpolateAtXY()
1102 SIMD::Float A; in interpolateAtXY()
1103 SIMD::Float B; in interpolateAtXY()
1104 SIMD::Float C = *Pointer<SIMD::Float>(planeEquation + OFFSET(PlaneEquation, C), 16); in interpolateAtXY()
1108 A = *Pointer<SIMD::Float>(planeEquation + OFFSET(PlaneEquation, A), 16); in interpolateAtXY()
1109 B = *Pointer<SIMD::Float>(planeEquation + OFFSET(PlaneEquation, B), 16); in interpolateAtXY()