mesa.git
13 years agoRevert "mesa: convert macros to inline functions"
Brian Paul [Tue, 22 Feb 2011 00:01:00 +0000 (17:01 -0700)]
Revert "mesa: convert macros to inline functions"

This reverts commit e9ff76aa81d9bd973d46b7e46f1e4ece2112a5b7.

Need to use macros so __FUNCTION__ reports the caller.

13 years agost/mesa: need to translate clear color according to surface's base format
Brian Paul [Mon, 21 Feb 2011 23:54:23 +0000 (16:54 -0700)]
st/mesa: need to translate clear color according to surface's base format

When clearing a GL_LUMINANCE_ALPHA buffer, for example, we need to convert
the clear color (R,G,B,A) to (R,R,R,A).  We were doing this for texture border
colors but not renderbuffers.  Move the translation function to st_format.c
and share it.

This fixes the piglit fbo-clear-formats test.

NOTE: This is a candidate for the 7.9 and 7.10 branches.

13 years agost/mesa: fix the default case in st_format_datatype()
Brian Paul [Mon, 21 Feb 2011 23:46:02 +0000 (16:46 -0700)]
st/mesa: fix the default case in st_format_datatype()

Part of the fix for piglit fbo-clear-formats

NOTE: This is a candidate for the 7.9 and 7.10 branches.

13 years agoi915g: add some throttling
Daniel Vetter [Mon, 21 Feb 2011 18:14:02 +0000 (19:14 +0100)]
i915g: add some throttling

Intel classic drivers switched to this, too, so it must be good.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
13 years agoi915g: s/bool/boolean/ style-fixup in winsys
Daniel Vetter [Mon, 21 Feb 2011 17:25:20 +0000 (18:25 +0100)]
i915g: s/bool/boolean/ style-fixup in winsys

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
13 years agoi915g: Fix warning
Jakob Bornecrantz [Mon, 21 Feb 2011 22:00:02 +0000 (22:00 +0000)]
i915g: Fix warning

13 years agoi915g: Add option to lie about caps
Jakob Bornecrantz [Sun, 20 Feb 2011 12:41:18 +0000 (13:41 +0100)]
i915g: Add option to lie about caps

13 years agoi915g: Move debug fields to screen
Jakob Bornecrantz [Sun, 20 Feb 2011 11:52:55 +0000 (12:52 +0100)]
i915g: Move debug fields to screen

13 years agoi915g: Use debug get once options
Jakob Bornecrantz [Sun, 20 Feb 2011 10:41:32 +0000 (11:41 +0100)]
i915g: Use debug get once options

13 years agoi915g: Rework texture tiling a bit
Jakob Bornecrantz [Sun, 20 Feb 2011 11:52:11 +0000 (12:52 +0100)]
i915g: Rework texture tiling a bit

13 years agoi915g: Anisotropic filtering works
Jakob Bornecrantz [Mon, 21 Feb 2011 21:27:05 +0000 (21:27 +0000)]
i915g: Anisotropic filtering works

13 years agoi915g: TODO about point sprites
Jakob Bornecrantz [Sun, 20 Feb 2011 13:00:03 +0000 (14:00 +0100)]
i915g: TODO about point sprites

13 years agoi915g: TODO about untested code hidden behind caps
Jakob Bornecrantz [Sun, 20 Feb 2011 12:58:11 +0000 (13:58 +0100)]
i915g: TODO about untested code hidden behind caps

Should be fairly easy to test and fix since you can look at
the code in the classic driver.

13 years agoi915g: Reorg caps
Jakob Bornecrantz [Sun, 20 Feb 2011 10:45:48 +0000 (11:45 +0100)]
i915g: Reorg caps

13 years agost/mesa: fix incorrect texture size allocation in st_finalize_texture()
Brian Paul [Mon, 21 Feb 2011 22:11:44 +0000 (15:11 -0700)]
st/mesa: fix incorrect texture size allocation in st_finalize_texture()

If finalizing a non-POW mipmapped texture with an odd-sized base texture
image we were allocating the wrong size of gallium texture (off by one).
Need to be more careful about computing the base texture image size.

