Commit graph

13619 commits

Author SHA1 Message Date
Ian Romanick
8fc2355949 Vectorize all micro ops
Fold single instruction micro ops inline.  Remove unused micro ops.
2008-02-05 09:44:33 -08:00
Michal Krol
45b18c51c0 gallium: Use align_free to free aligned memory. 2008-02-05 07:50:56 -07:00
Brian
5db1593c78 Cell: fix some alignment issues by aligning commands to 8-byte boundaries
Contributed by Ian Romanick.
Also, temporarily disable inlined vertex buffers.  They need to be 16-byte
aligned...
2008-02-04 18:05:37 -07:00
Brian
684d320ea2 Cell: don't use VEC_LITERAL macro, doesn't work w/ SDK 3.0 2008-02-04 18:03:05 -07:00
Brian
7cbe5cf212 Cell: don't use VEC_LITERAL macro, doesn't work w/ SDK 3.0 2008-02-04 18:02:21 -07:00
Brian
93d061b217 Cell: move float4 typedef (temporary datatype) 2008-02-04 16:48:36 -07:00
Brian
1a75464cdc Cell: fix small sampling error in sample_texture_bilinear() 2008-02-04 16:48:00 -07:00
Brian
efa8e03a6f Cell: texture sampler functions always return vector float now
Texture colors look the same now, regardless of X display/pixel format
2008-02-04 16:06:51 -07:00
Brian
5068b573c4 Cell: added spu_unpack_A8R8G8B8() 2008-02-04 16:05:13 -07:00
Brian
76c1a10eb1 Cell: fix typo 2008-02-04 16:04:50 -07:00
Brian
bc1ad6bcbd Cell: some basic blending code 2008-02-04 15:17:50 -07:00
Brian
168247d1ca Cell: replace float 4 with vector float in eval_coeff() 2008-02-04 15:10:35 -07:00
Brian
7a1d01f2a0 Cell: emit blend state to SPUs 2008-02-04 15:06:10 -07:00
Brian
8f924e4df0 Cell: choose bilinear vs. nearest filtering according to sampler state 2008-02-04 13:23:07 -07:00
Brian
ca1d2fc5f6 Cell: improved bilinear filtering
avoid calling get_tex_tile() if all texels are in same tile
2008-02-04 13:16:10 -07:00
Brian
0a45f75948 Cell: implement basic bilinear texture sampler 2008-02-04 12:50:42 -07:00
Brian
9a5074217f Cell: added spu_unpack_color(), spu_pack_R8G8B8A8() 2008-02-04 12:50:16 -07:00
Brian
703a869155 Cell: SIMD-ize more of texture sampling 2008-02-04 11:02:47 -07:00
Brian
18105195a8 Cell: checkpoint: start to SIMD-ize texture sampling 2008-02-04 09:54:21 -07:00
Brian
e967a5c746 Cell: move tile clear code to flush_spans() 2008-02-04 08:53:18 -07:00
Brian
6023311c7c Cell: clamp txmax, tymax in tile_bounding_box()
Also, added some debug printfs
2008-02-04 08:46:44 -07:00
Brian
69cc19751d Cell: insert some draw_flush() calls 2008-02-04 08:45:33 -07:00
Brian
aa761b1605 Cell: comment about emit_quad() mask 2008-02-01 16:54:46 -07:00
Brian
44d3269356 Cell: move some tile get/clear code
Also, we weren't marking the ztile as dirty after ztesting, fixes gears glitches.
2008-02-01 16:42:09 -07:00
Brian
8bd566a9cb Cell: use global color_shuffle to remove a switch stmnt 2008-02-01 16:25:42 -07:00
Brian
d7c2eb0df4 Cell: New color packing functions (A8R8G8B8 and B8G8R8A8) 2008-02-01 15:45:02 -07:00
Brian
42201d7574 Cell: rename/move global vars
Put tile-related globals into spu_global struct.
Rename c/ztile fields to be more consistant.
2008-02-01 15:33:53 -07:00
Brian
17305489f0 Cell: deprecate some use of struct cell_command - it should go away completely
Also, remove ALIGN16_ATTRIB from structs that no longer need it.
2008-02-01 15:24:00 -07:00
Brian
b1a472bfb7 Cell: remove commands from top-level while loop which should only appear in batch buffers 2008-02-01 15:20:07 -07:00
Brian
0e9a370ae2 Cell: move ztest before color interp/packing 2008-02-01 14:04:56 -07:00
Brian
c392cc8f1b Cell: rename fields of the tile_t union 2008-02-01 14:04:55 -07:00
Brian
59be082909 Cell: implement Z16 and Z32 testing with SIMD instructions. 2008-02-01 14:04:55 -07:00
Brian
b108bea6b4 Cell: store current tile status in cur_tile_status_c/z, add TILE_STATUS_GETTING 2008-02-01 14:04:55 -07:00
Ian Romanick
20df285b14 Fix using "ccache ppu-gcc" for CC and fix parallel builds
CC wasn't quoted in a couple places in src/mesa/Makefile.  Also, the
OSMesa link was missing a dependency.
2008-01-31 17:22:07 -08:00
Brian
635341ec5b fix typo 2008-01-31 17:05:43 -07:00
Brian
633e1133ae gallium: fix problem in which texcoords and varying vars got mapped to the same slot
This fixes the glsl/bump.c and glsl/texdemo1.c programs
2008-01-31 14:35:25 -07:00
Brian
86787043fa Fix problem in mapping vertex program outputs (found with "spring" game engine)
If the vertex program writes to an output that's not consumed by the
fragment program, map the vp output to an unused slot.
2008-01-31 14:05:04 -07:00
Brian
acb81374c1 gallium: comments about fragment Z computation 2008-01-31 13:41:14 -07:00
Brian
9536314a6c gallium: Fix z clear bug when TILE_CLEAR_OPTIMIZATION==0 2008-01-31 13:41:14 -07:00
Brian
c36cdc6156 gallium: fix get/put typo regression
This came from commit f3aa4de034 on 1/22/08.
Fixes strange Z buffer glitches seen in progs/glsl/texdemo1.c
2008-01-31 13:41:14 -07:00
Brian
cd53eb0db1 Cell: SIMD-ize const_coeff() 2008-01-31 08:21:38 -07:00
Brian
256486829f Cell: set GALLIUM_CELL_VS env var to enable SPU-based vertex transformation 2008-01-31 08:12:47 -07:00
Keith Whitwell
e82c9b867c tgsi: Use ESI instead of EBX as temp reg on non-win32 2008-01-31 11:57:49 +00:00
José Fonseca
50d5f304ad gallium: Portability fixes. 2008-01-31 18:25:05 +09:00
José Fonseca
f4192cb4ca gallium: Make the build output dir depend on the configuration.
The build output dirs mimics the old config names:

  build/linux
  build/linux-dri
  build/linux-dri-x86
  build/linux-dri-x86-debug
  ...
2008-01-31 14:22:21 +09:00
José Fonseca
c42e6254cf gallium: Add SCons as alternative build system for Gallium. 2008-01-31 14:22:21 +09:00
Ian Romanick
62d11b98c4 I don't know why using uint64_t for "base" doesn't work. Ugh. 2008-01-30 20:14:52 -08:00
Ian Romanick
5a6fd93930 Use SPUs for vertex shader processing 2008-01-30 20:14:52 -08:00
Ian Romanick
a89ee8a96d Add driver_private field for drivers that hook shader_queue_flush. 2008-01-30 20:14:52 -08:00
Ian Romanick
9ad986b887 Numerous small fixed to PPU-SPU vertex shader protocol 2008-01-30 20:14:52 -08:00