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.
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.
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.
Brian Paul [Fri, 3 Apr 2009 23:43:03 +0000 (17:43 -0600)]
intel: #include texgetimage.h
Brian Paul [Fri, 3 Apr 2009 23:42:22 +0000 (17:42 -0600)]
mesa: move glGetTexImage(), glGetCompresssedTexImage() code into new file
Brian Paul [Fri, 3 Apr 2009 23:28:35 +0000 (17:28 -0600)]
mesa: remove the noClamp parameter to _mesa_pack_rgba_span_float()
It was only set to GL_TRUE in one place where it isn't really needed
(glGetTexImage(sRGB format)).
Brian Paul [Fri, 3 Apr 2009 23:10:31 +0000 (17:10 -0600)]
mesa: clamp colors to [0,1] for glGetTexImage() when format is GL_LUMINANCE
For luminance, we add R+G+B and it seems we should always clamp in case.
Brian Paul [Fri, 3 Apr 2009 22:51:04 +0000 (16:51 -0600)]
mesa: whitespace and comment clean-up
Brian Paul [Fri, 3 Apr 2009 22:37:36 +0000 (16:37 -0600)]
mesa: remove extra semicolons
Brian Paul [Fri, 3 Apr 2009 21:43:13 +0000 (15:43 -0600)]
softpipe: add additional surface formats in tile cache code
Brian Paul [Fri, 3 Apr 2009 21:42:14 +0000 (15:42 -0600)]
mesa: in mesa_add_named_constant(), avoid adding duplicate constants
Brian Paul [Fri, 3 Apr 2009 21:41:10 +0000 (15:41 -0600)]
mesa: fix parameter counting in ARB vertex/fragment program parsing
Duplicated unnamed constants were getting counted more than once.
Brian Paul [Fri, 3 Apr 2009 19:48:43 +0000 (13:48 -0600)]
mesa: replace >= with > when testing if we've exceeded max local params
Now a program that uses 256 locals works as it should.
Brian Paul [Fri, 3 Apr 2009 18:49:03 +0000 (12:49 -0600)]
mesa: only clear matrix MAT_DIRTY_INVERSE flag when we actually compute the inverse
If _math_matrix_analyse() got called before we allocated the inverse
matrix array we could lose the flag indicating that we needed to compute
the inverse. This could happen with certain vertex shader cases.
Brian Paul [Fri, 3 Apr 2009 16:29:11 +0000 (10:29 -0600)]
mesa: for OPCODE_LIT, use _mesa_pow() instead of exp() and log()
Also, s/pow/_mesa_pow/
Michal Krol [Fri, 3 Apr 2009 16:53:16 +0000 (18:53 +0200)]
python/regress: Use A8R8G8B8 rendertarget format.
Brian Paul [Fri, 3 Apr 2009 16:08:20 +0000 (10:08 -0600)]
mesa: rename some gl_light fields to be clearer
EyeDirection -> SpotDirection
_NormDirection -> _NormSpotDirection
Brian Paul [Fri, 3 Apr 2009 15:55:10 +0000 (09:55 -0600)]
mesa: don't normalize spot light direction until validation time
In glLight() we're only supposed to transform the direction by the modelview
matrix, not normalized it too.
Michal Krol [Fri, 3 Apr 2009 15:55:21 +0000 (17:55 +0200)]
python/regress: vertex shader srcmod swz test does not use TEMP[0].
Michal Krol [Fri, 3 Apr 2009 15:25:29 +0000 (17:25 +0200)]
tgsi/exec: Actually enable switch-case for FLR.
Brian Paul [Fri, 3 Apr 2009 15:08:00 +0000 (09:08 -0600)]
i965: remove unused var
Brian Paul [Fri, 3 Apr 2009 15:06:24 +0000 (09:06 -0600)]
glx: remove unused local var in determineTextureFormat()
Brian Paul [Fri, 3 Apr 2009 15:00:06 +0000 (09:00 -0600)]
mesa: replace assertion with conditional in _mesa_opcode_string()
Brian Paul [Fri, 3 Apr 2009 14:59:38 +0000 (08:59 -0600)]
i965: more const buffer debug code
Brian Paul [Thu, 2 Apr 2009 20:33:45 +0000 (14:33 -0600)]
i965: added brw_same_reg()
Brian Paul [Thu, 2 Apr 2009 17:45:17 +0000 (11:45 -0600)]
i965: s/GL_FALSE/BRW_COMPRESSION_NONE/
Brian Paul [Wed, 1 Apr 2009 19:36:48 +0000 (13:36 -0600)]
i965: another checkpoint commit of new constant buffer support
Everything is in place now for using a true constant buffer for GLSL fragment
shaders. Still some bugs to find though.
Brian Paul [Wed, 1 Apr 2009 18:57:06 +0000 (12:57 -0600)]
i965: fix response length param in brw_dp_READ_4()
We were accidentally clobbering the next register.
Brian Paul [Wed, 1 Apr 2009 18:25:34 +0000 (12:25 -0600)]
i965: change args to get_src_reg() to prep for new constant buffer support
Brian Paul [Tue, 31 Mar 2009 23:06:22 +0000 (17:06 -0600)]
i965: check-point commit of new constant buffer support
Currently, shader constants are stored in the GRF (loaded from the CURBE
prior to shader execution). This severly limits the number of constants
and temps that we can support.
This new code will support (practically) unlimited size constant buffers
and free up registers in the GRF. We allocate a new buffer object for the
constants and read them with "Read" messages/instructions. When only a
small number of constants are used, we can still use the old method.
The code works for fragment shaders only (and is actually disabled) for now.
Need to do the same thing for vertex shaders and need to add the necessary
code-gen to fetch the constants which are referenced by the shader
instructions.
Brian Paul [Tue, 31 Mar 2009 22:57:39 +0000 (16:57 -0600)]
i965: remove unused code for sampling a constant buffer
Brian Paul [Tue, 31 Mar 2009 22:56:55 +0000 (16:56 -0600)]
i965: code to setup a constant buffer sampler
This code won't actually be used and will be removed in a subsequent commit.
Just committing for posterity.
Brian Paul [Tue, 31 Mar 2009 20:25:32 +0000 (14:25 -0600)]
i965: do negation and Abs in get_src_reg_imm()
Fixes regression seen with progs/glsl/bump.c
Brian Paul [Tue, 31 Mar 2009 16:53:56 +0000 (10:53 -0600)]
i965: comments
Brian Paul [Tue, 31 Mar 2009 16:53:37 +0000 (10:53 -0600)]
i965: code to debug/dump instruction immediates
Brian Paul [Tue, 31 Mar 2009 16:53:02 +0000 (10:53 -0600)]
i965: minor code movement, new comment
Brian Paul [Tue, 31 Mar 2009 16:50:55 +0000 (10:50 -0600)]
i965: added new brw_dp_READ_4() function
Used to read float[4] vectors from the constant buffer/surface.
Brian Paul [Tue, 31 Mar 2009 16:49:41 +0000 (10:49 -0600)]
i965: new and updated comments
Brian Paul [Fri, 27 Mar 2009 20:49:01 +0000 (14:49 -0600)]
mesa: more error message info
Brian Paul [Thu, 26 Mar 2009 00:16:35 +0000 (18:16 -0600)]
mesa: clean up formatting and use 'return' instead of 'break' consistantly
Brian Paul [Wed, 25 Mar 2009 00:05:53 +0000 (18:05 -0600)]
i965: comments for brw_SAMPLE()
Brian Paul [Wed, 25 Mar 2009 00:05:29 +0000 (18:05 -0600)]
i965: comments for sampling code
Brian Paul [Tue, 24 Mar 2009 23:29:40 +0000 (17:29 -0600)]
i965: add support for float literal instruction operands
Call the get_src_reg_imm() function when it's permissible to generate a
literal value src register.
Brian Paul [Tue, 24 Mar 2009 22:33:48 +0000 (16:33 -0600)]
i965: remove 'nr' param from get_src/dst_reg() functions
The value was always 1.
Brian Paul [Tue, 24 Mar 2009 20:48:53 +0000 (14:48 -0600)]
i965: fix comment typo
Brian Paul [Tue, 24 Mar 2009 16:35:40 +0000 (10:35 -0600)]
i965: comments, clean-up in prepare_wm_surfaces()
Brian Paul [Tue, 24 Mar 2009 15:54:48 +0000 (09:54 -0600)]
i965: remove unneeded #includes
Brian Paul [Tue, 24 Mar 2009 15:44:10 +0000 (09:44 -0600)]
i965: formatting clean-ups
Brian Paul [Tue, 24 Mar 2009 15:42:09 +0000 (09:42 -0600)]
i965: comments, whitespace changes
Brian Paul [Mon, 23 Mar 2009 20:43:51 +0000 (14:43 -0600)]
i965: rename scratch_buffer -> scratch_bo to be consistant with other buffers
Brian Paul [Mon, 23 Mar 2009 20:40:51 +0000 (14:40 -0600)]
i965: fix indentation
Brian Paul [Mon, 23 Mar 2009 15:56:33 +0000 (09:56 -0600)]
i965: whitespace changes, comments
Michal Krol [Fri, 3 Apr 2009 15:06:36 +0000 (17:06 +0200)]
tgsi/text: Allow optional component selection for indirect registers.
Michal Krol [Fri, 3 Apr 2009 14:37:34 +0000 (16:37 +0200)]
python/regress: vertex shader FRC test does not use IN[1].
Michal Krol [Fri, 3 Apr 2009 14:36:20 +0000 (16:36 +0200)]
python/regress: Add relative addressing tests.
Michal Krol [Fri, 3 Apr 2009 12:58:39 +0000 (14:58 +0200)]
util/debug: Initialise local variables.
Michal Krol [Fri, 3 Apr 2009 12:54:20 +0000 (14:54 +0200)]
tgsi/text: Allow `-|src|` variant of `-(|src|)`.
Alan Hourihane [Fri, 3 Apr 2009 11:49:05 +0000 (12:49 +0100)]
mesa: ensure pbo stencil buffers are mapped before use
Michal Krol [Fri, 3 Apr 2009 06:26:53 +0000 (08:26 +0200)]
python/regress: Add vertex shader source modifier tests.
Christoph Bumiller [Tue, 31 Mar 2009 22:37:36 +0000 (08:37 +1000)]
nv50: fix viewport state update
Roland Scheidegger [Thu, 2 Apr 2009 21:38:34 +0000 (23:38 +0200)]
mesa: fix TexParameter functions
premature return in TexParameterf caused mesa to never call Driver.TexParameter
breaking drivers relying on this (fix bug #20966).
While here, also fix using ctx->ErrorValue when deciding to call
Driver.TexParameter. Errors are sticky and uncleared errors thus would cause
this to no longer get called. Since we thus need return value of
set_tex_parameter[if] can also optimize this to only call when value changed.