summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* glsl: move predefined shader input/output info/code to slang_builtin.cBrian Paul2009-08-124-103/+199
| | | | | This is a more logical place for this code. Also add some functions for querying vertex shader input names, types, etc.
* vbo: Avoid extra validation of DrawElements.Eric Anholt2009-08-1217-117/+156
| | | | | | | | | | | | | This saves mapping the index buffer to get a bounds on the indices that drivers just drop on the floor in the VBO case (cache win), saves a bonus walk of the indices in the CheckArrayBounds case, and other miscellaneous validation. On intel it's a particularly a large win (50-100% in my app) because even though we let the indices stay in both CPU and GPU caches, we still end up waiting for the GPU to be done with the buffer before reading from it. Drivers that want the min/max_index fields must now check index_bounds_valid and use vbo_get_minmax_index before using them.
* radeon: Minor warnings cleanup.Eric Anholt2009-08-125-7/+16
|
* i965: Use _MaxElement instead of index-calculated min/max for VBO bounds.Eric Anholt2009-08-121-2/+3
|
* radeon: Add protection against recursive DRM locking.Pauli Nieminen2009-08-124-3/+64
| | | | | | | | | | Reference counting protects DRM lock call from recursive locking that would cause hang. Code also adds optional debugging output for recursive call that is compiled only if NDEBUG is not defined. This code is not 100% thread safe because mesa doesn't include increment and test atomic operation. There is built-in gcc functions but they are only available from gcc 4.2.
* st/xorg: Acquire/drop DRM master in order to work with multiple servers.Michel Dänzer2009-08-121-0/+15
|
* gallium/glx/xlib: main/ prefix on Mesa includes, remove -I$(TOP)/src/mesa/main/Brian Paul2009-08-124-10/+9
|
* gallium/glx/xlib: updated commentsBrian Paul2009-08-123-4/+2
|
* gallium/glx/xlib: delete fakeglx.hBrian Paul2009-08-121-41/+0
|
* gallium/glx/xlib: rename fakeglx.c to glx_api.cBrian Paul2009-08-123-2/+2
|
* gallium/glx/xlib: delete glxapi.hBrian Paul2009-08-121-36/+0
|
* gallium/glx/xlib: rename fakeglx_fonts.c to glx_usefont.cBrian Paul2009-08-123-2/+2
|
* gallium/glx/xlib: rename glxapi.c to glx_getproc.cBrian Paul2009-08-123-2/+3
|
* gallium/glx/xlib: don't include fakeglx.hBrian Paul2009-08-121-1/+0
|
* gallium/glx/xlib: overhaul and simplification of the Gallium Xlib-based GLXBrian Paul2009-08-124-1574/+280
| | | | | | | | | 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.
* r600: A shader is bound that exports Z as a float into Red channelCooper Yuan2009-08-122-0/+4
|
* egl: Use _eglAddAtExitCall to free thread infos and displays.Chia-I Wu2009-08-112-3/+4
| | | | | | | Thread infos and displays are usually not freed by applications. This commit add atexit calls to free them. Signed-off-by: Chia-I Wu <[email protected]>
* egl: Add _eglAddAtExitCall.Chia-I Wu2009-08-112-0/+49
| | | | | | | Add a convenient wrapper to register atexit calls. Add mutex to _eglGlobal along the way. Signed-off-by: Chia-I Wu <[email protected]>
* egl: Make _eglGlobal initialize statically.Chia-I Wu2009-08-113-37/+6
| | | | | | | Now that display and surface hash tables are moved out, _eglGlobal can be initialized statically. Signed-off-by: Chia-I Wu <[email protected]>
* egl: Implement _eglFiniDisplay.Chia-I Wu2009-08-111-1/+17
| | | | | | | _eglFiniDisplay is called at exit time to free allocated displays. It is, however, not used right now. Signed-off-by: Chia-I Wu <[email protected]>
* egl: Make display and surface hash tables local.Chia-I Wu2009-08-114-22/+78
| | | | | | | Move display and surface hash tables to egldisplay.c, and have them initialized on demand. Signed-off-by: Chia-I Wu <[email protected]>
* egl: Initialize current thread management on demand.Chia-I Wu2009-08-113-30/+19
| | | | | | | | | | 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 <[email protected]>
* egl: Destroy eglThreadInfo on thread exit.Chia-I Wu2009-08-111-16/+73
| | | | | | | | | | 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 <[email protected]>
* egl: Add eglmutex.h.Chia-I Wu2009-08-112-0/+53
| | | | | | | The implementation uses pthread mutex when available. Otherwise, it is no-op. Signed-off-by: Chia-I Wu <[email protected]>
* glx: fix signedness warningRALOVICH, Kristóf2009-08-111-1/+1
|
* mesa: handle glDrawPixels images which are larger than max rect texture sizeBrian Paul2009-08-111-3/+47
|
* mesa: added _mesa_meta_draw_pixels()Brian Paul2009-08-112-1/+188
|
* mesa: added META_FOG and optimize some meta_begin/end() codeBrian Paul2009-08-112-28/+36
|
* gallium/trace: remove stray semicolonsBrian Paul2009-08-111-2/+2
|
* gallium/xlib: add missing tex_usage parameterBrian Paul2009-08-111-0/+1
|
* gallium/egl: add missing tex_usage parameterBrian Paul2009-08-111-0/+1
|
* gallium/xlib: add missing tex_usage parameterBrian Paul2009-08-111-0/+1
|
* gallium/identity: remove stray semicolonsBrian Paul2009-08-111-2/+2
|
* r600: use the drm ioctls for swap and texture uploadAlex Deucher2009-08-112-31/+27
| | | | NOTE: THIS REQUIRES AN UPDATED DRM!
* i915g: Reduce max relocsJakob Bornecrantz2009-08-121-1/+1
|
* i915g: Check relocs as wellJakob Bornecrantz2009-08-121-2/+2
|
* i915g: Implement surface_buffer_create for softpipeJakob Bornecrantz2009-08-111-2/+38
| | | | In order to run softpipe on st/xorg we need this function
* gallium: Add texture usage information to surface_buffer_createJakob Bornecrantz2009-08-117-2/+13
| | | | | | 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.
* mesa/glapi: regenerated files from gl_API.xmlBrian Paul2009-08-112-15/+63
|
* gallium: fix debug_printf() format stringBrian Paul2009-08-111-1/+1
|
* glut: fix incorrect Vista maximisation size due to WM_GETMINMAXINFO handlingBrian Paul2009-08-111-0/+5
| | | | See bug 23182.
* mesa: remove _mesa_set_vp_override() from _mesa_Bitmap()Brian Paul2009-08-111-12/+4
| | | | | | | 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.
* r300g: Fix up remaining VAP_CNTL_STATUS writes for big endian.Michel Dänzer2009-08-111-2/+10
|
* r300g: Emit relocations for pitch registers.Michel Dänzer2009-08-112-7/+12
| | | | Fixes CS failures with tiling enabled kernels.
* r300g: a typo of debug messageCooper Yuan2009-08-111-1/+1
|
* r600: update num of interp if posizition is usedCooper Yuan2009-08-111-8/+10
|
* demos: Fix the VBO usage in glsl/multitex.Eric Anholt2009-08-101-3/+3
| | | | | | | 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
* intel: use new _mesa_meta_copy_pixels() functionBrian Paul2009-08-101-165/+2
| | | | glCopyPixels() no longer hits a software fallback when zooming, blending, etc.
* mesa: save/restore texture matrix in meta codeBrian Paul2009-08-101-1/+20
| | | | Also, save/restore viewport and texture state in _mesa_meta_copy_pixels()
* mesa: for meta blit, check max texture size, use glCopyTexSubImage2D() when ↵Brian Paul2009-08-101-2/+27
| | | | possible