mesa.git
15 years agomesa: replace old prog_instruction::Sampler field with Aux field
Brian Paul [Tue, 24 Feb 2009 00:50:55 +0000 (17:50 -0700)]
mesa: replace old prog_instruction::Sampler field with Aux field

The i965 driver needs an extra instruction field for color output information.
It was using the Sampler field for this.  Use the Aux field instead.  This
will probaby be revisited at some point...

15 years agoi965: whitespace/indentation fixes
Brian Paul [Mon, 23 Feb 2009 23:39:22 +0000 (16:39 -0700)]
i965: whitespace/indentation fixes

15 years agomesa: Resurrect SPARC asm code.
David S. Miller [Thu, 26 Feb 2009 13:35:15 +0000 (05:35 -0800)]
mesa: Resurrect SPARC asm code.

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>
15 years agointel: Revert disable of accelerated Bitmap, which slipped in with spans stuff.
Eric Anholt [Thu, 26 Feb 2009 19:45:07 +0000 (11:45 -0800)]
intel: Revert disable of accelerated Bitmap, which slipped in with spans stuff.

15 years agoFix "cast to pointer from integer of different size"
Tomas Carnecky [Thu, 26 Feb 2009 06:31:35 +0000 (07:31 +0100)]
Fix "cast to pointer from integer of different size"

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>
15 years agoi965: fix for RHW workaround
Xiang, Haihao [Thu, 26 Feb 2009 09:31:01 +0000 (17:31 +0800)]
i965: fix for RHW workaround

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

15 years agointel: Disable creating DRI2 FBconfigs with depth size != color size.
Eric Anholt [Thu, 26 Feb 2009 08:18:46 +0000 (00:18 -0800)]
intel: Disable creating DRI2 FBconfigs with depth size != color size.

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.

15 years agointel: Add span code for z24 without stencil.
Eric Anholt [Thu, 26 Feb 2009 07:58:38 +0000 (23:58 -0800)]
intel: Add span code for z24 without stencil.

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.

15 years agointel: make template wrappers for the spans templates.
Eric Anholt [Thu, 26 Feb 2009 07:54:40 +0000 (23:54 -0800)]
intel: make template wrappers for the spans templates.

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.

15 years agointel: Fix up x8r8g8b8 renderbuffer format so that alpha=1 spans code happens.
Eric Anholt [Thu, 26 Feb 2009 06:54:51 +0000 (22:54 -0800)]
intel: Fix up x8r8g8b8 renderbuffer format so that alpha=1 spans code happens.

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.

15 years agoautoconf: Fixup EGL build
Dan Nicholson [Thu, 26 Feb 2009 01:45:34 +0000 (17:45 -0800)]
autoconf: Fixup EGL build

This gets the needed libraries pulled in for libEGL for autoconf.

15 years agoi965: Rename CMD_CONST_BUFFER_STATE to the CS_URB_STATE used in the docs.
Eric Anholt [Wed, 25 Feb 2009 20:41:25 +0000 (12:41 -0800)]
i965: Rename CMD_CONST_BUFFER_STATE to the CS_URB_STATE used in the docs.

15 years agoR300: Add support for RS600 chips
Alex Deucher [Wed, 25 Feb 2009 22:30:56 +0000 (17:30 -0500)]
R300: Add support for RS600 chips

15 years agonouveau: nv04-nv40 texture transfer.
Younes Manton [Wed, 25 Feb 2009 17:55:26 +0000 (12:55 -0500)]
nouveau: nv04-nv40 texture transfer.

15 years agog3dvl: Update winsys stuff.
Younes Manton [Fri, 20 Feb 2009 19:51:31 +0000 (14:51 -0500)]
g3dvl: Update winsys stuff.

15 years agoegl: remove compiler flags from CFLAGS
Brian Paul [Wed, 25 Feb 2009 15:45:08 +0000 (08:45 -0700)]
egl: remove compiler flags from CFLAGS

The incoming CFLAGS already has -fPIC and -Wall.  Don't want -g here either.

15 years agoegl: use new EGL_LIB_DEPS to pass library dependencies to mklib when building libEGL
Brian Paul [Wed, 25 Feb 2009 15:41:13 +0000 (08:41 -0700)]
egl: use new EGL_LIB_DEPS to pass library dependencies to mklib when building libEGL

