Commit Graph

40433 Commits

Author SHA1 Message Date
Chia-I Wu 04ae53ca8a st/egl: Add support for EGL_MATCH_NATIVE_PIXMAP.
Added for completeness.  It makes sense to have such mechanism, but I am
not aware of any user of that..
2010-11-03 17:17:29 +08:00
Chia-I Wu b8cb14209a st/egl: Add support for swap interval and swap behavior.
The value of EGL_MAX_SWAP_INTERVAL and whether
EGL_SWAP_BEHAVIOR_PRESERVED_BIT is set will depend on the native
backend used.
2010-11-03 16:26:57 +08:00
Chia-I Wu 828d944fd6 st/egl: Remove flush_frontbuffer and swap_buffers.
They are deprecated by native_surface::present and there is no user of
them.
2010-11-03 16:08:47 +08:00
Chia-I Wu 250d81da25 d3d1x: Use native_surface::present.
Replace native_surface::flush_frontbuffer and
native_surface::swap_buffers calls by native_surface::present calls.
2010-11-03 16:08:44 +08:00
Chia-I Wu 0ae4b23c53 st/egl: Use native_surface::present callback.
Replace native_surface::flush_frontbuffer and
native_surface::swap_buffers calls by native_surface::present calls.
2010-11-03 16:08:23 +08:00
Chia-I Wu 94bf657b23 st/egl: Add native_surface::present callback.
The callback presents the given attachment to the native engine.  It
allows the swap behavior and interval to be controlled.  It will replace
native_surface::flush_frontbuffer and native_surface::swap_buffers
shortly.
2010-11-03 16:04:59 +08:00
Chia-I Wu c9186bd588 egl: Set up the pthread key even TLS is used.
We have to rely on the pthread key destructor to free the current thread
info when a thread exits.
2010-11-03 13:34:17 +08:00
Vinson Lee 93a7e6d94e st/vega: Remove unnecessary headers. 2010-11-02 17:13:44 -07:00
Brian Paul 61f25216e3 mesa: silence new warnings in texobj.c
Silences warning such as:
main/texobj.c:442:40: warning: ISO C99 requires rest arguments to be used
main/texobj.c:498:58: warning: ISO C99 requires rest arguments to be used
2010-11-02 17:41:00 -06:00
Vinson Lee 6f90a7cbff savage: Remove unnecessary header. 2010-11-02 16:23:30 -07:00
Eric Anholt 689def8bbc intel: For batch, use GTT mapping instead of writing to a malloc and copying.
No measurable performance difference on cairo-perf-trace, but
simplifies the code and should have cache benefit in general.
2010-11-02 14:24:42 -07:00
Eric Anholt 1210aa7551 mesa: Don't compute an unused texture completeness debug string.
This showed up at about 1% on cairo-gl firefox-talos-gfx, where
glClear() is called while a texture is incomplete.
2010-11-02 14:24:42 -07:00
Tilman Sauerbeck 965c8a3f1d st/mesa: Reset the index buffer before destroying the pipe context.
Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-11-02 21:52:40 +01:00
Tilman Sauerbeck 52ba68d0b0 r600g: Destroy the winsys in r600_destroy_screen().
Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-11-02 21:52:39 +01:00
Tilman Sauerbeck 907efeea18 r600g: Fixed two memory leaks in winsys.
Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-11-02 21:52:39 +01:00
Tilman Sauerbeck ecb1b8b98f r600g: Delete custom_dsa_flush on shutdown.
Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-11-02 21:52:39 +01:00
Tilman Sauerbeck c49dcaef65 r600g: We don't support PIPE_CAP_PRIMITIVE_RESTART.
Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-11-02 21:52:39 +01:00
Tilman Sauerbeck 86778dadc5 r600g: Made radeon_bo::map_count signed.
That way assert(map_count >= 0) can actually fail when we screwed up.

Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-11-02 21:52:39 +01:00
Tilman Sauerbeck 34e75b0ca8 r600g: Fixed unmap condition in radeon_bo_pb_destroy().
Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-11-02 21:52:38 +01:00
Tilman Sauerbeck b675266f0e r600g: Made radeon_bo_pb_map_internal() actually call radeon_bo_map().
This ensures that we increase bo->map_count when radeon_bo_map_internal()
returns successfully, which in turn makes sure we don't decrement
bo->map_count below zero later.

Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-11-02 21:52:38 +01:00
Tilman Sauerbeck 4e34393162 r600g: Removed unused 'ptr' argument from radeon_bo().
Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-11-02 21:52:38 +01:00
Jakob Bornecrantz 1318b0ef9e graw: Tidy graw xlib scons file a bit 2010-11-02 18:20:30 +00:00
Brian Paul 2996ce72b1 llvmpipe: add a cast 2010-11-02 11:53:14 -06:00
Brian Paul 9fbf744389 llvmpipe: assign context's frag shader pointer before using it
The call to draw_bind_fragment_shader() was using the old fragment
shader.  This bug would have really only effected the draw module's
use of the fragment shader in the wide point stage.
2010-11-02 11:50:37 -06:00
Chad Versace 223568fbcd mesa: Fix C++ includes in sampler.cpp
Some C++ header files were included in an extern "C" block. When building with
Clang, this caused the build to fail due to namespace errors. (GCC did not
report any errors.)

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
2010-11-02 10:36:20 -07:00
Keith Whitwell 8dfafbf086 st/mesa: unbind constant buffer when not in use
Important as more constant buffers per shader start to get used.

Fix up r600 (tested) and nv50 (untested) to cope with this.  Drivers
previously didn't see unbinds of constant buffers often or ever, so
this isn't always dealt with cleanly.

