summaryrefslogtreecommitdiffstats
path: root/src/glx
Commit message (Collapse)AuthorAgeFilesLines
* glx: MakeCurrent fixes.Thomas Hellstrom2009-04-022-9/+44
| | | | | | | | | | 1) If MakeContextCurrent is called with (NULL, None, None), Don't send the request to the X server if the current context is direct. 2) Return BadMatch in some error cases according to the glx spec. 3) If MakeContextCurrent is called for a context which is current in another thread, return BadAccess according to the glx spec. Signed-off-by: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
* Fix compiling indirect.c when GLX_DIRECT_RENDERING is not definedJeremy Huddleston2009-03-311-0/+60
| | | | (cherry picked from commit b65bc1b6cb72df950c2e26446936804dfcdc432c)
* define __builtin_expect for non-gcc compilers in two more glx filesAlan Coopersmith2009-03-252-0/+8
| | | | Signed-off-by: Alan Coopersmith <[email protected]>
* Revert "dri2: Avoid round-tripping on DRI2GetBuffers for the same set of ↵Michel Dänzer2009-03-252-53/+0
| | | | | | | | | | | | | | buffers." This scheme breaks when the display connection doesn't receive ConfigureNotify events. This caused reporoducible problems (cropped / misplaced output) when starting a 3D application in a guest operating system in VMware Workstation. This reverts commit dd1c68f15123a889a3ce9d2afe724e272d163e32. Conflicts: src/glx/x11/dri2_glx.c
* Fix DRI2 accelerated EXT_texture_from_pixmap with GL_RGB format.Eric Anholt2009-03-203-5/+33
| | | | | | | | | | | | | | This requires upgrading the interface so that the argument to glXBindTexImageEXT isn't just dropped on the floor. Note that this only fixes the accelerated path on Intel, as Mesa's texture format support is missing x8r8g8b8 support (right now, GL_RGB textures get uploaded as a8r8gb8, but in this case we're not doing the upload so we can't really work around it that way). Fixes bugs with compositors trying to use shaders that use alpha channels, on windows without a valid alpha channel. Bug #19910 and likely others as well. Reviewed-by: Ian Romanick <[email protected]>
* regenerate glapiRoland Scheidegger2009-03-124-0/+45
|
* mesa: Resurrect SPARC asm code.David S. Miller2009-02-261-86/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This rewrites the sparc GLAPI code so that it's PIC friendly and works with all of the TLS/PTHREADS/64-bit/32-bit combinations properly. As a result we can turn SPARC asm back on. Currently it's only enabled on Linux, as that's the only place where I can test this stuff out. For the moment the cliptest SPARC asm routines are disabled as they are non-working. The problem is that they use register %g7 as a temporary which is where the threading libraries store the thread pointer on SPARC. I will fix that code up in a future change as it's a pretty important routine to optimize. Like x86 we do the runtime patch as a pthread once-invoked initializer in init_glapi_relocs(). Unlike x86, however, our GLAPI stubs on SPARC are just two instruction sequences that branch to a trampoline and put the GLAPI offset into a register. The trampoline is what we run-time patch. The stubs thus all look like: glFoo: ba __glapi_sparc_foo_stub sethi GLAPI_OFFSET(glFOO) * PTR_SIZE, %g3 This actually makes generate_entrypoint() a lot simpler on SPARC. For this case in generate_entrypoint() we generate stubs using a 'call' instead of the 'ba' above to make sure it can reach. In order to get a proper tail call going here, in the unpatched case, we do several tricks. To get the current PC, for example, we save the return address register into a temporary, do a call, save the return address register written by the call to another temporary, then restore the original return address register value. This is to avoid having to allocate a stack frame. This is necessary for PIC address formation. This new GLAPI scheme lets us get rid of the ugly SPARC GLAPI hacks in __glXInitialize() and one_time_init(). Signed-off-by: David S. Miller <[email protected]>
* glx: add support for a reallyFlush() function before swap occurs.Alan Hourihane2009-02-233-0/+27
|
* dri2: support glXWaitX & glXWaitGL by using fake front buffer.Alan Hourihane2009-02-164-6/+81
|
* dri2: Don't crash if the server returns more buffers than expected.Eric Anholt2009-02-101-1/+1
|
* dri2: Initialize variables for the getbuffers round-trip reduction.Eric Anholt2009-02-101-0/+2
| | | | Missed setting the initial values which usually didn't hurt at runtime.
* mesa: merge gallium-0.2 into gallium-master-mergeBrian Paul2009-02-096-48/+8
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Merge commit 'origin/gallium-0.2' into gallium-master-merge Conflicts: Makefile docs/relnotes-7.4.html docs/relnotes.html src/mesa/drivers/dri/i965/brw_wm.h src/mesa/main/imports.c src/mesa/main/mtypes.h src/mesa/main/texcompress.c src/mesa/main/texenvprogram.c src/mesa/main/version.h src/mesa/vbo/vbo_exec_api.c src/mesa/vbo/vbo_save_draw.c
| * Merge commit 'origin/master' into gallium-0.2Alan Hourihane2009-01-222-24/+32
| |\ | | | | | | | | | | | | | | | | | | Conflicts: windows/VC8/mesa/osmesa/osmesa.vcproj windows/VC8/progs/demos/gears.vcproj windows/VC8/progs/progs.sln
| * \ Merge commit 'origin/master' into gallium-0.2Alan Hourihane2009-01-143-8/+7
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: docs/install.html docs/relnotes-7.3.html src/mesa/shader/slang/slang_codegen.c src/mesa/shader/slang/slang_compile.c src/mesa/shader/slang/slang_emit.c src/mesa/shader/slang/slang_preprocess.c src/mesa/shader/slang/slang_preprocess.h
| * \ \ Merge commit 'origin/master' into gallium-0.2Alan Hourihane2008-12-151-6/+4
| |\ \ \
| * \ \ \ Merge commit 'origin/master' into gallium-0.2Alan Hourihane2008-12-081-1/+0
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: progs/glsl/Makefile
| * \ \ \ \ Merge commit 'origin/master' into gallium-0.2Alan Hourihane2008-11-285-23/+163
| |\ \ \ \ \
| * \ \ \ \ \ Merge commit 'origin/master' into gallium-0.2Brian Paul2008-11-241-0/+1
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: progs/glsl/Makefile
| * \ \ \ \ \ \ Merge commit 'origin/master' into gallium-0.2Keith Whitwell2008-11-154-2/+13
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/mesa/shader/prog_print.c
| * \ \ \ \ \ \ \ Merge commit 'origin/master' into gallium-0.2Brian Paul2008-11-1144-182/+118
| |\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/mesa/shader/prog_execute.c src/mesa/shader/slang/library/slang_vertex_builtin_gc.h
| * \ \ \ \ \ \ \ \ Merge commit 'origin/master' into gallium-0.2Alan Hourihane2008-10-271-1/+1
| |\ \ \ \ \ \ \ \ \
| * | | | | | | | | | Update DRI2 implementation according to new specification.Kristian Høgsberg2008-10-157-69/+101
| | | | | | | | | | |
| * | | | | | | | | | Revert pointless reindents to avoid merge conflicts.Kristian Høgsberg2008-10-157-3019/+2893
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Why are we reindenting code that's work in progress...
| * | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs glxclient.hRALOVICH, Kristóf2008-10-151-173/+188
| | | | | | | | | | |
| * | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs glcontextmodes.hRALOVICH, Kristóf2008-10-151-15/+15
| | | | | | | | | | |
| * | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs glxextensions.cRALOVICH, Kristóf2008-10-151-178/+183
| | | | | | | | | | |
| * | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs glxextensions.hRALOVICH, Kristóf2008-10-151-24/+32
| | | | | | | | | | |
| * | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs xfont.cRALOVICH, Kristóf2008-10-151-211/+212
| | | | | | | | | | |
| * | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs xf86dristr.hRALOVICH, Kristóf2008-10-151-207/+232
| | | | | | | | | | |
| * | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs XF86dri.cRALOVICH, Kristóf2008-10-151-461/+493
| | | | | | | | | | |
| * | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs xf86dri.hRALOVICH, Kristóf2008-10-151-52/+53
| | | | | | | | | | |
| * | | | | | | | | | glx: kill old K&R syntax in XF86dri.cRALOVICH, Kristóf2008-10-151-63/+15
| | | | | | | | | | |
| * | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs vertarr.cRALOVICH, Kristóf2008-10-151-103/+118
| | | | | | | | | | |
| * | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs singlepix.cRALOVICH, Kristóf2008-10-151-138/+145
| | | | | | | | | | |
| * | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs single2.cRALOVICH, Kristóf2008-10-151-681/+718
| | | | | | | | | | |
| * | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs renderpix.cRALOVICH, Kristóf2008-10-151-102/+111
| | | | | | | | | | |
| * | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs render2.cRALOVICH, Kristóf2008-10-151-272/+296
| | | | | | | | | | |
| * | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs pixelstore.cRALOVICH, Kristóf2008-10-151-254/+271
| | | | | | | | | | |
| * | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs pixel.cRALOVICH, Kristóf2008-10-151-349/+373
| | | | | | | | | | |
| * | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs packsingle.hRALOVICH, Kristóf2008-10-151-107/+107
| | | | | | | | | | |
| * | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs packrender.hRALOVICH, Kristóf2008-10-151-121/+121
| | | | | | | | | | |
| * | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs indirect_window_pos.cRALOVICH, Kristóf2008-10-151-28/+42
| | | | | | | | | | |
| * | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs indirect_vertex_program.cRALOVICH, Kristóf2008-10-151-159/+169
| | | | | | | | | | |
| * | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs indirect_vertex_array_priv.hRALOVICH, Kristóf2008-10-151-53/+56
| | | | | | | | | | |
| * | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs indirect_vertex_array.hRALOVICH, Kristóf2008-10-151-22/+29
| | | | | | | | | | |
| * | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs indirect_vertex_array.cRALOVICH, Kristóf2008-10-151-1344/+1454
| | | | | | | | | | |
| * | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs indirect_transpose_matrix.cRALOVICH, Kristóf2008-10-151-28/+30
| | | | | | | | | | |
| * | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs indirect_texture_compression.cRALOVICH, Kristóf2008-10-151-255/+251
| | | | | | | | | | |
| * | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs glx_query.cRALOVICH, Kristóf2008-10-151-36/+37
| | | | | | | | | | |
| * | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs glx_pbuffer.cRALOVICH, Kristóf2008-10-151-193/+191
| | | | | | | | | | |