This fixes https://bugs.freedesktop.org/show_bug.cgi?id=34463

13 years agost/mesa: refactor guess_and_alloc_texture() code
Brian Paul [Mon, 21 Feb 2011 22:11:44 +0000 (15:11 -0700)]
st/mesa: refactor guess_and_alloc_texture() code

13 years agost/mesa: fix mipmap generation for non-POW textures
Brian Paul [Mon, 21 Feb 2011 22:11:44 +0000 (15:11 -0700)]
st/mesa: fix mipmap generation for non-POW textures

This is part of the fix for https://bugs.freedesktop.org/show_bug.cgi?id=34463

13 years agomesa: convert macros to inline functions
Brian Paul [Mon, 21 Feb 2011 22:11:44 +0000 (15:11 -0700)]
mesa: convert macros to inline functions

13 years agovbo: more comments
Brian Paul [Mon, 21 Feb 2011 22:11:44 +0000 (15:11 -0700)]
vbo: more comments

13 years agovbo: make vbo_exec_FlushVertices_internal() static
Brian Paul [Mon, 21 Feb 2011 22:11:44 +0000 (15:11 -0700)]
vbo: make vbo_exec_FlushVertices_internal() static

13 years agovbo: remove old debug code, add comments
Brian Paul [Mon, 21 Feb 2011 22:11:44 +0000 (15:11 -0700)]
vbo: remove old debug code, add comments

13 years agovbo: rename, document function params
Brian Paul [Mon, 21 Feb 2011 22:11:44 +0000 (15:11 -0700)]
vbo: rename, document function params

13 years agovbo: comments
Brian Paul [Mon, 21 Feb 2011 22:11:44 +0000 (15:11 -0700)]
vbo: comments

13 years agovbo: replace assert(0) with proper assertions
Brian Paul [Mon, 21 Feb 2011 22:11:44 +0000 (15:11 -0700)]
vbo: replace assert(0) with proper assertions

13 years agovbo: rename some vars, add new comments, fix formatting, etc.
Brian Paul [Mon, 21 Feb 2011 22:11:44 +0000 (15:11 -0700)]
vbo: rename some vars, add new comments, fix formatting, etc.

13 years agovbo: use ctx instead of exec->ctx
Brian Paul [Mon, 21 Feb 2011 22:11:44 +0000 (15:11 -0700)]
vbo: use ctx instead of exec->ctx

13 years agoradeon: add default switch case to silence unhandled enum warning
Brian Paul [Mon, 21 Feb 2011 22:11:44 +0000 (15:11 -0700)]
radeon: add default switch case to silence unhandled enum warning

13 years agoUse C-style system headers in C++ code to avoid issues with std:: namespace
Ian Romanick [Thu, 10 Feb 2011 18:26:42 +0000 (10:26 -0800)]
Use C-style system headers in C++ code to avoid issues with std:: namespace

13 years agointel: Fix insufficient integer width for upload buffer offset
Chris Wilson [Mon, 21 Feb 2011 20:56:06 +0000 (20:56 +0000)]
intel: Fix insufficient integer width for upload buffer offset

I was being overly miserly and gave the offset of the buffer into the bo
insufficient bits, distracted by the adjacency of the buffer[4096].

Ref: https://bugs.freedesktop.org/show_bug.cgi?id=34541
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agosvga: Remove some remaining fake S3TC rendering support.
José Fonseca [Mon, 21 Feb 2011 18:24:36 +0000 (18:24 +0000)]
svga: Remove some remaining fake S3TC rendering support.

13 years agoi965: Remove spurious duplicate ADVANCE_BATCH
Chris Wilson [Mon, 21 Feb 2011 16:02:26 +0000 (16:02 +0000)]
i965: Remove spurious duplicate ADVANCE_BATCH

... a leftover from a bad merge.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agoi915: Emit a single relocation per vbo
Chris Wilson [Thu, 25 Nov 2010 15:41:37 +0000 (15:41 +0000)]
i915: Emit a single relocation per vbo

