Luca Barbieri
a55e50b082
NV30/NV40 CMP and SCS src == dst handling
...
CMP and SCS can produce incorrect results if the source and
destination are the same.
This patch should fix the issues.
CMP is fixed by predicating both moves.
SCS by changing the order if the source component is X.
2009-12-28 17:59:00 -05:00
José Fonseca
926562fe27
llvmpipe: Unmapping vertex/index buffers does NOT flush draw module anymore.
...
Not since 6094e79f4e .
Drivers now need to flush draw module explicitely (which explains why
all those previous commits adding draw_flushes calls were necessary).
This is a good thing, but it's tricky to get this right in face of user buffers
(it's not even clear who has the responsibility to flush when a user buffer
is seen -- statetracker or pipe driver), so just force flush (temporarily)
since it's not a bottleneck now.
2009-12-28 22:53:41 +00:00
José Fonseca
64893eb501
python/retrace: Dump only the specified image rectangles.
2009-12-28 22:53:40 +00:00
José Fonseca
67171ed85f
xlib: Integrate the trace driver with all pipe drivers.
...
And not just softpipe.
It is particularly convenient to use llvmpipe instead, since it is much
faster. It also allows to use rbug with all xlib drivers.
2009-12-28 22:53:40 +00:00
José Fonseca
7abdaf574a
scons: Fix xlib build.
...
After glsl rework merge.
2009-12-28 22:53:40 +00:00
Francisco Jerez
49a0f291ae
nv04: Fix build after the latest nouveau_class.h changes.
2009-12-28 18:11:06 +01:00
Marcin Kościelnicki
c84cc09d41
nv50: Dehexify and bring up to date with new method defines.
...
Signed-off-by: Francisco Jerez <currojerez@riseup.net>
2009-12-28 18:09:26 +01:00
Brian Paul
b46bcd8e7b
Merge branch 'mesa_7_7_branch'
2009-12-27 10:24:21 -07:00
Brian Paul
cb504a026c
cell: add glsl to SRC_DIRS
2009-12-27 10:24:12 -07:00
Brian Paul
7831515e69
st/mesa: add missing case for PIPE_FORMAT_B8G8R8A8_UNORM
2009-12-27 10:09:24 -07:00
Dave Airlie
bdbabcd1e4
r300g: fix use of uninitialised variables.
...
These buffers were getting dereferenced later.
2009-12-27 16:13:41 +10:00
Dave Airlie
9ee5b78e7f
r300g: rename modesetting_drv.so to radeong_drv.so
2009-12-27 16:13:16 +10:00
José Fonseca
4ccf0bb74e
softpipe: Flush draw module when fragment pipeline state changes.
2009-12-26 21:06:46 +00:00
José Fonseca
080703e398
llvmpipe: Treat state changes systematically.
...
That is:
- check for no op
- update/flush draw module
- update bound state and mark it as dirty
In particular flushing the draw module is important since it may contain
unflushed primitives which would otherwise be draw with wrong state.
2009-12-26 21:06:46 +00:00
Eric Anholt
c4ac1f8299
i965: Extra asserts on flow control instructions to clarify for clang.
2009-12-26 11:18:02 -08:00
Eric Anholt
c196a3592a
i965: Clean up double initialization of dst_flags from a rebase resolve.
...
Caught by clang.
2009-12-26 11:18:02 -08:00
Eric Anholt
070bbd4fcd
i965: Fix setup of immediate types for gen4 disasm.
...
Caught by clang.
2009-12-26 11:18:02 -08:00
José Fonseca
d01c7bef29
llvmpipe: Use comments and more code from softpipe's is_texture_referenced implementation.
2009-12-26 11:02:02 +00:00
José Fonseca
7a15642f41
softpipe: Flush draw module before switching framebuffer.
...
Otherwise geometry might end up in the wrong rendertarget.
2009-12-26 11:01:05 +00:00
José Fonseca
491a184943
llvmpipe: Flush draw module before switching framebuffer.
...
Otherwise geometry will end up in the wrong rendertarget.
2009-12-26 11:00:42 +00:00
José Fonseca
399190d136
tgsi: Don't dump parenthesis for negation.
...
It doesn't seem necessary, and more importantly, tgsi_parse doesn't know
how to read them.
2009-12-26 10:59:46 +00:00
José Fonseca
230a5b5f1c
python: Update python state tracker and samples for recent interface changes.
2009-12-26 01:14:59 +00:00
José Fonseca
3f176bf08c
trace: Fix transfer size computation.
2009-12-26 01:14:08 +00:00
José Fonseca
8b7552673f
scons: Put the configuration info in the build directory too.
...
It fixes cached configuration results from one platform being erroneously
used in other platforms.
2009-12-26 01:14:08 +00:00
José Fonseca
8353c87cce
svga: Allow to dump an individual command.
2009-12-26 01:14:08 +00:00
Dave Airlie
5676082d28
r300g: fixup for GS additions
...
draw_set_mapped_constant_buffer changed API
2009-12-26 07:28:21 +10:00
Zack Rusin
fb0a9aa5e0
gallium: remove TGSI_SEMANTIC_VERTICES
...
it's a leftover from an early version of geometry shading support.
geometry shaders now encode the primitive size in the PROPERTY token
and don't need special input with their size.
2009-12-25 05:52:20 -05:00
Zack Rusin
b0bc582db7
draw: disable some debugging output coming from the geometry shaders
2009-12-25 05:52:20 -05:00
Zack Rusin
519a6d308d
gallium: geometry shader can be always enabled and we don't need a cap for that
...
using the draw module allows us to enable geometry shading even on hardware
that doesn't support it.
2009-12-25 05:52:20 -05:00
Zack Rusin
a00da63e66
util: put vertices_per_primitive function in its proper location
2009-12-25 05:52:19 -05:00
Zack Rusin
49155c3264
draw/tgsi: fix geometry shader input/output swizzling
2009-12-25 05:52:19 -05:00
Zack Rusin
afd01366b0
tgsi: dump the indices correctly when dealing with 2d arrays
2009-12-25 05:52:19 -05:00
Zack Rusin
960be012a9
tgsi: fix property parsing/building
2009-12-25 05:52:19 -05:00
Zack Rusin
e9c6f01a52
python: fix python state tracker after some latest changes
2009-12-25 05:52:18 -05:00
Zack Rusin
ac96ee1c16
softpipe: make it possible to dump geometry shader from the softpipe
2009-12-25 05:52:18 -05:00
Zack Rusin
22370990f2
tgsi: add missing support for two dimensional arrays in various places
...
in particular asm text parsing and sanity checking were missing code
to handle multi-dimensional arrays/geometry shaders
2009-12-25 05:52:18 -05:00
Zack Rusin
8a39f5dfdd
python/gs: fix the example
2009-12-25 05:52:18 -05:00
Zack Rusin
f658fa5e8f
gallium: add an inline that returns number of vertices per primitive
2009-12-25 05:52:18 -05:00
Zack Rusin
42eefb8235
softpipe/gs: don't crash with null shader
2009-12-25 05:52:17 -05:00
Zack Rusin
b0575151b6
gs: fix drivers so they work with geometry shaders
2009-12-25 05:52:17 -05:00
Zack Rusin
5aac920e49
tgsi: make the tgsi assembly parser report line/column on error
2009-12-25 05:52:17 -05:00
Zack Rusin
89d8577fb3
gallium: add geometry shader support to gallium
2009-12-25 05:52:16 -05:00
Brian Paul
57cce7a409
mklib: put usage info into usage() function
2009-12-24 07:24:33 -07:00
Brian Paul
191d9651cd
mklib: expand .a into .o files on FreeBSD, put common code into subroutines
2009-12-24 07:24:33 -07:00
Keith Whitwell
5f6dcf65e7
i965g: get trivial/tri working again after edgeflag changes
2009-12-24 12:53:07 +00:00
Keith Whitwell
6c30e17f9e
i965g: strict aliasing changes
2009-12-24 12:53:06 +00:00
Keith Whitwell
e4069d07dd
gallium/util: quieten compiler
2009-12-24 12:53:06 +00:00
Keith Whitwell
9546c3dbd2
i965g: calculate depth min/max
...
Previously hard-wired to 0..1
2009-12-24 12:53:06 +00:00
Christoph Bumiller
b7b2226a75
nv50: support TGSI_OPCODE_CONT
2009-12-24 13:36:54 +01:00
Christoph Bumiller
d29f55546d
nv50: make edgeflags work
...
It doesn't seem to be possible to set the egdeflag in the
vertex shader, so we need to fallback to pushing vertices
through the FIFO and use method 0x15e4 if they are used.
This only works if VP does MOV OUT[X] IN[Y] where X is the
edgeflag output, and Y is saved so we can tell the correct
input later.
The VP still writes the useless values to wasted outputs
as punishment.
2009-12-24 12:48:00 +01:00