[Mesa-dev] [PATCH 2/3] glsl: Fix incorrect hard-coded location of the gl_SecondaryFragColorEXT built-in.
Francisco Jerez
currojerez at riseup.net
Thu Aug 25 04:45:52 UTC 2016
Ilia Mirkin <imirkin at alum.mit.edu> writes:
> On Wed, Aug 24, 2016 at 4:30 PM, Francisco Jerez <currojerez at riseup.net> wrote:
>> Ilia Mirkin <imirkin at alum.mit.edu> writes:
>>
>>> I had trouble getting these to apply, perhaps they were meant to go on
>>> top of something else. Anyways, should be fairly easy for you to test
>>> out with llvmpipe.
>>>
>> It should apply cleanly on latest master now.
>
> Indeed it does. Running these 3 patches:
>
> glsl: Calculate bitset of secondary outputs written in ir_set_program_inouts.
> st/glsl_to_tgsi: Translate fragment shader secondary outputs to TGSI outputs.
> glsl: Fix incorrect hard-coded location of the
> gl_SecondaryFragColorEXT built-in.
>
So you didn't have PATCH 1 applied to your tree? I'd expect this change
to behave badly without it and possibly end up creating too many
outputs. I guess I'll have to squash this change into the others...
> I get:
>
> state_tracker/st_program.c:824:st_translate_fragment_program:
> Assertion `0' failed.
> (gdb) l
> 819 switch (loc) {
> 820 case FRAG_RESULT_DEPTH:
> 821 case FRAG_RESULT_STENCIL:
> 822 case FRAG_RESULT_SAMPLE_MASK:
> 823 /* handled above */
> 824 assert(0);
> 825 break;
> 826 case FRAG_RESULT_COLOR:
> 827 write_all = GL_TRUE; /* fallthrough */
> 828 default:
> (gdb) i locals
> written = 8
> loc = 3
> numColors = 1
> outputsWritten = 4
> outputMapping = {7080032, 0, 1, 0, 14, 0, 7082880, 14, 4294951632, 32767,
> 4156877824, 3574963175, 4294951316, 32767, 7015088, 0, 4294951504, 32767,
> 4030068507, 32767, 3, 14, 0, 15}
> inputMapping = {0, 4294967295 <repeats 61 times>}
> inputSlotToAttr = {0, 4294967295 <repeats 61 times>}
> interpMode = {1, 0 <repeats 79 times>}
> interpLocation = {0 <repeats 24 times>, 4120177808, 32767, 0, 0, 0, 0,
> 7080656, 0, 27, 0, 0, 0, 1744, 0, 1744, 0, 4120177728, 32767, 37, 32767,
> 576, 0, 4030368463, 32767, 7074928, 0, 7078416, 0, 4294952288, 32767, 2,
> 32767, 16, 0, 7078416, 0, 0, 2090733823, 7062160, 0, 0, 0, 7078416, 3, 3,
> 2090733823, 6845752, 0, 4294952320, 2, 4294952320, 32767, 4029319846, 32767,
> 4040141664, 32767}
> attr = 15
> inputsRead = 1
> ureg = 0x4e00000000
> write_all = 1 '\001'
>
> I don't really have the time to investigate this further ATM. However
> you should be able to reproduce yourself with llvmpipe.
>
Heh, I have a hunch what's going on, I'll take a look and resend as a
proper patch -- if the general approach seems reasonable to you?
> -ilia
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 212 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20160824/5838a57f/attachment.sig>
More information about the mesa-dev
mailing list