Reducing the number of relocations has lots of nice knock-on effects,
not least including reducing batch buffer size, auxilliary array sizes
(vmalloced and copied into the kernel), processing of uncached
relocations etc.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agoi915: Suppress emission of redundant stencil updates
Chris Wilson [Fri, 26 Nov 2010 11:18:50 +0000 (11:18 +0000)]
i915: Suppress emission of redundant stencil updates

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agoi915: Separate BLEND from general context state.
Chris Wilson [Fri, 26 Nov 2010 10:57:06 +0000 (10:57 +0000)]
i915: Separate BLEND from general context state.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agoi915: Only flag context changes if the actual state is changed
Chris Wilson [Fri, 26 Nov 2010 10:25:23 +0000 (10:25 +0000)]
i915: Only flag context changes if the actual state is changed

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agoi915: suppress repeated sampler state emission
Chris Wilson [Thu, 25 Nov 2010 22:27:37 +0000 (22:27 +0000)]
i915: suppress repeated sampler state emission

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agoi915: Eliminate redundant CONSTANTS updates
Chris Wilson [Thu, 25 Nov 2010 21:39:21 +0000 (21:39 +0000)]
i915: Eliminate redundant CONSTANTS updates

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agoi965: Use compiler builtins when available
Chris Wilson [Tue, 8 Feb 2011 22:58:35 +0000 (22:58 +0000)]
i965: Use compiler builtins when available

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agoi965: Micro-optimise check_state
Chris Wilson [Sun, 20 Feb 2011 15:36:52 +0000 (15:36 +0000)]
i965: Micro-optimise check_state

Replace the intermediate tests due to the logical or with the bitwise
or.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agointel: use throttle ioctl for throttling
Chris Wilson [Thu, 30 Dec 2010 21:47:39 +0000 (21:47 +0000)]
intel: use throttle ioctl for throttling

Rather than waiting on the first batch after the last swapbuffers to be
retired, call into the kernel to wait upon the retirement of any request
less than 20ms old. This has the twofold advantage of (a) not blocking
any other clients from utilizing the device whilst we wait and (b) we
attain higher throughput without overloading the system.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agoi965: Remove unused 'next_free_page' member
Chris Wilson [Sat, 12 Feb 2011 11:28:25 +0000 (11:28 +0000)]
i965: Remove unused 'next_free_page' member

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agointel: Skip the flush before read-pixels via blit
Chris Wilson [Fri, 11 Feb 2011 00:03:48 +0000 (00:03 +0000)]
intel: Skip the flush before read-pixels via blit

As we will flush when reading the return values of the blit, we can forgo
the earlier flush.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agointel: extend current vertex buffers
Chris Wilson [Fri, 18 Feb 2011 10:37:43 +0000 (10:37 +0000)]
intel: extend current vertex buffers

If the next vertex arrays are a (discontiguous) continuation of the
current arrays, such that the new vertices are simply offset from the
start of the current vertex buffer definitions we can reuse those
defintions and avoid the overhead of relocations and invalidations.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agointel: Use specified alignment for writes into the upload buffer
Chris Wilson [Fri, 18 Feb 2011 12:30:37 +0000 (12:30 +0000)]
intel: Use specified alignment for writes into the upload buffer

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agoi965: Clean up brw_prepare_vertices()
Chris Wilson [Fri, 11 Feb 2011 15:29:26 +0000 (15:29 +0000)]
i965: Clean up brw_prepare_vertices()

Use a temporary glarray variable to replace the numerous input->glarray.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agointel: combine short memcpy using a temporary allocated buffer
Chris Wilson [Fri, 11 Feb 2011 19:40:08 +0000 (19:40 +0000)]
intel: combine short memcpy using a temporary allocated buffer

Using a temporary buffer for large discontiguous uploads into the common
buffer and a single buffered upload is faster than performing the
discontiguous copies through a mapping into the GTT.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agoi965: upload normal arrays as interleaved
Chris Wilson [Fri, 11 Feb 2011 14:14:18 +0000 (14:14 +0000)]
i965: upload normal arrays as interleaved

