<div dir="ltr"><div><br></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Nov 20, 2013 at 5:06 PM, Ian Romanick <span dir="ltr"><<a href="mailto:idr@freedesktop.org" target="_blank">idr@freedesktop.org</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div class="im">On 11/20/2013 02:59 PM, Courtney Goeltzenleuchter wrote:<br>

> This series starts by updating the driver interface for<br>
> scissor, viewport and DepthRange. This includes removing<br>
> unused arguments from the Scissor, Viewport and DepthRange.<br>
> I kept the index argument, although it is not used, it may<br>
> be useful to the dri driver to know which array element<br>
> is being updated.<br>
<br>
</div>For such a long series, could you also make a GIT tree available<br>
somewhere?  It makes it a lot easier to play with.<br></blockquote><div> </div><div>I've posted the branch corresponding to these comments on github: <a href="https://github.com/courtney-lunarg/mesa.git">https://github.com/courtney-lunarg/mesa.git</a></div>
<div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<br>
I think I'll rebase your tree on top of some of my patches.  I think<br>
that will make the overall series a little cleaner and more compact.<br>
For example, I think removing the parameters from the dd functions<br>
should go first.  That would basically eliminate your patches 1, 2, and 3.<br></blockquote><div> </div><div>I deliberately put the remove arguments at the end in case someone raised a complaint about the removal. It seemed easier to back out there.</div>
<div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div class="im"><br>
> I added things incrementally, each having no effect<br>
> on piglit. I tested the full series against the arb_viewport_array<br>
> piglit tests submitted by LunarG and a stubbed version of the<br>
> i965 driver that enables ARB_viewport_array. I've not<br>
> included that stub in this series.<br>
<br>
</div>You can also do this with an environment variable:<br>
<br>
MESA_GL_EXTENSION_OVERRIDE=+GL_ARB_viewport_array<br></blockquote><div><br></div><div>Cool!</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">

