- update to Mesa 7.0.2 final
- mesa-7.0.2-rx00-vertprog-num-temps-off-by-one.patch - fixes for maniadrive - mesa-7.0.2-t_vp_build-use-less-temps.patch - fixes for maniadrive
This commit is contained in:
parent
f25fd6b543
commit
b7db2fa2de
|
@ -1,3 +1,5 @@
|
|||
MesaLib-7.0.1.tar.bz2
|
||||
MesaDemos-7.0.1.tar.bz2
|
||||
gl-manpages-1.0.1.tar.bz2
|
||||
MesaDemos-7.0.2.tar.bz2
|
||||
MesaLib-7.0.2.tar.bz2
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
diff -up mesa-20070725/configs/linux.build-config mesa-20070725/configs/linux
|
||||
--- mesa-20070725/configs/linux.build-config 2007-07-25 09:36:03.000000000 -0400
|
||||
+++ mesa-20070725/configs/linux 2007-07-25 10:33:03.000000000 -0400
|
||||
diff -up Mesa-7.0.2/configs/linux.da Mesa-7.0.2/configs/linux
|
||||
--- Mesa-7.0.2/configs/linux.da 2007-11-02 05:09:01.000000000 +1000
|
||||
+++ Mesa-7.0.2/configs/linux 2008-01-02 02:24:07.000000000 +1000
|
||||
@@ -8,7 +8,9 @@ CONFIG_NAME = linux
|
||||
CC = gcc
|
||||
CXX = g++
|
||||
|
@ -12,9 +12,9 @@ diff -up mesa-20070725/configs/linux.build-config mesa-20070725/configs/linux
|
|||
PIC_FLAGS = -fPIC
|
||||
|
||||
# Add '-DGLX_USE_TLS' to ARCH_FLAGS to enable TLS support. Add -m32
|
||||
diff -up mesa-20070725/configs/linux-indirect.build-config mesa-20070725/configs/linux-indirect
|
||||
--- mesa-20070725/configs/linux-indirect.build-config 2007-07-25 09:36:03.000000000 -0400
|
||||
+++ mesa-20070725/configs/linux-indirect 2007-07-25 10:34:40.000000000 -0400
|
||||
diff -up Mesa-7.0.2/configs/linux-indirect.da Mesa-7.0.2/configs/linux-indirect
|
||||
--- Mesa-7.0.2/configs/linux-indirect.da 2007-11-02 05:09:01.000000000 +1000
|
||||
+++ Mesa-7.0.2/configs/linux-indirect 2008-01-02 02:24:07.000000000 +1000
|
||||
@@ -15,7 +15,7 @@ CXX = g++
|
||||
#MKDEP_OPTIONS = -MF depend
|
||||
|
||||
|
@ -24,7 +24,7 @@ diff -up mesa-20070725/configs/linux-indirect.build-config mesa-20070725/configs
|
|||
PIC_FLAGS = -fPIC
|
||||
|
||||
# Add '-DGLX_USE_TLS' to ARCH_FLAGS to enable TLS support.
|
||||
@@ -44,7 +44,7 @@ GL_LIB_DEPS = $(EXTRA_LIB_PATH) -lX11
|
||||
@@ -47,7 +47,7 @@ GL_LIB_DEPS = $(EXTRA_LIB_PATH) -lX11
|
||||
|
||||
|
||||
# Directories
|
||||
|
@ -33,9 +33,9 @@ diff -up mesa-20070725/configs/linux-indirect.build-config mesa-20070725/configs
|
|||
DRIVER_DIRS =
|
||||
PROGRAM_DIRS =
|
||||
WINDOW_SYSTEM=dri
|
||||
diff -up mesa-20070725/configs/linux-dri.build-config mesa-20070725/configs/linux-dri
|
||||
--- mesa-20070725/configs/linux-dri.build-config 2007-07-25 09:36:03.000000000 -0400
|
||||
+++ mesa-20070725/configs/linux-dri 2007-07-25 10:34:31.000000000 -0400
|
||||
diff -up Mesa-7.0.2/configs/linux-dri.da Mesa-7.0.2/configs/linux-dri
|
||||
--- Mesa-7.0.2/configs/linux-dri.da 2007-11-02 05:09:01.000000000 +1000
|
||||
+++ Mesa-7.0.2/configs/linux-dri 2008-01-02 02:24:07.000000000 +1000
|
||||
@@ -12,8 +12,9 @@ CXX = g++
|
||||
#MKDEP = /usr/X11R6/bin/makedepend
|
||||
#MKDEP = gcc -M
|
||||
|
@ -56,7 +56,7 @@ diff -up mesa-20070725/configs/linux-dri.build-config mesa-20070725/configs/linu
|
|||
CFLAGS = -Wall -Wmissing-prototypes -std=c99 -ffast-math \
|
||||
$(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES) $(ASM_FLAGS)
|
||||
|
||||
@@ -36,7 +35,7 @@ CXXFLAGS = -Wall $(OPT_FLAGS) $(PIC_FLAG
|
||||
@@ -41,7 +40,7 @@ CXXFLAGS += -fno-strict-aliasing
|
||||
ASM_SOURCES =
|
||||
|
||||
# Library/program dependencies
|
||||
|
@ -65,41 +65,29 @@ diff -up mesa-20070725/configs/linux-dri.build-config mesa-20070725/configs/linu
|
|||
|
||||
LIBDRM_CFLAGS = `pkg-config --cflags libdrm`
|
||||
LIBDRM_LIB = `pkg-config --libs libdrm`
|
||||
@@ -54,10 +53,10 @@ USING_EGL=0
|
||||
@@ -59,10 +58,10 @@ USING_EGL=0
|
||||
|
||||
# Directories
|
||||
ifeq ($(USING_EGL), 1)
|
||||
-SRC_DIRS = egl glx/x11 mesa glu glut/glx glw
|
||||
+SRC_DIRS = egl glx/x11 mesa glu glut/glx
|
||||
PROGRAM_DIRS = egl
|
||||
PROGRAM_DIRS = egl xdemos
|
||||
else
|
||||
-SRC_DIRS = glx/x11 mesa glu glut/glx glw
|
||||
+SRC_DIRS = glx/x11 mesa glu
|
||||
PROGRAM_DIRS =
|
||||
PROGRAM_DIRS = xdemos
|
||||
endif
|
||||
|
||||
@@ -67,4 +66,4 @@ WINDOW_SYSTEM=dri
|
||||
@@ -72,4 +71,4 @@ WINDOW_SYSTEM=dri
|
||||
# gamma are missing because they have not been converted to use the new
|
||||
# interface.
|
||||
DRI_DIRS = i810 i915tex i915 i965 mach64 mga r128 r200 r300 radeon s3v \
|
||||
- savage sis tdfx trident unichrome ffb
|
||||
+ savage tdfx trident unichrome ffb # sis
|
||||
diff -up mesa-20070725/configs/linux-dri-x86.build-config mesa-20070725/configs/linux-dri-x86
|
||||
--- mesa-20070725/configs/linux-dri-x86.build-config 2007-07-25 09:36:03.000000000 -0400
|
||||
+++ mesa-20070725/configs/linux-dri-x86 2007-07-25 10:33:03.000000000 -0400
|
||||
@@ -6,7 +6,7 @@ include $(TOP)/configs/linux-dri
|
||||
CONFIG_NAME = linux-dri-x86
|
||||
|
||||
# Unnecessary on x86, generally.
|
||||
-PIC_FLAGS =
|
||||
+# PIC_FLAGS =
|
||||
|
||||
# Add -m32 to CFLAGS:
|
||||
ARCH_FLAGS = -m32
|
||||
diff -up mesa-20070725/configs/default.build-config mesa-20070725/configs/default
|
||||
--- mesa-20070725/configs/default.build-config 2007-07-25 09:36:03.000000000 -0400
|
||||
+++ mesa-20070725/configs/default 2007-07-25 10:34:20.000000000 -0400
|
||||
@@ -58,8 +58,8 @@ GLW_SOURCES = GLwDrawA.c
|
||||
diff -up Mesa-7.0.2/configs/default.da Mesa-7.0.2/configs/default
|
||||
--- Mesa-7.0.2/configs/default.da 2007-11-02 01:30:52.000000000 +1000
|
||||
+++ Mesa-7.0.2/configs/default 2008-01-02 02:25:54.000000000 +1000
|
||||
@@ -59,8 +59,8 @@ GLW_SOURCES = GLwDrawA.c
|
||||
|
||||
|
||||
# Directories to build
|
||||
|
@ -110,15 +98,16 @@ diff -up mesa-20070725/configs/default.build-config mesa-20070725/configs/defaul
|
|||
GLU_DIRS = sgi
|
||||
DRIVER_DIRS = x11 osmesa
|
||||
# Which subdirs under $(TOP)/progs/ to enter:
|
||||
@@ -72,14 +72,14 @@ GL_LIB_DEPS = $(EXTRA_LIB_PATH) -lX11 -l
|
||||
@@ -73,7 +73,7 @@ GL_LIB_DEPS = $(EXTRA_LIB_PATH) -lX11 -l
|
||||
OSMESA_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB)
|
||||
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lm
|
||||
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) $(EXTRA_LIB_PATH) -lX11 -lXmu -lXt -lXi -lm
|
||||
-GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) $(EXTRA_LIB_PATH) -lXt -lX11
|
||||
+GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lXm $(EXTRA_LIB_PATH) -lXt -lX11
|
||||
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
|
||||
|
||||
|
||||
# Program dependencies - specific GL/glut libraries added in Makefiles
|
||||
APP_LIB_DEPS = -lm
|
||||
@@ -82,7 +82,7 @@ APP_LIB_DEPS = -lm
|
||||
|
||||
# Installation directories (for make install)
|
||||
INSTALL_DIR = /usr/local
|
||||
|
@ -127,9 +116,9 @@ diff -up mesa-20070725/configs/default.build-config mesa-20070725/configs/defaul
|
|||
|
||||
# Where libGL will look for DRI hardware drivers
|
||||
DRI_DRIVER_SEARCH_DIR = $(DRI_DRIVER_INSTALL_DIR)
|
||||
diff -up mesa-20070725/configs/linux-dri-ppc.build-config mesa-20070725/configs/linux-dri-ppc
|
||||
--- mesa-20070725/configs/linux-dri-ppc.build-config 2007-07-25 09:36:03.000000000 -0400
|
||||
+++ mesa-20070725/configs/linux-dri-ppc 2007-07-25 10:33:03.000000000 -0400
|
||||
diff -up Mesa-7.0.2/configs/linux-dri-ppc.da Mesa-7.0.2/configs/linux-dri-ppc
|
||||
--- Mesa-7.0.2/configs/linux-dri-ppc.da 2007-06-22 08:10:53.000000000 +1000
|
||||
+++ Mesa-7.0.2/configs/linux-dri-ppc 2008-01-02 02:24:07.000000000 +1000
|
||||
@@ -5,7 +5,7 @@ include $(TOP)/configs/linux-dri
|
||||
|
||||
CONFIG_NAME = linux-dri-ppc
|
||||
|
@ -139,9 +128,9 @@ diff -up mesa-20070725/configs/linux-dri-ppc.build-config mesa-20070725/configs/
|
|||
PIC_FLAGS = -fPIC
|
||||
|
||||
ASM_FLAGS = -DUSE_PPC_ASM -DUSE_VMX_ASM
|
||||
diff -up mesa-20070725/configs/linux-osmesa16.build-config mesa-20070725/configs/linux-osmesa16
|
||||
--- mesa-20070725/configs/linux-osmesa16.build-config 2007-07-25 09:36:03.000000000 -0400
|
||||
+++ mesa-20070725/configs/linux-osmesa16 2007-07-25 10:33:03.000000000 -0400
|
||||
diff -up Mesa-7.0.2/configs/linux-osmesa16.da Mesa-7.0.2/configs/linux-osmesa16
|
||||
--- Mesa-7.0.2/configs/linux-osmesa16.da 2007-11-02 05:09:01.000000000 +1000
|
||||
+++ Mesa-7.0.2/configs/linux-osmesa16 2008-01-02 02:24:07.000000000 +1000
|
||||
@@ -7,8 +7,10 @@ CONFIG_NAME = linux-osmesa16
|
||||
# Compiler and flags
|
||||
CC = gcc
|
||||
|
@ -153,9 +142,9 @@ diff -up mesa-20070725/configs/linux-osmesa16.build-config mesa-20070725/configs
|
|||
+CFLAGS = $(OPT_FLAGS) $(DEFINES) -DCHAN_BITS=16 -DDEFAULT_SOFTWARE_DEPTH_BITS=31
|
||||
+CXXFLAGS = $(OPT_FLAGS) $(DEFINES)
|
||||
|
||||
|
||||
# Library names
|
||||
@@ -17,12 +19,12 @@ OSMESA_LIB_NAME = libOSMesa16.so
|
||||
# Work around aliasing bugs - developers should comment this out
|
||||
CFLAGS += -fno-strict-aliasing
|
||||
@@ -20,12 +22,12 @@ OSMESA_LIB_NAME = libOSMesa16.so
|
||||
|
||||
|
||||
# Directories
|
||||
|
@ -170,9 +159,9 @@ diff -up mesa-20070725/configs/linux-osmesa16.build-config mesa-20070725/configs
|
|||
+OSMESA_LIB_DEPS = -lm -lpthread -lselinux
|
||||
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(OSMESA_LIB)
|
||||
APP_LIB_DEPS = -lOSMesa16
|
||||
diff -up mesa-20070725/configs/linux-osmesa32.build-config mesa-20070725/configs/linux-osmesa32
|
||||
--- mesa-20070725/configs/linux-osmesa32.build-config 2007-07-25 09:36:03.000000000 -0400
|
||||
+++ mesa-20070725/configs/linux-osmesa32 2007-07-25 10:33:03.000000000 -0400
|
||||
diff -up Mesa-7.0.2/configs/linux-osmesa32.da Mesa-7.0.2/configs/linux-osmesa32
|
||||
--- Mesa-7.0.2/configs/linux-osmesa32.da 2007-11-02 05:09:01.000000000 +1000
|
||||
+++ Mesa-7.0.2/configs/linux-osmesa32 2008-01-02 02:24:07.000000000 +1000
|
||||
@@ -7,8 +7,10 @@ CONFIG_NAME = linux-osmesa32
|
||||
# Compiler and flags
|
||||
CC = gcc
|
||||
|
@ -184,9 +173,9 @@ diff -up mesa-20070725/configs/linux-osmesa32.build-config mesa-20070725/configs
|
|||
+CFLAGS = $(OPT_FLAGS) $(DEFINES) -DCHAN_BITS=32 -DDEFAULT_SOFTWARE_DEPTH_BITS=31
|
||||
+CXXFLAGS = $(OPT_FLAGS) $(DEFINES)
|
||||
|
||||
|
||||
# Library names
|
||||
@@ -17,12 +19,12 @@ OSMESA_LIB_NAME = libOSMesa32.so
|
||||
# Work around aliasing bugs - developers should comment this out
|
||||
CFLAGS += -fno-strict-aliasing
|
||||
@@ -20,12 +22,12 @@ OSMESA_LIB_NAME = libOSMesa32.so
|
||||
|
||||
|
||||
# Directories
|
||||
|
@ -201,20 +190,23 @@ diff -up mesa-20070725/configs/linux-osmesa32.build-config mesa-20070725/configs
|
|||
+OSMESA_LIB_DEPS = -lm -lpthread -lselinux
|
||||
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(OSMESA_LIB)
|
||||
APP_LIB_DEPS = -lOSMesa32
|
||||
diff -up mesa-20070725/configs/linux-osmesa.build-config mesa-20070725/configs/linux-osmesa
|
||||
--- mesa-20070725/configs/linux-osmesa.build-config 2007-07-25 09:36:03.000000000 -0400
|
||||
+++ mesa-20070725/configs/linux-osmesa 2007-07-25 10:33:03.000000000 -0400
|
||||
@@ -9,17 +9,18 @@ CONFIG_NAME = linux-osmesa
|
||||
diff -up Mesa-7.0.2/configs/linux-osmesa.da Mesa-7.0.2/configs/linux-osmesa
|
||||
--- Mesa-7.0.2/configs/linux-osmesa.da 2007-11-02 05:09:01.000000000 +1000
|
||||
+++ Mesa-7.0.2/configs/linux-osmesa 2008-01-02 02:27:46.000000000 +1000
|
||||
@@ -9,20 +9,22 @@ CONFIG_NAME = linux-osmesa
|
||||
# Compiler and flags
|
||||
CC = gcc
|
||||
CXX = g++
|
||||
-CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DPTHREADS
|
||||
-CXXFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
|
||||
-
|
||||
+DEFINES = -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
|
||||
+OPT_FLAGS ?= -O3 -ansi -pendantic -fPIC -ffast-math
|
||||
+CFLAGS = $(OPT_FLAGS) $(DEFINES)
|
||||
+CXXFLAGS = $(OPT_FLAGS) $(DEFINES)
|
||||
+CXXFLAGS = $(OPT_FLAGS) $(DEFINES)
|
||||
|
||||
# Work around aliasing bugs - developers should comment this out
|
||||
CFLAGS += -fno-strict-aliasing
|
||||
CXXFLAGS += -fno-strict-aliasing
|
||||
|
||||
# Directories
|
||||
-SRC_DIRS = mesa glu
|
||||
|
|
|
@ -1,66 +1,3 @@
|
|||
diff -up Mesa-7.0/src/mesa/tnl/t_vertex_sse.c.jx Mesa-7.0/src/mesa/tnl/t_vertex_sse.c
|
||||
--- Mesa-7.0/src/mesa/tnl/t_vertex_sse.c.jx 2007-06-21 18:10:54.000000000 -0400
|
||||
+++ Mesa-7.0/src/mesa/tnl/t_vertex_sse.c 2007-07-23 15:59:26.000000000 -0400
|
||||
@@ -348,7 +348,8 @@ static GLboolean build_vertex_emit( stru
|
||||
struct x86_reg vp1 = x86_make_reg(file_XMM, 2);
|
||||
GLubyte *fixup, *label;
|
||||
|
||||
- x86_init_func(&p->func);
|
||||
+ if (!x86_init_func(&p->func))
|
||||
+ return GL_FALSE;
|
||||
|
||||
/* Push a few regs?
|
||||
*/
|
||||
@@ -646,7 +647,10 @@ void _tnl_generate_sse_emit( GLcontext *
|
||||
p.identity = x86_make_reg(file_XMM, 6);
|
||||
p.chan0 = x86_make_reg(file_XMM, 7);
|
||||
|
||||
- x86_init_func(&p.func);
|
||||
+ if (!x86_init_func(&p.func)) {
|
||||
+ vtx->codegen_emit = NULL;
|
||||
+ return;
|
||||
+ }
|
||||
|
||||
if (build_vertex_emit(&p)) {
|
||||
_tnl_register_fastpath( vtx, GL_TRUE );
|
||||
diff -up Mesa-7.0/src/mesa/x86/rtasm/x86sse.h.jx Mesa-7.0/src/mesa/x86/rtasm/x86sse.h
|
||||
--- Mesa-7.0/src/mesa/x86/rtasm/x86sse.h.jx 2007-06-21 18:10:55.000000000 -0400
|
||||
+++ Mesa-7.0/src/mesa/x86/rtasm/x86sse.h 2007-07-23 15:59:23.000000000 -0400
|
||||
@@ -80,8 +80,8 @@ enum sse_cc {
|
||||
*/
|
||||
|
||||
|
||||
-void x86_init_func( struct x86_function *p );
|
||||
-void x86_init_func_size( struct x86_function *p, GLuint code_size );
|
||||
+int x86_init_func( struct x86_function *p );
|
||||
+int x86_init_func_size( struct x86_function *p, GLuint code_size );
|
||||
void x86_release_func( struct x86_function *p );
|
||||
void (*x86_get_func( struct x86_function *p ))( void );
|
||||
|
||||
diff -up Mesa-7.0/src/mesa/x86/rtasm/x86sse.c.jx Mesa-7.0/src/mesa/x86/rtasm/x86sse.c
|
||||
--- Mesa-7.0/src/mesa/x86/rtasm/x86sse.c.jx 2007-06-21 18:10:55.000000000 -0400
|
||||
+++ Mesa-7.0/src/mesa/x86/rtasm/x86sse.c 2007-07-23 15:59:23.000000000 -0400
|
||||
@@ -1063,15 +1063,17 @@ struct x86_reg x86_fn_arg( struct x86_fu
|
||||
}
|
||||
|
||||
|
||||
-void x86_init_func( struct x86_function *p )
|
||||
+int x86_init_func( struct x86_function *p )
|
||||
{
|
||||
- x86_init_func_size(p, 1024);
|
||||
+ return x86_init_func_size(p, 1024);
|
||||
}
|
||||
|
||||
-void x86_init_func_size( struct x86_function *p, GLuint code_size )
|
||||
+int x86_init_func_size( struct x86_function *p, GLuint code_size )
|
||||
{
|
||||
p->store = _mesa_exec_malloc(code_size);
|
||||
p->csr = p->store;
|
||||
+
|
||||
+ return (p->store != NULL);
|
||||
}
|
||||
|
||||
void x86_release_func( struct x86_function *p )
|
||||
diff -up Mesa-7.0/src/mesa/main/execmem.c.jx Mesa-7.0/src/mesa/main/execmem.c
|
||||
--- Mesa-7.0/src/mesa/main/execmem.c.jx 2007-06-21 18:10:54.000000000 -0400
|
||||
+++ Mesa-7.0/src/mesa/main/execmem.c 2007-07-23 16:02:30.000000000 -0400
|
||||
|
|
|
@ -0,0 +1,44 @@
|
|||
--- Mesa-7.0.2/src/mesa/drivers/dri/r200/r200_vertprog.c~ 2007-12-28 22:41:51.000000000 +0100
|
||||
+++ Mesa-7.0.2/src/mesa/drivers/dri/r200/r200_vertprog.c 2007-12-28 22:41:51.000000000 +0100
|
||||
@@ -408,6 +408,7 @@ static GLboolean r200_translate_vertex_p
|
||||
int fog_temp_i = 0;
|
||||
int free_inputs;
|
||||
int array_count = 0;
|
||||
+ int u_temp_used;
|
||||
|
||||
vp->native = GL_FALSE;
|
||||
vp->translated = GL_TRUE;
|
||||
@@ -1051,14 +1052,15 @@ else {
|
||||
dofogfix = 0;
|
||||
}
|
||||
|
||||
+ u_temp_used = (R200_VSF_MAX_TEMPS - 1) - u_temp_i;
|
||||
if (mesa_vp->Base.NumNativeTemporaries <
|
||||
- (mesa_vp->Base.NumTemporaries + (R200_VSF_MAX_TEMPS - 1 - u_temp_i))) {
|
||||
+ (mesa_vp->Base.NumTemporaries + u_temp_used)) {
|
||||
mesa_vp->Base.NumNativeTemporaries =
|
||||
- mesa_vp->Base.NumTemporaries + (R200_VSF_MAX_TEMPS - 1 - u_temp_i);
|
||||
+ mesa_vp->Base.NumTemporaries + u_temp_used;
|
||||
}
|
||||
- if (u_temp_i < mesa_vp->Base.NumTemporaries) {
|
||||
+ if ((mesa_vp->Base.NumTemporaries + u_temp_used) > R200_VSF_MAX_TEMPS) {
|
||||
if (R200_DEBUG & DEBUG_FALLBACKS) {
|
||||
- fprintf(stderr, "Ran out of temps, num temps %d, us %d\n", mesa_vp->Base.NumTemporaries, u_temp_i);
|
||||
+ fprintf(stderr, "Ran out of temps, num temps %d, us %d\n", mesa_vp->Base.NumTemporaries, u_temp_used);
|
||||
}
|
||||
return GL_FALSE;
|
||||
}
|
||||
--- Mesa-7.0.2/src/mesa/drivers/dri/r300/r300_vertprog.c~ 2007-12-28 22:42:19.000000000 +0100
|
||||
+++ Mesa-7.0.2/src/mesa/drivers/dri/r300/r300_vertprog.c 2007-12-28 22:42:19.000000000 +0100
|
||||
@@ -101,8 +101,9 @@ USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
#define FREE_TEMPS() \
|
||||
do { \
|
||||
- if(u_temp_i < vp->num_temporaries) { \
|
||||
- WARN_ONCE("Ran out of temps, num temps %d, us %d\n", vp->num_temporaries, u_temp_i); \
|
||||
+ int u_temp_used = (VSF_MAX_FRAGMENT_TEMPS - 1) - u_temp_i; \
|
||||
+ if((vp->num_temporaries + u_temp_used) > VSF_MAX_FRAGMENT_TEMPS) { \
|
||||
+ WARN_ONCE("Ran out of temps, num temps %d, us %d\n", vp->num_temporaries, u_temp_used); \
|
||||
vp->native = GL_FALSE; \
|
||||
} \
|
||||
u_temp_i=VSF_MAX_FRAGMENT_TEMPS-1; \
|
|
@ -0,0 +1,81 @@
|
|||
--- Mesa-7.0.2/src/mesa/tnl/t_vp_build.c 2007-10-23 18:52:25.000000000 +0200
|
||||
+++ Mesa-7.0.2.new/src/mesa/tnl/t_vp_build.c 2007-12-28 20:36:50.000000000 +0100
|
||||
@@ -890,7 +890,6 @@
|
||||
{
|
||||
struct ureg shininess = get_material(p, 0, STATE_SHININESS);
|
||||
emit_op1(p, OPCODE_MOV, dots, WRITEMASK_W, swizzle1(shininess,X));
|
||||
- release_temp(p, shininess);
|
||||
|
||||
_col0 = make_temp(p, get_scenecolor(p, 0));
|
||||
if (separate)
|
||||
@@ -904,7 +903,6 @@
|
||||
struct ureg shininess = get_material(p, 1, STATE_SHININESS);
|
||||
emit_op1(p, OPCODE_MOV, dots, WRITEMASK_Z,
|
||||
negate(swizzle1(shininess,X)));
|
||||
- release_temp(p, shininess);
|
||||
|
||||
_bfc0 = make_temp(p, get_scenecolor(p, 1));
|
||||
if (separate)
|
||||
@@ -972,7 +970,6 @@
|
||||
struct ureg tmpPpli = get_temp(p);
|
||||
|
||||
VPpli = get_temp(p);
|
||||
- half = get_temp(p);
|
||||
|
||||
/* In homogeneous object coordinates
|
||||
*/
|
||||
@@ -983,6 +980,9 @@
|
||||
*/
|
||||
emit_op2(p, OPCODE_SUB, VPpli, 0, tmpPpli, V);
|
||||
|
||||
+ /* we're done with tmpPpli now */
|
||||
+ release_temp(p, tmpPpli);
|
||||
+
|
||||
/* Normalize VPpli. The dist value also used in
|
||||
* attenuation below.
|
||||
*/
|
||||
@@ -997,10 +997,14 @@
|
||||
p->state->unit[i].light_attenuated) {
|
||||
att = calculate_light_attenuation(p, i, VPpli, dist);
|
||||
}
|
||||
+
|
||||
+ /* We're done with dist now */
|
||||
+ release_temp(p, dist);
|
||||
|
||||
|
||||
/* Calculate viewer direction, or use infinite viewer:
|
||||
*/
|
||||
+ half = get_temp(p);
|
||||
if (p->state->light_local_viewer) {
|
||||
struct ureg eye_hat = get_eye_position_normalized(p);
|
||||
emit_op2(p, OPCODE_SUB, half, 0, VPpli, eye_hat);
|
||||
@@ -1011,9 +1015,6 @@
|
||||
}
|
||||
|
||||
emit_normalize_vec3(p, half, half);
|
||||
-
|
||||
- release_temp(p, dist);
|
||||
- release_temp(p, tmpPpli);
|
||||
}
|
||||
|
||||
/* Calculate dot products:
|
||||
@@ -1021,6 +1022,10 @@
|
||||
emit_op2(p, OPCODE_DP3, dots, WRITEMASK_X, normal, VPpli);
|
||||
emit_op2(p, OPCODE_DP3, dots, WRITEMASK_Y, normal, half);
|
||||
|
||||
+ /* we're done with VPpli and half now, so free them as to not drive up
|
||||
+ our temp usage unnecessary */
|
||||
+ release_temp(p, VPpli);
|
||||
+ release_temp(p, half);
|
||||
|
||||
/* Front face lighting:
|
||||
*/
|
||||
@@ -1109,8 +1114,6 @@
|
||||
release_temp(p, specular);
|
||||
}
|
||||
|
||||
- release_temp(p, half);
|
||||
- release_temp(p, VPpli);
|
||||
release_temp(p, att);
|
||||
}
|
||||
}
|
15
mesa.spec
15
mesa.spec
|
@ -31,8 +31,8 @@
|
|||
|
||||
Summary: Mesa graphics libraries
|
||||
Name: mesa
|
||||
Version: 7.0.1
|
||||
Release: 7%{?dist}
|
||||
Version: 7.0.2
|
||||
Release: 1%{?dist}
|
||||
License: MIT
|
||||
Group: System Environment/Libraries
|
||||
URL: http://www.mesa3d.org
|
||||
|
@ -52,6 +52,8 @@ Patch26: mesa-7.0.1-stable-branch.patch
|
|||
Patch27: mesa-7.0-use_master-r300.patch
|
||||
Patch28: mesa-7.0.1-r300-fix-writemask.patch
|
||||
Patch29: mesa-7.0.1-r200-settexoffset.patch
|
||||
Patch30: mesa-7.0.2-rx00-vertprog-num-temps-off-by-one.patch
|
||||
Patch31: mesa-7.0.2-t_vp_build-use-less-temps.patch
|
||||
|
||||
BuildRequires: pkgconfig
|
||||
%if %{with_dri}
|
||||
|
@ -179,10 +181,10 @@ chmod a-x progs/demos/glslnoise.c
|
|||
%patch18 -p1 -b .selinux-awareness
|
||||
%patch23 -p1 -b .bindcontext
|
||||
%patch25 -p1 -b .makej
|
||||
%patch26 -p1 -b .stable
|
||||
%patch27 -p1 -b .r300
|
||||
%patch28 -p1 -b .r300-writemask
|
||||
%patch29 -p1 -b .r200-settexoffset
|
||||
%patch30 -p1 -b .rx00-fix-vp
|
||||
%patch31 -p1 -b .vp-temp-fix
|
||||
|
||||
# WARNING: The following files are copyright "Mark J. Kilgard" under the GLUT
|
||||
# license and are not open source/free software, so we remove them.
|
||||
|
@ -412,6 +414,11 @@ rm -rf $RPM_BUILD_ROOT
|
|||
%{_libdir}/mesa-demos-data
|
||||
|
||||
%changelog
|
||||
* Tue Jan 01 2008 Dave Airlie <airlied@redhat.com> 7.0.2-1
|
||||
- update to Mesa 7.0.2 final
|
||||
- mesa-7.0.2-rx00-vertprog-num-temps-off-by-one.patch - fixes for maniadrive
|
||||
- mesa-7.0.2-t_vp_build-use-less-temps.patch - fixes for maniadrive
|
||||
|
||||
* Thu Oct 18 2007 Dave Airlie <airlied@redhat.com> 7.0.1-7
|
||||
- mesa-7.0.1-stable-branch.patch - Updated with more fixes from stable
|
||||
- mesa-7.0.1-r300-fix-writemask.patch - fix r300 fragprog writemask
|
||||
|
|
4
sources
4
sources
|
@ -1,3 +1,3 @@
|
|||
c056abd763e899114bf745c9eedbf9ad MesaLib-7.0.1.tar.bz2
|
||||
3b66b3268df12ca8a6c4e0c4c457912c MesaDemos-7.0.1.tar.bz2
|
||||
6ae05158e678f4594343f32c2ca50515 gl-manpages-1.0.1.tar.bz2
|
||||
11a10410bae7be85cf25bc7119966468 MesaDemos-7.0.2.tar.bz2
|
||||
93e6ed7924ff069a4f883b4fce5349dc MesaLib-7.0.2.tar.bz2
|
||||
|
|
Loading…
Reference in New Issue