mesa.git
15 years agodraw: add map/unmap directives for swtnl driver interface
Keith Whitwell [Tue, 17 Feb 2009 12:07:09 +0000 (12:07 +0000)]
draw: add map/unmap directives for swtnl driver interface

Previously draw module asked for a pointer into (mapped) vertex data,
which it would incrementally fill and emit draw commands against.  This
was hard for the drivers to deal with, especially in the case where a
draw command would force a flush and thus an unmap of the vertex data.

With this change, the draw module explicitly maps & then unmaps vertex
data prior to emitting draw commands.

15 years agomesa: remove old comments
Brian Paul [Mon, 16 Feb 2009 18:50:05 +0000 (11:50 -0700)]
mesa: remove old comments

Note: the default value for EmitCondCodes is FALSE.  This means the GLSL
compiler will emit code like this:

SEQ TEMP[0].x, A, B;
IF TEMP[0].x;
   ...
ENDIF

But if EmitCondCodes is TRUE, condition codes will be used instead:

SEQ.C TEMP[0].x, A, B;
IF (NE.xxxx);
   ...
ENDIF

15 years agoi965: tell GLSL compiler to emit code using condition codes
Brian Paul [Mon, 16 Feb 2009 18:45:57 +0000 (11:45 -0700)]
i965: tell GLSL compiler to emit code using condition codes

The default for EmitCondCodes got flipped when gallium-0.2 was merged.
This fixes GLSL if/else/endif regressions.
Drivers that use GLSL should always explicitly set the flag to be safe.

15 years agonouveau: oops :-)
Patrice Mandin [Mon, 16 Feb 2009 17:43:56 +0000 (18:43 +0100)]
nouveau: oops :-)

15 years agoautoconf: Always enable glew
Dan Nicholson [Mon, 16 Feb 2009 17:28:35 +0000 (09:28 -0800)]
autoconf: Always enable glew

Maybe this should turn into an option (--disable-glew), but for now just
enable glew all the time.

15 years agoglsl: silence some uninit var warnings
Brian Paul [Mon, 16 Feb 2009 15:25:57 +0000 (08:25 -0700)]
glsl: silence some uninit var warnings

15 years agocell: use some SPU intrinsics to get slightly better code in eval_inputs()
Brian Paul [Mon, 16 Feb 2009 15:25:33 +0000 (08:25 -0700)]
cell: use some SPU intrinsics to get slightly better code in eval_inputs()

Suggested by Jonathan Adamczewski.  There may be more places to do this...

15 years agor300-gallium: Add verbosity level to debugging.
Corbin Simpson [Mon, 16 Feb 2009 11:56:03 +0000 (03:56 -0800)]
r300-gallium: Add verbosity level to debugging.

Makes it a bit more manageable to read through the console logs.

15 years agor300-gallium: Fix BEGIN_CS and END_CS counting and mismatch.
Corbin Simpson [Mon, 16 Feb 2009 11:55:16 +0000 (03:55 -0800)]
r300-gallium: Fix BEGIN_CS and END_CS counting and mismatch.

15 years agor300-gallium: Set up draw rasterizer.
Corbin Simpson [Mon, 16 Feb 2009 11:33:56 +0000 (03:33 -0800)]
r300-gallium: Set up draw rasterizer.

15 years agodemos: fix glxpixmap and call glXWaitGL before calling XCopyArea.
Alan Hourihane [Mon, 16 Feb 2009 11:54:58 +0000 (11:54 +0000)]
demos: fix glxpixmap and call glXWaitGL before calling XCopyArea.

15 years agodri2: support glXWaitX & glXWaitGL by using fake front buffer.
Alan Hourihane [Mon, 16 Feb 2009 11:44:40 +0000 (11:44 +0000)]
dri2: support glXWaitX & glXWaitGL by using fake front buffer.

15 years agor300-gallium: Ooops, forgot to apply this stash.
Corbin Simpson [Mon, 16 Feb 2009 11:13:16 +0000 (03:13 -0800)]
r300-gallium: Ooops, forgot to apply this stash.

"git stash": The cause of, and solution to, all my problems.

15 years agor300-gallium: Include-guard r300_emit.h
Corbin Simpson [Mon, 16 Feb 2009 11:03:28 +0000 (03:03 -0800)]
r300-gallium: Include-guard r300_emit.h

