Vulkan: Optimize ContextVk::updateDefaultAttributes.

This function was getting called every time because the dirty bit mask
included dirty bits for unused program attributes. Fix this by making
sure we never have dirty bits set for inactive attributes.

Bug: angleproject:2786
Change-Id: Icf72dadd8a853d3a448abb303119b7b71f6c8193
Reviewed-on: https://chromium-review.googlesource.com/1188951
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Frank Henigman <fjhenigman@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
diff --git a/src/libANGLE/Context.cpp b/src/libANGLE/Context.cpp
index f48bc8a..2bd9dea 100644
--- a/src/libANGLE/Context.cpp
+++ b/src/libANGLE/Context.cpp
@@ -7746,6 +7746,7 @@
     {
         mCachedActiveBufferedAttribsMask = AttributesMask();
         mCachedActiveClientAttribsMask   = AttributesMask();
+        mCachedActiveDefaultAttribsMask  = AttributesMask();
         return;
     }
 
@@ -7762,6 +7763,7 @@
 
     mCachedActiveClientAttribsMask   = activeAttribs & clientAttribs;
     mCachedActiveBufferedAttribsMask = activeAttribs & ~clientAttribs;
+    mCachedActiveDefaultAttribsMask  = activeAttribs & ~enabledAttribs;
     mCachedHasAnyEnabledClientAttrib = (clientAttribs & enabledAttribs).any();
 }