Commit Graph

18043 Commits

Author SHA1 Message Date
Robert Ellison 858ced0515 CELL: fleshing out the blending fragment ops
- Added two new debug flags (to be used with the CELL_DEBUG environment
  variable).  The first, "CELL_DEBUG=fragops", activates SPE fragment
  ops debug messages.  The second, "CELL_DEBUG=fragopfallback", will
  eventually be used to disable the use of generated SPE code for
  fragment ops in favor of the default fallback reference routine.
  (During development, though, the parity of this flag is reversed:
  all users will get the reference code *unless* CELL_DEBUG=fragopfallback
  is set.  This will prevent hiccups in code generation from affecting
  the other developers.)

- Formalized debug message usage and macros in spu/spu_main.c.

- Added lots of new code to ppu/cell_gen_fragment.c to extend the
  number of supported source RGB factors from 4 to 15, and to
  complete the list of supported blend equations.

More coming, to complete the source and destination RGB and alpha
factors, and to complete the rest of the fragment operations...
2008-09-17 02:32:43 -06:00
Jonathan White a3a797ffa8 cell: Added RCP and RSQ instruction support. 2008-09-16 16:00:42 -06:00
Jonathan White fbbaad14a6 cell: Added DP3 and DP4 instructions 2008-09-16 13:57:29 -06:00
Michal Krol 2010cd7810 st: hash-warning not recognised on Windows. 2008-09-16 19:28:16 +02:00
Jonathan White dd75ca89eb cell: Optimized LERP with fma
Please enter the commit message for your changes.
2008-09-16 09:42:28 -06:00
Jonathan White 2c54a6ee79 cell: Fixed MIN/MAX algorithm 2008-09-16 09:36:47 -06:00
Brian Paul 32250eb959 cell: export CELL_DEBUG=asm to dump SPU assembly code 2008-09-15 19:40:02 -06:00
Jonathan White e67374b6b2 cell: Added LERP instruction 2008-09-15 15:46:04 -06:00
Brian Paul ae3373441d gallium: emit SPU instructions in assembler-compatible syntax 2008-09-15 15:10:02 -06:00
Jonathan White 81aa90e883 cell: Added support for SLT, SEQ and SNE instructions 2008-09-15 13:45:09 -06:00
Jonathan White 0a75773fed cell: Added support for ABS instruction 2008-09-15 12:27:10 -06:00
Jonathan White 5a4ab148a7 Added support for SUB and MAD instructions 2008-09-15 11:58:00 -06:00
Jonathan White 367774a62a Fixed emit_RRR 2008-09-15 11:57:59 -06:00
Jakob Bornecrantz 4c9cd725d5 i915simple: dri winsys does now compile and works
Glxgears hits an assert, but tri works
2008-09-15 17:55:09 +02:00
Michal Krol e852232ebf draw: Silence compiler warnings on Windows. 2008-09-14 19:04:53 +02:00
Brian Paul 777aca8fc9 cell: implement negation, absolute value and set-sign for src regs in code gen 2008-09-13 15:33:07 -06:00
Brian Paul 870afb8319 negate.txt - test negation of a src reg 2008-09-13 15:33:07 -06:00
Brian Paul 809e81c0b4 gallium: add another value check to util_fast_pow()
Fixes glitches seen in morph3d demo.
2008-09-13 15:21:58 -06:00
Brian Paul 8d768c5101 cell: remove old disassembly/dump code; use dumper code in SPE emitter. 2008-09-12 21:54:25 -06:00
Brian Paul 8b5013d232 gallium: added print/dump code to SPE code emitter 2008-09-12 21:52:47 -06:00
Brian Paul 6f3eee9213 cell: implement DDX/DDY codegen (untested) 2008-09-12 21:09:10 -06:00
Brian Paul 31a112cad4 gallium: added spe_splat_word() 2008-09-12 21:08:01 -06:00
Brian Paul 5f3ec82338 cell: implement TGSI immediates in SPE code generator 2008-09-12 17:10:20 -06:00
Brian Paul af2ca5dc38 cell: initial support for IF/ELSE/ENDIF in fragment shader codegen
Only one level of if/else/endif nesting is currently working.
2008-09-12 16:31:53 -06:00
Brian Paul 5ab221549d cell: evaluate multiple fragment inputs 2008-09-12 16:11:52 -06:00
Brian Paul d598a5d230 cell: disable invalid spe_release_func() calls, fixes crash on exit 2008-09-12 15:07:31 -06:00
Jonathan White 272810125b Makefile was previously checked in with merge diffs still present. I just selected HEAD and removed the old. 2008-09-12 13:25:40 -06:00
Brian Paul c9c2b1b016 mesa: bump gallium version string to 0.2 2008-09-12 12:05:10 -06:00
Brian Paul 9b9eba5a42 cell: more documentation updates 2008-09-12 12:04:49 -06:00
Brian Paul 38bacb6f32 cell: implement colormask on fallback path
Also, some var renaming and additional comments
2008-09-12 11:43:37 -06:00
Brian Paul 9defef29c5 gallium: avoid redundant tgsi_exec_machine_bind_shader() calls on draw exec path
tgsi_exec_machine_bind_shader() isn't cheap so avoiding unecessary calls
is a big win.
A similar change should be done for softpipe's fragment exec path but
extra care needs to be taken with the texture sampler state/params.
2008-09-12 11:42:33 -06:00
Brian Paul bd34b8a4fe gallium: use copy_token() function to avoid type punning/aliasing problems
This fixes parsing errors seen with optimized builds on PPC (which led to crashes).
The memcpy() is heavy-handed, but works.  A lighter uint assignment could
be used on x86...
2008-09-12 11:40:31 -06:00
Brian Paul 73193b7735 cell: fix twiddled tile display for XSHM. Fixed blank window problem. 2008-09-12 11:35:22 -06:00
Brian Paul 31d2e5b954 gallium: use new compare32() function to fix warnings about type punning and aliasing 2008-09-12 11:02:18 -06:00
Brian Paul 50f78fcc2e gallium: silence warning 2008-09-12 11:01:31 -06:00
Brian Paul a449465556 cell: fix non-debug build error 2008-09-12 09:43:11 -06:00
Brian Paul e8b199c6e3 cell: implement swizzling for src regs 2008-09-12 08:48:08 -06:00
Brian Paul 6c0fa79857 cell: setup fragment program inputs in SOA format
Also remove old code, etc.
2008-09-12 08:47:45 -06:00
Brian Paul c436f96b10 simple add with swizzle and mul with swizzle tests 2008-09-12 08:40:50 -06:00
Brian Paul 0c0e5b71c0 cell: updated docs/status 2008-09-12 08:26:47 -06:00
Brian Paul b71f4150c8 gallium: minor optimization to spe_load_int() 2008-09-12 08:22:15 -06:00
Brian Paul be5d8bd078 gallium: initial PPC/Altivec codegen 2008-09-12 08:21:43 -06:00
Brian Paul 2d28c2e356 cell: update branch info in docs 2008-09-12 07:57:28 -06:00
Brian Paul fa0aa1443b cell: disable calls to old gen code 2008-09-12 07:57:08 -06:00
Brian Paul 690f5af337 gallium: don't build winsys/ here 2008-09-12 07:56:43 -06:00
Jakob Bornecrantz 3df0647027 i915simple: A step closer to compiling 2008-09-12 15:09:44 +02:00
Keith Whitwell f7d7a212cd mesa: build gallium directories before core mesa 2008-09-12 12:24:21 +01:00
Keith Whitwell 4b458555ab mesa: regenerate shader files 2008-09-12 12:23:28 +01:00
Keith Whitwell 522139dd14 vp: add run script 2008-09-12 10:31:51 +01:00
Keith Whitwell 176c454765 Merge commit 'origin/gallium-0.1' into gallium-0.2
Conflicts:

	progs/fp/Makefile
2008-09-12 10:31:23 +01:00