mesa.git
14 years agowindows: Quiet warning by not defining YY_NO_UNISTD_H.
Karl Schultz [Wed, 10 Mar 2010 21:27:34 +0000 (14:27 -0700)]
windows: Quiet warning by not defining YY_NO_UNISTD_H.

14 years agoprogs/trivial: use -c option to use glCopyPixels()
Brian Paul [Wed, 10 Mar 2010 21:35:57 +0000 (14:35 -0700)]
progs/trivial: use -c option to use glCopyPixels()

Otherwise we use glRead/DrawPixels to copy the off-screen FBO image
into the window.

Looks like NVIDIA's broken when using -c (the image is upside down),
but OK with -c -t.

14 years agoprogs/trivial: make clear-fbo-scissor.c work with other GL drivers
Brian Paul [Wed, 10 Mar 2010 21:32:56 +0000 (14:32 -0700)]
progs/trivial: make clear-fbo-scissor.c work with other GL drivers

NVIDIA's driver requires that the texture that we're going to render into
be complete.  Need to set min/mag filters to non-mipmap modes.

Plus added other error/debug checks.

14 years agoradeon: fallback to sw ReadPixels if color logicop is enabled
Maciej Cencora [Wed, 10 Mar 2010 21:31:53 +0000 (22:31 +0100)]
radeon: fallback to sw ReadPixels if color logicop is enabled

Fixes glean/logicOp (regressed after introducing hw accelerated support for ReadPixels)

14 years agor300: enable depth test only if depth buffer is available
Maciej Cencora [Wed, 10 Mar 2010 21:28:53 +0000 (22:28 +0100)]
r300: enable depth test only if depth buffer is available

Fixes #23532 and piglit/fbo-nodepth-test piglit/fbo-nostencil-test

14 years agoradeon: fix glCopyTex(Sub)Image if user FBO is bound
Maciej Cencora [Wed, 10 Mar 2010 19:53:21 +0000 (20:53 +0100)]
radeon: fix glCopyTex(Sub)Image if user FBO is bound

Fixes piglit/fbo-blit and wine d3d9 unit test.

14 years agofpglsl: a few more useful glsl tests
Zack Rusin [Wed, 10 Mar 2010 21:31:18 +0000 (16:31 -0500)]
fpglsl: a few more useful glsl tests

14 years agollvmpipe: Finally found a way to do vector comparisons without using intrinsics.
José Fonseca [Wed, 10 Mar 2010 20:36:42 +0000 (20:36 +0000)]
llvmpipe: Finally found a way to do vector comparisons without using intrinsics.

Only works well with LLVM >= 2.7

14 years agofpglsl: set an integer uniform required by the loop example
Zack Rusin [Wed, 10 Mar 2010 20:42:26 +0000 (15:42 -0500)]
fpglsl: set an integer uniform required by the loop example

14 years agofpglsl: add some for and while loops
Zack Rusin [Wed, 10 Mar 2010 20:37:18 +0000 (15:37 -0500)]
fpglsl: add some for and while loops

14 years agosoftpipe: fix memcpy params to avoid static analysis warnings
Brian Paul [Wed, 10 Mar 2010 20:09:00 +0000 (13:09 -0700)]
softpipe: fix memcpy params to avoid static analysis warnings

See fd.o bug 26970.  Also added sanity check assertions.

14 years agoprogs/trivial: add -t (RTT) option for clear-fbo-scissor.c
Brian Paul [Wed, 10 Mar 2010 19:19:26 +0000 (12:19 -0700)]
progs/trivial: add -t (RTT) option for clear-fbo-scissor.c

14 years agoi965: Add support for the CMP opcode in the GLSL path.
Eric Anholt [Wed, 10 Mar 2010 19:00:40 +0000 (11:00 -0800)]
i965: Add support for the CMP opcode in the GLSL path.

This would be triggered by use of sqrt() along with control flow.
Fixes piglit-fs-sqrt-branch and a bug in Yo Frankie!.

14 years agoi965: Print the opcode name for unrecognized opcodes in the GLSL path.
Eric Anholt [Wed, 10 Mar 2010 18:51:13 +0000 (10:51 -0800)]
i965: Print the opcode name for unrecognized opcodes in the GLSL path.

