MCPcopy Create free account
hub / github.com/EricLengyel/Terathon-Math-Library / VecStore3D

Function VecStore3D

TSSimd.h:570–591  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

568 }
569
570 inline void VecStore3D(const vec_float& v, float *ptr)
571 {
572 #if defined(TERATHON_SSE4)
573
574 ptr[0] = v[0];
575 ptr[1] = v[1];
576 ptr[2] = v[2];
577
578 #elif defined(TERATHON_SSE)
579
580 _mm_store_ss(&ptr[0], v);
581 _mm_store_ss(&ptr[1], _mm_shuffle_ps(v, v, _MM_SHUFFLE(1, 1, 1, 1)));
582 _mm_store_ss(&ptr[2], _mm_shuffle_ps(v, v, _MM_SHUFFLE(2, 2, 2, 2)));
583
584 #elif defined(TERATHON_NEON)
585
586 vst1q_lane_f32(&ptr[0], v, 0);
587 vst1q_lane_f32(&ptr[1], v, 1);
588 vst1q_lane_f32(&ptr[2], v, 2);
589
590 #endif
591 }
592
593 inline int32 VecTruncateConvert(const vec_float& v)
594 {

Callers 2

TransformMethod · 0.85
operator *Method · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected