Dragged in a bunch of alignment fixes from LL. Should allow disabling of tcmalloc on windows/linux32 if such is ever implemented.
This commit is contained in:
@@ -1510,20 +1510,26 @@ void LLRender::pushUIMatrix()
|
||||
{
|
||||
if (mUIOffset.empty())
|
||||
{
|
||||
mUIOffset.push_back(new LLVector4a(0.f));
|
||||
mUIOffset.push_back(static_cast<LLVector4a*>(ll_aligned_malloc_16(sizeof(LLVector4a))));
|
||||
mUIOffset.back()->splat(0.f);
|
||||
}
|
||||
else
|
||||
{
|
||||
mUIOffset.push_back(new LLVector4a(*mUIOffset.back()));
|
||||
const LLVector4a* last_entry = mUIOffset.back();
|
||||
mUIOffset.push_back(static_cast<LLVector4a*>(ll_aligned_malloc_16(sizeof(LLVector4a))));
|
||||
*mUIOffset.back() = *last_entry;
|
||||
}
|
||||
|
||||
if (mUIScale.empty())
|
||||
{
|
||||
mUIScale.push_back(new LLVector4a(1.f));
|
||||
mUIScale.push_back(static_cast<LLVector4a*>(ll_aligned_malloc_16(sizeof(LLVector4a))));
|
||||
mUIScale.back()->splat(1.f);
|
||||
}
|
||||
else
|
||||
{
|
||||
mUIScale.push_back(new LLVector4a(*mUIScale.back()));
|
||||
const LLVector4a* last_entry = mUIScale.back();
|
||||
mUIScale.push_back(static_cast<LLVector4a*>(ll_aligned_malloc_16(sizeof(LLVector4a))));
|
||||
*mUIScale.back() = *last_entry;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1533,9 +1539,9 @@ void LLRender::popUIMatrix()
|
||||
{
|
||||
llerrs << "UI offset stack blown." << llendl;
|
||||
}
|
||||
delete mUIOffset.back();
|
||||
ll_aligned_free_16(mUIOffset.back());
|
||||
mUIOffset.pop_back();
|
||||
delete mUIScale.back();
|
||||
ll_aligned_free_16(mUIScale.back());
|
||||
mUIScale.pop_back();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user