mesa/src
Ian Romanick 065da16508 glsl: Convert lower_clip_distance_visitor to be an ir_rvalue_visitor
Right now the lower_clip_distance_visitor lowers variable indexing into
gl_ClipDistance into variable indexing into both the array
gl_ClipDistanceMESA and the vectors of that array.  For example,

    gl_ClipDistance[i] = f;

becomes

    gl_ClipDistanceMESA[i >> 2][i & 3] = f;

However, variable indexing into vectors using ir_dereference_array is
being removed.  Instead, ir_expression with ir_triop_vector_insert will
be used.  The above code will become

    gl_ClipDistanceMESA[i >> 2] =
        vector_insert(gl_ClipDistanceMESA[i >> 2], i & 3, f);

In order to do this, an ir_rvalue_visitor will need to be used.  This
commit is really just a refactor to get ready for that.

v4: Split the least amount of refactor from the rest of the code
changes.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Paul Berry <stereotype441@gmail.com>
2013-05-13 12:05:19 -07:00
..
egl egl/android: Fix error condition for EGL_ANDROID_image_native_buffer 2013-05-08 08:44:05 -07:00
gallium gallium: add PIPE_CAP_MAX_TEXTURE_BUFFER_SIZE for GL 2013-05-11 23:45:01 +02:00
gbm gbm: Remember to init format on gbm_dri_bo_create. 2013-02-07 20:00:52 -05:00
getopt
glsl glsl: Convert lower_clip_distance_visitor to be an ir_rvalue_visitor 2013-05-13 12:05:19 -07:00
glx mesa: Restore 78-column wrapping of license text in C-style comments. 2013-04-23 22:07:09 -07:00
gtest gtest: Build it only for 'make check'. 2013-01-13 12:38:44 +01:00
mapi mesa: simplify dispatch for glDraw* functions 2013-05-02 09:03:16 -06:00
mesa glsl: Add lowering pass for ir_triop_vector_insert 2013-05-13 12:05:19 -07:00
Makefile.am build: Remove GALLIUM_DIRS 2013-04-15 12:04:26 -07:00
SConscript Remove libGLU 2012-08-31 10:58:15 -07:00