mesa.git
16 years agomesa: no longer need Writemask field in GLSL IR nodes
Brian Paul [Fri, 14 Nov 2008 01:18:07 +0000 (18:18 -0700)]
mesa: no longer need Writemask field in GLSL IR nodes

The Swizzle and Size fields carry all the info we need now.

16 years agomesa: revamp GLSL instruction emit code
Brian Paul [Fri, 14 Nov 2008 00:02:11 +0000 (17:02 -0700)]
mesa: revamp GLSL instruction emit code

This is a step toward better array handling code.  In particular, when more
than one operand of an instruction uses indirect addressing, we'll need some
temporary instructions and registers.  By converting IR storage to instruction
operands all in one place (emit_instruction()) we can be smarter about this.

Also, somewhat better handling of dst register swizzle/writemask handling.
This results in tighter writemasks on some instructions which is good for
SOA execution.

And, cleaner instruction commenting with inst_comment().

Next: remove some more dead code and additional clean-ups...

16 years agomesa: make writemask_string() non-static
Brian Paul [Thu, 13 Nov 2008 23:37:52 +0000 (16:37 -0700)]
mesa: make writemask_string() non-static

16 years agomesa: remove some do-nothing GLSL code
Brian Paul [Thu, 13 Nov 2008 23:31:27 +0000 (16:31 -0700)]
mesa: remove some do-nothing GLSL code

16 years agomesa: fix accidental regression in GLSL built-in texture matrix lookup
Brian Paul [Thu, 13 Nov 2008 15:47:36 +0000 (08:47 -0700)]
mesa: fix accidental regression in GLSL built-in texture matrix lookup

Was broken by commit 9aca9a4b72b2a7b378e50bd88f9c3324d07375ec.

16 years agomesa: use the tighter definition of GLSL ftransform() from the gallium branches
Brian Paul [Thu, 13 Nov 2008 15:46:45 +0000 (08:46 -0700)]
mesa: use the tighter definition of GLSL ftransform() from the gallium branches

16 years agomesa: remove unused/obsolete __NormalMatrixTranspose matrix
Brian Paul [Wed, 12 Nov 2008 23:47:03 +0000 (16:47 -0700)]
mesa: remove unused/obsolete __NormalMatrixTranspose matrix

16 years agomesa: fix bug in GLSL built-in matrix state lookup
Brian Paul [Wed, 12 Nov 2008 23:44:47 +0000 (16:44 -0700)]
mesa: fix bug in GLSL built-in matrix state lookup

16 years agomesa: tweak program register printing for RelAddr case
Brian Paul [Wed, 12 Nov 2008 18:12:10 +0000 (11:12 -0700)]
mesa: tweak program register printing for RelAddr case

16 years agomesa: fix generation of fixed function state when no vp exists
Alan Hourihane [Thu, 13 Nov 2008 13:16:03 +0000 (13:16 +0000)]
mesa: fix generation of fixed function state when no vp exists

16 years agoi965: Upload state on primitive switch, don't just prepare it.
Eric Anholt [Wed, 12 Nov 2008 21:37:16 +0000 (13:37 -0800)]
i965: Upload state on primitive switch, don't just prepare it.

This was a regression in 59b2c2adbbece27ccf54e58b598ea29cb3a5aa85 that broke
blender, among other apps.

16 years agoi965: Fix VB refcount leak on aperture overflow.
Eric Anholt [Wed, 12 Nov 2008 21:34:20 +0000 (13:34 -0800)]
i965: Fix VB refcount leak on aperture overflow.

16 years agoAdd glsync demo program from jbarnes for testing vblank synchronization.
Eric Anholt [Tue, 4 Nov 2008 20:34:29 +0000 (12:34 -0800)]
Add glsync demo program from jbarnes for testing vblank synchronization.

16 years agoi965: Fix up VS max_threads for G4X and removing a magic number.
Eric Anholt [Mon, 3 Nov 2008 02:50:59 +0000 (18:50 -0800)]
i965: Fix up VS max_threads for G4X and removing a magic number.

