mesa.git
15 years agoi965: enable VS constant buffers
Brian Paul [Wed, 22 Apr 2009 17:52:16 +0000 (11:52 -0600)]
i965: enable VS constant buffers

In the VS constants can now be handled in two different ways:
1. If there's room in the GRF, put constants there.  They're preloaded from
   the CURBE prior to VS execution.  This is the historical approach.  The
   problem is the GRF may not have room for all the shader's constants and
   temps and misc registers.  Hence...
2. Use a separate constant buffer which is read from using a READ message.
   This allows a very large number of constants and frees up GRF regs for
   shader temporaries.  This is the new approach.  May be a little slower
   than 1.

1 vs. 2 is chosen according to how many constants and temps the shader needs.

15 years agoi965: define BRW_MAX_GRF
Brian Paul [Wed, 22 Apr 2009 17:47:59 +0000 (11:47 -0600)]
i965: define BRW_MAX_GRF

15 years agoi965: remove old code to init surface-related cache IDs
Brian Paul [Wed, 22 Apr 2009 17:29:49 +0000 (11:29 -0600)]
i965: remove old code to init surface-related cache IDs

These types are only found in the new surface state cache now.

15 years agoi965: comments, reformatting
Brian Paul [Wed, 22 Apr 2009 17:28:24 +0000 (11:28 -0600)]
i965: comments, reformatting

15 years agoi965: actually use the new, second surface state cache
Brian Paul [Wed, 22 Apr 2009 17:12:07 +0000 (11:12 -0600)]
i965: actually use the new, second surface state cache

15 years agoi965: checkpoint commit: use two state caches instead of one
Brian Paul [Wed, 22 Apr 2009 17:08:46 +0000 (11:08 -0600)]
i965: checkpoint commit: use two state caches instead of one

The new, second cache will only be used for surface-related items.
Since we can create many surfaces the original, single cache could get
filled quickly.  When we cleared it, we had to regenerate shaders, etc.
With two caches, we can avoid doing that.

15 years agoi965: remove unused state atom entries
Brian Paul [Wed, 22 Apr 2009 16:44:36 +0000 (10:44 -0600)]
i965: remove unused state atom entries

15 years agoi965: the brw_constant_buffer state atom is no longer dynamic
Brian Paul [Wed, 22 Apr 2009 15:23:15 +0000 (09:23 -0600)]
i965: the brw_constant_buffer state atom is no longer dynamic

No more dynamic atoms so we can simplify the state validation code a little.

15 years agoi965: add _NEW_PROGRAM_CONSTANTS to mesa_bits[] list
Brian Paul [Wed, 22 Apr 2009 15:16:21 +0000 (09:16 -0600)]
i965: add _NEW_PROGRAM_CONSTANTS to mesa_bits[] list

15 years agoi915: check the new _NEW_PROGRAM_CONSTANT flag
Brian Paul [Wed, 22 Apr 2009 15:14:53 +0000 (09:14 -0600)]
i915: check the new _NEW_PROGRAM_CONSTANT flag

15 years agoi965: use _NEW_PROGRAM_CONSTANTS and always create new const buffers
Brian Paul [Wed, 22 Apr 2009 15:14:16 +0000 (09:14 -0600)]
i965: use _NEW_PROGRAM_CONSTANTS and always create new const buffers

When program constants change we create a new VS constant buffer
instead of re-using the old one.  This allows us to have several
const buffers in flight with vertex rendering.

15 years agoi965: updates to some debug code
Brian Paul [Wed, 22 Apr 2009 15:07:46 +0000 (09:07 -0600)]
i965: updates to some debug code

15 years agoi965: use new _NEW_PROGRAM_CONSTANTS flag instead of dynamic flags
Brian Paul [Wed, 22 Apr 2009 15:07:02 +0000 (09:07 -0600)]
i965: use new _NEW_PROGRAM_CONSTANTS flag instead of dynamic flags

