OSDN Git Service
Brian Paul [Wed, 12 Aug 2009 15:57:18 +0000 (09:57 -0600)]
gallium/glx/xlib: rename glxapi.c to glx_getproc.c
Brian Paul [Wed, 12 Aug 2009 15:56:45 +0000 (09:56 -0600)]
gallium/glx/xlib: don't include fakeglx.h
Brian Paul [Wed, 12 Aug 2009 15:51:56 +0000 (09:51 -0600)]
gallium/glx/xlib: overhaul and simplification of the Gallium Xlib-based GLX
The old GLX dispatch table stuff isn't needed (same story for the Mesa/Xlib
driver). The intention of that code was being able to switch on the fly
between the real GLX library and the fake/Xlib-based emulation. That hasn't
been used in a long time.
Next up: some file renaming.
Cooper Yuan [Wed, 12 Aug 2009 09:39:18 +0000 (17:39 +0800)]
r600: A shader is bound that exports Z as a float into Red channel
Chia-I Wu [Mon, 10 Aug 2009 08:45:12 +0000 (16:45 +0800)]
egl: Use _eglAddAtExitCall to free thread infos and displays.
Thread infos and displays are usually not freed by applications. This
commit add atexit calls to free them.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Mon, 10 Aug 2009 09:35:20 +0000 (17:35 +0800)]
egl: Add _eglAddAtExitCall.
Add a convenient wrapper to register atexit calls. Add mutex to
_eglGlobal along the way.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Mon, 10 Aug 2009 08:37:28 +0000 (16:37 +0800)]
egl: Make _eglGlobal initialize statically.
Now that display and surface hash tables are moved out, _eglGlobal can
be initialized statically.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Mon, 10 Aug 2009 07:13:42 +0000 (15:13 +0800)]
egl: Implement _eglFiniDisplay.
_eglFiniDisplay is called at exit time to free allocated displays. It
is, however, not used right now.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Mon, 10 Aug 2009 06:16:32 +0000 (14:16 +0800)]
egl: Make display and surface hash tables local.
Move display and surface hash tables to egldisplay.c, and have them
initialized on demand.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Mon, 10 Aug 2009 04:46:08 +0000 (12:46 +0800)]
egl: Initialize current thread management on demand.
Current thread management was initialized in _eglInitGlobals, which is
called only in eglGetDisplay. Since EGL does not require eglGetDisplay
to be called first, the initialization is better to be done on demand.
_eglFiniCurrent is removed, as it is not called at all.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Mon, 10 Aug 2009 04:20:31 +0000 (12:20 +0800)]
egl: Destroy eglThreadInfo on thread exit.
This is done through pthread TSD destructor. It destroys all thread
infos except for main thread's. The thread info of the main thread is
destroyed by _eglFiniCurrent.
TLS case is not supported yet.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Mon, 10 Aug 2009 03:35:06 +0000 (11:35 +0800)]
egl: Add eglmutex.h.
The implementation uses pthread mutex when available. Otherwise, it is
no-op.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
RALOVICH, Kristóf [Tue, 11 Aug 2009 20:42:47 +0000 (13:42 -0700)]
glx: fix signedness warning
Brian Paul [Wed, 12 Aug 2009 01:30:05 +0000 (19:30 -0600)]
mesa: handle glDrawPixels images which are larger than max rect texture size
Brian Paul [Wed, 12 Aug 2009 00:56:26 +0000 (18:56 -0600)]
mesa: added _mesa_meta_draw_pixels()
Brian Paul [Wed, 12 Aug 2009 00:54:57 +0000 (18:54 -0600)]
mesa: added META_FOG and optimize some meta_begin/end() code
Brian Paul [Wed, 12 Aug 2009 00:52:24 +0000 (18:52 -0600)]
gallium/trace: remove stray semicolons
Brian Paul [Wed, 12 Aug 2009 00:47:35 +0000 (18:47 -0600)]
gallium/xlib: add missing tex_usage parameter
Brian Paul [Wed, 12 Aug 2009 00:47:20 +0000 (18:47 -0600)]
gallium/egl: add missing tex_usage parameter
Brian Paul [Wed, 12 Aug 2009 00:45:20 +0000 (18:45 -0600)]
gallium/xlib: add missing tex_usage parameter
Brian Paul [Wed, 12 Aug 2009 00:40:50 +0000 (18:40 -0600)]
gallium/identity: remove stray semicolons
Alex Deucher [Wed, 12 Aug 2009 02:15:18 +0000 (22:15 -0400)]
r600: use the drm ioctls for swap and texture upload
NOTE: THIS REQUIRES AN UPDATED DRM!
Jakob Bornecrantz [Sat, 8 Aug 2009 15:20:46 +0000 (17:20 +0200)]
i915g: Reduce max relocs
Jakob Bornecrantz [Sat, 8 Aug 2009 15:19:43 +0000 (17:19 +0200)]
i915g: Check relocs as well
Jakob Bornecrantz [Tue, 11 Aug 2009 17:37:09 +0000 (18:37 +0100)]
i915g: Implement surface_buffer_create for softpipe
In order to run softpipe on st/xorg we need this function
Jakob Bornecrantz [Tue, 11 Aug 2009 17:33:58 +0000 (18:33 +0100)]
gallium: Add texture usage information to surface_buffer_create
We need aditional meta data about the usage of the surface
in softpipe because we need to be able tell the diffrence
between PRIMARY and DISPLAY_TARGET surfaces.
Brian Paul [Tue, 11 Aug 2009 16:00:02 +0000 (10:00 -0600)]
mesa/glapi: regenerated files from gl_API.xml
Brian Paul [Tue, 11 Aug 2009 15:30:12 +0000 (09:30 -0600)]
gallium: fix debug_printf() format string
Brian Paul [Tue, 11 Aug 2009 14:54:25 +0000 (08:54 -0600)]
glut: fix incorrect Vista maximisation size due to WM_GETMINMAXINFO handling
See bug 23182.
Brian Paul [Tue, 11 Aug 2009 14:37:22 +0000 (08:37 -0600)]
mesa: remove _mesa_set_vp_override() from _mesa_Bitmap()
This reverts part of commit
2c9812e3d346eb07180da520909b142e8afc1c59.
The calls to _mesa_set_vp_override() were causing extra state validation
and caused the gallium state tracker's bitmap cache to get flushed on
every call.
Michel Dänzer [Tue, 11 Aug 2009 07:16:48 +0000 (09:16 +0200)]
r300g: Fix up remaining VAP_CNTL_STATUS writes for big endian.
Michel Dänzer [Tue, 11 Aug 2009 07:13:12 +0000 (09:13 +0200)]
r300g: Emit relocations for pitch registers.
Fixes CS failures with tiling enabled kernels.
Cooper Yuan [Tue, 11 Aug 2009 06:39:58 +0000 (14:39 +0800)]
r300g: a typo of debug message
Cooper Yuan [Tue, 11 Aug 2009 06:36:01 +0000 (14:36 +0800)]
r600: update num of interp if posizition is used
Eric Anholt [Mon, 10 Aug 2009 22:50:22 +0000 (15:50 -0700)]
demos: Fix the VBO usage in glsl/multitex.
The fix for 965 to be noisy when apps sent pointers instead of VBO offsets
caught this app in the act of doing exactly that.
Bug #23203
Brian Paul [Mon, 10 Aug 2009 21:48:02 +0000 (15:48 -0600)]
intel: use new _mesa_meta_copy_pixels() function
glCopyPixels() no longer hits a software fallback when zooming, blending, etc.
Brian Paul [Mon, 10 Aug 2009 21:44:05 +0000 (15:44 -0600)]
mesa: save/restore texture matrix in meta code
Also, save/restore viewport and texture state in _mesa_meta_copy_pixels()
Brian Paul [Mon, 10 Aug 2009 21:05:53 +0000 (15:05 -0600)]
mesa: for meta blit, check max texture size, use glCopyTexSubImage2D() when possible
Brian Paul [Mon, 10 Aug 2009 20:43:15 +0000 (14:43 -0600)]
mesa: initial meta implementation of glCopyPixels()
Brian Paul [Mon, 10 Aug 2009 20:15:56 +0000 (14:15 -0600)]
mesa: remove debug flush call
Brian Paul [Mon, 10 Aug 2009 19:58:56 +0000 (13:58 -0600)]
intel: add missing \n to fprintf()
Brian Paul [Mon, 10 Aug 2009 19:43:00 +0000 (13:43 -0600)]
intel: use new _mesa_meta_blit_framebuffer() function
The previous version of framebuffer blit was a quick hack. The new meta
version works pretty well.
Brian Paul [Mon, 10 Aug 2009 19:35:58 +0000 (13:35 -0600)]
mesa: new driver meta-ops module
Implement glClear() in terms of quad rendering, implement glBlitFramebuffer()
in terms of glCopyTexImage2D + textured quad, etc.
There have been several places in the drivers where we've implemented
meta rendering similar to this. This is an effort to do it in a more
portable and more efficient form.
The _mesa_meta_begin/end() functions act like glPush/PopAttrib() but are
lighter-weight. Plus, _mesa_meta_begin() resets GL state back to default
values (texturing off, identity vertex transform, etc) so the meta drawing
functions don't have to worry about it.
For now only _mesa_mesa_blit_framebuffer() and _mesa_meta_clear() are
implemented. glDrawPixels() and glCopyPixels() would be the next candidates.
Brian Paul [Mon, 10 Aug 2009 19:43:50 +0000 (13:43 -0600)]
mesa: added GLcontext::Meta field for meta rendering state
Dave Airlie [Sat, 8 Aug 2009 10:05:11 +0000 (20:05 +1000)]
radeon_fbo: switch short to byte for 565
Dave Airlie [Mon, 10 Aug 2009 00:10:13 +0000 (10:10 +1000)]
radeon: fix cut-n-paste in alphabits in fbo code
Pauli Nieminen [Sun, 9 Aug 2009 12:22:34 +0000 (15:22 +0300)]
egl: Add depend and depend.bak to clean target
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
Dave Airlie [Sun, 9 Aug 2009 10:46:12 +0000 (20:46 +1000)]
r600: looks like a typo
Cooper Yuan [Sun, 9 Aug 2009 04:18:40 +0000 (12:18 +0800)]
r600: load per-pixel position into PS in order to use fragment.position.
This patch can fix /progs/fp/tri-depth, tri-depth2, tri-depthwrite,
tri-depthwrite2 and point-position.
Brian Paul [Fri, 7 Aug 2009 20:51:59 +0000 (14:51 -0600)]
mesa: update framebuffer status as needed in _mesa_source/dest_buffer_exists()
Brian Paul [Fri, 7 Aug 2009 19:39:03 +0000 (13:39 -0600)]
mesa: simplify glPushAttrib() list building code
Brian Paul [Fri, 7 Aug 2009 19:07:59 +0000 (13:07 -0600)]
mesa: remove old, prototype code
Brian Paul [Fri, 7 Aug 2009 18:04:09 +0000 (12:04 -0600)]
swrast: replace GLenum, GLint with GLbitfield for buffer vars
Brian Paul [Fri, 7 Aug 2009 16:51:03 +0000 (10:51 -0600)]
mesa: use _mesa_bufferobj_mapped()
Corbin Simpson [Sat, 8 Aug 2009 03:29:50 +0000 (20:29 -0700)]
r300g: Knock out another fragment of invariant state.
Colorbuffer setup will always happen.
Corbin Simpson [Sat, 8 Aug 2009 03:16:39 +0000 (20:16 -0700)]
gallium: Move minify() to u_math.
minify() is usually used in mipmap size calculation. Strangely enough,
we all defined it as MAX2(1, d >> 1); imagine that. :3
Corbin Simpson [Sat, 8 Aug 2009 02:46:52 +0000 (19:46 -0700)]
r300g: Remove r300_constant_buffer::user_count.
Not needed with new compiler.
Eric Anholt [Sat, 8 Aug 2009 01:29:56 +0000 (18:29 -0700)]
Revert "i965: Disable texture tiling by default."
This reverts commit
b8e638d4895d2d342306bb6443a455f73903ce20.
Now that the known hangs and misrendering issues are fixed, I'm ready to
start encouraging it by default again.
Eric Anholt [Sat, 8 Aug 2009 01:09:31 +0000 (18:09 -0700)]
intel: Align region height as required for tiled regions.
Otherwise, we would address beyond the end of our buffers. Fixes reliable
GPU segfault with texture_tiling=true and oglconform shadow.c.
Bug #22406.
Eric Anholt [Sat, 8 Aug 2009 01:08:20 +0000 (18:08 -0700)]
i965: Add a note justifying domain choice for the SF VP.
Eric Anholt [Sat, 8 Aug 2009 00:06:41 +0000 (17:06 -0700)]
intel: Add some more safety asserts in the blit code.
Eric Anholt [Fri, 7 Aug 2009 21:20:56 +0000 (14:20 -0700)]
i965: Replace the subroutine-skipping jump in VS with a NOP if it's a NOP.
This showed a 1.9% (+/-.3%, n=3) improvement in OA performance with high
geometry settings.
Jakob Bornecrantz [Sat, 8 Aug 2009 01:20:24 +0000 (03:20 +0200)]
i915g: Don't forget x/y coords in transfers
Fixes demos/ray.
Jakob Bornecrantz [Sat, 8 Aug 2009 01:19:01 +0000 (03:19 +0200)]
i915g: Don't try to free a mapped buffer at shutdown
Alex Deucher [Fri, 7 Aug 2009 21:35:12 +0000 (17:35 -0400)]
radeon: correct fix for tiling with the legacy build
Eric Anholt [Thu, 6 Aug 2009 20:55:09 +0000 (13:55 -0700)]
intel: Fix googleearth by avoiding GL_VIEWPORT_BIT in meta clear push/pop
I have no idea why this fixes things, but being more efficient sounds good
anyway. Fixes regression in
99d07d0f91ddd37926d08f4e7f10d55cac28d9a7
where most of the lit half of the world was not drawn.
Alex Deucher [Fri, 7 Aug 2009 20:20:26 +0000 (16:20 -0400)]
radeon: fix the build with older drm headers
Pauli Nieminen [Fri, 7 Aug 2009 17:02:22 +0000 (10:02 -0700)]
dri: Fix problems with unitialized values in dri screen object.
This fixes crash in r200 KMS driver when pSAREA was set to 1 randomly because of memory wasn't cleared.
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
Brian Paul [Thu, 6 Aug 2009 20:58:01 +0000 (14:58 -0600)]
util: fix incorrect assertion
Check that the dest surface/format is renderable.
Brian Paul [Thu, 6 Aug 2009 20:54:25 +0000 (14:54 -0600)]
util: include u_surface.h, added comment
Brian Paul [Thu, 6 Aug 2009 15:02:36 +0000 (09:02 -0600)]
util: use util_same_surface() to compare surface pointers
Brian Paul [Thu, 6 Aug 2009 15:02:05 +0000 (09:02 -0600)]
util: added util_same_surface() helper function
Robert Ellison [Fri, 7 Aug 2009 18:23:19 +0000 (12:23 -0600)]
tests: have getprocaddress return a return code
These minor changes allow getprocaddress to return an error code
in the case of test failure. This allows the program to be integrated
into the piglit test suite.
Robert Ellison [Fri, 7 Aug 2009 18:06:17 +0000 (12:06 -0600)]
mesa: improve getprocaddress test
- Allow the getprocaddress test to test extensions not supported by
Mesa. The original getprocaddress.py script only included OpenGL
extension functions that were in Mesa dispatch tables. Now all
known extension functions (as detailed in gl_API.xml) are included.
As the test does not link against any extension function symbols
(i.e. it uses glXGetProcAddress() for all extension functions),
it still compiles and links against Mesa; but now the same
binary can be used to test extensions not yet supported by Mesa.
- Extend the list of tested extension functions. The last revision
of this test exercised 16 extension functions; this revision adds
support for 95 more.
Brian Paul [Fri, 7 Aug 2009 16:49:38 +0000 (10:49 -0600)]
st/mesa: remove redundant calls to _mesa_set_vp_override()
Called from core Mesa now.
Brian Paul [Thu, 6 Aug 2009 22:04:03 +0000 (16:04 -0600)]
progs/xdemos: added multictx.c (multi-context rendering demo)
Create one window and render into it with two GLX contexts. Setup the
rendering state differently for each context to be sure there's no state
"bleeding" between contexts.
Brian Paul [Fri, 7 Aug 2009 15:50:25 +0000 (09:50 -0600)]
mesa: use _mesa_set_vp_override() in glDraw/CopyPixels and glBitmap
We don't use the vertex program in these functions and the driver may
install its own. This fixes the broken glCopyPixels swrast fallback in
i965 and possibly other drivers. In particular, glCopyPixels sometimes
didn't work because the fixed-function fragment program was replacing all
fragment colors with the current raster color.
Brian Paul [Fri, 7 Aug 2009 15:42:28 +0000 (09:42 -0600)]
mesa: reformat code to allow setting breakpoints on the true-statement
Brian Paul [Fri, 7 Aug 2009 15:41:32 +0000 (09:41 -0600)]
glxgears: make functions static, update comments
Brian Paul [Fri, 7 Aug 2009 15:40:37 +0000 (09:40 -0600)]
mesa: use _mesa_bufferobj_mapped()
Brian Paul [Fri, 7 Aug 2009 15:40:02 +0000 (09:40 -0600)]
mesa: new _mesa_bufferobj_mapped() helper function
Brian Paul [Fri, 7 Aug 2009 15:30:53 +0000 (09:30 -0600)]
mesa: use valid_fragment_program() helper
Brian Paul [Fri, 7 Aug 2009 15:24:00 +0000 (09:24 -0600)]
mesa: test DrawBuffer, not ReadBuffer in _mesa_dest_buffer_exists()
Also, update comments.
Brian Paul [Fri, 7 Aug 2009 15:18:04 +0000 (09:18 -0600)]
mesa: fix some incorrect error checks in _mesa_error_check_format_type()
Plus, simplify the code a bit.
Brian Paul [Fri, 7 Aug 2009 15:03:49 +0000 (09:03 -0600)]
mesa: do error checking on glCopyPixels() type parameter
Plus, move some other error checks before state validation and update
some comments.
Brian Paul [Fri, 7 Aug 2009 14:53:53 +0000 (08:53 -0600)]
mesa: use a more logical flag in _mesa_set_vp_override()
Brian Paul [Thu, 6 Aug 2009 19:53:06 +0000 (13:53 -0600)]
mesa: new _mesa_copy_client_array() function
Brian Paul [Thu, 6 Aug 2009 17:40:15 +0000 (11:40 -0600)]
i965: minor context comments
Brian Paul [Thu, 6 Aug 2009 17:40:06 +0000 (11:40 -0600)]
intel: minor context comments
Brian Paul [Wed, 5 Aug 2009 22:31:08 +0000 (16:31 -0600)]
intel: move blit call out of assert()
Brian Paul [Wed, 5 Aug 2009 21:31:51 +0000 (15:31 -0600)]
intel: fix typo: s/softare/software/
Brian Paul [Tue, 4 Aug 2009 23:02:12 +0000 (17:02 -0600)]
mesa: fix comment
Dave Airlie [Fri, 7 Aug 2009 09:40:05 +0000 (19:40 +1000)]
radeon: enable tiling fallbacks in 3D driver.
Only really got good testing on r500 so far, need to enable in
DDX and play some more.
Dave Airlie [Fri, 7 Aug 2009 06:16:08 +0000 (16:16 +1000)]
radeon span: add r200 depth/stencil span read/writing
this should only really affect DRI2 since we mostly have a surface in DRI1.
I don't think this is perfect yet, but it is a better start than nothing.
Dave Airlie [Fri, 7 Aug 2009 04:12:09 +0000 (14:12 +1000)]
r200: fix scissor emission for r200 under kms
Ian Romanick [Thu, 6 Aug 2009 20:21:23 +0000 (15:21 -0500)]
GL_ARB_vertex_array_bgra is (basically) a synonym for the EXT version
Alan Hourihane [Thu, 6 Aug 2009 14:54:49 +0000 (15:54 +0100)]
Ensure GL_EXT_blend_equation_separate is enabled when 2.0 is enabled.
Chia-I Wu [Thu, 6 Aug 2009 14:39:25 +0000 (08:39 -0600)]
progs/egl: Add xeglbindtex, really.
Missed this file in the earlier commit.
Jakob Bornecrantz [Thu, 6 Aug 2009 12:59:05 +0000 (13:59 +0100)]
mesa: Ignores
Got tired of seeing these files in git status all the time
Jakob Bornecrantz [Thu, 6 Aug 2009 12:50:46 +0000 (13:50 +0100)]
i915g: Compile with scons