[Mesa-dev] [PATCH 15/21] mesa: Enable vertex programs by default, remove checks
Ian Romanick
idr at freedesktop.org
Mon Aug 29 14:44:55 PDT 2011
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 08/29/2011 12:46 PM, Marek Olšák wrote:
> 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.
That's exactly the opposite of what I expected. Okay, this has my
curiosity. I'll have to dig into it...
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org/
iEYEARECAAYFAk5cCFcACgkQX1gOwKyEAw/nfwCfcnFGD0i31eJI6+hsvN0wbcWY
IbcAn2pRmnoyxS87qujh7aDrTk49yEx5
=DzeO
-----END PGP SIGNATURE-----
More information about the mesa-dev
mailing list