Keith Whitwell
871d39ec8c
softpipe: calculate determinant for all triangles, don't rely on draw module to do it
2008-04-14 16:18:00 +01:00
Keith Whitwell
8cbda9f108
draw: remove dead code
2008-04-14 16:15:39 +01:00
Keith Whitwell
36bacf97a6
draw: always malloc verts for fetch_shade_pipeline
2008-04-14 12:46:57 +01:00
Keith Whitwell
a82e4996a1
draw: flush pipeline before trying to allocate more hw vertices
2008-04-14 12:37:19 +01:00
Keith Whitwell
e106b2d3d6
draw: move vertex header init out of fetch_shade_pipeline.c
2008-04-14 12:27:25 +01:00
Keith Whitwell
caf293343f
draw: hide passthrough shading paths behind an environment variable
2008-04-14 12:08:46 +01:00
Keith Whitwell
8e7326832a
softpipe: do our own culling, don't rely on the draw module.
...
May not always happen due to passthrough modes, etc.
2008-04-14 11:32:50 +01:00
Zack Rusin
0c1cb54923
Implement fetch/shade/pipeline or emit vertex passthrough.
2008-04-14 11:05:37 +01:00
Zack Rusin
3f7a3dd58c
Make shaders operate on a block of memory instead of arrays of vertex_header's
2008-04-14 11:00:35 +01:00
Zack Rusin
808f968f3a
return true if one of the vertices has been clipped
2008-04-14 11:00:35 +01:00
Zack Rusin
aadbb1d7fb
pass arbitrary number of vertices to the shader execution cycle
2008-04-14 11:00:35 +01:00
Zack Rusin
4f550ab821
introduce a define to maxout the processed vertices
2008-04-14 11:00:26 +01:00
José Fonseca
84994693f5
gallium: Add u_time.c
2008-04-13 18:52:54 +09:00
José Fonseca
fb2b5f7a4a
gallium: Buffer cache.
2008-04-13 15:10:18 +09:00
José Fonseca
21c302b0ec
gallium: Initial port of Thomas slab suballocator to pipebuffer.
...
Not tested yet -- just compiles.
This includes only the slab algorithm. Fencing is already
implemented in pb_bufmgr_fence and time-based caching will be commited in a
separate module shortly.
2008-04-13 15:10:17 +09:00
José Fonseca
cd59312406
gallium: OS independent time-manipulation functions.
2008-04-13 15:10:17 +09:00
Michal Krol
45cc4f546e
tgsi: Fix source register short dump code.
2008-04-12 23:00:35 +02:00
Brian
2ebc99fcbc
gallium: move duplicated compute_clipmask() code to draw_vs.h
2008-04-12 11:03:56 -06:00
Brian Paul
593cf5a6b5
gallium: merge the tgsi_emit_sse2() and tgsi_emit_sse2_fs() functions.
...
The two functions were mostly the same. We can look at the shader header
info to determine if it's a vertex or fragment shader.
2008-04-11 15:27:00 -06:00
Brian Paul
7c2416f06e
gallium: handle TGSI immediates in SSE code for vertex shaders
2008-04-11 15:02:21 -06:00
Brian Paul
e3cf0cd6a9
gallium: implement immediates (aka literals) for SSE fragment shaders
2008-04-11 14:19:32 -06:00
Brian Paul
097301395d
gallium: comments
2008-04-11 14:19:31 -06:00
Brian Paul
9e8a85ef67
gallium: fix SCS codegen (sin scalar src comes from X, not Y)
2008-04-11 14:19:31 -06:00
Keith Whitwell
4d184cc331
gallium: fix broken x86_call()
2008-04-11 14:19:31 -06:00
Michal Krol
f41cc50ef0
tgsi: Dump processor type and version as a single token.
2008-04-11 11:50:09 +02:00
Michal Krol
2483062f10
tgsi: Dump semantics before interpolator.
2008-04-11 11:50:08 +02:00
José Fonseca
03a3373bdf
gallium: Thread condition variables.
2008-04-11 12:18:06 +09:00
Brian Paul
87b0b8e7bc
gallium: flags param to surface_alloc_storage() is unused and deprecated
2008-04-10 18:33:53 -06:00
José Fonseca
bc56e87ce1
gallium: Attribute realloc leaks to the first malloc call.
2008-04-11 09:32:26 +09:00
Keith Whitwell
c95dcc4962
remove usage of vertex_header
2008-04-10 14:35:47 -04:00
Brian Paul
a52faa9325
gallium: remove unneeded st->haveFramebufferSurfaces field.
2008-04-09 16:09:46 -06:00
Brian Paul
f7e475280a
gallium: fix bug in PIPE_BLENDFACTOR_INV_DST_ALPHA case
2008-04-09 14:20:43 -06:00
Brian
da8934034b
gallium: re-order, clean-up PIPE_MAX_* definitions
2008-04-08 21:43:36 -06:00
Brian
be37e8350f
gallium: remove obsolete/unused PIPE_ATTRIB_MAX
2008-04-08 21:38:44 -06:00
Brian
7e57a9e8bb
cell: keep track of num_vertex_attribs/buffers for shorter loops
2008-04-08 21:20:10 -06:00
Brian
1f888abf16
i915: keep track of num_vertex_attribs/buffers for shorter loops
2008-04-08 21:20:10 -06:00
Brian
28cf8c8fdc
gallium: keep track of num_vertex_attribs/buffers for shorter loops
2008-04-08 21:20:10 -06:00
José Fonseca
4382b0c9cb
gallium: Fix overzealous assert.
2008-04-08 20:42:24 +09:00
Brian
17f6409903
gallium: get rid of bufloop quad stage
2008-04-07 22:00:41 -06:00
Brian
c7daa68ca3
gallium: begin reworking quad stages for multiple color outputs
2008-04-07 21:59:12 -06:00
José Fonseca
4e2127b0e5
gallium: Allow to debug memory leaks in nested scopes.
2008-04-08 12:04:03 +09:00
Keith Whitwell
a8a5376406
draw: strip edgeflags out of fetch-emit path
2008-04-07 12:28:31 +01:00
Keith Whitwell
5c19e47362
draw: fix edgeflag handling on the pt paths
...
Encode edgeflags (and reset_stipple info) into the top two bits of the
fetch elements. This info could be moved elsewhere, but for now we
can live with a 1<<30 maximum element size...
Also use the primitive decomposition code from draw_prim.c verbatim, as
it includes all this stuff and is known to work.
2008-04-06 14:31:41 +01:00
Michal Krol
a8ca549553
draw: Use debug_printf().
2008-04-05 10:22:47 +02:00
José Fonseca
fdff063343
gallium: Keep fenced buffers list ordered.
...
This allows to keep the list small without the overhead of full walks.
2008-04-05 13:45:41 +09:00
José Fonseca
f1efef809c
gallium: Fix typo.
2008-04-05 13:45:40 +09:00
José Fonseca
c1d26d3dcc
gallium: Use the custom snprintf implementation everywhere (for Win32).
...
Because winddk's implemenation does not handle floats.
2008-04-05 13:45:40 +09:00
Brian Paul
5ffc5cce15
gallium: new debug code, disabled
2008-04-04 12:24:01 -06:00
Keith Whitwell
84501e68f6
gallium: Handle client-supplied edgeflags.
...
Also, implement support in the draw module. We were hardwiring these
to one for quite a long time...
Currently using a draw_set_edgeflags() function, may be better to push
the argument into the draw_arrays() function. TBD.
2008-04-04 17:05:27 +01:00
Keith Whitwell
0b20d1b9b5
draw: move code to run pipeline from pt to new file
...
Add facility for draw_vbuf.c to reset these vertex ids on flushes.
Pre-initialize vertex ids correctly.
2008-04-04 13:19:26 +01:00