mesa: Changes to 'debian-unstable'
ChangeLog | 325 ++++++++++++++++++++++++
debian/changelog | 10
debian/patches/07_sparc64_xform_asm.patch | 11
debian/patches/series | 1
debian/rules | 2
docs/relnotes-7.6.1.html | 1
progs/demos/projtex.c | 1
progs/samples/rgbtoppm.c | 7
progs/util/readtex.c | 7
src/gallium/auxiliary/draw/draw_pt.c | 3
src/gallium/auxiliary/rbug/rbug_connection.c | 1
src/gallium/drivers/i915simple/i915_debug.c | 1
src/gallium/drivers/i915simple/i915_screen.c | 1
src/gallium/drivers/llvmpipe/lp_bld_tgsi_soa.c | 6
src/gallium/state_trackers/egl/egl_tracker.c | 2
src/glx/x11/drisw_glx.c | 4
src/mesa/drivers/dri/common/dri_util.c | 11
src/mesa/drivers/dri/i915/i915_debug.c | 1
src/mesa/drivers/dri/r600/r700_assembler.c | 26 -
src/mesa/drivers/dri/r600/r700_chip.c | 8
src/mesa/main/fog.c | 11
src/mesa/main/light.c | 20 +
src/mesa/main/points.c | 11
src/mesa/main/texgen.c | 6
src/mesa/main/texobj.c | 2
src/mesa/main/texparam.c | 25 +
src/mesa/main/version.h | 2
src/mesa/shader/nvfragparse.c | 8
src/mesa/shader/prog_parameter.c | 2
src/mesa/shader/program.c | 14 -
src/mesa/shader/programopt.c | 14 -
src/mesa/shader/slang/slang_compile_operation.h | 1
src/mesa/shader/slang/slang_simplify.c | 9
src/mesa/sparc/xform.S | 2
src/mesa/vbo/vbo_exec_eval.c | 33 +-
35 files changed, 488 insertions(+), 101 deletions(-)
New commits:
commit adae195cc1c0c4d4c2899297b21837399d357290
Author: Brice Goglin <bgoglin@debian.org>
Date: Fri Dec 11 18:36:25 2009 +0100
Drop 07_sparc64_xform_asm.patch, applied upstream
diff --git a/debian/changelog b/debian/changelog
index 6966eaa..9522376 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -2,8 +2,9 @@ mesa (7.6.1~rc3-1) UNRELEASED; urgency=low
* New upstream release candidate.
+ Pull upstream mesa_7_6_branch up to commit 7d41b424.
- * Update debian/rules and add 07_sparc64_xform_asm.patch to
- fix sparc64 FTBFS, thanks Aurelien Jarno, closes: #560403.
+ + Includes sparc64 xform asm patch from #560403.
+ * Update debian/rules to fix sparc64 FTBFS, thanks Aurelien Jarno,
+ closes: #560403.
* Build r600 DRI driver.
-- Brice Goglin <bgoglin@debian.org> Fri, 11 Dec 2009 07:51:52 +0100
diff --git a/debian/patches/07_sparc64_xform_asm.patch b/debian/patches/07_sparc64_xform_asm.patch
deleted file mode 100644
index 1c00c02..0000000
--- a/debian/patches/07_sparc64_xform_asm.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- mesa-7.6.1~rc2.orig/src/mesa/sparc/xform.S
-+++ mesa-7.6.1~rc2/src/mesa/sparc/xform.S
-@@ -17,7 +17,7 @@
-
- #include "sparc_matrix.h"
-
--#if defined(SVR4) || defined(__SVR4) || defined(__svr4__)
-+#if defined(SVR4) || defined(__SVR4) || defined(__svr4__) || defined(__arch64__)
- /* Solaris requires this for 64-bit. */
- .register %g2, #scratch
- .register %g3, #scratch
diff --git a/debian/patches/series b/debian/patches/series
index 9d0bb66..1f29aca 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -3,4 +3,3 @@
04_osmesa_version.diff
05_hurd-ftbfs.diff
06_kfreebsd-ftbfs.diff
-07_sparc64_xform_asm.patch
commit 3fa885911b2a4b0adefbe17803b48356ec5ad2cb
Author: Brice Goglin <bgoglin@debian.org>
Date: Fri Dec 11 18:33:34 2009 +0100
New upstream release candidate
diff --git a/ChangeLog b/ChangeLog
index 5e70787..ce34476 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,328 @@
+commit 7d41b4248bee1d926646ef5fdff07da4f9026589
+Author: Brian Paul <brianp@vmware.com>
+Date: Fri Dec 11 09:41:34 2009 -0700
+
+ docs: updated 7.6.1 relnotes with GLSL fixes
+
+commit d8f8eca9efaf2f537cf9218e4dd1d742e19ffc76
+Author: Brian Paul <brianp@vmware.com>
+Date: Fri Dec 11 09:40:33 2009 -0700
+
+ mesa: remove unnecessary loop in _mesa_remove_output_reads()
+
+commit 5076a4f53a2f34cc9116b45951037f639885c7a1
+Author: Brian Paul <brianp@vmware.com>
+Date: Fri Dec 11 09:16:25 2009 -0700
+
+ mesa: check dst reg in _mesa_find_free_register()
+
+ If a register was only being used as a destination (as will happen when
+ generated condition-codes) we missed its use. So we'd errantly return
+ a register index that was really in-use, not free.
+
+ Fixes bug 25579.
+
+commit f7f1211b9b0a8fa0e5f5427b74b4eee4dabf65af
+Author: Aurelien Jarno <aurel32@debian.org>
+Date: Fri Dec 11 08:46:54 2009 -0700
+
+ sparc: additional preprocessor test for SPARC 64-bit
+
+commit 94fba49be97008565c0225bc46894bfd9453bb5e
+Author: Vinson Lee <vlee@vmware.com>
+Date: Thu Dec 10 18:51:51 2009 -0800
+
+ mesa: Initialize variable in MatchInstruction.
+
+commit e31df54754e2305b7cc7072053bf5a4e0b477fd6
+Author: Vinson Lee <vlee@vmware.com>
+Date: Thu Dec 10 18:32:33 2009 -0800
+
+ mesa: Assign _mesa_lookup_parameter_index return value to GLint.
+
+commit cb1dcb55f9884431a5e2b90e9208b42558a95611
+Author: Vinson Lee <vlee@vmware.com>
+Date: Thu Dec 10 18:21:59 2009 -0800
+
+ i915: Add missing break statement in i915_debug_packet.
+
+commit d38ffed5236adf3ee83c0bc5bdee0233ce566e01
+Author: Vinson Lee <vlee@vmware.com>
+Date: Thu Dec 10 17:50:35 2009 -0800
+
+ glsl: Increase size of array in_slang_lookup_constant from 4 to 16.
+
+ For some cases, _mesa_GetIntegerv reads up to params[15].
+
+commit 1cf60c981091d7a46cb404fd607f85553c427761
+Author: Vinson Lee <vlee@vmware.com>
+Date: Thu Dec 10 15:41:13 2009 -0800
+
+ progs/samples: Byte swap individual members of struct _rawImageRec.
+
+commit bc0509bba8cc962a4ee2dafd684e153b3060262d
+Author: Vinson Lee <vlee@vmware.com>
+Date: Thu Dec 10 13:24:15 2009 -0800
+
+ progs/util: Byte swap individual members of struct _rawImageRec.
+
+commit 51f52edaf186a927a2c8c29ba9dba56d18928a7e
+Author: Vinson Lee <vlee@vmware.com>
+Date: Thu Dec 10 12:37:10 2009 -0800
+
+ glsl: Fix array out-of-bounds access by _slang_lookup_constant.
+
+commit dcb4a37fc89924192d923ed6906d2922371b8cb1
+Author: Vinson Lee <vlee@vmware.com>
+Date: Thu Dec 10 12:11:09 2009 -0800
+
+ mesa: Fix array out-of-bounds access by _mesa_TexParameteriv.
+
+commit b82757880545f8bce471ba8f13c16998888cd4b5
+Author: Vinson Lee <vlee@vmware.com>
+Date: Wed Dec 9 17:59:23 2009 -0800
+
+ mesa: Fix array out-of-bounds access by _mesa_TexGend.
+
+ _mesa_TexGend calls _mesa_TexGenfv, which uses the params argument
+ as an array.
+
+commit 444d1f39108ab4419843f19f76c968cef3398bab
+Author: Vinson Lee <vlee@vmware.com>
+Date: Wed Dec 9 17:34:50 2009 -0800
+
+ mesa: Fix array out-of-bounds access by _mesa_Lighti.
+
+ _mesa_Lighti calls _mesa_Lightiv, which uses the params argument
+ as an array.
+
+commit 34528a34c446afea4442f479713e7f926220f128
+Author: Vinson Lee <vlee@vmware.com>
+Date: Wed Dec 9 17:11:30 2009 -0800
+
+ mesa: Fix array out-of-bounds access by _mesa_Lightf.
+
+commit 348883076bd213ec733a1ba2a4768788e4669c97
+Author: Vinson Lee <vlee@vmware.com>
+Date: Wed Dec 9 13:15:05 2009 -0800
+
+ mesa: Fix array out-of-bounds access by _mesa_PointParameteri.
+
+ _mesa_PointParameteri calls _mesa_PointParameterfv, which uses the
+ params argument as an array.
+
+commit 6f2d51b81ff907af9727e90153a46e79e246fc66
+Author: Vinson Lee <vlee@vmware.com>
+Date: Wed Dec 9 13:00:22 2009 -0800
+
+ mesa: Fix array out-of-bounds access by _mesa_PointParameterf.
+
+ _mesa_PointParameterf calls _mesa_PointParameterfv, which uses the
+ params argument as an array.
+
+commit 637970aefdcdd1ee50e3759de384b82e6109a45c
+Author: Vinson Lee <vlee@vmware.com>
+Date: Wed Dec 9 12:43:28 2009 -0800
+
+ mesa: Fix array out-of-bounds access by _mesa_LightModelf.
+
+ _mesa_LightModelf calls _mesa_LightModelfv, which uses the
+ params argument as an array.
+
+commit a082d965de228d5035e59245df528af62761652a
+Author: Vinson Lee <vlee@vmware.com>
+Date: Wed Dec 9 11:26:24 2009 -0800
+
+ glsl: Remove unused member x from struct slang_operation.
+
+commit 3de8fff45d04fd7e702cd656ba97cafd348c3981
+Author: Brian Paul <brianp@vmware.com>
+Date: Wed Dec 9 08:30:01 2009 -0700
+
+ mesa: fix baseLevel >= MAX_TEXTURE_LEVELS test
+
+ This fixes invalid array indexing when baseLevel == MAX_TEXTURE_LEVELS.
+ See bug 25528.
+
+commit 33a120e4761a661736ea64a3efc2e3831ac5600a
+Author: Andre Maasikas <amaasikas@gmail.com>
+Date: Wed Dec 9 10:51:52 2009 +0200
+
+ r600: fix state size prediction after dc0777d3
+
+commit af16c822a5af8ce0aa7582e8ea44315b62b7356b
+Author: Vinson Lee <vlee@vmware.com>
+Date: Tue Dec 8 18:26:05 2009 -0800
+
+ mesa: Fix array out-of-bounds access by _mesa_LightModeli.
+
+ _mesa_LightModeli calls _mesa_LightModeliv, which uses the
+ params argument as an array.
+
+commit d33bf38d63d233f6a09115acfff230c464d3ee29
+Author: Vinson Lee <vlee@vmware.com>
+Date: Tue Dec 8 17:51:07 2009 -0800
+
+ mesa: Fix array out-of-bounds access by _mesa_Fogf.
+
+ _mesa_Fogf calls _mesa_Fogfv, which uses the params argument
+ as an array.
+
+commit 3f7c2ac2798b385bed97b6931a1568a7e0223a0a
+Author: Vinson Lee <vlee@vmware.com>
+Date: Tue Dec 8 17:25:05 2009 -0800
+
+ mesa: Fix array out-of-bounds access by _mesa_TexParameteri.
+
+ _mesa_TexParameteri calls set_tex_parameteri, which uses the
+ params argument as an array.
+
+commit 7f146b38240e1c4efa6d8d0a4e5a0c8346706de5
+Author: Vinson Lee <vlee@vmware.com>
+Date: Tue Dec 8 16:04:33 2009 -0800
+
+ mesa: Fix array out-of-bounds access by _mesa_Fogi.
+
+ _mesa_Fogi calls _mesa_Fogfv, which uses the params argument
+ as an array.
+
+commit a1d46fbea0b40d7edc668ea5993ea4318f37c9f9
+Author: Vinson Lee <vlee@vmware.com>
+Date: Tue Dec 8 15:42:13 2009 -0800
+
+ mesa: Fix array out-of-bounds access by _mesa_TexParameteri.
+
+ _mesa_TexParameteri calls set_tex_parameterf, which uses the
+ params argument as an array.
+
+commit d88f3b946804f9a3e8cad4f8896e6be488fec2b5
+Author: Vinson Lee <vlee@vmware.com>
+Date: Tue Dec 8 14:31:38 2009 -0800
+
+ mesa: Fix array out-of-bounds access by _mesa_TexParameterfv.
+
+ _mesa_TexParameterfv calls set_tex_parameteri, which uses the
+ params argument as an array.
+
+commit 54b0ed8360019fc6e0234c2c3413be40fe4d3b59
+Author: Brian Paul <brianp@vmware.com>
+Date: Tue Dec 8 15:03:15 2009 -0700
+
+ vbo: fix array index out of bounds error, and fix evaluator priorities
+
+ Fixes bug 25525.
+ Plus, the GL_NV_vertex_program evaluators alias and override the
+ convential evaluator maps, so set their state after the conventional
+ maps.
+
+commit 1de1deffce9c7120a167af8553b606eec82e60a3
+Author: Vinson Lee <vlee@vmware.com>
+Date: Tue Dec 8 00:43:38 2009 -0800
+
+ i915g: Fix memory leak when pci id is unknown.
+
+commit 7e93e06781d2f3e0c737c7654c3fb0d83e31e45a
+Author: Vinson Lee <vlee@vmware.com>
+Date: Tue Dec 8 00:37:35 2009 -0800
+
+ i915g: Add missing break statement in i915_debug_packet.
+
+commit 7f8e22aa29b7340d51b1f2e16d55a035c0f9b851
+Author: Vinson Lee <vlee@vmware.com>
+Date: Tue Dec 8 00:26:37 2009 -0800
+
+ rbug: Initialize variable in rbug_get_message.
+
+ Silences uninitialized variable warning.
+
+commit 369669ff9a7ff7636cadef8e2b13f2f28face98f
+Author: Andre Maasikas <amaasikas@gmail.com>
+Date: Thu Dec 3 12:26:44 2009 +0200
+
+ r600: add support for TXB instruction
+
+ makes testing other things easier - does not hang the card
+ TODO: enable TEX dependency tracking in vertex programs
+
+commit dc0777d3e3b760d7faa5fb99a189919bde07ca0b
+Author: Andre Maasikas <amaasikas@gmail.com>
+Date: Wed Nov 4 10:00:47 2009 +0200
+
+ r600: reorder state for render_target and blend
+
+ First time around render targets are not enabled yet (done in
+ r700SendRenderTargetState) so blend state is not emitted for any targets.
+ Affects first glClear in some mesa tests.
+ As a quick fix reorder state emit so that target is set first
+
+commit add6dfbba64260c9b314b4a95c8def084e05bd3b
+Author: Vinson Lee <vlee@vmware.com>
+Date: Mon Dec 7 19:04:07 2009 -0800
+
+ llvmpipe: Initialize variables in emit_instruction.
+
+commit 3e8b2fda215689b9a77c73020a1efc523995931e
+Author: Vinson Lee <vlee@vmware.com>
+Date: Mon Dec 7 18:40:37 2009 -0800
+
+ progs/test: Initialize variable in prog_parameter.
+
+ Silences uninitialized variable compiler warning.
+
+commit 9dbd47fc6b1cf9ddfb318f2e05df0886cd5fe0df
+Author: Ian Romanick <ian.d.romanick@intel.com>
+Date: Mon Dec 7 16:59:59 2009 -0800
+
+ mesa: set version string to 7.6.1-rc3
+
+commit 7d84169865f5907a02ff2283ca7bd45a3bb2f3c9
+Author: Vinson Lee <vlee@vmware.com>
+Date: Mon Dec 7 12:31:08 2009 -0800
+
+ progs/demos: Fix memory leak in projtex.c.
+
+commit 7005f7cd1a9947e75bf772897d9055e3fe467c3d
+Author: Vinson Lee <vlee@vmware.com>
+Date: Fri Nov 20 16:33:25 2009 -0800
+
+ st/egl: Fix memory leak in egl_tracker.c.
+ (cherry picked from commit 052b127842af3372fd768eae8e29b240a696a12a)
+
+commit c994f08eb1ec2a4bbaa44fbd6d35e7ff033d5c3c
+Author: Vinson Lee <vlee@vmware.com>
+Date: Sat Nov 28 23:22:31 2009 -0500
+
+ dri: Fix potential null pointer dereference in driBindContext.
+ (cherry picked from commit 919898e92fa23ff71a59d86a46ff0886a6f34e4d)
+
+commit f622b649fb0c55b1640997f9d32ea327743519a1
+Author: Vinson Lee <vlee@vmware.com>
+Date: Tue Nov 24 00:57:55 2009 -0500
+
+ dri: Fix potential null pointer deference in dri_put_drawable.
+ (cherry picked from commit 364070b1f2b08d43fb205ec198894a35bec6b2f3)
+
+commit 76b3523d752968bc552d4350a39b9b9b1a023cf0
+Author: Vinson Lee <vlee@vmware.com>
+Date: Mon Nov 23 01:30:32 2009 -0500
+
+ glx: Prevent potential null pointer deference in driCreateContext.
+ (cherry picked from commit 4b0b250aae6ae7d48cd24f9d91d05ab58086c4b2)
+
+commit 978b80c8e35b465273921a28540ed15f07d1afbf
+Author: Vinson Lee <vlee@vmware.com>
+Date: Fri Oct 9 07:24:04 2009 -0600
+
+ progs/tests: Add tests to Makefile.
+ (cherry picked from commit 76d2ec3a0a047a65ffca70f53848241a3225dad3)
+
+commit 3cd745515e72c42efcd0c9f7d30e58f46f821b98
+Author: Vinson Lee <vlee@vmware.com>
+Date: Fri Nov 20 16:03:48 2009 -0800
+
+ draw: Initialize variable in draw_pt.c.
+ (cherry picked from commit ea98e9820d7117f7a187f355445796b1ef5d9e0c)
+
commit b2953ee1a655a010f36b5fc1b47f8bd8b06ce368
Author: Vinson Lee <vlee@vmware.com>
Date: Sun Nov 29 00:50:48 2009 -0500
diff --git a/debian/changelog b/debian/changelog
index 995c688..6966eaa 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,5 +1,7 @@
-mesa (7.6.1~rc2-2) UNRELEASED; urgency=low
+mesa (7.6.1~rc3-1) UNRELEASED; urgency=low
+ * New upstream release candidate.
+ + Pull upstream mesa_7_6_branch up to commit 7d41b424.
* Update debian/rules and add 07_sparc64_xform_asm.patch to
fix sparc64 FTBFS, thanks Aurelien Jarno, closes: #560403.
* Build r600 DRI driver.
commit 7d41b4248bee1d926646ef5fdff07da4f9026589
Author: Brian Paul <brianp@vmware.com>
Date: Fri Dec 11 09:41:34 2009 -0700
docs: updated 7.6.1 relnotes with GLSL fixes
diff --git a/docs/relnotes-7.6.1.html b/docs/relnotes-7.6.1.html
index 752f9ca..7160168 100644
--- a/docs/relnotes-7.6.1.html
+++ b/docs/relnotes-7.6.1.html
@@ -58,6 +58,7 @@ tbd
<li>Endianness fixes for the DRI swrast driver (bug 22767).</li>
<li>Point sprite fixes for i915/945 driver.
<li>Fixed assorted memory leaks (usually on error paths)
+<li>Fixed some GLSL compiler bugs (ex: 25579)
</ul>
<h2>Changes</h2>
commit d8f8eca9efaf2f537cf9218e4dd1d742e19ffc76
Author: Brian Paul <brianp@vmware.com>
Date: Fri Dec 11 09:40:33 2009 -0700
mesa: remove unnecessary loop in _mesa_remove_output_reads()
diff --git a/src/mesa/shader/programopt.c b/src/mesa/shader/programopt.c
index f70c75c..c5b821d 100644
--- a/src/mesa/shader/programopt.c
+++ b/src/mesa/shader/programopt.c
@@ -528,15 +528,11 @@ _mesa_remove_output_reads(struct gl_program *prog, gl_register_file type)
/* look for instructions which write to the varying vars identified above */
for (i = 0; i < prog->NumInstructions; i++) {
struct prog_instruction *inst = prog->Instructions + i;
- const GLuint numSrc = _mesa_num_inst_src_regs(inst->Opcode);
- GLuint j;
- for (j = 0; j < numSrc; j++) {
- if (inst->DstReg.File == type &&
- outputMap[inst->DstReg.Index] >= 0) {
- /* change inst to write to the temp reg, instead of the varying */
- inst->DstReg.File = PROGRAM_TEMPORARY;
- inst->DstReg.Index = outputMap[inst->DstReg.Index];
- }
+ if (inst->DstReg.File == type &&
+ outputMap[inst->DstReg.Index] >= 0) {
+ /* change inst to write to the temp reg, instead of the varying */
+ inst->DstReg.File = PROGRAM_TEMPORARY;
+ inst->DstReg.Index = outputMap[inst->DstReg.Index];
}
}
commit 5076a4f53a2f34cc9116b45951037f639885c7a1
Author: Brian Paul <brianp@vmware.com>
Date: Fri Dec 11 09:16:25 2009 -0700
mesa: check dst reg in _mesa_find_free_register()
If a register was only being used as a destination (as will happen when
generated condition-codes) we missed its use. So we'd errantly return
a register index that was really in-use, not free.
Fixes bug 25579.
diff --git a/src/mesa/shader/program.c b/src/mesa/shader/program.c
index 2cd6eb8..18d4ef9 100644
--- a/src/mesa/shader/program.c
+++ b/src/mesa/shader/program.c
@@ -813,9 +813,17 @@ _mesa_find_free_register(const struct gl_program *prog, GLuint regFile)
const struct prog_instruction *inst = prog->Instructions + i;
const GLuint n = _mesa_num_inst_src_regs(inst->Opcode);
- for (k = 0; k < n; k++) {
- if (inst->SrcReg[k].File == regFile) {
- used[inst->SrcReg[k].Index] = GL_TRUE;
+ /* check dst reg first */
+ if (inst->DstReg.File == regFile) {
+ used[inst->DstReg.Index] = GL_TRUE;
+ }
+ else {
+ /* check src regs otherwise */
+ for (k = 0; k < n; k++) {
+ if (inst->SrcReg[k].File == regFile) {
+ used[inst->SrcReg[k].Index] = GL_TRUE;
+ break;
+ }
}
}
}
commit f7f1211b9b0a8fa0e5f5427b74b4eee4dabf65af
Author: Aurelien Jarno <aurel32@debian.org>
Date: Fri Dec 11 08:46:54 2009 -0700
sparc: additional preprocessor test for SPARC 64-bit
diff --git a/src/mesa/sparc/xform.S b/src/mesa/sparc/xform.S
index f2b9674..2a7cce4 100644
--- a/src/mesa/sparc/xform.S
+++ b/src/mesa/sparc/xform.S
@@ -17,7 +17,7 @@
#include "sparc_matrix.h"
-#if defined(SVR4) || defined(__SVR4) || defined(__svr4__)
+#if defined(SVR4) || defined(__SVR4) || defined(__svr4__) || defined(__arch64__)
/* Solaris requires this for 64-bit. */
.register %g2, #scratch
.register %g3, #scratch
commit 1f47135544eb6157a8ff5f3233a2e158f455511c
Author: Brice Goglin <bgoglin@debian.org>
Date: Fri Dec 11 15:54:32 2009 +0100
Build r600_dri.so
diff --git a/debian/changelog b/debian/changelog
index d918f03..995c688 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -2,6 +2,7 @@ mesa (7.6.1~rc2-2) UNRELEASED; urgency=low
* Update debian/rules and add 07_sparc64_xform_asm.patch to
fix sparc64 FTBFS, thanks Aurelien Jarno, closes: #560403.
+ * Build r600 DRI driver.
-- Brice Goglin <bgoglin@debian.org> Fri, 11 Dec 2009 07:51:52 +0100
diff --git a/debian/rules b/debian/rules
index e605708..c9ed8f0 100755
--- a/debian/rules
+++ b/debian/rules
@@ -69,7 +69,7 @@ else
ifeq ($(DEB_HOST_ARCH), lpia)
DRI_DRIVERS += i915 i965
else ifneq ($(DEB_HOST_ARCH), s390)
- DRI_DRIVERS += mach64 mga r128 r200 r300 radeon s3v savage tdfx trident
+ DRI_DRIVERS += mach64 mga r128 r200 r300 r600 radeon s3v savage tdfx trident
ifeq ($(DEB_HOST_GNU_CPU), i486)
DRI_DRIVERS += i810 i915 i965 sis unichrome
else ifeq ($(DEB_HOST_GNU_CPU), x86_64)
commit 94fba49be97008565c0225bc46894bfd9453bb5e
Author: Vinson Lee <vlee@vmware.com>
Date: Thu Dec 10 18:51:51 2009 -0800
mesa: Initialize variable in MatchInstruction.
diff --git a/src/mesa/shader/nvfragparse.c b/src/mesa/shader/nvfragparse.c
index 0fd5552..b739a6a 100644
--- a/src/mesa/shader/nvfragparse.c
+++ b/src/mesa/shader/nvfragparse.c
@@ -217,6 +217,12 @@ MatchInstruction(const GLubyte *token)
const struct instruction_pattern *inst;
struct instruction_pattern result;
+ result.name = NULL;
+ result.opcode = MAX_OPCODE; /* i.e. invalid instruction */
+ result.inputs = 0;
+ result.outputs = 0;
+ result.suffixes = 0;
+
for (inst = Instructions; inst->name; inst++) {
if (_mesa_strncmp((const char *) token, inst->name, 3) == 0) {
/* matched! */
@@ -247,7 +253,7 @@ MatchInstruction(const GLubyte *token)
return result;
}
}
- result.opcode = MAX_OPCODE; /* i.e. invalid instruction */
+
return result;
}
commit e31df54754e2305b7cc7072053bf5a4e0b477fd6
Author: Vinson Lee <vlee@vmware.com>
Date: Thu Dec 10 18:32:33 2009 -0800
mesa: Assign _mesa_lookup_parameter_index return value to GLint.
diff --git a/src/mesa/shader/prog_parameter.c b/src/mesa/shader/prog_parameter.c
index 2f029b0..f22492e 100644
--- a/src/mesa/shader/prog_parameter.c
+++ b/src/mesa/shader/prog_parameter.c
@@ -500,7 +500,7 @@ GLfloat *
_mesa_lookup_parameter_value(const struct gl_program_parameter_list *paramList,
GLsizei nameLen, const char *name)
{
- GLuint i = _mesa_lookup_parameter_index(paramList, nameLen, name);
+ GLint i = _mesa_lookup_parameter_index(paramList, nameLen, name);
if (i < 0)
return NULL;
else
commit cb1dcb55f9884431a5e2b90e9208b42558a95611
Author: Vinson Lee <vlee@vmware.com>
Date: Thu Dec 10 18:21:59 2009 -0800
i915: Add missing break statement in i915_debug_packet.
diff --git a/src/mesa/drivers/dri/i915/i915_debug.c b/src/mesa/drivers/dri/i915/i915_debug.c
index f7bb7ea..fecfac3 100644
--- a/src/mesa/drivers/dri/i915/i915_debug.c
+++ b/src/mesa/drivers/dri/i915/i915_debug.c
@@ -806,6 +806,7 @@ static GLboolean i915_debug_packet( struct debug_stream *stream )
default:
return debug(stream, "", 0);
}
+ break;
default:
assert(0);
return 0;
commit d38ffed5236adf3ee83c0bc5bdee0233ce566e01
Author: Vinson Lee <vlee@vmware.com>
Date: Thu Dec 10 17:50:35 2009 -0800
glsl: Increase size of array in_slang_lookup_constant from 4 to 16.
For some cases, _mesa_GetIntegerv reads up to params[15].
diff --git a/src/mesa/shader/slang/slang_simplify.c b/src/mesa/shader/slang/slang_simplify.c
index 539c6ff..13b9ca3 100644
--- a/src/mesa/shader/slang/slang_simplify.c
+++ b/src/mesa/shader/slang/slang_simplify.c
@@ -84,7 +84,7 @@ _slang_lookup_constant(const char *name)
for (i = 0; info[i].Name; i++) {
if (strcmp(info[i].Name, name) == 0) {
/* found */
- GLint values[4];
+ GLint values[16];
values[0] = -1;
_mesa_GetIntegerv(info[i].Token, values);
ASSERT(values[0] >= 0); /* sanity check that glGetFloatv worked */
commit 1cf60c981091d7a46cb404fd607f85553c427761
Author: Vinson Lee <vlee@vmware.com>
Date: Thu Dec 10 15:41:13 2009 -0800
progs/samples: Byte swap individual members of struct _rawImageRec.
diff --git a/progs/samples/rgbtoppm.c b/progs/samples/rgbtoppm.c
index 56ca5b0..dcb7422 100644
--- a/progs/samples/rgbtoppm.c
+++ b/progs/samples/rgbtoppm.c
@@ -93,7 +93,12 @@ static ImageRec *ImageOpen(char *fileName)
fread(image, 1, 12, image->file);
if (swapFlag) {
- ConvertShort(&image->imagic, 6);
+ ConvertShort(&image->imagic, 1);
+ ConvertShort(&image->type, 1);
+ ConvertShort(&image->dim, 1);
+ ConvertShort(&image->xsize, 1);
+ ConvertShort(&image->ysize, 1);
+ ConvertShort(&image->zsize, 1);
}
image->tmp = (unsigned char *)malloc(image->xsize*256);
commit bc0509bba8cc962a4ee2dafd684e153b3060262d
Author: Vinson Lee <vlee@vmware.com>
Date: Thu Dec 10 13:24:15 2009 -0800
progs/util: Byte swap individual members of struct _rawImageRec.
diff --git a/progs/util/readtex.c b/progs/util/readtex.c
index 81cb626..d1c50a4 100644
--- a/progs/util/readtex.c
+++ b/progs/util/readtex.c
@@ -117,7 +117,12 @@ static rawImageRec *RawImageOpen(const char *fileName)
fread(raw, 1, 12, raw->file);
if (swapFlag) {
- ConvertShort(&raw->imagic, 6);
+ ConvertShort(&raw->imagic, 1);
+ ConvertShort(&raw->type, 1);
+ ConvertShort(&raw->dim, 1);
+ ConvertShort(&raw->sizeX, 1);
+ ConvertShort(&raw->sizeY, 1);
+ ConvertShort(&raw->sizeZ, 1);
}
raw->tmp = (unsigned char *)malloc(raw->sizeX*256);
commit 51f52edaf186a927a2c8c29ba9dba56d18928a7e
Author: Vinson Lee <vlee@vmware.com>
Date: Thu Dec 10 12:37:10 2009 -0800
glsl: Fix array out-of-bounds access by _slang_lookup_constant.
diff --git a/src/mesa/shader/slang/slang_simplify.c b/src/mesa/shader/slang/slang_simplify.c
index b8a21f6..539c6ff 100644
--- a/src/mesa/shader/slang/slang_simplify.c
+++ b/src/mesa/shader/slang/slang_simplify.c
@@ -84,10 +84,11 @@ _slang_lookup_constant(const char *name)
for (i = 0; info[i].Name; i++) {
if (strcmp(info[i].Name, name) == 0) {
/* found */
- GLint value = -1;
- _mesa_GetIntegerv(info[i].Token, &value);
- ASSERT(value >= 0); /* sanity check that glGetFloatv worked */
- return value;
+ GLint values[4];
+ values[0] = -1;
+ _mesa_GetIntegerv(info[i].Token, values);
+ ASSERT(values[0] >= 0); /* sanity check that glGetFloatv worked */
+ return values[0];
}
}
return -1;
commit dcb4a37fc89924192d923ed6906d2922371b8cb1
Author: Vinson Lee <vlee@vmware.com>
Date: Thu Dec 10 12:11:09 2009 -0800
mesa: Fix array out-of-bounds access by _mesa_TexParameteriv.
diff --git a/src/mesa/main/texparam.c b/src/mesa/main/texparam.c
index 1cec4b8..0f83d22 100644
--- a/src/mesa/main/texparam.c
+++ b/src/mesa/main/texparam.c
@@ -700,8 +700,10 @@ _mesa_TexParameteriv(GLenum target, GLenum pname, const GLint *params)
case GL_TEXTURE_COMPARE_FAIL_VALUE_ARB:
{
/* convert int param to float */
- GLfloat fparam = (GLfloat) params[0];
- need_update = set_tex_parameterf(ctx, texObj, pname, &fparam);
+ GLfloat fparams[4];
+ fparams[0] = (GLfloat) params[0];
+ fparams[1] = fparams[2] = fparams[3] = 0.0F;
+ need_update = set_tex_parameterf(ctx, texObj, pname, fparams);
}
break;
default:
commit b82757880545f8bce471ba8f13c16998888cd4b5
Author: Vinson Lee <vlee@vmware.com>
Date: Wed Dec 9 17:59:23 2009 -0800
mesa: Fix array out-of-bounds access by _mesa_TexGend.
_mesa_TexGend calls _mesa_TexGenfv, which uses the params argument
as an array.
diff --git a/src/mesa/main/texgen.c b/src/mesa/main/texgen.c
index d3ea7b9..f9d3821 100644
--- a/src/mesa/main/texgen.c
+++ b/src/mesa/main/texgen.c
@@ -181,8 +181,10 @@ _mesa_TexGeniv(GLenum coord, GLenum pname, const GLint *params )
void GLAPIENTRY
_mesa_TexGend(GLenum coord, GLenum pname, GLdouble param )
{
- GLfloat p = (GLfloat) param;
- _mesa_TexGenfv( coord, pname, &p );
+ GLfloat p[4];
+ p[0] = (GLfloat) param;
+ p[1] = p[2] = p[3] = 0.0F;
+ _mesa_TexGenfv( coord, pname, p );
}
commit 444d1f39108ab4419843f19f76c968cef3398bab
Author: Vinson Lee <vlee@vmware.com>
Date: Wed Dec 9 17:34:50 2009 -0800
mesa: Fix array out-of-bounds access by _mesa_Lighti.
_mesa_Lighti calls _mesa_Lightiv, which uses the params argument
as an array.
diff --git a/src/mesa/main/light.c b/src/mesa/main/light.c
index d4f3bb9..5150926 100644
--- a/src/mesa/main/light.c
+++ b/src/mesa/main/light.c
@@ -288,7 +288,10 @@ _mesa_Lightfv( GLenum light, GLenum pname, const GLfloat *params )
void GLAPIENTRY
_mesa_Lighti( GLenum light, GLenum pname, GLint param )
{
- _mesa_Lightiv( light, pname, ¶m );
+ GLint iparam[4];
+ iparam[0] = param;
+ iparam[1] = iparam[2] = iparam[3] = 0;
+ _mesa_Lightiv( light, pname, iparam );
}
commit 34528a34c446afea4442f479713e7f926220f128
Author: Vinson Lee <vlee@vmware.com>
Date: Wed Dec 9 17:11:30 2009 -0800
mesa: Fix array out-of-bounds access by _mesa_Lightf.
diff --git a/src/mesa/main/light.c b/src/mesa/main/light.c
index c1d47de..d4f3bb9 100644
--- a/src/mesa/main/light.c
+++ b/src/mesa/main/light.c
@@ -206,7 +206,10 @@ _mesa_light(GLcontext *ctx, GLuint lnum, GLenum pname, const GLfloat *params)
void GLAPIENTRY
_mesa_Lightf( GLenum light, GLenum pname, GLfloat param )
{
- _mesa_Lightfv( light, pname, ¶m );
+ GLfloat fparam[4];
+ fparam[0] = param;
+ fparam[1] = fparam[2] = fparam[3] = 0.0F;
+ _mesa_Lightfv( light, pname, fparam );
}
commit 348883076bd213ec733a1ba2a4768788e4669c97
Author: Vinson Lee <vlee@vmware.com>
Date: Wed Dec 9 13:15:05 2009 -0800
mesa: Fix array out-of-bounds access by _mesa_PointParameteri.
_mesa_PointParameteri calls _mesa_PointParameterfv, which uses the
params argument as an array.
diff --git a/src/mesa/main/points.c b/src/mesa/main/points.c
index 9ec21c9..dcaeccd 100644
--- a/src/mesa/main/points.c
+++ b/src/mesa/main/points.c
@@ -69,8 +69,10 @@ _mesa_PointSize( GLfloat size )
void GLAPIENTRY
_mesa_PointParameteri( GLenum pname, GLint param )
{
- const GLfloat value = (GLfloat) param;
- _mesa_PointParameterfv(pname, &value);
+ GLfloat p[3];
+ p[0] = (GLfloat) param;
+ p[1] = p[2] = 0.0F;
+ _mesa_PointParameterfv(pname, p);
}
commit 6f2d51b81ff907af9727e90153a46e79e246fc66
Author: Vinson Lee <vlee@vmware.com>
Date: Wed Dec 9 13:00:22 2009 -0800
mesa: Fix array out-of-bounds access by _mesa_PointParameterf.
_mesa_PointParameterf calls _mesa_PointParameterfv, which uses the
params argument as an array.
diff --git a/src/mesa/main/points.c b/src/mesa/main/points.c
index b330544..9ec21c9 100644
--- a/src/mesa/main/points.c
+++ b/src/mesa/main/points.c
@@ -90,7 +90,10 @@ _mesa_PointParameteriv( GLenum pname, const GLint *params )
void GLAPIENTRY
_mesa_PointParameterf( GLenum pname, GLfloat param)
{
- _mesa_PointParameterfv(pname, ¶m);
+ GLfloat p[3];
+ p[0] = param;
+ p[1] = p[2] = 0.0F;
+ _mesa_PointParameterfv(pname, p);
}
commit 637970aefdcdd1ee50e3759de384b82e6109a45c
Author: Vinson Lee <vlee@vmware.com>
Date: Wed Dec 9 12:43:28 2009 -0800
mesa: Fix array out-of-bounds access by _mesa_LightModelf.
_mesa_LightModelf calls _mesa_LightModelfv, which uses the
params argument as an array.
diff --git a/src/mesa/main/light.c b/src/mesa/main/light.c
index 5a8f916..c1d47de 100644
--- a/src/mesa/main/light.c
+++ b/src/mesa/main/light.c
@@ -547,7 +547,10 @@ _mesa_LightModeli( GLenum pname, GLint param )
void GLAPIENTRY
_mesa_LightModelf( GLenum pname, GLfloat param )
{
- _mesa_LightModelfv( pname, ¶m );
+ GLfloat fparam[4];
+ fparam[0] = param;
+ fparam[1] = fparam[2] = fparam[3] = 0.0F;
+ _mesa_LightModelfv( pname, fparam );
}
commit a082d965de228d5035e59245df528af62761652a
Author: Vinson Lee <vlee@vmware.com>
Date: Wed Dec 9 11:26:24 2009 -0800
glsl: Remove unused member x from struct slang_operation.
diff --git a/src/mesa/shader/slang/slang_compile_operation.h b/src/mesa/shader/slang/slang_compile_operation.h
index 58f1ede..1f15c19 100644
--- a/src/mesa/shader/slang/slang_compile_operation.h
+++ b/src/mesa/shader/slang/slang_compile_operation.h
@@ -127,7 +127,6 @@ typedef struct slang_operation_
* indicate such. num_children indicates number of elements.
*/
GLboolean array_constructor;
- double x;
} slang_operation;
commit 3de8fff45d04fd7e702cd656ba97cafd348c3981
Author: Brian Paul <brianp@vmware.com>
Date: Wed Dec 9 08:30:01 2009 -0700
mesa: fix baseLevel >= MAX_TEXTURE_LEVELS test
This fixes invalid array indexing when baseLevel == MAX_TEXTURE_LEVELS.
See bug 25528.
diff --git a/src/mesa/main/texobj.c b/src/mesa/main/texobj.c
index da55ac8..85f5f78 100644
--- a/src/mesa/main/texobj.c
+++ b/src/mesa/main/texobj.c
@@ -418,7 +418,7 @@ _mesa_test_texobj_completeness( const GLcontext *ctx,
/* Detect cases where the application set the base level to an invalid
* value.
*/
- if ((baseLevel < 0) || (baseLevel > MAX_TEXTURE_LEVELS)) {
+ if ((baseLevel < 0) || (baseLevel >= MAX_TEXTURE_LEVELS)) {
char s[100];
_mesa_sprintf(s, "base level = %d is invalid", baseLevel);
incomplete(t, s);
commit 33a120e4761a661736ea64a3efc2e3831ac5600a
Author: Andre Maasikas <amaasikas@gmail.com>
Date: Wed Dec 9 10:51:52 2009 +0200
r600: fix state size prediction after dc0777d3
diff --git a/src/mesa/drivers/dri/r600/r700_chip.c b/src/mesa/drivers/dri/r600/r700_chip.c
index d8661b4..dacc2cc 100644
--- a/src/mesa/drivers/dri/r600/r700_chip.c
+++ b/src/mesa/drivers/dri/r600/r700_chip.c
@@ -1134,7 +1134,11 @@ static int check_blnd(GLcontext *ctx, struct radeon_state_atom *atom)
count += 3;
if (context->radeon.radeonScreen->chip_family > CHIP_FAMILY_R600) {
- for (ui = 0; ui < R700_MAX_RENDER_TARGETS; ui++) {
+ /* targets are enabled in r700SetRenderTarget but state
+ size is calculated before that. Until MRT's are done
+ hardcode target0 as enabled. */
+ count += 3;
+ for (ui = 1; ui < R700_MAX_RENDER_TARGETS; ui++) {
if (r700->render_target[ui].enabled)
count += 3;
}
commit af16c822a5af8ce0aa7582e8ea44315b62b7356b
Author: Vinson Lee <vlee@vmware.com>
Date: Tue Dec 8 18:26:05 2009 -0800
Reply to: