Commit graph

10330 commits

Author SHA1 Message Date
Keith Whitwell
1e926fe42a llvmpipe: wake all threads waiting on a fence 2010-08-25 10:29:27 +01:00
Keith Whitwell
b6e03eafe3 llvmpipe: fence debugging, add llvmpipe_finish 2010-08-25 10:29:27 +01:00
Keith Whitwell
285ea417ef tgsi: helper for dumping tokens as hex 2010-08-25 10:29:26 +01:00
Keith Whitwell
6c0dc4bafb draw: specialized cliptesting routines 2010-08-25 10:29:21 +01:00
Keith Whitwell
4cef308726 util: add rectangle helpers to u_rect.h
This begins a process of repurposing this file.  The existing usage is
as a header file for some software blit fallbacks, which should be
moved to a more appropriately named header.
2010-08-25 10:07:36 +01:00
Keith Whitwell
bc3cff2a4f gallium/docs: notes on scissor state 2010-08-25 10:07:36 +01:00
Keith Whitwell
f77daaa882 llvmpipe: remove dead code 2010-08-25 10:07:36 +01:00
Chia-I Wu
d29d7807c1 draw: Remove UNDEFINED_VERTEX_ID checks in emit pathes.
UNDEFINED_VERTEX_ID is used by draw_pipe_vbuf to decide whether a vertex
has been emitted or not.  The non-pipeline pathes do not use it (they
tell the frontend the max vertex count when prepare() is called).
2010-08-25 16:23:01 +08:00
Chia-I Wu
22f6026324 gallium: Use draw_set_index_buffer and others.
Update all drivers to use draw_set_index_buffer,
draw_set_mapped_index_buffer, and draw_vbo.  Remove
draw_set_mapped_element_buffer and draw_set_mapped_element_buffer_range.
2010-08-25 16:06:45 +08:00
Chia-I Wu
94e8d4171d svga: Remove redundant svga_draw_range_elements.
That is, implement draw_vbo directly.  As a result,
svga_swtnl_draw_range_elements is also replaced by svga_swtnl_draw_vbo.

This commit should not have any functional change.
2010-08-25 16:06:38 +08:00
Chia-I Wu
4f024e0f64 draw: Add draw_set_index_buffer and others.
This commit adds draw_set_index_buffer, draw_set_mapped_index_buffer,
and draw_vbo.  The idea behind the new functions is that an index buffer
should be a state.

draw_arrays and draw_set_mapped_element_buffer are preserved, but the
latter will be removed soon.
2010-08-25 16:06:37 +08:00
Vinson Lee
4e82319733 nvfx: Clean up header file inclusion in nvfx_screen.h.
Remove nvfx_context.h.
Include p_compiler.h for INLINE symbol.

Fixes nvfx_context.h -> nvfx_screen.h -> nvfx_context.h include recursion.
2010-08-25 00:52:34 -07:00
Vinson Lee
fbc3a911e1 nvfx: Include missing headers in nvfx_shader.h.
Include stdint.h for uint8_t symbol.
Include p_compiler.h for INLINE symbol.
2010-08-25 00:44:28 -07:00
Vinson Lee
deffeba172 gallivm: Include missing header in lp_bld_sample.h.
Include p_format.h for enum pipe_format symbol.
2010-08-24 23:53:26 -07:00
Vinson Lee
72ae834fa1 gallivm: Include missing header in lp_bld_pack.h.
Include p_compiler.h for boolean symbol.
2010-08-24 23:50:45 -07:00
Marek Olšák
879a730231 r300g: fix gl_PointCoord
Is this hackish or is this the correct way to use point_quad_rasterization?
Copied from nvfx.
2010-08-25 04:57:11 +02:00
Marek Olšák
0a21938de9 r300g: eliminate unused constants in FS 2010-08-25 02:44:29 +02:00
Marek Olšák
abae06ac85 r300g: eliminate unused constants in VS 2010-08-25 02:44:29 +02:00
Marek Olšák
62eb9eda1d r300g: clean up some mess in set_constant_buffer 2010-08-25 02:44:29 +02:00
Marek Olšák
2eeaf773fd r300g: fix indentation 2010-08-25 02:44:28 +02:00
Marek Olšák
cb925970ee r300g: reset the index bias to 0 at the end of CS 2010-08-25 02:44:28 +02:00
Vinson Lee
57e66ed9b1 nvfx: Initialize variables on error path. 2010-08-24 17:40:50 -07:00
Dave Airlie
37f0654fa5 r300g: rename radeong_dri.so to r300_dri.so
acked on irc by Corbin + Marek.
2010-08-25 06:10:01 +10:00
Brian Paul
ad58f0d9e0 make: Use C++ compiler to link stdc++ library.
glxinfo and glxgears run on swrast and softpipe without undefined symbol
errors.
2010-08-24 12:18:09 -07:00
Henri Verbeet
547e867558 r600g: Add support for PIPE_FORMAT_R32_FLOAT. 2010-08-24 20:52:21 +02:00
Vinson Lee
b018ea19a3 nvfx: Remove unnecessary headers. 2010-08-23 23:58:57 -07:00
Vinson Lee
b48f20dab8 r300g: Remove unused variable.
Fixes this GCC warning.
r300_render.c: In function 'r300_draw_flush_vbuf':
r300_render.c:988: warning: unused variable 'r300_render'
2010-08-23 22:15:24 -07:00
Chia-I Wu
1288d5c392 st/egl: Fix r300/r600 support in KMS backend.
When the kernel driver name is radeon, ask the loader for r300 or r600
depending on the PCI ID.
2010-08-24 11:50:37 +08:00
Chia-I Wu
65741c596f targets/egl: Check against drm_driver_descriptor::name.
drm_driver_descriptor::driver_name is defined to be the name of the
kernel module.  We should check against drm_driver_descriptor::name
instead of drm_driver_descriptor::driver_name.
2010-08-24 11:50:36 +08:00
Benjamin Franzke
0ba1643658 targets/egl: add pipe_r600
KNOWN ISSUE: eglShowScreenSurfaceMESA in st/egl/kms fails
but st/egl/x11 works
2010-08-24 11:50:36 +08:00
Benjamin Franzke
ce7016e882 targets/egl: rename pipe_radeon to pipe_r300
st/egl/x11/x11_screen.c requests a driver named r300 not radeon

