[Mesa-dev] [PATCH 00/10] glsl: Implement varying packing.

Marek Olšák maraeo at gmail.com
Wed Dec 12 12:16:14 PST 2012


On Wed, Dec 12, 2012 at 7:51 PM, Paul Berry <stereotype441 at gmail.com> wrote:
> On 12 December 2012 10:21, Paul Berry <stereotype441 at gmail.com> wrote:
>>
>> On 12 December 2012 09:09, Marek Olšák <maraeo at gmail.com> wrote:
>>>
>>> R300 and R400 support 4 texture indirections (as defined by
>>> ARB_fragment_program). Adding ALU instructions before the first TEX
>>> instruction increases the number of texture indirections by 1, which
>>> might make some shaders not be executable on the hardware at all.
>>>
>>> I think this optimization should be disabled on drivers where the
>>> texture indirection limit is too low.
>>>
>>> Marek
>>
>>
>> Hmm, I see.  Follow up question:
>>
>> My patches implement varying packing in two ways: (a) within a composite
>> varying (such as a matrix or array varying) and (b) between varyings.
>> Disabling (b) on some drivers would be pretty simple.  Disabling (a) would
>> be more of a pain, because it would require there to be two paths to handle
>> transform feedback, one that understands how to do feedback for packed
>> varyings, and one that understands how to do feedback for unpacked varyings.
>> I was kind of hoping we could avoid that.  Do you think it would be adequate
>> to disable just (b) on R300 and R400, or do you think we have to disable
>> both (a) and (b) on R300 and R400?
>
>
> Come to think of it, do R300 and R400 support transform feedback at all?  If
> not, then this would be a lot easier.

No, R300 and R400 don't support transform feedback nor do we emulate it.

Marek


More information about the mesa-dev mailing list