Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | mesa: Resurrect SPARC asm code. | David S. Miller | 2009-02-26 | 1 | -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 Hourihane | 2009-02-23 | 3 | -0/+27 |
| | |||||
* | dri2: support glXWaitX & glXWaitGL by using fake front buffer. | Alan Hourihane | 2009-02-16 | 4 | -6/+81 |
| | |||||
* | dri2: Don't crash if the server returns more buffers than expected. | Eric Anholt | 2009-02-10 | 1 | -1/+1 |
| | |||||
* | dri2: Initialize variables for the getbuffers round-trip reduction. | Eric Anholt | 2009-02-10 | 1 | -0/+2 |
| | | | | Missed setting the initial values which usually didn't hurt at runtime. | ||||
* | mesa: merge gallium-0.2 into gallium-master-merge | Brian Paul | 2009-02-09 | 6 | -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.2 | Alan Hourihane | 2009-01-22 | 2 | -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.2 | Alan Hourihane | 2009-01-14 | 3 | -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.2 | Alan Hourihane | 2008-12-15 | 1 | -6/+4 |
| |\ \ \ | |||||
| * \ \ \ | Merge commit 'origin/master' into gallium-0.2 | Alan Hourihane | 2008-12-08 | 1 | -1/+0 |
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: progs/glsl/Makefile | ||||
| * \ \ \ \ | Merge commit 'origin/master' into gallium-0.2 | Alan Hourihane | 2008-11-28 | 5 | -23/+163 |
| |\ \ \ \ \ | |||||
| * \ \ \ \ \ | Merge commit 'origin/master' into gallium-0.2 | Brian Paul | 2008-11-24 | 1 | -0/+1 |
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: progs/glsl/Makefile | ||||
| * \ \ \ \ \ \ | Merge commit 'origin/master' into gallium-0.2 | Keith Whitwell | 2008-11-15 | 4 | -2/+13 |
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/mesa/shader/prog_print.c | ||||
| * \ \ \ \ \ \ \ | Merge commit 'origin/master' into gallium-0.2 | Brian Paul | 2008-11-11 | 44 | -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.2 | Alan Hourihane | 2008-10-27 | 1 | -1/+1 |
| |\ \ \ \ \ \ \ \ \ | |||||
| * | | | | | | | | | | Update DRI2 implementation according to new specification. | Kristian Høgsberg | 2008-10-15 | 7 | -69/+101 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | Revert pointless reindents to avoid merge conflicts. | Kristian Høgsberg | 2008-10-15 | 7 | -3019/+2893 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Why are we reindenting code that's work in progress... | ||||
| * | | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs glxclient.h | RALOVICH, Kristóf | 2008-10-15 | 1 | -173/+188 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs glcontextmodes.h | RALOVICH, Kristóf | 2008-10-15 | 1 | -15/+15 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs glxextensions.c | RALOVICH, Kristóf | 2008-10-15 | 1 | -178/+183 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs glxextensions.h | RALOVICH, Kristóf | 2008-10-15 | 1 | -24/+32 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs xfont.c | RALOVICH, Kristóf | 2008-10-15 | 1 | -211/+212 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs xf86dristr.h | RALOVICH, Kristóf | 2008-10-15 | 1 | -207/+232 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs XF86dri.c | RALOVICH, Kristóf | 2008-10-15 | 1 | -461/+493 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs xf86dri.h | RALOVICH, Kristóf | 2008-10-15 | 1 | -52/+53 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | glx: kill old K&R syntax in XF86dri.c | RALOVICH, Kristóf | 2008-10-15 | 1 | -63/+15 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs vertarr.c | RALOVICH, Kristóf | 2008-10-15 | 1 | -103/+118 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs singlepix.c | RALOVICH, Kristóf | 2008-10-15 | 1 | -138/+145 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs single2.c | RALOVICH, Kristóf | 2008-10-15 | 1 | -681/+718 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs renderpix.c | RALOVICH, Kristóf | 2008-10-15 | 1 | -102/+111 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs render2.c | RALOVICH, Kristóf | 2008-10-15 | 1 | -272/+296 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs pixelstore.c | RALOVICH, Kristóf | 2008-10-15 | 1 | -254/+271 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs pixel.c | RALOVICH, Kristóf | 2008-10-15 | 1 | -349/+373 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs packsingle.h | RALOVICH, Kristóf | 2008-10-15 | 1 | -107/+107 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs packrender.h | RALOVICH, Kristóf | 2008-10-15 | 1 | -121/+121 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs indirect_window_pos.c | RALOVICH, Kristóf | 2008-10-15 | 1 | -28/+42 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs indirect_vertex_program.c | RALOVICH, Kristóf | 2008-10-15 | 1 | -159/+169 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs indirect_vertex_array_priv.h | RALOVICH, Kristóf | 2008-10-15 | 1 | -53/+56 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs indirect_vertex_array.h | RALOVICH, Kristóf | 2008-10-15 | 1 | -22/+29 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs indirect_vertex_array.c | RALOVICH, Kristóf | 2008-10-15 | 1 | -1344/+1454 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs indirect_transpose_matrix.c | RALOVICH, Kristóf | 2008-10-15 | 1 | -28/+30 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs indirect_texture_compression.c | RALOVICH, Kristóf | 2008-10-15 | 1 | -255/+251 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs glx_query.c | RALOVICH, Kristóf | 2008-10-15 | 1 | -36/+37 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs glx_pbuffer.c | RALOVICH, Kristóf | 2008-10-15 | 1 | -193/+191 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs glxhash.c | RALOVICH, Kristóf | 2008-10-15 | 1 | -252/+299 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs glxhash.h | RALOVICH, Kristóf | 2008-10-15 | 1 | -6/+10 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs glxext.c | RALOVICH, Kristóf | 2008-10-15 | 1 | -689/+704 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs glxcurrent.c | RALOVICH, Kristóf | 2008-10-15 | 1 | -265/+284 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs glxcmds.c | RALOVICH, Kristóf | 2008-10-15 | 1 | -1564/+1642 |
| | | | | | | | | | | | |||||
| * | | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs glcontextmodes.c | RALOVICH, Kristóf | 2008-10-15 | 1 | -312/+306 |
| | | | | | | | | | | |