mesa.git
15 years agomesa: texture combine clean-ups
Brian Paul [Sun, 8 Mar 2009 23:58:54 +0000 (17:58 -0600)]
mesa: texture combine clean-ups

Use MAX_COMBINER_TERMS instead of 4.
Rename some vars.
Update comments.

15 years agoswrast: refactor depth/shadow sampling code
Brian Paul [Sun, 8 Mar 2009 20:39:09 +0000 (14:39 -0600)]
swrast: refactor depth/shadow sampling code

15 years agoswrast: general clean-up of texture combine code
Brian Paul [Sun, 8 Mar 2009 20:38:37 +0000 (14:38 -0600)]
swrast: general clean-up of texture combine code

15 years agoswrast: do texture sampling/combining in floating point
Brian Paul [Sun, 8 Mar 2009 19:49:57 +0000 (13:49 -0600)]
swrast: do texture sampling/combining in floating point

The code's cleaner and a step toward supporting float-valued texture sampling.
Some optimizations for common cases can be added and re-enabled...

15 years agodemos: added progs/glsl/linktest.c to test linking of separate compilation units
Brian Paul [Thu, 2 Apr 2009 01:53:40 +0000 (19:53 -0600)]
demos: added progs/glsl/linktest.c to test linking of separate compilation units

15 years agoglsl: implement compiling/linking of separate compilation units
Brian Paul [Thu, 2 Apr 2009 01:50:28 +0000 (19:50 -0600)]
glsl: implement compiling/linking of separate compilation units

A shader program may consist of multiple shaders (source code units).
If we find there are unresolved functions after compiling the unit that
defines main(), we'll concatenate all the respective vertex or fragment
shaders then recompile.

This isn't foolproof but should work in most cases.

15 years agomesa: use correct tex unit lod bias for TXB instruction
Brian Paul [Thu, 2 Apr 2009 00:50:07 +0000 (18:50 -0600)]
mesa: use correct tex unit lod bias for TXB instruction

15 years agoswrast: fix glDrawBuffer(GL_FRONT_AND_BACK)
Brian Paul [Thu, 2 Apr 2009 00:44:15 +0000 (18:44 -0600)]
swrast: fix glDrawBuffer(GL_FRONT_AND_BACK)

We weren't putting the right colors into the back buffer in this mode.

15 years agomesa: fix a recursive display list problem
Brian Paul [Wed, 1 Apr 2009 23:34:16 +0000 (17:34 -0600)]
mesa: fix a recursive display list problem

This fixes an issue when compiling glCallList() into another display list
when the mode is GL_COMPILE_AND_EXECUTE.

Before, the call to glCallList() called _mesa_save_CallList() which called
neutral_CallList() which then called _mesa_save_CallList() again.  In the
end, the parent display list contained two calls to the child display list
instead of one.

Let's be on the lookout for regressions caused by this change for a while
before we cherry-pick this elsewhere.

15 years agor300-gallium: Translate vertex shader magic numbers.
Corbin Simpson [Wed, 1 Apr 2009 22:52:32 +0000 (15:52 -0700)]
r300-gallium: Translate vertex shader magic numbers.

15 years agor300-gallium: Fix compiler warnings.
Corbin Simpson [Wed, 1 Apr 2009 22:24:28 +0000 (15:24 -0700)]
r300-gallium: Fix compiler warnings.

"const" is the right keyword, but I can't do that without adding a bunch
of really annoying and ugly const casts everywhere, and frankly,
that's really stupid, so instead, just don't make them const.

15 years agor300-gallium: Add vertex shader for surface_copy.
Corbin Simpson [Wed, 1 Apr 2009 22:14:19 +0000 (15:14 -0700)]
r300-gallium: Add vertex shader for surface_copy.

15 years agoutil: Fix x86_64 build.
José Fonseca [Wed, 1 Apr 2009 21:05:07 +0000 (22:05 +0100)]
util: Fix x86_64 build.

15 years agoutil: Lookup symbol names from addresses.
José Fonseca [Wed, 1 Apr 2009 20:00:59 +0000 (21:00 +0100)]
util: Lookup symbol names from addresses.

