Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2727)

Unified Diff: gpu/command_buffer/service/program_manager.cc

Issue 147593011: Hookup clear_uniforms_before_first_program_use workaround with implementation. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: same Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: gpu/command_buffer/service/program_manager.cc
diff --git a/gpu/command_buffer/service/program_manager.cc b/gpu/command_buffer/service/program_manager.cc
index 32b91403bf6fd8093d53c1944903922c7133279b..725b3666fb5edecc79084cea9241b039bc80fee2 100644
--- a/gpu/command_buffer/service/program_manager.cc
+++ b/gpu/command_buffer/service/program_manager.cc
@@ -18,7 +18,6 @@
#include "base/time/time.h"
#include "gpu/command_buffer/common/gles2_cmd_format.h"
#include "gpu/command_buffer/common/gles2_cmd_utils.h"
-#include "gpu/command_buffer/service/feature_info.h"
#include "gpu/command_buffer/service/gles2_cmd_decoder.h"
#include "gpu/command_buffer/service/gpu_switches.h"
#include "gpu/command_buffer/service/program_cache.h"
@@ -461,9 +460,10 @@ void Program::ExecuteBindAttribLocationCalls() {
}
}
-void ProgramManager::DoCompileShader(Shader* shader,
- ShaderTranslator* translator,
- FeatureInfo* feature_info) {
+void ProgramManager::DoCompileShader(
+ Shader* shader,
+ ShaderTranslator* translator,
+ ProgramManager::TranslatedShaderSourceType translated_shader_source_type) {
// Translate GL ES 2.0 shader to Desktop GL shader and pass that to
// glShaderSource and then glCompileShader.
const std::string* source = shader->source();
@@ -474,13 +474,13 @@ void ProgramManager::DoCompileShader(Shader* shader,
return;
}
shader_src = translator->translated_shader();
- if (!feature_info->feature_flags().angle_translated_shader_source)
+ if (translated_shader_source_type != kANGLE)
shader->UpdateTranslatedSource(shader_src);
}
glShaderSource(shader->service_id(), 1, &shader_src, NULL);
glCompileShader(shader->service_id());
- if (feature_info->feature_flags().angle_translated_shader_source) {
+ if (translated_shader_source_type == kANGLE) {
GLint max_len = 0;
glGetShaderiv(shader->service_id(),
GL_TRANSLATED_SHADER_SOURCE_LENGTH_ANGLE,
@@ -522,7 +522,6 @@ void ProgramManager::DoCompileShader(Shader* shader,
bool Program::Link(ShaderManager* manager,
ShaderTranslator* vertex_translator,
ShaderTranslator* fragment_translator,
- FeatureInfo* feature_info,
const ShaderCacheCallback& shader_callback) {
ClearLinkStatus();
if (!CanLink()) {
@@ -1251,9 +1250,6 @@ ProgramManager::ProgramManager(ProgramCache* program_cache,
uint32 max_varying_vectors)
: program_count_(0),
have_context_(true),
- disable_workarounds_(
- CommandLine::ForCurrentProcess()->HasSwitch(
- switches::kDisableGpuDriverBugWorkarounds)),
program_cache_(program_cache),
max_varying_vectors_(max_varying_vectors) { }
@@ -1348,7 +1344,6 @@ void ProgramManager::UseProgram(Program* program) {
DCHECK(program);
DCHECK(IsOwned(program));
program->IncUseCount();
- ClearUniforms(program);
}
void ProgramManager::UnuseProgram(
@@ -1363,9 +1358,7 @@ void ProgramManager::UnuseProgram(
void ProgramManager::ClearUniforms(Program* program) {
DCHECK(program);
- if (!disable_workarounds_) {
- program->ClearUniforms(&zero_);
- }
+ program->ClearUniforms(&zero_);
}
int32 ProgramManager::MakeFakeLocation(int32 index, int32 element) {
« no previous file with comments | « gpu/command_buffer/service/program_manager.h ('k') | gpu/command_buffer/service/program_manager_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698