Upload the non-vbo arrays into a single interleaved buffer object, and
so need to just emit a single vertex buffer relocation.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agoi965: interleaved vbo
Chris Wilson [Fri, 11 Feb 2011 14:45:19 +0000 (14:45 +0000)]
i965: interleaved vbo

If the user passed in several arrays interleaved in the same vbo, only
emit a single vertex buffer and relocation.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agoi965: emit one vb packet per vbo
Chris Wilson [Fri, 11 Feb 2011 14:45:10 +0000 (14:45 +0000)]
i965: emit one vb packet per vbo

Track reuse of the vertex buffer objects and so minimise the number of
vertex buffers used by the hardware (and their relocations).

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agoi965: upload transient indices into the same discontiguous buffer
Chris Wilson [Fri, 11 Feb 2011 00:18:21 +0000 (00:18 +0000)]
i965: upload transient indices into the same discontiguous buffer

As we now pack the indices into a common upload buffer, we can reuse a
single CMD_INDEX_BUFFER packet and translate each invocation with a
start vertex offset.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agoi965: suppress repeat-emission of identical vertex elements
Chris Wilson [Sun, 20 Feb 2011 13:37:00 +0000 (13:37 +0000)]
i965: suppress repeat-emission of identical vertex elements

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agoi965: Move repeat-instruction-suppression to batchbuffer core
Chris Wilson [Sun, 20 Feb 2011 13:23:47 +0000 (13:23 +0000)]
i965: Move repeat-instruction-suppression to batchbuffer core

Move the tracking of the last emitted instructions into the core
batchbuffer routines and take advantage of the shadow batch copy to
avoid extra memory allocations and copies.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agointel: use pwrite for batch
Chris Wilson [Thu, 10 Feb 2011 20:25:51 +0000 (20:25 +0000)]
intel: use pwrite for batch

It's faster. Not only is the memcpy more efficiently performed in the
kernel (making up for the system call overhead), but by not using mmap
we remove the greater overhead of tracking the vma of every batch.

And it means we can read back from the batch buffer without incurring
the cost of a uncached read through the GTT.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agoi965: drop state_bo references to batch_bo
Chris Wilson [Thu, 10 Feb 2011 18:31:13 +0000 (18:31 +0000)]
i965: drop state_bo references to batch_bo

As we use state relocations and we know that all the state belongs to
the same bo, we can drop the multiple references to the same bo.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agoi965: directly write wm state to batch
Chris Wilson [Thu, 10 Feb 2011 18:14:40 +0000 (18:14 +0000)]
i965: directly write wm state to batch

As we write directly into the batch in system memory, we do not need to
write first to the stack (as was to avoid read back through the GTT)

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agoi965: write cc straight to batch
Chris Wilson [Thu, 10 Feb 2011 18:11:58 +0000 (18:11 +0000)]
i965: write cc straight to batch

As we write directly into the batch in system memory, we do not need to
write first to the stack (as was to avoid read back through the GTT)

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agoi965: switch gen6 to use its own cc state bo
Chris Wilson [Thu, 10 Feb 2011 18:10:06 +0000 (18:10 +0000)]
i965: switch gen6 to use its own cc state bo

In preparation for a greater change, use the color_calc_state_bo already
provisioned for this purpose.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agointel: Buffered upload
Chris Wilson [Thu, 10 Feb 2011 00:25:17 +0000 (00:25 +0000)]
intel: Buffered upload

Rather than performing lots of little writes to update the common bo
upon each update, write those into a static buffer and flush that when
full (or at the end of the batch). Doing so gives a dramatic performance
improvement over and above using mmaped access.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agointel: Replace the bo for a complete update
Chris Wilson [Wed, 9 Feb 2011 10:00:09 +0000 (10:00 +0000)]
intel: Replace the bo for a complete update

Rather than performing a blit to completely overwrite a busy bo, simply
discard it and create a new one with the fresh data.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agoi965: Combine vb upload buffer with the general upload buffer
Chris Wilson [Tue, 8 Feb 2011 22:22:36 +0000 (22:22 +0000)]
i965: Combine vb upload buffer with the general upload buffer