EGL_LIB_DEPS may need fine-tuning for some platforms.  It's only defined
in configs/default ATM.

15 years agoegl: add comment/reminder to fix the CFLAGS in this Makefile
Brian Paul [Wed, 25 Feb 2009 14:58:17 +0000 (07:58 -0700)]
egl: add comment/reminder to fix the CFLAGS in this Makefile

15 years agogallium: Add support for BSD operating systems, tested with FreeBSD
Benjamin Close [Wed, 25 Feb 2009 04:51:10 +0000 (20:51 -0800)]
gallium: Add support for BSD operating systems, tested with FreeBSD

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>
15 years agogallium: Fix build when exiting CFLAGS contains a path with different gl.h
Benjamin Close [Wed, 25 Feb 2009 04:51:11 +0000 (20:51 -0800)]
gallium: Fix build when exiting CFLAGS contains a path with different gl.h

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>
15 years agoegl: Use -dlopen rather than -dl which is non portable
Benjamin Close [Wed, 25 Feb 2009 04:51:12 +0000 (20:51 -0800)]
egl: Use -dlopen rather than -dl which is non portable

Signed-off-by: Benjamin Close <Benjamin.Close@clearchain.com>
15 years agoegl: Allow compilation to succeed with FreeBSD
Benjamin Close [Wed, 25 Feb 2009 04:51:13 +0000 (20:51 -0800)]
egl: Allow compilation to succeed with FreeBSD

Signed-off-by: Benjamin Close <Benjamin.Close@clearchain.com>
15 years agosoftpipe: minor code simplification for face/zslice offset calculation
Brian Paul [Wed, 25 Feb 2009 04:01:07 +0000 (21:01 -0700)]
softpipe: minor code simplification for face/zslice offset calculation

15 years agocell: overhaul cell teximage code
Brian Paul [Wed, 25 Feb 2009 03:58:46 +0000 (20:58 -0700)]
cell: overhaul cell teximage code

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.

15 years agocell: don't need tex transfer for drawing surfaces
Brian Paul [Wed, 25 Feb 2009 03:10:36 +0000 (20:10 -0700)]
cell: don't need tex transfer for drawing surfaces

15 years agomesa: Build DRI by default on Linux/sparc
David S. Miller [Wed, 25 Feb 2009 03:06:05 +0000 (20:06 -0700)]
mesa: Build DRI by default on Linux/sparc

Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agointel: Adopt to the new drm_api.h
Jakob Bornecrantz [Wed, 25 Feb 2009 00:54:03 +0000 (01:54 +0100)]
intel: Adopt to the new drm_api.h

15 years agoi915: Enable winsys to get buffer from texture
Jakob Bornecrantz [Tue, 24 Feb 2009 22:22:34 +0000 (23:22 +0100)]
i915: Enable winsys to get buffer from texture

15 years agost/drm: Bring drm_api.h up to date with latest changes
Jakob Bornecrantz [Wed, 25 Feb 2009 00:52:38 +0000 (01:52 +0100)]
st/drm: Bring drm_api.h up to date with latest changes

15 years agoi915: Fix some warnings
Jakob Bornecrantz [Tue, 24 Feb 2009 22:58:11 +0000 (23:58 +0100)]
i915: Fix some warnings

15 years agoi915: Clean up i915_winsys.h a bit
Jakob Bornecrantz [Tue, 24 Feb 2009 22:55:03 +0000 (23:55 +0100)]
i915: Clean up i915_winsys.h a bit

15 years agomesa: fix merge conflict (in comment)
Brian Paul [Wed, 25 Feb 2009 00:53:39 +0000 (17:53 -0700)]
mesa: fix merge conflict (in comment)

15 years agomesa: added GLES 1/2 headers to tarball file list
Brian Paul [Wed, 25 Feb 2009 00:21:45 +0000 (17:21 -0700)]
mesa: added GLES 1/2 headers to tarball file list

15 years agomesa: add EGL headers to tarball list
Brian Paul [Tue, 24 Feb 2009 23:17:44 +0000 (16:17 -0700)]
mesa: add EGL headers to tarball list

15 years agomesa: add gallium and egl files to tarball list
Brian Paul [Tue, 24 Feb 2009 22:00:14 +0000 (15:00 -0700)]
mesa: add gallium and egl files to tarball list