Nice for stack backtraces.

Windows-only for now.

15 years agotgsi: Fix structure members initialisation.
Michal Krol [Wed, 1 Apr 2009 20:06:53 +0000 (22:06 +0200)]
tgsi: Fix structure members initialisation.

15 years agopython/regress: Add vertex shader LRP test.
Michal Krol [Wed, 1 Apr 2009 14:05:29 +0000 (16:05 +0200)]
python/regress: Add vertex shader LRP test.

15 years agopython/regress: Add vertex shader FRC test.
Michal Krol [Wed, 1 Apr 2009 13:41:36 +0000 (15:41 +0200)]
python/regress: Add vertex shader FRC test.

15 years agoglsl: fix texgen state variable tokens in emit_statevars()
Brian Paul [Wed, 1 Apr 2009 13:35:07 +0000 (07:35 -0600)]
glsl: fix texgen state variable tokens in emit_statevars()

This fixes broken variable indexing into the gl_Eye/ObjectPlaneS/T/R/Q arrays.
See bug 20986.

15 years agomesa: minor tweaks in append_token() for printing state var strings
Brian Paul [Wed, 1 Apr 2009 13:33:50 +0000 (07:33 -0600)]
mesa: minor tweaks in append_token() for printing state var strings

15 years agotgsi: Lookup alternate instruction mnemonics when parsing tgsi text.
Michal Krol [Wed, 1 Apr 2009 09:49:55 +0000 (11:49 +0200)]
tgsi: Lookup alternate instruction mnemonics when parsing tgsi text.

15 years agotgsi: Provide alternate instruction mnemonics in tgsi info.
Michal Krol [Wed, 1 Apr 2009 09:45:25 +0000 (11:45 +0200)]
tgsi: Provide alternate instruction mnemonics in tgsi info.

15 years agotgsi/doc: Fix typo.
Michal Krol [Wed, 1 Apr 2009 09:25:58 +0000 (11:25 +0200)]
tgsi/doc: Fix typo.

15 years agopython/regress: Add vertex shader EX2 test.
Michal Krol [Wed, 1 Apr 2009 09:25:02 +0000 (11:25 +0200)]
python/regress: Add vertex shader EX2 test.

15 years agopython/regress: Add vertex shader DST test.
Michal Krol [Wed, 1 Apr 2009 09:09:37 +0000 (11:09 +0200)]
python/regress: Add vertex shader DST test.

15 years agopython/regress: Fix vertex shader XPD test.
Michal Krol [Wed, 1 Apr 2009 09:08:41 +0000 (11:08 +0200)]
python/regress: Fix vertex shader XPD test.

15 years agopython/regress: Indent.
Michal Krol [Wed, 1 Apr 2009 08:58:46 +0000 (10:58 +0200)]
python/regress: Indent.

15 years agopython/regress: Add vertex shader test for XPD.
Michal Krol [Wed, 1 Apr 2009 08:56:53 +0000 (10:56 +0200)]
python/regress: Add vertex shader test for XPD.

15 years agopython/regress: Rename test files from *.txt to *.sh -- won't be .gitignored.
Michal Krol [Wed, 1 Apr 2009 08:23:09 +0000 (10:23 +0200)]
python/regress: Rename test files from *.txt to *.sh -- won't be .gitignored.

15 years agopython/regress: Add more vertex shader tests.
Michal Krol [Wed, 1 Apr 2009 08:18:50 +0000 (10:18 +0200)]
python/regress: Add more vertex shader tests.

15 years agor300-gallium: Backwards test.
Corbin Simpson [Wed, 1 Apr 2009 03:24:50 +0000 (20:24 -0700)]
r300-gallium: Backwards test.

Wow, how long's that been there? Embarrassing.

15 years agor300-gallium: Moar vert shader emit.
Corbin Simpson [Wed, 1 Apr 2009 03:04:56 +0000 (20:04 -0700)]
r300-gallium: Moar vert shader emit.

15 years agor300-gallium: Add vertex shader emit.
Corbin Simpson [Wed, 1 Apr 2009 01:58:03 +0000 (18:58 -0700)]
r300-gallium: Add vertex shader emit.

15 years agor300-gallium: Stubs for vertex shaders.
Corbin Simpson [Tue, 31 Mar 2009 06:54:53 +0000 (23:54 -0700)]
r300-gallium: Stubs for vertex shaders.

15 years agotgsi: added some helpful debug functions in the tgsi interpreter
Brian Paul [Tue, 31 Mar 2009 22:17:23 +0000 (16:17 -0600)]
tgsi: added some helpful debug functions in the tgsi interpreter

Check for NaN/Inf, print exec vectors, print temp registers.

15 years agomesa: fix bug in GPU codegen for fixed-function two-sided lighting
Brian Paul [Tue, 31 Mar 2009 22:13:14 +0000 (16:13 -0600)]
mesa: fix bug in GPU codegen for fixed-function two-sided lighting

The 'dots' register wasn't getting properly un-negated and un-swizzled
after emitting the code for back-face lighting.  So, if more than one
light source was enabled, the specular exponent for the next light source
was wrong.

During execution we were evaluating pow(x, y) where y was negative instead
of positive.  This led to the outcome being zero or NaN.

This fixes the occasional black triangles seen in isosurf when hacked to
enable two-sided lighting.

15 years agodraw: added Nan/Inf assertion in debug code
Brian Paul [Tue, 31 Mar 2009 22:12:17 +0000 (16:12 -0600)]
draw: added Nan/Inf assertion in debug code

15 years agosoftpipe: use util_is_inf_or_nan()
Brian Paul [Tue, 31 Mar 2009 22:07:38 +0000 (16:07 -0600)]
softpipe: use util_is_inf_or_nan()

And print/warn NaN/Inf in print_vertex().

15 years agogallium: added util_is_inf_or_nan() function to u_math.h
Brian Paul [Tue, 31 Mar 2009 22:06:19 +0000 (16:06 -0600)]
gallium: added util_is_inf_or_nan() function to u_math.h

15 years agomesa: minor reformatting, whitespace changes
Brian Paul [Tue, 31 Mar 2009 21:47:05 +0000 (15:47 -0600)]
mesa: minor reformatting, whitespace changes

15 years agopython/regress: Initial commit for vertex shader regression tests.
Michal Krol [Tue, 31 Mar 2009 22:19:46 +0000 (00:19 +0200)]
python/regress: Initial commit for vertex shader regression tests.

15 years agoUpdated CPU_TO_LE32 to work on darwin
Jeremy Huddleston [Tue, 31 Mar 2009 22:08:49 +0000 (15:08 -0700)]
Updated CPU_TO_LE32 to work on darwin

15 years agoFix compiling indirect.c when GLX_DIRECT_RENDERING is not defined
Jeremy Huddleston [Tue, 31 Mar 2009 21:48:19 +0000 (14:48 -0700)]
Fix compiling indirect.c when GLX_DIRECT_RENDERING is not defined
(cherry picked from commit b65bc1b6cb72df950c2e26446936804dfcdc432c)

15 years agopython/test: New test for surface copies.
José Fonseca [Tue, 31 Mar 2009 18:16:17 +0000 (19:16 +0100)]
python/test: New test for surface copies.

15 years agopython/test: Ignore test output files.
José Fonseca [Tue, 31 Mar 2009 17:39:18 +0000 (18:39 +0100)]
python/test: Ignore test output files.

15 years agopython/test: Cleanup.
José Fonseca [Tue, 31 Mar 2009 17:39:06 +0000 (18:39 +0100)]
python/test: Cleanup.

15 years agopython/test: Dump classification tree to text file too.
José Fonseca [Tue, 31 Mar 2009 17:38:48 +0000 (18:38 +0100)]
python/test: Dump classification tree to text file too.

15 years agopython/test: Set executable permission bit.
José Fonseca [Tue, 31 Mar 2009 17:02:27 +0000 (18:02 +0100)]
python/test: Set executable permission bit.

15 years agopython/test: New test for rendering into textures.
José Fonseca [Tue, 31 Mar 2009 17:01:32 +0000 (18:01 +0100)]
python/test: New test for rendering into textures.

