ES31: Add atomic counter for GLSL parsing

This makes shader compiler support the new basic type 'atomic_uint'
and validate its layout qualifiers properly.

BUG=angleproject:1729
TEST=angle_unittests:AtomicCounterTest
     angle_deqp_gles31_tests:dEQP-GLES31.functional.atomic_counter.layout.invalid*
     angle_deqp_gles31_tests:dEQP-GLES31.functional.debug.negative_coverage.*.atomic*

Change-Id: Ia237eadf6ea72314f436a0abbb93a05598e71eba
Reviewed-on: https://chromium-review.googlesource.com/500088
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
diff --git a/src/compiler/translator/VariableInfo.cpp b/src/compiler/translator/VariableInfo.cpp
index 65101c4..d41d451 100644
--- a/src/compiler/translator/VariableInfo.cpp
+++ b/src/compiler/translator/VariableInfo.cpp
@@ -572,6 +572,7 @@
     setCommonVariableProperties(variable.getType(), variable.getSymbol(), &uniform);
     uniform.binding = variable.getType().getLayoutQualifier().binding;
     uniform.location = variable.getType().getLayoutQualifier().location;
+    uniform.offset   = variable.getType().getLayoutQualifier().offset;
     return uniform;
 }