15 years agoglsl: silence warning
Brian Paul [Tue, 24 Feb 2009 21:59:54 +0000 (14:59 -0700)]
glsl: silence warning

15 years agomesa: use quotes for #include
Brian Paul [Tue, 24 Feb 2009 21:30:51 +0000 (14:30 -0700)]
mesa: use quotes for #include

15 years agomesa: remove removed VMS files from Makefile
Brian Paul [Tue, 24 Feb 2009 21:29:05 +0000 (14:29 -0700)]
mesa: remove removed VMS files from Makefile

I'll help Jouk restore these someday if he's still maintaining VMS support...

15 years agomesa: s/sources/sources.mak/ in Makefile
Brian Paul [Tue, 24 Feb 2009 21:27:43 +0000 (14:27 -0700)]
mesa: s/sources/sources.mak/ in Makefile

15 years agotrivial: Add tri-viewport
Jakob Bornecrantz [Sat, 21 Feb 2009 10:58:48 +0000 (11:58 +0100)]
trivial: Add tri-viewport

15 years agotrivial: Fix indentation in tri
Jakob Bornecrantz [Sat, 21 Feb 2009 10:57:50 +0000 (11:57 +0100)]
trivial: Fix indentation in tri

15 years agopipebuffer: Allow asymmetric guard sizes for under/overflow detection.
José Fonseca [Tue, 24 Feb 2009 15:49:21 +0000 (15:49 +0000)]
pipebuffer: Allow asymmetric guard sizes for under/overflow detection.

15 years agoutil: Don't use 0-sized arrays.
José Fonseca [Tue, 24 Feb 2009 15:44:09 +0000 (15:44 +0000)]
util: Don't use 0-sized arrays.

Not supported by MSVC.

15 years agosoftpipe: minor code movement in softpipe_get_tex_transfer()
Brian Paul [Tue, 24 Feb 2009 15:33:50 +0000 (08:33 -0700)]
softpipe: minor code movement in softpipe_get_tex_transfer()

15 years agocell: added null ptr check in xm_flush_frontbuffer()
Brian Paul [Tue, 24 Feb 2009 03:23:00 +0000 (20:23 -0700)]
cell: added null ptr check in xm_flush_frontbuffer()

15 years agodemos: add some fflushes for windows
Keith Whitwell [Tue, 24 Feb 2009 12:02:24 +0000 (12:02 +0000)]
demos: add some fflushes for windows

15 years agost/wgl: silence some debug
Keith Whitwell [Tue, 24 Feb 2009 12:00:47 +0000 (12:00 +0000)]
st/wgl: silence some debug

15 years agomesa/st: support l8 as well as i8 in bitmap code
Keith Whitwell [Tue, 24 Feb 2009 11:58:58 +0000 (11:58 +0000)]
mesa/st: support l8 as well as i8 in bitmap code

Also don't send the partial program fragment down to hardware -- the
program will never be used in that form.

15 years agogallium: Add pipe_buffer_write/read inlines.
José Fonseca [Tue, 24 Feb 2009 11:30:25 +0000 (11:30 +0000)]
gallium: Add pipe_buffer_write/read inlines.

Saves code, and will simplify future interface changes.

15 years agomesa: List new source file in SConscript.
José Fonseca [Tue, 24 Feb 2009 11:29:33 +0000 (11:29 +0000)]
mesa: List new source file in SConscript.

15 years agopipebuffer: Remove unused var.
José Fonseca [Tue, 24 Feb 2009 11:22:24 +0000 (11:22 +0000)]
pipebuffer: Remove unused var.

15 years agoglsl: yet another swizzled expression fix
Brian Paul [Tue, 24 Feb 2009 00:43:43 +0000 (17:43 -0700)]
glsl: yet another swizzled expression fix

This fixes swizzled conditional expressions such "(b ? p : q).x"

15 years agogallium: include st_cb_viewport.h to silence warning
Brian Paul [Mon, 23 Feb 2009 22:07:31 +0000 (15:07 -0700)]
gallium: include st_cb_viewport.h to silence warning

15 years agogallium: fix build breakage in st_cb_viewport.c
Brian Paul [Mon, 23 Feb 2009 22:07:11 +0000 (15:07 -0700)]
gallium: fix build breakage in st_cb_viewport.c

