[Mesa-dev] [PATCH 000/101] Some more various KHR_no_error patches

Samuel Pitoiset samuel.pitoiset at gmail.com
Fri Jul 21 17:39:09 UTC 2017


Hi there,

After grepping into src/mapi and looking at some apitrace traces,
KHR_no_error support can be added to more various GL calls.

It seems like this series improves Dirt Rally in low by ~3%, this is
not much but I think it's worth trying. I didn't do any other benchmarks
but it should help here and there. The errors path shouldn't be slower.

Not sure if this can be merged in time for mesa 17.2 though.

Please review,
Thanks!

Samuel Pitoiset (101):
  mesa: add depth_range_arrayv() helper
  mesa: add KHR_no_error support to glDepthRangeArrayv
  mesa: add sample_maski() helper
  mesa: add KHR_no_error support to glSampleMaski()
  mesa: add blend_equationi() helper
  mesa: add KHR_no_error support to glBlendEquationiARB()
  mesa: add KHR_no_error support to glPatchParameteri()
  mesa: add texture_view() helper
  mesa: add KHR_no_error support to glTextureView()
  mesa: add wait_sync() helper
  mesa: add KHR_no_error support to glWaitSync()
  mesa: add delete_sync() helper
  mesa: add KHR_no_error support to glDeleteSync()
  mesa: add program_parameteri() helper
  mesa: add KHR_no_error support to glProgramParameteri()
  mesa: add bind_samplers() helper
  mesa: add KHR_no_error support to glBindSamplers()
  mesa: add bind_sampler() helper
  mesa: add KHR_no_error support to glBindSampler()
  mesa: add texture_storage_error() helper
  mesa: rename texstorage() to texstorage_error()
  mesa: add KHR_no_error support to glTexStorage*D()
  mesa: rename texturestorage() to texturestorage_error()
  mesa: add KHR_no_error support to glTextureStorage*D()
  mesa: add gen_vertex_arrays_err() helper
  mesa: add KHR_no_error support to gl{Create,Gen}VertexArrays()
  mesa: add KHR_no_error support to glVertexBindingDivisor()
  mesa: add KHR_no_error support to glVertexArrayBindingDivisor()
  mesa: add KHR_no_error support to glMultiDrawElementsBaseVertex()
  mesa: add KHR_no_error support to glMultiDraw*Indirect*()
  mesa: add read_pixels() helper
  mesa: add KHR_no_error support to glRead*Pixels*()
  mesa: add KHR_no_error support to glInvalidate*()
  mesa: add bind_vertex_array() helper
  mesa: add KHR_no_error to glBindVertexArray()
  mesa: add delete_vertex_arrays() helper
  mesa: add KHR_no_error to glDeleteVertexArrays()
  mesa: add delete_samplers() helper
  mesa: add KHR_no_error support to glDeleteSamplers()
  mesa: add generate_texture_mipmap_error() helper
  mesa: add KHR_no_error support to glGenerate*Mipmap()
  mesa: add primitive_restart_index() helper
  mesa: add KHR_no_error support to glPrimitiveRestartIndex()
  mesa: add blend_equation_separate() helper
  mesa: add KHR_no_error support to glBlendEquationSeparate()
  mesa: add min_sample_shading() helper
  mesa: add KHR_no_error support to glMinSampleShading()
  mesa: add KHR_no_error support to glMultiDrawArrays()
  mesa: add memory_barrier_by_region() helper
  mesa: add KHR_no_error support to glMemoryBarrierByRegion()
  mesa: rename bind_texture() to bind_texture_object()
  mesa: add bind_texture() helper
  mesa: add KHR_no_error support to glBindTexture()
  mesa: add bind_textures() helper
  mesa: add KHR_no_error support to glBindTextures()
  mesa: add draw_buffer_error() helper
  mesa: add KHR_no_error support to glDrawBuffer()
  mesa: add KHR_no_error support to glNamedFramebufferDrawBuffer()
  mesa: add delete_textures() helper
  mesa: add KHR_no_error support to glDeleteTextures()
  mesa: add framebuffer_renderbuffer_error() helper
  mesa: add KHR_no_error support to glFramebufferRenderbuffer()
  mesa: add KHR_no_error support to glNamedFramebufferRenderbuffer()
  mesa: add delete_buffers() helper
  mesa: add KHR_no_error support to glDeleteBuffers()
  mesa: add draw_buffers_error() helper
  mesa: add KHR_no_error support to glDrawBuffers()
  mesa: add KHR_no_error support to glNamedFramebufferDrawBuffers()
  mesa: add KHR_no_error support to glDrawTransformFeedback*()
  mesa: add detach_shader_error() helper
  mesa: add KHR_no_error support to glDetachShader() and
    glDetachObjectARB()
  mesa: add texturesubimage_error() helper
  mesa: add KHR_no_error support to glTextureSubImage*D()
  mesa: add vertex_array_element_buffer() helper
  mesa: add KHR_no_error support to glVertexArrayElementBuffer()
  mesa: add point_size() helper
  mesa: add KHR_no_error support to glPointSize()
  mesa: add line_width() helper
  mesa: add KHR_no_error support to glLineWidth()
  mesa: add buffer_data() and buffer_data_error() helpers
  mesa: add KHR_no_error support to glNamedBufferData() and
    glBufferData()
  mesa: add begin_conditional_render() helper
  mesa: add KHR_no_error support to glBeginConditionalRender()
  mesa: add end_conditional_render() render
  mesa: add KHR_no_error support to glEndConditionalRender()
  mesa: rename shader_source() to set_shader_source()
  mesa: add shader_source() helper
  mesa: add KHR_no_error support to glShaderSource()
  mesa: add link_program() and link_program_error() helpers
  mesa: add KHR_no_error support to glLinkProgram()
  mesa: make get_texbuffer_format() global
  mesa: add clear_buffer_sub_data_error() helper
  mesa: add KHR_no_error support to glClear*Buffer*Data()
  mesa: add clear_bufferfv() helper
  mesa: add KHR_no_error support to glClearBufferfv()
  mesa: add clear_bufferi() helper
  mesa: add KHR_no_error support to glClearBufferfi()
  mesa: add clear_bufferuiv() helper
  mesa: add KHR_no_error support to glClearBufferuiv()
  mesa: add clear_bufferiv() helper
  mesa: add KHR_no_error support to glClearBufferiv()

 src/mapi/glapi/gen/ARB_clear_buffer_object.xml   |   4 +-
 src/mapi/glapi/gen/ARB_direct_state_access.xml   |  32 +-
 src/mapi/glapi/gen/ARB_draw_buffers_blend.xml    |   2 +-
 src/mapi/glapi/gen/ARB_framebuffer_object.xml    |   4 +-
 src/mapi/glapi/gen/ARB_get_program_binary.xml    |   2 +-
 src/mapi/glapi/gen/ARB_invalidate_subdata.xml    |   8 +-
 src/mapi/glapi/gen/ARB_multi_bind.xml            |   4 +-
 src/mapi/glapi/gen/ARB_robustness.xml            |   2 +-
 src/mapi/glapi/gen/ARB_sampler_objects.xml       |   4 +-
 src/mapi/glapi/gen/ARB_sync.xml                  |   4 +-
 src/mapi/glapi/gen/ARB_tessellation_shader.xml   |   2 +-
 src/mapi/glapi/gen/ARB_texture_multisample.xml   |   2 +-
 src/mapi/glapi/gen/ARB_texture_storage.xml       |   6 +-
 src/mapi/glapi/gen/ARB_texture_view.xml          |   2 +-
 src/mapi/glapi/gen/ARB_vertex_array_object.xml   |   6 +-
 src/mapi/glapi/gen/ARB_vertex_attrib_binding.xml |   2 +-
 src/mapi/glapi/gen/ARB_viewport_array.xml        |   2 +-
 src/mapi/glapi/gen/GL3x.xml                      |  14 +-
 src/mapi/glapi/gen/GL4x.xml                      |   4 +-
 src/mapi/glapi/gen/gl_API.xml                    |  28 +-
 src/mesa/main/arrayobj.c                         | 166 ++++++++---
 src/mesa/main/arrayobj.h                         |  15 +
 src/mesa/main/barrier.c                          |  23 +-
 src/mesa/main/barrier.h                          |   3 +
 src/mesa/main/blend.c                            | 115 +++++---
 src/mesa/main/blend.h                            |   6 +
 src/mesa/main/bufferobj.c                        | 302 ++++++++++++++-----
 src/mesa/main/bufferobj.h                        |  32 ++
 src/mesa/main/buffers.c                          | 308 +++++++++++++-------
 src/mesa/main/buffers.h                          |  13 +
 src/mesa/main/clear.c                            | 194 +++++++++----
 src/mesa/main/clear.h                            |  15 +
 src/mesa/main/condrender.c                       | 150 ++++++----
 src/mesa/main/condrender.h                       |   6 +
 src/mesa/main/fbobject.c                         | 161 ++++++++---
 src/mesa/main/fbobject.h                         |  19 ++
 src/mesa/main/genmipmap.c                        |  72 +++--
 src/mesa/main/genmipmap.h                        |   6 +
 src/mesa/main/lines.c                            |  33 ++-
 src/mesa/main/lines.h                            |   3 +
 src/mesa/main/multisample.c                      |  52 +++-
 src/mesa/main/multisample.h                      |   6 +
 src/mesa/main/points.c                           |  31 +-
 src/mesa/main/points.h                           |   3 +
 src/mesa/main/readpix.c                          | 185 +++++++-----
 src/mesa/main/readpix.h                          |   9 +
 src/mesa/main/samplerobj.c                       | 116 +++++---
 src/mesa/main/samplerobj.h                       |  14 +
 src/mesa/main/shaderapi.c                        | 220 ++++++++++----
 src/mesa/main/shaderapi.h                        |  19 ++
 src/mesa/main/syncobj.c                          |  52 +++-
 src/mesa/main/syncobj.h                          |   6 +
 src/mesa/main/teximage.c                         | 133 ++++++---
 src/mesa/main/teximage.h                         |  18 ++
 src/mesa/main/texobj.c                           | 169 +++++++----
 src/mesa/main/texobj.h                           |  18 ++
 src/mesa/main/texstorage.c                       | 194 ++++++++++---
 src/mesa/main/texstorage.h                       |  24 ++
 src/mesa/main/textureview.c                      | 354 ++++++++++++-----------
 src/mesa/main/textureview.h                      |   6 +
 src/mesa/main/varray.c                           |  43 ++-
 src/mesa/main/varray.h                           |  10 +
 src/mesa/main/viewport.c                         |  28 +-
 src/mesa/main/viewport.h                         |   4 +
 src/mesa/vbo/vbo_exec_array.c                    |  93 ++++--
 65 files changed, 2537 insertions(+), 1046 deletions(-)

-- 
2.13.3



More information about the mesa-dev mailing list