Reuse the new common upload buffer for uploading temporary indices and
rebuilt vertex arrays.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agointel: Pack dynamic draws together
Chris Wilson [Tue, 8 Feb 2011 20:01:10 +0000 (20:01 +0000)]
intel: Pack dynamic draws together

Dynamic arrays have the tendency to be small and so allocating a bo for
each one is overkill and we can exploit many efficiency gains by packing
them together.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agointel: Use system memory for DYNAMIC_DRAW source objects
Chris Wilson [Tue, 8 Feb 2011 16:57:26 +0000 (16:57 +0000)]
intel: Use system memory for DYNAMIC_DRAW source objects

Dynamic draw buffers are used by clients for temporary arrays and for
uploading normal vertex arrays. By keeping the data in memory, we can
avoid reusing active buffer objects and reallocate them as they are
changed. This is important for Sandybridge which can not issue blits
within a batch and so ends up flushing the batch upon every update, that
is each batch only contains a single draw operation (if using dynamic
arrays or regular arrays from system memory).

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agoi965: Trim the trailing NOOP from 3DSTATE_INDEX_BUFFER
Chris Wilson [Sat, 29 Jan 2011 14:01:50 +0000 (14:01 +0000)]
i965: Trim the trailing NOOP from 3DSTATE_INDEX_BUFFER

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agoi965: Fallback on encountering a NULL render buffer
Chris Wilson [Fri, 18 Feb 2011 17:51:10 +0000 (17:51 +0000)]
i965: Fallback on encountering a NULL render buffer

Following a GPU hang, or other error, the render target is not likely to
have an allocated BO and so we must fallback to avoid using it.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=32534
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
13 years agoi915g: s/__func__/__FUNCTION__/
Vinson Lee [Mon, 21 Feb 2011 05:23:26 +0000 (21:23 -0800)]
i915g: s/__func__/__FUNCTION__/

13 years agoi915g: kill remnants of mmapped batchbuffer support
Daniel Vetter [Sun, 5 Dec 2010 12:23:40 +0000 (13:23 +0100)]
i915g: kill remnants of mmapped batchbuffer support

We're using bo_subdata.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
13 years agoi915g: Add winsys/i915/sw to scons build
Jakob Bornecrantz [Sun, 20 Feb 2011 10:49:33 +0000 (11:49 +0100)]
i915g: Add winsys/i915/sw to scons build

13 years agoi915g: Fix void ptr arith
Jakob Bornecrantz [Sun, 20 Feb 2011 10:46:50 +0000 (11:46 +0100)]
i915g: Fix void ptr arith

13 years agoi915g: Add dummy flush_frontbuffer
Jakob Bornecrantz [Sun, 20 Feb 2011 10:46:17 +0000 (11:46 +0100)]
i915g: Add dummy flush_frontbuffer

13 years agoFix --enable-shared-glapi configure option
Jon TURNEY [Wed, 16 Feb 2011 13:37:57 +0000 (13:37 +0000)]
Fix --enable-shared-glapi configure option

Fix a typo which meant that --enable-shared-glapi didn't actually cause a shared glapi to be built

Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
13 years agoegl_dri2: Return NULL when xcb_get_geometry_reply fails.
Chia-I Wu [Sun, 20 Feb 2011 19:23:54 +0000 (12:23 -0700)]
egl_dri2: Return NULL when xcb_get_geometry_reply fails.

This should fix bug #33946.

13 years agoscons: Add aliases for the llvmpipe unit tests.
José Fonseca [Sat, 19 Feb 2011 10:29:59 +0000 (10:29 +0000)]
scons: Add aliases for the llvmpipe unit tests.

Now one can simply do

  scons lp_test_format

13 years agogallivm: Use simple scaling plus casting in more unorm->float cases.
José Fonseca [Sat, 19 Feb 2011 10:25:43 +0000 (10:25 +0000)]
gallivm: Use simple scaling plus casting in more unorm->float cases.

13 years agoglsl: Remove $(PWD) from Makefile in favor of .
Kenneth Graunke [Sat, 19 Feb 2011 08:06:00 +0000 (00:06 -0800)]
glsl: Remove $(PWD) from Makefile in favor of .