15 years agoutil: Enable assembly breakpointt on x86_64.
José Fonseca [Tue, 31 Mar 2009 17:00:46 +0000 (18:00 +0100)]
util: Enable assembly breakpointt on x86_64.

A breakpoint is much nicer than abort when gdb is attached.

15 years agopython/test: Limit tree depth.
José Fonseca [Tue, 31 Mar 2009 16:23:48 +0000 (17:23 +0100)]
python/test: Limit tree depth.

15 years agopython/test: Infer type (continuous/discrete) from object type.
José Fonseca [Tue, 31 Mar 2009 16:21:52 +0000 (17:21 +0100)]
python/test: Infer type (continuous/discrete) from object type.

15 years agopython/test: Flush stdout to keep in sync with debug info on stderr.
José Fonseca [Tue, 31 Mar 2009 15:39:11 +0000 (16:39 +0100)]
python/test: Flush stdout to keep in sync with debug info on stderr.

15 years agopython/test: Dump a classification tree of the results when finished testing.
José Fonseca [Tue, 31 Mar 2009 15:38:03 +0000 (16:38 +0100)]
python/test: Dump a classification tree of the results when finished testing.

15 years agopython/test: New test for texture transfers.
José Fonseca [Tue, 31 Mar 2009 10:02:15 +0000 (11:02 +0100)]
python/test: New test for texture transfers.

15 years agopython/test: More descriptive test name.
José Fonseca [Tue, 31 Mar 2009 10:00:18 +0000 (11:00 +0100)]
python/test: More descriptive test name.

15 years agopython: Make get/put_tile_raw more user friendlier.
José Fonseca [Tue, 31 Mar 2009 09:58:18 +0000 (10:58 +0100)]
python: Make get/put_tile_raw more user friendlier.

15 years agopython: Add nblocksx/y members to surfaces.
José Fonseca [Tue, 31 Mar 2009 09:57:44 +0000 (10:57 +0100)]
python: Add nblocksx/y members to surfaces.

15 years agogallium: Move pf_is_depth_stencil to p_format.h.
José Fonseca [Tue, 31 Mar 2009 08:46:55 +0000 (09:46 +0100)]
gallium: Move pf_is_depth_stencil to p_format.h.

15 years agofix ugly copy/paste error in mipmap generation code
Roland Scheidegger [Tue, 31 Mar 2009 01:18:35 +0000 (03:18 +0200)]
fix ugly copy/paste error in mipmap generation code

15 years agor300-gallium: RGBA, not ARGB, after all.
Corbin Simpson [Tue, 31 Mar 2009 00:31:58 +0000 (17:31 -0700)]
r300-gallium: RGBA, not ARGB, after all.

Clearly, something else is wrong.

15 years agor300-gallium: r500-fs: If recompiling a shader, overwrite old insts.
Corbin Simpson [Tue, 31 Mar 2009 00:20:12 +0000 (17:20 -0700)]
r300-gallium: r500-fs: If recompiling a shader, overwrite old insts.

15 years agor300-gallium: Properly redo shaders when constant buffer changes size.
Corbin Simpson [Mon, 30 Mar 2009 23:58:20 +0000 (16:58 -0700)]
r300-gallium: Properly redo shaders when constant buffer changes size.

15 years agor300-gallium: Allow surface_fill to clear depth/stencil buffers too.
Corbin Simpson [Mon, 30 Mar 2009 23:51:01 +0000 (16:51 -0700)]
r300-gallium: Allow surface_fill to clear depth/stencil buffers too.

15 years agor300-gallium: Emit the "right" sequence of colors.
Corbin Simpson [Mon, 30 Mar 2009 23:15:04 +0000 (16:15 -0700)]
r300-gallium: Emit the "right" sequence of colors.

ARGB, not RGBA.

15 years agor300-gallium: Fix hardlock when no colors or textures are present.
Corbin Simpson [Mon, 30 Mar 2009 22:50:09 +0000 (15:50 -0700)]
r300-gallium: Fix hardlock when no colors or textures are present.

15 years agor300-gallium: Fix strange build error.
Corbin Simpson [Mon, 30 Mar 2009 22:47:00 +0000 (15:47 -0700)]
r300-gallium: Fix strange build error.

Why didn't this come up before?

15 years agor300-gallium: Handful of small leftovers.
Corbin Simpson [Mon, 30 Mar 2009 20:55:00 +0000 (13:55 -0700)]
r300-gallium: Handful of small leftovers.

15 years agointel: Avoid mapping the texture image for CopyTex{,Sub}Image
Adam Jackson [Mon, 30 Mar 2009 20:32:11 +0000 (16:32 -0400)]
intel: Avoid mapping the texture image for CopyTex{,Sub}Image

We don't upload the pixels with the CPU in that case, so the map will
only serve as a way of triggering cache flushes over a bunch of data we
don't touch.

15 years agopython: Use depth buffer in the triangle example.
José Fonseca [Mon, 30 Mar 2009 18:49:11 +0000 (19:49 +0100)]
python: Use depth buffer in the triangle example.

15 years agopython: Read rgba8 with a single transfer.
José Fonseca [Mon, 30 Mar 2009 18:48:30 +0000 (19:48 +0100)]
python: Read rgba8 with a single transfer.

15 years agopython: Cleanup.
José Fonseca [Mon, 30 Mar 2009 17:29:35 +0000 (18:29 +0100)]
python: Cleanup.

15 years agopython: Don't use deprecated clear_value field.
José Fonseca [Mon, 30 Mar 2009 17:26:40 +0000 (18:26 +0100)]
python: Don't use deprecated clear_value field.

15 years agopython/test: Move the test description logic to the base class.
José Fonseca [Mon, 30 Mar 2009 17:18:15 +0000 (18:18 +0100)]
python/test: Move the test description logic to the base class.

15 years agopython/test: Move the image comparison logic to the base test class.
José Fonseca [Mon, 30 Mar 2009 16:51:55 +0000 (17:51 +0100)]
python/test: Move the image comparison logic to the base test class.

15 years agopython: Force unsigned comparison.
José Fonseca [Mon, 30 Mar 2009 16:09:03 +0000 (17:09 +0100)]
python: Force unsigned comparison.

15 years agopython: Set correct transfer mode.
José Fonseca [Mon, 30 Mar 2009 16:08:23 +0000 (17:08 +0100)]
python: Set correct transfer mode.

15 years agopython: Set the surface GPU access flags.
José Fonseca [Mon, 30 Mar 2009 15:02:21 +0000 (16:02 +0100)]
python: Set the surface GPU access flags.

Make python surface just a dumb (texture, face, level, zslice) tuple.

15 years agopython: Hide away the surface usage flags.
José Fonseca [Mon, 30 Mar 2009 14:09:18 +0000 (15:09 +0100)]
python: Hide away the surface usage flags.

Surfaces are now by definition GPU views. So CPU access flags don't make
any sense when creating a surface.

For now we are forcing surfaces to be GPU read/write, but that will go away
soon.

15 years agotgsi: Condition codes are implied in KILP.
Michal Krol [Mon, 30 Mar 2009 15:13:52 +0000 (17:13 +0200)]
tgsi: Condition codes are implied in KILP.

15 years agotgsi: Explain symbols used in instruction set documentation.
Michal Krol [Mon, 30 Mar 2009 15:12:58 +0000 (17:12 +0200)]
tgsi: Explain symbols used in instruction set documentation.

15 years agotgsi: Document BRA opcode.
Michal Krol [Mon, 30 Mar 2009 13:39:29 +0000 (15:39 +0200)]
tgsi: Document BRA opcode.

15 years agopython: Dont touch old pipe_winsys.
José Fonseca [Mon, 30 Mar 2009 13:24:20 +0000 (14:24 +0100)]
python: Dont touch old pipe_winsys.

15 years agopython: Update instructions for windows.
José Fonseca [Mon, 30 Mar 2009 11:12:37 +0000 (12:12 +0100)]
python: Update instructions for windows.

15 years agoscons: Get python extensions building correctly on windows.
José Fonseca [Mon, 30 Mar 2009 11:12:20 +0000 (12:12 +0100)]
scons: Get python extensions building correctly on windows.

