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

Side by Side Diff: gpu/command_buffer/service/gles2_cmd_decoder_autogen.h

Issue 245923008: Optimize GLES2DecoderImpl::ApplyDirtyState. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase on refactored gles2_cmd_decoder_unittest.cc Created 6 years, 7 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 unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 // This file is auto-generated from 5 // This file is auto-generated from
6 // gpu/command_buffer/build_gles2_cmd_buffer.py 6 // gpu/command_buffer/build_gles2_cmd_buffer.py
7 // It's formatted by clang-format using chromium coding style: 7 // It's formatted by clang-format using chromium coding style:
8 // clang-format -i -style=chromium filename 8 // clang-format -i -style=chromium filename
9 // DO NOT EDIT! 9 // DO NOT EDIT!
10 10
(...skipping 3433 matching lines...) Expand 10 before | Expand all | Expand 10 after
3444 return error::kOutOfBounds; 3444 return error::kOutOfBounds;
3445 } 3445 }
3446 DoDrawBuffersEXT(count, bufs); 3446 DoDrawBuffersEXT(count, bufs);
3447 return error::kNoError; 3447 return error::kNoError;
3448 } 3448 }
3449 3449
3450 bool GLES2DecoderImpl::SetCapabilityState(GLenum cap, bool enabled) { 3450 bool GLES2DecoderImpl::SetCapabilityState(GLenum cap, bool enabled) {
3451 switch (cap) { 3451 switch (cap) {
3452 case GL_BLEND: 3452 case GL_BLEND:
3453 state_.enable_flags.blend = enabled; 3453 state_.enable_flags.blend = enabled;
3454 return true; 3454 if (state_.enable_flags.cached_blend != enabled ||
3455 state_.ignore_cached_state) {
3456 state_.enable_flags.cached_blend = enabled;
3457 return true;
3458 }
3459 return false;
3455 case GL_CULL_FACE: 3460 case GL_CULL_FACE:
3456 state_.enable_flags.cull_face = enabled; 3461 state_.enable_flags.cull_face = enabled;
3457 return true; 3462 if (state_.enable_flags.cached_cull_face != enabled ||
3463 state_.ignore_cached_state) {
3464 state_.enable_flags.cached_cull_face = enabled;
3465 return true;
3466 }
3467 return false;
3458 case GL_DEPTH_TEST: 3468 case GL_DEPTH_TEST:
3459 if (state_.enable_flags.depth_test != enabled) { 3469 state_.enable_flags.depth_test = enabled;
3460 state_.enable_flags.depth_test = enabled; 3470 if (state_.enable_flags.cached_depth_test != enabled ||
3471 state_.ignore_cached_state) {
3461 framebuffer_state_.clear_state_dirty = true; 3472 framebuffer_state_.clear_state_dirty = true;
3462 } 3473 }
3463 return false; 3474 return false;
3464 case GL_DITHER: 3475 case GL_DITHER:
3465 state_.enable_flags.dither = enabled; 3476 state_.enable_flags.dither = enabled;
3466 return true; 3477 if (state_.enable_flags.cached_dither != enabled ||
3478 state_.ignore_cached_state) {
3479 state_.enable_flags.cached_dither = enabled;
3480 return true;
3481 }
3482 return false;
3467 case GL_POLYGON_OFFSET_FILL: 3483 case GL_POLYGON_OFFSET_FILL:
3468 state_.enable_flags.polygon_offset_fill = enabled; 3484 state_.enable_flags.polygon_offset_fill = enabled;
3469 return true; 3485 if (state_.enable_flags.cached_polygon_offset_fill != enabled ||
3486 state_.ignore_cached_state) {
3487 state_.enable_flags.cached_polygon_offset_fill = enabled;
3488 return true;
3489 }
3490 return false;
3470 case GL_SAMPLE_ALPHA_TO_COVERAGE: 3491 case GL_SAMPLE_ALPHA_TO_COVERAGE:
3471 state_.enable_flags.sample_alpha_to_coverage = enabled; 3492 state_.enable_flags.sample_alpha_to_coverage = enabled;
3472 return true; 3493 if (state_.enable_flags.cached_sample_alpha_to_coverage != enabled ||
3494 state_.ignore_cached_state) {
3495 state_.enable_flags.cached_sample_alpha_to_coverage = enabled;
3496 return true;
3497 }
3498 return false;
3473 case GL_SAMPLE_COVERAGE: 3499 case GL_SAMPLE_COVERAGE:
3474 state_.enable_flags.sample_coverage = enabled; 3500 state_.enable_flags.sample_coverage = enabled;
3475 return true; 3501 if (state_.enable_flags.cached_sample_coverage != enabled ||
3502 state_.ignore_cached_state) {
3503 state_.enable_flags.cached_sample_coverage = enabled;
3504 return true;
3505 }
3506 return false;
3476 case GL_SCISSOR_TEST: 3507 case GL_SCISSOR_TEST:
3477 if (state_.enable_flags.scissor_test != enabled) { 3508 state_.enable_flags.scissor_test = enabled;
3478 state_.enable_flags.scissor_test = enabled; 3509 if (state_.enable_flags.cached_scissor_test != enabled ||
3510 state_.ignore_cached_state) {
3511 state_.enable_flags.cached_scissor_test = enabled;
3512 return true;
3513 }
3514 return false;
3515 case GL_STENCIL_TEST:
3516 state_.enable_flags.stencil_test = enabled;
3517 if (state_.enable_flags.cached_stencil_test != enabled ||
3518 state_.ignore_cached_state) {
3479 framebuffer_state_.clear_state_dirty = true; 3519 framebuffer_state_.clear_state_dirty = true;
3480 } 3520 }
3481 return false; 3521 return false;
3482 case GL_STENCIL_TEST:
3483 if (state_.enable_flags.stencil_test != enabled) {
3484 state_.enable_flags.stencil_test = enabled;
3485 framebuffer_state_.clear_state_dirty = true;
3486 }
3487 return false;
3488 default: 3522 default:
3489 NOTREACHED(); 3523 NOTREACHED();
3490 return false; 3524 return false;
3491 } 3525 }
3492 } 3526 }
3493 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_AUTOGEN_H_ 3527 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_AUTOGEN_H_
OLDNEW
« no previous file with comments | « gpu/command_buffer/service/gles2_cmd_decoder.cc ('k') | gpu/command_buffer/service/gles2_cmd_decoder_mock.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698