Hopefully should fix bug #34468.

13 years agor300g: fix a possible race when counting contexts
Marek Olšák [Fri, 18 Feb 2011 23:16:44 +0000 (00:16 +0100)]
r300g: fix a possible race when counting contexts

Atomics aren't sufficient here.

13 years agor300g: fix invalid dereference in winsys
Marek Olšák [Fri, 18 Feb 2011 23:06:52 +0000 (00:06 +0100)]
r300g: fix invalid dereference in winsys

radeon_bo_unref may destroy the buffer, so call it after p_atomic_dec, not before.

13 years agosvga: Fix NULL dereference.
José Fonseca [Fri, 18 Feb 2011 19:03:08 +0000 (19:03 +0000)]
svga: Fix NULL dereference.

Probably introduced with the surface view move from screen to context.

13 years agovbo: add debug code to verify that buffers are unmapped before drawing
Brian Paul [Fri, 18 Feb 2011 17:34:06 +0000 (10:34 -0700)]
vbo: add debug code to verify that buffers are unmapped before drawing

13 years agomesa: MESA_VERBOSE logging for glRead/Draw/CopyPixels, glBlitFramebuffer
Brian Paul [Fri, 18 Feb 2011 16:53:29 +0000 (09:53 -0700)]
mesa: MESA_VERBOSE logging for glRead/Draw/CopyPixels, glBlitFramebuffer

13 years agost/mesa: set renderbuffer _BaseFormat in a few places
Brian Paul [Fri, 18 Feb 2011 17:28:27 +0000 (10:28 -0700)]
st/mesa: set renderbuffer _BaseFormat in a few places

NOTE: This is a candidate for the 7.9 and 7.10 branches

13 years agost/mesa: check buffer orientation in blit_copy_pixels()
Brian Paul [Fri, 18 Feb 2011 17:18:34 +0000 (10:18 -0700)]
st/mesa: check buffer orientation in blit_copy_pixels()

Can't invert the region if copying between surfaces with different
orientations.

13 years agosvga: Ensure pending drawing commands other surface operations are emitted before...
José Fonseca [Fri, 18 Feb 2011 14:33:55 +0000 (14:33 +0000)]
svga: Ensure pending drawing commands other surface operations are emitted before DMAs.

This behavior was last when moving the transfers to the contexts.

This fixes several piglit failures, which were reading the color renderbuffer
before the draw operations were emitted.

13 years agosvga: Cannot use negate or abs on source to dsx/dsy instructions.
José Fonseca [Fri, 18 Feb 2011 15:07:50 +0000 (15:07 +0000)]
svga: Cannot use negate or abs on source to dsx/dsy instructions.

13 years agosvga: Ensure SWTNL is created after HWTNL.
José Fonseca [Fri, 18 Feb 2011 14:29:48 +0000 (14:29 +0000)]
svga: Ensure SWTNL is created after HWTNL.

Matches the internal driver layering, and prevents null svga->hwtnl
dereferencing from inside the swtnl.

13 years agosvga: Ensure LRP's restrictions are observed in all uses.
José Fonseca [Fri, 18 Feb 2011 13:53:45 +0000 (13:53 +0000)]
svga: Ensure LRP's restrictions are observed in all uses.

The dst reg must be a temporary, and not be the same as src0 or src2.

13 years agosvga: Preserve src swizzles in submit_op2/3/4.
José Fonseca [Fri, 18 Feb 2011 13:24:12 +0000 (13:24 +0000)]
svga: Preserve src swizzles in submit_op2/3/4.

Several opcodes require scalar swizzle, and this requirement was
being was not being observed when creating temporaries for other reasons.

13 years agor300g: remove tracking whether vertex buffers need to be validated
Marek Olšák [Fri, 18 Feb 2011 14:29:00 +0000 (15:29 +0100)]
r300g: remove tracking whether vertex buffers need to be validated

This was getting hard to maintain and didn't really bring any real benefits.
Instead, validate buffers when the vertex array state is dirty.

