[Mesa-dev] [PATCH 00/17] dispatch: code generate _mesa_create_exec_table.

Jordan Justen jljusten at gmail.com
Fri Nov 2 12:33:52 PDT 2012


On Fri, Nov 2, 2012 at 12:19 PM, Paul Berry <stereotype441 at gmail.com> wrote:
> On 2 November 2012 12:16, Paul Berry <stereotype441 at gmail.com> wrote:
>>
>> On 2 November 2012 09:24, Paul Berry <stereotype441 at gmail.com> wrote:
>>>
>>> On 1 November 2012 21:55, Jordan Justen <jljusten at gmail.com> wrote:
>>>>
>>>> Excellent Paul! I didn't realize you were so close to having this
>>>> ready. It makes a good portion of my GL Core dispatch sanity v2 series
>>>> unnecessary.
>>
>>
>> I don't think it makes your series unnecessary, just...different.  For
>> instance, your patch "mesa shaderapi: don't enable various functions for GL
>> CORE" disables three functions for core contexts by adjusting the hand coded
>> function _mesa_init_shader_dispatch().  After my series lands,
>> _mesa_init_shader_dispatch() will only used for the "save" dispatch table,
>> which doesn't apply to core contexts, so it won't be necessary to adjust
>> _mesa_init_shader_dispatch() anymore.  Instead, we'll need to adjust the XML
>> so that the generated code will disable these functions appropriately.
>>
>> I think similar reasoning applies to most (all?) of the other patches in
>> your series.
>>
>> As an experiment, I tried rebasing your patch series on top of my
>> work-in-progress branch, taking these kinds of considerations into account.
>> It's on branch "gl-core-sanity" of git://github.com/stereotype441/mesa.git
>> if you want to look at it.
>>
>>>>
>>>>
>>>> Anyway, I rebased my 5 dispatch-sanity changes onto your branch, and
>>>> it reported that these functions should be nop in GL Core profiles:
>>>> * ActiveProgramEXT
>>>> * CreateShaderProgramEXT
>>>> * UseShaderProgramEXT
>>>> * StencilFuncSeparateATI
>>>>
>>>> The first 3 were changed in my recent v2 03/13 patch.
>>
>>
>> Yeah, adjusting the XML to reproduce the effect of your patch fixed those
>> three.  As for StencilFuncSeparateATI, I screwed it up in commit a21116f,
>> which has already landed in master.  I'll put out a patch to fix that ASAP.
>>
>>>>
>>>>
>>>> Anyway, I pushed my rebased changes to:
>>>> git://people.freedesktop.org/~jljusten/mesa
>>>> branch=code-gen-api-exec+gl-core-sanity
>>>>
>>>> Those 5 changes haven't been fully code reviewed yet, but I think they
>>>> are reasonably close to ready. What would you think about adding them
>>>> to the end of your series?
>>
>>
>> Given the fact that your series is reasonably close to ready, I would
>> prefer to let it land first, then adjust mine to incorporate your changes
>> into the XML.  Is that ok with you?  I'll try to review your series by the
>> end of the day.
>
> I suppose I should add that part of my motivation for wanting your patch
> series to land first is that your series introduces additional testing and
> mine does a lot of refactoring.  It seems safer to add the test first and
> then do the refactor, so that it's easy to confirm that the code passes the
> test both before and after the refactor.

Yeah. That sounds like a good plan.

I just wanted to make sure the GL Core profile dispatch sanity test is
in either before, or at the same time as your series.

-Jordan


More information about the mesa-dev mailing list