diff options
-rw-r--r-- | indra/newview/llface.cpp | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/indra/newview/llface.cpp b/indra/newview/llface.cpp index e862d91aca..4de61964c7 100644 --- a/indra/newview/llface.cpp +++ b/indra/newview/llface.cpp @@ -1658,12 +1658,16 @@ BOOL LLFace::getGeometryVolume(const LLVolume& volume, { LLVector4a src; - src.splat(reinterpret_cast<F32&>(color.mAll)); + U32 vec[4]; + vec[0] = vec[1] = vec[2] = vec[3] = color.mAll; + + src.loadua((F32*) vec); - F32* dst = (F32*) colors.get(); - for (S32 i = 0; i < num_vertices; i+=4) + LLVector4a* dst = (LLVector4a*) colors.get(); + S32 num_vecs = num_vertices/4; + for (S32 i = 0; i < num_vecs; i++) { - LLVector4a::copy4a(dst+i, (F32*) &src); + dst[i] = src; } } |