Commit graph

201327 commits

Author SHA1 Message Date
Brian Paul
7e807510d8 Unify vertex/fragment program instuctions.
Based on patch by Ian (#4967) but also unify instruction opcodes.
2005-11-05 17:10:45 +00:00
Brian Paul
73347516be remove unneeded #includes 2005-11-05 17:08:50 +00:00
Brian Paul
41c8b71871 remove unneeded #include 2005-11-05 17:07:00 +00:00
Aapo Tahkola
47adbde5e5 Fix broken build. 2005-11-05 14:49:26 +00:00
Brian Paul
8894a55d5f added MESA_GLX_ALPHA_BITS env var 2005-11-05 03:12:06 +00:00
Brian Paul
fd4395b8d1 don't need MAKE_SWIZZLE() macro 2005-11-05 03:02:28 +00:00
Brian Paul
613e1ad5d5 Replace parameter_type enum in program.[ch], use register_file enums instead. 2005-11-05 02:15:21 +00:00
Brian Paul
4d0b7618cb minor improvements in _mesa_init_teximage_fields() 2005-11-05 02:12:44 +00:00
Brian Paul
95ebb5f485 use VERT_RESULT_HPOS, VERT_BIT_POS tokens 2005-11-04 16:52:41 +00:00
Brian Paul
2cb1cf484a better ffs() function (bug 4956) 2005-11-04 16:47:22 +00:00
Brian Paul
8ff68b2bf3 just pass ctx to do_ndc_cliptest() rather than stuffing it in the arb_vp_machine struct 2005-11-04 16:43:28 +00:00
Brian Paul
c12ee99d11 MESA_GLX_ALPHA_BITS env var to force visual with alpha channel 2005-11-04 16:41:06 +00:00
Brian Paul
f805cdfedf remove unneeded HIDDEN definition (bug 4956) 2005-11-04 00:58:17 +00:00
Brian Paul
84f3ff91d9 fix MinGW problems (bug 4956) 2005-11-04 00:52:08 +00:00
Adam Jackson
d78834b306 s/dri.sourceforge.net/dri.freedesktop.org/ 2005-11-03 20:49:07 +00:00
Brian Paul
72030e0d91 Streamline code generation by using a fixed size instruction buffer in
arb_program struct.
2005-11-03 03:30:34 +00:00
Brian Paul
ccfe3d4683 use WRITEMASK_* tokens 2005-11-03 02:35:15 +00:00
Brian Paul
7ae9713a60 s/15/VERT_RESULT_MAX/ 2005-11-03 02:28:47 +00:00
Brian Paul
1624162b0c added a const, clean-up 2005-11-03 02:26:47 +00:00
Brian Paul
45cd2f9305 fix typo, minor clean-ups 2005-11-03 02:25:10 +00:00
Brian Paul
bcf4ae7816 added osdemos/ dir to DEMO_FILES 2005-11-02 21:01:26 +00:00
Brian Paul
60031ace75 implement USE_MGL_NAMESPACE for x86-64 dispatch code (Mark Bolstad) 2005-11-02 20:59:37 +00:00
Brian Paul
90ebb581e6 Rename FRAG_OUTPUT_* tokens to FRAG_RESULT_* to match vertex program convention 2005-11-02 18:06:12 +00:00
Jouk Jansen
5a02209cd2 Committing in .
Updated OpenVMS compile support (define tnl for include files)
 Modified Files:
 	Mesa/src/mesa/drivers/common/descrip.mms
 ----------------------------------------------------------------------
2005-11-02 15:24:14 +00:00
Aapo Tahkola
eda460035e Use ctx->VertexProgram._Current . 2005-11-02 14:12:52 +00:00
Aapo Tahkola
26b1c97a9d Remove some ghost code and adjust things a bit. 2005-11-02 14:07:03 +00:00
Keith Whitwell
e4894177ba More useful ARL test 2005-11-02 12:58:38 +00:00
Eric Anholt
3a5626cb84 First step of Radeon DRI unification:
- Makes all three drivers use the same screen structure and setup code, with a
  few ifdefs for the separate compilation to deal with symbols not being
  available to all drivers and the fact that we have no mechanism for dealing
  with different config options for different chip families in the same driver.
  These issues should be dealt with later.
- Introduces IS_R[123]00_CLASS(radeonScreenPtr) macro for code for taking
  different paths depending on the general class of chipset.
- Adds many new R300-class PCI IDs, though not all those listed in
  radeon_driver.c.
2005-11-02 01:15:07 +00:00
Keith Whitwell
a9b927cb6e add an arl test 2005-11-01 20:29:59 +00:00
Aapo Tahkola
a546abc8da Fix broken tnl stage. 2005-11-01 18:12:58 +00:00
Keith Whitwell
f4fbda35b0 Add a NotifyInputChanges() callback so that drivers (particularly tnl
drivers) can track when the sizes or strides of incoming VB->AttribPtr
arrays have changed.
2005-11-01 17:29:46 +00:00
Keith Whitwell
c3626a91ce Several fp and vp tweaks:
- Renumber VERT_RESULT_* values so that they match the
	  numbers of the corresponding FRAG_ATTRIB_ values.

        - Add ctx->VertexProgram._Current and FragmentProgram._Current
	  values which point to either the current client-supplied
	  program if enabled, or otherwise to the current mesa-internal
	  program.  Thus this program is always the correct one for
	  the current state, providing that the mesa flags to turn on
	  automatic generation are enabled.

	- Add callbacks to ctx->Driver.BindProgram() in texenvprogram.c
	  and t_vp_build.c so that the driver knows when the generated
	  program changes.  This is cleaner than trying to code all the
	  possible _NEW_* flags into the driver, and more precise as well.

	- Add a UsesKill flag to identify fragment programs with that
	  instruction, as these can require special treatment.

	- Move the FRAG_OUTPUT values to mtypes.h, near to similar defn's.
2005-11-01 17:25:49 +00:00
Aapo Tahkola
6aa6d440d9 Re-enable fallbacks. 2005-11-01 16:59:13 +00:00
Aapo Tahkola
e7d6bb9dc4 -Fix first frame -bug
-Use 16-bit elts in vtxfmt_a path if possible
-Optimize VSF param uploading
-return in r300DepthMask looks suspicious, use r300Enable instead
-Dont use r300ResetHwState in invalidate state(disabled, missing hooks, possible instabilities)
2005-11-01 15:52:08 +00:00
Aapo Tahkola
3cf156df2b Fix segmentation fault in _tnl_ProgramCacheDestroy(). 2005-11-01 15:43:06 +00:00
Keith Whitwell
da70bc6baa Make colors match the fp tests (really) 2005-11-01 12:22:48 +00:00
Keith Whitwell
a605d9c3de Make colors match the fp tests 2005-11-01 12:20:13 +00:00
Keith Whitwell
d9f362a667 standalone tests for vp instructions 2005-11-01 06:28:39 +00:00
Brian Paul
0505103710 Re-org and clean-up of vertx/fragment program limits (instructions,
temporaries, parameters, etc).
glGetProgramivARB() now returns all the right things.
Updated i915 and r300 code to initialize program native limits and
current program's native instruction/temporary/etc counts.
2005-11-01 04:36:33 +00:00
Brian Paul
ffec105109 fix problems found with gcc 2.96 (bug 4934) 2005-10-31 21:52:56 +00:00
Brian Paul
dcf4c17fb1 check swrast->_FogEnabled instead of ctx->Fog.Enabled 2005-10-31 19:46:55 +00:00
Aapo Tahkola
821b3dd562 Need more than 200 instructions. 2005-10-31 14:37:33 +00:00
Aapo Tahkola
37f2eaa316 Improve tnl program searching performance. 2005-10-31 14:34:32 +00:00
Brian Paul
18e7c5c5fe Simplify parse_attrib_binding().
Now only use VERT_ATTRIB_* and FRAG_ATTRIB_* tokens instead of
hard-coded numbers.
Note: previous check-in did similarly for output register parsing.
2005-10-30 21:46:00 +00:00
Brian Paul
7aebaf3deb Lots of clean-up in arb program parser.
Use new _mesa_init_fp/vp_instruction() function to initialize instructions.
2005-10-30 21:23:23 +00:00
Brian Paul
094a1ddf24 need to use absolute value for RSQ 2005-10-30 16:52:02 +00:00
Brian Paul
5d04101d18 added some assertions to catch unexpected swizzle values in cvp_emit_arg(), currently fails sometimes 2005-10-29 18:29:54 +00:00
Brian Paul
32df89e12d Use MAKE_SWIZZLE4() macro in a few more places.
Clean up the parse_extended_swizzle_mask() and parse_swizzle_mask() functions.
2005-10-29 18:26:43 +00:00
Brian Paul
5b3cf5af74 reduced swizzle comment 2005-10-29 18:18:46 +00:00
Brian Paul
1a979736a6 Free old parameter list before assigning new one. FIxes memory leak. 2005-10-29 17:07:09 +00:00