Corbin Simpson [Tue, 10 Mar 2009 07:14:56 +0000 (00:14 -0700)]
r300-gallium: Fix a handful of compiler warnings.
Missing INLINE, missing declarations, extraneous definitions. The usual.
Corbin Simpson [Tue, 10 Mar 2009 07:27:13 +0000 (00:27 -0700)]
r300-gallium: First stab at texture support.
Corbin Simpson [Tue, 10 Mar 2009 07:10:24 +0000 (00:10 -0700)]
r300-gallium: Moar fixes in the register file.
Sorry, but it's confusing when format0 in r300_reg != format0 in the docs.
Brian Paul [Mon, 9 Mar 2009 20:33:19 +0000 (14:33 -0600)]
xmesa: set back-buffer's drawable field
Fixes back-buffer rendering when MESA_BACK_BUFFER=pixmap
Keith Whitwell [Mon, 9 Mar 2009 17:10:12 +0000 (17:10 +0000)]
vpglsl: build with scons and glew
Brian Paul [Mon, 9 Mar 2009 17:49:46 +0000 (11:49 -0600)]
demos: in progs/demos/cubemap.c press c/f to cycle through clamp/filter modes
Also generate a mipmap for the default checker images.
Brian Paul [Mon, 9 Mar 2009 17:48:39 +0000 (11:48 -0600)]
i965: fix cube map lock-up / corruption
If we're using anything but GL_NEAREST sampling of a cube map, we need to
use the BRW_TEXCOORDMODE_CUBE texcoord wrap mode. Before this, the GPU
would either lock up or subsequent texture filtering would be corrupted.
Michel Dänzer [Mon, 9 Mar 2009 16:46:49 +0000 (17:46 +0100)]
scons: Also link in additional LLVM components.
They don't seem necessary here, but they shouldn't hurt either...
Kamalneet Singh [Mon, 9 Mar 2009 10:35:44 +0000 (16:05 +0530)]
linux-llvm config: Linking with required llvm libs
Michel Dänzer [Mon, 9 Mar 2009 16:39:14 +0000 (17:39 +0100)]
scons: Also define USE_XSHM for the glx/xlib state tracker build.
Fixes an inconsisten definition of struct xmesa_buffer between there and
winsys/xlib, resulting in a crash in XPutImage.
Brian Paul [Mon, 9 Mar 2009 15:39:21 +0000 (09:39 -0600)]
st: silence warning
Brian Paul [Mon, 9 Mar 2009 15:38:43 +0000 (09:38 -0600)]
st: remove unused DrawPixels code
Brian Paul [Mon, 9 Mar 2009 15:33:46 +0000 (09:33 -0600)]
st: use pointer_to_offset() cast wrapper to convert pointers to uint
Silences warnings with 64-bit builds. See comments for details.
Brian Paul [Sun, 8 Mar 2009 18:07:41 +0000 (12:07 -0600)]
mesa: reorder register file enums
Keith Whitwell [Mon, 9 Mar 2009 15:00:31 +0000 (15:00 +0000)]
trivial: add tri-stipple to SConscript
Keith Whitwell [Fri, 6 Mar 2009 21:17:59 +0000 (21:17 +0000)]
st: also check for a8 texture support in bitmap code
Roland Scheidegger [Mon, 9 Mar 2009 14:53:41 +0000 (15:53 +0100)]
fix typo in fragment pipe alu define, should fix dot3_rgb tex combine
Keith Whitwell [Mon, 9 Mar 2009 14:40:34 +0000 (14:40 +0000)]
vbo: yet tighter still usage of FLUSH_NEED_CURRENT
Previous change broke redbook/polys and probably others. I'm fairly
sure that drivers like r300 don't need to touch
ctx->Driver.NeedVertices, but this code is incredibly fragile and I'm
not confident about removing it from there. Hopefully this gets
things working again.
Keith Whitwell [Mon, 9 Mar 2009 14:08:35 +0000 (14:08 +0000)]
fp: enable a second texture unit and add a kil test for it
Michel Dänzer [Mon, 9 Mar 2009 12:27:54 +0000 (13:27 +0100)]
Fix up another instance of _mesa_unreference_framebuffer().
Keith Whitwell [Mon, 9 Mar 2009 12:17:28 +0000 (12:17 +0000)]
vbo: stricter checks on Driver.NeedFlush
This variable is being used in the r300 driver to trigger a flush under
circumstances unrelated to the use in the vbo module. Tighten up the
checks in vbo so as to avoid conflict with r300.
Reported by Maciej Cencora <m.cencora@gmail.com>
Michel Dänzer [Mon, 9 Mar 2009 11:58:16 +0000 (12:58 +0100)]
gallium: Fix p_refcnt.h for C++ compilers.
Michal Krol [Mon, 9 Mar 2009 07:50:01 +0000 (08:50 +0100)]
tgsi: Implement CND, CND0 opcodes.
Michal Krol [Mon, 9 Mar 2009 07:44:28 +0000 (08:44 +0100)]
tgsi: Remove redundant micro_ge() -- use micro_le().
Michal Krol [Mon, 9 Mar 2009 07:37:34 +0000 (08:37 +0100)]
tgsi: Document ATI_fragment_shader instruction set operations.
Corbin Simpson [Sun, 8 Mar 2009 22:04:10 +0000 (15:04 -0700)]
r300-gallium: Unbreak trivial/point.
Oops, forgot to remove that.
Edit: And trivial/line and trivial/tri.
Michal Krol [Sun, 8 Mar 2009 18:15:47 +0000 (19:15 +0100)]
tgsi: Document NV_vertex_program instruction set operations.
Corbin Simpson [Sat, 7 Mar 2009 21:26:48 +0000 (13:26 -0800)]
r300-gallium: Correct vertex format setup, cleanup regs and debugging.
trivial/point no longer hardlocks.
Corbin Simpson [Sat, 7 Mar 2009 19:31:36 +0000 (11:31 -0800)]
r300-gallium: Clean up RS.
Wow, there were buggies by the boatload in there.
Corbin Simpson [Sat, 7 Mar 2009 09:53:42 +0000 (01:53 -0800)]
r300-gallium: Move a few registers.
These shouldn't be written if not on TCL HW.
Brian Paul [Sat, 7 Mar 2009 20:30:03 +0000 (13:30 -0700)]
mesa: s/int/GLsizeiptr/ to silence warning with 64-bit build
Brian Paul [Sat, 7 Mar 2009 20:23:08 +0000 (13:23 -0700)]
gallium: use unsigned long to silence warnings with 64-bit build
Brian Paul [Sat, 7 Mar 2009 20:20:50 +0000 (13:20 -0700)]
r300: remove assignment to removed StringPos field
Brian Paul [Sat, 7 Mar 2009 20:14:37 +0000 (13:14 -0700)]
mesa: move shared context state functions to new shared.c file
Brian Paul [Sat, 7 Mar 2009 19:42:34 +0000 (12:42 -0700)]
vbo: make bind_array_obj() code a little more concise
Brian Paul [Sat, 7 Mar 2009 19:36:16 +0000 (12:36 -0700)]
mesa: use @ to silence some Makefile output
Brian Paul [Sat, 7 Mar 2009 19:33:11 +0000 (12:33 -0700)]
mesa: move glViewport and glDepthRange functions into new viewport.c file
A bit of refactoring with an eye toward ES2 and GL 3.1
Brian Paul [Sat, 7 Mar 2009 19:11:44 +0000 (12:11 -0700)]
swrast: remove old comment
Brian Paul [Sat, 7 Mar 2009 19:09:33 +0000 (12:09 -0700)]
swrast: rename s_buffers.c -> s_clear.c
Brian Paul [Sat, 7 Mar 2009 19:02:52 +0000 (12:02 -0700)]
mesa: gl_register_file enum typedef
Brian Paul [Sat, 7 Mar 2009 18:53:18 +0000 (11:53 -0700)]
mesa: remove GL_MESA_program_debug extension
This was never fully fleshed out and hasn't been used.
Brian Paul [Sat, 7 Mar 2009 18:49:45 +0000 (11:49 -0700)]
mesa: silence warning
Brian Paul [Sat, 7 Mar 2009 18:32:18 +0000 (11:32 -0700)]
mesa: remove last of _mesa_unreference_framebuffer() calls
Maciej Cencora [Sat, 7 Mar 2009 13:05:19 +0000 (14:05 +0100)]
r300: shut up valgrind
It complained about uninitialized values
Signed-off-by: Nicolai Haehnle <nhaehnle@gmail.com>
Corbin Simpson [Sat, 7 Mar 2009 08:55:10 +0000 (00:55 -0800)]
r300-gallium: Typo in assert.
Corbin Simpson [Sat, 7 Mar 2009 08:51:11 +0000 (00:51 -0800)]
r300-gallium: Emit vertex size.
Not actually going to make a difference right now, but might as well.
Corbin Simpson [Sat, 7 Mar 2009 08:42:12 +0000 (00:42 -0800)]
r300-gallium: A bit more vertex format fixup.
Ben Skeggs [Sat, 7 Mar 2009 07:28:08 +0000 (17:28 +1000)]
nouveau: use bo_handle_ref instead of bo_fake to get front-buffer bo
This'll work on non-GEM also as the DDX will just pass an offset, and
libdrm_nouveau knows to treat "handle" as a VRAM offset. When running
on GEM the DDX (it doesn't yet, but will) passes a buffer handle
instead.
Ben Skeggs [Sat, 7 Mar 2009 07:24:19 +0000 (17:24 +1000)]
nv50: simplify tesla object selection
GeForce 8/9 are a bit more consistent than nv40 so far, so this was
overkill before.
Ben Skeggs [Sat, 7 Mar 2009 07:21:15 +0000 (17:21 +1000)]
nouveau: fix more breakage from pipe_reference..
Ben Skeggs [Sat, 7 Mar 2009 07:14:24 +0000 (17:14 +1000)]
nouveau: make stateobjs start off with refcount of 1
Victor Stinner [Fri, 6 Mar 2009 13:03:15 +0000 (14:03 +0100)]
Fix nv50_screen_create()
Setup screen->pipe before using it (screen->constbuf =
screen->pipe.buffer_create(...))
Victor Stinner [Fri, 6 Mar 2009 12:52:19 +0000 (13:52 +0100)]
Fix nouveau_pipe_create() / nouveau_context_init(): raise an error if the screen/pipe creation failed
Alan Coopersmith [Wed, 16 Jul 2008 19:47:27 +0000 (12:47 -0700)]
Add Solaris to OS'es using PROT_EXEC mmap() to get executable heap space
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
Corbin Simpson [Sat, 7 Mar 2009 03:07:13 +0000 (19:07 -0800)]
r300-gallium: Fix masking on vertex formats.
Gah, what a simple yet terrible mistake.
Corbin Simpson [Fri, 6 Mar 2009 22:23:20 +0000 (14:23 -0800)]
r300-gallium: Remove unknown regs.
Leftovers from fglrx traces, probably.
Corbin Simpson [Fri, 6 Mar 2009 22:13:21 +0000 (14:13 -0800)]
r300-gallium: Actually do framebuffer setup.
Can't believe this wasn't wired up.
Corbin Simpson [Fri, 6 Mar 2009 21:31:13 +0000 (13:31 -0800)]
r300-gallium: Make sure registers are inside BEGIN/END CS.
Corbin Simpson [Fri, 6 Mar 2009 21:18:12 +0000 (13:18 -0800)]
r300-gallium: Separate out fog block.
We'll never actually use fog block. (I hope.)
Brian Paul [Fri, 6 Mar 2009 22:45:01 +0000 (15:45 -0700)]
glsl: call the program optimizer
This still needs more testing bug glean and Mesa GLSL tests seem OK.
Brian Paul [Fri, 6 Mar 2009 23:00:25 +0000 (16:00 -0700)]
i965: check if we run out of GRF/temp registers
Before this change we would up emitting instructions with invalid register
numbers. This typically (but not always) hung the GPU. For now, just
prevent emitting bad instructions to avoid hangs. Still need to do some
kind of proper error recovery.
Brian Paul [Fri, 6 Mar 2009 22:55:33 +0000 (15:55 -0700)]
mesa: added _mesa_read_shader() function to read shaders from files
Useful for debugging to override an application's shader.
Brian Paul [Fri, 6 Mar 2009 22:39:14 +0000 (15:39 -0700)]
i965: bump up BRW_EU_MAX_INSN
This is the size of the intermediate instruction buffer.
Brian Paul [Fri, 6 Mar 2009 23:18:22 +0000 (16:18 -0700)]
mesa: add new program optimizer code
This is pretty simplistic for now, but helps with certain shaders.
Brian Paul [Fri, 6 Mar 2009 20:37:48 +0000 (13:37 -0700)]
i965: comments
Brian Paul [Fri, 6 Mar 2009 19:32:55 +0000 (12:32 -0700)]
i965: comments and minor clean-ups
Brian Paul [Fri, 6 Mar 2009 23:04:53 +0000 (16:04 -0700)]
i965: avoid unnecessary calls to brw_wm_is_glsl()
This function scans the shader to see if it has any GLSL features like
conditionals and loops. Calling this during state validation is expensive.
Just call it when the shader is given to the driver and save the result.
There's some new/temporary assertions to be sure we don't get out of sync
on this.
Maciej Cencora [Tue, 17 Feb 2009 12:30:33 +0000 (13:30 +0100)]
r300: fix depth write regression (found by Nicolai Haehnle)
Signed-off-by: Nicolai Haehnle <nhaehnle@gmail.com>
Maciej Cencora [Sun, 15 Feb 2009 20:58:18 +0000 (21:58 +0100)]
r300: enable EXT_fog_coord extension
Remove fixed function fog setup.
Signed-off-by: Nicolai Haehnle <nhaehnle@gmail.com>
Maciej Cencora [Sun, 15 Feb 2009 19:57:32 +0000 (20:57 +0100)]
r300: route fog coord and W pos correctly
Also cleanup sw tcl vertex buffer setup
Signed-off-by: Nicolai Haehnle <nhaehnle@gmail.com>
Maciej Cencora [Wed, 18 Feb 2009 09:42:01 +0000 (10:42 +0100)]
r300: rewrite and hopefully simplify RS setup
Testing and regression fixes by Markus Amsler
Signed-off-by: Nicolai Haehnle <nhaehnle@gmail.com>
Maciej Cencora [Wed, 4 Feb 2009 12:40:48 +0000 (13:40 +0100)]
r300: add few macros for RS setup
Signed-off-by: Nicolai Haehnle <nhaehnle@gmail.com>
Maciej Cencora [Sun, 8 Feb 2009 01:28:27 +0000 (02:28 +0100)]
r300: silence valgrind
Signed-off-by: Nicolai Haehnle <nhaehnle@gmail.com>
Maciej Cencora [Wed, 4 Feb 2009 12:37:57 +0000 (13:37 +0100)]
r300: Print reg address when debugging is enabled
Signed-off-by: Nicolai Haehnle <nhaehnle@gmail.com>
Keith Whitwell [Fri, 6 Mar 2009 21:15:19 +0000 (21:15 +0000)]
fp: add some more texture, position and kill tests
Keith Whitwell [Fri, 6 Mar 2009 20:42:40 +0000 (20:42 +0000)]
fp: new kill + position test
Keith Whitwell [Fri, 6 Mar 2009 18:53:56 +0000 (18:53 +0000)]
fp: dont reference fragment.position.zw
Keith Whitwell [Fri, 6 Mar 2009 11:05:09 +0000 (11:05 +0000)]
engine: also print fps data to stdout
Useful for figuring out how much of a perf impact the glBitmap fps
display has on a given driver.
Maciej Cencora [Fri, 6 Mar 2009 19:14:36 +0000 (20:14 +0100)]
r300: don't crash on sw tcl hw if point size vertex attrib is sent
Corbin Simpson [Fri, 6 Mar 2009 19:28:08 +0000 (11:28 -0800)]
r300-gallium: GA enhancements.
Basically an errata fixup register.
Corbin Simpson [Fri, 6 Mar 2009 19:17:55 +0000 (11:17 -0800)]
r300-gallium: Flat/smooth shading state.
Corbin Simpson [Fri, 6 Mar 2009 17:44:21 +0000 (09:44 -0800)]
r300-gallium: Pick up a few more bits of rs_state.
Including two registers that already should have been covered...huh...
José Fonseca [Fri, 6 Mar 2009 18:03:50 +0000 (18:03 +0000)]
wgl: Check support for all other depth/stencil formats.
José Fonseca [Fri, 6 Mar 2009 17:57:02 +0000 (17:57 +0000)]
wgl: Choose a supported S8Z24/Z24S8/X8Z24/Z24X8.
Jeremy Huddleston [Fri, 6 Mar 2009 16:20:21 +0000 (11:20 -0500)]
Updated darwin config for when X11 is not in the same location as we're installing to
José Fonseca [Fri, 6 Mar 2009 14:02:42 +0000 (14:02 +0000)]
mesa: Reads must also be done with lock held.
Otherwise two threads might think each made the refcount go zero.
José Fonseca [Fri, 6 Mar 2009 14:01:24 +0000 (14:01 +0000)]
mesa: Fix typo.
Windows threads block if one over-unlocks them.
Eric Anholt [Fri, 6 Mar 2009 07:32:00 +0000 (23:32 -0800)]
intel: Fix bpp setting of blits to 8bpp targets.
This was causing hangs in cairogears, as we would blit to the 8bpp target
(A8 texture) as 16bpp, and stomp over state objects.
Eric Anholt [Fri, 6 Mar 2009 02:50:29 +0000 (18:50 -0800)]
i965: fix 3DPRIMITIVE batch decode of the vertex count field.
Eric Anholt [Fri, 6 Mar 2009 02:17:13 +0000 (18:17 -0800)]
i965: Stop dumping programs after the first all-zeroes entry.
Eric Anholt [Fri, 6 Mar 2009 01:18:49 +0000 (17:18 -0800)]
intel: Add always_flush_batch driconf option for making small batchbuffers.
This can improve debugging with INTEL_DEBUG=batch,sync by giving smaller
batchbuffers.
Eric Anholt [Fri, 6 Mar 2009 01:08:36 +0000 (17:08 -0800)]
intel: Add always_flush_cache driconf option for debugging cache flush failure.
I keep wanting to hack this knob in as a one-time thing, so it seemed useful
to have all the time.
Eric Anholt [Thu, 5 Mar 2009 18:57:43 +0000 (10:57 -0800)]
i965: Add a note about why the _NEW_STENCIL is required in draw_buffers.
Eric Anholt [Thu, 5 Mar 2009 16:25:22 +0000 (08:25 -0800)]
intel: Remove a gratuitous MI_FLUSH after clearing with a blit.
The 3D destination shares the same cache so we don't have any trouble with
the later commands needing the writes flushed inside of the same batchbuffer.
Eric Anholt [Thu, 5 Mar 2009 16:13:21 +0000 (08:13 -0800)]
i965: Remove dead flushing code.
Joel Bosveld [Thu, 5 Mar 2009 23:46:08 +0000 (08:46 +0900)]
st/xorg: Install to XORG_DRIVER_INSTALL_DIR
Brian Paul [Fri, 6 Mar 2009 00:24:39 +0000 (17:24 -0700)]
i965: comments and formatting fixes
Brian Paul [Fri, 6 Mar 2009 00:23:42 +0000 (17:23 -0700)]
i965: fix emit_math1() function used for scalar instructions
Instructions such as RCP, RSQ, LOG must smear the result of the function
across the dest register's X, Y, Z and W channels (subject to write masking).
Before this change, only the X component was getting written.
Among other things, this fixes cube map texture sampling in GLSL shaders
(since cube lookups involve normalizing the texcoord).
Brian Paul [Fri, 6 Mar 2009 00:14:29 +0000 (17:14 -0700)]
mesa: added some assertions
Brian Paul [Fri, 6 Mar 2009 00:14:05 +0000 (17:14 -0700)]
mesa: when printing src regs, use |reg| for absolute value
And check opcode number to avoid crashing on driver-private opcodes.