For r600 just return and keep the reference.  Will try to do better in
a followup change.
2010-11-02 16:57:24 +00:00
Keith Whitwell debcb43489 llvmpipe: guard against NULL task->query pointer
This doesn't seem like it should be possible, but some test suites
manage to hit this case.  Avoid crashing release builds under those
circumstances.
2010-11-02 16:48:10 +00:00
Keith Whitwell 98445b4307 llvmpipe: avoid generating tri_16 for tris which extend past tile bounds
Don't trim triangle bounding box to scissor/draw-region until after
the logic for emitting tri_16.  Don't generate tri_16 commands for
triangles with untrimmed bounding boxes outside the current tile.

This is important as the tri-16 itself can extend past tile bounds and
we don't want to add code to it to check against tile bounds (slow) or
restrict it to locations within a tile (pessimistic).
2010-11-02 16:48:10 +00:00
Brian Paul fc70c05dbd mesa: fix aux/accum comment and error message mixups 2010-11-02 09:56:04 -06:00
Brian Paul 4a9ce9b299 mesa: remove always-false conditional in check_compatible()
The two gl_config pointers can never be equal.
2010-11-02 09:40:57 -06:00
Brian Paul 670207e6d0 dri/util: add a bunch of comments 2010-11-02 09:33:23 -06:00
Brian Paul 0fefafb2e4 mesa: move the gl_config struct declaration
It was in the middle of the lighting-related structures before.
Also add some info about field sizes in this structure.
2010-11-02 09:33:17 -06:00
Brian Paul ee1f047c81 mesa: use GLubyte for edge flag arrays
Fixes http://bugs.freedesktop.org/show_bug.cgi?id=31310
2010-11-02 08:23:24 -06:00
José Fonseca 265b53983e scons: Propagate installation targets.
Fixes libgl-xlib target.
2010-11-02 14:20:12 +00:00
José Fonseca 45f4b85d58 scons: i915 can't build on MSVC either.
I thought I had singled it out before, but apparently not.
2010-11-02 13:49:35 +00:00
José Fonseca 3ae04dd910 scons: Add aliases for several pipe drivers. 2010-11-02 12:35:52 +00:00
José Fonseca 4f8dbd2f5e r600g: List recently added files in SConscript. 2010-11-02 12:35:52 +00:00
Zhenyu Wang aedc270966 i965: refresh wm push constant also for BRW_NEW_FRAMENT_PROGRAM on gen6
Fix compiz crash.

https://bugs.freedesktop.org/show_bug.cgi?id=31124
2010-11-02 16:06:13 +08:00
Chia-I Wu 16ee7a55ae mesa: Allow contexts of different APIs to coexist.
This effectively redoes 1741ddb747 in a
way that allows contexts of different APIs to coexist.

First, the changes to the remap table are reverted.  The remap table
(driDispatchRemapTable) is always initialized in the same way regardless
of the context API.

es_generator.py is updated to use a local remap table, whose sole
purpose is to help initialize its dispatch table.  The local remap table
and the global one are always different, as they use different
glapidispatch.h.  But the dispatch tables initialized by both remap
tables are always compatible with glapi (libGL.so).

Finally, the semantics of one_time_init are changed to per-api one-time
initialization.
2010-11-02 14:43:35 +08:00
Chia-I Wu fdede1efaa mesa: Select FEATURE_remap_table when multiple APIs are enabled.
Core mesa should query glapi for the positions of the functions in
_glapi_table when multiple APIs are supported.  It does not know which
glapitable.h glapi used.
2010-11-02 14:17:56 +08:00
Tom Stellard 6b999c89ce r300/compiler: Don't track readers into an IF block.
This makes rc_get_readers_normal() more conservative than it needs to be,
but it fixes some incorrect behavior in the optimization passes.
2010-11-01 22:06:20 -07:00
Chia-I Wu ad00a92ee7 egl: Rework _eglGetSearchPath.
So that the directory part of EGL_DRIVER, if exists, is prepended to the
search path.  This commit also adds a sanity check to _eglLog.
2010-11-02 01:37:16 +08:00
José Fonseca 583e41855b scons: Disable python state tracker when swig is not present. 2010-11-01 15:27:34 +00:00
José Fonseca 0fd41d236f scons: Restore x11 tool behavior for backwards compatability. 2010-11-01 14:37:18 +00:00
José Fonseca ab9ca6caa8 scons: Some pipe drivers are not portable for MSVC 2010-11-01 14:24:08 +00:00
José Fonseca f9156ebcc4 scons: Fix MinGW cross-compilation. 2010-11-01 13:56:16 +00:00
José Fonseca 601498ae73 scons: Revamp how to specify targets to build.
Use scons target and dependency system instead of ad-hoc options.

Now is simply a matter of naming what to build. For example:

  scons libgl-xlib

  scons libgl-gdi

  scons graw-progs

  scons llvmpipe

and so on. And there is also the possibility of scepcified subdirs, e.g.

  scons src/gallium/drivers

If nothing is specified then everything will be build.

There might be some rough corners over the next days. Please bare with me.
2010-11-01 13:30:22 +00:00
Francisco Jerez a84bd587c6 dri/nouveau: Re-emit the BO state when coming back from a software fallback. 2010-10-31 22:07:38 +01:00
Francisco Jerez 4a282629c2 dri/nouveau: Validate the framebuffer state on read buffer changes. 2010-10-31 22:07:26 +01:00
Francisco Jerez 453b718552 dri/nouveau: Fix type promotion issue on 32bit platforms.
Fixes some VTX protection errors introduced by e89af20926.
2010-10-31 22:07:10 +01:00