summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2009-02-26mesa: Resurrect SPARC asm code.David S. Miller
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 <davem@davemloft.net>
2009-02-26intel: Revert disable of accelerated Bitmap, which slipped in with spans stuff.Eric Anholt
2009-02-26Fix "cast to pointer from integer of different size"Tomas Carnecky
The script generates code like: pixels = (const GLvoid *) (ptr_is_null != 0) ? NULL : (pc + 80); which causes the above mentioned warning. Add parenthesis around the whole expression to fix it. Signed-off-by: Tomas Carnecky <tom@dbservice.com>
2009-02-26i965: fix for RHW workaroundXiang, Haihao
It is possible that an object whose vertices all are outside of a view plane is passed to clip thread due to the RHW workaround. This object should be rejected by clip thread. Fix bug #19879
2009-02-26intel: Disable creating DRI2 FBconfigs with depth size != color size.Eric Anholt
While it's a nice idea to be able to allow clients to choose a smaller (or bigger for 16bpp screens!) depth size, right now DRI2 hands back a buffer with a size that matches the drawable, rather than being based off of the visual. This led to problems in readback as parts of the driver disagreed on what format the depth buffer was really in. Fixes the remainder of bug #19447.
2009-02-26intel: Add span code for z24 without stencil.Eric Anholt
It seems that in this case the Mesa code is handing us x8z24 values instead of z24s8 values, so we need to not do the rotation. Fixes half of OGLconform depthrange.c. Bug #19447.
2009-02-25intel: make template wrappers for the spans templates.Eric Anholt
This is insanity, but so is copying the same blocks containing the actual interesting code in the file three times each for the different tile formats.
2009-02-25intel: Fix up x8r8g8b8 renderbuffer format so that alpha=1 spans code happens.Eric Anholt
I was lured into a false sense of security by the fact that the spans code was already there, and a bunch of tests didn't catch the problem. oglconform's mask.c did, though. Bug #19970.
2009-02-25i965: Rename CMD_CONST_BUFFER_STATE to the CS_URB_STATE used in the docs.Eric Anholt
2009-02-25R300: Add support for RS600 chipsAlex Deucher
2009-02-25nouveau: nv04-nv40 texture transfer.Younes Manton
2009-02-25g3dvl: Update winsys stuff.Younes Manton
2009-02-25egl: remove compiler flags from CFLAGSBrian Paul
The incoming CFLAGS already has -fPIC and -Wall. Don't want -g here either.
2009-02-25egl: use new EGL_LIB_DEPS to pass library dependencies to mklib when ↵Brian Paul
building libEGL EGL_LIB_DEPS may need fine-tuning for some platforms. It's only defined in configs/default ATM.
2009-02-25egl: add comment/reminder to fix the CFLAGS in this MakefileBrian Paul
2009-02-25gallium: Add support for BSD operating systems, tested with FreeBSDBenjamin Close
BSD supports pipe in the same way as linux hence options which are safe for linux are also safe for BSD. Define PIPE_OS_BSD in include/pipe/p_config.h and adjust the defines to make use of it. Also define MAP_ANONYMOUS for BSD systems which use MAP_ANON Signed-off-by: Benjamin Close <Benjamin.Close@clearchain.com>
2009-02-25gallium: Fix build when exiting CFLAGS contains a path with different gl.hBenjamin Close
If a path is in CFLAGS when building and that path contains gl.h then the wrong gl.h is used when building. This can lead to very confusing errors. The solution is rather than postpend the CFLAGS we prepend the paths as expected allowing compilation to occur as intended Signed-off-by: Benjamin Close <Benjamin.Close@clearchain.com>
2009-02-25egl: Use -dlopen rather than -dl which is non portableBenjamin Close
Signed-off-by: Benjamin Close <Benjamin.Close@clearchain.com>
2009-02-24softpipe: minor code simplification for face/zslice offset calculationBrian Paul
2009-02-24cell: overhaul cell teximage codeBrian Paul
Updated to use the new pipe_transfer functions, etc. Texturing is working again. Though there's some bugs in mipmap texturing but I believe those predate the pipe_transfer changes.
2009-02-24cell: don't need tex transfer for drawing surfacesBrian Paul
2009-02-25intel: Adopt to the new drm_api.hJakob Bornecrantz
2009-02-25i915: Enable winsys to get buffer from textureJakob Bornecrantz
2009-02-25st/drm: Bring drm_api.h up to date with latest changesJakob Bornecrantz
2009-02-25i915: Fix some warningsJakob Bornecrantz
2009-02-25i915: Clean up i915_winsys.h a bitJakob Bornecrantz
2009-02-24mesa: fix merge conflict (in comment)Brian Paul
2009-02-24glsl: silence warningBrian Paul
2009-02-24mesa: use quotes for #includeBrian Paul
2009-02-24pipebuffer: Allow asymmetric guard sizes for under/overflow detection.José Fonseca
2009-02-24util: Don't use 0-sized arrays.José Fonseca
Not supported by MSVC.
2009-02-24softpipe: minor code movement in softpipe_get_tex_transfer()Brian Paul
2009-02-24cell: added null ptr check in xm_flush_frontbuffer()Brian Paul
2009-02-24st/wgl: silence some debugKeith Whitwell
2009-02-24mesa/st: support l8 as well as i8 in bitmap codeKeith Whitwell
Also don't send the partial program fragment down to hardware -- the program will never be used in that form.
2009-02-24gallium: Add pipe_buffer_write/read inlines.José Fonseca
Saves code, and will simplify future interface changes.
2009-02-24mesa: List new source file in SConscript.José Fonseca
2009-02-24pipebuffer: Remove unused var.José Fonseca
2009-02-23glsl: yet another swizzled expression fixBrian Paul
This fixes swizzled conditional expressions such "(b ? p : q).x"
2009-02-23gallium: include st_cb_viewport.h to silence warningBrian Paul
2009-02-23gallium: fix build breakage in st_cb_viewport.cBrian Paul
2009-02-23glsl: fix another swizzle-related bugBrian Paul
This fixes the case of "infinitely" nested swizzles such as EXPR.wzyx.yxwz.xxyz This doesn't appear in typical shaders but with function inlining and the compiler's internal use of swizzles it can happen. New glean glsl1 test case added for this.
2009-02-23mesa: only call update_buffer when it's availableAlan Hourihane
2009-02-23gallium: add winsys interface for viewport changes to support DRI2Alan Hourihane
2009-02-23glx: add support for a reallyFlush() function before swap occurs.Alan Hourihane
2009-02-23mesa: include compiler.h, fixes cell build, remove Haiku special caseBrian Paul
2009-02-23i965: fix line stipple fallback for GL_LINE_STRIP primitivesRobert Ellison
When doing line stipple, the stipple count resets on each line segment, unless the primitive is a GL_LINE_LOOP or a GL_LINE_STRIP. The existing code correctly identifies the need for a software fallback to handle conformant line stipple on GL_LINE_LOOP primitives, but neglects to make the same assessment on GL_LINE_STRIP primitives. This fixes it so they match.
2009-02-23Merge commit 'origin/gallium-0.1'José Fonseca
Conflicts: src/gallium/auxiliary/pipebuffer/pb_bufmgr_mm.c src/gallium/auxiliary/util/u_tile.c
2009-02-23mesa: fix _glxapi_get_proc_address() for mangled namesTom Fogal
2009-02-23gallium: Install winsys/drm to DESTDIR rather than /Joel Bosveld