summaryrefslogtreecommitdiff
path: root/indra/newview/lldrawpoolmaterials.cpp
diff options
context:
space:
mode:
authorDave Parks <davep@lindenlab.com>2023-01-09 15:18:57 -0600
committerDave Parks <davep@lindenlab.com>2023-01-09 15:18:57 -0600
commita710bf9067bd4c4217b9febc0ad277a1636ec882 (patch)
treedf6b4105f0e7d518f8fecfe3ab654f17abd1ac7c /indra/newview/lldrawpoolmaterials.cpp
parentb3fc82ff1da0c869f0b1dd841647a120a1ae56af (diff)
SL-18869 Optimizations -- Use _mm_prefetch to cut down on cache misses when iterating over render batches.
Diffstat (limited to 'indra/newview/lldrawpoolmaterials.cpp')
-rw-r--r--indra/newview/lldrawpoolmaterials.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/indra/newview/lldrawpoolmaterials.cpp b/indra/newview/lldrawpoolmaterials.cpp
index ec1ac6a88c..858fb871d3 100644
--- a/indra/newview/lldrawpoolmaterials.cpp
+++ b/indra/newview/lldrawpoolmaterials.cpp
@@ -203,11 +203,13 @@ void LLDrawPoolMaterials::renderDeferred(S32 pass)
LLVOAvatar* lastAvatar = nullptr;
- for (LLCullResult::drawinfo_iterator i = begin; i != end; ++i)
+ for (LLCullResult::drawinfo_iterator i = begin; i != end; )
{
LL_PROFILE_ZONE_NAMED_CATEGORY_MATERIAL("materials draw loop");
LLDrawInfo& params = **i;
+ LLCullResult::increment_iterator(i, end);
+
if (specular > -1 && params.mSpecColor != lastSpecular)
{
lastSpecular = params.mSpecColor;