15 years agor300-gallium: Add draw_arrays and friends.
Corbin Simpson [Mon, 16 Feb 2009 10:53:34 +0000 (02:53 -0800)]
r300-gallium: Add draw_arrays and friends.

This is the last bit of Gallium-side plumbing for drawing things.
From this point on, the only missing parts should be in r3xx-specific
code areas...

15 years agor300-gallium: Add SC_CLIP_RULE to clear.
Corbin Simpson [Mon, 16 Feb 2009 10:52:47 +0000 (02:52 -0800)]
r300-gallium: Add SC_CLIP_RULE to clear.

This is a register that is in r300_demo but not r300_surface, so adding it in
to see if it helps.

15 years agocell: minor Makefile clean-up
Brian Paul [Sun, 15 Feb 2009 19:08:47 +0000 (12:08 -0700)]
cell: minor Makefile clean-up

15 years agocell: new/tighter code for computing fragment program inputs
Brian Paul [Sun, 15 Feb 2009 19:08:02 +0000 (12:08 -0700)]
cell: new/tighter code for computing fragment program inputs

15 years agocell: combine eval_z(), eval_w() functions
Brian Paul [Sun, 15 Feb 2009 16:25:22 +0000 (09:25 -0700)]
cell: combine eval_z(), eval_w() functions

15 years agor300-gallium: Fix scissors.
Corbin Simpson [Sat, 14 Feb 2009 23:24:44 +0000 (15:24 -0800)]
r300-gallium: Fix scissors.

Don't use SCISSORS_OFFSET since we're DRI2,
and don't forget to set scissors in clear.

15 years agor300-gallium: Grab bag of goodies.
Corbin Simpson [Sat, 14 Feb 2009 12:41:29 +0000 (04:41 -0800)]
r300-gallium: Grab bag of goodies.

Some fixes from glisse, moar swtcl emit setup, cleanup a bunch of regs,
properly do clear flush, and BEGIN_CS count fixes.

15 years agor300-gallium: Clean up some clear registers.
Corbin Simpson [Sat, 14 Feb 2009 12:11:27 +0000 (04:11 -0800)]
r300-gallium: Clean up some clear registers.

15 years agor300-gallium: Use fui instead of a roll-my-own.
Corbin Simpson [Sat, 14 Feb 2009 11:23:50 +0000 (03:23 -0800)]
r300-gallium: Use fui instead of a roll-my-own.

Man, util/u_math just gets better by the day.

15 years agor300: Redirect constant TEX coordinates
Nicolai Haehnle [Sat, 14 Feb 2009 16:06:06 +0000 (17:06 +0100)]
r300: Redirect constant TEX coordinates

R3xx/R5xx fragment program texture constants must come from a hardware
register instead of the constant file, so we redirect if necessary during
the native rewrite phase.

The symptoms of this bug started appearing when the Mesa fixed function
texenvprogram code started using STATE_CURRENT_ATTRIB constants for
texture coordinates when the corresponding attributes were constant across
all vertices.

Signed-off-by: Nicolai Haehnle <nhaehnle@gmail.com>
15 years agoradeon-gallium: Clean out extensions explicitly enabled by Mesa.
Corbin Simpson [Sat, 14 Feb 2009 10:40:33 +0000 (02:40 -0800)]
radeon-gallium: Clean out extensions explicitly enabled by Mesa.

This cleans up some of the cruft from the old DRI setup, and
it turns out that only the GLSL extensions are still off if we
let st_extensions.c handle the setup instead.

15 years agor300-gallium: Update r300_screen comments and add a few formats.
Corbin Simpson [Sat, 14 Feb 2009 10:24:30 +0000 (02:24 -0800)]
r300-gallium: Update r300_screen comments and add a few formats.

15 years agor300-gallium: Enable all four colorbuffer render targets.
Corbin Simpson [Sat, 14 Feb 2009 10:07:29 +0000 (02:07 -0800)]
r300-gallium: Enable all four colorbuffer render targets.

As far as I can tell all the state emission necessary has been set up.
Well, except for the fragment shader, but c'mon, gimme a break. :3

15 years agor300-gallium: Add Z/stencil buffer format emit.
Corbin Simpson [Sat, 14 Feb 2009 10:06:17 +0000 (02:06 -0800)]
r300-gallium: Add Z/stencil buffer format emit.

Also set BEGIN_CS correctly.

