rpms/mesa/F-12 mesa-7.7.1-fixes.patch,NONE,1.1 mesa.spec,1.261,1.262
Dave Airlie
airlied at fedoraproject.org
Mon Jan 11 03:44:36 UTC 2010
Author: airlied
Update of /cvs/pkgs/rpms/mesa/F-12
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv8356
Modified Files:
mesa.spec
Added Files:
mesa-7.7.1-fixes.patch
Log Message:
* Mon Jan 11 2010 Dave Airlie <airlied at redhat.com> 7.7-2
- add fixes from mesa 7.7 branch (fix r100 colors hopefully)
mesa-7.7.1-fixes.patch:
Makefile | 2
configs/darwin | 2
configs/default | 2
docs/news.html | 6
docs/relnotes-7.6.1.html | 12
docs/relnotes-7.7.1.html | 50 +
docs/relnotes-7.7.html | 12
docs/relnotes.html | 1
include/GL/gl_mangle.h | 43 +
progs/demos/engine.c | 18
progs/demos/fire.c | 10
progs/demos/geartrain.c | 21
progs/demos/isosurf.c | 8
progs/demos/terrain.c | 95 --
progs/glsl/convolutions.c | 2
progs/glsl/shtest.c | 9
progs/glsl/vert-tex.c | 9
progs/samples/olympic.c | 20
progs/samples/overlay.c | 18
progs/samples/rgbtoppm.c | 31
progs/samples/sphere.c | 30
progs/samples/star.c | 20
progs/samples/stretch.c | 20
progs/samples/wave.c | 2
progs/util/readtex.c | 20
progs/xdemos/glsync.c | 2
progs/xdemos/glxheads.c | 32
progs/xdemos/manywin.c | 34
progs/xdemos/sharedtex_mt.c | 4
src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c | 281 ++++---
src/gallium/auxiliary/rbug/rbug_context.h | 2
src/gallium/auxiliary/rbug/rbug_proto.h | 2
src/gallium/auxiliary/rtasm/rtasm_execmem.c | 32
src/gallium/auxiliary/tgsi/tgsi_exec.c | 8
src/gallium/auxiliary/tgsi/tgsi_sse2.c | 50 -
src/gallium/auxiliary/tgsi/tgsi_ureg.c | 8
src/gallium/auxiliary/util/Makefile | 1
src/gallium/auxiliary/util/u_bitmask.c | 32
src/gallium/auxiliary/util/u_clear.h | 2
src/gallium/auxiliary/util/u_debug.c | 6
src/gallium/auxiliary/util/u_debug.h | 2
src/gallium/auxiliary/util/u_debug_memory.c | 8
src/gallium/auxiliary/util/u_format.h | 2
src/gallium/auxiliary/util/u_network.c | 8
src/gallium/auxiliary/util/u_network.h | 2
src/gallium/auxiliary/util/u_stream_stdc.c | 2
src/gallium/auxiliary/vl/vl_mpeg12_mc_renderer.c | 11
src/gallium/drivers/i915/i915_buffer.c | 1
src/gallium/drivers/i915/i915_state.c | 4
src/gallium/drivers/llvmpipe/lp_bld_blend_aos.c | 2
src/gallium/drivers/llvmpipe/lp_bld_depth.c | 2
src/gallium/drivers/llvmpipe/lp_bld_flow.c | 2
src/gallium/drivers/llvmpipe/lp_bld_format_aos.c | 2
src/gallium/drivers/llvmpipe/lp_bld_tgsi_soa.c | 9
src/gallium/drivers/llvmpipe/lp_prim_vbuf.c | 1
src/gallium/drivers/llvmpipe/lp_state_fs.c | 1
src/gallium/drivers/llvmpipe/lp_test_conv.c | 2
src/gallium/drivers/llvmpipe/lp_tex_cache.h | 2
src/gallium/drivers/llvmpipe/lp_tex_sample_c.c | 2
src/gallium/drivers/llvmpipe/lp_tile_soa.h | 2
src/gallium/drivers/llvmpipe/lp_winsys.h | 2
src/gallium/drivers/nv50/nv50_query.c | 2
src/gallium/drivers/r300/r300_cs.h | 2
src/gallium/drivers/r300/r300_emit.c | 4
src/gallium/drivers/r300/r300_flush.c | 1
src/gallium/drivers/r300/r300_reg.h | 16
src/gallium/drivers/r300/r300_state_derived.c | 2
src/gallium/drivers/softpipe/sp_prim_vbuf.c | 1
src/gallium/drivers/softpipe/sp_quad_blend.c | 2
src/gallium/drivers/svga/svga_context.c | 44 -
src/gallium/drivers/svga/svga_context.h | 9
src/gallium/drivers/svga/svga_draw.c | 3
src/gallium/drivers/svga/svga_pipe_fs.c | 10
src/gallium/drivers/svga/svga_pipe_vs.c | 10
src/gallium/drivers/svga/svga_state_fs.c | 39
src/gallium/drivers/svga/svga_state_vs.c | 20
src/gallium/drivers/svga/svga_tgsi.c | 2
src/gallium/drivers/trace/tr_context.c | 2
src/gallium/drivers/trace/tr_dump.c | 4
src/gallium/drivers/trace/tr_rbug.c | 6
src/gallium/drivers/trace/tr_state.h | 2
src/gallium/state_trackers/egl/egl_surface.c | 4
src/gallium/state_trackers/egl/egl_tracker.c | 3
src/gallium/state_trackers/glx/xlib/glx_api.c | 1
src/gallium/state_trackers/vega/api_path.c | 3
src/gallium/state_trackers/vega/arc.c | 2
src/gallium/state_trackers/vega/bezier.c | 1
src/gallium/state_trackers/vega/stroker.c | 4
src/gallium/state_trackers/vega/vg_tracker.c | 1
src/gallium/state_trackers/xorg/xorg_crtc.c | 10
src/gallium/state_trackers/xorg/xorg_driver.c | 29
src/gallium/state_trackers/xorg/xorg_exa.c | 4
src/gallium/state_trackers/xorg/xorg_exa_tgsi.c | 33
src/gallium/state_trackers/xorg/xorg_renderer.c | 1
src/gallium/winsys/gdi/SConscript | 2
src/gallium/winsys/xlib/xlib_brw_context.c | 209 +++++
src/glu/sgi/libnurbs/interface/bezierPatchMesh.h | 1
src/glu/sgi/libnurbs/interface/glsurfeval.h | 2
src/glu/sgi/libnurbs/internals/arcsorter.h | 1
src/glu/sgi/libnurbs/internals/displaylist.h | 1
src/glu/sgi/libnurbs/internals/gridvertex.h | 2
src/glu/sgi/libnurbs/internals/knotvector.cc | 3
src/glu/sgi/libnurbs/internals/mesher.cc | 3
src/glu/sgi/libnurbs/internals/reader.cc | 2
src/glu/sgi/libnurbs/internals/reader.h | 14
src/glu/sgi/libnurbs/internals/renderhints.cc | 4
src/glu/sgi/libnurbs/internals/simplemath.h | 2
src/glu/sgi/libnurbs/internals/slicer.cc | 4
src/glu/sgi/libnurbs/internals/subdivider.cc | 6
src/glu/sgi/libnurbs/internals/varray.cc | 8
src/glu/sgi/libnurbs/nurbtess/directedLine.cc | 32
src/glu/sgi/libnurbs/nurbtess/monoChain.cc | 1
src/glu/sgi/libnurbs/nurbtess/partitionY.cc | 4
src/glu/sgi/libnurbs/nurbtess/sampleCompBot.cc | 4
src/glu/sgi/libnurbs/nurbtess/sampleCompTop.cc | 4
src/glu/sgi/libnurbs/nurbtess/sampledLine.cc | 3
src/glx/x11/dri2.c | 4
src/glx/x11/dri_glx.c | 13
src/glx/x11/glxcmds.c | 4
src/glx/x11/glxcurrent.c | 7
src/glx/x11/glxext.c | 5
src/glx/x11/xf86dri.h | 4
src/mesa/Makefile | 2
src/mesa/drivers/common/meta.c | 47 -
src/mesa/drivers/dri/ffb/ffb_tris.c | 2
src/mesa/drivers/dri/i810/i810tex.h | 1
src/mesa/drivers/dri/i915/i915_program.c | 2
src/mesa/drivers/dri/i915/i915_texstate.c | 7
src/mesa/drivers/dri/i915/intel_render.c | 4
src/mesa/drivers/dri/i965/brw_disasm.c | 1
src/mesa/drivers/dri/i965/brw_draw_upload.c | 6
src/mesa/drivers/dri/i965/brw_eu_emit.c | 4
src/mesa/drivers/dri/i965/brw_state.h | 2
src/mesa/drivers/dri/i965/brw_wm_emit.c | 4
src/mesa/drivers/dri/i965/brw_wm_glsl.c | 2
src/mesa/drivers/dri/i965/brw_wm_surface_state.c | 50 -
src/mesa/drivers/dri/intel/intel_context.h | 8
src/mesa/drivers/dri/intel/intel_pixel_bitmap.c | 3
src/mesa/drivers/dri/intel/intel_tex_copy.c | 7
src/mesa/drivers/dri/r300/compiler/memory_pool.c | 4
src/mesa/drivers/dri/r300/compiler/radeon_code.c | 3
src/mesa/drivers/dri/r300/compiler/radeon_compiler.c | 11
src/mesa/drivers/dri/r300/compiler/radeon_program.c | 6
src/mesa/drivers/dri/r300/compiler/radeon_program_alu.c | 30
src/mesa/drivers/dri/r600/r600_context.h | 1
src/mesa/drivers/dri/r600/r600_texstate.c | 46 -
src/mesa/drivers/dri/r600/r700_assembler.c | 20
src/mesa/drivers/dri/r600/r700_assembler.h | 1
src/mesa/drivers/dri/r600/r700_chip.c | 5
src/mesa/drivers/dri/r600/r700_vertprog.c | 8
src/mesa/drivers/dri/r600/r700_vertprog.h | 1
src/mesa/drivers/dri/radeon/radeon_cs_legacy.c | 2
src/mesa/drivers/dri/radeon/radeon_tcl.c | 1
src/mesa/drivers/dri/sis/sis_context.c | 2
src/mesa/drivers/dri/tdfx/tdfx_dd.c | 2
src/mesa/drivers/dri/tdfx/tdfx_tex.c | 2
src/mesa/drivers/dri/tdfx/tdfx_texstate.c | 2
src/mesa/main/attrib.c | 47 -
src/mesa/main/dispatch.c | 4
src/mesa/main/enums.c | 465 +++++------
src/mesa/main/formats.c | 1
src/mesa/main/image.c | 2
src/mesa/main/texgetimage.c | 2
src/mesa/main/texparam.c | 1
src/mesa/main/version.h | 8
src/mesa/shader/nvfragparse.c | 2
src/mesa/shader/prog_optimize.c | 2
src/mesa/shader/prog_parameter.c | 8
src/mesa/shader/prog_parameter_layout.c | 16
src/mesa/shader/prog_print.c | 8
src/mesa/shader/program_parse.tab.c | 627 ++++++++--------
src/mesa/shader/program_parse.tab.h | 2
src/mesa/shader/program_parse.y | 95 +-
src/mesa/shader/program_parser.h | 6
src/mesa/shader/slang/slang_codegen.c | 15
src/mesa/shader/slang/slang_codegen.h | 1
src/mesa/shader/slang/slang_compile.c | 3
src/mesa/shader/slang/slang_compile_operation.c | 1
src/mesa/state_tracker/st_cb_bufferobjects.c | 65 +
src/mesa/state_tracker/st_cb_texture.c | 2
src/mesa/state_tracker/st_format.c | 5
src/mesa/state_tracker/st_mesa_to_tgsi.c | 21
src/mesa/swrast/s_span.c | 10
src/mesa/tnl/t_vb_program.c | 7
src/mesa/x86/gen_matypes.c | 14
185 files changed, 2124 insertions(+), 1269 deletions(-)
--- NEW FILE mesa-7.7.1-fixes.patch ---
diff --git a/Makefile b/Makefile
index e927cb9..b10d1fe 100644
--- a/Makefile
+++ b/Makefile
@@ -182,7 +182,7 @@ ultrix-gcc:
# Rules for making release tarballs
-VERSION=7.7
+VERSION=7.7.1
DIRECTORY = Mesa-$(VERSION)
LIB_NAME = MesaLib-$(VERSION)
DEMO_NAME = MesaDemos-$(VERSION)
diff --git a/configs/darwin b/configs/darwin
index 824f71c..336b54e 100644
--- a/configs/darwin
+++ b/configs/darwin
@@ -49,7 +49,7 @@ GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -L$(INSTALL_DIR)/$(LIB_DIR) -L$(X
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L$(INSTALL_DIR)/$(LIB_DIR) -L$(X11_DIR)/$(LIB_DIR) -lX11 -lXmu -lXt -lXi -lm
# omit glw lib for now:
-SRC_DIRS = glx/x11 mesa glu glut/glx glew
+SRC_DIRS = glx/x11 mesa gallium glu glut/glx glew
GLU_DIRS = sgi
DRIVER_DIRS = osmesa
#DRIVER_DIRS = dri
diff --git a/configs/default b/configs/default
index 9af816c..c9616bb 100644
--- a/configs/default
+++ b/configs/default
@@ -10,7 +10,7 @@ CONFIG_NAME = default
# Version info
MESA_MAJOR=7
MESA_MINOR=7
-MESA_TINY=0
+MESA_TINY=1
MESA_VERSION = $(MESA_MAJOR).$(MESA_MINOR).$(MESA_TINY)
# external projects. This should be useless now that we use libdrm.
diff --git a/docs/news.html b/docs/news.html
index 2abec2e..0a0be71 100644
--- a/docs/news.html
+++ b/docs/news.html
@@ -10,11 +10,15 @@
<H1>News</H1>
-<h2>November XX, 2009</h2>
+<h2>December 21, 2009</h2>
<p>
<a href="relnotes-7.6.1.html">Mesa 7.6.1</a> is released. This is a bug-fix
release fixing issues found in the 7.6 release.
</p>
+<p>
+Also, <a href="relnotes-7.7.html">Mesa 7.7</a> is released. This is a new
+development release.
+</p>
<h2>September 28, 2009</h2>
diff --git a/docs/relnotes-7.6.1.html b/docs/relnotes-7.6.1.html
index a41bcee..1d0ecd2 100644
--- a/docs/relnotes-7.6.1.html
+++ b/docs/relnotes-7.6.1.html
@@ -8,7 +8,7 @@
<body bgcolor="#eeeeee">
-<H1>Mesa 7.6.1 Release Notes, (date tbd)</H1>
+<H1>Mesa 7.6.1 Release Notes, 21 December 2009</H1>
<p>
Mesa 7.6.1 is a bug-fix release fixing issues since version 7.6.
@@ -26,7 +26,15 @@ for DRI hardware acceleration.
<h2>MD5 checksums</h2>
<pre>
-tbd
+e80fabad2e3eb7990adae773d6aeacba MesaLib-7.6.1.tar.gz
+7db4617e9e10ad3aca1b64339fd71b7d MesaLib-7.6.1.tar.bz2
+dd3275dbf9833480d2e92d0c69b22abd MesaLib-7.6.1.zip
+f7fdcfe3c0f363e571c60f02f74368fb MesaDemos-7.6.1.tar.gz
+a4226f06732a02556fcf6be290b86dff MesaDemos-7.6.1.tar.bz2
+849425f356bd940726cebedfa79de176 MesaDemos-7.6.1.zip
+d40cc7c5e337a85b674e27a8e494f52f MesaGLUT-7.6.1.tar.gz
+ca9aecb91f05b1da9fd7d5eeb19d47d7 MesaGLUT-7.6.1.tar.bz2
+23fad8398004c977a1d8953079b72ca6 MesaGLUT-7.6.1.zip
</pre>
diff --git a/docs/relnotes-7.7.1.html b/docs/relnotes-7.7.1.html
new file mode 100644
index 0000000..b20c8a7
--- /dev/null
+++ b/docs/relnotes-7.7.1.html
@@ -0,0 +1,50 @@
+<HTML>
+
+<TITLE>Mesa Release Notes</TITLE>
+
+<head><link rel="stylesheet" type="text/css" href="mesa.css"></head>
+
+<BODY>
+
+<body bgcolor="#eeeeee">
+
+<H1>Mesa 7.7.1 Release Notes / date tbd</H1>
+
+<p>
+Mesa 7.7.1 is a bug-fix release.
+</p>
+<p>
+Mesa 7.7.1 implements the OpenGL 2.1 API, but the version reported by
+glGetString(GL_VERSION) depends on the particular driver being used.
+Some drivers don't support all the features required in OpenGL 2.1.
+</p>
+<p>
+See the <a href="install.html">Compiling/Installing page</a> for prerequisites
+for DRI hardware acceleration.
+</p>
+
+
+<h2>MD5 checksums</h2>
+<pre>
+tbd
+</pre>
+
+
+<h2>New features</h2>
+<ul>
+<li>tbd
+</ul>
+
+
+<h2>Bug fixes</h2>
+<ul>
+<li>Assorted fixes to VMware SVGA gallium driver.
+<li>Fixed broken blending to multiple color buffers in swrast driver.
+<li>Allocate constants more tightly in GL_ARB_vertex/fragment parser.
+<li>Fixed mipmap generation bug caused by invalid viewport state.
+<li>Gallium SSE codegen for XPD didn't always work.
+</ul>
+
+
+</body>
+</html>
diff --git a/docs/relnotes-7.7.html b/docs/relnotes-7.7.html
index 8c8f763..c1ed654 100644
--- a/docs/relnotes-7.7.html
+++ b/docs/relnotes-7.7.html
@@ -8,7 +8,7 @@
<body bgcolor="#eeeeee">
-<H1>Mesa 7.7 Release Notes / date TBD</H1>
+<H1>Mesa 7.7 Release Notes / 21 December 2009</H1>
<p>
Mesa 7.7 is a new development release.
@@ -28,7 +28,15 @@ for DRI hardware acceleration.
<h2>MD5 checksums</h2>
<pre>
-tbd
+395c9516edf1ad54b0934d8db15557bf MesaLib-7.7.tar.gz
+e3fa64a1508bc23dd9de9dd2cea7cfb1 MesaLib-7.7.tar.bz2
+e54903eb5e49c3969821fa16b32da245 MesaLib-7.7.zip
+53b5b6f78e55de170d43c98cb6aaab7e MesaDemos-7.7.tar.gz
+6fd616b27b9826d0faa23e08e05d9435 MesaDemos-7.7.tar.bz2
+240fe06159ad73d5e22c27033b66c80a MesaDemos-7.7.zip
+9fe11a904b2a9d8cd06cc52bc330b716 MesaGLUT-7.7.tar.gz
+e8dceed05a59a2d3c2619d7d734587e3 MesaGLUT-7.7.tar.bz2
+96af041d435349ee23ead4667ec36363 MesaGLUT-7.7.zip
</pre>
diff --git a/docs/relnotes.html b/docs/relnotes.html
index b301ee0..b06548a 100644
--- a/docs/relnotes.html
+++ b/docs/relnotes.html
@@ -13,6 +13,7 @@ The release notes summarize what's new or changed in each Mesa release.
</p>
<UL>
+<LI><A HREF="relnotes-7.7.1.html">7.7.1 release notes</A>
<LI><A HREF="relnotes-7.7.html">7.7 release notes</A>
<LI><A HREF="relnotes-7.6.1.html">7.6.1 release notes</A>
<LI><A HREF="relnotes-7.6.html">7.6 release notes</A>
diff --git a/include/GL/gl_mangle.h b/include/GL/gl_mangle.h
index 59f6149..b292840 100644
--- a/include/GL/gl_mangle.h
+++ b/include/GL/gl_mangle.h
@@ -30,6 +30,7 @@
/*REGENERATE_TO_END-----------ALL LINES BELOW HERE GET REPLACED ON REGENERATION */
#define glAccum MANGLE(Accum)
+#define glActiveProgramEXT MANGLE(ActiveProgramEXT)
#define glActiveStencilFaceEXT MANGLE(ActiveStencilFaceEXT)
#define glActiveTextureARB MANGLE(ActiveTextureARB)
[...9358 lines suppressed...]
+ if (!length)
+ return;
+
pipe_buffer_flush_mapped_range(pipe->screen, st_obj->buffer,
obj->Offset + offset, length);
}
@@ -292,7 +332,9 @@ st_bufferobj_unmap(GLcontext *ctx, GLenum target, struct gl_buffer_object *obj)
struct pipe_context *pipe = st_context(ctx)->pipe;
struct st_buffer_object *st_obj = st_buffer_object(obj);
- pipe_buffer_unmap(pipe->screen, st_obj->buffer);
+ if(obj->Length)
+ pipe_buffer_unmap(pipe->screen, st_obj->buffer);
+
obj->Pointer = NULL;
obj->Offset = 0;
obj->Length = 0;
@@ -315,6 +357,9 @@ st_copy_buffer_subdata(GLcontext *ctx,
struct st_buffer_object *dstObj = st_buffer_object(dst);
ubyte *srcPtr, *dstPtr;
+ if(!size)
+ return;
+
/* buffer should not already be mapped */
assert(!src->Pointer);
assert(!dst->Pointer);
diff --git a/src/mesa/state_tracker/st_cb_texture.c b/src/mesa/state_tracker/st_cb_texture.c
index d4630a5..cb9106c 100644
--- a/src/mesa/state_tracker/st_cb_texture.c
+++ b/src/mesa/state_tracker/st_cb_texture.c
@@ -1090,7 +1090,7 @@ st_TexSubimage(GLcontext *ctx, GLint dims, GLenum target, GLint level,
done:
_mesa_unmap_teximage_pbo(ctx, packing);
- if (stImage->pt) {
+ if (stImage->pt && texImage->Data) {
st_texture_image_unmap(ctx->st, stImage);
texImage->Data = NULL;
}
diff --git a/src/mesa/state_tracker/st_format.c b/src/mesa/state_tracker/st_format.c
index 02f8005..2785728 100644
--- a/src/mesa/state_tracker/st_format.c
+++ b/src/mesa/state_tracker/st_format.c
@@ -99,7 +99,8 @@ st_get_format_info(enum pipe_format format, struct pipe_format_info *pinfo)
if (format == PIPE_FORMAT_A1R5G5B5_UNORM || format == PIPE_FORMAT_R5G6B5_UNORM) {
pinfo->datatype = GL_UNSIGNED_SHORT;
}
- else if (format == PIPE_FORMAT_S8Z24_UNORM) {
+ else if (format == PIPE_FORMAT_S8Z24_UNORM ||
+ format == PIPE_FORMAT_Z24S8_UNORM) {
pinfo->datatype = GL_UNSIGNED_INT_24_8;
}
else {
@@ -291,6 +292,8 @@ st_pipe_format_to_mesa_format(enum pipe_format pipeFormat)
return MESA_FORMAT_ARGB8888;
case PIPE_FORMAT_X8R8G8B8_UNORM:
return MESA_FORMAT_XRGB8888;
+ case PIPE_FORMAT_B8G8R8A8_UNORM:
+ return MESA_FORMAT_ARGB8888_REV;
case PIPE_FORMAT_A1R5G5B5_UNORM:
return MESA_FORMAT_ARGB1555;
case PIPE_FORMAT_A4R4G4B4_UNORM:
diff --git a/src/mesa/state_tracker/st_mesa_to_tgsi.c b/src/mesa/state_tracker/st_mesa_to_tgsi.c
index bd94c9d..0b7786c 100644
--- a/src/mesa/state_tracker/st_mesa_to_tgsi.c
+++ b/src/mesa/state_tracker/st_mesa_to_tgsi.c
@@ -160,13 +160,14 @@ dst_register( struct st_translate *t,
static struct ureg_src
src_register( struct st_translate *t,
gl_register_file file,
- GLuint index )
+ GLint index )
{
switch( file ) {
case PROGRAM_UNDEFINED:
return ureg_src_undef();
case PROGRAM_TEMPORARY:
+ ASSERT(index >= 0);
if (ureg_dst_is_undef(t->temps[index]))
t->temps[index] = ureg_DECL_temporary( t->ureg );
return ureg_src(t->temps[index]);
@@ -174,9 +175,15 @@ src_register( struct st_translate *t,
case PROGRAM_STATE_VAR:
case PROGRAM_NAMED_PARAM:
case PROGRAM_ENV_PARAM:
+ case PROGRAM_LOCAL_PARAM:
case PROGRAM_UNIFORM:
- case PROGRAM_CONSTANT: /* ie, immediate */
+ ASSERT(index >= 0);
return t->constants[index];
+ case PROGRAM_CONSTANT: /* ie, immediate */
+ if (index < 0)
+ return ureg_DECL_constant( t->ureg, 0 );
+ else
+ return t->constants[index];
case PROGRAM_INPUT:
return t->inputs[t->inputMapping[index]];
@@ -263,9 +270,14 @@ translate_src( struct st_translate *t,
if (SrcReg->Abs)
src = ureg_abs(src);
- if (SrcReg->RelAddr)
+ if (SrcReg->RelAddr) {
src = ureg_src_indirect( src, ureg_src(t->address[0]));
-
+ /* If SrcReg->Index was negative, it was set to zero in
+ * src_register(). Reassign it now.
+ */
+ src.Index = SrcReg->Index;
+ }
+
return src;
}
@@ -805,6 +817,7 @@ st_translate_mesa_program(
for (i = 0; i < program->Parameters->NumParameters; i++) {
switch (program->Parameters->Parameters[i].Type) {
case PROGRAM_ENV_PARAM:
+ case PROGRAM_LOCAL_PARAM:
case PROGRAM_STATE_VAR:
case PROGRAM_NAMED_PARAM:
case PROGRAM_UNIFORM:
diff --git a/src/mesa/swrast/s_span.c b/src/mesa/swrast/s_span.c
index d36c813..1a51d4f 100644
--- a/src/mesa/swrast/s_span.c
+++ b/src/mesa/swrast/s_span.c
@@ -1766,9 +1766,7 @@ _swrast_get_row(GLcontext *ctx, struct gl_renderbuffer *rb,
/**
- * Get RGBA pixels from the given renderbuffer. Put the pixel colors into
- * the span's specular color arrays. The specular color arrays should no
- * longer be needed by time this function is called.
+ * Get RGBA pixels from the given renderbuffer.
* Used by blending, logicop and masking functions.
* \return pointer to the colors we read.
*/
@@ -1779,10 +1777,8 @@ _swrast_get_dest_rgba(GLcontext *ctx, struct gl_renderbuffer *rb,
const GLuint pixelSize = RGBA_PIXEL_SIZE(span->array->ChanType);
void *rbPixels;
- /*
- * Point rbPixels to a temporary space (use specular color arrays).
- */
- rbPixels = span->array->attribs[FRAG_ATTRIB_COL1];
+ /* Point rbPixels to a temporary space */
+ rbPixels = span->array->attribs[FRAG_ATTRIB_MAX - 1];
/* Get destination values from renderbuffer */
if (span->arrayMask & SPAN_XY) {
diff --git a/src/mesa/tnl/t_vb_program.c b/src/mesa/tnl/t_vb_program.c
index e69f7d5..a9dae7d 100644
--- a/src/mesa/tnl/t_vb_program.c
+++ b/src/mesa/tnl/t_vb_program.c
@@ -390,6 +390,13 @@ run_vp( GLcontext *ctx, struct tnl_pipeline_stage *stage )
#endif
COPY_4V(store->results[attr].data[i], machine.Outputs[attr]);
}
+
+ /* FOGC is a special case. Fragment shader expects (f,0,0,1) */
+ if (program->Base.OutputsWritten & BITFIELD64_BIT(VERT_RESULT_FOGC)) {
+ store->results[VERT_RESULT_FOGC].data[i][1] = 0.0;
+ store->results[VERT_RESULT_FOGC].data[i][2] = 0.0;
+ store->results[VERT_RESULT_FOGC].data[i][3] = 1.0;
+ }
#ifdef NAN_CHECK
ASSERT(machine.Outputs[0][3] != 0.0F);
#endif
diff --git a/src/mesa/x86/gen_matypes.c b/src/mesa/x86/gen_matypes.c
index d56b701..771d9df 100644
--- a/src/mesa/x86/gen_matypes.c
+++ b/src/mesa/x86/gen_matypes.c
@@ -61,21 +61,11 @@ do { \
printf( "\n" ); \
} while (0)
-#if defined(__BEOS__) || defined(__HAIKU__) || defined(_LP64)
#define OFFSET( s, t, m ) \
- printf( "#define %s\t%ld\n", s, offsetof( t, m ) );
-#else
-#define OFFSET( s, t, m ) \
- printf( "#define %s\t%d\n", s, offsetof( t, m ) );
-#endif
+ printf( "#define %s\t%lu\n", s, (unsigned long) offsetof( t, m ) );
-#if defined(__BEOS__) || defined(__HAIKU__) || defined(_LP64)
-#define SIZEOF( s, t ) \
- printf( "#define %s\t%ld\n", s, sizeof(t) );
-#else
#define SIZEOF( s, t ) \
- printf( "#define %s\t%d\n", s, sizeof(t) );
-#endif
+ printf( "#define %s\t%lu\n", s, (unsigned long) sizeof(t) );
#define DEFINE( s, d ) \
printf( "#define %s\t0x%x\n", s, d );
Index: mesa.spec
===================================================================
RCS file: /cvs/pkgs/rpms/mesa/F-12/mesa.spec,v
retrieving revision 1.261
retrieving revision 1.262
diff -u -p -r1.261 -r1.262
--- mesa.spec 6 Jan 2010 04:53:05 -0000 1.261
+++ mesa.spec 11 Jan 2010 03:44:36 -0000 1.262
@@ -21,7 +21,7 @@
Summary: Mesa graphics libraries
Name: mesa
Version: 7.7
-Release: 1%{?dist}
+Release: 2%{?dist}
License: MIT
Group: System Environment/Libraries
URL: http://www.mesa3d.org
@@ -37,6 +37,7 @@ Source3: make-git-snapshot.sh
Source5: http://www.x.org/pub/individual/app/%{xdriinfo}.tar.bz2
+Patch0: mesa-7.7.1-fixes.patch
Patch1: mesa-7.1-osmesa-version.patch
Patch2: mesa-7.1-nukeglthread-debug.patch
Patch3: mesa-no-mach64.patch
@@ -172,8 +173,9 @@ This package provides some demo applicat
%prep
-%setup -q -n Mesa-%{version}%{?snapshot} -b0 -b1 -b2 -b5
+%setup -q -n Mesa-%{version}%{?snapshot} -b1 -b2 -b5
#setup -q -n mesa-%{gitdate} -b2 -b5
+%patch0 -p1 -b .mesa771
%patch1 -p1 -b .osmesa
%patch2 -p1 -b .intel-glthread
%patch3 -p1 -b .no-mach64
@@ -391,6 +393,9 @@ rm -rf $RPM_BUILD_ROOT
%{demodir}
%changelog
+* Mon Jan 11 2010 Dave Airlie <airlied at redhat.com> 7.7-2
+- add fixes from mesa 7.7 branch (fix r100 colors hopefully)
+
* Tue Jan 05 2010 Dave Airlie <airlied at redhat.com> 7.7-1
- rebase to 7.7 release - the best base to move forward at this point in time.
- bump libdrm requires
More information about the scm-commits
mailing list