15 years agoi965: srgb texture fixes
Roland Scheidegger [Sat, 28 Mar 2009 00:43:50 +0000 (01:43 +0100)]
i965: srgb texture fixes

i965 can either do SRGBA8_REV format or SARGB8 format, but not SRGBA8.
Could add SRGBA8_REV support to mesa, but simply use SARGB8 for now.
While here, also add true srgb luminance / luminance_alpha support -
unfortunately the published docs fail to mention which asics support
this, tested on g43 so assume this works on any g4x.

15 years agomesa: fix a glGetTexImage issue with base-converted texture formats
Roland Scheidegger [Sat, 28 Mar 2009 00:19:49 +0000 (01:19 +0100)]
mesa: fix a glGetTexImage issue with base-converted texture formats

need to respect the user-supplied base format, not the one derived from
the texture format actually used.

15 years agoi965: add support for signed rgba texture format
Roland Scheidegger [Fri, 27 Mar 2009 21:42:19 +0000 (22:42 +0100)]
i965: add support for signed rgba texture format

15 years agomesa: add _rev signed rgba texture format
Roland Scheidegger [Fri, 27 Mar 2009 20:59:33 +0000 (21:59 +0100)]
mesa: add _rev signed rgba texture format

15 years agoglapi regenerate
Roland Scheidegger [Sat, 28 Mar 2009 01:03:35 +0000 (02:03 +0100)]
glapi regenerate

15 years agoglapi: remove a couple accidental GL_ prefixes
Roland Scheidegger [Fri, 27 Mar 2009 20:52:07 +0000 (21:52 +0100)]
glapi: remove a couple accidental GL_ prefixes

15 years agomesa: add new signed rgba texture format
Roland Scheidegger [Fri, 27 Mar 2009 18:39:52 +0000 (19:39 +0100)]
mesa: add new signed rgba texture format

This is a (partial) backport of the signed texture format support in OGL 3.1.
Since it wasn't promoted from an existing extension roll our own.

15 years agogl: add new OGL 3.1 enums to glext.h
Roland Scheidegger [Fri, 27 Mar 2009 16:51:10 +0000 (17:51 +0100)]
gl: add new OGL 3.1 enums to glext.h

This is just temporary until the upstream source is updated.

15 years agogl: update glext.h to version 48
Roland Scheidegger [Fri, 27 Mar 2009 14:47:30 +0000 (15:47 +0100)]
gl: update glext.h to version 48

15 years agofix various small intel blitter issues
Roland Scheidegger [Mon, 2 Feb 2009 16:27:47 +0000 (17:27 +0100)]
fix various small intel blitter issues

use color format constants instead of magic numbers
remove handling of cpp 0 or 3 (neither is possible) in various places
don't misconfigure 8 bit surface blits as rgb565

15 years agowgl: Don't flush surface if it is NULL.
José Fonseca [Fri, 27 Mar 2009 21:43:24 +0000 (21:43 +0000)]
wgl: Don't flush surface if it is NULL.

Just a quick fix to prevent segfaults with glean.

15 years agowgl: Remove unused cruft.
José Fonseca [Fri, 27 Mar 2009 21:38:54 +0000 (21:38 +0000)]
wgl: Remove unused cruft.

15 years agoutil: Support Z24S8/Z24X8.
José Fonseca [Fri, 27 Mar 2009 20:23:16 +0000 (20:23 +0000)]
util: Support Z24S8/Z24X8.

15 years agomesa: Support Z24S8 wherever S8Z24 is supported.
José Fonseca [Fri, 27 Mar 2009 19:50:15 +0000 (19:50 +0000)]
mesa: Support Z24S8 wherever S8Z24 is supported.

15 years agor300-gallium: Add some surface_copy.
Corbin Simpson [Thu, 26 Mar 2009 04:26:02 +0000 (21:26 -0700)]
r300-gallium: Add some surface_copy.

15 years agor300-gallium: Use CMP for MOV on r300.
Corbin Simpson [Wed, 25 Mar 2009 14:25:06 +0000 (07:25 -0700)]
r300-gallium: Use CMP for MOV on r300.

Doesn't quite fix problems, though. :c