15 years agor300-gallium: Emit Z/stencil buffer offset.
Corbin Simpson [Sat, 14 Feb 2009 09:55:38 +0000 (01:55 -0800)]
r300-gallium: Emit Z/stencil buffer offset.

15 years agor300-gallium: Add derived state for vertex formats.
Corbin Simpson [Sat, 14 Feb 2009 07:20:43 +0000 (23:20 -0800)]
r300-gallium: Add derived state for vertex formats.

Next up: The evil RS block.

15 years agoi965: rewrite the code for handling shader subroutine calls
Brian Paul [Sat, 14 Feb 2009 00:17:52 +0000 (17:17 -0700)]
i965: rewrite the code for handling shader subroutine calls

Previously, the prog_instruction::Data field was used to map original Mesa
instructions to brw instructions in order to resolve subroutine calls.  This
was a rather tangled mess.  Plus it's an obstacle to implementing dynamic
allocation/growing of the instruction buffer (it's still a fixed size).

Mesa's GLSL compiler emits a label for each subroutine and CAL instruction.
Now we use those labels to patch the subroutine calls after code generation
has been done.  We just keep a list of all CAL instructions that needs patching
and a list of all subroutine labels.  It's a simple matter to resolve them.

This also consolidates some redundant post-emit code between brw_vs_emit.c and
brw_wm_glsl.c and removes some loops that cleared the prog_instruction::Data
fields at the end.

Plus, a bunch of new comments.

15 years agoi965: add missing break for OPCODE_RET case
Brian Paul [Fri, 13 Feb 2009 23:56:25 +0000 (16:56 -0700)]
i965: add missing break for OPCODE_RET case

This doesn't effect correctness, but we were emitting an extraneous ADD.

15 years agoi965: the return value of translate_insn() is never used. Make it void.
Brian Paul [Thu, 12 Feb 2009 23:03:39 +0000 (16:03 -0700)]
i965: the return value of translate_insn() is never used.  Make it void.

15 years agoi965: minor clean-ups
Brian Paul [Thu, 12 Feb 2009 22:40:04 +0000 (15:40 -0700)]
i965: minor clean-ups

15 years agoi965: code clean-ups, comments, and minor refactoring
Brian Paul [Thu, 12 Feb 2009 22:35:41 +0000 (15:35 -0700)]
i965: code clean-ups, comments, and minor refactoring

15 years agoi965: updated comments
Brian Paul [Thu, 12 Feb 2009 22:35:02 +0000 (15:35 -0700)]
i965: updated comments

15 years agointel: turn on GL_ARB_shading_language_120
Brian Paul [Thu, 12 Feb 2009 22:04:21 +0000 (15:04 -0700)]
intel: turn on GL_ARB_shading_language_120

It's done in the Mesa GLSL compiler.  The only part of it that might
matter in drivers is the centroid sampling option for MSAA.

15 years agoi965: more reformatting/clean-up
Brian Paul [Thu, 12 Feb 2009 21:58:19 +0000 (14:58 -0700)]
i965: more reformatting/clean-up

15 years agoi965: s/__inline/INLINE/
Brian Paul [Thu, 12 Feb 2009 21:54:13 +0000 (14:54 -0700)]
i965: s/__inline/INLINE/

15 years agoi965: formatting and indentation fixes
Brian Paul [Thu, 12 Feb 2009 21:53:30 +0000 (14:53 -0700)]
i965: formatting and indentation fixes

15 years agoi965: fix inconsistant indentation in brw_wm.c
Brian Paul [Thu, 12 Feb 2009 21:47:56 +0000 (14:47 -0700)]
i965: fix inconsistant indentation in brw_wm.c

15 years agoi965: Eric Anholt's patch for bumping up texture sizes
Robert Ellison [Fri, 13 Feb 2009 22:19:04 +0000 (15:19 -0700)]
i965: Eric Anholt's patch for bumping up texture sizes

I'm committing this because it fixes a conform failure; the failure occurs
on the TextureProxy test, where the test attempts to create proxy textures
at every level, but fails at the last level (border == 1, width == 1,
height == 1) because it's beyond MAX_TEXTURE_LEVELS.

Eric's original comment was:

idr said that in his review swrast was ready for it, and the 965 driver is
advertising it already though it has been resulting in many crashes due to
arrays using these defines not being big enough.

15 years agor300-gallium: Various thingies.
Corbin Simpson [Fri, 13 Feb 2009 16:14:42 +0000 (08:14 -0800)]
r300-gallium: Various thingies.

Add formats to framebuffer emit, fix up shader function names,
make sure fragment format is emitted for r500.

15 years agoAdd dummy install target for glew to fix 'make install'
Dan Nicholson [Fri, 13 Feb 2009 15:31:24 +0000 (07:31 -0800)]
Add dummy install target for glew to fix 'make install'

Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
15 years agoautoconf: Add GLEW needed by progs when building GLUT
Dan Nicholson [Fri, 13 Feb 2009 14:34:09 +0000 (06:34 -0800)]
autoconf: Add GLEW needed by progs when building GLUT

Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
15 years agomesa: check if TNL state is null in _tnl_free_vertices() to avoid potential segfault
Brian Paul [Fri, 13 Feb 2009 15:11:01 +0000 (08:11 -0700)]
mesa: check if TNL state is null in _tnl_free_vertices() to avoid potential segfault

_tnl_free_vertices() is called from several places during context tear-down.
Depending on the order in which the swrast, swrast_setup and tnl context is
destroyed we could hit a null pointer here.  This doesn't seem to be an
actual issue with any Mesa drivers, but let's be safe.

15 years agomesa: add additional texture size/limit assertions
Brian Paul [Fri, 13 Feb 2009 14:44:02 +0000 (07:44 -0700)]
mesa: add additional texture size/limit assertions

15 years agoegl: Doesn't depend on xorg or pixman
Jakob Bornecrantz [Thu, 12 Feb 2009 02:59:07 +0000 (03:59 +0100)]
egl: Doesn't depend on xorg or pixman

15 years agor300-gallium: Take care of various bad dereferences in shader setup.
Corbin Simpson [Fri, 13 Feb 2009 07:36:21 +0000 (23:36 -0800)]
r300-gallium: Take care of various bad dereferences in shader setup.

Unbreaks glxinfo.

15 years agor300-gallium: Fix linker error a few linker warnings.
Corbin Simpson [Fri, 13 Feb 2009 04:47:15 +0000 (20:47 -0800)]
r300-gallium: Fix linker error a few linker warnings.

A few prototypes, a missing header, a misspelled macro.

15 years agor300-gallium: Fix build errors.
Corbin Simpson [Fri, 13 Feb 2009 04:35:17 +0000 (20:35 -0800)]
r300-gallium: Fix build errors.

15 years agor300-gallium: fix OUT_CS_ONE_REG and use where applicable
Joakim Sindholt [Fri, 13 Feb 2009 04:08:54 +0000 (05:08 +0100)]
r300-gallium: fix OUT_CS_ONE_REG and use where applicable

Signed-off-by: Corbin Simpson <MostAwesomeDude@gmail.com>
15 years agor300-gallium: r300 passthrough shader, static shader objects, and clear code.
Corbin Simpson [Fri, 13 Feb 2009 04:20:41 +0000 (20:20 -0800)]
r300-gallium: r300 passthrough shader, static shader objects, and clear code.

15 years agor300-gallium: Add r300 passthrough shader.
Corbin Simpson [Fri, 13 Feb 2009 04:01:09 +0000 (20:01 -0800)]
r300-gallium: Add r300 passthrough shader.

15 years agor300: minor fixes and clear up some surface_fill
Joakim Sindholt [Fri, 13 Feb 2009 01:34:34 +0000 (02:34 +0100)]
r300: minor fixes and clear up some surface_fill

Signed-off-by: Corbin Simpson <MostAwesomeDude@gmail.com>
15 years agor300-gallium: Add r500 passthrough shader assembly.
Corbin Simpson [Fri, 13 Feb 2009 00:53:06 +0000 (16:53 -0800)]
r300-gallium: Add r500 passthrough shader assembly.

This allows a simple passthrough fragment shader to be provided on r500.

15 years agor300-gallium: Fix typo in texture buffer size request.
Corbin Simpson [Fri, 13 Feb 2009 00:52:15 +0000 (16:52 -0800)]
r300-gallium: Fix typo in texture buffer size request.

15 years agointel: Only build winsys with built state trackers
Jakob Bornecrantz [Fri, 13 Feb 2009 00:17:11 +0000 (01:17 +0100)]
intel: Only build winsys with built state trackers

15 years agogallium: Add a bunch of autoconf options
Jakob Bornecrantz [Thu, 12 Feb 2009 23:57:47 +0000 (00:57 +0100)]
gallium: Add a bunch of autoconf options

./configure --help for more info

15 years agogalium: Makefile fixes: -Werror=implicit-function-declaration -> -Werror-implicit...
Benjamin Close [Thu, 12 Feb 2009 23:37:26 +0000 (10:07 +1030)]
galium: Makefile fixes: -Werror=implicit-function-declaration -> -Werror-implicit-function-declaration

Found-By: Tinderbox
15 years agointel: Make gem export the drm_api_hocks
Jakob Bornecrantz [Mon, 2 Feb 2009 00:30:05 +0000 (01:30 +0100)]
intel: Make gem export the drm_api_hocks

15 years agointel: Remove the old depricated dri1 winsys
Jakob Bornecrantz [Mon, 2 Feb 2009 00:33:38 +0000 (01:33 +0100)]
intel: Remove the old depricated dri1 winsys

15 years agointel: Remove the ttm backend
Jakob Bornecrantz [Mon, 2 Feb 2009 00:32:11 +0000 (01:32 +0100)]
intel: Remove the ttm backend

RIP ttm, its been fun knowing you.

15 years agoglDrawBuffers(n==0) is valid
Robert Ellison [Thu, 12 Feb 2009 20:47:36 +0000 (13:47 -0700)]
glDrawBuffers(n==0) is valid

According to the GL spec, calling glDrawBuffers() with n == 0 is a
valid operation (and essentially prevents drawing to any buffers).
But _msa_DrawBuffersARB() was producing a GL_INVALID_VALUE error in
this case.

This fix adjusts the error check, and makes a small change to the
ctx->Driver.DrawBuffer() call below to ensure that, if n == 0,
Driver.DrawBuffer() is called with GL_NONE and that buffers[0] is
*not* referenced in this case (since we don't know whether it is valid).

Internal identifier: 365833

15 years agomesa: use new ST_CALLOC_STRUCT() macro in gallium state tracker
Brian Paul [Thu, 12 Feb 2009 17:14:36 +0000 (10:14 -0700)]
mesa: use new ST_CALLOC_STRUCT() macro in gallium state tracker

15 years agomesa: consistantly use mesa memory-functions in gallium state tracker
Brian Paul [Thu, 12 Feb 2009 17:08:25 +0000 (10:08 -0700)]
mesa: consistantly use mesa memory-functions in gallium state tracker

Use _mesa_malloc(), _mesa_free(), etc everywhere, not malloc(), free(), etc.
Still using CALLOC_STRUCT() at this point.

15 years agomesa: don't include m_xform.h where not needed
Brian Paul [Thu, 12 Feb 2009 16:21:50 +0000 (09:21 -0700)]
mesa: don't include m_xform.h where not needed

15 years agomesa: move _mesa_transform_vector() from m_xform.c to m_matrix.c
Brian Paul [Thu, 12 Feb 2009 16:17:18 +0000 (09:17 -0700)]
mesa: move _mesa_transform_vector() from m_xform.c to m_matrix.c

m_xform.c is omitted from gallium builds but _mesa_transform_vector() is
still needed.

15 years agomesa: remove unused functions in m_xform.[ch]
Brian Paul [Thu, 12 Feb 2009 16:15:38 +0000 (09:15 -0700)]
mesa: remove unused functions in m_xform.[ch]

The functions are:
_mesa_project_points()
_mesa_transform_bounds3()
_mesa_transform_bounds2()
_mesa_transform_point_sz()

15 years agomesa: restore FLUSH_VERTICES() in _mesa_notifySwapBuffers()
Brian Paul [Thu, 12 Feb 2009 15:58:12 +0000 (08:58 -0700)]
mesa: restore FLUSH_VERTICES() in _mesa_notifySwapBuffers()

15 years agomesa: remove empty, unneeded mathmod.h header
Brian Paul [Thu, 12 Feb 2009 15:30:58 +0000 (08:30 -0700)]
mesa: remove empty, unneeded mathmod.h header

15 years agoglut: Fix broken font symbols when gcc visibility attributes used.
José Fonseca [Thu, 12 Feb 2009 15:49:55 +0000 (15:49 +0000)]
glut: Fix broken font symbols when gcc visibility attributes used.

15 years agoegl: Use only libdrm structs for kms
Jakob Bornecrantz [Wed, 11 Feb 2009 15:53:53 +0000 (16:53 +0100)]
egl: Use only libdrm structs for kms

15 years agoprogs: Prevent clash with min macro.
José Fonseca [Thu, 12 Feb 2009 13:54:20 +0000 (13:54 +0000)]
progs: Prevent clash with min macro.

15 years agoglut: Don't try to guess system headers.
José Fonseca [Thu, 12 Feb 2009 13:52:16 +0000 (13:52 +0000)]
glut: Don't try to guess system headers.

Just include them, especially such basic header as stdlib.h

15 years agotgsi: keep immediate file info uptodate
Keith Whitwell [Thu, 12 Feb 2009 13:30:01 +0000 (13:30 +0000)]
tgsi: keep immediate file info uptodate

Make sure the stats for TGSI_FILE_IMMEDIATE are uptodate.  Previously
we just had immediate_count, but file_*[TGSI_FILE_IMMEDIATE] were
bogus.

15 years agoscons: Unbreak mingw builds.
José Fonseca [Thu, 12 Feb 2009 12:59:58 +0000 (12:59 +0000)]
scons: Unbreak mingw builds.

15 years agoscons: Build xlib state tracker regardless of DRI settings.
José Fonseca [Thu, 12 Feb 2009 11:58:04 +0000 (11:58 +0000)]
scons: Build xlib state tracker regardless of DRI settings.

15 years agoscons: Build DLLs/EXEs with more memory debugger friendlier settings.
José Fonseca [Thu, 12 Feb 2009 11:57:45 +0000 (11:57 +0000)]
scons: Build DLLs/EXEs with more memory debugger friendlier settings.

15 years agosoftpipe: asst clean-ups, const correctness, comments
Brian Paul [Thu, 12 Feb 2009 05:13:17 +0000 (22:13 -0700)]
softpipe: asst clean-ups, const correctness, comments

15 years agosoftpipe: remove unneeded #include
Brian Paul [Thu, 12 Feb 2009 05:03:34 +0000 (22:03 -0700)]
softpipe: remove unneeded #include

15 years agosoftpipe: asst comments, clean-ups
Brian Paul [Thu, 12 Feb 2009 05:01:43 +0000 (22:01 -0700)]
softpipe: asst comments, clean-ups

15 years agosoftpipe: remove some old polygon stipple stuff and do some clean-ups
Brian Paul [Thu, 12 Feb 2009 04:51:00 +0000 (21:51 -0700)]
softpipe: remove some old polygon stipple stuff and do some clean-ups

15 years agosoftpipe: updated comments
Brian [Thu, 12 Feb 2009 04:44:38 +0000 (21:44 -0700)]
softpipe: updated comments

15 years agosoftpipe: rename PRIM_x to QUAD_PRIM_x
Brian [Thu, 12 Feb 2009 04:38:20 +0000 (21:38 -0700)]
softpipe: rename PRIM_x to QUAD_PRIM_x

15 years agosoftpipe: rename sp_headers.h to sp_quad.h
Brian [Thu, 12 Feb 2009 04:33:59 +0000 (21:33 -0700)]
softpipe: rename sp_headers.h to sp_quad.h

This header describes the quad-related datatypes afterall.

15 years agosoftpipe: rename single-include preprocessor symbol, add comments
Brian [Thu, 12 Feb 2009 04:30:21 +0000 (21:30 -0700)]
softpipe: rename single-include preprocessor symbol, add comments

15 years agosoftpipe: rename sp_quad.[ch] -> sp_quad_pipe.[ch]
Brian [Thu, 12 Feb 2009 04:25:10 +0000 (21:25 -0700)]
softpipe: rename sp_quad.[ch] -> sp_quad_pipe.[ch]

Be more consistant with 'draw' module.

15 years agoFix an i965 assertion failure on glClear()
Robert Ellison [Thu, 12 Feb 2009 01:01:34 +0000 (18:01 -0700)]
Fix an i965 assertion failure on glClear()

While running conform with render-to-texture:

conform -d 33 -v 2 -t -direct

the i965 driver failed this assertion:

intel_clear.c:77: intel_clear_tris: Assertion `(mask & ~((1 << BUFFER_BACK_LEFT) | (1 << BUFFER_FRONT_LEFT) | (1 << BUFFER_DEPTH) | (1 << BUFFER_STENCIL))) == 0' failed.

The problem is that intel_clear_tris() is called by intelClear() to
clear any and all of the available color buffers, but intel_clear_tris()
actually only handles the back left and front left color buffers; so
the assertion fails as soon as you try to clear a non-standard color
buffer.

The fix is to have intelClear() only call intel_clear_tris() with
buffers that intel_clear_tris() can support.  intelClear() already backs
down to _swrast_Clear() for all buffers that aren't handled explicitly.

15 years agoautoconf: Fix lib globbing for static builds
Dan Nicholson [Wed, 11 Feb 2009 23:16:00 +0000 (15:16 -0800)]
autoconf: Fix lib globbing for static builds

Reported-by: Siddhartha Chaudhuri <expiring_frog@yahoo.co.uk>
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
15 years agogallium: const-correctness for u_linear.c functions
Brian Paul [Wed, 11 Feb 2009 21:11:48 +0000 (14:11 -0700)]
gallium: const-correctness for u_linear.c functions

15 years agogallium: silence warnings about void ptr arithmetic
Brian Paul [Wed, 11 Feb 2009 21:09:22 +0000 (14:09 -0700)]
gallium: silence warnings about void ptr arithmetic

15 years agomesa: refactor MATH_SOURCES, remove Mesa x86 codegen from gallium build
Brian Paul [Wed, 11 Feb 2009 20:59:54 +0000 (13:59 -0700)]
mesa: refactor MATH_SOURCES, remove Mesa x86 codegen from gallium build

Omit math/m_xform.c from gallium builds since it's not used and it's the
one place we were pulling in the Mesa x86 codegen which collides with
gallium's x86 codegen.

Can now omit ASM_C_SOURCES from gallium build too.

15 years agomesa: get rid of _math_init()
Brian Paul [Wed, 11 Feb 2009 20:52:17 +0000 (13:52 -0700)]
mesa: get rid of _math_init()

Only VBO uses the evaluator code so call _math_init_eval() there.

Only TNL uses the transform/translate code so call _math_init_transformation()
and _math_init_translate9) there.

This is a step toward resolving some symbol collisions between Mesa's and
gallium's x86 codegen.
Have VBO and TNL modules call _math_init_transformation()

15 years agoautoconf: Adjust to new asm SOURCES variables
Dan Nicholson [Wed, 11 Feb 2009 19:04:29 +0000 (11:04 -0800)]
autoconf: Adjust to new asm SOURCES variables

Commit 90b2beb661f630966788a6e909dc759c99e38973 changed the assembly
variables. Without this change, the glapi assembly wasn't being built
when it was supposed to, resulting in missing symbols in libGL.

Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
15 years agoautoconf: Restore commented ASM_FLAGS
Dan Nicholson [Wed, 11 Feb 2009 18:42:34 +0000 (10:42 -0800)]
autoconf: Restore commented ASM_FLAGS

This is not the proper approach to disabling assembly. If there are bugs,
they should be fixed or the assembly can default to off.

Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
15 years agoAdd external pixman CFLAGS after all internal include paths
Dan Nicholson [Wed, 11 Feb 2009 17:55:20 +0000 (09:55 -0800)]
Add external pixman CFLAGS after all internal include paths

With the pixman CFLAGS at the beginning of the command line, my build
was picking up the glcore.h from glproto, which doesn't have any of the
TFP fields in __GLcontextmodes.

Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
15 years agonouveau: 1xN, Nx1 levels of a swizzled mip tree shouldn't be aligned.
Younes Manton [Wed, 11 Feb 2009 16:52:32 +0000 (11:52 -0500)]
nouveau: 1xN, Nx1 levels of a swizzled mip tree shouldn't be aligned.

15 years agodraw: Cap max vertices instead of failing assert.
José Fonseca [Wed, 11 Feb 2009 16:35:12 +0000 (16:35 +0000)]
draw: Cap max vertices instead of failing assert.

15 years agodemos: minor updates for shader_api.c test
Brian Paul [Wed, 11 Feb 2009 16:14:07 +0000 (09:14 -0700)]
demos: minor updates for shader_api.c test

Mesa's glGetUniformLocation() does support array indexes.

Minor code reformatting.

It would be great if this program were converted into a glean test...