<div class=""><div class="h5"><br>
> I modeled the indexed Get functions off GL_COLOR_WRITEMASK.<br>
><br>
> Since the removal of x, y, w, h touches the same files as<br>
> references to gl_context.Viewport it seemed just as easy to<br>
> convert those references to the array reference with index 0.<br>
> Should the driver add ARB_viewport_array support they would<br>
> simply put the right index value in place of 0.<br>
><br>
><br>
> Courtney Goeltzenleuchter (18):<br>
>   mesa: Change scissor dd interface for viewport_array<br>
>   mesa: Update viewport dd interface for viewport_array<br>
>   mesa: Change DepthRange dd interface<br>
>   mesa: Update gl_scissor_attrib to support ARB_viewport_array<br>
>   mesa: Update viewport driver args for ARB_viewport_array<br>
>   mesa: Update viewport state for viewport_array<br>
>   meta: Update meta driver to use API entry point<br>
>   mesa: Add indexed version of mesa_scissor<br>
>   mesa: Add new get entrypoints for ARB_viewport_array<br>
>   mesa: Add custom get function for SCISSOR<br>
>   mesa: Add ARB_viewport_array state to gl_context<br>
>   mesa: Add scissor entry points for viewport_array<br>
>   mesa: Add ARB_viewport_array viewport entry points<br>
>   mesa: Add gl_ViewportIndex variable to GLSL<br>
>   mesa: Add ARB_viewport_array plumbing<br>
>   mesa: Remove unused arguments from driver->Scissor<br>
>   mesa: Remove unused arguments from driver->Viewport<br>
>   mesa: Remove unused arguments from driver->DepthRange<br>
><br>
>  src/glsl/builtin_variables.cpp                  |   2 +<br>
>  src/glsl/glsl_parser_extras.h                   |   1 +<br>
>  src/mapi/glapi/gen/ARB_viewport_array.xml       |  79 ++++++<br>
>  src/mapi/glapi/gen/Makefile.am                  |   1 +<br>
>  src/mapi/glapi/gen/gl_API.xml                   |   2 +-<br>
>  src/mesa/drivers/common/driverfuncs.c           |  11 +-<br>
>  src/mesa/drivers/common/meta.c                  |  52 ++--<br>
>  src/mesa/drivers/dri/i915/i830_state.c          |  26 +-<br>
>  src/mesa/drivers/dri/i915/i830_vtbl.c           |   5 +-<br>
>  src/mesa/drivers/dri/i915/i915_state.c          |  50 ++--<br>
>  src/mesa/drivers/dri/i915/i915_vtbl.c           |   5 +-<br>
>  src/mesa/drivers/dri/i915/intel_context.c       |  15 +-<br>
>  src/mesa/drivers/dri/i915/intel_fbo.c           |   2 +-<br>
>  src/mesa/drivers/dri/i965/brw_cc.c              |   4 +-<br>
>  src/mesa/drivers/dri/i965/brw_clear.c           |  12 +-<br>
>  src/mesa/drivers/dri/i965/brw_clip_state.c      |  12 +-<br>
>  src/mesa/drivers/dri/i965/brw_context.c         |   7 +-<br>
>  src/mesa/drivers/dri/i965/brw_sf_state.c        |   4 +-<br>
>  src/mesa/drivers/dri/i965/gen6_clip_state.c     |   8 +-<br>
>  src/mesa/drivers/dri/i965/gen6_sf_state.c       |   2 +-<br>
>  src/mesa/drivers/dri/i965/gen6_viewport_state.c |   6 +-<br>
>  src/mesa/drivers/dri/i965/gen7_sf_state.c       |   2 +-<br>
>  src/mesa/drivers/dri/i965/gen7_viewport_state.c |   6 +-<br>
>  src/mesa/drivers/dri/i965/intel_fbo.c           |   2 +-<br>
>  src/mesa/drivers/dri/nouveau/nouveau_util.h     |   4 +-<br>
>  src/mesa/drivers/dri/nouveau/nv10_state_fb.c    |   2 +-<br>
>  src/mesa/drivers/dri/r200/r200_state.c          |  15 +-<br>
>  src/mesa/drivers/dri/radeon/radeon_common.c     |  18 +-<br>
>  src/mesa/drivers/dri/radeon/radeon_common.h     |   2 +-<br>
>  src/mesa/drivers/dri/radeon/radeon_state.c      |  14 +-<br>
>  src/mesa/drivers/dri/swrast/swrast.c            |   8 +-<br>
>  src/mesa/main/attrib.c                          |  30 ++-<br>
>  src/mesa/main/config.h                          |   3 +<br>
>  src/mesa/main/context.c                         |  36 ++-<br>
>  src/mesa/main/dd.h                              |   6 +-<br>
>  src/mesa/main/enable.c                          |  36 ++-<br>
>  src/mesa/main/extensions.c                      |   1 +<br>
>  src/mesa/main/framebuffer.c                     |  19 +-<br>
>  src/mesa/main/get.c                             | 218 +++++++++++++++-<br>
>  src/mesa/main/get.h                             |   6 +<br>
>  src/mesa/main/get_hash_params.py                |  15 +-<br>
>  src/mesa/main/mtypes.h                          |  25 +-<br>
>  src/mesa/main/rastpos.c                         |   4 +-<br>
>  src/mesa/main/scissor.c                         | 157 ++++++++++--<br>
>  src/mesa/main/scissor.h                         |  10 +-<br>
>  src/mesa/main/state.c                           |  17 +-<br>
>  src/mesa/main/viewport.c                        | 314 ++++++++++++++++++++----<br>
>  src/mesa/main/viewport.h                        |  22 +-<br>
>  src/mesa/math/m_matrix.c                        |   9 +-<br>
>  src/mesa/math/m_matrix.h                        |   4 +-<br>
>  src/mesa/program/prog_statevars.c               |   7 +-<br>
>  src/mesa/state_tracker/st_atom_rasterizer.c     |   2 +-<br>
>  src/mesa/state_tracker/st_atom_scissor.c        |  14 +-<br>
>  src/mesa/state_tracker/st_atom_viewport.c       |  12 +-<br>
>  src/mesa/state_tracker/st_cb_bitmap.c           |   2 +-<br>
>  src/mesa/state_tracker/st_cb_clear.c            |  10 +-<br>
>  src/mesa/state_tracker/st_cb_drawpixels.c       |   2 +-<br>
>  src/mesa/state_tracker/st_cb_viewport.c         |   3 +-<br>
>  src/mesa/swrast/s_context.c                     |  10 +-<br>
>  src/mesa/swrast/s_depth.c                       |  10 +-<br>
>  src/mesa/swrast_setup/ss_context.c              |   4 +-<br>
>  src/mesa/tnl/t_rasterpos.c                      |  16 +-<br>
>  62 files changed, 1057 insertions(+), 346 deletions(-)<br>
>  create mode 100644 src/mapi/glapi/gen/ARB_viewport_array.xml<br>
><br>
<br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><div dir="ltr">Courtney Goeltzenleuchter<br><div>LunarG</div><div><img src="http://media.lunarg.com/wp-content/themes/LunarG/images/logo.png" width="96" height="65"><br>
</div></div>
</div></div>