Maciej Cencora [Sat, 18 Apr 2009 02:00:51 +0000 (04:00 +0200)]
r300: more prepare for merge
Maciej Cencora [Sat, 18 Apr 2009 01:44:36 +0000 (03:44 +0200)]
r300: further r300/r500 merge preparation
Maciej Cencora [Sat, 18 Apr 2009 01:34:21 +0000 (03:34 +0200)]
r300: merge r300/r500 fragment program compiler structure
Maciej Cencora [Sat, 18 Apr 2009 01:16:16 +0000 (03:16 +0200)]
r300: merge r300/r500 fragment program structures
Maciej Cencora [Sat, 18 Apr 2009 00:42:35 +0000 (02:42 +0200)]
r300: r300/r500 fp shader merge WIP
Maciej Cencora [Fri, 17 Apr 2009 23:58:52 +0000 (01:58 +0200)]
r300: general cleanup
- remove unused fields
- remove unused defines and macros
- flatten one structure
Maciej Cencora [Fri, 17 Apr 2009 21:54:20 +0000 (23:54 +0200)]
r300: remove unnecessary forward function declaration
Maciej Cencora [Fri, 17 Apr 2009 21:42:37 +0000 (23:42 +0200)]
r300: context creation cleanup
- move constant values initialization to seperate function
- remove obvious comments
Dave Airlie [Sun, 19 Apr 2009 12:04:42 +0000 (22:04 +1000)]
radeon: update clear state with latest intel code
Maciej Cencora [Thu, 16 Apr 2009 16:22:44 +0000 (18:22 +0200)]
r300: we always want non NDC coords format for swtcl
Maciej Cencora [Thu, 16 Apr 2009 15:50:13 +0000 (17:50 +0200)]
r300: cleanup frag prog setup a little
Use proper fields for marking if fp is translated, and if is translated succesfully.
Now if fp gets translated (even unsuccesfully) fp->translated is true. If the translation failed (i.e. because we exceeded limit of
maximum texture indirections) the fp->error is set. With a little updated fallback function it prevents non native fragment programs
from beeing translated with every frame (the translation would fail anyway so there's no point to try again).
Also implement IsProgramNative function for GL_FRAGMENT_PROGRAM_ARB (it should give some performance boost in apps that checks if
program is native and falls back to simpler shader to meet hw limits if necessary) and cleanup indentation (remove whitespaces on empty
lines).
Maciej Cencora [Thu, 16 Apr 2009 10:38:39 +0000 (12:38 +0200)]
r300: update r500 path for reordered WPOS and FOG fp attributes
Report and regression testing by Fabio Pedretti.
Dave Airlie [Thu, 16 Apr 2009 03:06:24 +0000 (13:06 +1000)]
dri: attempt to actually refcount the __DRIDrawable
valgrind was showing a race between the drawable getting destroyed
by the X resource freeing code, and the context getting destroyed
later and freeing the drawable.
However I've no idea if some other combination of things could cause
this code to leak.
Dave Airlie [Thu, 16 Apr 2009 03:06:08 +0000 (13:06 +1000)]
radeon: take a bo reference when adding to validate list
Jerome Glisse [Sun, 12 Apr 2009 13:51:31 +0000 (15:51 +0200)]
r200: fix texture level for compiz case
Jerome Glisse [Sun, 12 Apr 2009 12:25:36 +0000 (14:25 +0200)]
r200: validate vertex buffer
Jerome Glisse [Sun, 12 Apr 2009 11:11:06 +0000 (13:11 +0200)]
radeon: emit scissor when using cs path
Dave Airlie [Thu, 9 Apr 2009 00:51:10 +0000 (10:51 +1000)]
r300: fix color tiling
Maciej Cencora [Tue, 7 Apr 2009 22:47:16 +0000 (00:47 +0200)]
r300: reorder fog coordinate and WPOS fp attributes
HW TCL path currently assumed fog, WPOS order. The order was inverted for SW TCL path.
This hopefully fixes rest of fog and WPOS related bugs.
Additionally fix some indentation, don't route unnecessary components of fog coordinates for performance reasons and simplify vertex
attribute emitting for SW TCL path.
Maciej Cencora [Tue, 7 Apr 2009 21:51:28 +0000 (23:51 +0200)]
r300: fix regression from swtcl rewrite
Fix wrong attribute emit and revert to previous behaviour of calculating VAP_OUT_VTX_FMT_1 register value.
We can't use r300VAPOutputCntl1 function because it assumes that all texture coords have 4 components and that is the case for HW TCL
path, but not for SW TCL.
Dave Airlie [Thu, 9 Apr 2009 00:14:35 +0000 (10:14 +1000)]
Merge remote branch 'origin/master' into radeon-rewrite
Conflicts:
src/mesa/drivers/dri/r200/r200_tex.c
src/mesa/drivers/dri/r300/r300_cmdbuf.c
src/mesa/drivers/dri/r300/r300_context.h
src/mesa/drivers/dri/r300/r300_swtcl.c
src/mesa/drivers/dri/r300/r300_tex.c
src/mesa/drivers/dri/r300/r300_texmem.c
src/mesa/drivers/dri/r300/r300_texstate.c
src/mesa/drivers/dri/radeon/radeon_tex.c
Corbin Simpson [Wed, 8 Apr 2009 21:54:17 +0000 (14:54 -0700)]
r300-gallium: Properly emit indexbufs.
This fixes hardlocks with anything using elts.
Corbin Simpson [Tue, 7 Apr 2009 09:04:07 +0000 (02:04 -0700)]
r300-gallium: Add vertex shader constant emit.
José Fonseca [Wed, 8 Apr 2009 20:13:57 +0000 (21:13 +0100)]
python/retrace: Try to cope with failures creating textures.
José Fonseca [Wed, 8 Apr 2009 20:11:51 +0000 (21:11 +0100)]
python: Don't try to finish a null fence.
José Fonseca [Wed, 8 Apr 2009 20:11:24 +0000 (21:11 +0100)]
python/retrace: Use colors on windows console.
Robert Ellison [Wed, 8 Apr 2009 16:58:33 +0000 (10:58 -0600)]
Mesa: allow suppression of debug messages in a debug build
For testing, it's very useful to be able to test on a debug build,
while suppressing the debug messages (messages that are by default
suppressed in a release build), in order to see the same behavior
that users of release builds will see.
For example, the "piglit" test suite will flag an error on
programs that produce unexpected output, which means that a
debug build will always fail due to the extra debug messages.
This change introduces a new value to the MESA_DEBUG
environment variable. In a debug build, explicitly setting MESA_DEBUG
to "0" will suppress all debug messages (both from _mesa_debug() and
from _mesa_warning()). (The former behavior was that debug
messages were never suppressed in debug builds.)
Behavior of non-debug builds has not changed. In such a build,
_mesa_debug() messages are always suppressed, and _mesa_warning()
messages will be suppressed unless MESA_DEBUG is set *to any value*.
Alan Hourihane [Wed, 8 Apr 2009 15:39:17 +0000 (16:39 +0100)]
gallium: when using gl_PointCoord ensure we use the correct attribute.
José Fonseca [Wed, 8 Apr 2009 15:25:29 +0000 (16:25 +0100)]
python/retrace: Allow to specify the range of calls of interest.
José Fonseca [Wed, 8 Apr 2009 15:24:31 +0000 (16:24 +0100)]
trace: Make calls dumping threadsafe.
José Fonseca [Wed, 8 Apr 2009 14:41:08 +0000 (15:41 +0100)]
trace: Make call no global.
José Fonseca [Wed, 8 Apr 2009 14:36:17 +0000 (15:36 +0100)]
python/retrace: Handle recent traces.
Try to keep backwards compatability with old traces as much as possible.
José Fonseca [Wed, 8 Apr 2009 14:32:08 +0000 (15:32 +0100)]
python: Fix method renaming.
José Fonseca [Wed, 8 Apr 2009 14:30:53 +0000 (15:30 +0100)]
python: Cope with null surfaces.
José Fonseca [Wed, 8 Apr 2009 14:30:31 +0000 (15:30 +0100)]
wgl: Integrate the trace driver on debug builds.
José Fonseca [Wed, 8 Apr 2009 14:29:50 +0000 (15:29 +0100)]
trace: Simplify cast wrappers.
José Fonseca [Wed, 8 Apr 2009 14:23:48 +0000 (15:23 +0100)]
trace: Match pipe_context::clear prototype.
Brian Paul [Wed, 8 Apr 2009 14:23:01 +0000 (08:23 -0600)]
gallium: handle the case of util_pack_z_stencil(format=PIPE_FORMAT_S8_UNORM)
Fixes failed assertion in glean fbo test.
Brian Paul [Wed, 8 Apr 2009 00:26:45 +0000 (18:26 -0600)]
docs: bump Gallium version number
Brian Paul [Wed, 8 Apr 2009 00:26:08 +0000 (18:26 -0600)]
docs: updated Cell driver info
Brian Paul [Wed, 8 Apr 2009 00:23:21 +0000 (18:23 -0600)]
docs: more info for 7.4 release notes
José Fonseca [Wed, 8 Apr 2009 10:32:43 +0000 (11:32 +0100)]
mesa: Don't attempt to free the dummy program.
Brian Paul [Tue, 7 Apr 2009 23:56:40 +0000 (17:56 -0600)]
st: implement glCopyTexImage() for GL_DEPTH24_STENCIL8 internal format
Brian Paul [Tue, 7 Apr 2009 23:32:29 +0000 (17:32 -0600)]
st: implement GL_DEPTH_STENCIL format for glReadPixels and DrawPixels()
Brian Paul [Tue, 7 Apr 2009 23:31:49 +0000 (17:31 -0600)]
softpipe: minor debug-help changes in softpipe_transfer_map()
Brian Paul [Tue, 7 Apr 2009 23:31:14 +0000 (17:31 -0600)]
mesa: add another special/optimized case in _mesa_unpack_depth_span()
Brian Paul [Tue, 7 Apr 2009 19:28:10 +0000 (13:28 -0600)]
swrast: fix point rendering function selection
Need to clamp default point size to min/max range before checking if it's one.
Fixes glean pointAtten test.
Brian Paul [Tue, 7 Apr 2009 19:17:42 +0000 (13:17 -0600)]
mesa: fix incorrect component ordering for sRGB8 texture fetch/store
This format is layered on MESA_FORMAT_RGB888 so the component order is
actually BGR.
Fixes glean pixelFormat failures.
Brian Paul [Tue, 7 Apr 2009 17:10:27 +0000 (11:10 -0600)]
glsl: enable the new linear scan register allocator code
Seems to b working well enough to enable all the time.
Optimizations can be disabled with "export MESA_GLSL=nopt" if needed.
Brian Paul [Tue, 7 Apr 2009 17:09:53 +0000 (11:09 -0600)]
docs: document the MESA_GLSL env var, other misc GLSL updates
Brian Paul [Tue, 7 Apr 2009 17:01:15 +0000 (11:01 -0600)]
glsl: don't optimize program if MESA_GLSL=nopt
Alex Deucher [Tue, 7 Apr 2009 16:37:10 +0000 (12:37 -0400)]
radeon: fix compiler warning
Brian Paul [Tue, 7 Apr 2009 13:04:14 +0000 (07:04 -0600)]
swrast: restore !shader check around add_specular()
Fixes a regression from commit
76ac75af8e5481b498981c133836efa2101be2dc.
Maciej Cencora [Tue, 7 Apr 2009 11:08:40 +0000 (21:08 +1000)]
r300: swtcl rewrite and cleanup
- remove unused variables
- silence compiler warnings
- fix twosided lighting
- fix point attenuation
- unify indentation
Corbin Simpson [Tue, 7 Apr 2009 06:36:34 +0000 (23:36 -0700)]
r300-gallium: vs: Add MAD.
Corbin Simpson [Tue, 7 Apr 2009 06:26:38 +0000 (23:26 -0700)]
r300-gallium: vs: Add MUL.
Corbin Simpson [Tue, 7 Apr 2009 06:25:27 +0000 (23:25 -0700)]
r300-gallium: Fix surface_copy too.
Corbin Simpson [Tue, 7 Apr 2009 06:17:33 +0000 (23:17 -0700)]
r300-gallium: Properly setup HW/SW TCL controls.
This keeps non-TCL chipsets from locking up, and also fully unbreaks
RADEON_NO_TCL rendering.
Dave Airlie [Tue, 7 Apr 2009 05:05:53 +0000 (15:05 +1000)]
radeon/r200/r300: fix missing dma buffer validation
this make gnome shell run
Dave Airlie [Mon, 6 Apr 2009 10:37:11 +0000 (20:37 +1000)]
radeon: fix bocs wrapper
Brian Paul [Tue, 7 Apr 2009 03:37:20 +0000 (21:37 -0600)]
swrast: more texcombine clean-ups
Brian Paul [Tue, 7 Apr 2009 02:08:43 +0000 (20:08 -0600)]
swrast: asst. clean-ups in texcombine code
Brian Paul [Mon, 6 Apr 2009 23:17:52 +0000 (17:17 -0600)]
swrast: fix secondary color add for glBitmap
Also, clean up the logic involved in choosing per-vertex vs. per-fragment
primary+secondary color addition.
José Fonseca [Mon, 6 Apr 2009 22:09:02 +0000 (23:09 +0100)]
stw: Choose a color buffer format that matches the visual.
The massive ifs are ugly, but it's not worth to automate this for just a
handful of formats.
Fixes conform bcolor.c.
Brian Paul [Mon, 6 Apr 2009 21:31:58 +0000 (15:31 -0600)]
softpipe: clean up the buffer clear and tile cache code a little
Brian Paul [Mon, 6 Apr 2009 20:38:09 +0000 (14:38 -0600)]
swrast: fix incorrect arithmetic for GL_ADD_SIGNED/GL_COMBINE4_NV mode
Brian Paul [Mon, 6 Apr 2009 20:06:08 +0000 (14:06 -0600)]
st: as with swrast, interpret texture border color according to texture format
Depending on the hardware driver this might not be needed, but it will
cause no harm.
Brian Paul [Mon, 6 Apr 2009 20:00:03 +0000 (14:00 -0600)]
st: rename a helper function
Brian Paul [Mon, 6 Apr 2009 19:51:14 +0000 (13:51 -0600)]
swrast: fix texture border color interpretation
The texture border color must be interpreted according to the texture's
base format. For example, for a GL_ALPHA texture, sampling the border
color should return (0,0,0,borderAlpha). This wasn't an issue here until
I removed the legacy texenv code (we always use the combiner path now).
José Fonseca [Mon, 6 Apr 2009 19:36:54 +0000 (20:36 +0100)]
mesa: Fix orientation adjustment for reading stencil pixels.
Fixes conform spcorner.c & spclear.c failure.
Eric Anholt [Mon, 6 Apr 2009 16:54:29 +0000 (09:54 -0700)]
intel: Avoid dri2 GetBuffers round-trips for internal Viewport calls.
This gets us the savings for driver-internal viewport calls that
dd1c68f15123a889a3ce9d2afe724e272d163e32 was attempting, without relying
on Xlib internals or clients handling X events.
Eric Anholt [Mon, 6 Apr 2009 16:38:16 +0000 (09:38 -0700)]
i965: Use GTT maps when available to upload vertex arrays and system VBOs.
This speeds up OA on my GM45 by 21% (more than the original CPU cost of
the upload path). We might still be able to squeeze a few more percent out
by avoiding repeatedly mapping/unmapping buffers as we upload elements into
them.
Eric Anholt [Mon, 6 Apr 2009 16:29:14 +0000 (09:29 -0700)]
intel: Clean up some a leftover from sedding of bufmgr context->screen move.
José Fonseca [Mon, 6 Apr 2009 14:51:27 +0000 (15:51 +0100)]
r300-gallium: Skeleton for integrating into the python statetracker.
Jerome Glisse [Fri, 3 Apr 2009 13:15:22 +0000 (15:15 +0200)]
radeon: add support for new ttm
Michel Dänzer [Mon, 6 Apr 2009 06:59:57 +0000 (08:59 +0200)]
radeon: Expose a 32 bit RGBA fbconfig even when the screen depth is 16.
Otherwise current xserver / libGL no longer expose a 32 bit RGBA GLX visual,
and compiz fails.
Fixes http://bugs.freedesktop.org/show_bug.cgi?id=20479 .
Corbin Simpson [Sun, 5 Apr 2009 09:05:08 +0000 (02:05 -0700)]
r300-gallium: vp: Moar.
Corbin Simpson [Sun, 5 Apr 2009 08:32:55 +0000 (01:32 -0700)]
r300-gallium: vs: Use a tab to properly set up OVM.
Corbin Simpson [Sun, 5 Apr 2009 08:32:00 +0000 (01:32 -0700)]
r300-gallium: Re-translate shaders if constants change.
Corbin Simpson [Sun, 5 Apr 2009 08:00:25 +0000 (01:00 -0700)]
r300-gallium: Properly interface with Draw for vert shaders.
Corbin Simpson [Sun, 5 Apr 2009 07:15:19 +0000 (00:15 -0700)]
r300-gallium: Update state handlers/setters for vertex shaders.
Corbin Simpson [Sun, 5 Apr 2009 06:44:37 +0000 (23:44 -0700)]
r300-gallium: vs: Moar vert shaders.
Corbin Simpson [Sun, 5 Apr 2009 05:57:45 +0000 (22:57 -0700)]
r300-gallium: vs: Expand instruction emission.
Corbin Simpson [Sun, 5 Apr 2009 05:30:14 +0000 (22:30 -0700)]
r300-gallium: Update clear() code.
We have a huge optimization opportunity, but for now we'll just use the util.
Brian Paul [Sat, 4 Apr 2009 19:45:14 +0000 (13:45 -0600)]
cell: update clear() code to catch up to gallium changes
Michal Krol [Sat, 4 Apr 2009 19:16:37 +0000 (21:16 +0200)]
python/regress: Clean up driver clear() interface.
Michel Dänzer [Sat, 4 Apr 2009 17:01:51 +0000 (19:01 +0200)]
gallium: Clean up driver clear() interface.
Only allows clearing currently bound buffers, but colour and depth/stencil in
a single call.
Michel Dänzer [Sat, 4 Apr 2009 14:04:59 +0000 (16:04 +0200)]
gallium: Add utility helper for packing combined depth/stencil values.
Michal Krol [Sat, 4 Apr 2009 11:42:31 +0000 (13:42 +0200)]
python/regress: Remove trailing whitespace.
Michal Krol [Sat, 4 Apr 2009 11:34:27 +0000 (13:34 +0200)]
python/regress: Initial fragment shader test suite.
Michal Krol [Sat, 4 Apr 2009 09:52:19 +0000 (11:52 +0200)]
python/regress: Use X8R8G8B8 rendertarget in vertex shader test.
Corbin Simpson [Sat, 4 Apr 2009 09:43:09 +0000 (02:43 -0700)]
radeon: A bit of indent and line break cleanup.
Corbin Simpson [Sat, 4 Apr 2009 09:38:13 +0000 (02:38 -0700)]
r300-gallium: Calculate vert shader inputs for HW TCL.
This is definitely not perfect.
Corbin Simpson [Sat, 4 Apr 2009 09:20:29 +0000 (02:20 -0700)]
radeon: If the CS emit fails, dump it to stderr.
Corbin Simpson [Sat, 4 Apr 2009 09:19:48 +0000 (02:19 -0700)]
r300-gallium: Fix bad register write.
Corbin Simpson [Sat, 4 Apr 2009 09:05:45 +0000 (02:05 -0700)]
r300-gallium: Move swtcl_emit to render to reflect its true purpose.
Corbin Simpson [Sat, 4 Apr 2009 07:34:10 +0000 (00:34 -0700)]
Add scons build support for radeon/r300.
Corbin Simpson [Sat, 4 Apr 2009 07:33:23 +0000 (00:33 -0700)]
radeon: Fix compile warnings, compile errors.
Corbin Simpson [Sat, 4 Apr 2009 07:31:49 +0000 (00:31 -0700)]
r300-gallium: Clean up compile warnings and strict compile errors.
Corbin Simpson [Sat, 4 Apr 2009 07:29:56 +0000 (00:29 -0700)]
r300-gallium: r500 surface_copy fragment shader.