void MathUtil::crossVec3(const float* v1, const float* v2, float* dst) { #ifdef USE_NEON32 MathUtilNeon::crossVec3(v1, v2, dst); #elif defined (USE_NEON64) MathUtilNeon64::crossVec3(v1, v2, dst); #elif defined (INCLUDE_NEON32) if(isNeon32Enabled()) MathUtilNeon::crossVec3(v1, v2, dst); else MathUtilC::crossVec3(v1, v2, dst); #else MathUtilC::crossVec3(v1, v2, dst); #endif }
void MathUtil::transformVec4(const float* m, const float* v, float* dst) { #ifdef USE_NEON32 MathUtilNeon::transformVec4(m, v, dst); #elif defined (USE_NEON64) MathUtilNeon64::transformVec4(m, v, dst); #elif defined (INCLUDE_NEON32) if(isNeon32Enabled()) MathUtilNeon::transformVec4(m, v, dst); else MathUtilC::transformVec4(m, v, dst); #else MathUtilC::transformVec4(m, v, dst); #endif }
void MathUtil::negateMatrix(const float* m, float* dst) { #ifdef USE_NEON32 MathUtilNeon::negateMatrix(m, dst); #elif defined (USE_NEON64) MathUtilNeon64::negateMatrix(m, dst); #elif defined (INCLUDE_NEON32) if(isNeon32Enabled()) MathUtilNeon::negateMatrix(m, dst); else MathUtilC::negateMatrix(m, dst); #else MathUtilC::negateMatrix(m, dst); #endif }
void MathUtil::multiplyMatrix(const float* m1, const float* m2, float* dst) { #ifdef USE_NEON32 MathUtilNeon::multiplyMatrix(m1, m2, dst); #elif defined (USE_NEON64) MathUtilNeon64::multiplyMatrix(m1, m2, dst); #elif defined (INCLUDE_NEON32) if(isNeon32Enabled()) MathUtilNeon::multiplyMatrix(m1, m2, dst); else MathUtilC::multiplyMatrix(m1, m2, dst); #else MathUtilC::multiplyMatrix(m1, m2, dst); #endif }
void MathUtil::transformVec4(const float* m, float x, float y, float z, float w, float* dst) { #ifdef USE_NEON32 MathUtilNeon::transformVec4(m, x, y, z, w, dst); #elif defined (USE_NEON64) MathUtilNeon64::transformVec4(m, x, y, z, w, dst); #elif defined (INCLUDE_NEON32) if(isNeon32Enabled()) MathUtilNeon::transformVec4(m, x, y, z, w, dst); else MathUtilCNoInline::transformVec4(m, x, y, z, w, dst); #else MathUtilC::transformVec4(m, x, y, z, w, dst); #endif }
void MathUtil::multiplyMatrix(const float* m, float scalar, float* dst) { #ifdef USE_NEON32 MathUtilNeon::multiplyMatrix(m, scalar, dst); #elif defined (USE_NEON64) MathUtilNeon64::multiplyMatrix(m, scalar, dst); #elif defined (INCLUDE_NEON32) if(isNeon32Enabled()) MathUtilNeon::multiplyMatrix(m, scalar, dst); else MathUtilCNoInline::multiplyMatrix(m, scalar, dst); #else MathUtilC::multiplyMatrix(m, scalar, dst); #endif }