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.
Roland Scheidegger [Tue, 4 May 2010 13:58:29 +0000 (15:58 +0200)]
Merge commit 'origin/master' into gallium-msaa
Kristian Høgsberg [Tue, 4 May 2010 13:22:24 +0000 (09:22 -0400)]
intel: Enable GL_EXT_framebuffer_object for gles2
José Fonseca [Tue, 4 May 2010 12:51:54 +0000 (13:51 +0100)]
gallivm: Proper implementation of TXL opcode.
José Fonseca [Tue, 4 May 2010 12:31:50 +0000 (13:31 +0100)]
gallivm: Fix several glitches introduced in the prev commit.
Kristian Høgsberg [Tue, 4 May 2010 11:23:21 +0000 (07:23 -0400)]
mesa: Forgot to add .pc.in files for gles
Some day I'll grow up and remember to add new files when I commit.
José Fonseca [Tue, 4 May 2010 09:06:46 +0000 (10:06 +0100)]
gallivm: Implement TXD.
Chia-I Wu [Tue, 4 May 2010 08:00:16 +0000 (16:00 +0800)]
gles: Add -I$(TOP)/include.
Kristian Høgsberg [Tue, 4 May 2010 01:18:04 +0000 (21:18 -0400)]
mesa: Only initialize TNL for OpenGL
Kristian Høgsberg [Tue, 4 May 2010 01:12:46 +0000 (21:12 -0400)]
mesa: Only initialize save dispatch table for OpenGL
Kristian Høgsberg [Mon, 3 May 2010 15:29:11 +0000 (11:29 -0400)]
progs/egl/opengles2: Add es2gears demo
Because every subdirectory under progs has to have a version of gears.
Brian Paul [Mon, 3 May 2010 23:35:40 +0000 (17:35 -0600)]
mesa: increase MAX_DRAW_BUFFERS to 8
Required for GL 3.x
Brian Paul [Mon, 3 May 2010 23:28:32 +0000 (17:28 -0600)]
gallium: move surface utility functions into u_surface.c
This is a better place than in u_rect.c
José Fonseca [Mon, 3 May 2010 19:41:01 +0000 (20:41 +0100)]
gallivm: Increase the TGSI translation limits and centralize them in a header.
José Fonseca [Mon, 3 May 2010 16:06:57 +0000 (17:06 +0100)]
gallicm: Newton-Raphson step to improve precision.
Disabled as it doesn't make VS/PSPrecision DCT happy, and it would
unnecessarily slow some cases where it is not needed.
Brian Paul [Mon, 3 May 2010 23:13:21 +0000 (17:13 -0600)]
cso: use framebuffer utility functions
Brian Paul [Mon, 3 May 2010 23:08:17 +0000 (17:08 -0600)]
gallium: move framebuffer utility functions into a new file
Brian Paul [Mon, 3 May 2010 22:13:57 +0000 (16:13 -0600)]
st/mesa: remove dead code
Brian Paul [Mon, 3 May 2010 22:13:20 +0000 (16:13 -0600)]
st/mesa: remove unused needFlush parameter to st_finalize_texture()
Brian Paul [Mon, 3 May 2010 22:03:19 +0000 (16:03 -0600)]
st/mesa: updated comments and fix some formatting in texture storage code
Brian Paul [Mon, 3 May 2010 21:51:00 +0000 (15:51 -0600)]
st/mesa: rename srcImageStride -> srcRowStride and fix-up formatting
Brian Paul [Mon, 3 May 2010 21:48:00 +0000 (15:48 -0600)]
st/mesa: consolidate and clean-up texture memory allocation code
Brian Paul [Mon, 3 May 2010 21:47:29 +0000 (15:47 -0600)]
st/mesa: updated comments for st_texture_image_map()
Brian Paul [Mon, 3 May 2010 21:39:40 +0000 (15:39 -0600)]
st/mesa: move some texture size calculation code
Brian Paul [Mon, 3 May 2010 21:35:21 +0000 (15:35 -0600)]
st/mesa: remove old convolution-related vars and min pitch code
Brian Paul [Mon, 3 May 2010 21:31:09 +0000 (15:31 -0600)]
st/mesa: remove unsupported convolution code
Brian Paul [Mon, 3 May 2010 21:29:02 +0000 (15:29 -0600)]
progs/demos: check for GL_ARB_imaging if convolutions is requested
Brian Paul [Mon, 3 May 2010 21:17:38 +0000 (15:17 -0600)]
st/mesa: updated comment
Brian Paul [Mon, 3 May 2010 19:58:51 +0000 (13:58 -0600)]
glsl: change variable declared assertion into conditional
The slang_variable::declared field originated as a debug field but
can be promoted for use during sematic error checking.
Fixes fd.o bug 27921.
NOTE: this is a candidate for back-porting to the 7.8 stable branch.
Brian Paul [Mon, 3 May 2010 19:16:11 +0000 (13:16 -0600)]
Revert "glapi: s/strcpy/strncpy/"
This reverts commit
9446fd8f69564e09ffd0f28735a99c510f84bb62.
It doesn't make sense to replace strcpy(a,b) with strncpy(a,b,strlen(b)).
The preceeding code effectively does bounds checking, btw.
Brian Paul [Fri, 30 Apr 2010 18:50:42 +0000 (12:50 -0600)]
st/mesa: remove dead code
Brian Paul [Mon, 3 May 2010 19:04:29 +0000 (13:04 -0600)]
st/mesa: restore original last_layer comparison
Commit
e648d4a1d1c0c5f70916e38366b863f0bec79a62 changed the original
less-than test to a not-equal test. This was an effort to save some
memory by switching the texture layout to a non-mipmapped layout when
we mis-guessed about the original layout (thus saving some memory).
However, this causes us to hit a new (apparently broken) code path
when copying the old texture's data to the new texture. Simply
undo this change for the time being until the other/new bug is fixed.
Fixes fd.o bug 27933.
Marek Olšák [Mon, 3 May 2010 18:14:17 +0000 (20:14 +0200)]
r300g: use util_format_short_name and util_format_is_plain
Marek Olšák [Mon, 3 May 2010 18:09:14 +0000 (20:09 +0200)]
util: add util_format_short_name
Marek Olšák [Mon, 3 May 2010 17:19:02 +0000 (19:19 +0200)]
util: add util_format_is_plain
Marek Olšák [Mon, 3 May 2010 17:14:31 +0000 (19:14 +0200)]
r300g: refuse to create a texture with size 0
Marek Olšák [Mon, 3 May 2010 17:05:03 +0000 (19:05 +0200)]
r300g: improve texture debug output, split into TEX and TEXALLOC flags
Török Edwin [Mon, 3 May 2010 14:43:03 +0000 (07:43 -0700)]
Reorder LLVM passes, running mem2reg earlier.
This gives a ~30% shader optimization time improvement on blender.
Tested by comparing the dumped LLVM modules.
Current ordering:
time ~/llvm-git/obj/Release-Asserts/bin/opt l.bc -constprop -instcombine
-mem2reg -gvn -simplifycfg
real 0m1.126s
user 0m1.108s
sys 0m0.012s
With this patch:
time ~/llvm-git/obj/Release-Asserts/bin/opt l.bc -mem2reg -constprop -instcombine -gvn -simplifycfg
real 0m0.885s
user 0m0.880s
sys 0m0.000s
The overall improvement in blender is ~15%.
Blender without the patch takes 1m13s:
edwin 5934 87.6 11.5 729440 458296 pts/5 SLl+ 17:35 1:13 blender
Blender with the patch takes 1m3s:
edwin 5726 94.2 11.2 716424 446168 pts/5 SLl+ 17:32 1:03 blender
It is still slow with the patch, but better (most of the optimization time is
taken up by GVN, see LLVM PR7023).
Signed-off-by: Török Edwin <edwintorok@gmail.com>
Signed-off-by: José Fonseca <jfonseca@vmware.com>
José Fonseca [Mon, 3 May 2010 15:23:44 +0000 (16:23 +0100)]
svga: Silent warning.
Kristian Høgsberg [Mon, 3 May 2010 12:32:56 +0000 (08:32 -0400)]
Generate es glapi files when es1 or es2 is enabled
José Fonseca [Mon, 3 May 2010 12:16:09 +0000 (13:16 +0100)]
gallivm: Display message instead of crashing when sampler generator was not supplied for tgsi translation.
Kristian Høgsberg [Mon, 3 May 2010 12:00:10 +0000 (08:00 -0400)]
driswrast: Fix more context creation breakage
Pointed out by Colin Harrison.
José Fonseca [Mon, 3 May 2010 11:18:55 +0000 (12:18 +0100)]
translate: Make translate_generic truly generic.
PIPE_FORMAT_R10G10B10X2_USCALED, half floats, were not supported, so
just rely on u_format for (almost) universal format support.
José Fonseca [Mon, 3 May 2010 11:15:32 +0000 (12:15 +0100)]
draw: Remove draw_pt_fetch_prepare call from llvm middle end.
Unneeded since we code generate the vertex fecthes.
José Fonseca [Mon, 3 May 2010 11:13:54 +0000 (12:13 +0100)]
tgsi: Parse and dump predicates.
José Fonseca [Mon, 3 May 2010 09:53:32 +0000 (10:53 +0100)]
gallium: Remove loop register file.
It was only used for D3D's REP/END/BGNFOR/ENDFOR. D3D's aL register is
just like another address register now.
José Fonseca [Mon, 3 May 2010 08:54:01 +0000 (09:54 +0100)]
gallivm: Replace predicate assertion failure with warning message.
José Fonseca [Mon, 3 May 2010 08:53:12 +0000 (09:53 +0100)]
draw: Disable rtasm compilation when using LLVM.
Saves time and trouble.
Dave Airlie [Mon, 3 May 2010 07:09:17 +0000 (17:09 +1000)]
nouveau: fix nouveau_create_context decleration
Dave Airlie [Sun, 2 May 2010 07:37:18 +0000 (17:37 +1000)]
softpipe: invalidate cache view when swizzles are different.
Current code only invalidated if the texture was different, however we
store swizzled values in the cache, so we need to invalidate in that case
also.
Signed-off-by: Dave Airlie <airlied@redhat.com>
Dave Airlie [Sun, 2 May 2010 09:35:34 +0000 (19:35 +1000)]
glx: fix regression with GLX_USE_GL
update for fbconfig_style_tags
Zack Rusin [Mon, 3 May 2010 01:40:30 +0000 (21:40 -0400)]
gallivm: fix nested break and continue statements
we were resetting the mask on each new break/continue statement within
the same scope. we always need to and the current execution mask
with the current break/continue mask to get the correct result (the
masks are always ~1 initially)
Jakob Bornecrantz [Sat, 1 May 2010 11:38:25 +0000 (12:38 +0100)]
identity: Move sampler view create and destroy to id_objects.c
Jakob Bornecrantz [Sat, 1 May 2010 11:02:26 +0000 (12:02 +0100)]
identity: s/texture/resource/
Jakob Bornecrantz [Sat, 1 May 2010 10:50:36 +0000 (11:50 +0100)]
identity: Whitespace & Style
Jakob Bornecrantz [Sun, 2 May 2010 23:25:12 +0000 (00:25 +0100)]
swrast: Correct include for mtypes.h
Luca Barbieri [Sun, 2 May 2010 23:12:50 +0000 (16:12 -0700)]
gallium/util: print \n after DXTn printf
Re-add commit
2d65a7caf97684aa654088c76a74b632fbd685fa
Signed-off-by: Xavier Chantry <chantry.xavier@gmail.com>
Signed-off-by: José Fonseca <jfonseca@vmware.com>
Xavier Chantry [Sun, 2 May 2010 22:57:25 +0000 (15:57 -0700)]
llvmpipe: add lp_test_* to .gitignore
Signed-off-by: Xavier Chantry <chantry.xavier@gmail.com>
Signed-off-by: José Fonseca <jfonseca@vmware.com>
José Fonseca [Sun, 2 May 2010 22:54:42 +0000 (23:54 +0100)]
svga: Remove the screen private context.
All affected operations have already been moved to context.
More cleanup work can be done, in particular with the buffer transfers.
José Fonseca [Sun, 2 May 2010 21:35:53 +0000 (22:35 +0100)]
svga: Remove empty file.
José Fonseca [Sun, 2 May 2010 21:33:43 +0000 (22:33 +0100)]
svga: Update flags documentation.
José Fonseca [Sun, 2 May 2010 20:37:24 +0000 (21:37 +0100)]
softpipe: Fix alpha blending for formats without alpha channel.
Don't use the dst alpha channel from the tile cache when it does not
exist in the true format.
José Fonseca [Sun, 2 May 2010 20:36:12 +0000 (21:36 +0100)]
llvmpipe: Fix alpha blending for formats without alpha channel.
Don't use the dst alpha channel from the swizzled tile when it does not
exist in the true format.
Xavier Chantry [Sun, 2 May 2010 21:25:43 +0000 (23:25 +0200)]
Update drisw state tracker to use new API aware context create
Even though swrast defines its own __DriverAPIRec it still shares the
driCreateNewContext() implementation from dri_util.c. So the CreateContext
prototypes have to match in the two __DriverAPIRecs.
Reviewed-by: Jakob Bornecrantz <jakob@vmware.com>
Signed-off-by: Xavier Chantry <chantry.xavier@gmail.com>
Vinson Lee [Sun, 2 May 2010 20:34:50 +0000 (13:34 -0700)]
svga: Include svga_surface.h in svga_screen.c.
Fixes svga_screen_init_surface_functions implicit declaration warning.
Vinson Lee [Sun, 2 May 2010 20:30:40 +0000 (13:30 -0700)]
r300g: Remove unnecessary header.
Xavier Chantry [Sun, 2 May 2010 20:27:25 +0000 (16:27 -0400)]
Update dri state tracker to use new API aware context create
Vinson Lee [Sun, 2 May 2010 20:21:42 +0000 (13:21 -0700)]
mesa: Include api_exec.h in dlist.c.
Fixes _mesa_alloc_dispatch_table implicit declaration warning.
Marek Olšák [Sun, 2 May 2010 15:31:06 +0000 (17:31 +0200)]
r300g: do not validate buffers in check_cs
It's already done in r300_emit_buffer_validate.
This also fixes Total Annihilation 3D on debug builds at least.
Marek Olšák [Sun, 2 May 2010 15:19:03 +0000 (17:19 +0200)]
r300g: fix surface_copy for compressed formats
No accelerated blitting for these, it's too messy.
Kristian Høgsberg [Sun, 2 May 2010 18:52:39 +0000 (14:52 -0400)]
configure.ac: Fix test for whether to build src/gles