|
Make GL bindings conditional
In addition to the extensions also parse GL/GLES version
information from the headers (hence add a few fresh headers).
Instead of brute-forcing binding in somewhat unclear order
make all dynamic bindings very specifically conditional to
the GL version or extension, given the precise name.
If a function is not available, then leave function pointer
set to NULL so it will generate a crash (report).
(Previously it might have ended up as 0
or with whatever valid or not valid pointer GetProcAddr()
returned - i.e. GetProcAddr returning something does not
imply the functionality is there.)
The version also includes whether it is GLES or not which
means we won't look up functions on GLES anymore that are
specific to desktop or vice versa.
Update gpu_unittests so that they are very specific to what
extensions they need (otherwise they might end up calling
the _NotBound fallback).
Also make WGL/GLX/EGL/MESA bindings all happen rightaway since
they don't depend on a context.
BUG= 438742, 325668
Committed: https://crrev.com/e3b17fd533b81a9855a28d04894021479cd6d89d
Cr-Commit-Position: refs/heads/master@{#313663}
Total comments: 5
Total comments: 6
Total comments: 17
Total comments: 1
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+15755 lines, -1467 lines) |
Patch |
 |
M |
gpu/command_buffer/service/feature_info_unittest.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/service/framebuffer_manager_unittest.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+4 lines, -2 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/service/gles2_cmd_decoder_unittest.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
10 chunks |
+0 lines, -10 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/service/gles2_cmd_decoder_unittest_async_pixel.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
2 chunks |
+0 lines, -2 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/service/gles2_cmd_decoder_unittest_attribs.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+0 lines, -1 line |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/service/gles2_cmd_decoder_unittest_base.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
7 chunks |
+35 lines, -14 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/service/gles2_cmd_decoder_unittest_context_state.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
10 chunks |
+0 lines, -10 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/service/gles2_cmd_decoder_unittest_drawing.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
9 chunks |
+0 lines, -9 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/service/gles2_cmd_decoder_unittest_framebuffers.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
14 chunks |
+0 lines, -14 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/service/gles2_cmd_decoder_unittest_programs.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+0 lines, -1 line |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/service/gles2_cmd_decoder_unittest_textures.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
22 chunks |
+0 lines, -22 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/service/gpu_service_test.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/service/gpu_tracer_unittest.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+11 lines, -1 line |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/service/memory_program_cache_unittest.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/service/query_manager_unittest.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/service/vertex_array_manager_unittest.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
third_party/khronos/README.chromium
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+4 lines, -2 lines |
0 comments
|
Download
|
 |
A |
third_party/khronos/noninclude/GL/glext.h
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+11790 lines, -0 lines |
0 comments
|
Download
|
 |
A |
third_party/khronos/noninclude/GL/glxext.h
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+1001 lines, -0 lines |
0 comments
|
Download
|
 |
A |
third_party/khronos/noninclude/GL/wglext.h
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+840 lines, -0 lines |
0 comments
|
Download
|
 |
M |
ui/gl/BUILD.gn
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
 |
M |
ui/gl/generate_bindings.py
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
52 chunks |
+380 lines, -316 lines |
0 comments
|
Download
|
 |
M |
ui/gl/gl.gyp
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
 |
M |
ui/gl/gl_bindings.h
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
2 chunks |
+14 lines, -4 lines |
0 comments
|
Download
|
 |
A |
ui/gl/gl_bindings.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+68 lines, -0 lines |
0 comments
|
Download
|
 |
M |
ui/gl/gl_bindings_autogen_egl.h
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
 |
M |
ui/gl/gl_bindings_autogen_egl.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
6 chunks |
+97 lines, -32 lines |
0 comments
|
Download
|
 |
M |
ui/gl/gl_bindings_autogen_gl.h
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
2 chunks |
+2 lines, -10 lines |
0 comments
|
Download
|
 |
M |
ui/gl/gl_bindings_autogen_gl.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
15 chunks |
+1307 lines, -857 lines |
0 comments
|
Download
|
 |
M |
ui/gl/gl_bindings_autogen_glx.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
4 chunks |
+84 lines, -29 lines |
0 comments
|
Download
|
 |
M |
ui/gl/gl_bindings_autogen_mock.h
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
3 chunks |
+2 lines, -3 lines |
0 comments
|
Download
|
 |
M |
ui/gl/gl_bindings_autogen_mock.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
6 chunks |
+10 lines, -16 lines |
0 comments
|
Download
|
 |
M |
ui/gl/gl_bindings_autogen_osmesa.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+2 lines, -7 lines |
0 comments
|
Download
|
 |
M |
ui/gl/gl_bindings_autogen_wgl.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
3 chunks |
+59 lines, -21 lines |
0 comments
|
Download
|
 |
M |
ui/gl/gl_egl_api_implementation.h
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+0 lines, -1 line |
0 comments
|
Download
|
 |
M |
ui/gl/gl_egl_api_implementation.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+1 line, -5 lines |
0 comments
|
Download
|
 |
M |
ui/gl/gl_gl_api_implementation.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
ui/gl/gl_glx_api_implementation.h
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+0 lines, -1 line |
0 comments
|
Download
|
 |
M |
ui/gl/gl_glx_api_implementation.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+0 lines, -4 lines |
0 comments
|
Download
|
 |
M |
ui/gl/gl_implementation_android.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+0 lines, -5 lines |
0 comments
|
Download
|
 |
M |
ui/gl/gl_implementation_mac.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+0 lines, -3 lines |
0 comments
|
Download
|
 |
M |
ui/gl/gl_implementation_ozone.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+0 lines, -4 lines |
0 comments
|
Download
|
 |
M |
ui/gl/gl_implementation_win.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+0 lines, -7 lines |
0 comments
|
Download
|
 |
M |
ui/gl/gl_implementation_x11.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+1 line, -8 lines |
0 comments
|
Download
|
 |
M |
ui/gl/gl_osmesa_api_implementation.h
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+0 lines, -1 line |
0 comments
|
Download
|
 |
M |
ui/gl/gl_osmesa_api_implementation.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+0 lines, -4 lines |
0 comments
|
Download
|
 |
M |
ui/gl/gl_surface_egl.h
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
 |
M |
ui/gl/gl_version_info.h
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+12 lines, -10 lines |
0 comments
|
Download
|
 |
M |
ui/gl/gl_version_info.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+20 lines, -20 lines |
0 comments
|
Download
|
 |
M |
ui/gl/gl_wgl_api_implementation.h
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+0 lines, -1 line |
0 comments
|
Download
|
 |
M |
ui/gl/gl_wgl_api_implementation.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+0 lines, -4 lines |
0 comments
|
Download
|
Total messages: 22 (3 generated)
|