Commit graph

201327 commits

Author SHA1 Message Date
Ben Skeggs
9de335f580 nouveau: object header update 2008-01-08 02:28:43 +11:00
Xiang, Haihao
3369cd9a6f i915: Keith Whitwell's swizzling TEX patch. fix #8283 2008-01-07 14:08:36 +08:00
Brian
601a6b872c Replace gl_framebuffer's _ColorDrawBufferMask with _ColorDrawBufferIndexes
Each array element is now a BUFFER_x token rather than a BUFFER_BIT_x bitmask.
The number of active color buffers is specified by _NumColorDrawBuffers.
This builds on the previous DrawBuffer changes and will help with drivers
implementing GL_ARB_draw_buffers.
2008-01-06 18:07:26 -07:00
Brian
ff73c783cc Simplify ctx->_NumColorDrawBuffers, _ColorDrawBuffers and fix bug 13835.
These fields are no longer indexed by shader output.  Now, we just have
a simple array of renderbuffer pointers.

If the shader writes to gl_FragData[i], send those colors to the N
_ColorDrawBuffers.  Otherwise, replicate the single gl_FragColor (or
the fixed-function color) to the N _ColorDrawBuffers.

A few more changes and simplifications can follow from this...
2008-01-06 10:43:20 -07:00
Ben Skeggs
a50f224f41 nv40: use a more "normal" 2x8bit format, the other is likely a HILO format. 2008-01-07 04:36:22 +11:00
Ben Skeggs
9bac4c7268 nouveau: share pushbuf interface code between pipe drivers 2008-01-07 01:02:30 +11:00
Ben Skeggs
37e9587178 nv40: do nothing for set_clip_state()
There's no way possible for us to support clip planes with the current
interfaces anyway.
2008-01-06 22:14:22 +11:00
Ben Skeggs
df34b6b2bc nv40: bind textures based on fragprog usage. 2008-01-06 21:52:24 +11:00
Brian
9f6022d056 fix depth/1 typo in glTexImage3D proxy code 2008-01-05 15:45:55 -07:00
Brian
48aa35a8b2 check if span length > 0 before calling _swrast_write_rgba_span() 2008-01-05 15:45:55 -07:00
Michel Dänzer
1c5f27a18b gallium: Make texture target an enum for better debuggability.
Also make enum pipe_format used in a couple more places.
2008-01-04 18:21:45 +01:00
Zack Rusin
6f01290431 llvm: if llvm is enabled don't even try to use sse for vs 2008-01-04 10:01:32 -05:00
Zack Rusin
9789c301b4 llvm: we need custom rules so had to redo the build a little bit
also don't use sse when llvm is enabled
2008-01-04 09:27:42 -05:00
Zack Rusin
3385f3d250 llvm: update llvm sources the latest svn 2008-01-04 08:32:20 -05:00
Xiang, Haihao
e7044d552c i915: don't validate PS program when falling back to software
rendering. fix #12786
2008-01-04 17:11:39 +08:00
Xiang, Haihao
15356376bd intel: some initialization for dri_bufmgr_ttm 2008-01-04 14:22:23 +08:00
Keith Whitwell
b1e67c5d84 965: fix various refcount issues 2008-01-04 01:20:41 +00:00
Keith Whitwell
f54012650e 965: use correct offset for constants vs immediates 2008-01-04 01:20:41 +00:00
Keith Whitwell
65426b144e 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.
2008-01-04 01:20:41 +00:00
Keith Whitwell
25c9728644 965: scan fs inputs to work out interpolation in setup program 2008-01-04 01:20:41 +00:00
Eric Anholt
62842e7145 [intel] Add a single-entry relocation buffer cache.
By avoiding the repeated relocation buffer creation/map/unmap/destroy for each
new batch buffer, this improves OpenArena framerates by 30%.  Caching batch
buffers themselves doesn't appear to be a significant performance win over
this change.
2008-01-03 16:53:23 -08:00
Eric Anholt
8abffada70 [intel] Convert relocations to not be cleared out on buffer submit.
We have two consumers of relocations.  One is static state buffers, which
want the same relocation every time.  The other is the batchbuffer, which gets
thrown out immediately after submit.  This lets us reduce repeated computation
for static state buffers, and clean up the code by moving relocations nearer
to where the state buffer is computed.
2008-01-03 15:46:16 -08:00
Eric Anholt
0ff3eb637b [965] Fix some missing initialization in WM keys. 2008-01-03 14:49:33 -08:00
Brian
4e62fbbfc5 clean-ups, silence warnings 2008-01-03 15:09:30 -07:00
Brian
2b40838972 rename vars, clean-up formatting 2008-01-03 15:05:51 -07:00
Brian
aa7f233367 replace void * with struct draw_vertex_shader opaque type 2008-01-03 15:03:52 -07:00
Brian
1613c49c98 Cell: added -Wmissing-prototypes to SPU_CFLAGS 2008-01-03 09:57:12 -07:00
Brian
5e00ae3fea Cell: initial work for getting/putting Z tiles 2008-01-03 09:56:48 -07:00
Brian
3ffef8de82 disable bbox code until glitches are fixed 2008-01-03 09:40:32 -07:00
Brian
4ff6367295 Cell: improve surface state code to replace some temporary code. 2008-01-03 09:40:02 -07:00
Brian
9b598df95e asst changes in bbox code, dma tags, etc 2008-01-03 08:58:51 -07:00
Brian
bb55835fc0 insert a temporary flush to fix missing triangles artifact 2008-01-03 08:58:01 -07:00
Brian
5cd96f7684 pass surface format in cell_command_framebuffer struct 2008-01-03 07:49:59 -07:00
Brian
7aee3eff18 better debug code 2008-01-03 07:49:13 -07:00
Zou Nan hai
15653b5d88 fix fd.o bug #13761
MRD computation is now changed in mesa core
2008-01-03 16:05:27 +08:00
Brian
f6b7e2d3bf make use of prim bounds box info 2008-01-02 19:31:36 -07:00
Brian
54090bd841 only fetch as much vertex data as needed 2008-01-02 19:05:34 -07:00
Brian
d55c4ec9d2 remove previous triangle test code 2008-01-02 18:58:44 -07:00
Brian
de9f8e8b71 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.
2008-01-02 18:53:33 -07:00
Eric Anholt
9e9f6f105c [965] Convert WM unit to use a cache key instead of brw_cache_data. 2008-01-02 15:51:49 -08:00
Eric Anholt
03b59edbb5 [965] Convert VS unit to use a cache key instead of brw_cache_data. 2008-01-02 15:51:48 -08:00
Eric Anholt
77e6cf8c17 [965] Convert SF unit to use a cache key instead of brw_cache_data. 2008-01-02 15:51:47 -08:00
Eric Anholt
3149119cad [965] Convert GS unit to use a cache key instead of brw_cache_data. 2008-01-02 15:51:46 -08:00
Eric Anholt
114b802e87 [965] Convert clip unit to use a cache key instead of brw_cache_data. 2008-01-02 15:51:46 -08:00
Eric Anholt
b35811e1b3 [965] Convert CC unit to use a cache key instead of brw_cache_data. 2008-01-02 15:51:45 -08:00
Eric Anholt
a95b48d55b [965] Convert surface state to use a cache key instead of brw_cache_data. 2008-01-02 15:51:44 -08:00
Eric Anholt
3e3644c6e8 [965] Convert sampler state to use a cache key instead of brw_cache_data. 2008-01-02 15:51:43 -08:00
Eric Anholt
a099461fa3 Revert "[intel] Use the memory type mask containing the caching flags."
This reverts commit 8bb9ae3693.

Validating our kernel buffers with the caching off in flags but on in mask
means that the kernel migrates the buffer to be uncached, which is undesired.
2008-01-02 15:51:27 -08:00
Eric Anholt
8bb9ae3693 [intel] Use the memory type mask containing the caching flags. 2008-01-02 09:47:07 -08:00
Keith Packard
a3c435b342 Set correct flags mask when validating buffers.
The 'mask' value used in the validation operation specifies which of the
'flags' bits are being modified. Buffer validation wants to pass the memory
type and access mode (rwx) to the kernel so that the buffer will be placed
correctly, and so that the right kind of fence will be created (read vs
write). That means we actually want a constant mask for these operations,
and not something computed from the bits coming in. The constant we want is
DRM_BO_MASK_MEM | DRM_BO_FLAG_READ | DRM_BO_FLAG_WRITE | DRM_BO_FLAG_EXE.
2008-01-02 09:47:06 -08:00