Commit graph

2893 commits

Author SHA1 Message Date
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
3f176bf08c trace: Fix transfer size computation. 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
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
ac96ee1c16 softpipe: make it possible to dump geometry shader from the softpipe 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
89d8577fb3 gallium: add geometry shader support to gallium 2009-12-25 05:52:16 -05: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
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
José Fonseca
b5a408bae5 llvmpipe: Install unit tests on build/xxx/bin 2009-12-23 16:38:50 +00:00
Tomas Carnecky
cc7a2d8e64 i965g: Rename {pf->util_format}_is_depth_or_stencil() 2009-12-23 16:58:53 +01:00
Tomas Carnecky
315ca95666 [i965] Rename {pf -> util}_format_is_depth_or_stencil()
The function was moved and renamed in 0bed834b.

Signed-off-by: Tomas Carnecky <tom@dbservice.com>
2009-12-23 15:40:20 +00:00
Roland Scheidegger
d186079520 i965g: fix for edgeflag changes (untested) 2009-12-22 21:26:51 +01:00
Roland Scheidegger
35e8283c69 Merge branch 'gallium-edgeflags'
Conflicts:
	src/mesa/state_tracker/st_draw.c
2009-12-22 20:54:26 +01:00
Keith Whitwell
f069e45750 i965g: fix bo_reference 2009-12-22 09:57:16 +00:00
Keith Whitwell
96d63ebbf5 i965g: update for u_format changes 2009-12-22 09:52:26 +00:00
Keith Whitwell
aa02683e45 Merge branch 'i965g-restart'
Conflicts:
	configure.ac
2009-12-22 09:40:39 +00:00
Christoph Bumiller
ebbc73d1ae nv50: correct the negation of DDY sources
The state tracker now does the correct thing, so
interpret negation normally.
2009-12-22 10:14:45 +01:00
Keith Whitwell
0fc4dd3819 i965g: fixes to build after merge of master 2009-12-21 19:50:05 +00:00
Keith Whitwell
f72de22439 i965g: remove half-finished change to tgsi_parse 2009-12-21 19:22:45 +00:00
Keith Whitwell
a5585cb533 Merge commit 'origin/master' into i965g-restart
Conflicts:
	SConstruct
	configs/default
	configs/linux-dri
2009-12-21 19:18:41 +00:00
Roland Scheidegger
ba25137655 svga: fix typo 2009-12-21 18:20:01 +01:00
Keith Whitwell
061411b261 i965g: hook vertex state emit up to PIPE_NEW_VERTEX_BUFFER 2009-12-21 16:57:37 +00:00
Keith Whitwell
1ec7e058f5 i965g: keep refcounts to bound vertex buffers 2009-12-21 16:56:46 +00:00
Keith Whitwell
6c719d4c22 i965g: add DEBUG_WINSYS flag 2009-12-21 16:55:40 +00:00
Keith Whitwell
f217927a57 i965g: remove duplicate set_viewport_state, fixes samples/depth 2009-12-21 15:38:08 +00:00
Corbin Simpson
32d737397c r300g: Add a few more params. 2009-12-20 15:47:48 -08:00
Christoph Bumiller
b3ac75f7eb nv50: make address reg allocation a little less hacky
Before I tried to distinguish int +0 and -0, and regs
relative to $a1 would have been considered reserved
for TGSI.
This would probably never occur, let it be fixed even so.
2009-12-20 14:15:51 +01:00
Christoph Bumiller
2ed083dda9 nv50: use BREAKADDR and BREAK for loops
This is easier, we don't have to record all the BRK branches
to fill in the address at ENDLOOP - which wasn't done before
and thus made all but the last BRK branch jump to the start.