15 years agoglsl: fix another swizzle-related bug
Brian Paul [Mon, 23 Feb 2009 20:10:55 +0000 (13:10 -0700)]
glsl: fix another swizzle-related bug

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.

15 years agomesa: only call update_buffer when it's available
Alan Hourihane [Fri, 20 Feb 2009 14:40:08 +0000 (14:40 +0000)]
mesa: only call update_buffer when it's available

15 years agogallium: add winsys interface for viewport changes to support DRI2
Alan Hourihane [Thu, 19 Feb 2009 18:33:15 +0000 (18:33 +0000)]
gallium: add winsys interface for viewport changes to support DRI2

15 years agoglx: add support for a reallyFlush() function before swap occurs.
Alan Hourihane [Thu, 19 Feb 2009 18:39:08 +0000 (18:39 +0000)]
glx: add support for a reallyFlush() function before swap occurs.

15 years agomesa: include compiler.h, fixes cell build, remove Haiku special case
Brian Paul [Mon, 23 Feb 2009 20:02:56 +0000 (13:02 -0700)]
mesa: include compiler.h, fixes cell build, remove Haiku special case

15 years agoi965: fix line stipple fallback for GL_LINE_STRIP primitives
Robert Ellison [Sat, 21 Feb 2009 00:04:15 +0000 (17:04 -0700)]
i965: fix line stipple fallback for GL_LINE_STRIP primitives

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.

15 years agoMerge commit 'origin/gallium-0.1'
José Fonseca [Mon, 23 Feb 2009 17:21:36 +0000 (17:21 +0000)]
Merge commit 'origin/gallium-0.1'

Conflicts:
src/gallium/auxiliary/pipebuffer/pb_bufmgr_mm.c
src/gallium/auxiliary/util/u_tile.c

15 years agomesa: fix _glxapi_get_proc_address() for mangled names
Tom Fogal [Mon, 23 Feb 2009 15:20:38 +0000 (08:20 -0700)]
mesa: fix _glxapi_get_proc_address() for mangled names

15 years agogallium: Install winsys/drm to DESTDIR rather than /
Joel Bosveld [Mon, 23 Feb 2009 15:19:14 +0000 (08:19 -0700)]
gallium: Install winsys/drm to DESTDIR rather than /

15 years agomesa: fixes for building on Haiku
Tomas Wilhelmsson [Mon, 23 Feb 2009 15:11:29 +0000 (08:11 -0700)]
mesa: fixes for building on Haiku

15 years agor300-gallium: Fix pasto and debug messages.
Corbin Simpson [Mon, 23 Feb 2009 13:04:17 +0000 (05:04 -0800)]
r300-gallium: Fix pasto and debug messages.

This could explain at least one kind of lockup. Yay?

15 years agor300-gallium: Cleanup some state emit, move vertex format state to r300_emit.
Corbin Simpson [Mon, 23 Feb 2009 12:48:42 +0000 (04:48 -0800)]
r300-gallium: Cleanup some state emit, move vertex format state to r300_emit.

No need to explicitly update derived state, as it will be done automatically.

15 years agogallium: Define PIPE_PRIM_MAX.
José Fonseca [Mon, 23 Feb 2009 12:53:09 +0000 (12:53 +0000)]
gallium: Define PIPE_PRIM_MAX.

15 years agor300-gallium: Fix a handful of compile warnings.
Corbin Simpson [Mon, 23 Feb 2009 12:36:41 +0000 (04:36 -0800)]
r300-gallium: Fix a handful of compile warnings.

Some harmless, some very dangerous.

15 years agor300-gallium: Decode passthrough shader for r300.
Corbin Simpson [Mon, 23 Feb 2009 12:25:29 +0000 (04:25 -0800)]
r300-gallium: Decode passthrough shader for r300.

Looks pretty sane.

15 years agor300-gallium: Finish VAP/VF setup.
Corbin Simpson [Mon, 23 Feb 2009 11:18:02 +0000 (03:18 -0800)]
r300-gallium: Finish VAP/VF setup.

Messy, messy.

15 years agor300-gallium: Fix BEGIN_CS size.
Corbin Simpson [Mon, 23 Feb 2009 11:16:46 +0000 (03:16 -0800)]
r300-gallium: Fix BEGIN_CS size.

