[Mesa-dev] [PATCH 15/21] mesa: Enable vertex programs by default, remove checks

Marek Olšák maraeo at gmail.com
Mon Aug 29 12:46:16 PDT 2011


On Mon, Aug 29, 2011 at 7:59 PM, Ian Romanick <idr at freedesktop.org> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> On 08/27/2011 05:39 AM, Marek Olšák wrote:
>> Hi Ian,
>>
>> I was trying to enable NV_vertex_program without regressions in
>> st/mesa before, but these piglit tests were always failing and are still
>> failing with your patch:
>>
>> nv-add
>> nv-arl
>> nv-init-zero-addr
>> nv-init-zero-reg
>> nv-mov
>
> After digging around some more, I think everything except nouveau needs:
>
>    ctx->ShaderCompilerOptions[].EmitNVTempInitialization = true;
>
> I did that for r200 in patch 16/21.  If that fixes softpipe, we should
> just make that setting be the default.
>
>> r600g just fails or assertion-fails, but softpipe sometimes crashes
>> (e.g. in nv-init-zero-addr). That's the reason st/mesa doesn't support
>> NV_vertex_program currently.
>
> That's weird.  What's the assertion failure?  Is it some invalid
> instruction or something else?

These two:

../../src/gallium/auxiliary/tgsi/tgsi_ureg.h:863:ureg_writemask:
Assertion `reg.File != TGSI_FILE_NULL' failed.
../../src/gallium/auxiliary/tgsi/tgsi_ureg.h:909:ureg_src_indirect:
Assertion `addr.File == TGSI_FILE_ADDRESS || addr.File ==
TGSI_FILE_TEMPORARY' failed.

EmitNVTempInitialization fixes those assertions, but all the NV tests
still fail on softpipe and r600g.

Marek


More information about the mesa-dev mailing list