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
Marek Olšák
ded4ecde60
r300g: clean up the invariant state
2009-12-15 19:04:46 -08:00
Marek Olšák
acce4824ec
r300g: clamp vertex indices to [min,max] everywhere
2009-12-15 19:04:46 -08:00
Marek Olšák
a6d701d1c6
r300g: if no colorbuffers are set, disable blending and set the color mask to 0
...
This seems to be the only way to disable the first colorbuffer.
2009-12-15 19:04:46 -08:00
Marek Olšák
cf85bf9cd0
r300g: set the number of colorbuffers in RB3D_CCTL
2009-12-15 19:04:46 -08:00
Marek Olšák
de0befc4b2
r300g: remove unnecessary flush in set_sampler_textures
2009-12-15 19:04:45 -08:00
Marek Olšák
c5e0b0bc37
r300g: add Z24X8 to the list of unsupported sampler formats on R3xx-R4xx
2009-12-15 19:04:45 -08:00
Marek Olšák
38a97148bf
r300g: add acceleration of the clear, surface_copy, and surface_fill functions
2009-12-15 19:04:45 -08:00
José Fonseca
3a15c48ece
llvmpipe: Fix yet another copynpaste typo in lp_build_log2_approx.
...
Now fslight looks perfect.
2009-12-15 14:46:43 +00:00
José Fonseca
85c27c3ef7
llvmpipe: Fix lp_build_polynomial comment.
2009-12-15 14:15:52 +00:00
José Fonseca
72c9878069
llvmpipe: Fix typo in lp_build_log constant.
2009-12-15 13:58:53 +00:00
José Fonseca
846e38f1c3
llvmpipe: Fix bad SI -> FP conversion into lp_build_log2_approx.
...
It should be a bitcast as the integer value is actually an encoded FP
already.
2009-12-15 13:15:16 +00:00
Maarten Maathuis
41b52aa336
nouveau: avoid running out of relocs
...
- Added flush notify functions for NV30 and NV40.
- Flushing mid frame will call flush notify, which will resubmit all
relocs.
- We don't try to recover from reloc failure yet.
2009-12-14 19:31:54 +01:00
Christoph Bumiller
2677f199a5
nv50: be more cautious about using reg_instance
...
Trying to free part of nv50_pc->reg_instances[] for an
nv50_reg representing an indirect constant resulted in
a segmentation fault.
2009-12-14 18:39:13 +01:00
Roland Scheidegger
a0127b6ced
gallium: more work for edgeflags changes
...
fixes, cleanups, etc.
not working yet
2009-12-14 18:36:33 +01:00