Brian [Mon, 14 Jan 2008 23:39:26 +0000 (16:39 -0700)]
Cell: after sending a batch, wait for a DMA completion signal.
This fixes sporadic rendering glitches.
Using a mailbox msg for now, until spe_mfcio_tag_status_read() or similar
is found to work.
Brian [Mon, 14 Jan 2008 23:37:13 +0000 (16:37 -0700)]
clamp colors during float->int conversion
Brian [Mon, 14 Jan 2008 18:11:08 +0000 (11:11 -0700)]
Cell: update surface map code to match recent changes in pipe_surface struct
Michel Dänzer [Mon, 14 Jan 2008 15:17:01 +0000 (16:17 +0100)]
Remove pipe->get/put_tile_rgba.
pipe_get/put_tile_rgba() now use pipe->get/put_tile internally.
Also simplify the <format>_get/put_tile_rgba() helper functions and clean up
some inconsitencies in them.
Michel Dänzer [Thu, 10 Jan 2008 16:44:04 +0000 (17:44 +0100)]
Remove mapping fields from struct pipe_surface.
It's now the responsibility of surface users to keep track of their mappings.
Brian [Sat, 12 Jan 2008 23:58:50 +0000 (16:58 -0700)]
Cell: remove fb parameter to get/put_tile()
Brian [Sat, 12 Jan 2008 23:57:55 +0000 (16:57 -0700)]
Cell: disable cell_emit_state() for now
Brian [Sat, 12 Jan 2008 19:53:49 +0000 (12:53 -0700)]
Cell: collect vars in a spu_global struct
Brian [Sat, 12 Jan 2008 19:39:26 +0000 (12:39 -0700)]
Cell: first state object (depth/stencil/alpha) emitted to SPUs
Brian [Sat, 12 Jan 2008 18:41:23 +0000 (11:41 -0700)]
Cell: whitespace/cleanup
Brian [Sat, 12 Jan 2008 17:33:50 +0000 (10:33 -0700)]
Cell: prefix SPU files with spu_
Brian [Sat, 12 Jan 2008 17:33:24 +0000 (10:33 -0700)]
Cell: prefix SPU sources with spu_
Brian [Sat, 12 Jan 2008 17:06:27 +0000 (10:06 -0700)]
Cell: sketch out needed rasterizer state
Brian [Fri, 11 Jan 2008 23:32:20 +0000 (16:32 -0700)]
s/int/uint/ to silence warnings
Brian [Fri, 11 Jan 2008 23:31:58 +0000 (16:31 -0700)]
whitespace, comment changes
Brian [Fri, 11 Jan 2008 23:08:53 +0000 (16:08 -0700)]
Cell: basic batch buffer working
Brian [Fri, 11 Jan 2008 19:04:55 +0000 (12:04 -0700)]
Cell: initial work for a hw-like batch buffer system
Brian [Fri, 11 Jan 2008 18:35:03 +0000 (11:35 -0700)]
Cell: remove obsolete cell_prim_buffer struct and code
Brian [Fri, 11 Jan 2008 18:31:03 +0000 (11:31 -0700)]
Cell: debug code, comments
Brian [Fri, 11 Jan 2008 18:30:02 +0000 (11:30 -0700)]
vbuf_flush_vertices() instead of vbuf_flush_indices() in vbuf_end()
Brian [Fri, 11 Jan 2008 18:27:24 +0000 (11:27 -0700)]
Cell: reformattting
Brian [Fri, 11 Jan 2008 18:27:09 +0000 (11:27 -0700)]
s/int/uint/ to silence warning
Brian [Fri, 11 Jan 2008 17:10:45 +0000 (10:10 -0700)]
Fix malloc size buf, silence signed/unsigned comparision warning
Brian [Fri, 11 Jan 2008 15:14:42 +0000 (08:14 -0700)]
Cell: Remove the pre-vbuf rendering code
Brian [Fri, 11 Jan 2008 04:59:15 +0000 (21:59 -0700)]
Cell: wait_on_mask_all()
Brian [Fri, 11 Jan 2008 04:53:38 +0000 (21:53 -0700)]
Cell: remove unneeded #includes
Brian [Fri, 11 Jan 2008 04:50:55 +0000 (21:50 -0700)]
Cell: compute bounding box in cell_vbuf_draw()
Brian [Fri, 11 Jan 2008 04:50:31 +0000 (21:50 -0700)]
Cell: remove unused color field
Brian [Fri, 11 Jan 2008 04:37:55 +0000 (21:37 -0700)]
Cell: remove unused code
Brian [Fri, 11 Jan 2008 04:35:13 +0000 (21:35 -0700)]
Cell: make vertex_header and prim_header types private to tri.c
Brian [Fri, 11 Jan 2008 04:22:03 +0000 (21:22 -0700)]
Cell: avoid copying vertex data
Brian [Fri, 11 Jan 2008 00:30:51 +0000 (17:30 -0700)]
Cell: move tile-related code into new tile.[ch] files.
Brian [Fri, 11 Jan 2008 00:14:06 +0000 (17:14 -0700)]
Cell: use new ASSERT macro instead of standard assert
The later doesn't seem to work properly in SPU code.
Brian [Fri, 11 Jan 2008 00:03:21 +0000 (17:03 -0700)]
Cell: enable vbuf path by default
Brian [Fri, 11 Jan 2008 00:01:52 +0000 (17:01 -0700)]
Cell: checkpoint: draw_vbuf code in place and works, but not enabled by default yet.
Brian [Fri, 11 Jan 2008 00:01:11 +0000 (17:01 -0700)]
Additional parameters to vbuf_render->draw()
Pass complete information about vertex/index buffer location, size, etc.
Brian [Thu, 10 Jan 2008 22:14:58 +0000 (15:14 -0700)]
Cell: initial implementation of vbuf code.
The draw module's vbuf stage builds buffers of post-transformed vertices
and issues draw-elements calls to render them. We'll pass the vertex and
index buffers to the SPUs...
Brian [Thu, 10 Jan 2008 22:13:14 +0000 (15:13 -0700)]
Cell: call draw_compute_vertex_size()
Brian [Thu, 10 Jan 2008 16:22:22 +0000 (09:22 -0700)]
Cell: s/free/align_free/
Brian [Thu, 10 Jan 2008 16:13:10 +0000 (09:13 -0700)]
Cell: clean-up cell_spu_exit() code
Brian [Thu, 10 Jan 2008 15:32:27 +0000 (08:32 -0700)]
bump CELL_MAX_VERTS to 240
Brian [Thu, 10 Jan 2008 17:38:28 +0000 (10:38 -0700)]
comment about vertex data in emit_vertex()
Brian [Thu, 10 Jan 2008 17:22:01 +0000 (10:22 -0700)]
clean-up comments, code
Michel Dänzer [Thu, 10 Jan 2008 09:03:47 +0000 (10:03 +0100)]
softpipe: Simplify texture memory layout.
Michel Dänzer [Thu, 10 Jan 2008 09:03:17 +0000 (10:03 +0100)]
Add glapi/ path for inclusion of glapioffsets.h.
Not sure why this is only needed now...
Brian [Thu, 10 Jan 2008 00:49:43 +0000 (17:49 -0700)]
Cell: initial implementation of tile status optimizations
Tiles are marked as CLEAR, DEFINED or DIRTY to avoid making unnecessary
get_tile() and put_tile() calls.
Brian [Wed, 9 Jan 2008 23:12:25 +0000 (16:12 -0700)]
Cell: start using DMA tags in a more sensible way, move waits() later when possible.
Brian [Wed, 9 Jan 2008 21:44:19 +0000 (14:44 -0700)]
move cliprect bounds, do trivial rejection triangle clipping
Brian [Wed, 9 Jan 2008 21:14:24 +0000 (14:14 -0700)]
Cell: remove some debug printfs, predicate others with Debug boolean
Brian [Wed, 9 Jan 2008 21:10:59 +0000 (14:10 -0700)]
Cell: implemement basic Z testing
Also, improve some surface clearing code
Jerome Glisse [Thu, 10 Jan 2008 00:11:53 +0000 (01:11 +0100)]
softpipe: map only once in softpipe_map_surfaces
softpipe_map_surfaces get call several time but softpipe_unmap_surfaces
get call only once. So to make sure stuff are properly unmap when
softpipe_unmap_surfaces get call we map surfaces only one time in
softpipe_map_surfaces.
Michel Dänzer [Fri, 4 Jan 2008 16:06:55 +0000 (17:06 +0100)]
gallium: Make texture target an enum for better debuggability.
Also make enum pipe_format used in a couple more places.
Zack Rusin [Fri, 4 Jan 2008 15:01:32 +0000 (10:01 -0500)]
llvm: if llvm is enabled don't even try to use sse for vs
Zack Rusin [Fri, 4 Jan 2008 14:27:42 +0000 (09:27 -0500)]
llvm: we need custom rules so had to redo the build a little bit
also don't use sse when llvm is enabled
Zack Rusin [Fri, 4 Jan 2008 13:32:20 +0000 (08:32 -0500)]
llvm: update llvm sources the latest svn
Keith Whitwell [Thu, 3 Jan 2008 19:46:59 +0000 (19:46 +0000)]
965: fix various refcount issues
Keith Whitwell [Thu, 3 Jan 2008 19:46:16 +0000 (19:46 +0000)]
965: use correct offset for constants vs immediates
Keith Whitwell [Thu, 3 Jan 2008 17:21:22 +0000 (17:21 +0000)]
965: always perform SF parameter setup for position
Match behaviour of DRI driver. Fix fragment shader to find the other
parameters one slot further on. Will need more work to cope with FP's
that actually reference position.
Keith Whitwell [Thu, 3 Jan 2008 16:44:56 +0000 (16:44 +0000)]
965: scan fs inputs to work out interpolation in setup program
Brian [Thu, 3 Jan 2008 22:09:30 +0000 (15:09 -0700)]
clean-ups, silence warnings
Brian [Thu, 3 Jan 2008 22:05:51 +0000 (15:05 -0700)]
rename vars, clean-up formatting
Brian [Thu, 3 Jan 2008 22:03:52 +0000 (15:03 -0700)]
replace void * with struct draw_vertex_shader opaque type
Brian [Thu, 3 Jan 2008 16:57:12 +0000 (09:57 -0700)]
Cell: added -Wmissing-prototypes to SPU_CFLAGS
Brian [Thu, 3 Jan 2008 16:56:48 +0000 (09:56 -0700)]
Cell: initial work for getting/putting Z tiles
Brian [Thu, 3 Jan 2008 16:40:32 +0000 (09:40 -0700)]
disable bbox code until glitches are fixed
Brian [Thu, 3 Jan 2008 16:40:02 +0000 (09:40 -0700)]
Cell: improve surface state code to replace some temporary code.
Brian [Thu, 3 Jan 2008 15:58:51 +0000 (08:58 -0700)]
asst changes in bbox code, dma tags, etc
Brian [Thu, 3 Jan 2008 15:58:01 +0000 (08:58 -0700)]
insert a temporary flush to fix missing triangles artifact
Brian [Thu, 3 Jan 2008 14:49:59 +0000 (07:49 -0700)]
pass surface format in cell_command_framebuffer struct
Brian [Thu, 3 Jan 2008 14:49:13 +0000 (07:49 -0700)]
better debug code
Brian [Thu, 3 Jan 2008 02:31:36 +0000 (19:31 -0700)]
make use of prim bounds box info
Brian [Thu, 3 Jan 2008 02:05:34 +0000 (19:05 -0700)]
only fetch as much vertex data as needed
Brian [Thu, 3 Jan 2008 01:58:44 +0000 (18:58 -0700)]
remove previous triangle test code
Brian [Thu, 3 Jan 2008 01:53:33 +0000 (18:53 -0700)]
Cell: basic triangle rendering works.
The cell "render_stage" (last in the "draw" pipeline) emits vertices into
a buffer which is pulled by the SPUs in response to a "RENDER" command.
This is pretty much temporary/scaffold code for now.
Brian [Tue, 1 Jan 2008 22:21:14 +0000 (15:21 -0700)]
Plug in more infrastructure for actual rendering.
Track vertex/fragment shader state.
Plug in pipe->draw_arrays(), pipe->draw_elements().
Plug render stage (a stub) into end of 'draw' pipeline.
Specify a hard-coded vertex format for now.
Brian [Tue, 1 Jan 2008 21:01:14 +0000 (14:01 -0700)]
hack/fix pack_color() for correct ps3 format
Brian [Tue, 1 Jan 2008 22:17:30 +0000 (15:17 -0700)]
Clean-up, re-org some vertex/fragment shader state code.
Brian [Tue, 1 Jan 2008 22:09:16 +0000 (15:09 -0700)]
move SP_NEW_ #defines into sp_state.h
Brian [Fri, 28 Dec 2007 21:52:12 +0000 (14:52 -0700)]
fix vbo display list memleak upon context destruction
Brian [Fri, 28 Dec 2007 21:25:09 +0000 (14:25 -0700)]
unref buffer after drawing, fixes rastpos mem leak
Brian [Fri, 28 Dec 2007 21:18:18 +0000 (14:18 -0700)]
fix single-sided stencil test bug
Brian [Fri, 28 Dec 2007 02:18:12 +0000 (19:18 -0700)]
fix leak, fix refcount error
Brian [Fri, 28 Dec 2007 02:17:41 +0000 (19:17 -0700)]
fix a mem leak, document another existing leak
Brian [Wed, 26 Dec 2007 14:16:41 +0000 (07:16 -0700)]
unref const buffers during context destroy
Brian [Wed, 26 Dec 2007 14:16:12 +0000 (07:16 -0700)]
unref const buffers during context destroy
Brian [Wed, 26 Dec 2007 13:57:24 +0000 (06:57 -0700)]
free program caches
Brian [Wed, 26 Dec 2007 13:56:58 +0000 (06:56 -0700)]
fix mem leaks
Brian [Wed, 26 Dec 2007 13:56:42 +0000 (06:56 -0700)]
fix mem leak (free key)
Brian [Tue, 25 Dec 2007 00:40:02 +0000 (17:40 -0700)]
free surface caches in softpipe_destroy()
Brian [Tue, 25 Dec 2007 00:39:21 +0000 (17:39 -0700)]
fix a memleak
Brian [Tue, 25 Dec 2007 00:39:01 +0000 (17:39 -0700)]
free tgsi machine state
Brian [Tue, 25 Dec 2007 00:38:35 +0000 (17:38 -0700)]
free tgsi machine state
Brian [Tue, 25 Dec 2007 00:37:59 +0000 (17:37 -0700)]
added tgsi_exec_machine_free_data()
Brian [Tue, 25 Dec 2007 00:37:30 +0000 (17:37 -0700)]
free Default1D/2DArray objects
Zack Rusin [Mon, 24 Dec 2007 12:57:34 +0000 (07:57 -0500)]
i965: a little better way of handling immediates
Zack Rusin [Thu, 20 Dec 2007 17:54:23 +0000 (12:54 -0500)]
i965: very crude and hacky way of handling immediates
Keith Whitwell [Thu, 20 Dec 2007 13:47:46 +0000 (13:47 +0000)]
gallium: make state tracker explictly ask for rendercache flushes
Keith Whitwell [Thu, 20 Dec 2007 13:47:11 +0000 (13:47 +0000)]
965: respect pipe flush flags
Now we emit way too many flushes instead of none at all.
Keith Whitwell [Thu, 20 Dec 2007 13:19:56 +0000 (13:19 +0000)]
gallium: translate ARB fp/vp immediates consistently to tgsi immediates
Zack Rusin [Thu, 20 Dec 2007 12:05:52 +0000 (07:05 -0500)]
965: fix the constant buffers