As far as I can read in the docs, VS threads can be 1:1 with the pairs of
VUE handles allocated for them.  Also, G4X can run twice as many threads as
before (though we won't unless the we bump the preferred URB entries for VS).

16 years agoi965: Fix up SF max_threads.
Eric Anholt [Mon, 3 Nov 2008 02:49:33 +0000 (18:49 -0800)]
i965: Fix up SF max_threads.

We were dividing the number of URB entries by two to get number of threads,
which looks suspiciously like a copy'n'paste-o from brw_vs_state.c.  Also, the
maximum number of threads is 24, not 12.

16 years agoi965: Fix up clip min_nr_entries, preferred_nr_entries, and max_threads.
Eric Anholt [Mon, 3 Nov 2008 02:43:10 +0000 (18:43 -0800)]
i965: Fix up clip min_nr_entries, preferred_nr_entries, and max_threads.

The clip thread could potentially deadlock when processing tristrips since
being moved back to dual-thread mode, as the two threads could each have 4 VUEs
referenced and not be able to allocate another one since SF processing
wasn't able to continue (needing 5 entries before it freed 2).
In constrained URB mode, similar deadlock could even have occurred with
polygons (so we cut back max_threads if we can't handle it any primitive type).

16 years agoi965: Update WM maximum threads for G4X.
Eric Anholt [Mon, 3 Nov 2008 02:42:17 +0000 (18:42 -0800)]
i965: Update WM maximum threads for G4X.

16 years agoi965: Add a big comment explaining my understanding of URB management.
Eric Anholt [Mon, 3 Nov 2008 02:48:25 +0000 (18:48 -0800)]
i965: Add a big comment explaining my understanding of URB management.

It shouldn't offer anything new over what's in the docs (except for G4X notes),
but here it's all in one place.

16 years agoglFlush before CopySubBuffer, fix coordinates and extension name typo.
Kristian Høgsberg [Wed, 12 Nov 2008 20:24:45 +0000 (15:24 -0500)]
glFlush before CopySubBuffer, fix coordinates and extension name typo.

16 years agoglx: fix xcb build
Hanno Böck [Wed, 12 Nov 2008 13:56:42 +0000 (06:56 -0700)]
glx: fix xcb build

16 years agomesa: fix version check in dinoshade.c
Brian Paul [Tue, 11 Nov 2008 21:33:11 +0000 (14:33 -0700)]
mesa: fix version check in dinoshade.c

16 years agomesa: allow relative indexing into all register files and indirect dst register indexing
Brian Paul [Tue, 11 Nov 2008 17:47:10 +0000 (10:47 -0700)]
mesa: allow relative indexing into all register files and indirect dst register indexing

16 years agoDon't mess with emacs tab width.
Kristian Høgsberg [Tue, 11 Nov 2008 18:39:52 +0000 (13:39 -0500)]
Don't mess with emacs tab width.

16 years agointel: reset cliprect_mode to IGNORE_CLIPRECTS.
Xiang, Haihao [Tue, 11 Nov 2008 05:42:13 +0000 (13:42 +0800)]
intel: reset cliprect_mode to IGNORE_CLIPRECTS.

This ensures all batchbuffers have a same cliprect mode after calling
_intel_batchbuffer_flush even if there aren't invalid commands in the
current batch buffer. (fix bug#18362).

16 years agomesa: restore the negate flag of dots in build_lighting.
Xiang, Haihao [Tue, 11 Nov 2008 05:36:32 +0000 (13:36 +0800)]
mesa: restore the negate flag of dots in build_lighting.

Dots is re-used if more than one light is enabled. Previously
the negate flag of dots may affect next light.

16 years agomesa: update new state for RasterPos like other operations.
Xiang, Haihao [Tue, 11 Nov 2008 05:16:20 +0000 (13:16 +0800)]
mesa: update new state for RasterPos like other operations.

This fixes a lighting issue when drawing a bitmap.

16 years agomesa: new _mesa_is_pow_two() function
Brian [Tue, 11 Nov 2008 03:15:28 +0000 (20:15 -0700)]
mesa: new _mesa_is_pow_two() function

16 years agomesa: restore glapi/ prefix on #include
Brian Paul [Mon, 10 Nov 2008 23:38:47 +0000 (16:38 -0700)]
mesa: restore glapi/ prefix on #include

16 years agomesa: fix some misc breakage caused by editing auto-generated files rather than the...
Brian Paul [Mon, 10 Nov 2008 21:42:02 +0000 (14:42 -0700)]
mesa: fix some misc breakage caused by editing auto-generated files rather than the python generators

Specifically:
  #include "glapitable.h" in src/mesa/main/glapi/dispatch.h
  Call _mesa_bsearch() in src/mesa/main/enums.c.

16 years agoGLX: fix out-of-bounds memory issue in indirect glAreTexturesResident()
Brian Paul [Mon, 10 Nov 2008 21:27:42 +0000 (14:27 -0700)]
GLX: fix out-of-bounds memory issue in indirect glAreTexturesResident()

See bug 18445.
When getting array results, __glXReadReply() always reads a multiple of
four bytes.  This can cause writing to invalid memory when 'n' is not a
multiple of four.

Special-case the glAreTexturesResident() functions now.
To fix the bug, we use a temporary buffer that's a multiple of four bytes
in length.

NOTE: this commit also reverts part of commit 919ec22ecf72aa163e1b97d8c7381002131ed32c
(glx/x11: Added some #ifdef GLX_DIRECT_RENDERING protection) which
directly edited the indirect.c file rather than the python generator!
I'm not repairing that issue at this time.

16 years agodri: alloc __DRIscreen object with calloc()
Brian Paul [Mon, 10 Nov 2008 19:37:08 +0000 (12:37 -0700)]
dri: alloc __DRIscreen object with calloc()

16 years agomesa: track initialization status of uniform variables. Plus, asst clean-ups.
Brian Paul [Mon, 10 Nov 2008 19:33:17 +0000 (12:33 -0700)]
mesa: track initialization status of uniform variables.  Plus, asst clean-ups.

16 years agomesa: initial support for uniform variable initializers.
Brian Paul [Mon, 10 Nov 2008 18:42:42 +0000 (11:42 -0700)]
mesa: initial support for uniform variable initializers.

This lets one specify initial values for uniforms in the code, avoiding
the need to call glUniform() in some cases.

16 years agomesa: fix logic error in GLSL linker when looking for main() shaders
Brian Paul [Mon, 10 Nov 2008 17:45:50 +0000 (10:45 -0700)]
mesa: fix logic error in GLSL linker when looking for main() shaders

16 years agomesa: allows 'f' suffix on GLSL float literals
Brian Paul [Mon, 10 Nov 2008 17:25:01 +0000 (10:25 -0700)]
mesa: allows 'f' suffix on GLSL float literals

16 years agoundo accidental changes to multitex.frag shader
Brian Paul [Mon, 10 Nov 2008 17:21:13 +0000 (10:21 -0700)]
undo accidental changes to multitex.frag shader

16 years agomesa: remove OPCODE_INT #define
Brian [Sat, 8 Nov 2008 17:33:30 +0000 (10:33 -0700)]
mesa: remove OPCODE_INT #define

16 years agomesa: use NRM3 in emit_normalize_vec3() when drivers are ready
Brian [Sat, 8 Nov 2008 17:29:03 +0000 (10:29 -0700)]
mesa: use NRM3 in emit_normalize_vec3() when drivers are ready

16 years agomesa: add support for 'centroid' qualifier in GLSL 1.20
Brian Paul [Fri, 7 Nov 2008 23:08:21 +0000 (16:08 -0700)]
mesa: add support for 'centroid' qualifier in GLSL 1.20

16 years agomesa: add support for 'invariant' keyword for GLSL 1.20
Brian Paul [Fri, 7 Nov 2008 22:51:10 +0000 (15:51 -0700)]
mesa: add support for 'invariant' keyword for GLSL 1.20

16 years agomesa: reformat comments, rewrap lines, etc for a little better readability
Brian Paul [Fri, 7 Nov 2008 21:28:00 +0000 (14:28 -0700)]
mesa: reformat comments, rewrap lines, etc for a little better readability

16 years agomesa: forgot sqrt in NRM3/4 instructions
Brian Paul [Fri, 7 Nov 2008 19:59:36 +0000 (12:59 -0700)]
mesa: forgot sqrt in NRM3/4 instructions

16 years agomesa: fix opcode table order bug
Brian Paul [Fri, 7 Nov 2008 19:59:08 +0000 (12:59 -0700)]
mesa: fix opcode table order bug

16 years agomesa: add GLSL support for DP2, NRM3, NRM4 instructions (not actually emitted yet...
Brian Paul [Fri, 7 Nov 2008 16:49:26 +0000 (09:49 -0700)]
mesa: add GLSL support for DP2, NRM3, NRM4 instructions (not actually emitted yet though)

16 years agomesa: added DP2, DP2A instructions
Brian Paul [Fri, 7 Nov 2008 16:41:00 +0000 (09:41 -0700)]
mesa: added DP2, DP2A instructions

16 years agomesa: added AND/OR/NOT/XOR instructions
Brian Paul [Fri, 7 Nov 2008 16:33:55 +0000 (09:33 -0700)]
mesa: added AND/OR/NOT/XOR instructions

16 years agomesa: include shader/prog_instruction.h
Brian Paul [Fri, 7 Nov 2008 16:06:09 +0000 (09:06 -0700)]
mesa: include shader/prog_instruction.h

Seems to fix a mysteriously missing build dependency.

16 years agomesa: added OPCODE_NRM3/NRM4 instructions for vector normalization.
Brian Paul [Fri, 7 Nov 2008 15:51:31 +0000 (08:51 -0700)]
mesa: added OPCODE_NRM3/NRM4 instructions for vector normalization.

We may emit these instructions from GLSL instead of DP3/RCP/MUL.

Also, implement SSG (set sign) instruction in the interpreter.

16 years agomesa: use _bfc0 instead of _col0 when building back face lighting.
Xiang, Haihao [Fri, 7 Nov 2008 06:58:04 +0000 (14:58 +0800)]
mesa: use _bfc0 instead of _col0 when building back face lighting.

16 years agomesa: rename OPCODE_INT -> OPCODE_TRUNC
Brian Paul [Fri, 7 Nov 2008 00:14:33 +0000 (17:14 -0700)]
mesa: rename OPCODE_INT -> OPCODE_TRUNC

Trunc is a more accurate description; there's no type conversion involved.

16 years agomesa: update the shader programs->TexturesUsed array at link time
Brian Paul [Thu, 6 Nov 2008 22:04:11 +0000 (15:04 -0700)]
mesa: update the shader programs->TexturesUsed array at link time

If an application never calls glUniform() to set sampler variable values
they'll remain 0 (the default value/unit).
Now call _mesa_update_shader_textures_used() at link time in case glUniform()
is never called.  program->TextureUsed[] will then be correct for state
validation.

16 years agoi965: Always check vertex program.
Xiang, Haihao [Thu, 6 Nov 2008 07:25:55 +0000 (15:25 +0800)]
i965: Always check vertex program.

Now i965 also uses the vertex program created by Mesa Core, but this vertex program
is not only depend on mesa state _NEW_PROGRAM, so always check the current vertex
program is updated or not. This fixes broken demo cubemap.

16 years agoi965: Implement missing OPCODE_NOISE3 instruction in fragment shaders.
Gary Wong [Thu, 6 Nov 2008 01:35:19 +0000 (20:35 -0500)]
i965: Implement missing OPCODE_NOISE3 instruction in fragment shaders.

OPCODE_NOISE4 coming later.

16 years agomesa: Fix compiler warnings on Windows.
Brian Paul [Wed, 5 Nov 2008 23:04:40 +0000 (16:04 -0700)]
mesa: Fix compiler warnings on Windows.

cherry-picked subset of a77976d2ee578d0483c64f2aa41719bbae9c1c97

16 years agomesa: fix a GLSL array indexing codegen bug
Brian Paul [Wed, 5 Nov 2008 21:03:15 +0000 (14:03 -0700)]
mesa: fix a GLSL array indexing codegen bug

Expressions like array[i] + array[j] didn't work properly before.

16 years agomesa: remove extra \n from printf string
Brian Paul [Wed, 5 Nov 2008 16:34:15 +0000 (09:34 -0700)]
mesa: remove extra \n from printf string

16 years agomesa: add Initialized field to gl_uniform struct, for debugging purposes only
Brian Paul [Wed, 5 Nov 2008 16:17:55 +0000 (09:17 -0700)]
mesa: add Initialized field to gl_uniform struct, for debugging purposes only

16 years agoadded glsl/skinning.c test to test matrix blending/weighting
Brian Paul [Tue, 4 Nov 2008 23:56:59 +0000 (16:56 -0700)]
added glsl/skinning.c test to test matrix blending/weighting

16 years agomesa: fix float-valued GLSL vertex attribute variables
Brian Paul [Tue, 4 Nov 2008 23:52:53 +0000 (16:52 -0700)]
mesa: fix float-valued GLSL vertex attribute variables

The swizzle mask for such variables wasn't set up properly.

16 years agoprint err msg if unable to open shader file
Brian Paul [Tue, 4 Nov 2008 22:19:28 +0000 (15:19 -0700)]
print err msg if unable to open shader file

16 years agoremove old debug glFlush/Finish calls from demos
Brian Paul [Tue, 4 Nov 2008 22:11:56 +0000 (15:11 -0700)]
remove old debug glFlush/Finish calls from demos

16 years agoi965: Clean up stale NDC comment.
Eric Anholt [Sun, 2 Nov 2008 20:29:03 +0000 (12:29 -0800)]
i965: Clean up stale NDC comment.

16 years agoi965: Avoid vs header computation for negative rhw on G4X.
Eric Anholt [Sun, 2 Nov 2008 20:19:02 +0000 (12:19 -0800)]
i965: Avoid vs header computation for negative rhw on G4X.

This cuts one MOV out when setting a zero header.

16 years agoi965: Merge GM45 into the G4X chipset define.
Eric Anholt [Sun, 2 Nov 2008 20:15:53 +0000 (12:15 -0800)]
i965: Merge GM45 into the G4X chipset define.

The mobile and desktop chipsets are the same, and having them separate is
more typing and more chances to screw up.

16 years agoi965: Fix copy'n'paste issue that made brw->urb.constrained useless.
Eric Anholt [Sun, 2 Nov 2008 19:49:46 +0000 (11:49 -0800)]
i965: Fix copy'n'paste issue that made brw->urb.constrained useless.

Also, add a comment explaining what brw->urb.constrained tries to do.

16 years agomesa: silence warnings
Brian Paul [Sat, 1 Nov 2008 22:04:45 +0000 (16:04 -0600)]
mesa: silence warnings

16 years agomesa: do scope replacement for while/for loops too
Brian Paul [Sat, 1 Nov 2008 21:55:39 +0000 (15:55 -0600)]
mesa: do scope replacement for while/for loops too

This fixes a function inlining bug involving vars declared inside loop bodies.

16 years agomesa: glsl tree print improvements
Brian Paul [Sat, 1 Nov 2008 21:55:14 +0000 (15:55 -0600)]
mesa: glsl tree print improvements

16 years agomesa: fix assignment / parameter passing of sampler types
Brian Paul [Sat, 1 Nov 2008 21:53:14 +0000 (15:53 -0600)]
mesa: fix assignment / parameter passing of sampler types

16 years agomesa: additional debug flags for glsl debug/disassembly
Brian Paul [Sat, 1 Nov 2008 16:57:25 +0000 (10:57 -0600)]
mesa: additional debug flags for glsl debug/disassembly

16 years agoFix for 58dc8b7: dest regions must not use HorzStride 0 in ExecSize 1
Keith Packard [Sat, 1 Nov 2008 21:38:19 +0000 (14:38 -0700)]
Fix for 58dc8b7: dest regions must not use HorzStride 0 in ExecSize 1

Quoting section 11.3.10, paragraph 10.2 of the 965PRM:

10.2.  If ExecSize is 1, dst.HorzStride must not be 0. Note that this is
relaxed from rule 10.1.2. Also note that this rule for destination
horizontal stride is different from that for source as stated in
rule #7.

GM45 gets very angry when rule 10.2 is violated.

Patch 58dc8b7 (i965: support destination horiz strides in align1 access mode)
added support for additional horizontal strides in the ExecSize 1 case, but
failed to notice that mesa occasionally re-purposes a register as a
temporary destination, even though it was constructed as a repeating source
with HorzStride = 0.

While, ideally, we should probably fix the code using these register
specifications, this patch simply rewrites them to use HorzStride 1 as the
pre-58dc8b7 code did.

Signed-off-by: Keith Packard <keithp@keithp.com>
16 years agomesa: fix some bugs with precision qualifier parsing
Brian Paul [Fri, 31 Oct 2008 23:29:54 +0000 (17:29 -0600)]
mesa: fix some bugs with precision qualifier parsing

16 years agomesa: do scope replacement for variable initializers too
Brian Paul [Fri, 31 Oct 2008 23:27:41 +0000 (17:27 -0600)]
mesa: do scope replacement for variable initializers too

16 years agomesa: fix copy/paste error in GLSL error msg
Brian Paul [Fri, 31 Oct 2008 23:22:13 +0000 (17:22 -0600)]
mesa: fix copy/paste error in GLSL error msg

16 years agointel: pixelzoom doesn't apply to glBitmap, so disable the fallback.
Eric Anholt [Fri, 31 Oct 2008 20:37:42 +0000 (13:37 -0700)]
intel: pixelzoom doesn't apply to glBitmap, so disable the fallback.

16 years agointel: Remove fallback for glDrawPixels(GL_COLOR_INDEX)
Eric Anholt [Fri, 31 Oct 2008 20:18:56 +0000 (13:18 -0700)]
intel: Remove fallback for glDrawPixels(GL_COLOR_INDEX)

GL_COLOR_INDEX mode is just like other normal formats (that is, not
depth/stencil) and is uploaded fine by TexImage.

16 years agointel: Add more fallback debugging for glDrawPixels.
Eric Anholt [Fri, 31 Oct 2008 20:13:08 +0000 (13:13 -0700)]
intel: Add more fallback debugging for glDrawPixels.

16 years agoi965: implement the missing OPCODE_NOISE1 and OPCODE_NOISE2 instructions.
Gary Wong [Fri, 31 Oct 2008 21:31:57 +0000 (17:31 -0400)]
i965: implement the missing OPCODE_NOISE1 and OPCODE_NOISE2 instructions.

(Only in fragment shaders, so far.  Support for NOISE3 and NOISE4 to come.)

16 years agoi965: support destination horiz strides in align1 access mode.
Gary Wong [Wed, 29 Oct 2008 23:53:33 +0000 (19:53 -0400)]
i965: support destination horiz strides in align1 access mode.

This is required for scatter writes in destination regions to work.

16 years agomesa: fix a typo in the previous commit
Xiang, Haihao [Fri, 31 Oct 2008 01:24:27 +0000 (09:24 +0800)]
mesa: fix a typo in the previous commit

16 years agomesa: fix an issue in _mesa_PointParameterfv().
Xiang, Haihao [Thu, 30 Oct 2008 02:10:58 +0000 (10:10 +0800)]
mesa: fix an issue in _mesa_PointParameterfv().

16 years agoglx: added PFNGL*PROC typedefs for GLX 1.3 functions
Brian Paul [Wed, 29 Oct 2008 21:49:19 +0000 (15:49 -0600)]
glx: added PFNGL*PROC typedefs for GLX 1.3 functions

Since we define GLX_VERSION_1_3 in glx.h, the typedefs in the glxext.h header
were getting skipped.

16 years agoglu: fix compilation problem when using Windows gl.h (sf bug 2204589)
Nigel Stewart [Wed, 29 Oct 2008 15:22:05 +0000 (09:22 -0600)]
glu: fix compilation problem when using Windows gl.h (sf bug 2204589)

16 years agointel: Fix glDrawPixels with 4d RasterPos.
Eric Anholt [Wed, 29 Oct 2008 05:50:52 +0000 (22:50 -0700)]
intel: Fix glDrawPixels with 4d RasterPos.

16 years agoi965: Fix check_aperture calls to cover everything needed for the prim at once.
Eric Anholt [Fri, 24 Oct 2008 20:02:21 +0000 (13:02 -0700)]
i965: Fix check_aperture calls to cover everything needed for the prim at once.

Previously, since my check_aperture API change, we would check each piece of
state against the batchbuffer individually, but not all the state against the
batchbuffer at once.  In addition to not being terribly useful in assuring
success, it probably also increased CPU load by calling check_aperture many
times per primitive.

16 years agomesa: include glslcompiler driver in tarball
Brian Paul [Wed, 29 Oct 2008 00:27:21 +0000 (18:27 -0600)]
mesa: include glslcompiler driver in tarball

16 years agomesa: fix stand-alone glslcompiler build
Brian Paul [Tue, 28 Oct 2008 23:03:35 +0000 (17:03 -0600)]
mesa: fix stand-alone glslcompiler build

16 years agointel: Don't keep intel->pClipRects, and instead just calculate it when needed.
Eric Anholt [Mon, 20 Oct 2008 00:46:41 +0000 (17:46 -0700)]
intel: Don't keep intel->pClipRects, and instead just calculate it when needed.

This avoids issues with dereferencing stale cliprects around intel_draw_buffer
time.  Additionally, take advantage of cliprects staying constant for FBOs and
DRI2, and emit cliprects in the batchbuffer instead of having to flush batch
each time they change.

16 years agoi965: Allocate temporaries contiguously with other regs in fragment shaders.
Gary Wong [Tue, 28 Oct 2008 19:03:14 +0000 (15:03 -0400)]
i965: Allocate temporaries contiguously with other regs in fragment shaders.

This is required for threads to be spawned with correctly sized GRF
register blocks.

16 years agoconfigure.ac: Add support for gnu/kfreebsd
Julien Cristau [Tue, 28 Oct 2008 17:56:05 +0000 (18:56 +0100)]
configure.ac: Add support for gnu/kfreebsd

Check for *-gnu instead of linux* to set DEFINES.
Change some freebsd* checks to *freebsd*.

16 years agoi965: Fix compiler warning from unused var.
Eric Anholt [Fri, 24 Oct 2008 19:43:17 +0000 (12:43 -0700)]
i965: Fix compiler warning from unused var.

16 years agoi965: Remove dead brw->wrap flag.
Eric Anholt [Fri, 24 Oct 2008 19:30:47 +0000 (12:30 -0700)]
i965: Remove dead brw->wrap flag.

16 years agointel: Use dri_bo_get_tiling to get tiling mode of buffers we get from names.
Eric Anholt [Tue, 14 Oct 2008 20:30:52 +0000 (13:30 -0700)]
intel: Use dri_bo_get_tiling to get tiling mode of buffers we get from names.

Previously, we were trying to pass a name to the GEM GET_TILING_IOCTL,
which needs a handle, and failing.  None of our buffers were tiled yet, but
they will be at some point with DRI2 and UXA.

16 years agointel: GL_FALSE on a BO if it won't be modified when mapping this BO. (thanks Eric).
Xiang, Haihao [Sat, 25 Oct 2008 22:31:33 +0000 (06:31 +0800)]
intel: GL_FALSE on a BO if it won't be modified when mapping this BO. (thanks Eric).

16 years agoi965: don't emit state when dri_bufmgr_check_aperture_space fails.
Xiang, Haihao [Fri, 24 Oct 2008 08:05:48 +0000 (16:05 +0800)]
i965: don't emit state when dri_bufmgr_check_aperture_space fails.

This ensures there is an unfilled batchbuffer used for emitting states again. Partial fix for #17964.

16 years agointel: fallback for intelEmitCopyBlit.
Xiang, Haihao [Fri, 24 Oct 2008 07:55:32 +0000 (15:55 +0800)]
intel: fallback for intelEmitCopyBlit.

Use _mesa_copy_rect instead of BLT operation if dri_bufmgr_check_aperture_space
still fails after flushing batchbuffer. Partial fix for #17964.

16 years agomesa: version 43 of glext.h
Brian Paul [Thu, 23 Oct 2008 17:23:36 +0000 (11:23 -0600)]
mesa: version 43 of glext.h

16 years agomesa: version 21 of glxext.h
Brian Paul [Thu, 23 Oct 2008 17:21:32 +0000 (11:21 -0600)]
mesa: version 21 of glxext.h

16 years agomesa: remove calls to _mesa_adjust_image_for_convolution(), use texImage fields
Brian Paul [Thu, 23 Oct 2008 16:49:51 +0000 (10:49 -0600)]
mesa: remove calls to _mesa_adjust_image_for_convolution(), use texImage fields

The texImage->Width/Height fields will have the post-convolution width/height.

16 years agomesa: move convolution image adjustment code for glCopyTexSubImage1/2/3D()
Brian Paul [Wed, 22 Oct 2008 13:53:26 +0000 (07:53 -0600)]
mesa: move convolution image adjustment code for glCopyTexSubImage1/2/3D()

Do it after initial error checking, after we know the texture's internal format.