mesa/src
Brian Paul d276a40e15 gallium: add SQRT shader opcode
The glsl-to-tgsi translater will emit SQRT to implement GLSL's sqrt()
and distance() functions if the PIPE_SHADER_CAP_TGSI_SQRT_SUPPORTED
query says it's supported by the driver.

Otherwise, sqrt(x) is implemented with x*rsq(x).  The problem with
this is sqrt(0) must be handled specially because rsq(0) might be
Inf/NaN/undefined (and then 0*rsq(0) is Inf/Nan/undefined).  In the
glsl-to-tgsi code we use an extra CMP to check if x is zero and then
replace the result of x*rsq(x) with zero.

In the end, this makes sqrt() generate much more reasonable code for
drivers that can do square roots.

Note that many of piglit's generated shader tests use the GLSL
distance() function.
2013-02-04 09:33:44 -07:00
..
egl egl/dri2: Fix memory leak. 2013-02-01 22:50:34 -08:00
gallium gallium: add SQRT shader opcode 2013-02-04 09:33:44 -07:00
gbm Clean up .gitignore files 2013-01-10 22:01:31 +01:00
getopt
glsl glsl: Remove hash table from ir_set_program_inouts pass. 2013-02-03 13:38:16 -08:00
glx glx: Check that swap_buffers_reply is non-NULL before using it 2013-01-29 11:15:22 -08:00
gtest gtest: Build it only for 'make check'. 2013-01-13 12:38:44 +01:00
mapi glapi: Do not use backtrace on MinGW. 2013-01-31 23:23:12 -08:00
mesa st/mesa: simplify the update_single_texture() function 2013-02-04 08:28:17 -07:00
Makefile.am automake: Convert src/Makefile to automake. 2012-06-11 09:28:00 -07:00
SConscript Remove libGLU 2012-08-31 10:58:15 -07:00