mesa: Use floats for viewport bounds.
authorMatt Turner <mattst88@gmail.com>
Sun, 12 Jul 2015 05:46:19 +0000 (22:46 -0700)
committerMatt Turner <mattst88@gmail.com>
Wed, 29 Jul 2015 16:34:51 +0000 (09:34 -0700)
commitf8a647883a14694f1b758c12187b3f35b9d039a7
treecd11148549da4b67e6a9a3f1b941b3dfaa27295c
parentecc559218d0a544f8a5f878c500f125c2d588d82
mesa: Use floats for viewport bounds.

ARB_viewport_array specifies that DEPTH_RANGE consists of double-
precision parameters (corresponding commit d4dc35987), and a preparatory
commit (6340e609a) added _mesa_get_viewport_xform() which returned
double-precision scale[3] and translate[3] vectors, even though X, Y,
Width, and Height were still floats.

All users of _mesa_get_viewport_xform() immediately convert the double
scale and translation vectors into floats (which were floats originally,
but were converted to doubles in _mesa_get_viewport_xform(), sigh).

i965 at least cannot consume doubles (see SF_CLIP_VIEWPORT). If we want
to pass doubles to hardware, we should have a different function that
does that.

Acked-by: Mathias Froehlich <Mathias.Froehlich@web.de>
14 files changed:
src/mesa/drivers/dri/i915/i915_state.c
src/mesa/drivers/dri/i965/brw_sf_state.c
src/mesa/drivers/dri/i965/gen6_viewport_state.c
src/mesa/drivers/dri/i965/gen7_viewport_state.c
src/mesa/drivers/dri/i965/gen8_viewport_state.c
src/mesa/drivers/dri/r200/r200_state.c
src/mesa/drivers/dri/radeon/radeon_state.c
src/mesa/main/viewport.c
src/mesa/main/viewport.h
src/mesa/math/m_matrix.c
src/mesa/math/m_matrix.h
src/mesa/state_tracker/st_atom_viewport.c
src/mesa/tnl/t_context.c
src/mesa/tnl/t_rasterpos.c