13 years agost/mesa: fix geometry corruption by always re-binding vertex arrays
Marek Olšák [Thu, 17 Feb 2011 15:17:34 +0000 (16:17 +0100)]
st/mesa: fix geometry corruption by always re-binding vertex arrays

This is a temporary workaround. It fixes sauerbrauten with shaders enabled.

I guess we might be changing vertex attribs somewhere and not updating
the appropriate dirty flags, therefore we can't rely on them for now.
Or maybe we need to make this state dependent on some other flags too.

More info:
https://bugs.freedesktop.org/show_bug.cgi?id=34378

13 years agosvga: Disable surface cache for textures
Jakob Bornecrantz [Thu, 17 Feb 2011 17:16:14 +0000 (17:16 +0000)]
svga: Disable surface cache for textures

Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
13 years agosvga: Describe svga_sampler_views for refcnt debugging
Jakob Bornecrantz [Thu, 17 Feb 2011 14:58:55 +0000 (14:58 +0000)]
svga: Describe svga_sampler_views for refcnt debugging

Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
13 years agosvga: Make sure that refcnt debugger gets the correct backtrace for create
Jakob Bornecrantz [Thu, 17 Feb 2011 17:14:44 +0000 (17:14 +0000)]
svga: Make sure that refcnt debugger gets the correct backtrace for create

Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
13 years agoutil: Make refcnt and symbol debuggers work on windows
Jakob Bornecrantz [Thu, 17 Feb 2011 11:18:02 +0000 (11:18 +0000)]
util: Make refcnt and symbol debuggers work on windows

Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
13 years agoPoint to bugs.freedesktop.org rather than bugzilla.freedesktop.org
Cyril Brulebois [Fri, 18 Feb 2011 08:10:28 +0000 (00:10 -0800)]
Point to bugs.freedesktop.org rather than bugzilla.freedesktop.org

Suggested by a freedesktop.org admin.

Signed-off-by: Cyril Brulebois <kibi@debian.org>
13 years agou_vbuf_mgr: initialize flag indicating that buffers have been updated
Marek Olšák [Fri, 18 Feb 2011 12:45:29 +0000 (13:45 +0100)]
u_vbuf_mgr: initialize flag indicating that buffers have been updated

This fixes r300g errors:
r300: Cannot get a relocation in radeon_drm_cs_write_reloc.

13 years agogallium/svga: Fix unnecessary swtnl fallbacks
Thomas Hellstrom [Fri, 18 Feb 2011 10:36:34 +0000 (11:36 +0100)]
gallium/svga: Fix unnecessary swtnl fallbacks

When we drop the in_swtnl_draw flag, we must force a rerun of
update_need_swtnl to reset the need_swtnl flag to its correct value outside
of a swtnl vbo draw.

Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
13 years agor600g: reorganise rgtc pieces.
Dave Airlie [Fri, 18 Feb 2011 05:59:58 +0000 (15:59 +1000)]
r600g: reorganise rgtc pieces.

when the cs checker fixes go upstream a lot of this can disappear
into a drm version check.

Signed-off-by: Dave Airlie <airlied@redhat.com>
13 years agost/mesa: implement blit-based path for glCopyPixels
Brian Paul [Fri, 18 Feb 2011 02:10:13 +0000 (19:10 -0700)]
st/mesa: implement blit-based path for glCopyPixels

If doing a simple non-overlapping glCopyPixels with no per-fragment ops
we can use pipe_context::resource_copy_region().

13 years agomesa: fix comments for _mesa_clip_readpixels()
Brian Paul [Fri, 18 Feb 2011 01:12:25 +0000 (18:12 -0700)]
mesa: fix comments for _mesa_clip_readpixels()

13 years agost/mesa: indentation fix
Brian Paul [Thu, 17 Feb 2011 16:44:44 +0000 (09:44 -0700)]
st/mesa: indentation fix

13 years agor600g: Start a new TEX clause if the texture lookup address was fetched in the curren...
Fabian Bieler [Wed, 16 Feb 2011 09:02:47 +0000 (10:02 +0100)]
r600g: Start a new TEX clause if the texture lookup address was fetched in the current clause

Signed-off-by: Dave Airlie <airlied@redhat.com>