Retrieve the shader model number instead of a shader model 3 support boolean.

TRAC #22072
Signed-off-by: Daniel Koch
Signed-off-by: Geoff Lang
Author: Nicolas Capens

git-svn-id: https://angleproject.googlecode.com/svn/branches/dx11proto@1495 736b8ea6-26fd-11df-bfd4-992fa37f6226
diff --git a/src/libGLESv2/Context.cpp b/src/libGLESv2/Context.cpp
index 19fd8c5..88187ad 100644
--- a/src/libGLESv2/Context.cpp
+++ b/src/libGLESv2/Context.cpp
@@ -233,7 +233,7 @@
 {
     if (!mHasBeenCurrent)
     {
-        mSupportsShaderModel3 = mRenderer->getShaderModel3Support();
+        mMajorShaderModel = mRenderer->getMajorShaderModel();
         mMaximumPointSize = mRenderer->getMaxPointSize();
         mSupportsVertexTexture = mRenderer->getVertexTextureSupport();
         mSupportsNonPower2Texture = mRenderer->getNonPower2TextureSupport();
@@ -2213,19 +2213,19 @@
     return (mResetStrategy == GL_LOSE_CONTEXT_ON_RESET_EXT);
 }
 
-bool Context::supportsShaderModel3() const
+int Context::getMajorShaderModel() const
 {
-    return mSupportsShaderModel3;
+    return mMajorShaderModel;
 }
 
 float Context::getMaximumPointSize() const
 {
-    return mSupportsShaderModel3 ? mMaximumPointSize : ALIASED_POINT_SIZE_RANGE_MAX_SM2;
+    return mMajorShaderModel >= 3 ? mMaximumPointSize : ALIASED_POINT_SIZE_RANGE_MAX_SM2;
 }
 
 int Context::getMaximumVaryingVectors() const
 {
-    return mSupportsShaderModel3 ? MAX_VARYING_VECTORS_SM3 : MAX_VARYING_VECTORS_SM2;
+    return mMajorShaderModel >= 3 ? MAX_VARYING_VECTORS_SM3 : MAX_VARYING_VECTORS_SM2;
 }
 
 unsigned int Context::getMaximumVertexTextureImageUnits() const
@@ -2240,7 +2240,7 @@
 
 int Context::getMaximumFragmentUniformVectors() const
 {
-    return mSupportsShaderModel3 ? MAX_FRAGMENT_UNIFORM_VECTORS_SM3 : MAX_FRAGMENT_UNIFORM_VECTORS_SM2;
+    return mMajorShaderModel >= 3 ? MAX_FRAGMENT_UNIFORM_VECTORS_SM3 : MAX_FRAGMENT_UNIFORM_VECTORS_SM2;
 }
 
 int Context::getMaxSupportedSamples() const