Align stack variables on a 16-bytes boundary in SSSE3 functions

Fixes issue 4450. Thanks to pholklore1 for his patch.
This commit is contained in:
Pierre Bourdon
2011-10-08 17:33:21 +02:00
parent 2f254585bf
commit 59072adc32
2 changed files with 4 additions and 4 deletions

View File

@ -179,8 +179,8 @@ void Pos_ReadIndex_Float_SSSE3(int Index)
if(Index < MaxSize)
{
const u32* pData = (const u32 *)(cached_arraybases[ARRAY_POSITION] + (Index * arraystrides[ARRAY_POSITION]));
const __m128i a = _mm_loadu_si128((__m128i*)pData);
__m128i b = _mm_shuffle_epi8(a, three ? kMaskSwap32_3 : kMaskSwap32_2);
GC_ALIGNED128(const __m128i a = _mm_loadu_si128((__m128i*)pData));
GC_ALIGNED128(__m128i b = _mm_shuffle_epi8(a, three ? kMaskSwap32_3 : kMaskSwap32_2));
_mm_storeu_si128((__m128i*)VertexManager::s_pCurBufferPointer, b);
LOG_VTX();
VertexManager::s_pCurBufferPointer += 12;