IO mapper: Fix #1261: Supply location mapper with size computer.

This factored computeTypeLocationSize() out of needing the TIntermediate contents,
and uses it to show how to know how many locations an object needs.
However, it still does not do cross stage, or mixed location/no-location
analysis.
diff --git a/SPIRV/GlslangToSpv.cpp b/SPIRV/GlslangToSpv.cpp
index 7c69242..420c38e 100755
--- a/SPIRV/GlslangToSpv.cpp
+++ b/SPIRV/GlslangToSpv.cpp
@@ -2668,7 +2668,8 @@
                 builder.addMemberDecoration(spvType, member, spv::DecorationLocation, memberQualifier.layoutLocation);
 
             if (qualifier.hasLocation())      // track for upcoming inheritance
-                locationOffset += glslangIntermediate->computeTypeLocationSize(glslangMember);
+                locationOffset += glslangIntermediate->computeTypeLocationSize(
+                                                glslangMember, glslangIntermediate->getStage());
 
             // component, XFB, others
             if (glslangMember.getQualifier().hasComponent())