15 years agor200/r300/r500: add _NEW_PROGRAM_CONSTANTS flag
Brian Paul [Wed, 22 Apr 2009 14:59:47 +0000 (08:59 -0600)]
r200/r300/r500: add _NEW_PROGRAM_CONSTANTS flag

Make sure we detect constant buffer changes indicated by the new flag.
Should be able to remove _NEW_PROGRAM (and _NEW_MODELVIEW, _NEW_LIGHT, etc)
from several places (someday.

15 years agost: also check _NEW_PROGRAM flag for vertex shader constant buffers
Brian Paul [Wed, 22 Apr 2009 13:58:25 +0000 (07:58 -0600)]
st: also check _NEW_PROGRAM flag for vertex shader constant buffers

This is a follow-on to commit c1a3b852807fb160f0cd246c1364b7336b4b947e.
Note that (at this time) wherever _NEW_PROGRAM_CONSTANTS is set we're still
setting _NEW_PROGRAM so this won't really make any difference (for now).

15 years agogallium: Reinstate unconditional flushes.
Thomas Hellstrom [Mon, 20 Apr 2009 18:43:56 +0000 (20:43 +0200)]
gallium: Reinstate unconditional flushes.

Lost in commit e50dd26ca6d0eb0d0f97c2780020ea16e3d4a687.

Signed-off-by: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
15 years agomesa: protect driver.flush() with FLUSH_CURRENT
Keith Whitwell [Tue, 21 Apr 2009 15:55:57 +0000 (16:55 +0100)]
mesa: protect driver.flush() with FLUSH_CURRENT

Need to do this to ensure vbo code unmaps its buffers before calling
the driver, which may be sitting on top of a memory manager which
objects to firing commands from a mapped buffer.

15 years agost: play it safe for now and check _NEW_PROGRAM for shader const buffer atom
Brian Paul [Tue, 21 Apr 2009 23:00:54 +0000 (17:00 -0600)]
st: play it safe for now and check _NEW_PROGRAM for shader const buffer atom

When a new program is bound but no constants are updated we still need
to update the Gallium const buffer.

15 years agoswrast: simplify state update logic for fragment shader const buffers
Brian Paul [Tue, 21 Apr 2009 23:00:01 +0000 (17:00 -0600)]
swrast: simplify state update logic for fragment shader const buffers

15 years agost: use the static atoms[] array directly
Brian Paul [Tue, 21 Apr 2009 22:50:34 +0000 (16:50 -0600)]
st: use the static atoms[] array directly

We can simplify this now that we no longer have any dynamic atoms.

15 years agost: do away with dynamic state atom for const buffers
Brian Paul [Tue, 21 Apr 2009 22:47:30 +0000 (16:47 -0600)]
st: do away with dynamic state atom for const buffers

Just use the new _NEW_PROGRAM_CONSTANTS flag instead.

15 years agomesa: new _NEW_PROGRAM_CONSTANTS flag
Brian Paul [Tue, 21 Apr 2009 21:56:45 +0000 (15:56 -0600)]
mesa: new _NEW_PROGRAM_CONSTANTS flag

This state flag will be used to indicate that vertex/fragment program
constants have changed.  _NEW_PROGRAM will be used to indicate changes
to the vertex/fragment shader itself, or misc related state.

_NEW_PROGRAM_CONSTANTS is also set whenever a program parameter that's
tracking GL state has changed.  For example, if the projection matrix is
in the parameter list, calling glFrustum() will cause _NEW_PROGRAM_CONSTANTS
to be set.  This will let to remove the need for dynamic state atoms in
some drivers.

For now, we still set _NEW_PROGRAM in all the places we used to.  We'll no
longer set _NEW_PROGRAM in glUniform() after drivers/etc have been updated.

15 years agomesa: print internal.current[i] attrib
Brian Paul [Tue, 21 Apr 2009 20:47:57 +0000 (14:47 -0600)]
mesa: print internal.current[i] attrib

15 years agomesa: print parameter list dirty state flag mask
Brian Paul [Tue, 21 Apr 2009 20:44:03 +0000 (14:44 -0600)]
mesa: print parameter list dirty state flag mask

15 years agoi965: const correctness
Brian Paul [Mon, 20 Apr 2009 17:58:09 +0000 (11:58 -0600)]
i965: const correctness

15 years agoUpdate GALLIUM_AUXILIARY_DIRS in configure.ac to match configs/default.
Michel Dänzer [Tue, 21 Apr 2009 17:32:42 +0000 (18:32 +0100)]
Update GALLIUM_AUXILIARY_DIRS in configure.ac to match configs/default.

15 years agor300: r300 hw doesn't support any input modifiers in tex insts
Maciej Cencora [Mon, 20 Apr 2009 23:55:06 +0000 (01:55 +0200)]
r300: r300 hw doesn't support any input modifiers in tex insts

15 years agor300-gallium: Fix CS size mismatch
Mathias Gottschlag [Tue, 21 Apr 2009 15:52:30 +0000 (09:52 -0600)]
r300-gallium: Fix CS size mismatch

This fixes some warnings which appear because the driver assumes a wrong
cs size (13 vs 16 register writes in some cases).

15 years agodemos: check that GL version is 2.0 or higher
Brian Paul [Tue, 21 Apr 2009 13:27:12 +0000 (07:27 -0600)]
demos: check that GL version is 2.0 or higher

15 years agost: report GL_OUT_OF_MEMORY instead of asserting
Brian Paul [Mon, 20 Apr 2009 21:03:38 +0000 (15:03 -0600)]
st: report GL_OUT_OF_MEMORY instead of asserting

15 years agotrivial/tri-viewport: add keys for frustrum/ortho and z coordinate
Keith Whitwell [Tue, 21 Apr 2009 10:40:59 +0000 (11:40 +0100)]
trivial/tri-viewport: add keys for frustrum/ortho and z coordinate

15 years agotrivial/tri-viewport: add more out-of-bounds background quads
Keith Whitwell [Tue, 21 Apr 2009 09:59:54 +0000 (10:59 +0100)]
trivial/tri-viewport: add more out-of-bounds background quads

15 years agotrivial/tri_viewport: add space==reset key
Keith Whitwell [Mon, 20 Apr 2009 16:32:15 +0000 (17:32 +0100)]
trivial/tri_viewport: add space==reset key

15 years agotrivial/tri_viewport: add width/height keys
Keith Whitwell [Mon, 20 Apr 2009 16:30:53 +0000 (17:30 +0100)]
trivial/tri_viewport: add width/height keys

15 years agosoftpipe: fix softpipe_is_buffer/texture_referenced() regression
Brian Paul [Mon, 20 Apr 2009 20:57:00 +0000 (14:57 -0600)]
softpipe: fix softpipe_is_buffer/texture_referenced() regression

Return the conservative PIPE_REFERENCED_FOR_READ | PIPE_REFERENCED_FOR_WRITE
value for now.

This fixes a bunch of regressions seen in piglit and glean.

15 years agoswrast: fix pointer arithmetic error in get_texel_array()
Brian Paul [Mon, 20 Apr 2009 20:14:26 +0000 (14:14 -0600)]
swrast: fix pointer arithmetic error in get_texel_array()

This came from commit 1b2ab023673261b4b942e1126c0b599d02fbd4a0

15 years agogdi: Don't implement broken gl_dispatch_stub_xxx.
José Fonseca [Mon, 20 Apr 2009 15:44:15 +0000 (16:44 +0100)]
gdi: Don't implement broken gl_dispatch_stub_xxx.

15 years agowgl: Don't implement broken gl_dispatch_stub_xxx.
José Fonseca [Mon, 20 Apr 2009 15:43:44 +0000 (16:43 +0100)]
wgl: Don't implement broken gl_dispatch_stub_xxx.

These don't respect the stdcall, so they crash upon return.

15 years agomesa: Correct the gl_dispatch_stub_xxx prototypes.
José Fonseca [Mon, 20 Apr 2009 15:40:12 +0000 (16:40 +0100)]
mesa: Correct the gl_dispatch_stub_xxx prototypes.

15 years agomesa: Handle failure to create a transfer.
José Fonseca [Mon, 20 Apr 2009 13:53:08 +0000 (14:53 +0100)]
mesa: Handle failure to create a transfer.

15 years agomesa/progs: fix scons build after recent demo moves
Keith Whitwell [Mon, 20 Apr 2009 15:17:50 +0000 (16:17 +0100)]
mesa/progs: fix scons build after recent demo moves

15 years agotrivial/tri-viewport.c - add guide lines, more triangles, make interactive
Keith Whitwell [Mon, 20 Apr 2009 14:50:44 +0000 (15:50 +0100)]
trivial/tri-viewport.c - add guide lines, more triangles, make interactive

This is becoming more like a test than a trivial/ example.

15 years agost: assert on pipe_buffer_create failure
Keith Whitwell [Fri, 17 Apr 2009 16:11:09 +0000 (17:11 +0100)]
st: assert on pipe_buffer_create failure

This needs a proper fix to propogate the out-of-memory condition back
up to Mesa and the app as a GL error.  Until then, at least catch the
problem at its source.

15 years agotests/mipmap_view: add linear/nearest key
Keith Whitwell [Fri, 17 Apr 2009 14:54:57 +0000 (15:54 +0100)]
tests/mipmap_view:  add linear/nearest key

15 years agoutil: don't set unused blend state
Keith Whitwell [Fri, 17 Apr 2009 10:29:39 +0000 (11:29 +0100)]
util: don't set unused blend state

Try to avoid creating multiple blend atoms.

15 years agotrace: Add initializer for static variables
Jakob Bornecrantz [Mon, 20 Apr 2009 14:05:01 +0000 (16:05 +0200)]
trace: Add initializer for static variables

15 years agor300: fix register-negate branch merge regression
Maciej Cencora [Mon, 20 Apr 2009 13:31:44 +0000 (07:31 -0600)]
r300: fix register-negate branch merge regression

15 years agogallium: Fix glDraw/CopyPixels fragment program leak.
Michel Dänzer [Mon, 20 Apr 2009 10:52:56 +0000 (12:52 +0200)]
gallium: Fix glDraw/CopyPixels fragment program leak.

15 years agotrace: Enable dumping to be turned on and off
Jakob Bornecrantz [Sun, 19 Apr 2009 15:09:10 +0000 (16:09 +0100)]
trace: Enable dumping to be turned on and off

15 years agost: Wait to create bitmap transfer until needed
Jakob Bornecrantz [Sat, 18 Apr 2009 22:14:58 +0000 (23:14 +0100)]
st: Wait to create bitmap transfer until needed

15 years agoautoconf: Build gallium softpipe when driver=xlib
Jakob Bornecrantz [Sat, 18 Apr 2009 22:13:56 +0000 (23:13 +0100)]
autoconf: Build gallium softpipe when driver=xlib

15 years agoprogs/demos: Update ignore
Jakob Bornecrantz [Sun, 19 Apr 2009 15:22:43 +0000 (16:22 +0100)]
progs/demos: Update ignore

15 years agoprogs/glsl: Update ignore
Jakob Bornecrantz [Sat, 18 Apr 2009 22:16:54 +0000 (23:16 +0100)]
progs/glsl: Update ignore

15 years agosoftpipe: Simplify softpipe_create's prototype.
José Fonseca [Sat, 18 Apr 2009 22:14:42 +0000 (23:14 +0100)]
softpipe: Simplify softpipe_create's prototype.

15 years agosoftpipe: Fix softpipe_is_texture_referenced prototype.
José Fonseca [Sat, 18 Apr 2009 22:06:11 +0000 (23:06 +0100)]
softpipe: Fix softpipe_is_texture_referenced prototype.

15 years agosoftpipe: Remove softpipe_winsys.
José Fonseca [Sat, 18 Apr 2009 20:22:32 +0000 (21:22 +0100)]
softpipe: Remove softpipe_winsys.

Not used by softpipe anyway.

15 years agodemos: added glsl/texaaline.c program and overhaul the Makefile
Brian Paul [Sat, 18 Apr 2009 20:18:59 +0000 (14:18 -0600)]
demos: added glsl/texaaline.c program and overhaul the Makefile

15 years agodemos: updated .gitignore list
Brian Paul [Sat, 18 Apr 2009 19:18:44 +0000 (13:18 -0600)]
demos: updated .gitignore list

15 years agodocs: removed/added demo programs
Brian Paul [Sat, 18 Apr 2009 19:16:35 +0000 (13:16 -0600)]
docs: removed/added demo programs

15 years agodemos: move demos/texobj.c to tests/
Brian Paul [Sat, 18 Apr 2009 19:12:50 +0000 (13:12 -0600)]
demos: move demos/texobj.c to tests/

15 years agodemos: move demos/occlude.c (old HP extension) to tests
Brian Paul [Sat, 18 Apr 2009 19:10:51 +0000 (13:10 -0600)]
demos: move demos/occlude.c (old HP extension) to tests

15 years agodemos: move tests/dinoshade.c to demos/
Brian Paul [Sat, 18 Apr 2009 19:08:48 +0000 (13:08 -0600)]
demos: move tests/dinoshade.c to demos/

15 years agodemos: move tests/projtex.c to demos/
Brian Paul [Sat, 18 Apr 2009 19:05:51 +0000 (13:05 -0600)]
demos: move tests/projtex.c to demos/

And fix compiler warnings.

15 years agodemos: move tests/fbotexture.c to demos/
Brian Paul [Sat, 18 Apr 2009 19:00:48 +0000 (13:00 -0600)]
demos: move tests/fbotexture.c to demos/

15 years agodemos: move texdown.c to tests/
Brian Paul [Sat, 18 Apr 2009 18:58:00 +0000 (12:58 -0600)]
demos: move texdown.c to tests/

15 years agodemos: move glutfx demo to tests/
Brian Paul [Sat, 18 Apr 2009 18:57:13 +0000 (12:57 -0600)]
demos: move glutfx demo to tests/

15 years agodemos: move streaming_rect.c demo to tests/
Brian Paul [Sat, 18 Apr 2009 18:55:55 +0000 (12:55 -0600)]
demos: move streaming_rect.c demo to tests/

15 years agodemos: move glslnoise.c demo to glsl/noise2.c
Brian Paul [Sat, 18 Apr 2009 18:54:27 +0000 (12:54 -0600)]
demos: move glslnoise.c demo to glsl/noise2.c

15 years agoi965: use region width, height in brw_update_renderbuffer_surface()
Brian Paul [Sat, 18 Apr 2009 16:42:15 +0000 (10:42 -0600)]
i965: use region width, height in brw_update_renderbuffer_surface()

Fixes a regression from commit 2c30fd84dfa052949a117c78d932b58c1f88b446
seen with DRI1.

15 years agointel: #include polygon.h to silence warning
Brian Paul [Sat, 18 Apr 2009 16:40:21 +0000 (10:40 -0600)]
intel: #include polygon.h to silence warning

15 years agodemos: fix incorrect assertion
Brian Paul [Sat, 18 Apr 2009 16:20:26 +0000 (10:20 -0600)]
demos: fix incorrect assertion

15 years agomesa: add switch case for GL_VERTEX_STATE_PROGRAM_NV in _mesa_new_program()
Brian Paul [Sat, 18 Apr 2009 16:08:54 +0000 (10:08 -0600)]
mesa: add switch case for GL_VERTEX_STATE_PROGRAM_NV in _mesa_new_program()

Fixes bug seen in progs/tests/vptest1.c

15 years agodemos: fix usage text
Brian Paul [Sat, 18 Apr 2009 16:08:15 +0000 (10:08 -0600)]
demos: fix usage text

15 years agointel: Handle ARB_vertex_buffer_object state in intel_clear_tris().
Michel Dänzer [Sat, 18 Apr 2009 13:47:14 +0000 (15:47 +0200)]
intel: Handle ARB_vertex_buffer_object state in intel_clear_tris().

Fixes gearsvbo app by Michael Clark.

15 years agodemos: new glsl/array.c demo
Brian Paul [Fri, 17 Apr 2009 22:23:33 +0000 (16:23 -0600)]
demos: new glsl/array.c demo

Test variable indexing into a uniform array in a vertex shader.

15 years agointel: make sure polygon mode is set properly in intel_clear_tris()
Brian Paul [Fri, 17 Apr 2009 22:11:05 +0000 (16:11 -0600)]
intel: make sure polygon mode is set properly in intel_clear_tris()

Fixes progs/glsl/skinning.c demo.

15 years agomesa: suppress extra newline
Brian Paul [Fri, 17 Apr 2009 22:04:41 +0000 (16:04 -0600)]
mesa: suppress extra newline

15 years agoi915: fix broken indirect constant buffer reads
Brian Paul [Fri, 17 Apr 2009 22:01:20 +0000 (16:01 -0600)]
i915: fix broken indirect constant buffer reads

The READ message's msg_control value can be 0 or 1 to indicate that the
Oword should be read into the lower or upper half of the target register.
It seems that the other half of the register gets clobbered though.  So
we read into two dest registers then use a MOV to combine the upper/lower
halves.

15 years agomesa: build a float[4] value in _mesa_add_sampler() to avoid random values
Brian Paul [Fri, 17 Apr 2009 19:55:58 +0000 (13:55 -0600)]
mesa: build a float[4] value in _mesa_add_sampler() to avoid random values

15 years agodri: build DRI swrast driver too
Brian Paul [Thu, 16 Apr 2009 22:41:07 +0000 (16:41 -0600)]
dri: build DRI swrast driver too

15 years agodri: __driUtilMessage(): not all messages are errors
Brian Paul [Thu, 16 Apr 2009 22:37:53 +0000 (16:37 -0600)]
dri: __driUtilMessage(): not all messages are errors

15 years agomesa: minor tweak to error message
Brian Paul [Thu, 16 Apr 2009 22:29:45 +0000 (16:29 -0600)]
mesa: minor tweak to error message

15 years agoi965: updated CURBE allocation code
Brian Paul [Thu, 16 Apr 2009 21:43:32 +0000 (15:43 -0600)]
i965: updated CURBE allocation code

Now that we have real constant buffers, the demands on the CURBE are lessened.
When we use real VS/WM constant buffers we only use the CURBE for clip planes.

15 years agoxlib/trace: Fixup xlib trace
Jakob Bornecrantz [Fri, 17 Apr 2009 19:23:14 +0000 (21:23 +0200)]
xlib/trace: Fixup xlib trace

15 years agopipe: Get the p_atomic_dec_zero logic right this time.
José Fonseca [Fri, 17 Apr 2009 17:40:46 +0000 (18:40 +0100)]
pipe: Get the p_atomic_dec_zero logic right this time.

15 years agodemos: move glewInit() call, fixes crash/bug 21247
Brian Paul [Fri, 17 Apr 2009 15:15:58 +0000 (09:15 -0600)]
demos: move glewInit() call, fixes crash/bug 21247

15 years agogallium: Fix PIPE_ATOMIC_GCC_INTRINSIC build.
Michel Dänzer [Fri, 17 Apr 2009 15:02:34 +0000 (17:02 +0200)]
gallium: Fix PIPE_ATOMIC_GCC_INTRINSIC build.

15 years agodemos: move glewInit() after glutCreateWindow()
Brian Paul [Fri, 17 Apr 2009 14:09:17 +0000 (08:09 -0600)]
demos: move glewInit() after glutCreateWindow()

Fixes segfault.  See bug 21239.  However, the demo doesn't render
properly.  Probably a bug in the GL_ATI_fragment_shader code.

15 years agotrace: Keep screen objects on lists
Jakob Bornecrantz [Fri, 17 Apr 2009 13:55:51 +0000 (15:55 +0200)]
trace: Keep screen objects on lists

15 years agotrace: Fix is_referenced functions
Jakob Bornecrantz [Fri, 17 Apr 2009 14:00:25 +0000 (16:00 +0200)]
trace: Fix is_referenced functions

15 years agotrace: Simplify trace_buffer function
Jakob Bornecrantz [Fri, 17 Apr 2009 13:52:05 +0000 (15:52 +0200)]
trace: Simplify trace_buffer function

15 years agopipe: Fix InterlockedDecrement usage.
José Fonseca [Fri, 17 Apr 2009 14:01:38 +0000 (15:01 +0100)]
pipe: Fix InterlockedDecrement usage.

15 years agowgl: Put commas in the right places.
José Fonseca [Fri, 17 Apr 2009 13:55:49 +0000 (14:55 +0100)]
wgl: Put commas in the right places.

15 years agowgl: Flip the pixel format order.
José Fonseca [Fri, 17 Apr 2009 13:53:10 +0000 (14:53 +0100)]
wgl: Flip the pixel format order.

List 32bit pixel formats first, as nobody is interested in 16bit pixel
formats nowadays.

15 years agogallium: Create OGL state tracker wrappers for various CPU access operations.
Thomas Hellstrom [Fri, 17 Apr 2009 09:47:30 +0000 (11:47 +0200)]
gallium: Create OGL state tracker wrappers for various CPU access operations.

There are two usage types of buffer CPU accesses:
One where we try to use the buffer contents for multiple draw commands in
a batch. (batch := sequence of commands that are flushed together),
like incrementally adding bitmaps to a bitmap texture that is reallocated
on flush.
And one where we assume we can safely overwrite the old buffer contexts, like
glTexSubImage. In this case we need to make sure all old drawing commands
referencing the buffer are flushed before we map the buffer.
This is easily forgotten.

Add wrappers for the most common of these operations. The first type is
prefixed with "st_no_flush" and the second type is prefixed with
"st_cond_flush", where "cond" indicates that we attmpt to only flush
if there is indeed unflushed draw commands referencing the buffer.

Prefixed functions are
screen::get_tex_transfer
pipe_buffer_write
pipe_buffer_read
pipe_buffer_map

Please use the wrappers whenever possible.

Signed-off-by: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
15 years agoegl: don't crash with one more khronos api
Zack Rusin [Fri, 17 Apr 2009 11:05:24 +0000 (07:05 -0400)]
egl: don't crash with one more khronos api

15 years agogallium: simplify further the logic for selecting mutex implementation
Keith Whitwell [Fri, 17 Apr 2009 10:01:22 +0000 (11:01 +0100)]
gallium: simplify further the logic for selecting mutex implementation

Cleaner than the previous cleanup...

15 years agoutil: flush stdout before emitting debug_printf on stderr
Keith Whitwell [Fri, 17 Apr 2009 09:38:07 +0000 (10:38 +0100)]
util: flush stdout before emitting debug_printf on stderr

A lot of the mesa demos emit commentary on stdout, try to keep it in
sync with the corresponding output from debug_printf().

15 years agogallium: add #warning to mutex-based atomic implementation
Keith Whitwell [Fri, 17 Apr 2009 09:17:59 +0000 (10:17 +0100)]
gallium: add #warning to mutex-based atomic implementation

Some builds end up picking this up.

15 years agopython/retrace: Rename module as it conflicts with a builtin module.
José Fonseca [Fri, 17 Apr 2009 09:07:53 +0000 (10:07 +0100)]
python/retrace: Rename module as it conflicts with a builtin module.

And there is no way to override a builtin module... sigh