Lines Matching refs:SIMD
74 namespace SIMD { namespace
87 Pointer(rr::Pointer<Byte> base, rr::Int limit, SIMD::Int offset);
88 Pointer(rr::Pointer<Byte> base, unsigned int limit, SIMD::Int offset);
93 Pointer operator+(SIMD::Int i);
94 Pointer operator*(SIMD::Int i);
102 SIMD::Int offsets() const;
104 SIMD::Int isInBounds(unsigned int accessSize, OutOfBoundsBehavior robustness) const;
142 SIMD::Int dynamicOffsets; // If hasDynamicOffsets is false, all dynamicOffsets are zero.
143 std::array<int32_t, SIMD::Width> staticOffsets;
207 sw::SIMD::UInt halfToFloatBits(sw::SIMD::UInt halfBits);
208 sw::SIMD::UInt floatToHalfBits(sw::SIMD::UInt floatBits, bool storeInUpperBits);
214 rr::RValue<rr::Bool> AnyTrue(rr::RValue<sw::SIMD::Int> const &ints);
216 rr::RValue<rr::Bool> AnyFalse(rr::RValue<sw::SIMD::Int> const &ints);
224 rr::RValue<sw::SIMD::Float> Sign(rr::RValue<sw::SIMD::Float> const &val);
228 std::pair<rr::RValue<sw::SIMD::Float>, rr::RValue<sw::SIMD::Float>>
229 Modf(rr::RValue<sw::SIMD::Float> const &val);
232 sw::SIMD::UInt CountBits(rr::RValue<sw::SIMD::UInt> const &bits);
236 rr::RValue<sw::SIMD::UInt> NthBit32(rr::RValue<sw::SIMD::UInt> const &bits);
239 rr::RValue<sw::SIMD::UInt> Bitmask32(rr::RValue<sw::SIMD::UInt> const &bitCount);
242 rr::RValue<sw::SIMD::Float> FMA(
243 rr::RValue<sw::SIMD::Float> const &a,
244 rr::RValue<sw::SIMD::Float> const &b,
245 rr::RValue<sw::SIMD::Float> const &c);
249 rr::RValue<sw::SIMD::Int> Exponent(rr::RValue<sw::SIMD::Float> f);
254 rr::RValue<sw::SIMD::Float> NMin(rr::RValue<sw::SIMD::Float> const &x, rr::RValue<sw::SIMD::Float> …
259 rr::RValue<sw::SIMD::Float> NMax(rr::RValue<sw::SIMD::Float> const &x, rr::RValue<sw::SIMD::Float> …
262 rr::RValue<sw::SIMD::Float> Determinant(
263 rr::RValue<sw::SIMD::Float> const &a, rr::RValue<sw::SIMD::Float> const &b,
264 rr::RValue<sw::SIMD::Float> const &c, rr::RValue<sw::SIMD::Float> const &d);
267 rr::RValue<sw::SIMD::Float> Determinant(
268 …rr::RValue<sw::SIMD::Float> const &a, rr::RValue<sw::SIMD::Float> const &b, rr::RValue<sw::SIMD::F…
269 …rr::RValue<sw::SIMD::Float> const &d, rr::RValue<sw::SIMD::Float> const &e, rr::RValue<sw::SIMD::F…
270 …rr::RValue<sw::SIMD::Float> const &g, rr::RValue<sw::SIMD::Float> const &h, rr::RValue<sw::SIMD::F…
273 rr::RValue<sw::SIMD::Float> Determinant(
274 …rr::RValue<sw::SIMD::Float> const &a, rr::RValue<sw::SIMD::Float> const &b, rr::RValue<sw::SIMD::F…
275 …rr::RValue<sw::SIMD::Float> const &e, rr::RValue<sw::SIMD::Float> const &f, rr::RValue<sw::SIMD::F…
276 …rr::RValue<sw::SIMD::Float> const &i, rr::RValue<sw::SIMD::Float> const &j, rr::RValue<sw::SIMD::F…
277 …rr::RValue<sw::SIMD::Float> const &m, rr::RValue<sw::SIMD::Float> const &n, rr::RValue<sw::SIMD::F…
280 std::array<rr::RValue<sw::SIMD::Float>, 4> MatrixInverse(
281 rr::RValue<sw::SIMD::Float> const &a, rr::RValue<sw::SIMD::Float> const &b,
282 rr::RValue<sw::SIMD::Float> const &c, rr::RValue<sw::SIMD::Float> const &d);
285 std::array<rr::RValue<sw::SIMD::Float>, 9> MatrixInverse(
286 …rr::RValue<sw::SIMD::Float> const &a, rr::RValue<sw::SIMD::Float> const &b, rr::RValue<sw::SIMD::F…
287 …rr::RValue<sw::SIMD::Float> const &d, rr::RValue<sw::SIMD::Float> const &e, rr::RValue<sw::SIMD::F…
288 …rr::RValue<sw::SIMD::Float> const &g, rr::RValue<sw::SIMD::Float> const &h, rr::RValue<sw::SIMD::F…
291 std::array<rr::RValue<sw::SIMD::Float>, 16> MatrixInverse(
292 …rr::RValue<sw::SIMD::Float> const &a, rr::RValue<sw::SIMD::Float> const &b, rr::RValue<sw::SIMD::F…
293 …rr::RValue<sw::SIMD::Float> const &e, rr::RValue<sw::SIMD::Float> const &f, rr::RValue<sw::SIMD::F…
294 …rr::RValue<sw::SIMD::Float> const &i, rr::RValue<sw::SIMD::Float> const &j, rr::RValue<sw::SIMD::F…
295 …rr::RValue<sw::SIMD::Float> const &m, rr::RValue<sw::SIMD::Float> const &n, rr::RValue<sw::SIMD::F…
302 inline T SIMD::Pointer::Load(OutOfBoundsBehavior robustness, Int mask, bool atomic /* = false */, s… in Load()
395 for(int i = 0; i < SIMD::Width; i++) in Load()
410 inline void SIMD::Pointer::Store(T val, OutOfBoundsBehavior robustness, Int mask, bool atomic /* = … in Store()
435 auto v0111 = SIMD::Int(0, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF); in Store()
437 auto maskedVal = As<SIMD::Int>(val) & elect; in Store()
451 auto p = rr::Pointer<SIMD::Int>(base + staticOffsets[0], alignment); in Store()
453 *p = (prev & ~mask) | (As<SIMD::Int>(val) & mask); in Store()
477 for(int i = 0; i < SIMD::Width; i++) in Store()
490 inline void SIMD::Pointer::Store(RValue<T> val, OutOfBoundsBehavior robustness, Int mask, bool atom… in Store()