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

Unified Diff: gpu/command_buffer/service/gpu_driver_bug_workaround_type.h

Issue 13400003: Use macro to simplify gpu driver bug workaround defs and code. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 7 years, 9 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
« no previous file with comments | « gpu/command_buffer/service/feature_info_unittest.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: gpu/command_buffer/service/gpu_driver_bug_workaround_type.h
===================================================================
--- gpu/command_buffer/service/gpu_driver_bug_workaround_type.h (revision 192406)
+++ gpu/command_buffer/service/gpu_driver_bug_workaround_type.h (working copy)
@@ -7,32 +7,55 @@
#include "gpu/gpu_export.h"
+#define GPU_DRIVER_BUG_WORKAROUNDS(GPU_OP) \
+ GPU_OP(CLEAR_ALPHA_IN_READPIXELS, \
+ clear_alpha_in_readpixels) \
+ GPU_OP(CLEAR_UNIFORMS_BEFORE_PROGRAM_USE, \
+ clear_uniforms_before_program_use) \
+ GPU_OP(DELETE_INSTEAD_OF_RESIZE_FBO, \
+ delete_instead_of_resize_fbo) \
+ GPU_OP(DISABLE_ANGLE_FRAMEBUFFER_MULTISAMPLE, \
+ disable_angle_framebuffer_multisample) \
+ GPU_OP(DISABLE_DEPTH_TEXTURE, \
+ disable_depth_texture) \
+ GPU_OP(DISABLE_EXT_OCCLUSION_QUERY, \
+ disable_ext_occlusion_query) \
+ GPU_OP(ENABLE_CHROMIUM_FAST_NPOT_MO8_TEXTURES, \
+ enable_chromium_fast_npot_mo8_textures) \
+ GPU_OP(EXIT_ON_CONTEXT_LOST, \
+ exit_on_context_lost) \
+ GPU_OP(FLUSH_ON_CONTEXT_SWITCH, \
+ flush_on_context_switch) \
+ GPU_OP(MAX_CUBE_MAP_TEXTURE_SIZE_LIMIT_1024, \
+ max_cube_map_texture_size_limit_1024) \
+ GPU_OP(MAX_CUBE_MAP_TEXTURE_SIZE_LIMIT_4096, \
+ max_cube_map_texture_size_limit_4096) \
+ GPU_OP(MAX_CUBE_MAP_TEXTURE_SIZE_LIMIT_512, \
+ max_cube_map_texture_size_limit_512) \
+ GPU_OP(MAX_TEXTURE_SIZE_LIMIT_4096, \
+ max_texture_size_limit_4096) \
+ GPU_OP(NEEDS_GLSL_BUILT_IN_FUNCTION_EMULATION, \
+ needs_glsl_built_in_function_emulation) \
+ GPU_OP(NEEDS_OFFSCREEN_BUFFER_WORKAROUND, \
+ needs_offscreen_buffer_workaround) \
+ GPU_OP(RESTORE_SCISSOR_ON_FBO_CHANGE, \
+ restore_scissor_on_fbo_change) \
+ GPU_OP(REVERSE_POINT_SPRITE_COORD_ORIGIN, \
+ reverse_point_sprite_coord_origin) \
+ GPU_OP(SET_TEXTURE_FILTER_BEFORE_GENERATING_MIPMAP, \
+ set_texture_filter_before_generating_mipmap) \
+ GPU_OP(USE_CLIENT_SIDE_ARRAYS_FOR_STREAM_BUFFERS, \
+ use_client_side_arrays_for_stream_buffers) \
+ GPU_OP(USE_CURRENT_PROGRAM_AFTER_SUCCESSFUL_LINK, \
+ use_current_program_after_successful_link)
+
namespace gpu {
-// Provides flags indicating which gpu features are blacklisted for the system
-// on which chrome is currently running.
-// If a bit is set to 1, corresponding feature is blacklisted.
+// Provides all types of GPU driver bug workarounds.
enum GPU_EXPORT GpuDriverBugWorkaroundType {
- CLEAR_ALPHA_IN_READPIXELS = 0,
- CLEAR_UNIFORMS_BEFORE_PROGRAM_USE,
- DELETE_INSTEAD_OF_RESIZE_FBO,
- DISABLE_ANGLE_FRAMEBUFFER_MULTISAMPLE,
- DISABLE_DEPTH_TEXTURE,
- DISABLE_EXT_OCCLUSION_QUERY,
- ENABLE_CHROMIUM_FAST_NPOT_MO8_TEXTURES,
- EXIT_ON_CONTEXT_LOST,
- FLUSH_ON_CONTEXT_SWITCH,
- MAX_CUBE_MAP_TEXTURE_SIZE_LIMIT_1024,
- MAX_CUBE_MAP_TEXTURE_SIZE_LIMIT_4096,
- MAX_CUBE_MAP_TEXTURE_SIZE_LIMIT_512,
- MAX_TEXTURE_SIZE_LIMIT_4096,
- NEEDS_GLSL_BUILT_IN_FUNCTION_EMULATION,
- NEEDS_OFFSCREEN_BUFFER_WORKAROUND,
- RESTORE_SCISSOR_ON_FBO_CHANGE,
- REVERSE_POINT_SPRITE_COORD_ORIGIN,
- SET_TEXTURE_FILTER_BEFORE_GENERATING_MIPMAP,
- USE_CLIENT_SIDE_ARRAYS_FOR_STREAM_BUFFERS,
- USE_CURRENT_PROGRAM_AFTER_SUCCESSFUL_LINK,
+#define GPU_OP(type, name) type,
+ GPU_DRIVER_BUG_WORKAROUNDS(GPU_OP)
+#undef GPU_OP
NUMBER_OF_GPU_DRIVER_BUG_WORKAROUND_TYPES
};
« no previous file with comments | « gpu/command_buffer/service/feature_info_unittest.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698