i965/vs: Move compute_clip_distance() out of emit_urb_writes().
authorKenneth Graunke <kenneth@whitecape.org>
Fri, 26 Jun 2015 22:05:13 +0000 (15:05 -0700)
committerKenneth Graunke <kenneth@whitecape.org>
Mon, 29 Jun 2015 02:44:34 +0000 (19:44 -0700)
commit19a0ba130fd0d0f3b86181a8d05cf5391420360d
tree79c8500386cfb47307342cd4251492890e640b7a
parent17e8fca626c908dcbedabf57ce175113840e65c2
i965/vs: Move compute_clip_distance() out of emit_urb_writes().

Legacy user clipping (using gl_Position or gl_ClipVertex) is handled by
turning those into the modern gl_ClipDistance equivalents.

This is unnecessary in Core Profile: if user clipping is enabled, but
the shader doesn't write the corresponding gl_ClipDistance entry,
results are undefined.  Hence, it is also unnecessary for geometry
shaders.

This patch moves the call up to run_vs().  This is equivalent for VS,
but removes the need to pass clip distances into emit_urb_writes().

Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jason Ekstrand <jason.ekstrand@intel.com>
Reviewed-by: Chris Forbes <chrisf@ijw.co.nz>
src/mesa/drivers/dri/i965/brw_fs.cpp
src/mesa/drivers/dri/i965/brw_fs.h
src/mesa/drivers/dri/i965/brw_fs_visitor.cpp