[Mesa-dev] Mesa (master): mesa/st: ask GLSL to not emit noise since we have a dummy implementation

Ian Romanick idr at freedesktop.org
Tue Sep 14 08:43:13 PDT 2010


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Luca Barbieri wrote:
>> Yes.  Returning 0.5 is wrong.  I don't think HLSL has noise, so there
>> shouldn't be a compatibility issue there.
> 
> Yes, in fact, nothing seems to use the NOISE opcodes at all.
> Also, I can't find evidence of any hardware ever having implemented it.
> AMD IL has Perlin noise opcodes, but it looks like they are lowered to
> normal instructions since the ISA docs don't say anything about it.
> 
> Is there any reason to not just remove them from both Mesa IR and TGSI
> and make EmitNoNoise implicit?

This is what I had originally done.  However, several people complained
that swrast and r300 regressed.  r300 lowers OPCODE_NOISE1 but ignores
the other noise opcodes.  The current implementation (using
ir_unop_noise and OPCODE_NOISE[1234]) was / is intended to be temporary.

The alternate plan was to have two different implementations of the
noise functions.  One would implement noise and the other would return
0.  The function would be chosen during linking depending on the state
of EmitNoFunctions.

Either way, the current situation will suit us for 7.9.

> And it seems both ATI (according to ShaderAnalyzer) and nVidia
> (according to the web) just return 0 at least on some hardware.

They return 0 on all hardware that lack function calls, it turns out. :)
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAkyPmA4ACgkQX1gOwKyEAw9JrwCfaoDJN9u8R0D2R0WLjIYrSnaY
stAAn1Ix7PYj6sq9immcbv9Dg/9tylFt
=VltU
-----END PGP SIGNATURE-----


More information about the mesa-dev mailing list