19 JPH_INLINE
Vec8(__m256 inRHS) : mValue(inRHS) { }
25 static JPH_INLINE
Vec8 sZero();
28 static JPH_INLINE
Vec8 sReplicate(
float inV);
58 static JPH_INLINE
Vec8 sLoadFloat8(
const float *inV);
61 static JPH_INLINE
Vec8 sLoadFloat8Aligned(
const float *inV);
64 JPH_INLINE
float operator [] (
uint inCoordinate)
const {
JPH_ASSERT(inCoordinate < 8);
return mF32[inCoordinate]; }
65 JPH_INLINE
float & operator [] (
uint inCoordinate) {
JPH_ASSERT(inCoordinate < 8);
return mF32[inCoordinate]; }
83 JPH_INLINE
Vec8 Reciprocal()
const;
86 template<u
int32 SwizzleX, u
int32 SwizzleY, u
int32 SwizzleZ, u
int32 SwizzleW>
90 JPH_INLINE
Vec8 Abs()
const;
93 JPH_INLINE
Vec4 LowerVec4()
const;
96 JPH_INLINE
Vec4 UpperVec4()
const;
99 JPH_INLINE
float ReduceMin()
const;
108static_assert(is_trivial<Vec8>(),
"Is supposed to be a trivial type!");
unsigned int uint
Definition: Core.h:452
#define JPH_NAMESPACE_END
Definition: Core.h:378
#define JPH_NAMESPACE_BEGIN
Definition: Core.h:372
DVec3 operator*(double inV1, DVec3Arg inV2)
Definition: DVec3.inl:451
#define JPH_ASSERT(...)
Definition: IssueReporting.h:33
#define JPH_OVERRIDE_NEW_DELETE
Macro to override the new and delete functions.
Definition: Memory.h:31
Vec8(const Vec8 &inRHS)=default
JPH_INLINE Vec8(__m256 inRHS)
Definition: Vec8.h:19
JPH_OVERRIDE_NEW_DELETE Vec8()=default
Constructor.
__m256 mValue
Definition: Vec8.h:103
JPH_INLINE Vec8 Swizzle() const
256 bit variant of Vec::Swizzle (no cross 128 bit lane swizzle)