Vulkan: Use minimal dirty bits in VertexArrayVk.
This should slightly reduce draw call overhead.
BUG=angleproject:1898
Change-Id: I0e515bf2868f237f1d6948c12942f8cb6637c0c0
Reviewed-on: https://chromium-review.googlesource.com/707690
Reviewed-by: Frank Henigman <fjhenigman@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
diff --git a/src/libANGLE/Program.h b/src/libANGLE/Program.h
index a2a80d9..4429868 100644
--- a/src/libANGLE/Program.h
+++ b/src/libANGLE/Program.h
@@ -272,6 +272,7 @@
{
return mActiveAttribLocationsMask;
}
+ unsigned int getMaxActiveAttribLocation() const { return mMaxActiveAttribLocation; }
DrawBufferMask getActiveOutputVariables() const { return mActiveOutputVariables; }
const std::vector<sh::OutputVariable> &getOutputVariables() const { return mOutputVariables; }
const std::map<int, VariableLocation> &getOutputLocations() const { return mOutputLocations; }
@@ -330,6 +331,7 @@
std::vector<sh::Attribute> mAttributes;
angle::BitSet<MAX_VERTEX_ATTRIBS> mActiveAttribLocationsMask;
+ unsigned int mMaxActiveAttribLocation;
// Uniforms are sorted in order:
// 1. Non-opaque uniforms