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
Kristian Høgsberg [Sun, 2 May 2010 18:19:54 +0000 (14:19 -0400)]
mesa: Include mfeatures.h before testing feature macros
Kristian Høgsberg [Sun, 2 May 2010 18:09:52 +0000 (14:09 -0400)]
mesa: Only compile ES files when ES1 or ES2 are selected
This still requieres manual generation of the es1 and es2 glapis and is
disabled by default.
José Fonseca [Sun, 2 May 2010 15:10:40 +0000 (16:10 +0100)]
mesa: #ifdef out more remap_table related code when disabled.
Seems to get everything building again here.
José Fonseca [Sun, 2 May 2010 12:04:08 +0000 (13:04 +0100)]
retrace: Add sampler_view_destroy
José Fonseca [Sun, 2 May 2010 12:03:37 +0000 (13:03 +0100)]
trace: Fix typo in method name.
Kristian Høgsberg [Sun, 2 May 2010 14:17:07 +0000 (10:17 -0400)]
Merge branch 'gles2-2'
Conflicts:
src/mesa/drivers/dri/common/dri_util.h
Kristian Høgsberg [Sun, 2 May 2010 14:14:53 +0000 (10:14 -0400)]
Hook in install rules for es1 and es2
Kristian Høgsberg [Sun, 2 May 2010 13:51:13 +0000 (09:51 -0400)]
Add glesv2.pc and glesv1_cm.pc pkg-config files for ES 1 and 2
Kristian Høgsberg [Sun, 2 May 2010 13:27:51 +0000 (09:27 -0400)]
st/mesa: Create context for API_OPENGL as first priority
Marek Olšák [Sun, 2 May 2010 11:27:57 +0000 (13:27 +0200)]
r300g: always set the pitch of the first miplevel in the tiling flags
This further reduces the number of DRM calls and flushes.
Marek Olšák [Sun, 2 May 2010 05:06:35 +0000 (07:06 +0200)]
Revert "r300g: disable point sprites (again)"
This reverts commit
3e0f1719d411b34f77fd2a053ecf83b43bb836ca.
Marek Olšák [Sun, 2 May 2010 04:24:55 +0000 (06:24 +0200)]
r300g: merge VS output mapping state (VAP) to rasterizer block state (RS)
These two should be tied together because what's set in VAP or stuffed in GA
should be rasterized in RS. Not doing so causes a hardlock.
The reason for the merge is that if stuffed texture coordinates (e.g. point
sprite texgen) happen to occupy the texcoord slot dedicated to fog or wpos,
the two must be relocated to other free slots, which needs remapping the vertex
shader outputs.
The rasterizer code is now literally a sequence read-rasterize-write.
Marek Olšák [Sun, 2 May 2010 02:21:21 +0000 (04:21 +0200)]
r300g: inline update_derived_shader_state
Marek Olšák [Sat, 1 May 2010 23:55:44 +0000 (01:55 +0200)]
r300g: fix segfault when resizing a DRI2 framebuffer
Resetting tiling flags might happen after a texture is destroyed...
Looking at the kernel sources, we don't actually need to reset the tiling
flags.
Marek Olšák [Sat, 1 May 2010 23:48:57 +0000 (01:48 +0200)]
r300g: cache tiling flags to reduce the number of DRM calls
Vinson Lee [Sun, 2 May 2010 08:03:59 +0000 (01:03 -0700)]
mesa: s/sprintf/_mesa_snprintf/
Vinson Lee [Sun, 2 May 2010 07:21:04 +0000 (00:21 -0700)]
i965g: s/sprintf/util_snprintf/