Also, we don't risk reactivting threads that already left
the loop if we join threads after a conditional with a BRK
(although it might be wiser to remove the join altogether
in such cases).
2009-12-20 14:15:51 +01:00
Christoph Bumiller
3c7f109d67 nv50: handle TGSI_OPCODE_RET,KILP 2009-12-20 14:15:51 +01:00
Marek Olšák
6ba83cd63f r300g: add texture compare modes 2009-12-19 23:54:53 -08:00
Corbin Simpson
759fd1f25f r300g: Fix provoking vertex for non-quads.
Read the comments. In short, we can't possibly pass piglit's
glean/clipFlat without some help from Gallium and an API/spec change.
2009-12-18 21:50:45 -08:00
Corbin Simpson
f13a904c34 r300g: Respect provoking vertex for trifans.
Fixes part of piglit's clipFlat test; next up is to get quads right.
2009-12-18 19:49:14 -08:00
Roland Scheidegger
429f0e3b37 gallium: fix up drivers for edgeflag changes
several drivers which chose to ignore edgeflags might require some more work,
while edgeflags never worked there they might now crash.
2009-12-19 00:18:43 +01:00
Corbin Simpson
bf611cef29 r300g: Eliminate a couple more asserts. 2009-12-18 14:07:12 -08:00
Corbin Simpson
62afcbb233 r300g: Nuke r300_vbo. 2009-12-18 14:07:12 -08:00
Michal Krol
b1ed72ebe2 Move the remaining format pf_get_* functions to u_format.h.
Previously they depended on format blocks, but after removing those
they started depending on format encoding.
2009-12-17 23:41:57 +01:00
Michal Krol
16c6dce013 Merge branch 'master' into pipe-format-simplify
Conflicts:
	src/gallium/auxiliary/draw/draw_pipe_aaline.c
	src/gallium/auxiliary/draw/draw_pipe_pstipple.c
	src/gallium/auxiliary/util/u_blit.c
	src/gallium/auxiliary/util/u_gen_mipmap.c
	src/gallium/auxiliary/util/u_surface.c
	src/gallium/auxiliary/vl/vl_mpeg12_mc_renderer.c
	src/gallium/drivers/cell/ppu/cell_texture.c
	src/gallium/drivers/llvmpipe/lp_texture.c
	src/gallium/drivers/r300/r300_emit.c
	src/gallium/drivers/r300/r300_texture.c
	src/gallium/drivers/softpipe/sp_texture.c
	src/gallium/drivers/softpipe/sp_tile_cache.c
	src/gallium/drivers/svga/svga_state_vs.c
	src/gallium/include/pipe/p_format.h
	src/gallium/state_trackers/dri/dri_drawable.c
	src/gallium/state_trackers/egl/egl_surface.c
	src/gallium/state_trackers/python/p_device.i
	src/gallium/state_trackers/python/st_softpipe_winsys.c
	src/gallium/state_trackers/vega/api_filters.c
	src/gallium/state_trackers/vega/image.c
	src/gallium/state_trackers/vega/mask.c
	src/gallium/state_trackers/vega/paint.c
	src/gallium/state_trackers/vega/renderer.c
	src/gallium/state_trackers/vega/vg_tracker.c
	src/gallium/state_trackers/xorg/xorg_crtc.c
	src/gallium/state_trackers/xorg/xorg_dri2.c
	src/gallium/state_trackers/xorg/xorg_exa.c
	src/gallium/state_trackers/xorg/xorg_renderer.c
	src/gallium/state_trackers/xorg/xorg_xv.c
	src/gallium/state_trackers/xorg/xvmc/surface.c
	src/gallium/winsys/drm/nouveau/drm/nouveau_drm_api.c
	src/gallium/winsys/drm/radeon/core/radeon_buffer.c
	src/gallium/winsys/egl_xlib/sw_winsys.c
	src/gallium/winsys/g3dvl/xlib/xsp_winsys.c
	src/gallium/winsys/gdi/gdi_llvmpipe_winsys.c
	src/gallium/winsys/gdi/gdi_softpipe_winsys.c
	src/gallium/winsys/xlib/xlib_cell.c
	src/gallium/winsys/xlib/xlib_llvmpipe.c
	src/gallium/winsys/xlib/xlib_softpipe.c
	src/mesa/state_tracker/st_cb_fbo.c
	src/mesa/state_tracker/st_cb_texture.c
	src/mesa/state_tracker/st_texture.c
2009-12-17 22:37:15 +01:00
Michal Krol
3af2ddbe94 s/desc->type/desc->channel[0].type/ 2009-12-17 21:25:47 +01:00
José Fonseca
2584c5bd25 llvmpipe: add LP_DEBUG env var
Cherry-picked from dec35d04ae.
2009-12-16 15:06:17 +00:00
Brian Paul
f1f49bd465 llvmpipe: fix broken TGSI_OPCODE_FRC codegen 2009-12-16 15:06:17 +00:00
Brian Paul
43d6c81ae2 llvmpipe: fix broken lp_build_abs() 2009-12-16 15:06:16 +00:00
Marek Olšák
2ddee2cfbc r300g: fix emission of which textures are enabled
It fixes most of the "Bad CS" issues in piglit/texCombine and piglit/fbo.
Some other issues of this kind will get fixed in the kernel soon (depth-only
rendering, S3TC, and RGTC).
2009-12-15 19:04:46 -08:00