15 years agowgl: Enable the use of Win32 threads.
José Fonseca [Mon, 23 Feb 2009 11:52:59 +0000 (11:52 +0000)]
wgl: Enable the use of Win32 threads.

15 years agomesa: Fix windows build.
José Fonseca [Mon, 23 Feb 2009 11:24:46 +0000 (11:24 +0000)]
mesa: Fix windows build.

15 years agor300-gallium: Add pipe_format translators and apply them
Joakim Sindholt [Sat, 21 Feb 2009 16:40:48 +0000 (17:40 +0100)]
r300-gallium: Add pipe_format translators and apply them

15 years agor300-gallium: Add all supported 2d texture formats
Joakim Sindholt [Sat, 21 Feb 2009 16:27:12 +0000 (17:27 +0100)]
r300-gallium: Add all supported 2d texture formats

15 years agor300-gallium: correct buffer stride calculation
Joakim Sindholt [Fri, 20 Feb 2009 02:53:20 +0000 (03:53 +0100)]
r300-gallium: correct buffer stride calculation

15 years agomesa: remove unneeded #include
Brian Paul [Sun, 22 Feb 2009 23:29:30 +0000 (16:29 -0700)]
mesa: remove unneeded #include

15 years agomesa: #include, misc clean-ups
Brian Paul [Sun, 22 Feb 2009 23:19:29 +0000 (16:19 -0700)]
mesa: #include, misc clean-ups

15 years agomesa: remove unneeded #includes
Brian Paul [Sun, 22 Feb 2009 23:18:38 +0000 (16:18 -0700)]
mesa: remove unneeded #includes

15 years agomesa: move a bunch of compiler-related stuff into new compiler.h header
Brian Paul [Sun, 22 Feb 2009 22:43:29 +0000 (15:43 -0700)]
mesa: move a bunch of compiler-related stuff into new compiler.h header

This trims down and cleans up imports.h and glheader.h quite a bit.

15 years agomesa: remove unused ENABLE_TEXGENx, ENABLE_TEXMATx flags
Brian Paul [Sun, 22 Feb 2009 21:27:21 +0000 (14:27 -0700)]
mesa: remove unused ENABLE_TEXGENx, ENABLE_TEXMATx flags

15 years agomesa: assorted clean-ups, var renaming, etc.
Brian Paul [Sun, 22 Feb 2009 21:26:44 +0000 (14:26 -0700)]
mesa: assorted clean-ups, var renaming, etc.

15 years agomesa: simplify texture combine state copying in _mesa_copy_texture_state()
Brian Paul [Sun, 22 Feb 2009 21:20:16 +0000 (14:20 -0700)]
mesa: simplify texture combine state copying in _mesa_copy_texture_state()

Just copy the whole struct.

15 years agomesa: remove redundant assertions (same asserts in context.c)
Brian Paul [Sun, 22 Feb 2009 21:15:58 +0000 (14:15 -0700)]
mesa: remove redundant assertions (same asserts in context.c)

15 years agogallium: remove dependency on main/glheader.h in glxapi.c
Brian Paul [Sun, 22 Feb 2009 22:37:57 +0000 (15:37 -0700)]
gallium: remove dependency on main/glheader.h in glxapi.c

Only needed it for the PUBLIC macro.

15 years agonv50: delay uploads until transfer object is destroyed
Ben Skeggs [Sun, 22 Feb 2009 05:38:59 +0000 (15:38 +1000)]
nv50: delay uploads until transfer object is destroyed

It's possible a state tracker will map/unmap a transfer object many times.
Delaying upload until the object is destroyed will prevent unnecessary
uploads to the GPU.

Also fixing a typo here, was unmapping the wrong buffer on transfer_unmap!

15 years agotexmem: fix typo from brianp's changes.
Dave Airlie [Sun, 22 Feb 2009 00:37:54 +0000 (10:37 +1000)]
texmem: fix typo from brianp's changes.

Reported by cjb via tinderbox on irc

15 years agoglapi: update find_entry() for mangled names
Brian Paul [Sat, 21 Feb 2009 23:07:52 +0000 (16:07 -0700)]
glapi: update find_entry() for mangled names