14 years agoprogs/trivial: added clear-fbo-scissor.c to test scissored clear of FBO
Brian Paul [Wed, 10 Mar 2010 18:51:44 +0000 (11:51 -0700)]
progs/trivial: added clear-fbo-scissor.c to test scissored clear of FBO

14 years agoi965: Fix the response len of masked sampler messages for 8-wide dispatch.
Eric Anholt [Wed, 10 Mar 2010 18:38:20 +0000 (10:38 -0800)]
i965: Fix the response len of masked sampler messages for 8-wide dispatch.

The bad response length would hang the GPU with a masked sample in a
shader using control flow.  For 8-wide, the response length is always
4, and masked slots are just not written to.  brw_wm_glsl.c already
allocates registers in the right locations.

Fixes piglit glsl-fs-bug25902 (fd.o bug #25902).

14 years agoi965: Print the offset for IFF in disasm
Eric Anholt [Wed, 10 Mar 2010 17:31:49 +0000 (09:31 -0800)]
i965: Print the offset for IFF in disasm

14 years agoRevert "scons: Refuse to use LLVM 2.7 for now."
José Fonseca [Wed, 10 Mar 2010 18:04:28 +0000 (18:04 +0000)]
Revert "scons: Refuse to use LLVM 2.7 for now."

This reverts commit 44703217f73095c4946e06057e399e447b252576.

http://www.llvm.org/bugs/show_bug.cgi?id=6429 has been fixed now. Things
appear to be working reasonably so far.

14 years agoprogs/tests: add additional FBO->window test paths (disabled)
Brian Paul [Wed, 10 Mar 2010 17:59:02 +0000 (10:59 -0700)]
progs/tests: add additional FBO->window test paths (disabled)

Normally use glReadPixels + glDrawPixels.  Add debug/test paths for
glCopyPixels and glBlitFramebuffer.

14 years agomesa: raise an error when trying to bind non-existant texture to FBO
Brian Paul [Wed, 10 Mar 2010 17:54:24 +0000 (10:54 -0700)]
mesa: raise an error when trying to bind non-existant texture to FBO

If the user calls glRenderBufferTexture(texture=N) but texture N
doesn't name an existing texture, raise GL_INVALID_ENUM.

Plus, add a comment about some questionable error checking code in
framebuffer_texture().  Ian?

14 years agomesa: added new function comments
Brian Paul [Wed, 10 Mar 2010 17:53:21 +0000 (10:53 -0700)]
mesa: added new function comments

14 years agost/mesa: set strb->format field in st_render_texture()
Brian Paul [Wed, 10 Mar 2010 17:50:17 +0000 (10:50 -0700)]
st/mesa: set strb->format field in st_render_texture()

This fixes a problem in glReadPixels when reading from an FBO's texture
attachment.  We have a better chance at hitting a fast path for
glReadPixels now.

14 years agost/mesa: add some comments in glReadPixels code
Brian Paul [Wed, 10 Mar 2010 17:49:18 +0000 (10:49 -0700)]
st/mesa: add some comments in glReadPixels code

14 years agost/mesa: consolidate duplicated texture allocation code
Brian Paul [Wed, 10 Mar 2010 17:48:10 +0000 (10:48 -0700)]
st/mesa: consolidate duplicated texture allocation code

14 years agoMerge branch '7.8'
Brian Paul [Wed, 10 Mar 2010 17:44:12 +0000 (10:44 -0700)]
Merge branch '7.8'

14 years agost/mesa: fix incorrect glCopyPixels between window/FBO
Brian Paul [Wed, 10 Mar 2010 17:42:22 +0000 (10:42 -0700)]
st/mesa: fix incorrect glCopyPixels between window/FBO

There was a DrawBuffer/ReadBuffer typo and we were neglecting to invert
the texture coords when copying from a window to an FBO.

Plus, add some surface dump/debug code (disabled).

(cherry picked from commit 34f02071618624263eba839b5aeb930d0e794078)

14 years agost/mesa: fix incorrect glDrawPixels into FBO
Brian Paul [Wed, 10 Mar 2010 17:41:22 +0000 (10:41 -0700)]
st/mesa: fix incorrect glDrawPixels into FBO

We weren't inverting the textured quad when drawing into an fbo.

(cherry picked from commit 8d3f629a13afb0d6acafc7a007972fdc5efe6847)

14 years agoMerge branch '7.8'
Michel Dänzer [Wed, 10 Mar 2010 17:33:17 +0000 (18:33 +0100)]
Merge branch '7.8'

14 years agost/xorg: Work around cursor reference counting bugs in older X servers.
Michel Dänzer [Wed, 10 Mar 2010 17:26:25 +0000 (18:26 +0100)]
st/xorg: Work around cursor reference counting bugs in older X servers.

Could result in use of freed memory and consequently random crashes, e.g. on
screen resize.
(cherry picked from commit 21c91b410a2a2cbf8eb677e59e3322f86320f2b0)

Conflicts:

src/gallium/state_trackers/xorg/xorg_tracker.h

14 years agor200: add additional blit formats
Alex Deucher [Wed, 10 Mar 2010 09:31:56 +0000 (04:31 -0500)]
r200: add additional blit formats

14 years agor100: add additional blit formats
Alex Deucher [Wed, 10 Mar 2010 09:19:42 +0000 (04:19 -0500)]
r100: add additional blit formats

14 years agoradeon/r200/r600: enable HW accelerated gl(Read/Copy/Draw)Pixels
Alex Deucher [Wed, 10 Mar 2010 00:44:23 +0000 (19:44 -0500)]
radeon/r200/r600: enable HW accelerated gl(Read/Copy/Draw)Pixels

14 years agoglapi: fix bug with tls and relocs
George Sapountzis [Tue, 9 Mar 2010 22:43:01 +0000 (00:43 +0200)]
glapi: fix bug with tls and relocs

add_dispatch (driver) and maybe get_proc_address (client) may be called before
set_dispatch is called, which results in generate_entrypoint using an unreloced
function template.

14 years agoglapi: these two should be ok for add_dispatch ...
George Sapountzis [Mon, 8 Mar 2010 01:10:30 +0000 (03:10 +0200)]
glapi: these two should be ok for add_dispatch ...

- a function cannot be both static and extension, right ?

- we should be setting the offset only if not already set, right ?

14 years agoglapi: comments for _glapi_add_dispatch
George Sapountzis [Mon, 8 Mar 2010 00:53:57 +0000 (02:53 +0200)]
glapi: comments for _glapi_add_dispatch

14 years agoglapi: minor cosmetic for _glapi_add_dispatch
George Sapountzis [Sun, 7 Mar 2010 23:58:59 +0000 (01:58 +0200)]
glapi: minor cosmetic for _glapi_add_dispatch

14 years agoglapi: add function set_entry_info
George Sapountzis [Sun, 7 Mar 2010 23:55:10 +0000 (01:55 +0200)]
glapi: add function set_entry_info

14 years agoglapi: parameter checking, failure paths, ... for add_function_name
George Sapountzis [Sun, 7 Mar 2010 23:40:14 +0000 (01:40 +0200)]
glapi: parameter checking, failure paths, ... for add_function_name

14 years agoglapi: cosmetic for _glapi_add_dispatch
George Sapountzis [Sun, 7 Mar 2010 23:26:01 +0000 (01:26 +0200)]
glapi: cosmetic for _glapi_add_dispatch

- static vs. extension
- indent
- s/new_offset/static_offset/
- ...

14 years agoglapi: use get_extension_proc in _glapi_add_dispatch
George Sapountzis [Sun, 7 Mar 2010 23:18:31 +0000 (01:18 +0200)]
glapi: use get_extension_proc in _glapi_add_dispatch

14 years agoglapi: cosmetic for functions for static table
George Sapountzis [Sat, 6 Mar 2010 19:19:45 +0000 (21:19 +0200)]
glapi: cosmetic for functions for static table

make similar to functions for extensions table

14 years agoglapi: add function to find extension by name
George Sapountzis [Sun, 7 Mar 2010 21:04:52 +0000 (23:04 +0200)]
glapi: add function to find extension by name

14 years agoglapi: functions for extensions table similar to static table
George Sapountzis [Sat, 6 Mar 2010 19:57:47 +0000 (21:57 +0200)]
glapi: functions for extensions table similar to static table

14 years agocell: handle NULL cso vertex_elements state object on bind
Roland Scheidegger [Wed, 10 Mar 2010 15:53:07 +0000 (16:53 +0100)]
cell: handle NULL cso vertex_elements state object on bind

drivers need to handle NULL cso vertex elements (and others) objects.
It is possible the cso code saves/restores NULL objects (if no normal
cso object was bound before this was invoked).
This led to segfaults (for example demos/cubemap) for apps which were using
things like creating mipmaps before drawing anything.

14 years agoi915g: Prevent NULL dereference.
Chia-I Wu [Wed, 10 Mar 2010 14:58:51 +0000 (22:58 +0800)]
i915g: Prevent NULL dereference.

bind_vertex_elements_state may be called with NULL velems.  Do nothing
if that is the case.

14 years agogallium: Do not mix winsys-drawable-handle and context-private.
Chia-I Wu [Wed, 10 Mar 2010 14:20:15 +0000 (22:20 +0800)]
gallium: Do not mix winsys-drawable-handle and context-private.

update_buffer should be called with context-private, not
winsys-drawable-handle.

14 years agosvga: Disable debug message.
Michal Krol [Wed, 10 Mar 2010 11:05:25 +0000 (12:05 +0100)]
svga: Disable debug message.

14 years agosvga: Check if vertex elements has been bound before using it.
Michal Krol [Wed, 10 Mar 2010 11:04:00 +0000 (12:04 +0100)]
svga: Check if vertex elements has been bound before using it.

14 years agosoftpipe: Prevent NULL dereference.
José Fonseca [Wed, 10 Mar 2010 12:24:03 +0000 (12:24 +0000)]
softpipe: Prevent NULL dereference.

14 years agodocs: Update new opengl32.dll target location.
José Fonseca [Wed, 10 Mar 2010 12:09:16 +0000 (12:09 +0000)]
docs: Update new opengl32.dll target location.

14 years agopython: Remove broken link hack.
José Fonseca [Wed, 10 Mar 2010 12:05:10 +0000 (12:05 +0000)]
python: Remove broken link hack.

14 years agopython: More build fixes.
José Fonseca [Wed, 10 Mar 2010 12:00:13 +0000 (12:00 +0000)]
python: More build fixes.

14 years agotrace: Make tr_public.h c++ friendly.
José Fonseca [Wed, 10 Mar 2010 11:52:20 +0000 (11:52 +0000)]
trace: Make tr_public.h c++ friendly.

14 years agotarget-helpers: remove swrast_xlib.c helper
Keith Whitwell [Wed, 10 Mar 2010 11:49:11 +0000 (11:49 +0000)]
target-helpers: remove swrast_xlib.c helper

This was a good idea, but ended up tying the build systems in knots.
We can revisit this later, in particular if we can put in place dummy
implementations of cell_create_screen(), llvmpipe_create_screen()
which just return NULL if the driver isn't available.

In the meantime, just duplicate this smallish function in the two
places it was being called.

14 years agows/xlib: remove dead lines
Keith Whitwell [Wed, 10 Mar 2010 11:13:03 +0000 (11:13 +0000)]
ws/xlib: remove dead lines

14 years agoscons: Fixup the libgl-gdi build.
José Fonseca [Wed, 10 Mar 2010 11:34:09 +0000 (11:34 +0000)]
scons: Fixup the libgl-gdi build.

14 years agopython: Handle the possibility that no driver is selected.
José Fonseca [Wed, 10 Mar 2010 10:56:51 +0000 (10:56 +0000)]
python: Handle the possibility that no driver is selected.

14 years agogallium: remove trace module injection from various state trackers
Keith Whitwell [Wed, 10 Mar 2010 10:43:00 +0000 (10:43 +0000)]
gallium: remove trace module injection from various state trackers

Components such as state trackers, drivers, etc, should be free to be
recombined in arbtrary ways to build driver stacks.  They should not
be reaching out and trying to build the stack themselves - this is now
expected to be handled by the "target" abstraction.

14 years agows/gdi: add include
Keith Whitwell [Wed, 10 Mar 2010 10:37:41 +0000 (10:37 +0000)]
ws/gdi: add include

14 years agotarget-helpers: helper for injecting common debug layers
Keith Whitwell [Wed, 10 Mar 2010 10:32:16 +0000 (10:32 +0000)]
target-helpers: helper for injecting common debug layers

Add a helper gallium_wrap_screen() for injecting the commonly
used extra layers into a gallium stack.  Currently that's just the
trace module and identity layer, but there could be more in the
future, eg. a validation layer.

14 years agopython: Fix up state tracker for sw api.
José Fonseca [Wed, 10 Mar 2010 10:34:29 +0000 (10:34 +0000)]
python: Fix up state tracker for sw api.

14 years agoRevert "r300-gallium: Skeleton for integrating into the python statetracker."
José Fonseca [Wed, 10 Mar 2010 10:00:08 +0000 (10:00 +0000)]
Revert "r300-gallium: Skeleton for integrating into the python statetracker."

This reverts commit 2d56d0839e6db0861131893d67fe23734800085a.

Never actually used.

14 years agost/wgl: add missing paramter
Keith Whitwell [Wed, 10 Mar 2010 09:52:25 +0000 (09:52 +0000)]
st/wgl: add missing paramter

14 years agotrace: include tr_public.h
Keith Whitwell [Wed, 10 Mar 2010 09:51:41 +0000 (09:51 +0000)]
trace: include tr_public.h

14 years agogallium: plumb winsys-drawable-handle through to state tracker
Keith Whitwell [Wed, 10 Mar 2010 09:22:02 +0000 (09:22 +0000)]
gallium: plumb winsys-drawable-handle through to state tracker

The state trackers need this value so that they can supply it
as the "void *" argument to flush_frontbuffer.

Fixes single-buffer rendering.

14 years agoMerge commit 'origin/master' into gallium-sw-api-2
Keith Whitwell [Wed, 10 Mar 2010 08:29:27 +0000 (08:29 +0000)]
Merge commit 'origin/master' into gallium-sw-api-2

14 years agollvmpipe: Cope with null Vertex element cso.
José Fonseca [Wed, 10 Mar 2010 07:23:29 +0000 (07:23 +0000)]
llvmpipe: Cope with null Vertex element cso.

CSO can often be null.

For example:
1. at initialization
2. using an util module (u_blit) right after initialization (it will push
   state and pop the previous null state)
3. at shutdown time (state shouldn't be bound when being destroyed)

Glean was hitting 2.

14 years agonouveau: translate PIPE_BUFFER_USAGE_UNSYNCHRONIZED
Ben Skeggs [Wed, 10 Mar 2010 05:22:53 +0000 (15:22 +1000)]
nouveau: translate PIPE_BUFFER_USAGE_UNSYNCHRONIZED

14 years agonv50: inline nv50_state_flush_notify()
Ben Skeggs [Tue, 9 Mar 2010 05:30:08 +0000 (15:30 +1000)]
nv50: inline nv50_state_flush_notify()

It's (rightly) not called from anywhere else now

14 years agonv50: remove nv50_context.state.instbuf
Ben Skeggs [Tue, 9 Mar 2010 05:29:12 +0000 (15:29 +1000)]
nv50: remove nv50_context.state.instbuf

14 years agonv50: remove unnecessary macro
Ben Skeggs [Tue, 9 Mar 2010 04:56:46 +0000 (14:56 +1000)]
nv50: remove unnecessary macro

14 years agonv50: move nv50_prim() into a header file rather than duplicating
Ben Skeggs [Tue, 9 Mar 2010 04:52:30 +0000 (14:52 +1000)]
nv50: move nv50_prim() into a header file rather than duplicating

14 years agonv50: add option to force immediate-mode submission, disable by default
Ben Skeggs [Tue, 9 Mar 2010 04:04:14 +0000 (14:04 +1000)]
nv50: add option to force immediate-mode submission, disable by default

14 years agonv50: re-add immediate mode vertex submission paths
Ben Skeggs [Mon, 8 Mar 2010 07:06:38 +0000 (17:06 +1000)]
nv50: re-add immediate mode vertex submission paths

14 years agonv50: when doing inline indices, split elt lists so they fit into pushbuf
Ben Skeggs [Mon, 8 Mar 2010 03:27:46 +0000 (13:27 +1000)]
nv50: when doing inline indices, split elt lists so they fit into pushbuf

14 years agonv50: reimplement draw_elements_instance(), use for draw_elements() too
Ben Skeggs [Fri, 5 Mar 2010 03:25:01 +0000 (13:25 +1000)]
nv50: reimplement draw_elements_instance(), use for draw_elements() too

This makes draw_elements()/draw_elements_instanced() do the right thing
for the non-inline elements cases, and not require flush_notify().

14 years agonv50: reimplement draw_arrays_instanced(), do draw_arrays() in terms of it
Ben Skeggs [Fri, 5 Mar 2010 00:08:12 +0000 (10:08 +1000)]
nv50: reimplement draw_arrays_instanced(), do draw_arrays() in terms of it

This makes draw_arrays()/draw_arrays_instanced() do the right thing and
not require the (probably broken anyway) flush_notify() usage.

It also fixes a potential bug in the behaviour of reading InstanceID from
shaders, where 0 should be read for non-instanced drawing, previously it
was possible to read non-0 ids if mixing instanced/non-instanced.

14 years agonv50: rip out inline push draw paths temporarily
Ben Skeggs [Thu, 4 Mar 2010 03:47:41 +0000 (13:47 +1000)]
nv50: rip out inline push draw paths temporarily

14 years agonv50: make use of scissor enable/disable method
Ben Skeggs [Thu, 4 Mar 2010 01:13:51 +0000 (11:13 +1000)]
nv50: make use of scissor enable/disable method

14 years agonv50: move magic 0x142c stuff to after state emission
Ben Skeggs [Thu, 4 Mar 2010 00:55:50 +0000 (10:55 +1000)]
nv50: move magic 0x142c stuff to after state emission

14 years agonv50: avoid unnecessary vp/gp/fp state changes
Ben Skeggs [Wed, 3 Mar 2010 23:52:47 +0000 (09:52 +1000)]
nv50: avoid unnecessary vp/gp/fp state changes

14 years agonv50: remove pre_pipebuffer_map hack....
Ben Skeggs [Wed, 3 Mar 2010 05:02:53 +0000 (15:02 +1000)]
nv50: remove pre_pipebuffer_map hack....

14 years agonv50: remove horrific abuse of nouveau_channel.flush_notify
Ben Skeggs [Wed, 3 Mar 2010 04:59:28 +0000 (14:59 +1000)]
nv50: remove horrific abuse of nouveau_channel.flush_notify

Really though, using this at all is just not a good idea in the 3D driver.
I'm almost certain the hardware will not like a reloc appearing between
begin()/end().. Anyways, this is still better than before, more fixes
to come..

14 years agonv50: always emit dummy relocs for all still-referenced buffers
Ben Skeggs [Wed, 3 Mar 2010 04:55:54 +0000 (14:55 +1000)]
nv50: always emit dummy relocs for all still-referenced buffers

14 years agonv50: ensure enough room for state changes in current pushbuf
Ben Skeggs [Wed, 3 Mar 2010 04:43:21 +0000 (14:43 +1000)]
nv50: ensure enough room for state changes in current pushbuf

Also allows the nv50_state_validate() caller to request a minimum amount
of space that itself requires, not all callers accurately use this yet
but the simple cases are now accounted for.

Rendering will also be dropped on the floor if validate fails now.

14 years agonv50: rework state emission
Ben Skeggs [Wed, 3 Mar 2010 04:26:25 +0000 (14:26 +1000)]
nv50: rework state emission

14 years agonv50: use relocs rather than re-uploading TIC all the time
Ben Skeggs [Wed, 3 Mar 2010 01:45:08 +0000 (11:45 +1000)]
nv50: use relocs rather than re-uploading TIC all the time

14 years agor300g: Reorder regs, save one dword.
Corbin Simpson [Wed, 10 Mar 2010 04:03:35 +0000 (20:03 -0800)]
r300g: Reorder regs, save one dword.

Or, put another way, save 10% on rendering calls.

14 years agowinsys/drm: Handle circular dependencies in Makefile.egl.
Chia-I Wu [Wed, 10 Mar 2010 02:12:45 +0000 (10:12 +0800)]
winsys/drm: Handle circular dependencies in Makefile.egl.

The libraries have circular dependencies.  Use --start-group and
--end-group when producing the final shared libraries.

14 years agost/egl: Fix build errors in ximage backend after merge.
Chia-I Wu [Wed, 10 Mar 2010 01:48:33 +0000 (09:48 +0800)]
st/egl: Fix build errors in ximage backend after merge.

This fixes assorted merge conflicts when master is merged to
gallium-sw-api-2 in 0c96690a5b6e1c2d114e7ec5f1e9d60a4ff2a330.

14 years agoi965: Fix ENDLOOP to only patch up this loop's BREAK and CONT.
Eric Anholt [Tue, 9 Mar 2010 22:22:51 +0000 (14:22 -0800)]
i965: Fix ENDLOOP to only patch up this loop's BREAK and CONT.

Corresponds to d225a25e21a24508aea3b877c78beb35502e942d and fixes
piglit glsl-fs-loop-nested.  Bug #25173.

14 years agoi965: Unalias all GLSL source regs from the destination regs used.
Eric Anholt [Tue, 9 Mar 2010 19:56:14 +0000 (11:56 -0800)]
i965: Unalias all GLSL source regs from the destination regs used.

We were doing it ad-hoc before, as instructions with potential
aliasing problems were identified.  But thanks to swizzling basically
anything can have aliasing, so just do it generally at source reg
setup time.  This is somewhat inefficient, because sometimes an
operation doesn't need unaliasing protection if the swizzling is safe,
but the unaliasing before didn't cover those cases either.

Fixes piglit glsl-fs-loop.

14 years agoi965: Print the offsets for WHILE and BREAK in disasm.
Eric Anholt [Tue, 9 Mar 2010 19:31:28 +0000 (11:31 -0800)]
i965: Print the offsets for WHILE and BREAK in disasm.

14 years agoi965: Fix nested loops in the VS.
Eric Anholt [Tue, 9 Mar 2010 17:56:42 +0000 (09:56 -0800)]
i965: Fix nested loops in the VS.

We were patching up all the break and continues between the start of
our loop and the end of our loop, even if they were breaks/continues
for an inner loop.  Avoiding patching already patched breaks/continues
fixes piglit glsl-vs-loop-nested.

14 years agoi965: Fix up VP constbuf leak on program delete.
Eric Anholt [Tue, 9 Mar 2010 00:08:33 +0000 (16:08 -0800)]
i965: Fix up VP constbuf leak on program delete.

14 years agor300: don't crash if there's no colorbuffer
Maciej Cencora [Tue, 9 Mar 2010 22:13:19 +0000 (23:13 +0100)]
r300: don't crash if there's no colorbuffer

14 years agoradeon: mark framebuffer as incomplete if renderbuffer format isn't supported by hw
Maciej Cencora [Sun, 7 Mar 2010 21:01:56 +0000 (22:01 +0100)]
radeon: mark framebuffer as incomplete if renderbuffer format isn't supported by hw

14 years agor300: add support for more rendering formats
Maciej Cencora [Sun, 7 Mar 2010 13:26:21 +0000 (14:26 +0100)]
r300: add support for more rendering formats

14 years agoradeon/r200/r300/r600: add is_format_renderable function
Maciej Cencora [Sun, 7 Mar 2010 13:34:21 +0000 (14:34 +0100)]
radeon/r200/r300/r600: add is_format_renderable function

14 years agoprogs/tests: use first color attachement
Maciej Cencora [Tue, 9 Mar 2010 20:42:41 +0000 (21:42 +0100)]
progs/tests: use first color attachement

Allows the tests to be run on drivers that supports only one color attachement.