summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/nvfx/nvfx_state_emit.c
AgeCommit message (Collapse)Author
2010-03-15nv30, nv40: non-trivially unify nv[34]0_draw.cLuca Barbieri
nv30_draw.c is a stub. This patch makes both nv30 and nv40 use the nv40 swtnl path. Note that this doesn't actually work on nv30 because the vertex program is encoded in the nv40-only layout. However, swtnl was unimplemented before on nv30, so this is not a regression. Furthermore, a patch to fix this is available near the end of the patchset.
2010-03-15nv30, nv40: non-trivially unify nv[34]0_fragprog.cLuca Barbieri
The files are mostly the same except: 1. On NV40, some TGSI instructions are emulated with several hardware ones 2. Some instructions such as DDX/DDY, and STR were missing from nv30 3. NV40 has more sophisticated register management nv30 now supports all instructions and uses the nv40 register management.
2010-03-15nv30, nv40: non-trivially unify nv[34]0_state_fb.cLuca Barbieri
The files are significantly different due to: 1. nv30 support 2 render targets, nv40 4 2. z-buffer pitch is set differently 3. nv30 has a limitation of colour_bits >= zeta_bits. This may not actually exist in the driver though 4. nv30 points color0 at depth in the depth-only case 5. nv30 sets NV34TCL_VIEWPORT_TX_ORIGIN to 0. This is probably unnecessary This patch attempts to unify the two files and preserve the existing behavior.
2010-03-15nv30, nv40: unify nv[34]0_state_viewport.cLuca Barbieri
The files are identical, except for an extra comment in nv30.
2010-03-15nv30, nv40: unify nv[34]0_state_stipple.cLuca Barbieri
The files are identical, except for the fact that the nv40 version forgets to unreference the stateobj. Unified to the correct nv30 version.
2010-03-15nv30, nv40: unify identical nv[34]0_state_zsa.cLuca Barbieri
2010-03-15nv30, nv40: unify identical nv[34]0_state_scissor.cLuca Barbieri
2010-03-15nv30, nv40: unify identical nv[34]0_state_rasterizer.cLuca Barbieri
2010-03-15nv30, nv40: unify identical nv[34]0_state_blend.cLuca Barbieri
2010-03-15nv30, nv40: non-trivially unify nv[34]0_state_emit.cLuca Barbieri
The files are the same except for swtnl support on nv40 and for texture cache flushing on nv40. Unify them, and use a macro to define 4 versions of render_states, for all combinations of nvfx and hwtnl/swtnl.