Chia-I Wu [Wed, 30 Sep 2009 04:32:22 +0000 (12:32 +0800)]
progs/egl: Make demo3 work again.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Wed, 30 Sep 2009 04:13:34 +0000 (12:13 +0800)]
progs/egl: Check EGL_MESA_screen_surface is supported in demo2.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Wed, 30 Sep 2009 04:28:01 +0000 (12:28 +0800)]
progs/egl: Fix a crash in demo1.
The variable "configs" in main() is used without initialization.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Wed, 30 Sep 2009 03:36:01 +0000 (11:36 +0800)]
st/egl: Fix a double free in drm_destroy_context.
st_destroy_context has destroyed the pipe context for us.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Wed, 30 Sep 2009 03:32:36 +0000 (11:32 +0800)]
st/egl: Fix a crash when unbinding current context.
This fixes a NULL-pointer dereference when
eglMakeCurrent(dpy, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT)
is called.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Wed, 30 Sep 2009 03:13:16 +0000 (11:13 +0800)]
progs/egl: Replace EGL_i915 by EGL_DEFAULT_DISPLAY.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Brian Paul [Tue, 29 Sep 2009 16:22:32 +0000 (10:22 -0600)]
mesa: added nopfrag/nopvert options for MESA_GLSL
These options can be used to force vertex/fragment shaders to be no-op
shaders (actually, simple pass-through shaders). For debug/test purposes.
Brian Paul [Mon, 28 Sep 2009 21:26:12 +0000 (15:26 -0600)]
mesa: added _mesa_nop_vertex/fragment_program()
For debug/test purposes.
José Fonseca [Tue, 29 Sep 2009 16:26:20 +0000 (17:26 +0100)]
llvmpipe: Workaround for bug in llvm 2.5.
The combination of fptosi
and sitofp (necessary for trunc/floor/ceil/round implementation)
somehow becomes invalid code.
Skip the instruction combining pass when SSE4.1 is not available.
José Fonseca [Tue, 29 Sep 2009 16:22:39 +0000 (17:22 +0100)]
llvmpipe: First verify LLVM IR, only then run optimizing passes.
José Fonseca [Tue, 29 Sep 2009 16:21:34 +0000 (17:21 +0100)]
llvmpipe: Runtime cpu checks for lp_build_min_simple too.
José Fonseca [Tue, 29 Sep 2009 15:59:13 +0000 (16:59 +0100)]
llvmpipe: Implement non SSE4.1 versions of floor and round.
Brian Paul [Tue, 29 Sep 2009 15:46:49 +0000 (09:46 -0600)]
Merge branch 'mesa_7_6_branch'
Conflicts:
Makefile
configs/default
docs/relnotes.html
src/gallium/drivers/softpipe/sp_context.c
src/gallium/drivers/softpipe/sp_tile_cache.c
src/mesa/main/version.h
Brian Paul [Tue, 29 Sep 2009 15:36:06 +0000 (09:36 -0600)]
mesa: bump version to 7.6.1
Brian Paul [Tue, 29 Sep 2009 15:34:47 +0000 (09:34 -0600)]
docs: initial 7.6.1 release notes
Brian Paul [Tue, 29 Sep 2009 15:32:37 +0000 (09:32 -0600)]
mesa: work-around glXCopyContext() bug in _mesa_copy_texture_state()
See bug 24217.
Brian Paul [Tue, 29 Sep 2009 14:50:56 +0000 (08:50 -0600)]
softpipe: initialize the clear_flags bitvector in sp_create_tile_cache()
This silences tons of valgrind warnings in programs that don't call
glClear(), such as progs/demos/gamma.
Brian Paul [Tue, 29 Sep 2009 14:21:54 +0000 (08:21 -0600)]
softpipe: Grab a ref when the fb is set.
Nasty bug when the surface is freed and another is allocated right on
top of it. The next time we set the fb state SP thinks it's the same
surface and doesn't flush, and when the flush eventually happens the
surface belongs to a completely different texture.
(cherry picked from commit
a77226071f6814a53358a5d6caff685889d0e4ec)
Conflicts:
src/gallium/drivers/softpipe/sp_context.c
Chia-I Wu [Sun, 27 Sep 2009 08:40:43 +0000 (16:40 +0800)]
egl_xdri: Report full list of supported configs.
Call _eglConfigFromContextModesRec to convert __GLcontextModes to
_EGLConfig. Single-buffered configs are no longer skipped.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Sun, 27 Sep 2009 09:00:51 +0000 (17:00 +0800)]
egl: Add support for querying render buffer.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Sun, 27 Sep 2009 08:14:36 +0000 (16:14 +0800)]
egl: Add a function to convert __GLcontextModes to _EGLConfig.
_eglConfigFromContextModesRec is used to convert a __GLcontextModes to a
_EGLConfig. Note that the config is not validated. An invalid mode
is likely to give an invalid config.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Fri, 25 Sep 2009 15:43:49 +0000 (23:43 +0800)]
egl: Rework config lookup.
Make it similiar to how contexts and surfaces are looked up. It should
be slightly faster, and work better with multiple displays.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Fri, 25 Sep 2009 15:24:03 +0000 (23:24 +0800)]
egl: Rework configuration management.
This mainly implements the algorithms for configuration selection and
sorting, described in the spec. User errors should also be correctly
detected and reported.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Fri, 25 Sep 2009 14:54:34 +0000 (22:54 +0800)]
egl: Introduce config keys.
Config keys are almost config attributes. A valid config attribute is a
valid config key, but a valid config key may not be a valid config
attribute.
This commit does not distinguish the differences.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
José Fonseca [Tue, 29 Sep 2009 12:58:58 +0000 (13:58 +0100)]
llvmpipe: Emit SSE intrinsics based on runtime cpu capability check.
Note that llvmpipe still doesn't run on any processor yet: if you don't
have a recent processor with SSE4.1 you will still likely end up
hitting a code path for which a generic non-sse4 version is not
implemented yet.
José Fonseca [Tue, 29 Sep 2009 12:25:08 +0000 (13:25 +0100)]
util: Cleanup u_cpu_detect, build. Support X86_64 and detect SSE4.1 too.
I was waiting for the need to use this code to arise, and it finally came.
I've tested building this on Linux and Windows, both x86 and x64_64. But
it might break other platforms. Please bear with me and help me fix it.
Many thanks to Dennis Smit who submitted this, and Eric Anholt whose
work this was based on.
José Fonseca [Tue, 29 Sep 2009 12:17:36 +0000 (13:17 +0100)]
gallium: New PIPE_OS_UNIX to simplify code that is portable to all unices.
Vinson Lee [Tue, 29 Sep 2009 09:38:47 +0000 (10:38 +0100)]
i915: Fix MSVC build.
José Fonseca [Mon, 28 Sep 2009 18:44:30 +0000 (19:44 +0100)]
python: Update for surface_buffer_create change.
José Fonseca [Mon, 28 Sep 2009 18:02:34 +0000 (19:02 +0100)]
g3dvl: assert.h -> util/u_debug.h
José Fonseca [Mon, 28 Sep 2009 18:01:49 +0000 (19:01 +0100)]
g3dvl: Define PIPE_VIDEO_CODEC_UNKNOWN for failures.
gcc 4.4 seems particularly picky with int -> enum conversions.
Andre Maasikas [Mon, 28 Sep 2009 08:23:49 +0000 (11:23 +0300)]
r600: use CB_TARGET_MASK instead of CB_SHADER_MASK for setting color mask
makes blend functions work better
Signed-off-by: Dave Airlie <airlied@linux.ie>
Andre Maasikas [Mon, 28 Sep 2009 07:42:35 +0000 (10:42 +0300)]
r600: user correct alpha blend factor
Signed-off-by: Dave Airlie <airlied@linux.ie>
Andre Maasikas [Tue, 29 Sep 2009 06:46:29 +0000 (09:46 +0300)]
r600: clear position enable bit when when wpos is not used by FP
Makes doom3 alot nicer..
Jakob Bornecrantz [Mon, 28 Sep 2009 18:19:26 +0000 (11:19 -0700)]
st/xorg: Add debug for fallbacks
Jakob Bornecrantz [Sun, 27 Sep 2009 21:03:24 +0000 (14:03 -0700)]
st/xorg: Make debug printing optional
Eric Anholt [Mon, 28 Sep 2009 21:03:40 +0000 (14:03 -0700)]
meta: Fix invalid PBO access from DrawPixels when trying to just alloc.
This whole reuse of buffers (TexSubImage instead of TexImage, SubData
instead of Data) is bad for hardware drivers, but it's even worse when
we accidentally try to access the 2x2 PBO to fill the new 16x16 texture
we're creating, producing GL errors.
Fixes piglit pbo-drawpixels. Bug #14163.
Eric Anholt [Mon, 28 Sep 2009 18:42:31 +0000 (11:42 -0700)]
intel: Drop my generatemipmap code in favor of the new shared code.
Eric Anholt [Tue, 22 Sep 2009 00:13:31 +0000 (17:13 -0700)]
intel: Remove some dead metaops code.
Brian Paul [Mon, 28 Sep 2009 19:19:57 +0000 (13:19 -0600)]
docs: update news.html file with 7.5.2 and 7.6 release
Ian Romanick [Mon, 28 Sep 2009 19:03:23 +0000 (12:03 -0700)]
Merge branch 'mesa_7_6_branch'
Conflicts:
Makefile
src/mesa/main/version.h
Ian Romanick [Mon, 28 Sep 2009 19:02:39 +0000 (12:02 -0700)]
Merge branch 'mesa_7_5_branch' into mesa_7_6_branch
Conflicts:
src/mesa/main/version.h
Ian Romanick [Mon, 28 Sep 2009 18:41:23 +0000 (11:41 -0700)]
docs: 7.5.2 md5 sums
Ian Romanick [Mon, 28 Sep 2009 18:33:52 +0000 (11:33 -0700)]
Prep for 7.5.2 release
Ian Romanick [Mon, 28 Sep 2009 18:29:25 +0000 (11:29 -0700)]
docs: 7.6 md5 sums
Ian Romanick [Mon, 28 Sep 2009 18:22:54 +0000 (11:22 -0700)]
Prep for 7.6 release
Brian Paul [Mon, 28 Sep 2009 16:03:58 +0000 (10:03 -0600)]
st/mesa: check gl_texture_object::GenerateMipmap field when allocating texmem
In guess_and_alloc_texture() use the gl_texture_object::GenerateMipmap
field as another hint as to whether to allocate space for a whole mipmap.
Brian Paul [Mon, 28 Sep 2009 16:02:20 +0000 (10:02 -0600)]
Merge branch 'mesa_7_6_branch'
Brian Paul [Mon, 28 Sep 2009 15:59:59 +0000 (09:59 -0600)]
Merge branch 'mesa_7_5_branch' into mesa_7_6_branch
Robert Noland [Tue, 22 Sep 2009 18:49:57 +0000 (11:49 -0700)]
Fix build on non GLIBC platforms (FreeBSD at least)
Build was broken by commit
9666529b5a5be1fcde82caadc2fe2efa5ea81e49
I'm not certain that this is entirely the correct fix since the demo
from bug #23774 seemed to work before the commit that broke the build.
Signed-off-by: Robert Noland <rnoland@2hip.net>
Signed-off-by: Brian Paul <brianp@vmware.com>
Brian Paul [Mon, 28 Sep 2009 15:43:42 +0000 (09:43 -0600)]
docs: list additional 7.5.2 bug fixes
Brian Paul [Mon, 28 Sep 2009 15:38:50 +0000 (09:38 -0600)]
docs: document gallium mipmap generation fix
Brian Paul [Fri, 25 Sep 2009 23:24:27 +0000 (17:24 -0600)]
st/mesa: fix st_generate_mipmap() issues
The main issue is we didn't always have a gallium texture object with
enough space to store the to-be-generated mipmap levels. When that's
the case, allocate a new gallium texture and use st_texure_finalize()
to copy images from the old texture to the new one.
We also had the baseLevel parameter to st_render_mipmap() wrong.
Brian Paul [Mon, 28 Sep 2009 15:28:50 +0000 (09:28 -0600)]
st/mesa: fix/simplify st_texture_object::lastLevel calculation
Don't compute the st_texture_object::lastLevel field based on the texture
filters. Use the _MaxLevel value that core Mesa computes for us.
When called from the GenerateMipmap path, we'll use the lastLevel field
as-is.
Brian Paul [Fri, 25 Sep 2009 23:19:25 +0000 (17:19 -0600)]
gallium/util: add sanity check assertions
Brian Paul [Mon, 28 Sep 2009 15:22:33 +0000 (09:22 -0600)]
mesa: use _mesa_get_current_tex_unit() helper
Vinson Lee [Mon, 28 Sep 2009 15:03:26 +0000 (09:03 -0600)]
progs/perf: Include local headers before installed headers.
Fixes compilation errors on platforms with older installed GL headers.
Brian Paul [Fri, 25 Sep 2009 22:38:14 +0000 (16:38 -0600)]
progs/tests: print usage info upon SPACE/u
Brian Paul [Fri, 25 Sep 2009 22:37:15 +0000 (16:37 -0600)]
progs/tests: re-indent mipmap_limits.c
Younes Manton [Sun, 27 Sep 2009 14:56:42 +0000 (10:56 -0400)]
llvmpipe: Grab a ref when the fb is set.
Based on softpipe commit
a77226071f6814a53358a5d6caff685889d0e4ec.
José Fonseca [Mon, 28 Sep 2009 12:03:03 +0000 (13:03 +0100)]
softpipe: Fix MSVC build.
José Fonseca [Mon, 28 Sep 2009 12:02:42 +0000 (13:02 +0100)]
g3dvl: Fix MSVC build.
pipe/p_compiler for integer types. No declarations out of scope.
Cooper Yuan [Mon, 28 Sep 2009 09:55:38 +0000 (17:55 +0800)]
r300g: fix r300g cause GPU hang issue.
why there are two input position semantic tags is that ureg doesn't
set vs input semantic due to commit:
6d8dbd3d1ec888
so use vs input index instead of semantic name.
Younes Manton [Mon, 28 Sep 2009 04:17:33 +0000 (00:17 -0400)]
xvmc: Fail on unsupported formats, operations.
Younes Manton [Mon, 28 Sep 2009 03:54:36 +0000 (23:54 -0400)]
g3dvl: Missing semicolon.
Younes Manton [Mon, 28 Sep 2009 03:14:52 +0000 (23:14 -0400)]
g3dvl: Formatting and cleanups.
Younes Manton [Mon, 28 Sep 2009 01:54:20 +0000 (21:54 -0400)]
g3dvl: Move XvMC under the Xorg state tracker.
Younes Manton [Mon, 28 Sep 2009 00:18:02 +0000 (20:18 -0400)]
g3dvl: Implement XvMC using pipe_video_context.
Younes Manton [Sun, 27 Sep 2009 23:49:06 +0000 (19:49 -0400)]
g3dvl: pipe_video_context interface, softpipe impl, auxiliary libs
Younes Manton [Sun, 27 Sep 2009 18:40:14 +0000 (14:40 -0400)]
util: Add util_next_power_of_two() for rounding a uint up to a POT.
Maciej Cencora [Sun, 27 Sep 2009 20:30:45 +0000 (22:30 +0200)]
r300g: fix erroneous condition
Maciej Cencora [Sun, 27 Sep 2009 20:28:46 +0000 (22:28 +0200)]
r300g: don't force vertex position for HW TCL path
It could be generated by vertex shader.
Maciej Cencora [Sun, 27 Sep 2009 20:20:41 +0000 (22:20 +0200)]
r300g: add some assertions
Not sure why we are getting a shader with two inputs with position semantic, but we don't know how to handle it correctly so it's better to stop the app than lock the machine.
Maciej Cencora [Sun, 27 Sep 2009 20:18:49 +0000 (22:18 +0200)]
r300g: plug memory leak
Maciej Cencora [Sun, 27 Sep 2009 20:15:15 +0000 (22:15 +0200)]
r300g: add some debugging info
Dave Airlie [Sun, 27 Sep 2009 20:42:25 +0000 (06:42 +1000)]
r300g: fix r300 rs path
Dave Airlie [Sun, 27 Sep 2009 10:34:13 +0000 (20:34 +1000)]
r300g: rewrite RS state setup.
Not 100% sure this is correct, but its more correct than what was here previous
however it may require changes in the input routing for the frag shader.
Dave Airlie [Sun, 27 Sep 2009 10:31:55 +0000 (20:31 +1000)]
r300g: silence compiler warning
Jakob Bornecrantz [Sun, 27 Sep 2009 20:12:11 +0000 (13:12 -0700)]
i915g: Submit direct vertex buffers
Jakob Bornecrantz [Sun, 27 Sep 2009 20:11:49 +0000 (13:11 -0700)]
i915g: Fix warning
Jakob Bornecrantz [Wed, 23 Sep 2009 18:57:18 +0000 (11:57 -0700)]
i915g: Tile shared buffers as well
Jakob Bornecrantz [Wed, 23 Sep 2009 18:54:22 +0000 (11:54 -0700)]
i915g: Make sure to map tiled buffers via the gtt
Jakob Bornecrantz [Wed, 23 Sep 2009 18:53:50 +0000 (11:53 -0700)]
i915g: Use boolean
Jakob Bornecrantz [Wed, 23 Sep 2009 00:00:46 +0000 (17:00 -0700)]
i915g: Enable reuse of buffers
Jakob Bornecrantz [Wed, 23 Sep 2009 03:22:13 +0000 (20:22 -0700)]
st/egl: Remove buffer from screen
It is no longer needed since the new drm api code,
and it incorrectly checked if the buffer where there
for testing completeness when it should have checked
the texture instead.
Richard Li [Sun, 27 Sep 2009 18:47:12 +0000 (14:47 -0400)]
r600 : Enable draw_prim.
Younes Manton [Sun, 27 Sep 2009 14:56:42 +0000 (10:56 -0400)]
softpipe: Grab a ref when the fb is set.
Nasty bug when the surface is freed and another is allocated right on
top of it. The next time we set the fb state SP thinks it's the same
surface and doesn't flush, and when the flush eventually happens the
surface belongs to a completely different texture.
Jakob Bornecrantz [Sat, 26 Sep 2009 19:35:19 +0000 (12:35 -0700)]
progs/rbug: Link to math
Dave Airlie [Sat, 26 Sep 2009 09:32:46 +0000 (19:32 +1000)]
r300g: add tx depth support in register.
also enable cube/3d bits in txformat reg
Dave Airlie [Sat, 26 Sep 2009 08:38:39 +0000 (18:38 +1000)]
r300g: only pass complete texture state to hw setup function
No point passing things twice here, also allows more state
to be setup properly.
Dave Airlie [Sat, 26 Sep 2009 08:38:07 +0000 (18:38 +1000)]
r300g: add missing break in OQ emit
José Fonseca [Sat, 26 Sep 2009 08:33:32 +0000 (09:33 +0100)]
llvmpipe: Allow building with LLVM 2.6 too.
Dave Airlie [Sat, 26 Sep 2009 08:25:00 +0000 (18:25 +1000)]
r300g: report GL1.5, enable cap bits for OQ and shadow.
Its not like it works well on 1.3 so may as well reach for greater
heights.
Signed-off-by: Dave Airlie <airlied@redhat.com>
Dave Airlie [Sat, 26 Sep 2009 08:24:34 +0000 (18:24 +1000)]
r300g: add z16 unorm texture format
Dave Airlie [Sat, 26 Sep 2009 06:39:13 +0000 (16:39 +1000)]
r300g: fix texture pitch to correct value.
pitch is pixels - 1, not bytes.
Ian Romanick [Fri, 25 Sep 2009 23:57:38 +0000 (16:57 -0700)]
Merge branch 'asm-shader-rework-2'
Conflicts:
src/mesa/shader/program_parse.tab.c
Michel Dänzer [Fri, 25 Sep 2009 18:59:44 +0000 (20:59 +0200)]
intel: Handle GL_RGB8 for glCopyTex(Sub)Image.
Avoids an unnecessary fallback.
Michel Dänzer [Fri, 25 Sep 2009 18:49:53 +0000 (20:49 +0200)]
st/xorg: Re-enable accelerated fills and copies.
These seem to work well enough now with the new code. Composite acceleration
isn't quite there yet and thus remains disabled in xorg_composite_bind_state()
for now.
Michel Dänzer [Fri, 25 Sep 2009 18:49:53 +0000 (20:49 +0200)]
st/xorg: Flush render cache if but only if a source has pending write operations.
Michel Dänzer [Fri, 25 Sep 2009 18:49:53 +0000 (20:49 +0200)]
st/xorg: Reject Composite acceleration for some cases not working yet.