aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/glsl/GrGLSLVarying.cpp
diff options
context:
space:
mode:
authorGravatar Brian Osman <brianosman@google.com>2017-03-31 10:59:10 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-03-31 15:43:51 +0000
commit92d7ccafdf896cf19764e025873d13315a76842d (patch)
treee6f9457d9e04283ec02dce3b4ad9001334f440f9 /src/gpu/glsl/GrGLSLVarying.cpp
parent2e491a6a113c5e16a3b7bede5fa6f588deeb928d (diff)
Allow FPs to elevate default precision for the entire fragment program
Currently, GrConfigConversionEffect is able to round-trip on many mobile GPUs because it uses highp for all intermediate variables (including the texture fetch result). Separating the texture sample into a different processor breaks that. This is a blunt instrument, not to be used lightly. Bug: skia: Change-Id: I2ab365e3da79628069e2eb727c43c2bf45bfd789 Reviewed-on: https://skia-review.googlesource.com/10162 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
Diffstat (limited to 'src/gpu/glsl/GrGLSLVarying.cpp')
-rw-r--r--src/gpu/glsl/GrGLSLVarying.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/gpu/glsl/GrGLSLVarying.cpp b/src/gpu/glsl/GrGLSLVarying.cpp
index 7d841f5417..ef3fe8af23 100644
--- a/src/gpu/glsl/GrGLSLVarying.cpp
+++ b/src/gpu/glsl/GrGLSLVarying.cpp
@@ -42,7 +42,7 @@ void GrGLSLVaryingHandler::internalAddVarying(const char* name,
SkASSERT(varying);
v.fType = varying->fType;
- v.fPrecision = precision;
+ v.fPrecision = (kDefault_GrSLPrecision == precision) ? kMedium_GrSLPrecision : precision;
v.fIsFlat = flat;
fProgramBuilder->nameVariable(&v.fVsOut, 'v', name);
v.fVisibility = kNone_GrShaderFlags;