15 years agomesa: added extern qualifier
Tom Fogal [Sat, 21 Feb 2009 23:07:04 +0000 (16:07 -0700)]
mesa: added extern qualifier

15 years agomesa: regenerated gl_mange.h file
Brian Paul [Sat, 21 Feb 2009 23:01:54 +0000 (16:01 -0700)]
mesa: regenerated gl_mange.h file

15 years agomesa: use enums for TEXTURE_x_INDEX values
Brian Paul [Sat, 21 Feb 2009 22:15:20 +0000 (15:15 -0700)]
mesa: use enums for TEXTURE_x_INDEX values

Plus, put them in the order of highest to lowest priority to simplify
the texture_override() loop.

15 years agomesa: use an array for current texture objects
Brian Paul [Sat, 21 Feb 2009 21:53:25 +0000 (14:53 -0700)]
mesa: use an array for current texture objects

Use loops to consolidate lots of texture object code.

15 years agomesa: use an array for default texture objects
Brian Paul [Sat, 21 Feb 2009 20:59:29 +0000 (13:59 -0700)]
mesa: use an array for default texture objects

Replace Default1D/2D/3D/Cube/etc with DefaultTex[TEXTURE_x_INDEX].
The same should be done with the Current1D/2D/3D/etc pointers...

15 years agomesa: re-org texgen state
Brian Paul [Sat, 21 Feb 2009 20:23:04 +0000 (13:23 -0700)]
mesa: re-org texgen state

New gl_texgen struct allows quite a bit of code reduction.

15 years agointel: Fix intelSetTexBuffer miptree leak.
Kristian Høgsberg [Fri, 13 Feb 2009 16:05:54 +0000 (11:05 -0500)]
intel: Fix intelSetTexBuffer miptree leak.

The intelImage also holds a reference to the miptree, so unref that as well.

15 years agointel: tell libdrm whether we want a cpu-ready or gpu-ready BO for regions.
Eric Anholt [Wed, 18 Feb 2009 19:34:47 +0000 (11:34 -0800)]
intel: tell libdrm whether we want a cpu-ready or gpu-ready BO for regions.

This lets us avoid allocing new buffers for renderbuffers, finalized miptrees,
and PBO-uploaded textures when there's an unreferenced but still active one
cached, while also avoiding CPU waits for batchbuffers and CPU-uploaded
textures.  The size of BOs allocated for a desktop running current GL
cairogears on i915 is cut in half with this.

Note that this means we require libdrm 2.4.5.

15 years agoi965: Fix render target read domains.
Eric Anholt [Thu, 19 Feb 2009 21:53:46 +0000 (13:53 -0800)]
i965: Fix render target read domains.

We were asking for something illegal (write_domain != 0 && read_domains !=
write_domain) because at the time of writing the region surfaces were used
for texturing occasionally as well, and we weren't really clear on the model
GEM was going to use.

This reliably triggered a kernel bug with domain handling, resulting in
oglconform mustpass.c failure.  Of course, it only became visible after
01bc4d441fd6821ad9fc20d5e9544e4e587e4ff0 cleaned up some gratuitous flushing.

15 years agogallium: use the TGSI_TEXTURE_SHADOW1D/2D/RECT texture types for TEX instructions
Brian Paul [Fri, 20 Feb 2009 21:06:25 +0000 (14:06 -0700)]
gallium: use the TGSI_TEXTURE_SHADOW1D/2D/RECT texture types for TEX instructions

These texture types were defined but never put to use.
For the time being though, the Mesa->TGSI translater isn't emitting these
targets.  See the XXX comment in map_texture_target().

15 years agoi965: use the new prog_instruction::TexShadow field
Brian Paul [Fri, 20 Feb 2009 20:50:27 +0000 (13:50 -0700)]
i965: use the new prog_instruction::TexShadow field

GLSL shadow() sampler calls are properly propogated down to the driver now.
The glean glsl1 shadow() tests work (except for the alpha channel).

15 years agoi965: check depth_mode in translate_tex_format() for MESA_FORMAT_S8_Z24
Brian Paul [Fri, 20 Feb 2009 20:48:44 +0000 (13:48 -0700)]
i965: check depth_mode in translate_tex_format() for MESA_FORMAT_S8_Z24

Note that I24X8 vs. A24X8 vs. L24X8 doesn't seem to make any difference
for texture/shadow compare, however.