Qicheng Christopher Li [Mon, 24 May 2010 12:41:17 +0000 (13:41 +0100)]
gallivm: Efficient implementation of sin/cos.
Based on Julien Pommier's SSE and SSE2 algorithms.
Signed-off-by: José Fonseca <jfonseca@vmware.com>
Eric Anholt [Sun, 23 May 2010 20:39:42 +0000 (13:39 -0700)]
i965: Add support for all 8 possible ARB_draw_buffers in Mesa.
We should be able to do 16, but are limited by Mesa's static buffer
allocations.
Eric Anholt [Sun, 23 May 2010 20:35:50 +0000 (13:35 -0700)]
i965: Fix bit allocation for number of color regions for ARB_draw_buffers.
If you used all 4 color targets we currently support, we would see 0
and end up just writing the first output. Give enough bits that we
can do the maximum of 16.
Fixes piglit fbo-drawbuffers-maxtargets.
Marek Olšák [Sun, 23 May 2010 17:00:56 +0000 (19:00 +0200)]
util/blitter: allow NULL clear color
Marek Olšák [Sun, 23 May 2010 16:34:04 +0000 (18:34 +0200)]
r300g: extend compile error message
Marek Olšák [Sat, 22 May 2010 11:46:30 +0000 (13:46 +0200)]
r300g: fix dummy vertex shader compilation
Marek Olšák [Sat, 22 May 2010 11:45:20 +0000 (13:45 +0200)]
r300g: fix warnings
José Fonseca [Sat, 22 May 2010 15:14:20 +0000 (16:14 +0100)]
llvmpipe: Fill in slice_stride.
Chia-I Wu [Sat, 22 May 2010 04:12:32 +0000 (22:12 -0600)]
progs: Remove remaining EGL demos.
They have been moved to git+ssh://git.freedesktop.org/git/mesa/demos.
Kristian Høgsberg [Fri, 21 May 2010 15:51:33 +0000 (11:51 -0400)]
glx: Invalidate drawable in glXBindTexImageEXT() if we don't get events
When we don't get invalidate events, we need to invalidate a drawable
before using it for tfp to make sure we have uptodate buffers.
Kristian Høgsberg [Fri, 21 May 2010 14:36:56 +0000 (10:36 -0400)]
glx: Split tfp functions out to context vtable
This introduces a new per-context vtable, which lets us clean up all the
#ifdef's a bit and move the DRI2 specific implementation into dri2_glx.c.
Jakob Borncrantz [Fri, 21 May 2010 22:25:45 +0000 (23:25 +0100)]
st_api: Give get_egl_image arguments directly to the function
Brian Paul [Fri, 21 May 2010 20:57:29 +0000 (14:57 -0600)]
mesa: fix warnings about missing initializers in get.c table
Brian Paul [Fri, 21 May 2010 20:57:06 +0000 (14:57 -0600)]
st/mesa: remove unused var
Brian Paul [Fri, 21 May 2010 20:51:36 +0000 (14:51 -0600)]
st/glx: fix incorrect parameter type
Jakob Bornecrantz [Fri, 21 May 2010 19:37:23 +0000 (20:37 +0100)]
gallium: Fix invalidate framebuffer with old libGL libraries
Jakob Bornecrantz [Fri, 21 May 2010 19:25:54 +0000 (20:25 +0100)]
st_api: Add get param function to st_manager
Jakob Bornecrantz [Fri, 21 May 2010 20:24:10 +0000 (21:24 +0100)]
nouveau: Fix build after msaa merge
Brian Paul [Fri, 21 May 2010 20:12:11 +0000 (14:12 -0600)]
mesa: disable building the removed demos with scons
Brian Paul [Fri, 21 May 2010 20:11:40 +0000 (14:11 -0600)]
mesa: disable building the removed demos
This is a quick fix.
Eric Anholt [Fri, 21 May 2010 19:17:24 +0000 (12:17 -0700)]
Fix test for MESA_LLVM.
Eric Anholt [Fri, 21 May 2010 16:32:38 +0000 (09:32 -0700)]
Remove demos that have moved to git+ssh://git.freedesktop.org/git/mesa/demos.
The remaining programs are ones I've had difficulty finding a build
environment for to make the build system or are unit tests that should
probably live next to their code instead. Hopefully people can bring
over the build for remaining pieces they care about.
Roland Scheidegger [Fri, 21 May 2010 18:52:01 +0000 (20:52 +0200)]
rbug: fix breakage due to interface changes
Roland Scheidegger [Fri, 21 May 2010 18:02:22 +0000 (20:02 +0200)]
Merge branch 'gallium-msaa'
Conflicts:
src/mesa/state_tracker/st_gen_mipmap.c
src/mesa/state_tracker/st_texture.c
Patrice Mandin [Fri, 21 May 2010 17:09:08 +0000 (19:09 +0200)]
nouveau/nvfx: Fill more PIPE_CAP_MAX_ values
Signed-off-by: Patrice Mandin <patmandin@gmail.com>
David Shao [Fri, 21 May 2010 15:15:01 +0000 (08:15 -0700)]
Add __DragonFly__ in querymatrix for fpclassify()
Signed-off-by: Brian Paul <brianp@vmware.com>
Brian Paul [Wed, 19 May 2010 17:23:26 +0000 (11:23 -0600)]
progs/tests: print more info in copypixrate.c
Brian Paul [Fri, 21 May 2010 15:51:42 +0000 (09:51 -0600)]
docs: update 7.8.2 relnotes with Cell driver fixes
Brian Paul [Fri, 21 May 2010 15:47:00 +0000 (09:47 -0600)]
cell: assorted compilation fixes
Brian Paul [Fri, 21 May 2010 15:28:07 +0000 (09:28 -0600)]
cell: fix breakage from earlier draw module changes
Keith Whitwell [Fri, 21 May 2010 15:05:16 +0000 (16:05 +0100)]
gallium: remnants of old ccw state
Keith Whitwell [Fri, 21 May 2010 14:41:06 +0000 (15:41 +0100)]
Merge branch 'gallium-front-ccw'
Keith Whitwell [Fri, 21 May 2010 14:38:48 +0000 (15:38 +0100)]
docs: update rasterizer for ccw changes
Also rearrange some of the fields into point/line/polygon categories.
Vinson Lee [Fri, 21 May 2010 04:03:03 +0000 (21:03 -0700)]
scons: Remove debug print statement.
Fixes Python IndexError exception with default SCons build.
Eric Anholt [Thu, 20 May 2010 21:44:43 +0000 (14:44 -0700)]
Make TLS EGL dri2 driver search path behavior match TLS GLX dri2 behavior.
Eric Anholt [Thu, 20 May 2010 20:55:21 +0000 (13:55 -0700)]
Fix a substitution in glesv1_cm.pc
Eric Anholt [Tue, 18 May 2010 22:27:10 +0000 (15:27 -0700)]
i965: remove disabled code for cycling through MRF registers in clipping.
The idea would be that you could have multiple send messages going on
if nothing depended on the previous message's results and you used a
different send message. The problem is that the later send requires
the VUE handle returned by the first send's allocate anyway.
Xavier Chantry [Thu, 20 May 2010 17:44:24 +0000 (19:44 +0200)]
nv50: fixed other void pointer arithmetic errors
Xavier Chantry [Thu, 20 May 2010 17:36:27 +0000 (19:36 +0200)]
nv50: fix too long shader uploads by splitting them
Christoph Bumiller [Thu, 20 May 2010 17:47:01 +0000 (19:47 +0200)]
nv50: fill in shader limits
Brian Paul [Thu, 20 May 2010 16:26:19 +0000 (10:26 -0600)]
scons: add comments and whitespace
Brian Paul [Thu, 20 May 2010 16:25:17 +0000 (10:25 -0600)]
scons: fix llvm detection
The test for env['platform'] caused an exception since 'env' is not
defined at that point. Instead, determine the target platform by
scanning sys.argv[].
Brian Paul [Wed, 19 May 2010 19:26:11 +0000 (13:26 -0600)]
gallivm: rename a var: s/val/array_size/
Brian Paul [Wed, 19 May 2010 19:25:39 +0000 (13:25 -0600)]
gallivm: fix spelling in comment
Brian Paul [Wed, 19 May 2010 18:46:20 +0000 (12:46 -0600)]
gallivm: handle pointer types in lp_dump_llvmtype()
Brian Paul [Wed, 19 May 2010 18:39:52 +0000 (12:39 -0600)]
llvmpipe: more tweaks to dump_fs_variant_key()
Brian Paul [Wed, 19 May 2010 18:28:16 +0000 (12:28 -0600)]
gallium: fix/update tex target dumping
Brian Paul [Wed, 19 May 2010 17:37:42 +0000 (11:37 -0600)]
llvmpipe: use util_dump_logicop()
Brian Paul [Wed, 19 May 2010 17:37:09 +0000 (11:37 -0600)]
gallium: added util_dump_logicop()
Brian Paul [Wed, 19 May 2010 17:28:29 +0000 (11:28 -0600)]
llvmpipe: put variant print/debug code into separate function
Kristian Høgsberg [Wed, 19 May 2010 01:50:44 +0000 (21:50 -0400)]
intel: Throttle after doing copyregion/swapbuffers round trip
Before we would throttle in the flush callback prior to round-tripping
to the server to do copyregion or swapbuffer. Now, instead just note
that we need to throttle and do it in intel_prepare_render(), which
will be called after receiving the response from the server but before
we start rendering the next frame. Even if the server also throttles
us in swapbuffer, this just makes the throttling a no-op when we hit
intel_prepare_render(). With that we can drop the
using_dri2_swapbuffers hack and just always throttle.
Vinson Lee [Thu, 20 May 2010 14:36:53 +0000 (07:36 -0700)]
graw-null: Remove unnecessary header.
Roland Scheidegger [Wed, 19 May 2010 16:33:28 +0000 (18:33 +0200)]
util: fix obvious util_blitter_copy bugs...
Brian Paul [Wed, 19 May 2010 15:30:25 +0000 (09:30 -0600)]
nv50: fix typo: s/_/./
Roland Scheidegger [Wed, 19 May 2010 15:20:26 +0000 (17:20 +0200)]
util: util_blitter_fill no longer needs to handle overlap
Roland Scheidegger [Wed, 19 May 2010 15:14:06 +0000 (17:14 +0200)]
i915g: remove unused flip parameter
Roland Scheidegger [Tue, 18 May 2010 19:42:09 +0000 (21:42 +0200)]
docs: update differences to d3d11
Roland Scheidegger [Tue, 18 May 2010 19:41:15 +0000 (21:41 +0200)]
util: fix some leftover util_surface_fill/copy calls
Roland Scheidegger [Tue, 18 May 2010 16:03:37 +0000 (18:03 +0200)]
st/mesa: fix wrong argument order
Roland Scheidegger [Tue, 18 May 2010 14:20:44 +0000 (16:20 +0200)]
gallium: implement set_sample_mask() in all drivers
prevents segfault when state trackers try to set default mask.
Other option would be to make this required only for drivers
supporting multisampling, but this seems more clean.
Only dummy implementations (for normal drivers) provided (no driver
supports multisampling yet neither).
Roland Scheidegger [Mon, 17 May 2010 19:34:30 +0000 (21:34 +0200)]
st/egl: adapt to interface changes
Roland Scheidegger [Mon, 17 May 2010 19:34:03 +0000 (21:34 +0200)]
st/dri: adapt to interface changes
Roland Scheidegger [Mon, 17 May 2010 19:33:53 +0000 (21:33 +0200)]
st/glx: adapt to interface changes
Roland Scheidegger [Mon, 17 May 2010 19:33:45 +0000 (21:33 +0200)]
st/wgl: adapt to interface changes
Roland Scheidegger [Mon, 17 May 2010 19:33:37 +0000 (21:33 +0200)]
st/vega: adapt to interface changes
Roland Scheidegger [Mon, 17 May 2010 19:33:27 +0000 (21:33 +0200)]
st/xorg: adapt to interface changes
Roland Scheidegger [Mon, 17 May 2010 19:32:41 +0000 (21:32 +0200)]
st/python: adapt to interface changes
compile tested only.
Should probably change the python surface_copy/fill functions
also into resource_copy/fill_region functions and adapt the code
using them.
Roland Scheidegger [Mon, 17 May 2010 19:30:01 +0000 (21:30 +0200)]
svga: adapt to interface changes
might need further cleanup. Using surfaces internally just to be able to use
the existing code might cause unnecessary copies afaict.
Roland Scheidegger [Mon, 17 May 2010 19:29:17 +0000 (21:29 +0200)]
r300g: adapt to interface changes
might need further cleanup. Using surfaces internally for the u_blitter code
seems nonoptimal.
Roland Scheidegger [Mon, 17 May 2010 19:28:14 +0000 (21:28 +0200)]
nouveau: adapt to interface changes
this probably needs further cleanup (just getting a surface for the resource
seems quite nonoptimal and potentially cause unnecessary copies I think)
Roland Scheidegger [Mon, 17 May 2010 19:25:27 +0000 (21:25 +0200)]
fo: adapt to interface changes
Roland Scheidegger [Mon, 17 May 2010 19:25:16 +0000 (21:25 +0200)]
identity: adapt to interface changes
Roland Scheidegger [Mon, 17 May 2010 19:25:07 +0000 (21:25 +0200)]
trace: adapt to interface changes
Roland Scheidegger [Mon, 17 May 2010 19:24:50 +0000 (21:24 +0200)]
i965g: adapt to interface changes
Roland Scheidegger [Mon, 17 May 2010 19:24:04 +0000 (21:24 +0200)]
i915g: adapt to interface changes
Roland Scheidegger [Mon, 17 May 2010 19:23:46 +0000 (21:23 +0200)]
softpipe: adapt to interface changes
Roland Scheidegger [Mon, 17 May 2010 19:23:31 +0000 (21:23 +0200)]
llvmpipe: adapt to interface changes
Roland Scheidegger [Mon, 17 May 2010 19:22:23 +0000 (21:22 +0200)]
cell: adapt to interface changes
not even compile tested but fairly trivial
Roland Scheidegger [Mon, 17 May 2010 19:19:03 +0000 (21:19 +0200)]
mesa/st: adapt to interface changes
adapt to blit changes, and also handle a bit more msaa state in theory
(incomplete, doesn't handle resolves in any way for now).
Roland Scheidegger [Mon, 17 May 2010 19:15:20 +0000 (21:15 +0200)]
gallium/util: adapt util code to interface changes
The util blit functions change their interface (apart from some rename) too
(in particular util_blit_pixels now also takes a pipe_resource as the src blit
argument instead of a surface, as it might just call resource_copy_region).
Maybe the blit util code might need a bit more cleanup, it still doesn't feel
very clean. In particular it seems that util_blit_pixels_tex should probably
disappear, and I think it would be great if the code called by drivers for
blitting (u_blitter.c, which isn't really touched by this change) could somehow
be merged with the u_blit code.
Roland Scheidegger [Mon, 17 May 2010 19:02:24 +0000 (21:02 +0200)]
gallium: clean up resource_copy_region function
Previously, surface_copy was said to allow overlapping blits, and it was
"optional". However, some state trackers actually assumed it is always present,
and quite some code (like in u_blit) assumed overlapping isn't allowed.
Hence, resource_copy_region (and in the same spirit, resource_fill_region) is
now mandatory, but overlapping blits are no longer allowed. A driver can plug
in the cpu fallback util_resource_copy_region if it does not want to provide its
own implementation, though this is not optimal.
Roland Scheidegger [Mon, 17 May 2010 18:52:08 +0000 (20:52 +0200)]
gallium: another interface change for multisampling
due to popular request, use nr_samples parameter in is_format_supported()
instead of new is_msaa_supported() query.
This makes it easily possible to query if a format with a given sample count
is also supported not only as render target, but for sampler views (note that
texture sampling from multisampled resources isn't supported yet).
It is not quite how dx10 format msaa queries work, but we might need to revisit
format queries completely in the future anyway.
Brian Paul [Mon, 17 May 2010 17:43:43 +0000 (11:43 -0600)]
llvmpipe: fix front/back tri culling mix-up
Keith Whitwell [Fri, 14 May 2010 22:47:05 +0000 (23:47 +0100)]
draw: fix front/back error in unfilled pipeline stage
Keith Whitwell [Fri, 14 May 2010 22:46:43 +0000 (23:46 +0100)]
draw: fix typo checking for unfilled polygons
Keith Whitwell [Fri, 14 May 2010 19:36:08 +0000 (20:36 +0100)]
softpipe: restore culling code
Keith Whitwell [Fri, 14 May 2010 18:20:25 +0000 (19:20 +0100)]
gallium: more work on ccw flag removal
The linux-debug target builds...
Keith Whitwell [Fri, 14 May 2010 12:04:42 +0000 (13:04 +0100)]
gallium: convert rasterizer state to use gl-style front/back concepts
Use front/back instead of cw/ccw throughout.
Also, use offset_point/line/fill instead of offset_cw/ccw.
Brings gallium representation of this state into line with its main
user, and also what turns out to be the most common hardware
representation.
This fixes a long-standing bias in the interface towards the
architecture of the software rasterizer.
Keith Whitwell [Sat, 8 May 2010 13:16:46 +0000 (14:16 +0100)]
util: fix copy_rect stride in default transfer_inline_write
Kristian Høgsberg [Fri, 7 May 2010 02:01:35 +0000 (22:01 -0400)]
egl: Implement EGL_NOK_swap_region
This extension adds a new function which provides an alternative to
eglSwapBuffers. eglSwapBuffersRegionNOK accepts two new parameters in
addition to those in eglSwapBuffers. The new parameters consist of a
pointer to a list of 4-integer blocks defining rectangles (x, y,
width, height) and an integer specifying the number of rectangles in
the list.
Marek Olšák [Thu, 13 May 2010 22:20:58 +0000 (00:20 +0200)]
r300g: fix for piglit/fp-indirections2
Brian Paul [Thu, 13 May 2010 19:41:49 +0000 (13:41 -0600)]
rtasm: fix void * / func * casting warnings
Brian Paul [Thu, 13 May 2010 19:35:17 +0000 (13:35 -0600)]
draw: silence casting warnings
Brian Paul [Thu, 13 May 2010 19:34:24 +0000 (13:34 -0600)]
gallivm: silence uninitialized var warning
Brian Paul [Thu, 13 May 2010 19:26:21 +0000 (13:26 -0600)]
llvmpipe: silence casting warnings
Brian Paul [Thu, 13 May 2010 19:25:29 +0000 (13:25 -0600)]
gallivm: silence casting warning
Brian Paul [Thu, 13 May 2010 19:24:21 +0000 (13:24 -0600)]
gallivm: silence uninitialized var warning
Brian Paul [Thu, 13 May 2010 19:21:37 +0000 (13:21 -0600)]
llvmpipe: silence uninitialized var warnings
Brian Paul [Thu, 13 May 2010 19:21:19 +0000 (13:21 -0600)]
llvmpipe: silence cast warnings in test programs
Brian Paul [Thu, 13 May 2010 16:24:10 +0000 (10:24 -0600)]
gallivm: added lp_dump_llvmtype() debug helper