KNOWN ISSUE: breaks st/egl/kms/
	st/egl/kms requests a pipe named "radeon"
	that will not be found now

	so why not leaving pipe_radeon there?
	that was possible as long we have only r300g.
	now there is also r600g for which st/egl/kms also
	requests a pipe named "radeon"
	(possible solution in later commit)
2010-08-24 11:50:36 +08:00
Chia-I Wu
d473543069 st/dri: Remove unnecessary main/mtype.h. 2010-08-24 11:36:52 +08:00
Chia-I Wu
59e6e76542 st/wgl: Include main/core.h.
Make st/wgl include only main/core.h from core mesa.
2010-08-24 11:36:48 +08:00
Chia-I Wu
40fd4323b4 st/glx: Include main/core.h.
Make st/glx include only main/core.h from core mesa.
2010-08-24 11:28:12 +08:00
Luca Barbieri
6b6b454037 translate_sse: clear state for each function emission
Fixes #29771.
2010-08-24 04:18:11 +02:00
Dave Airlie
0e6a02d299 r600g: add XPD support
ported from r600c.
2010-08-24 09:56:22 +10:00
Dave Airlie
87f44d5723 r600g: add CMP support.
ported from r600c, fixes fp-cmp, glsl1-sqrt*
2010-08-24 09:18:32 +10:00
Luca Barbieri
c60c2d3a64 nvfx: don't emit dummy commands on nv30
Should fix errors on the original nv30, reported by pmdata.
2010-08-24 00:05:27 +02:00
Luca Barbieri
d1e6b31cb8 translate_sse: fix x86-64 2010-08-23 23:23:27 +02:00
Henri Verbeet
6fb39f0fa2 r600g: Add support for PIPE_CAP_DEPTH_CLAMP. 2010-08-23 22:13:18 +02:00
Luca Barbieri
c0eb479e07 auxiliary: fix nvfx/nv50 primitive splitting for line loops
s->close_first was on the wrong side of the inequality.

Caught by blender.
Thanks to AndrewR for reporting this.
2010-08-23 21:47:47 +02:00
Jerome Glisse
bcf7f66a93 r600g: export one component per pixel + r7xx uncompression shader
We need to always at least export one component (wether it's depth
or color. Add valid r7xx shader program for depth decompression.

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-08-23 15:42:32 -04:00
Luca Barbieri
4ab1001ac2 nvfx: improve fp temp accounting 2010-08-23 20:35:56 +02:00
Brian Paul
4b2b5f8e30 tgsi: fix false CondStackTop==0 assertion 2010-08-23 12:15:40 -06:00
Roland Scheidegger
c2f074d8a4 util: fix util_fill_rect to take util_color instead of u32 param
util_fill_rect could not handle formats with more than 32 bits,
since the fill color was a uint32_t value. Fix this by using
a util_color union instead, and also expand the union so it
works with formats which have up to 256 bits (the max of any
format currently defined).
2010-08-23 17:55:16 +02:00
Luca Barbieri
c907b94713 nvfx: emit bo relocations only when needed
Should improve performance, possibly significantly.
2010-08-23 17:12:31 +02:00
Luca Barbieri
2e215bc28f nvfx: match Gallium's gl_PointCoord brokenness
Gallium always puts gl_PointCoord in GENERIC[0] if
point_quad_rasterization is enabled.

This is silly, but for now it makes mesa-demos/glsl/pointcoord work.
2010-08-23 15:20:31 +02:00
Luca Barbieri
bfaa2577c6 nvfx: support clip planes sensibly and fix them on nv30
Before, we were discarding the compiled vertex program on each
vertex program change.

Now we compile the program as if there were 6 clip planes and
dynamically patch in an "end program" bit at the right place.

Also, nv30 should now work.
2010-08-23 15:09:22 +02:00
Dave Airlie
eb430b0e94 r300g: avoid stall in no-tcl drawing when mapping vbo
the current code reuses the same vbo over and over, however after a flush
we'd stall and wait for mapping on the vbo when we should just fire and forget.

On a gears test this brings me from ~620 to ~750 on my rv530 in swtcl mode.

Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-08-23 20:31:21 +10:00
Marek Olšák
7945e143e0 util: implement depth blitting in u_blit
Signed-off-by: Brian Paul <brianp@vmware.com>
2010-08-22 19:40:26 -06:00