summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile17
-rwxr-xr-xbin/mklib30
-rw-r--r--configs/aix-gcc4
-rw-r--r--configs/beos4
-rw-r--r--configs/bluegene-osmesa4
-rw-r--r--configs/bluegene-xlc-osmesa29
-rw-r--r--configs/catamount-osmesa-pgi32
-rw-r--r--configs/darwin4
-rw-r--r--configs/darwin-static4
-rw-r--r--configs/darwin-static-x86ppc4
-rw-r--r--configs/darwin-x86ppc4
-rw-r--r--configs/default9
-rw-r--r--configs/freebsd4
-rw-r--r--configs/freebsd-dri4
-rw-r--r--configs/hpux10-gcc4
-rw-r--r--configs/linux4
-rw-r--r--configs/linux-alpha4
-rw-r--r--configs/linux-alpha-static4
-rw-r--r--configs/linux-directfb4
-rw-r--r--configs/linux-dri9
-rw-r--r--configs/linux-dri-x863
-rw-r--r--configs/linux-dri-xcb12
-rw-r--r--configs/linux-fbdev3
-rw-r--r--configs/linux-glide3
-rw-r--r--configs/linux-indirect3
-rw-r--r--configs/linux-osmesa3
-rw-r--r--configs/linux-osmesa163
-rw-r--r--configs/linux-osmesa16-static4
-rw-r--r--configs/linux-osmesa323
-rw-r--r--configs/linux-ppc-static1
-rw-r--r--configs/linux-solo3
-rw-r--r--configs/linux-solo-x863
-rw-r--r--configs/linux-static5
-rw-r--r--configs/linux-x86-64-static4
-rw-r--r--configs/linux-x86-glide3
-rw-r--r--configs/linux-x86-static4
-rw-r--r--configs/netbsd3
-rw-r--r--configs/openbsd4
-rw-r--r--configs/solaris-x86-gcc4
-rw-r--r--configs/solaris-x86-gcc-static4
-rw-r--r--configs/sunos4-gcc4
-rw-r--r--configs/sunos5-gcc4
-rw-r--r--configs/sunos5-v9-cc-g++3
-rw-r--r--configs/ultrix-gcc4
-rw-r--r--docs/download.html2
-rw-r--r--docs/fbdev-dri.html6
-rw-r--r--docs/helpwanted.html39
-rw-r--r--docs/install.html83
-rw-r--r--docs/license.html29
-rw-r--r--docs/modelers.html2
-rw-r--r--docs/news.html7
-rw-r--r--docs/relnotes-7.0.2.html44
-rw-r--r--progs/beos/.gitignore3
-rw-r--r--progs/beos/Makefile10
-rw-r--r--progs/demos/Makefile14
-rw-r--r--progs/directfb/.gitignore4
-rw-r--r--progs/egl/.gitignore5
-rw-r--r--progs/fbdev/.gitignore1
-rw-r--r--progs/fp/.gitignore42
-rw-r--r--progs/glsl/.gitignore13
-rw-r--r--progs/glsl/Makefile6
-rw-r--r--progs/glsl/bump.c6
-rw-r--r--progs/glsl/mandelbrot.c6
-rw-r--r--progs/glsl/noise.c2
-rw-r--r--progs/glsl/toyball.c6
-rw-r--r--progs/miniglx/.gitignore6
-rw-r--r--progs/osdemos/.gitignore8
-rw-r--r--progs/osdemos/Makefile12
-rw-r--r--progs/redbook/Makefile4
-rw-r--r--progs/samples/Makefile6
-rw-r--r--progs/slang/.gitignore3
-rw-r--r--progs/tools/trace/.gitignore1
-rw-r--r--progs/trivial/.gitignore65
-rw-r--r--progs/vp/.gitignore1
-rw-r--r--progs/xdemos/Makefile24
-rw-r--r--src/glu/Makefile16
-rw-r--r--src/glu/glu.pc.in11
-rw-r--r--src/glu/sgi/Makefile2
-rw-r--r--src/glu/sgi/libutil/project.c6
-rw-r--r--src/glut/beos/Makefile3
-rw-r--r--src/glut/fbdev/Makefile10
-rw-r--r--src/glut/ggi/Makefile2
-rw-r--r--src/glut/glx/Makefile22
-rw-r--r--src/glut/glx/glut.pc.in11
-rw-r--r--src/glut/mini/Makefile2
-rw-r--r--src/glw/Makefile22
-rw-r--r--src/glw/glw.pc.in11
-rw-r--r--src/glx/x11/Makefile2
-rw-r--r--src/mesa/Makefile44
-rw-r--r--src/mesa/drivers/beos/Makefile3
-rw-r--r--src/mesa/drivers/dri/Makefile.template6
-rw-r--r--src/mesa/drivers/dri/common/dri_bufmgr.c2
-rw-r--r--src/mesa/drivers/dri/common/extension_helper.h18
-rw-r--r--src/mesa/drivers/dri/glcore/Makefile3
-rw-r--r--src/mesa/drivers/dri/i915tex/i915_metaops.c2
-rw-r--r--src/mesa/drivers/dri/i915tex/i915_tex_layout.c2
-rw-r--r--src/mesa/drivers/dri/i915tex/intel_blit.c3
-rw-r--r--src/mesa/drivers/dri/i915tex/intel_buffers.c9
-rw-r--r--src/mesa/drivers/dri/i915tex/intel_mipmap_tree.c11
-rw-r--r--src/mesa/drivers/dri/i965/brw_aub.c16
-rw-r--r--src/mesa/drivers/dri/i965/brw_clip.c4
-rw-r--r--src/mesa/drivers/dri/i965/brw_curbe.c2
-rw-r--r--src/mesa/drivers/dri/i965/brw_draw.c6
-rw-r--r--src/mesa/drivers/dri/i965/brw_sf_emit.c4
-rw-r--r--src/mesa/drivers/dri/i965/brw_vs_tnl.c11
-rw-r--r--src/mesa/drivers/dri/i965/brw_wm_fp.c52
-rw-r--r--src/mesa/drivers/dri/i965/brw_wm_sampler_state.c8
-rw-r--r--src/mesa/drivers/dri/i965/brw_wm_state.c2
-rw-r--r--src/mesa/drivers/dri/i965/intel_buffers.c36
-rw-r--r--src/mesa/drivers/dri/i965/intel_context.c10
-rw-r--r--src/mesa/drivers/dri/i965/intel_context.h3
-rw-r--r--src/mesa/drivers/dri/i965/intel_pixel_bitmap.c19
-rw-r--r--src/mesa/drivers/dri/i965/intel_pixel_copy.c5
-rw-r--r--src/mesa/drivers/dri/i965/intel_state.c25
-rw-r--r--src/mesa/drivers/dri/i965/server/i830_common.h10
-rw-r--r--src/mesa/drivers/dri/r200/r200_context.h1
-rw-r--r--src/mesa/drivers/dri/r200/r200_tex.h4
-rw-r--r--src/mesa/drivers/dri/r200/r200_texmem.c5
-rw-r--r--src/mesa/drivers/dri/r200/r200_texstate.c94
-rw-r--r--src/mesa/drivers/dri/radeon/radeon_screen.c4
-rw-r--r--src/mesa/drivers/dri/unichrome/via_tris.c27
-rw-r--r--src/mesa/drivers/windows/gdi/wmesa.c95
-rw-r--r--src/mesa/drivers/x11/xm_dd.c13
-rw-r--r--src/mesa/gl.pc.in11
-rw-r--r--src/mesa/glapi/dispatch.h17
-rw-r--r--src/mesa/glapi/gl_API.xml31
-rw-r--r--src/mesa/glapi/glapioffsets.h12
-rw-r--r--src/mesa/glapi/glapitable.h11
-rw-r--r--src/mesa/glapi/glapitemp.h33
-rw-r--r--src/mesa/glapi/glprocs.h562
-rw-r--r--src/mesa/main/api_validate.c7
-rw-r--r--src/mesa/main/attrib.c3
-rw-r--r--src/mesa/main/context.c11
-rw-r--r--src/mesa/main/enable.c13
-rw-r--r--src/mesa/main/enums.c1208
-rw-r--r--src/mesa/main/glheader.h2
-rw-r--r--src/mesa/main/light.c9
-rw-r--r--src/mesa/main/lines.c5
-rw-r--r--src/mesa/main/points.c6
-rw-r--r--src/mesa/main/polygon.c5
-rw-r--r--src/mesa/main/state.c43
-rw-r--r--src/mesa/main/stencil.c295
-rw-r--r--src/mesa/main/stencil.h7
-rw-r--r--src/mesa/main/texenvprogram.c15
-rw-r--r--src/mesa/main/version.h6
-rw-r--r--src/mesa/shader/arbprogparse.c116
-rw-r--r--src/mesa/shader/prog_statevars.c2
-rw-r--r--src/mesa/sparc/glapi_sparc.S2
-rw-r--r--src/mesa/swrast/s_copypix.c11
-rw-r--r--src/mesa/swrast/s_span.c7
-rw-r--r--src/mesa/swrast_setup/ss_tritmp.h18
-rw-r--r--src/mesa/tnl/t_draw.c7
-rw-r--r--src/mesa/tnl/t_vb_fog.c43
-rw-r--r--src/mesa/tnl/t_vertex_sse.c16
-rw-r--r--src/mesa/tnl/t_vp_build.c71
-rw-r--r--src/mesa/vbo/vbo_save_draw.c6
-rw-r--r--src/mesa/x86-64/glapi_x86-64.S46
-rw-r--r--src/mesa/x86-64/xform4.S10
-rw-r--r--src/mesa/x86/glapi_x86.S13
-rw-r--r--src/mesa/x86/read_rgba_span_x86.S133
-rw-r--r--src/mesa/x86/rtasm/x86sse.c25
-rw-r--r--src/mesa/x86/rtasm/x86sse.h3
-rw-r--r--windows/VC7/mesa/gdi/gdi.vcproj376
-rw-r--r--windows/VC7/mesa/glu/glu.vcproj66
-rw-r--r--windows/VC7/mesa/mesa.sln20
-rw-r--r--windows/VC7/mesa/mesa/mesa.vcproj294
-rw-r--r--windows/VC7/mesa/osmesa/osmesa.vcproj18
167 files changed, 3082 insertions, 1944 deletions
diff --git a/Makefile b/Makefile
index 56efa83402c..fe0c35479e9 100644
--- a/Makefile
+++ b/Makefile
@@ -68,6 +68,8 @@ aix-gcc \
aix-static \
beos \
bluegene-osmesa \
+bluegene-xlc-osmesa \
+catamount-osmesa-pgi \
darwin \
darwin-static \
darwin-static-x86ppc \
@@ -164,10 +166,10 @@ ultrix-gcc:
# Rules for making release tarballs
-DIRECTORY = Mesa-7.0.1
-LIB_NAME = MesaLib-7.0.1
-DEMO_NAME = MesaDemos-7.0.1
-GLUT_NAME = MesaGLUT-7.0.1
+DIRECTORY = Mesa-7.0.2
+LIB_NAME = MesaLib-7.0.2
+DEMO_NAME = MesaDemos-7.0.2
+GLUT_NAME = MesaGLUT-7.0.2
MAIN_FILES = \
$(DIRECTORY)/Makefile* \
@@ -211,6 +213,7 @@ MAIN_FILES = \
$(DIRECTORY)/src/mesa/Makefile* \
$(DIRECTORY)/src/mesa/sources \
$(DIRECTORY)/src/mesa/descrip.mms \
+ $(DIRECTORY)/src/mesa/gl.pc.in \
$(DIRECTORY)/src/mesa/depend \
$(DIRECTORY)/src/mesa/main/*.[chS] \
$(DIRECTORY)/src/mesa/main/descrip.mms \
@@ -318,6 +321,7 @@ DRI_FILES = \
SGI_GLU_FILES = \
$(DIRECTORY)/src/glu/Makefile \
$(DIRECTORY)/src/glu/descrip.mms \
+ $(DIRECTORY)/src/glu/glu.pc.in \
$(DIRECTORY)/src/glu/sgi/Makefile \
$(DIRECTORY)/src/glu/sgi/Makefile.mgw \
$(DIRECTORY)/src/glu/sgi/Makefile.win \
@@ -394,6 +398,7 @@ GLUT_FILES = \
$(DIRECTORY)/include/GL/glutf90.h \
$(DIRECTORY)/src/glut/glx/Makefile* \
$(DIRECTORY)/src/glut/glx/depend \
+ $(DIRECTORY)/src/glut/glx/glut.pc.in \
$(DIRECTORY)/src/glut/glx/*def \
$(DIRECTORY)/src/glut/glx/descrip.mms \
$(DIRECTORY)/src/glut/glx/mms_depend \
@@ -409,6 +414,9 @@ GLUT_FILES = \
$(DIRECTORY)/src/glut/fbdev/Makefile \
$(DIRECTORY)/src/glut/fbdev/*[ch] \
$(DIRECTORY)/src/glut/mini/*[ch] \
+ $(DIRECTORY)/src/glut/directfb/Makefile \
+ $(DIRECTORY)/src/glut/directfb/NOTES \
+ $(DIRECTORY)/src/glut/directfb/*[ch] \
$(DIRECTORY)/windows/VC6/progs/glut/glut.dsp \
$(DIRECTORY)/windows/VC7/progs/glut/glut.vcproj
@@ -416,6 +424,7 @@ DEPEND_FILES = \
$(TOP)/src/mesa/depend \
$(TOP)/src/glx/x11/depend \
$(TOP)/src/glw/depend \
+ $(TOP)/src/glw/glw.pc.in \
$(TOP)/src/glut/glx/depend \
$(TOP)/src/glu/sgi/depend
diff --git a/bin/mklib b/bin/mklib
index 8334595774a..499e7897b73 100755
--- a/bin/mklib
+++ b/bin/mklib
@@ -34,6 +34,7 @@ MINOR=0
PATCH=""
DEPS=""
LINK=""
+LDFLAGS=""
CPLUSPLUS=0
STATIC=0
DLOPEN=0
@@ -63,6 +64,7 @@ do
echo ' -LDIR search in DIR for library dependencies'
echo ' -linker L explicity specify the linker program to use (eg: gcc, g++)'
echo ' Not observed on all systems at this time.'
+ echo ' -ldflags OPT specify any additional linker flags in OPT'
echo ' -cplusplus link with C++ runtime'
echo ' -static make a static library (default is dynamic/shared)'
echo ' -dlopen make a shared library suitable for dynamic loading'
@@ -94,6 +96,10 @@ do
shift 1;
LINK=$1
;;
+ '-ldflags')
+ shift 1;
+ LDFLAGS=$1
+ ;;
-l*)
DEPS="$DEPS $1"
;;
@@ -216,7 +222,7 @@ case $ARCH in
rm -f ${LIBNAME}
# make lib
- ${LINK} ${OPTS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
+ ${LINK} ${OPTS} ${LDFLAGS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
# finish up
FINAL_LIBS="${LIBNAME}"
elif [ $STATIC = 1 ] ; then
@@ -274,7 +280,7 @@ case $ARCH in
rm -f ${LIBNAME}.so
# make lib
- ${LINK} ${OPTS} -o ${LIBNAME}.so.${VERSION} ${OBJECTS} ${DEPS}
+ ${LINK} ${OPTS} ${LDFLAGS} -o ${LIBNAME}.so.${VERSION} ${OBJECTS} ${DEPS}
# make usual symlinks
ln -s ${LIBNAME}.so.${VERSION} ${LIBNAME}.so.${MAJOR}
ln -s ${LIBNAME}.so.${MAJOR} ${LIBNAME}.so
@@ -346,10 +352,10 @@ case $ARCH in
#echo "mklib: linker is" ${LINK} ${OPTS}
if [ $NOPREFIX = 1 ] ; then
rm -f ${LIBNAME}
- ${LINK} ${OPTS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
+ ${LINK} ${OPTS} ${LDFLAGS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
else
rm -f ${LIBNAME}.${MAJOR} ${LIBNAME}
- ${LINK} ${OPTS} -o ${LIBNAME}.${MAJOR} ${OBJECTS} ${DEPS}
+ ${LINK} ${OPTS} ${LDFLAGS} -o ${LIBNAME}.${MAJOR} ${OBJECTS} ${DEPS}
ln -s ${LIBNAME}.${MAJOR} ${LIBNAME}
fi
FINAL_LIBS="${LIBNAME}.${MAJOR} ${LIBNAME}"
@@ -373,7 +379,7 @@ case $ARCH in
echo "mklib: Making FreeBSD shared library: " ${LIBNAME}
OPTS="-shared"
rm -f ${LIBNAME}
- ${LINK} ${OPTS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
+ ${LINK} ${OPTS} ${LDFLAGS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
FINAL_LIBS=${LIBNAME}
elif [ $STATIC = 1 ] ; then
STLIB="lib${LIBNAME}.a"
@@ -387,7 +393,7 @@ case $ARCH in
OPTS="-shared -Wl,-soname,${SHLIB}"
echo "mklib: Making FreeBSD shared library: " ${SHLIB}
rm -f ${SHLIB}
- ${LINK} ${OPTS} -o ${SHLIB} ${OBJECTS} ${DEPS}
+ ${LINK} ${OPTS} ${LDFLAGS} -o ${SHLIB} ${OBJECTS} ${DEPS}
ln -sf ${SHLIB} "lib${LIBNAME}.so"
FINAL_LIBS="${SHLIB} lib${LIBNAME}.so"
fi
@@ -445,7 +451,7 @@ case $ARCH in
fi
echo "mklib: Making IRIX " ${ABI} " shared library: " ${LIBNAME}
- ${LINK} ${OPTS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
+ ${LINK} ${OPTS} ${LDFLAGS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
FINAL_LIBS=${LIBNAME}
fi
;;
@@ -521,9 +527,9 @@ case $ARCH in
# On AIX a shared library is linked differently when
# you want to dlopen the file
if [ $DLOPEN = "1" ] ; then
- cc -G ${OPTS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
+ cc -G ${OPTS} ${LDFLAGS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
else
- cc ${OPTS} -o ${OFILE} ${OBJECTS} ${DEPS}
+ cc ${OPTS} ${LDFLAGS} -o ${OFILE} ${OBJECTS} ${DEPS}
ar ${X64} -r ${LIBNAME} ${OFILE}
fi
@@ -605,7 +611,7 @@ case $ARCH in
fi
echo "mklib: Making Darwin shared library: " ${LIBNAME}
- ${LINK} ${OPTS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
+ ${LINK} ${OPTS} ${LDFLAGS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
ln -s ${LIBNAME} ${LINKNAME}
FINAL_LIBS="${LIBNAME} ${LINKNAME}"
fi
@@ -682,7 +688,7 @@ case $ARCH in
rm -f ${LIBNAME}.so.${MAJOR}
rm -f ${LIBNAME}.so
# make lib
- ${LINK} ${OPTS} -o ${LIBNAME}.so.${VERSION} ${OBJECTS} ${DEPS}
+ ${LINK} ${OPTS} ${LDFLAGS} -o ${LIBNAME}.so.${VERSION} ${OBJECTS} ${DEPS}
# make usual symlinks
ln -s ${LIBNAME}.so.${VERSION} ${LIBNAME}.so.${MAJOR}
ln -s ${LIBNAME}.so.${MAJOR} ${LIBNAME}.so
@@ -754,7 +760,7 @@ case $ARCH in
rm -f ${LIBNAME}.a
# make lib
- ${LINK} ${OPTS} -o ${CYGNAME}-${MAJOR}.dll ${OBJECTS} ${DEPS}
+ ${LINK} ${OPTS} ${LDFLAGS} -o ${CYGNAME}-${MAJOR}.dll ${OBJECTS} ${DEPS}
# make usual symlinks
ln -s ${LIBNAME}-${MAJOR}.dll.a ${LIBNAME}.dll.a
# finish up
diff --git a/configs/aix-gcc b/configs/aix-gcc
index 81467082a73..3b964f351f7 100644
--- a/configs/aix-gcc
+++ b/configs/aix-gcc
@@ -11,6 +11,10 @@ CXX = g++
CFLAGS = -O2 -DAIXV3
CXXFLAGS = -O2 -DAIXV3
+# Work around aliasing bugs - developers should comment this out
+CFLAGS += -fno-strict-aliasing
+CXXFLAGS += -fno-strict-aliasing
+
MKLIB_OPTIONS = -arch aix-gcc
GL_LIB_DEPS = -lX11 -lXext -lm
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lm
diff --git a/configs/beos b/configs/beos
index f07973d0c78..9974b7b2201 100644
--- a/configs/beos
+++ b/configs/beos
@@ -39,6 +39,10 @@ ifeq ($(CPU), x86)
CXXFLAGS = $(CFLAGS)
+ # Work around aliasing bugs - developers should comment this out
+ CFLAGS += -fno-strict-aliasing
+ CXXFLAGS += -fno-strict-aliasing
+
LDFLAGS += -Xlinker
ifdef DEBUG
diff --git a/configs/bluegene-osmesa b/configs/bluegene-osmesa
index 02c69e6c67e..d22454fa2d9 100644
--- a/configs/bluegene-osmesa
+++ b/configs/bluegene-osmesa
@@ -13,6 +13,10 @@ CXX = /bgl/BlueLight/ppcfloor/blrts-gnu/bin/powerpc-bgl-blrts-gnu-g++
CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
CXXFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURC
+# Work around aliasing bugs - developers should comment this out
+CFLAGS += -fno-strict-aliasing
+CXXFLAGS += -fno-strict-aliasing
+
MKLIB_OPTIONS = -static
OSMESA_LIB_NAME = libOSMesa.a
diff --git a/configs/bluegene-xlc-osmesa b/configs/bluegene-xlc-osmesa
new file mode 100644
index 00000000000..b0c762de91c
--- /dev/null
+++ b/configs/bluegene-xlc-osmesa
@@ -0,0 +1,29 @@
+# Configuration for building only libOSMesa on BlueGene using the IBM xlc compiler
+# This doesn't really have a lot of dependencies, so it should be usable
+# on similar systems too.
+# It uses static linking and disables multithreading.
+
+include $(TOP)/configs/default
+
+CONFIG_NAME = bluegene-osmesa
+
+# Compiler and flags
+CC = /opt/ibmcmp/vacpp/bg/8.0/bin/blrts_xlc
+CXX = /opt/ibmcmp/vacpp/bg/8.0/bin/blrts_xlC
+CFLAGS = -O3 -pedantic -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
+CXXFLAGS = -O3 -pedantic -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
+
+MKLIB_OPTIONS = -static
+
+OSMESA_LIB_NAME = libOSMesa.a
+
+# Directories
+SRC_DIRS = mesa glu
+DRIVER_DIRS = osmesa
+PROGRAM_DIRS = osdemos
+
+
+# Dependencies
+OSMESA_LIB_DEPS = -lm
+GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(OSMESA_LIB)
+APP_LIB_DEPS = -lOSMesa -lGLU -lm
diff --git a/configs/catamount-osmesa-pgi b/configs/catamount-osmesa-pgi
new file mode 100644
index 00000000000..835f6eb7d2b
--- /dev/null
+++ b/configs/catamount-osmesa-pgi
@@ -0,0 +1,32 @@
+# Configuration for building only libOSMesa on Cray Xt3
+# for the compute nodes running Catamount using the
+# Portland Group compiler. The Portland Group toolchain has to be
+# enabled before using "module switch PrgEnv-gnu PrgEnv-pgi" .
+# This doesn't really have a lot of dependencies, so it should be usable
+# on other similar systems too.
+# It uses static linking and disables multithreading.
+
+include $(TOP)/configs/default
+
+CONFIG_NAME = catamount-osmesa-pgi
+
+# Compiler and flags
+CC = cc
+CXX = CC
+CFLAGS = -target=catamount -fastsse -O3 -Mnontemporal -Mprefetch=distance:8,nta -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
+CXXFLAGS = -target=catamount -fastsse -O3 -Mnontemporal -Mprefetch=distance:8,nta -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
+
+MKLIB_OPTIONS = -static
+
+OSMESA_LIB_NAME = libOSMesa.a
+
+# Directories
+SRC_DIRS = mesa glu
+DRIVER_DIRS = osmesa
+PROGRAM_DIRS = osdemos
+
+
+# Dependencies
+OSMESA_LIB_DEPS = -lm
+GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(OSMESA_LIB)
+APP_LIB_DEPS = -lOSMesa -lGLU -lm
diff --git a/configs/darwin b/configs/darwin
index 7826ecc605e..76f3f74d4e6 100644
--- a/configs/darwin
+++ b/configs/darwin
@@ -10,6 +10,10 @@ CXX = cc
CFLAGS = -I/usr/X11R6/include -O3 -fPIC -fno-common -ffast-math -funroll-loops -fexpensive-optimizations -no-cpp-precomp -dynamic -Ddarwin
CXXFLAGS = -I/usr/X11R6/include -O3 -fPIC -fno-common -ffast-math -funroll-loops -fexpensive-optimizations -no-cpp-precomp -dynamic -Ddarwin
+# Work around aliasing bugs - developers should comment this out
+CFLAGS += -fno-strict-aliasing
+CXXFLAGS += -fno-strict-aliasing
+
# Library names (actual file names)
GL_LIB_NAME = libGL.dylib
GLU_LIB_NAME = libGLU.dylib
diff --git a/configs/darwin-static b/configs/darwin-static
index 3eb6581fb02..9893d159bd2 100644
--- a/configs/darwin-static
+++ b/configs/darwin-static
@@ -9,6 +9,10 @@ CFLAGS = -I/usr/X11R6/include -O3 -fno-common -ffast-math -funroll-loops -fexpen
CXXFLAGS = -I/usr/X11R6/include -O3 -fno-common -ffast-math -funroll-loops -fexpensive-optimizations -no-cpp-precomp -dynamic -Ddarwin
MKLIB_OPTIONS = -static
+# Work around aliasing bugs - developers should comment this out
+CFLAGS += -fno-strict-aliasing
+CXXFLAGS += -fno-strict-aliasing
+
# Library names (actual file names)
GL_LIB_NAME = libGL.a
GLU_LIB_NAME = libGLU.a
diff --git a/configs/darwin-static-x86ppc b/configs/darwin-static-x86ppc
index 844a1d2eade..7e97474dfe0 100644
--- a/configs/darwin-static-x86ppc
+++ b/configs/darwin-static-x86ppc
@@ -11,6 +11,10 @@ CXXFLAGS = -arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk \
-I/usr/X11R6/include -O3 -fno-common -ffast-math -funroll-loops -fexpensive-optimizations -no-cpp-precomp -dynamic -Ddarwin
MKLIB_OPTIONS = -static -archopt "-isysroot /Developer/SDKs/MacOSX10.4u.sdk"
+# Work around aliasing bugs - developers should comment this out
+CFLAGS += -fno-strict-aliasing
+CXXFLAGS += -fno-strict-aliasing
+
# Library names (actual file names)
GL_LIB_NAME = libGL.a
GLU_LIB_NAME = libGLU.a
diff --git a/configs/darwin-x86ppc b/configs/darwin-x86ppc
index 13172327a76..c87b206f926 100644
--- a/configs/darwin-x86ppc
+++ b/configs/darwin-x86ppc
@@ -14,6 +14,10 @@ CXXFLAGS = -arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk \
MKLIB_OPTIONS = -archopt "-isysroot /Developer/SDKs/MacOSX10.4u.sdk"
+# Work around aliasing bugs - developers should comment this out
+CFLAGS += -fno-strict-aliasing
+CXXFLAGS += -fno-strict-aliasing
+
# Library names (actual file names)
GL_LIB_NAME = libGL.dylib
GLU_LIB_NAME = libGLU.dylib
diff --git a/configs/default b/configs/default
index 81f0338b271..549a1820452 100644
--- a/configs/default
+++ b/configs/default
@@ -10,7 +10,7 @@ CONFIG_NAME = default
# Version info
MESA_MAJOR=7
MESA_MINOR=0
-MESA_TINY=1
+MESA_TINY=2
# external projects. This should be useless now that we use libdrm.
DRM_SOURCE_PATH=$(TOP)/../drm
@@ -20,6 +20,7 @@ CC = cc
CXX = CC
CFLAGS = -O
CXXFLAGS = -O
+LDFLAGS =
GLU_CFLAGS =
# Misc tools and flags
@@ -66,14 +67,16 @@ DRIVER_DIRS = x11 osmesa
PROGRAM_DIRS = demos redbook samples glsl xdemos
-# Library/program dependencies
+# Library dependencies
#EXTRA_LIB_PATH ?=
GL_LIB_DEPS = $(EXTRA_LIB_PATH) -lX11 -lXext -lm -lpthread
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
-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
diff --git a/configs/freebsd b/configs/freebsd
index 447faf9f4cf..3d35d91edb9 100644
--- a/configs/freebsd
+++ b/configs/freebsd
@@ -23,5 +23,9 @@ CXXFLAGS += $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) $(DEFINES) $(X11_INCLUDES)
GLUT_CFLAGS = -fexceptions
+# Work around aliasing bugs - developers should comment this out
+CFLAGS += -fno-strict-aliasing
+CXXFLAGS += -fno-strict-aliasing
+
EXTRA_LIB_PATH = -L/usr/X11R6/lib
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) $(EXTRA_LIB_PATH) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lXext -lXmu -lXi -lX11 -lm
diff --git a/configs/freebsd-dri b/configs/freebsd-dri
index 5a9310a04ed..6dd31909c32 100644
--- a/configs/freebsd-dri
+++ b/configs/freebsd-dri
@@ -22,6 +22,10 @@ CFLAGS = $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) -Wmissing-prototypes -std=c99 -
CXXFLAGS = $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) $(DEFINES) -Wall -ansi -pedantic $(ASM_FLAGS) $(X11_INCLUDES)
+# Work around aliasing bugs - developers should comment this out
+CFLAGS += -fno-strict-aliasing
+CXXFLAGS += -fno-strict-aliasing
+
ASM_SOURCES =
# Library/program dependencies
diff --git a/configs/hpux10-gcc b/configs/hpux10-gcc
index 10a9ad5cd57..be396f85499 100644
--- a/configs/hpux10-gcc
+++ b/configs/hpux10-gcc
@@ -12,5 +12,9 @@ CFLAGS = -ansi -O3 -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/incl
CXXFLAGS = -ansi -O3 -D_HPUX_SOURCE
GLUT_CFLAGS = -fexceptions
+# Work around aliasing bugs - developers should comment this out
+CFLAGS += -fno-strict-aliasing
+CXXFLAGS += -fno-strict-aliasing
+
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm
diff --git a/configs/linux b/configs/linux
index 0d455ff46a5..15700a1a3bf 100644
--- a/configs/linux
+++ b/configs/linux
@@ -28,6 +28,10 @@ CFLAGS = -Wall -Wmissing-prototypes $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) \
CXXFLAGS = -Wall $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES) \
$(X11_INCLUDES)
+# Work around aliasing bugs - developers should comment this out
+CFLAGS += -fno-strict-aliasing
+CXXFLAGS += -fno-strict-aliasing
+
GLUT_CFLAGS = -fexceptions
EXTRA_LIB_PATH = -L/usr/X11R6/lib
diff --git a/configs/linux-alpha b/configs/linux-alpha
index d69aabb7307..65bf0c2ab6a 100644
--- a/configs/linux-alpha
+++ b/configs/linux-alpha
@@ -11,6 +11,10 @@ CFLAGS = -O3 -mcpu=ev5 -ansi -mieee -pedantic -fPIC -D_XOPEN_SOURCE -DUSE_XSHM
CXXFLAGS = -O3 -mcpu=ev5 -ansi -mieee -pedantic -fPIC -D_XOPEN_SOURCE
GLUT_CFLAGS = -fexceptions
+# Work around aliasing bugs - developers should comment this out
+CFLAGS += -fno-strict-aliasing
+CXXFLAGS += -fno-strict-aliasing
+
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
diff --git a/configs/linux-alpha-static b/configs/linux-alpha-static
index 2a30af9b68b..53808d77ca4 100644
--- a/configs/linux-alpha-static
+++ b/configs/linux-alpha-static
@@ -11,7 +11,11 @@ CFLAGS = -O3 -mcpu=ev5 -ansi -mieee -pedantic -D_XOPEN_SOURCE -DUSE_XSHM
CXXFLAGS = -O3 -mcpu=ev5 -ansi -mieee -pedantic -D_XOPEN_SOURCE
GLUT_CFLAGS = -fexceptions
MKLIB_OPTIONS = -static
+PIC_FLAGS =
+# Work around aliasing bugs - developers should comment this out
+CFLAGS += -fno-strict-aliasing
+CXXFLAGS += -fno-strict-aliasing
# Library names (actual file names)
GL_LIB_NAME = libGL.a
diff --git a/configs/linux-directfb b/configs/linux-directfb
index 09332f48081..2a9843e93c2 100644
--- a/configs/linux-directfb
+++ b/configs/linux-directfb
@@ -13,6 +13,10 @@ CFLAGS = -Wall -O3 -ffast-math -fPIC -std=c99 -D_GNU_SOURCE -D_POSIX_SOURCE -D
CXXFLAGS = -Wall -O3 -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
+# Work around aliasing bugs - developers should comment this out
+CFLAGS += -fno-strict-aliasing
+CXXFLAGS += -fno-strict-aliasing
+
HAVE_X86 = $(shell uname -m | grep 'i[3-6]86' >/dev/null && echo yes)
ifeq ($(HAVE_X86), yes)
CFLAGS += -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM
diff --git a/configs/linux-dri b/configs/linux-dri
index 5f945a73f1a..7ef07b55923 100644
--- a/configs/linux-dri
+++ b/configs/linux-dri
@@ -32,6 +32,11 @@ CFLAGS = -Wall -Wmissing-prototypes -std=c99 -ffast-math \
CXXFLAGS = -Wall $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES)
+GLUT_CFLAGS = -fexceptions
+
+# Work around aliasing bugs - developers should comment this out
+CFLAGS += -fno-strict-aliasing
+CXXFLAGS += -fno-strict-aliasing
ASM_SOURCES =
@@ -55,10 +60,10 @@ USING_EGL=0
# Directories
ifeq ($(USING_EGL), 1)
SRC_DIRS = egl glx/x11 mesa glu glut/glx glw
-PROGRAM_DIRS = egl
+PROGRAM_DIRS = egl xdemos
else
SRC_DIRS = glx/x11 mesa glu glut/glx glw
-PROGRAM_DIRS =
+PROGRAM_DIRS = xdemos
endif
DRIVER_DIRS = dri
diff --git a/configs/linux-dri-x86 b/configs/linux-dri-x86
index b196004e58f..f9b164d27ab 100644
--- a/configs/linux-dri-x86
+++ b/configs/linux-dri-x86
@@ -5,9 +5,6 @@ include $(TOP)/configs/linux-dri
CONFIG_NAME = linux-dri-x86
-# Unnecessary on x86, generally.
-PIC_FLAGS =
-
# Add -m32 to CFLAGS:
ARCH_FLAGS = -m32
diff --git a/configs/linux-dri-xcb b/configs/linux-dri-xcb
index 5620fe58e70..69643718adc 100644
--- a/configs/linux-dri-xcb
+++ b/configs/linux-dri-xcb
@@ -32,6 +32,9 @@ CFLAGS = -Wall -Wmissing-prototypes $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) \
CXXFLAGS = -Wall $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES)
+# Work around aliasing bugs - developers should comment this out
+CFLAGS += -fno-strict-aliasing
+CXXFLAGS += -fno-strict-aliasing
ASM_SOURCES =
@@ -41,8 +44,9 @@ EXTRA_LIB_PATH=`pkg-config --libs-only-L x11`
LIBDRM_CFLAGS = `pkg-config --cflags libdrm`
LIBDRM_LIB = `pkg-config --libs libdrm`
DRI_LIB_DEPS = $(EXTRA_LIB_PATH) -lm -lpthread -lexpat -ldl $(LIBDRM_LIB)
-GL_LIB_DEPS = $(EXTRA_LIB_PATH) -lX11 -lXext -lXxf86vm -lm -lpthread -ldl \
- $(LIBDRM_LIB) `pkg-config --libs xcb` `pkg-config --libs x11-xcb` `pkg-config --libs xcb-glx`
+GL_LIB_DEPS = $(EXTRA_LIB_PATH) -lX11 -lXext -lXxf86vm -lXdamage -lXfixes \
+ -lm -lpthread -ldl $(LIBDRM_LIB) `pkg-config --libs xcb` \
+ `pkg-config --libs x11-xcb` `pkg-config --libs xcb-glx`
# This is now 0 by default since it seems to confuse the hell out of people
@@ -54,10 +58,10 @@ USING_EGL=0
# Directories
ifeq ($(USING_EGL), 1)
SRC_DIRS = egl glx/x11 mesa glu glut/glx glw
-PROGRAM_DIRS = egl
+PROGRAM_DIRS = egl xdemos
else
SRC_DIRS = glx/x11 mesa glu glut/glx glw
-PROGRAM_DIRS =
+PROGRAM_DIRS = xdemos
endif
DRIVER_DIRS = dri
diff --git a/configs/linux-fbdev b/configs/linux-fbdev
index e36d20a702c..69d10127c8e 100644
--- a/configs/linux-fbdev
+++ b/configs/linux-fbdev
@@ -6,6 +6,9 @@ CONFIG_NAME = linux-fbdev
CFLAGS = -O3 -ffast-math -ansi -pedantic -fPIC -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DPTHREADS -DUSE_GLFBDEV_DRIVER
+# Work around aliasing bugs - developers should comment this out
+CFLAGS += -fno-strict-aliasing
+
SRC_DIRS = mesa glu glut/fbdev
DRIVER_DIRS = fbdev osmesa
PROGRAM_DIRS = fbdev demos redbook samples
diff --git a/configs/linux-glide b/configs/linux-glide
index 0a40521e1b7..31475c81d84 100644
--- a/configs/linux-glide
+++ b/configs/linux-glide
@@ -12,6 +12,9 @@ CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE
CXXFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
GLUT_CFLAGS = -fexceptions
+# Work around aliasing bugs - developers should comment this out
+CFLAGS += -fno-strict-aliasing
+CXXFLAGS += -fno-strict-aliasing
# Library/program dependencies
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -L/usr/local/glide/lib -lglide3x -lm -lpthread
diff --git a/configs/linux-indirect b/configs/linux-indirect
index bd33345ed70..17c7126e115 100644
--- a/configs/linux-indirect
+++ b/configs/linux-indirect
@@ -33,6 +33,9 @@ CFLAGS = $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES) \
CXXFLAGS = $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES)
+# Work around aliasing bugs - developers should comment this out
+CFLAGS += -fno-strict-aliasing
+CXXFLAGS += -fno-strict-aliasing
ASM_SOURCES =
diff --git a/configs/linux-osmesa b/configs/linux-osmesa
index cc1fbbd109a..163b1452910 100644
--- a/configs/linux-osmesa
+++ b/configs/linux-osmesa
@@ -12,6 +12,9 @@ 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
+# Work around aliasing bugs - developers should comment this out
+CFLAGS += -fno-strict-aliasing
+CXXFLAGS += -fno-strict-aliasing
# Directories
SRC_DIRS = mesa glu
diff --git a/configs/linux-osmesa16 b/configs/linux-osmesa16
index 1fb0186d315..796fba17806 100644
--- a/configs/linux-osmesa16
+++ b/configs/linux-osmesa16
@@ -10,6 +10,9 @@ CXX = g++
CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include -DCHAN_BITS=16 -DDEFAULT_SOFTWARE_DEPTH_BITS=31
CXXFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
+# Work around aliasing bugs - developers should comment this out
+CFLAGS += -fno-strict-aliasing
+CXXFLAGS += -fno-strict-aliasing
# Library names
OSMESA_LIB = OSMesa16
diff --git a/configs/linux-osmesa16-static b/configs/linux-osmesa16-static
index 6645504478e..0e0d1519f39 100644
--- a/configs/linux-osmesa16-static
+++ b/configs/linux-osmesa16-static
@@ -10,7 +10,11 @@ CXX = g++
CFLAGS = -O3 -ansi -pedantic -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include -DCHAN_BITS=16 -DDEFAULT_SOFTWARE_DEPTH_BITS=31
CXXFLAGS = -O3 -ansi -pedantic -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
MKLIB_OPTIONS = -static
+PIC_FLAGS =
+# Work around aliasing bugs - developers should comment this out
+CFLAGS += -fno-strict-aliasing
+CXXFLAGS += -fno-strict-aliasing
# Library names
OSMESA_LIB = OSMesa16
diff --git a/configs/linux-osmesa32 b/configs/linux-osmesa32
index a1e5a358d60..12d0cb053d0 100644
--- a/configs/linux-osmesa32
+++ b/configs/linux-osmesa32
@@ -10,6 +10,9 @@ CXX = g++
CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include -DCHAN_BITS=32 -DDEFAULT_SOFTWARE_DEPTH_BITS=31
CXXFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
+# Work around aliasing bugs - developers should comment this out
+CFLAGS += -fno-strict-aliasing
+CXXFLAGS += -fno-strict-aliasing
# Library names
OSMESA_LIB = OSMesa32
diff --git a/configs/linux-ppc-static b/configs/linux-ppc-static
index d0e168811f8..3f3dc556437 100644
--- a/configs/linux-ppc-static
+++ b/configs/linux-ppc-static
@@ -5,6 +5,7 @@ include $(TOP)/configs/linux-ppc
CONFIG_NAME = linux-ppc-static
MKLIB_OPTIONS = -static
+PIC_FLAGS =
# Library names (actual file names)
GL_LIB_NAME = libGL.a
diff --git a/configs/linux-solo b/configs/linux-solo
index a6cab8c9b3b..4278ac7fa51 100644
--- a/configs/linux-solo
+++ b/configs/linux-solo
@@ -31,6 +31,9 @@ CFLAGS = $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES) \
CXXFLAGS = $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES)
+# Work around aliasing bugs - developers should comment this out
+CFLAGS += -fno-strict-aliasing
+CXXFLAGS += -fno-strict-aliasing
ASM_SOURCES =
diff --git a/configs/linux-solo-x86 b/configs/linux-solo-x86
index 13cab376587..e37b9fb428d 100644
--- a/configs/linux-solo-x86
+++ b/configs/linux-solo-x86
@@ -5,9 +5,6 @@ include $(TOP)/configs/linux-solo
CONFIG_NAME = linux-solo-x86
-# Unnecessary on x86, generally.
-PIC_FLAGS =
-
ASM_FLAGS = -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM
ASM_SOURCES = $(X86_SOURCES)
ASM_API = $(X86_API)
diff --git a/configs/linux-static b/configs/linux-static
index 85141ea643f..2a77d4c4b7b 100644
--- a/configs/linux-static
+++ b/configs/linux-static
@@ -5,6 +5,7 @@ include $(TOP)/configs/linux
CONFIG_NAME = linux-static
MKLIB_OPTIONS = -static
+PIC_FLAGS =
# Library names (actual file names)
GL_LIB_NAME = libGL.a
@@ -21,6 +22,4 @@ GLUT_LIB_DEPS =
GLW_LIB_DEPS =
# Need to specify all libraries we may need
-APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm \
- -L/usr/X11R6/lib/ -lX11 -lXmu -lXi -lpthread
-
+APP_LIB_DEPS = $(EXTRA_LIB_PATH) -lX11 -lXmu -lXt -lXi -lpthread -lstdc++ -lm
diff --git a/configs/linux-x86-64-static b/configs/linux-x86-64-static
index 02574303a97..06e6fc36503 100644
--- a/configs/linux-x86-64-static
+++ b/configs/linux-x86-64-static
@@ -5,6 +5,7 @@ include $(TOP)/configs/linux-x86-64
CONFIG_NAME = linux-x86-64-static
MKLIB_OPTIONS = -static
+PIC_FLAGS =
# Library names (actual file names)
GL_LIB_NAME = libGL.a
@@ -19,5 +20,4 @@ OSMESA_LIB_DEPS =
GLU_LIB_DEPS =
GLUT_LIB_DEPS =
GLW_LIB_DEPS =
-APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) \
- $(EXTRA_LIB_PATH) -lX11 -lXmu -lXt -lXi -lpthread -lstdc++ -lm
+APP_LIB_DEPS = $(EXTRA_LIB_PATH) -lX11 -lXmu -lXt -lXi -lpthread -lstdc++ -lm
diff --git a/configs/linux-x86-glide b/configs/linux-x86-glide
index f2f8aeea60e..941efc1e598 100644
--- a/configs/linux-x86-glide
+++ b/configs/linux-x86-glide
@@ -14,6 +14,9 @@ CXXFLAGS = -Wall -O3 -ansi -pedantic -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199
GLUT_CFLAGS = -fexceptions
+# Work around aliasing bugs - developers should comment this out
+CFLAGS += -fno-strict-aliasing
+CXXFLAGS += -fno-strict-aliasing
ASM_SOURCES = $(X86_SOURCES)
ASM_API = $(X86_API)
diff --git a/configs/linux-x86-static b/configs/linux-x86-static
index 9915987da37..2b6478b5868 100644
--- a/configs/linux-x86-static
+++ b/configs/linux-x86-static
@@ -5,6 +5,7 @@ include $(TOP)/configs/linux-x86
CONFIG_NAME = linux-x86-static
MKLIB_OPTIONS = -static
+PIC_FLAGS =
# Library names (actual file names)
GL_LIB_NAME = libGL.a
@@ -19,5 +20,4 @@ OSMESA_LIB_DEPS =
GLU_LIB_DEPS =
GLUT_LIB_DEPS =
GLW_LIB_DEPS =
-APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) \
- $(EXTRA_LIB_PATH) -lX11 -lXmu -lXt -lXi -lpthread -lstdc++ -lm
+APP_LIB_DEPS = $(EXTRA_LIB_PATH) -lX11 -lXmu -lXt -lXi -lpthread -lstdc++ -lm
diff --git a/configs/netbsd b/configs/netbsd
index f5a61a89570..aec45695071 100644
--- a/configs/netbsd
+++ b/configs/netbsd
@@ -12,3 +12,6 @@ CXXFLAGS = -O2 -fPIC
GLUT_CFLAGS = -fexceptions
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -L/usr/X11R6/lib -lXext -lXmu -lXi -lX11 -lm
+# Work around aliasing bugs - developers should comment this out
+CFLAGS += -fno-strict-aliasing
+CXXFLAGS += -fno-strict-aliasing
diff --git a/configs/openbsd b/configs/openbsd
index 6ad6e2bd3d0..bd19fa84d39 100644
--- a/configs/openbsd
+++ b/configs/openbsd
@@ -10,6 +10,10 @@ CXX = g++
CFLAGS = -O2 -fPIC -I/usr/X11R6/include -DUSE_XSHM -DHZ=100
CXXFLAGS = -O2 -fPIC -I/usr/X11R6/include -DHZ=100
+# Work around aliasing bugs - developers should comment this out
+CFLAGS += -fno-strict-aliasing
+CXXFLAGS += -fno-strict-aliasing
+
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm
OSMESA_LIB_DEPS = -lm
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB)
diff --git a/configs/solaris-x86-gcc b/configs/solaris-x86-gcc
index 5ec7237f991..616bfdfd778 100644
--- a/configs/solaris-x86-gcc
+++ b/configs/solaris-x86-gcc
@@ -11,6 +11,10 @@ CFLAGS = -O3 -march=i486 -fPIC -I/usr/openwin/include -DUSE_XSHM
CXXFLAGS = -O3 -march=i486 -fPIC
GLUT_CFLAGS = -fexceptions
+# Work around aliasing bugs - developers should comment this out
+CFLAGS += -fno-strict-aliasing
+CXXFLAGS += -fno-strict-aliasing
+
GL_LIB_DEPS = -L/usr/openwin/lib -lX11 -lXext -lm -lpthread
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lm
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/openwin/lib -lX11 -lXmu -lXt -lXi -lm
diff --git a/configs/solaris-x86-gcc-static b/configs/solaris-x86-gcc-static
index be02735f028..4850284a59f 100644
--- a/configs/solaris-x86-gcc-static
+++ b/configs/solaris-x86-gcc-static
@@ -12,6 +12,10 @@ CXXFLAGS = -O3 -march=i486 -fPIC
GLUT_CFLAGS = -fexceptions
MKLIB_OPTIONS = -static
+# Work around aliasing bugs - developers should comment this out
+CFLAGS += -fno-strict-aliasing
+CXXFLAGS += -fno-strict-aliasing
+
GL_LIB_DEPS = -L/usr/openwin/lib -lX11 -lXext -lm -lpthread
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lm
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/openwin/lib -lX11 -lXmu -lXt -lXi -lm
diff --git a/configs/sunos4-gcc b/configs/sunos4-gcc
index 2022dd7e8e7..09422915894 100644
--- a/configs/sunos4-gcc
+++ b/configs/sunos4-gcc
@@ -11,5 +11,9 @@ CFLAGS = -fPIC -O3 -I/usr/openwin/include -I/usr/include/X11R5 -I/usr/include/X1
CXXFLAGS = -fPIC -O3 -I/usr/openwin/include -DSUNOS4
GLUT_CFLAGS = -fexceptions -DSOLARIS_2_4_BUG
+# Work around aliasing bugs - developers should comment this out
+CFLAGS += -fno-strict-aliasing
+CXXFLAGS += -fno-strict-aliasing
+
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -L/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm
diff --git a/configs/sunos5-gcc b/configs/sunos5-gcc
index 77b293c5452..c5e443fc75e 100644
--- a/configs/sunos5-gcc
+++ b/configs/sunos5-gcc
@@ -28,6 +28,10 @@ CXXFLAGS = $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES) \
GLUT_CFLAGS = -fexceptions -DSOLARIS_2_4_BUG
+# Work around aliasing bugs - developers should comment this out
+CFLAGS += -fno-strict-aliasing
+CXXFLAGS += -fno-strict-aliasing
+
# Library/program dependencies
EXTRA_LIB_PATH=-L/usr/openwin/lib
diff --git a/configs/sunos5-v9-cc-g++ b/configs/sunos5-v9-cc-g++
index 37b775cc08e..8656251e3b7 100644
--- a/configs/sunos5-v9-cc-g++
+++ b/configs/sunos5-v9-cc-g++
@@ -21,6 +21,9 @@ CXX_ARCH_FLAGS = -m64
CXXFLAGS = $(CXX_WARN_FLAGS) $(CXX_OPT_FLAGS) $(CXX_PIC_FLAGS) $(CXX_ARCH_FLAGS) $(DEFINES) \
-I/usr/openwin/include
+# Work around aliasing bugs - developers should comment this out
+CXXFLAGS += -fno-strict-aliasing
+
CFLAGS = -xarch=v9 -KPIC -O -I/usr/openwin/include -I/usr/dt/include -DUSE_XSHM -DPTHREADS
#CXXFLAGS = -xarch=v9 -KPIC -O -I/usr/openwin/include -I/usr/dt/include -DPTHREADS
GLUT_CFLAGS = -DSOLARIS_2_4_BUG
diff --git a/configs/ultrix-gcc b/configs/ultrix-gcc
index 5c0f22d7ae7..455b6932d37 100644
--- a/configs/ultrix-gcc
+++ b/configs/ultrix-gcc
@@ -12,6 +12,10 @@ CXXFLAGS = -pedantic -O2
GLUT_CFLAGS = -fexceptions
MKLIB_OPTIONS = -static
+# Work around aliasing bugs - developers should comment this out
+CFLAGS += -fno-strict-aliasing
+CXXFLAGS += -fno-strict-aliasing
+
GL_LIB_NAME = libGL.a
GLU_LIB_NAME = libGLU.a
GLUT_LIB_NAME = libglut.a
diff --git a/docs/download.html b/docs/download.html
index 5c3989ef8c8..84451b85fab 100644
--- a/docs/download.html
+++ b/docs/download.html
@@ -9,7 +9,7 @@
<H1>Downloading</H1>
<p>
-Last stable release: <b>7.0.1</b>
+Last stable release: <b>7.0.2</b>
</p>
<p>
diff --git a/docs/fbdev-dri.html b/docs/fbdev-dri.html
index c7f59bb0c2f..0d9e52cee47 100644
--- a/docs/fbdev-dri.html
+++ b/docs/fbdev-dri.html
@@ -28,6 +28,12 @@ Xlib interfaces allowing some degree of application portability between
the X and X-less environments.
</p>
+<p>
+Some of the files needed for building this configuration are not included
+in the normal Mesa releases so you'll need to get the latest sources
+sources from the <a href="repository.html">git repository</a>.
+</p>
+
<h1>2. Compilation</h1>
diff --git a/docs/helpwanted.html b/docs/helpwanted.html
index 346f093d643..4cd92b97a95 100644
--- a/docs/helpwanted.html
+++ b/docs/helpwanted.html
@@ -6,7 +6,7 @@
<BODY>
-<H1>Help Wanted</H1>
+<H1>Help Wanted / To-Do List</H1>
<p>
We can always use more help with the Mesa project.
@@ -14,36 +14,13 @@ Here are some specific ideas and areas where help would be appreciated:
</p>
<ol>
-<li><p>
- Generate the src/mesa/main/enums.c file with a Python script which
- uses the gl_API.xml file.
- </p>
-<li><p>
- Try to auto-generate the display list "save" functions seen in dlist.c
- using a Python script and the gl_API.xml file.
- The gl_API.xml file will probably need a new tag to indicate whether or
- not each function gets compiled into display lists.
- </p>
-<li><p>
- Maintenance of assembly language files on Linux, Windows and SPARC systems.
- </p>
-<li><p>
- Help to incorporate the 3Dlabs' shading language compiler for OpenGL 2.0.
- </p>
-<li><p>
- Implement assembly language (SSE/MMX) code generation for
- vertex/fragment programs.
- </p>
-<li><p>
- Windows 98/NT driver building, maintenance and testing
- (Karl Schultz has been doing a great job of this lately).
- </p>
-<li><p>
- Maintenance and testing of various drivers, such as DOS/DJGPP, GGI, etc.
- </p>
-<li><p>
- Write new tests for Glean.
- </p>
+<li>
+Enable -Wstrict-aliasing=2 -fstrict-aliasing and track down aliasing
+issues in the code.
+<li>
+Windows 98/NT driver building, maintenance and testing
+<li>
+Maintenance and testing of lesser-used drivers, such as DOS/DJGPP, GGI, etc.
</ol>
diff --git a/docs/install.html b/docs/install.html
index 804dee59b5a..4cd0d4c9dcc 100644
--- a/docs/install.html
+++ b/docs/install.html
@@ -57,50 +57,31 @@ the DRI hardware drivers.
<li>
<p>
-DRM kernel modules and header files from the
-<a href="http://dri.sf.net/" target="_parent">DRI</a> project.
+For Mesa 7.0.2 <a href="http://dri.freedesktop.org/libdrm/">
+DRM version 2.3</a> is required.
</p>
-
<p>
-If you don't already have the DRM file, you can get the sources from
-CVS by doing:
-<pre>
-cvs -z3 -d:pserver:anonymous@anoncvs.freedesktop.org:/cvs/dri co drm
-</pre>
-<p>
-See the <a href="http://dri.freedesktop.org/wiki/Building" target="_parent">
-DRI Building Instructions</a> for the steps to build the DRM modules. Mesa
-6.5 requires at least libdrm 2.0.1 or greater.
-</p>
-<p>
-You can verify that the DRM files have been properly installed by
-running <code>pkg-config --modversion libdrm</code>
-
-</li>
-
-<li>
-Recent /usr/include/GL/glxproto.h file.
-<p>You'll need this if you get any errors about _GLXvop_BindTexImageEXT
-being undefined.
+To check if you already have it, run:
+<br>
+<code>pkg-config --modversion libdrm</code>
</p>
<p>
-Download/install the
-<a href="http://gitweb.freedesktop.org/?p=xorg/proto/glproto.git">glproto</a>
-module from X.org git, or grab the
-<A href="http://webcvs.freedesktop.org/*checkout*/xorg/proto/GL/glxproto.h?rev=1.9&content-type=text%2Fplain">glxproto.h file</a> and put it in the
-Mesa/include/GL/ directory.
+You can download and install a <a href="http://dri.freedesktop.org/libdrm/">
+tarball release</a> or get the code from git with:
+<br>
+<code>git clone git://anongit.freedesktop.org/git/mesa/drm</code>
+<br>
+Then revert to the drm-2.3.0 tag with:
+<br>
+<code>git-reset --hard drm-2.3.0</code>
</p>
-
</li>
-<li>DRI-enabled X server.
-<p>Visit
-<a href="http://www.xfree86.org" target="_parent">XFree86</a>
-or
+<li>
+Relatively recent
<a href="http://freedesktop.org/wiki/Software_2fXserver" target="_parent">
-X.org</a>
-for more information.
-</p>
+X.org</a> release.
+Mesa depends on a number of X header and library files.
</li>
</ol>
@@ -287,7 +268,15 @@ already installed, you'll have to choose different directories, like
To install Mesa's headers and libraries, run <code>make install</code>.
But first, check the Mesa/configs/default file and examine the values
of the <b>INSTALL_DIR</b> and <b>DRI_DRIVER_INSTALL_DIR</b> variables.
-Change them if needed, then run <code>make install</code>
+Change them if needed, then run <code>make install</code>.
+</p>
+
+<p>
+The variable
+<b>DESTDIR</b> may also be used to install the contents to a temporary
+staging directory.
+This can be useful for package management.
+For example: <code>make install DESTDIR=/somepath/</code>
</p>
<p>
@@ -298,6 +287,26 @@ This is a handy way to compare multiple OpenGL implementations.
</p>
+<H3>1.5 pkg-config support</H3>
+
+<p>
+Running <code>make install</code> will install package configuration files
+for the pkg-config utility.
+</p>
+
+<p>
+When compiling your OpenGL application you can use pkg-config to determine
+the proper compiler and linker flags.
+</p>
+
+<p>
+For example, compiling and linking a GLUT application can be done with:
+</p>
+<pre>
+ gcc `pkg-config --cflags --libs glut` mydemo.c -o mydemo
+</pre>
+
+<br>
<a name="windows">
<H2>2. Windows Compilation and Installation</H1>
diff --git a/docs/license.html b/docs/license.html
index 944a5ddf00c..44b980d93da 100644
--- a/docs/license.html
+++ b/docs/license.html
@@ -86,29 +86,32 @@ and their respective licenses.
<H1>Mesa Component Licenses</H1>
<pre>
-Component Location Primary Author License
-----------------------------------------------------------------------------
-Main Mesa code src/mesa/ Brian Paul Mesa (MIT)
+Component Location License
+------------------------------------------------------------------
+Main Mesa code src/mesa/ Mesa (MIT)
-Device drivers src/mesa/drivers/* See drivers See drivers
+Device drivers src/mesa/drivers/* MIT, generally
-Ext headers include/GL/glext.h SGI SGI Free B
+Ext headers include/GL/glext.h Khronos
include/GL/glxext.h
-GLUT src/glut/ Mark Kilgard Mark's copyright
+GLUT src/glut/ Mark Kilgard's copyright
-Mesa GLU library src/glu/mesa/ Brian Paul GNU-LGPL
+SGI GLU library src/glu/sgi/ SGI Free B
-SGI GLU library src/glu/sgi/ SGI SGI Free B
+demo programs progs/demos/ see source files
-demo programs progs/demos/ various see source files
+X demos progs/xdemos/ see source files
-X demos progs/xdemos/ Brian Paul see source files
+SGI demos progs/samples/ SGI license
-SGI demos progs/samples/ SGI SGI copyright
-
-RedBook demos progs/redbook/ SGI SGI copyright
+RedBook demos progs/redbook/ SGI license
</pre>
+<p>
+In general, consult the source files for license terms.
+</p>
+
+
</body>
</html>
diff --git a/docs/modelers.html b/docs/modelers.html
index b93f4d8b760..aae96869594 100644
--- a/docs/modelers.html
+++ b/docs/modelers.html
@@ -28,7 +28,7 @@
</li><li><a href="http://innovation3d.sourceforge.net/" target="_parent">Innovation3D</a>
- 3D modeling program
</li><li><a href="http://mesa3d.sourceforge.net/notfound.html" target="_parent">KWRL</a> - VRML browser
- </li><li><a href="http://www.vermontel.com/%7Ecmorley/vrml.html" target="_parent">LibVRML97/Lookat</a>
+ </li><li><a href="http://www.openvrml.org/" target="_parent">LibVRML97/Lookat</a>
- VRML viewer
</li><li><a href="http://aig.cs.man.ac.uk/systems/Maverik/" target="_parent">Maverik</a>
- VR graphics and interaction system
diff --git a/docs/news.html b/docs/news.html
index e5f2adb5fec..79fc599bf03 100644
--- a/docs/news.html
+++ b/docs/news.html
@@ -11,6 +11,13 @@
<H1>News</H1>
+<h2>November 10, 2007</h2>
+<p>
+<a href="relnotes-7.0.2.html">Mesa 7.0.2</a> is released.
+This is a bug-fix release.
+</p>
+
+
<h2>August 3, 2007</h2>
<p>
<a href="relnotes-7.0.1.html">Mesa 7.0.1</a> is released.
diff --git a/docs/relnotes-7.0.2.html b/docs/relnotes-7.0.2.html
index d06171e90f6..7a7c70f13b6 100644
--- a/docs/relnotes-7.0.2.html
+++ b/docs/relnotes-7.0.2.html
@@ -8,7 +8,7 @@
<body bgcolor="#eeeeee">
-<H1>Mesa 7.0.2 Release Notes / (TBD) 2007</H1>
+<H1>Mesa 7.0.2 Release Notes / November 10, 2007</H1>
<p>
Mesa 7.0.2 is a stable release with bug fixes since version 7.0.
@@ -17,11 +17,25 @@ Mesa 7.0.2 is a stable release with bug fixes since version 7.0.
<h2>MD5 checksums</h2>
<pre>
+c9cf607f36e7e50172f5f9c7d552c34e MesaLib-7.0.2.tar.gz
+93e6ed7924ff069a4f883b4fce5349dc MesaLib-7.0.2.tar.bz2
+10c324c3613f90f059cb8429f700f300 MesaLib-7.0.2.zip
+aa8b1244a5de1d23e5814bf9b67f1435 MesaDemos-7.0.2.tar.gz
+11a10410bae7be85cf25bc7119966468 MesaDemos-7.0.2.tar.bz2
+1dd0b5fd6d69430a2fd76a6adbfd8fff MesaDemos-7.0.2.zip
+a7dbf25c025955858bd2d89a6eb6db4c MesaGLUT-7.0.2.tar.gz
+3a33f8efc8c58a592a854cfc7a643286 MesaGLUT-7.0.2.tar.bz2
+eba4ef2aa8c362ead81b54357f1903a3 MesaGLUT-7.0.2.zip
</pre>
<h2>New features</h2>
<ul>
+<li>Updated Windows VC7 project files
+<li>Added DESTDIR variable for 'make install'
+<li>Added pkg-config files for gl, glu, glut and glw libraries
+<li>Added bluegene-xlc-osmesa and catamount-osmesa-pgi configs
+<li>Support for Intel G33/Q33/Q35 graphics chipsets
</ul>
<h2>Bug fixes</h2>
@@ -33,19 +47,21 @@ Mesa 7.0.2 is a stable release with bug fixes since version 7.0.
<li>Fixed a blending/banding issue (bug 11931)
<li>Fixed a GLU matrix inversion bug (#6748)
<li>Fixed problem with large glDrawArrays calls and indirect rendering (bug 12141)
-</ul>
-
-
-<h2>Changes</h2>
-<ul>
-</ul>
-
-
-<h2>To Do (someday) items</h2>
-<ul>
-<li>Switch to freeglut
-<li>Fix linux-glide target/driver.
-<li>Improved lambda and derivative calculation for frag progs.
+<li>Fixed an assortment of i965 driver bugs
+<li>Fixed x86-64 vertex transformation bug (12216)
+<li>Fixed X server crash caused by multiple indirect rendering clients
+<li>Parsing of state.texgen in ARB vertex/fragment programs didn't work (bug 12313)
+<li>Fixed a glCopyPixels/glPixelZoom bug (12417)
+<li>Fixed a bug when using glMaterial in display lists (bug 10604)
+<li>Fixed a few GLUT/Fortran issues (Bill Mitchell)
+<li>Fixed Blender crash bug (12164)
+<li>Fixed some issues preventing cross-compiling
+<li>Fixed up broken GL_ATI_separate_stencil extension
+<li>glDrawArrays(count=0) led to a crash
+<li>Fix SSE code gen memory leak, possible crash
+<li>Fixed MMX 565 rgb conversion problem (bug 12614)
+<li>Added -fno-strict-aliasing and -fPIC flags for gcc
+<li>Fixed Blender crash in Unichrome driver (bug 13142)
</ul>
diff --git a/progs/beos/.gitignore b/progs/beos/.gitignore
new file mode 100644
index 00000000000..53011ca2e6c
--- /dev/null
+++ b/progs/beos/.gitignore
@@ -0,0 +1,3 @@
+demo
+GLInfo
+sample
diff --git a/progs/beos/Makefile b/progs/beos/Makefile
index 45782fb3cf7..491e8e442d1 100644
--- a/progs/beos/Makefile
+++ b/progs/beos/Makefile
@@ -10,7 +10,9 @@ include $(TOP)/configs/current
#
# Modified by Philippe Houdoin
-LDFLAGS += -soname=_APP_ $(APP_LIB_DEPS)
+LDFLAGS += -soname=_APP_
+
+LIBS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) $(APP_LIB_DEPS)
INCLUDES = -I. -I- -I../../include
@@ -21,13 +23,13 @@ clean:
rm -f *.o
demo: demo.o
- $(LD) demo.o $(LDFLAGS) -o $@
+ $(LD) demo.o $(LDFLAGS) $(LIBS) -o $@
sample: sample.o
- $(LD) sample.o $(LDFLAGS) -o $@
+ $(LD) sample.o $(LDFLAGS) $(LIBS) -o $@
GTLInfo: GLInfo.o
- $(LD) GLInfo.o $(INCLUDES) $(LDFLAGS) -o $@
+ $(LD) GLInfo.o $(INCLUDES) $(LDFLAGS) $(LIBS) -o $@
.cpp.o:
$(CC) -c $< $(INCLUDES) $(CFLAGS) -o $@
diff --git a/progs/demos/Makefile b/progs/demos/Makefile
index cf96828ed7f..1014ccce893 100644
--- a/progs/demos/Makefile
+++ b/progs/demos/Makefile
@@ -13,6 +13,8 @@ OSMESA32_LIBS = -L$(TOP)/$(LIB_DIR) -lglut -lOSMesa32 -lGLU -lGL $(APP_LIB_DEPS)
LIB_DEP = $(TOP)/$(LIB_DIR)/$(GL_LIB_NAME) $(TOP)/$(LIB_DIR)/$(GLU_LIB_NAME) $(TOP)/$(LIB_DIR)/$(GLUT_LIB_NAME)
+LIBS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) $(APP_LIB_DEPS)
+
PROGS = \
arbfplight \
arbfslight \
@@ -74,7 +76,7 @@ PROGS = \
# make executable from .c file:
.c: $(LIB_DEP) readtex.o
- $(CC) -I$(INCDIR) $(CFLAGS) $< readtex.o $(APP_LIB_DEPS) -o $@
+ $(CC) -I$(INCDIR) $(CFLAGS) $(LDFLAGS) $< readtex.o $(LIBS) -o $@
##### TARGETS #####
@@ -118,35 +120,35 @@ extfuncs.h: $(TOP)/progs/util/extfuncs.h
reflect: reflect.o showbuffer.o readtex.o
- $(CC) reflect.o showbuffer.o readtex.o $(APP_LIB_DEPS) -o $@
+ $(CC) $(LDFLAGS) reflect.o showbuffer.o readtex.o $(LIBS) -o $@
reflect.o: reflect.c showbuffer.h
$(CC) -c -I$(INCDIR) $(CFLAGS) reflect.c
shadowtex: shadowtex.o showbuffer.o
- $(CC) shadowtex.o showbuffer.o $(APP_LIB_DEPS) -o $@
+ $(CC) $(LDFLAGS) shadowtex.o showbuffer.o $(LIBS) -o $@
shadowtex.o: shadowtex.c showbuffer.h
$(CC) -c -I$(INCDIR) $(CFLAGS) shadowtex.c
gloss: gloss.o trackball.o readtex.o
- $(CC) gloss.o trackball.o readtex.o $(APP_LIB_DEPS) -o $@
+ $(CC) $(LDFLAGS) gloss.o trackball.o readtex.o $(LIBS) -o $@
gloss.o: gloss.c trackball.h
$(CC) -c -I$(INCDIR) $(CFLAGS) gloss.c
engine: engine.o trackball.o readtex.o
- $(CC) engine.o trackball.o readtex.o $(APP_LIB_DEPS) -o $@
+ $(CC) $(LDFLAGS) engine.o trackball.o readtex.o $(LIBS) -o $@
engine.o: engine.c trackball.h
$(CC) -c -I$(INCDIR) $(CFLAGS) engine.c
fslight: fslight.o
- $(CC) fslight.o $(APP_LIB_DEPS) -o $@
+ $(CC) $(LDFLAGS) fslight.o $(LIBS) -o $@
fslight.o: fslight.c extfuncs.h
$(CC) -c -I$(INCDIR) $(CFLAGS) fslight.c
diff --git a/progs/directfb/.gitignore b/progs/directfb/.gitignore
new file mode 100644
index 00000000000..55d65fb5b08
--- /dev/null
+++ b/progs/directfb/.gitignore
@@ -0,0 +1,4 @@
+df_gears
+df_morph3d
+df_reflect
+multi_window
diff --git a/progs/egl/.gitignore b/progs/egl/.gitignore
new file mode 100644
index 00000000000..1751108235a
--- /dev/null
+++ b/progs/egl/.gitignore
@@ -0,0 +1,5 @@
+demo1
+demo2
+demo3
+eglgears
+eglinfo
diff --git a/progs/fbdev/.gitignore b/progs/fbdev/.gitignore
new file mode 100644
index 00000000000..b9ddf559fd5
--- /dev/null
+++ b/progs/fbdev/.gitignore
@@ -0,0 +1 @@
+glfbdevtest
diff --git a/progs/fp/.gitignore b/progs/fp/.gitignore
new file mode 100644
index 00000000000..b265f1fed76
--- /dev/null
+++ b/progs/fp/.gitignore
@@ -0,0 +1,42 @@
+point-position
+readtex.c
+readtex.h
+tri-abs
+tri-add
+tri-cmp
+tri-cos
+tri-depth
+tri-depth2
+tri-depthwrite
+tri-depthwrite2
+tri-dp3
+tri-dp4
+tri-dph
+tri-dst
+tri-ex2
+tri-flr
+tri-frc
+tri-kil
+tri-lg2
+tri-lit
+tri-lrp
+tri-mad
+tri-max
+tri-min
+tri-mov
+tri-mul
+tri-param
+tri-position
+tri-pow
+tri-rcp
+tri-rsq
+tri-scs
+tri-sge
+tri-sge2
+tri-sin
+tri-slt
+tri-sub
+tri-swz
+tri-swz2
+tri-tex
+tri-xpd
diff --git a/progs/glsl/.gitignore b/progs/glsl/.gitignore
new file mode 100644
index 00000000000..b63693bbb5a
--- /dev/null
+++ b/progs/glsl/.gitignore
@@ -0,0 +1,13 @@
+bitmap
+brick
+bump
+deriv
+extfuncs.h
+mandelbrot
+noise
+points
+readtex.c
+readtex.h
+texdemo1
+trirast
+toyball
diff --git a/progs/glsl/Makefile b/progs/glsl/Makefile
index 37fa312c30c..546cd233eb2 100644
--- a/progs/glsl/Makefile
+++ b/progs/glsl/Makefile
@@ -7,6 +7,8 @@ INCDIR = $(TOP)/include
LIB_DEP = $(TOP)/$(LIB_DIR)/$(GL_LIB_NAME) $(TOP)/$(LIB_DIR)/$(GLU_LIB_NAME) $(TOP)/$(LIB_DIR)/$(GLUT_LIB_NAME)
+LIBS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) $(APP_LIB_DEPS)
+
PROGS = \
brick \
bump \
@@ -25,7 +27,7 @@ PROGS = \
# make executable from .c file:
.c: $(LIB_DEP)
- $(CC) -I$(INCDIR) $(CFLAGS) $< $(APP_LIB_DEPS) -o $@
+ $(CC) -I$(INCDIR) $(CFLAGS) $(LDFLAGS) $< $(LIBS) -o $@
##### TARGETS #####
@@ -57,7 +59,7 @@ mandelbrot.c: extfuncs.h
toyball.c: extfuncs.h
texdemo1: texdemo1.o readtex.o
- $(CC) -I$(INCDIR) $(CFLAGS) texdemo1.o readtex.o $(APP_LIB_DEPS) -o $@
+ $(CC) -I$(INCDIR) $(CFLAGS) $(LDFLAGS) texdemo1.o readtex.o $(LIBS) -o $@
texdemo1.o: texdemo1.c readtex.h extfuncs.h
$(CC) -c -I$(INCDIR) $(CFLAGS) texdemo1.c
diff --git a/progs/glsl/bump.c b/progs/glsl/bump.c
index a6846acf7e4..11f87ab1274 100644
--- a/progs/glsl/bump.c
+++ b/progs/glsl/bump.c
@@ -247,7 +247,7 @@ LoadAndCompileShader(GLuint shader, const char *text)
GLchar log[1000];
GLsizei len;
glGetShaderInfoLog_func(shader, 1000, &len, log);
- fprintf(stderr, "brick: problem compiling shader: %s\n", log);
+ fprintf(stderr, "bump: problem compiling shader: %s\n", log);
exit(1);
}
else {
@@ -267,12 +267,12 @@ ReadShader(GLuint shader, const char *filename)
char *buffer = (char*) malloc(max);
FILE *f = fopen(filename, "r");
if (!f) {
- fprintf(stderr, "brick: Unable to open shader file %s\n", filename);
+ fprintf(stderr, "bump: Unable to open shader file %s\n", filename);
exit(1);
}
n = fread(buffer, 1, max, f);
- printf("brick: read %d bytes from shader file %s\n", n, filename);
+ printf("bump: read %d bytes from shader file %s\n", n, filename);
if (n > 0) {
buffer[n] = 0;
LoadAndCompileShader(shader, buffer);
diff --git a/progs/glsl/mandelbrot.c b/progs/glsl/mandelbrot.c
index 7a2bad6dde3..e7b2b04b0df 100644
--- a/progs/glsl/mandelbrot.c
+++ b/progs/glsl/mandelbrot.c
@@ -172,7 +172,7 @@ LoadAndCompileShader(GLuint shader, const char *text)
GLchar log[1000];
GLsizei len;
glGetShaderInfoLog_func(shader, 1000, &len, log);
- fprintf(stderr, "brick: problem compiling shader: %s\n", log);
+ fprintf(stderr, "mandelbrot: problem compiling shader: %s\n", log);
exit(1);
}
else {
@@ -192,12 +192,12 @@ ReadShader(GLuint shader, const char *filename)
char *buffer = (char*) malloc(max);
FILE *f = fopen(filename, "r");
if (!f) {
- fprintf(stderr, "brick: Unable to open shader file %s\n", filename);
+ fprintf(stderr, "mandelbrot: Unable to open shader file %s\n", filename);
exit(1);
}
n = fread(buffer, 1, max, f);
- printf("brick: read %d bytes from shader file %s\n", n, filename);
+ printf("mandelbrot: read %d bytes from shader file %s\n", n, filename);
if (n > 0) {
buffer[n] = 0;
LoadAndCompileShader(shader, buffer);
diff --git a/progs/glsl/noise.c b/progs/glsl/noise.c
index a26a8059449..adccd1a7c8f 100644
--- a/progs/glsl/noise.c
+++ b/progs/glsl/noise.c
@@ -188,7 +188,7 @@ LoadAndCompileShader(GLuint shader, const char *text)
GLchar log[1000];
GLsizei len;
glGetShaderInfoLog_func(shader, 1000, &len, log);
- fprintf(stderr, "brick: problem compiling shader: %s\n", log);
+ fprintf(stderr, "noise: problem compiling shader: %s\n", log);
exit(1);
}
else {
diff --git a/progs/glsl/toyball.c b/progs/glsl/toyball.c
index cef52c04a6c..3aa096161ae 100644
--- a/progs/glsl/toyball.c
+++ b/progs/glsl/toyball.c
@@ -185,7 +185,7 @@ LoadAndCompileShader(GLuint shader, const char *text)
GLchar log[1000];
GLsizei len;
glGetShaderInfoLog_func(shader, 1000, &len, log);
- fprintf(stderr, "brick: problem compiling shader: %s\n", log);
+ fprintf(stderr, "toyball: problem compiling shader: %s\n", log);
exit(1);
}
else {
@@ -205,12 +205,12 @@ ReadShader(GLuint shader, const char *filename)
char *buffer = (char*) malloc(max);
FILE *f = fopen(filename, "r");
if (!f) {
- fprintf(stderr, "brick: Unable to open shader file %s\n", filename);
+ fprintf(stderr, "toyball: Unable to open shader file %s\n", filename);
exit(1);
}
n = fread(buffer, 1, max, f);
- printf("brick: read %d bytes from shader file %s\n", n, filename);
+ printf("toyball: read %d bytes from shader file %s\n", n, filename);
if (n > 0) {
buffer[n] = 0;
LoadAndCompileShader(shader, buffer);
diff --git a/progs/miniglx/.gitignore b/progs/miniglx/.gitignore
new file mode 100644
index 00000000000..f630f591f62
--- /dev/null
+++ b/progs/miniglx/.gitignore
@@ -0,0 +1,6 @@
+manytex
+miniglxsample
+miniglxtest
+sample_server
+sample_server2
+texline
diff --git a/progs/osdemos/.gitignore b/progs/osdemos/.gitignore
new file mode 100644
index 00000000000..5c78f124813
--- /dev/null
+++ b/progs/osdemos/.gitignore
@@ -0,0 +1,8 @@
+osdemo
+osdemo16
+osdemo32
+ostest1
+readtex.c
+readtex.h
+showbuffer.c
+showbuffer.h
diff --git a/progs/osdemos/Makefile b/progs/osdemos/Makefile
index f8cba9ee99a..148d603b353 100644
--- a/progs/osdemos/Makefile
+++ b/progs/osdemos/Makefile
@@ -13,6 +13,8 @@ OSMESA32_LIBS = -L$(TOP)/$(LIB_DIR) -lglut -lOSMesa32 -lGLU -lGL $(APP_LIB_DEPS)
LIB_DEP = $(TOP)/$(LIB_DIR)/$(GL_LIB_NAME) $(TOP)/$(LIB_DIR)/$(GLU_LIB_NAME) $(TOP)/$(LIB_DIR)/$(GLUT_LIB_NAME)
+LIBS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) $(APP_LIB_DEPS)
+
PROGS = \
osdemo \
ostest1
@@ -26,7 +28,7 @@ PROGS = \
# make executable from .c file:
.c: $(LIB_DEP) readtex.o
- $(CC) -I$(INCDIR) $(CFLAGS) $< readtex.o $(APP_LIB_DEPS) -o $@
+ $(CC) -I$(INCDIR) $(CFLAGS) $(LDFLAGS) $< readtex.o $(LIBS) -o $@
##### TARGETS #####
@@ -56,19 +58,19 @@ showbuffer.o: showbuffer.c showbuffer.h
# special case: need the -lOSMesa library:
osdemo: osdemo.c
- $(CC) -I$(INCDIR) $(CFLAGS) osdemo.c $(OSMESA_LIBS) -o $@
+ $(CC) -I$(INCDIR) $(CFLAGS) $(LDFLAGS) osdemo.c $(OSMESA_LIBS) -o $@
# special case: need the -lOSMesa library:
ostest1: ostest1.c
- $(CC) -I$(INCDIR) $(CFLAGS) ostest1.c $(OSMESA_LIBS) -o $@
+ $(CC) -I$(INCDIR) $(CFLAGS) $(LDFLAGS) ostest1.c $(OSMESA_LIBS) -o $@
# another special case: need the -lOSMesa16 library:
osdemo16: osdemo16.c
- $(CC) -I$(INCDIR) $(CFLAGS) osdemo16.c $(OSMESA16_LIBS) -o $@
+ $(CC) -I$(INCDIR) $(CFLAGS) $(LDFLAGS) osdemo16.c $(OSMESA16_LIBS) -o $@
# another special case: need the -lOSMesa32 library:
osdemo32: osdemo32.c
- $(CC) -I$(INCDIR) $(CFLAGS) osdemo32.c $(OSMESA32_LIBS) -o $@
+ $(CC) -I$(INCDIR) $(CFLAGS) $(LDFLAGS) osdemo32.c $(OSMESA32_LIBS) -o $@
diff --git a/progs/redbook/Makefile b/progs/redbook/Makefile
index febc74441b9..7ba676c265b 100644
--- a/progs/redbook/Makefile
+++ b/progs/redbook/Makefile
@@ -7,6 +7,8 @@ INCDIR = $(TOP)/include
LIB_DEP = $(TOP)/$(LIB_DIR)/$(GL_LIB_NAME) $(TOP)/$(LIB_DIR)/$(GLU_LIB_NAME) $(TOP)/$(LIB_DIR)/$(GLUT_LIB_NAME)
+LIBS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) $(APP_LIB_DEPS)
+
PROGS = aaindex aapoly aargb accanti accpersp alpha alpha3D anti \
bezcurve bezmesh checker clip colormat cube depthcue dof \
double drawf feedback fog fogindex font hello image light \
@@ -24,7 +26,7 @@ PROGS = aaindex aapoly aargb accanti accpersp alpha alpha3D anti \
.SUFFIXES: .c
.c: $(LIB_DEP)
- $(CC) -I$(INCDIR) $(CFLAGS) $< $(APP_LIB_DEPS) -o $@
+ $(CC) -I$(INCDIR) $(CFLAGS) $(LDFLAGS) $< $(LIBS) -o $@
diff --git a/progs/samples/Makefile b/progs/samples/Makefile
index 063008dccff..6509a559a50 100644
--- a/progs/samples/Makefile
+++ b/progs/samples/Makefile
@@ -7,6 +7,8 @@ INCDIR = $(TOP)/include
LIB_DEP = $(TOP)/$(LIB_DIR)/$(GL_LIB_NAME) $(TOP)/$(LIB_DIR)/$(GLU_LIB_NAME) $(TOP)/$(LIB_DIR)/$(GLUT_LIB_NAME)
+LIBS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) $(APP_LIB_DEPS)
+
PROGS = accum bitmap1 bitmap2 blendeq blendxor copy cursor depth eval fog \
font line logo nurb olympic overlay point prim quad select \
shape sphere star stencil stretch texture tri wave
@@ -18,7 +20,7 @@ PROGS = accum bitmap1 bitmap2 blendeq blendxor copy cursor depth eval fog \
.SUFFIXES: .c
.c: $(LIB_DEP)
- $(CC) -I$(INCDIR) $(CFLAGS) $< $(APP_LIB_DEPS) -o $@
+ $(CC) -I$(INCDIR) $(CFLAGS) $(LDFLAGS) $< $(LIBS) -o $@
##### TARGETS #####
@@ -27,7 +29,7 @@ default: $(PROGS)
sphere: sphere.o readtex.o
- $(CC) -I$(INCDIR) $(CFLAGS) sphere.o readtex.o $(APP_LIB_DEPS) -o $@
+ $(CC) -I$(INCDIR) $(CFLAGS) $(LDFLAGS) sphere.o readtex.o $(LIBS) -o $@
sphere.o: sphere.c readtex.h
$(CC) -c -I$(INCDIR) $(CFLAGS) sphere.c
diff --git a/progs/slang/.gitignore b/progs/slang/.gitignore
new file mode 100644
index 00000000000..8a42b018e65
--- /dev/null
+++ b/progs/slang/.gitignore
@@ -0,0 +1,3 @@
+cltest
+sotest
+vstest
diff --git a/progs/tools/trace/.gitignore b/progs/tools/trace/.gitignore
new file mode 100644
index 00000000000..afe0c5829e4
--- /dev/null
+++ b/progs/tools/trace/.gitignore
@@ -0,0 +1 @@
+gltrace.cc
diff --git a/progs/trivial/.gitignore b/progs/trivial/.gitignore
new file mode 100644
index 00000000000..1c49fdd55fe
--- /dev/null
+++ b/progs/trivial/.gitignore
@@ -0,0 +1,65 @@
+clear
+dlist-dangling
+dlist-edgeflag
+dlist-edgeflag-dangling
+drawarrays
+drawelements
+drawrange
+line
+line-clip
+line-cull
+line-userclip
+line-userclip-clip
+line-userclip-nop
+line-userclip-nop-clip
+lineloop
+lineloop-clip
+point
+point-clip
+point-param
+point-wide
+poly
+poly-flat
+poly-unfilled
+quad
+quad-clip
+quad-clip-all-vertices
+quad-clip-nearplane
+quad-degenerate
+quad-flat
+quad-offset-factor
+quad-offset-unfilled
+quad-offset-units
+quad-tex-2d
+quad-tex-3d
+quad-tex-pbo
+quad-unfilled
+quads
+quadstrip
+quadstrip-flat
+readtex.c
+readtex.h
+tri
+tri-blend
+tri-clip
+tri-cull
+tri-dlist
+tri-edgeflag
+tri-flat
+tri-flat-clip
+tri-tex-3d
+tri-unfilled
+tri-unfilled-clip
+tri-unfilled-smooth
+tri-unfilled-userclip
+tri-userclip
+tristrip
+tristrip-clip
+vbo-drawarrays
+vbo-drawelements
+vbo-drawrange
+vp-array
+vp-clip
+vp-line-clip
+vp-tri
+vp-unfilled
diff --git a/progs/vp/.gitignore b/progs/vp/.gitignore
new file mode 100644
index 00000000000..a5ff9935254
--- /dev/null
+++ b/progs/vp/.gitignore
@@ -0,0 +1 @@
+vp-tris
diff --git a/progs/xdemos/Makefile b/progs/xdemos/Makefile
index ec85464bec0..5511b8c5f42 100644
--- a/progs/xdemos/Makefile
+++ b/progs/xdemos/Makefile
@@ -8,6 +8,8 @@ INCDIR = $(TOP)/include
LIB_DEP = $(TOP)/$(LIB_DIR)/$(GL_LIB_NAME) $(TOP)/$(LIB_DIR)/$(GLU_LIB_NAME)
+LIBS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) $(APP_LIB_DEPS)
+
PROGS = glthreads \
glxdemo \
glxgears \
@@ -37,7 +39,7 @@ PROGS = glthreads \
.SUFFIXES: .c
.c: $(LIB_DEP)
- $(CC) -I$(INCDIR) $(CFLAGS) $< $(APP_LIB_DEPS) -o $@
+ $(CC) -I$(INCDIR) $(X11_INCLUDES) $(CFLAGS) $(LDFLAGS) $< $(LIBS) -o $@
##### TARGETS #####
@@ -52,32 +54,32 @@ clean:
# special cases
pbinfo: pbinfo.o pbutil.o
- $(CC) -I$(INCDIR) $(CFLAGS) pbinfo.o pbutil.o $(APP_LIB_DEPS) -o $@
+ $(CC) $(LDFLAGS) pbinfo.o pbutil.o $(LIBS) -o $@
pbdemo: pbdemo.o pbutil.o
- $(CC) -I$(INCDIR) $(CFLAGS) pbdemo.o pbutil.o $(APP_LIB_DEPS) -o $@
+ $(CC) $(LDFLAGS) pbdemo.o pbutil.o $(LIBS) -o $@
pbinfo.o: pbinfo.c pbutil.h
- $(CC) -c -I. -I$(INCDIR) $(CFLAGS) pbinfo.c
+ $(CC) -c -I. -I$(INCDIR) $(X11_INCLUDES) $(CFLAGS) pbinfo.c
pbdemo.o: pbdemo.c pbutil.h
- $(CC) -c -I. -I$(INCDIR) $(CFLAGS) pbdemo.c
+ $(CC) -c -I. -I$(INCDIR) $(X11_INCLUDES) $(CFLAGS) pbdemo.c
pbutil.o: pbutil.c pbutil.h
- $(CC) -c -I. -I$(INCDIR) $(CFLAGS) pbutil.c
+ $(CC) -c -I. -I$(INCDIR) $(X11_INCLUDES) $(CFLAGS) pbutil.c
glxgears_fbconfig: glxgears_fbconfig.o pbutil.o
- $(CC) -I$(INCDIR) $(CFLAGS) glxgears_fbconfig.o pbutil.o $(APP_LIB_DEPS) -o $@
+ $(CC) $(LDFLAGS) glxgears_fbconfig.o pbutil.o $(LIBS) -o $@
glxgears_fbconfig.o: glxgears_fbconfig.c pbutil.h
- $(CC) -I$(INCDIR) $(CFLAGS) -c -I. $(CFLAGS) glxgears_fbconfig.c
+ $(CC) -I$(INCDIR) $(X11_INCLUDES) $(CFLAGS) -c -I. $(CFLAGS) glxgears_fbconfig.c
xrotfontdemo: xrotfontdemo.o xuserotfont.o
- $(CC) -I$(INCDIR) $(CFLAGS) xrotfontdemo.o xuserotfont.o $(APP_LIB_DEPS) -o $@
+ $(CC) $(LDFLAGS) xrotfontdemo.o xuserotfont.o $(LIBS) -o $@
xuserotfont.o: xuserotfont.c xuserotfont.h
- $(CC) -c -I. -I$(INCDIR) $(CFLAGS) xuserotfont.c
+ $(CC) -c -I. -I$(INCDIR) $(X11_INCLUDES) $(CFLAGS) xuserotfont.c
xrotfontdemo.o: xrotfontdemo.c xuserotfont.h
- $(CC) -c -I. -I$(INCDIR) $(CFLAGS) xrotfontdemo.c
+ $(CC) -c -I. -I$(INCDIR) $(X11_INCLUDES) $(CFLAGS) xrotfontdemo.c
diff --git a/src/glu/Makefile b/src/glu/Makefile
index 5ddc50946aa..836baa684cb 100644
--- a/src/glu/Makefile
+++ b/src/glu/Makefile
@@ -13,9 +13,19 @@ default: $(TOP)/configs/current
(cd $$dir ; $(MAKE)) ; \
done
-install:
- $(INSTALL) -d $(INSTALL_DIR)/$(LIB_DIR)
- $(INSTALL) $(TOP)/$(LIB_DIR)/libGLU.* $(INSTALL_DIR)/$(LIB_DIR)
+# GLU pkg-config file
+pcedit = sed \
+ -e 's,@INSTALL_DIR@,$(INSTALL_DIR),' \
+ -e 's,@LIB_DIR@,$(LIB_DIR),' \
+ -e 's,@VERSION@,$(MESA_MAJOR).$(MESA_MINOR).$(MESA_TINY),'
+glu.pc: glu.pc.in
+ $(pcedit) $< > $@
+
+install: glu.pc
+ $(INSTALL) -d $(DESTDIR)$(INSTALL_DIR)/$(LIB_DIR)
+ $(INSTALL) -d $(DESTDIR)$(INSTALL_DIR)/$(LIB_DIR)/pkgconfig
+ $(INSTALL) $(TOP)/$(LIB_DIR)/libGLU.* $(DESTDIR)$(INSTALL_DIR)/$(LIB_DIR)
+ $(INSTALL) -m 644 glu.pc $(DESTDIR)$(INSTALL_DIR)/$(LIB_DIR)/pkgconfig
clean:
@for dir in $(SUBDIRS) ; do \
diff --git a/src/glu/glu.pc.in b/src/glu/glu.pc.in
new file mode 100644
index 00000000000..5d6e52a75e4
--- /dev/null
+++ b/src/glu/glu.pc.in
@@ -0,0 +1,11 @@
+prefix=@INSTALL_DIR@
+exec_prefix=${prefix}
+libdir=${exec_prefix}/@LIB_DIR@
+includedir=${prefix}/include
+
+Name: glu
+Description: Mesa OpenGL Utility library
+Requires: gl
+Version: @VERSION@
+Libs: -L${libdir} -lGLU
+Cflags: -I${includedir}
diff --git a/src/glu/sgi/Makefile b/src/glu/sgi/Makefile
index 2ce6ac04300..bb1c0a8aba5 100644
--- a/src/glu/sgi/Makefile
+++ b/src/glu/sgi/Makefile
@@ -136,7 +136,7 @@ $(TOP)/$(LIB_DIR):
# Make the library:
$(TOP)/$(LIB_DIR)/$(GLU_LIB_NAME): $(OBJECTS)
- $(TOP)/bin/mklib -o $(GLU_LIB) -linker '$(CXX)' \
+ $(TOP)/bin/mklib -o $(GLU_LIB) -linker '$(CXX)' -ldflags '$(LDFLAGS)' \
-major $(GLU_MAJOR) -minor $(GLU_MINOR) -patch $(GLU_TINY) \
-cplusplus $(MKLIB_OPTIONS) -install $(TOP)/$(LIB_DIR) \
$(GLU_LIB_DEPS) $(OBJECTS)
diff --git a/src/glu/sgi/libutil/project.c b/src/glu/sgi/libutil/project.c
index d22989c3855..356b46b8992 100644
--- a/src/glu/sgi/libutil/project.c
+++ b/src/glu/sgi/libutil/project.c
@@ -171,9 +171,9 @@ static void __gluMultMatrixVecd(const GLdouble matrix[16], const GLdouble in[4],
** Invert 4x4 matrix.
** Contributed by David Moore (See Mesa bug #6748)
*/
-static int __gluInvertMatrixd(const GLdouble m[16], GLdouble inv[16])
+static int __gluInvertMatrixd(const GLdouble m[16], GLdouble invOut[16])
{
- double det;
+ double inv[16], det;
int i;
inv[0] = m[5]*m[10]*m[15] - m[5]*m[11]*m[14] - m[9]*m[6]*m[15]
@@ -216,7 +216,7 @@ static int __gluInvertMatrixd(const GLdouble m[16], GLdouble inv[16])
det = 1.0 / det;
for (i = 0; i < 16; i++)
- inv[i] *= det;
+ invOut[i] = inv[i] * det;
return GL_TRUE;
}
diff --git a/src/glut/beos/Makefile b/src/glut/beos/Makefile
index 3ff928bfd72..165f43a6ce3 100644
--- a/src/glut/beos/Makefile
+++ b/src/glut/beos/Makefile
@@ -83,7 +83,8 @@ $(TOP)/$(LIB_DIR):
# Make the library
$(TOP)/$(LIB_DIR)/$(GLUT_LIB_NAME): depend $(OBJECTS)
- @$(TOP)/bin/mklib -o $(GLUT_LIB) -major $(GLUT_MAJOR) -minor $(GLUT_MINOR) -patch $(GLUT_TINY) \
+ @$(TOP)/bin/mklib -o $(GLUT_LIB) -ldflags '$(LDFLAGS)' \
+ -major $(GLUT_MAJOR) -minor $(GLUT_MINOR) -patch $(GLUT_TINY) \
-install $(TOP)/$(LIB_DIR) $(MKLIB_OPTIONS) $(GLUT_LIB_DEPS) \
$(OBJECTS)
diff --git a/src/glut/fbdev/Makefile b/src/glut/fbdev/Makefile
index 254ff8c098f..948be0c7ba3 100644
--- a/src/glut/fbdev/Makefile
+++ b/src/glut/fbdev/Makefile
@@ -63,16 +63,16 @@ default: depend $(TOP)/$(LIB_DIR)/$(GLUT_LIB_NAME)
# Make the library
$(TOP)/$(LIB_DIR)/$(GLUT_LIB_NAME): depend $(OBJECTS)
- $(TOP)/bin/mklib -o $(GLUT_LIB) -linker '$(CC)' \
+ $(TOP)/bin/mklib -o $(GLUT_LIB) -linker '$(CC)' -ldflags '$(LDFLAGS)' \
-major $(GLUT_MAJOR) -minor $(GLUT_MINOR) -patch $(GLUT_TINY) \
$(GLUT_LIB_DEPS) -install $(TOP)/$(LIB_DIR) \
$(MKLIB_OPTIONS) $(OBJECTS)
install:
- $(INSTALL) -d $(INSTALL_DIR)/include/GL
- $(INSTALL) -d $(INSTALL_DIR)/$(LIB_DIR)
- $(INSTALL) -m 644 $(TOP)/include/GL/glut.h $(INSTALL_DIR)/include/GL
- $(INSTALL) $(TOP)/$(LIB_DIR)/libglut* $(INSTALL_DIR)/$(LIB_DIR)
+ $(INSTALL) -d $(DESTDIR)$(INSTALL_DIR)/include/GL
+ $(INSTALL) -d $(DESTDIR)$(INSTALL_DIR)/$(LIB_DIR)
+ $(INSTALL) -m 644 $(TOP)/include/GL/glut.h $(DESTDIR)$(INSTALL_DIR)/include/GL
+ $(INSTALL) $(TOP)/$(LIB_DIR)/libglut* $(DESTDIR)$(INSTALL_DIR)/$(LIB_DIR)
# Run 'make -f Makefile.solo dep' to update the dependencies if you change
# what's included by any source file.
diff --git a/src/glut/ggi/Makefile b/src/glut/ggi/Makefile
index 1bef6c23a35..c8805c27c02 100644
--- a/src/glut/ggi/Makefile
+++ b/src/glut/ggi/Makefile
@@ -32,7 +32,7 @@ default: $(TOP)/$(LIB_DIR)/$(GLUT_LIB_NAME)
# Make the library
$(TOP)/$(LIB_DIR)/$(GLUT_LIB_NAME): depend $(OBJECTS)
- $(TOP)/bin/mklib -o $(GLUT_LIB) -linker '$(CC)' \
+ $(TOP)/bin/mklib -o $(GLUT_LIB) -linker '$(CC)' -ldflags '$(LDFLAGS)' \
-major $(GLUT_MAJOR) -minor $(GLUT_MINOR) \
-patch $(GLUT_TINY) $(MKLIB_OPTIONS) -install $(TOP)/$(LIB_DIR) \
$(GLUT_LIB_DEPS) $(OBJECTS)
diff --git a/src/glut/glx/Makefile b/src/glut/glx/Makefile
index 7e1d56b3278..806504a3fc4 100644
--- a/src/glut/glx/Makefile
+++ b/src/glut/glx/Makefile
@@ -90,17 +90,27 @@ default: $(TOP)/$(LIB_DIR)/$(GLUT_LIB_NAME)
# Make the library
$(TOP)/$(LIB_DIR)/$(GLUT_LIB_NAME): depend $(OBJECTS)
- $(TOP)/bin/mklib -o $(GLUT_LIB) -linker '$(CC)' \
+ $(TOP)/bin/mklib -o $(GLUT_LIB) -linker '$(CC)' -ldflags '$(LDFLAGS)' \
-major $(GLUT_MAJOR) -minor $(GLUT_MINOR) -patch $(GLUT_TINY) \
$(MKLIB_OPTIONS) -install $(TOP)/$(LIB_DIR) \
$(GLUT_LIB_DEPS) $(OBJECTS)
-install:
- $(INSTALL) -d $(INSTALL_DIR)/include/GL
- $(INSTALL) -d $(INSTALL_DIR)/$(LIB_DIR)
- $(INSTALL) -m 644 $(TOP)/include/GL/glut.h $(INSTALL_DIR)/include/GL
- $(INSTALL) $(TOP)/$(LIB_DIR)/libglut* $(INSTALL_DIR)/$(LIB_DIR)
+# glut pkgconfig file
+pcedit = sed \
+ -e 's,@INSTALL_DIR@,$(INSTALL_DIR),' \
+ -e 's,@LIB_DIR@,$(LIB_DIR),' \
+ -e 's,@VERSION@,$(GLUT_MAJOR).$(GLUT_MINOR).$(GLUT_TINY),'
+glut.pc: glut.pc.in
+ $(pcedit) $< > $@
+
+install: glut.pc
+ $(INSTALL) -d $(DESTDIR)$(INSTALL_DIR)/include/GL
+ $(INSTALL) -d $(DESTDIR)$(INSTALL_DIR)/$(LIB_DIR)
+ $(INSTALL) -d $(DESTDIR)$(INSTALL_DIR)/$(LIB_DIR)/pkgconfig
+ $(INSTALL) -m 644 $(TOP)/include/GL/glut.h $(DESTDIR)$(INSTALL_DIR)/include/GL
+ $(INSTALL) $(TOP)/$(LIB_DIR)/libglut* $(DESTDIR)$(INSTALL_DIR)/$(LIB_DIR)
+ $(INSTALL) -m 644 glut.pc $(DESTDIR)$(INSTALL_DIR)/$(LIB_DIR)/pkgconfig
clean:
diff --git a/src/glut/glx/glut.pc.in b/src/glut/glx/glut.pc.in
new file mode 100644
index 00000000000..f732f2990d0
--- /dev/null
+++ b/src/glut/glx/glut.pc.in
@@ -0,0 +1,11 @@
+prefix=@INSTALL_DIR@
+exec_prefix=${prefix}
+libdir=${exec_prefix}/@LIB_DIR@
+includedir=${prefix}/include
+
+Name: glut
+Description: Mesa OpenGL Utility Toolkit library
+Requires: gl glu
+Version: @VERSION@
+Libs: -L${libdir} -lglut
+Cflags: -I${includedir}
diff --git a/src/glut/mini/Makefile b/src/glut/mini/Makefile
index 177bfe2d2bf..87ff43ce569 100644
--- a/src/glut/mini/Makefile
+++ b/src/glut/mini/Makefile
@@ -55,7 +55,7 @@ default: depend $(TOP)/$(LIB_DIR)/$(GLUT_LIB_NAME)
# Make the library
$(TOP)/$(LIB_DIR)/$(GLUT_LIB_NAME): depend $(OBJECTS)
- $(TOP)/bin/mklib -o $(GLUT_LIB) -linker '$(CC)' \
+ $(TOP)/bin/mklib -o $(GLUT_LIB) -linker '$(CC)' -ldflags '$(LDFLAGS)' \
-major $(GLUT_MAJOR) -minor $(GLUT_MINOR) -patch $(GLUT_TINY) \
$(GLUT_LIB_DEPS) -install $(TOP)/$(LIB_DIR) \
$(MKLIB_OPTIONS) $(OBJECTS)
diff --git a/src/glw/Makefile b/src/glw/Makefile
index 5228cbbb721..727c5838be5 100644
--- a/src/glw/Makefile
+++ b/src/glw/Makefile
@@ -25,11 +25,21 @@ OBJECTS = $(GLW_SOURCES:.c=.o)
default: $(TOP)/$(LIB_DIR)/$(GLW_LIB_NAME)
-install:
- $(INSTALL) -d $(INSTALL_DIR)/include/GL
- $(INSTALL) -d $(INSTALL_DIR)/$(LIB_DIR)
- $(INSTALL) -m 644 *.h $(INSTALL_DIR)/include/GL
- $(INSTALL) $(TOP)/$(LIB_DIR)/libGLw.* $(INSTALL_DIR)/$(LIB_DIR)
+# GLU pkg-config file
+pcedit = sed \
+ -e 's,@INSTALL_DIR@,$(INSTALL_DIR),' \
+ -e 's,@LIB_DIR@,$(LIB_DIR),' \
+ -e 's,@VERSION@,$(MAJOR).$(MINOR).$(TINY),'
+glw.pc: glw.pc.in
+ $(pcedit) $< > $@
+
+install: glw.pc
+ $(INSTALL) -d $(DESTDIR)$(INSTALL_DIR)/include/GL
+ $(INSTALL) -d $(DESTDIR)$(INSTALL_DIR)/$(LIB_DIR)
+ $(INSTALL) -d $(DESTDIR)$(INSTALL_DIR)/$(LIB_DIR)/pkgconfig
+ $(INSTALL) -m 644 *.h $(DESTDIR)$(INSTALL_DIR)/include/GL
+ $(INSTALL) $(TOP)/$(LIB_DIR)/libGLw.* $(DESTDIR)$(INSTALL_DIR)/$(LIB_DIR)
+ $(INSTALL) -m 644 glw.pc $(DESTDIR)$(INSTALL_DIR)/$(LIB_DIR)/pkgconfig
clean:
-rm depend depend.bak
@@ -38,7 +48,7 @@ clean:
# Make the library
$(TOP)/$(LIB_DIR)/$(GLW_LIB_NAME): $(OBJECTS)
- $(TOP)/bin/mklib -o $(GLW_LIB) -linker '$(CC)' \
+ $(TOP)/bin/mklib -o $(GLW_LIB) -linker '$(CC)' -ldflags '$(LDFLAGS)' \
-major $(MAJOR) -minor $(MINOR) -patch $(TINY) \
$(MKLIB_OPTIONS) -install $(TOP)/$(LIB_DIR) \
$(GLW_LIB_DEPS) $(OBJECTS)
diff --git a/src/glw/glw.pc.in b/src/glw/glw.pc.in
new file mode 100644
index 00000000000..951e2dc2af5
--- /dev/null
+++ b/src/glw/glw.pc.in
@@ -0,0 +1,11 @@
+prefix=@INSTALL_DIR@
+exec_prefix=${prefix}
+libdir=${exec_prefix}/@LIB_DIR@
+includedir=${prefix}/include
+
+Name: glw
+Description: Mesa OpenGL widget library
+Requires: gl
+Version: @VERSION@
+Libs: -L${libdir} -lGLU
+Cflags: -I${includedir}
diff --git a/src/glx/x11/Makefile b/src/glx/x11/Makefile
index 296747e0dda..9f0943a1466 100644
--- a/src/glx/x11/Makefile
+++ b/src/glx/x11/Makefile
@@ -64,7 +64,7 @@ default: depend $(TOP)/$(LIB_DIR)/$(GL_LIB_NAME)
# Make libGL
$(TOP)/$(LIB_DIR)/$(GL_LIB_NAME): $(OBJECTS) Makefile
- $(TOP)/bin/mklib -o $(GL_LIB) -linker '$(CC)' \
+ $(TOP)/bin/mklib -o $(GL_LIB) -linker '$(CC)' -ldflags '$(LDFLAGS)' \
-major 1 -minor 2 $(MKLIB_OPTIONS) \
-install $(TOP)/$(LIB_DIR) $(GL_LIB_DEPS) $(OBJECTS)
diff --git a/src/mesa/Makefile b/src/mesa/Makefile
index eadd7f281a6..eea8eb9bde0 100644
--- a/src/mesa/Makefile
+++ b/src/mesa/Makefile
@@ -65,7 +65,7 @@ linux-solo: depend subdirs libmesa.a
# Stand-alone Mesa libGL, no built-in drivers (DirectFB)
libgl-core: $(CORE_OBJECTS)
- @ $(TOP)/bin/mklib -o $(GL_LIB) -linker '$(CC)' \
+ @ $(TOP)/bin/mklib -o $(GL_LIB) -linker '$(CC)' -ldflags '$(LDFLAGS) \
-major $(MESA_MAJOR) -minor $(MESA_MINOR) -patch $(MESA_TINY) \
-install $(TOP)/$(LIB_DIR) $(MKLIB_OPTIONS) $(CORE_OBJECTS) \
$(GL_LIB_DEPS)
@@ -78,7 +78,7 @@ directfb: depend subdirs libgl-core
# fbdev Mesa driver (libGL.so)
fbdev: $(CORE_OBJECTS) $(FBDEV_DRIVER_OBJECTS) $(COMMON_DRIVER_OBJECTS)
- @ $(TOP)/bin/mklib -o $(GL_LIB) -linker '$(CC)' \
+ @ $(TOP)/bin/mklib -o $(GL_LIB) -linker '$(CC)' -ldflags '$(LDFLAGS)' \
-major $(MESA_MAJOR) -minor $(MESA_MINOR) -patch $(MESA_TINY) \
-install $(TOP)/$(LIB_DIR) $(MKLIB_OPTIONS) \
$(CORE_OBJECTS) $(FBDEV_DRIVER_OBJECTS) \
@@ -111,7 +111,7 @@ osmesa-only: depend subdirs $(TOP)/$(LIB_DIR)/$(OSMESA_LIB_NAME)
# Make the GL library
$(TOP)/$(LIB_DIR)/$(GL_LIB_NAME): $(STAND_ALONE_OBJECTS)
- @ $(TOP)/bin/mklib -o $(GL_LIB) -linker '$(CC)' \
+ @ $(TOP)/bin/mklib -o $(GL_LIB) -linker '$(CC)' -ldflags '$(LDFLAGS)' \
-major $(GL_MAJOR) -minor $(GL_MINOR) -patch $(GL_TINY) \
-install $(TOP)/$(LIB_DIR) \
$(MKLIB_OPTIONS) $(GL_LIB_DEPS) $(STAND_ALONE_OBJECTS)
@@ -121,11 +121,13 @@ $(TOP)/$(LIB_DIR)/$(GL_LIB_NAME): $(STAND_ALONE_OBJECTS)
$(TOP)/$(LIB_DIR)/$(OSMESA_LIB_NAME): $(OSMESA_DRIVER_OBJECTS) $(OSMESA16_OBJECTS)
@ if [ "${DRIVER_DIRS}" = "osmesa" ] ; then \
$(TOP)/bin/mklib -o $(OSMESA_LIB) -linker '$(CC)' \
+ -ldflags '$(LDFLAGS)' \
-major 6 -minor 5 -patch 3 \
-install $(TOP)/$(LIB_DIR) $(MKLIB_OPTIONS) \
$(OSMESA_LIB_DEPS) $(OSMESA16_OBJECTS) ; \
else \
$(TOP)/bin/mklib -o $(OSMESA_LIB) -linker '$(CC)' \
+ -ldflags '$(LDFLAGS)' \
-major 6 -minor 5 -patch 3 \
-install $(TOP)/$(LIB_DIR) $(MKLIB_OPTIONS) \
$(OSMESA_LIB_DEPS) $(OSMESA_DRIVER_OBJECTS) ; \
@@ -133,6 +135,15 @@ $(TOP)/$(LIB_DIR)/$(OSMESA_LIB_NAME): $(OSMESA_DRIVER_OBJECTS) $(OSMESA16_OBJECT
######################################################################
+# libGL pkg-config file
+pcedit = sed \
+ -e 's,@INSTALL_DIR@,$(INSTALL_DIR),' \
+ -e 's,@LIB_DIR@,$(LIB_DIR),' \
+ -e 's,@VERSION@,$(MESA_MAJOR).$(MESA_MINOR).$(MESA_TINY),'
+gl.pc: gl.pc.in
+ $(pcedit) $< > $@
+
+######################################################################
# Generic stuff
depend: $(ALL_SOURCES)
@@ -143,27 +154,34 @@ depend: $(ALL_SOURCES)
subdirs:
- @ (cd x86 ; $(MAKE))
- @ (cd x86-64 ; $(MAKE))
+ @ if echo "$(ASM_FLAGS)" | grep -q USE_X86_ASM ; then \
+ (cd x86 ; $(MAKE)) ; \
+ fi
+ @ if echo "$(ASM_FLAGS)" | grep -q USE_X86_64_ASM ; then \
+ (cd x86 ; $(MAKE)) ; \
+ (cd x86-64 ; $(MAKE)) ; \
+ fi
-install: default
- $(INSTALL) -d $(INSTALL_DIR)/include/GL
- $(INSTALL) -d $(INSTALL_DIR)/$(LIB_DIR)
- $(INSTALL) -m 644 $(TOP)/include/GL/*.h $(INSTALL_DIR)/include/GL
+install: default gl.pc
+ $(INSTALL) -d $(DESTDIR)$(INSTALL_DIR)/include/GL
+ $(INSTALL) -d $(DESTDIR)$(INSTALL_DIR)/$(LIB_DIR)
+ $(INSTALL) -d $(DESTDIR)$(INSTALL_DIR)/$(LIB_DIR)/pkgconfig
+ $(INSTALL) -m 644 $(TOP)/include/GL/*.h $(DESTDIR)$(INSTALL_DIR)/include/GL
@if [ -e $(TOP)/$(LIB_DIR)/$(GL_LIB_NAME) ]; then \
- $(INSTALL) $(TOP)/$(LIB_DIR)/libGL* $(INSTALL_DIR)/$(LIB_DIR); \
+ $(INSTALL) $(TOP)/$(LIB_DIR)/libGL* $(DESTDIR)$(INSTALL_DIR)/$(LIB_DIR); \
fi
+ $(INSTALL) -m 644 gl.pc $(DESTDIR)$(INSTALL_DIR)/$(LIB_DIR)/pkgconfig
@if [ -e $(TOP)/$(LIB_DIR)/$(OSMESA_LIB_NAME) ]; then \
- $(INSTALL) $(TOP)/$(LIB_DIR)/libOSMesa* $(INSTALL_DIR)/$(LIB_DIR); \
+ $(INSTALL) $(TOP)/$(LIB_DIR)/libOSMesa* $(DESTDIR)$(INSTALL_DIR)/$(LIB_DIR); \
fi
@if [ "${DRIVER_DIRS}" = "dri" ] ; then \
cd drivers/dri ; $(MAKE) install ; \
fi
## NOT INSTALLED YET:
-## $(INSTALL) -d $(INSTALL_DIR)/include/GLES
-## $(INSTALL) -m 644 include/GLES/*.h $(INSTALL_DIR)/include/GLES
+## $(INSTALL) -d $(DESTDIR)$(INSTALL_DIR)/include/GLES
+## $(INSTALL) -m 644 include/GLES/*.h $(DESTDIR)$(INSTALL_DIR)/include/GLES
# Emacs tags
diff --git a/src/mesa/drivers/beos/Makefile b/src/mesa/drivers/beos/Makefile
index 1897d6aa3e8..9c7d6affc3b 100644
--- a/src/mesa/drivers/beos/Makefile
+++ b/src/mesa/drivers/beos/Makefile
@@ -179,7 +179,8 @@ $(TOP)/$(LIB_DIR):
mkdir $(TOP)/$(LIB_DIR)
$(TOP)/$(LIB_DIR)/$(GL_LIB_NAME): $(OBJECTS) $(MESA_MODULES) $(GLU_MODULES)
- @$(TOP)/bin/mklib -o $(GL_LIB) -install $(TOP)/$(LIB_DIR) -major $(MESA_MAJOR) -minor $(MESA_MINOR) -patch $(MESA_TINY) \
+ @$(TOP)/bin/mklib -o $(GL_LIB) -ldflags '$(LDFLAGS)' -install $(TOP)/$(LIB_DIR) \
+ -major $(MESA_MAJOR) -minor $(MESA_MINOR) -patch $(MESA_TINY) \
$(MKLIB_OPTIONS) $(GL_LIB_DEPS) $(OBJECTS) $(MESA_MODULES) $(GLU_MODULES)
# $(GLU_OBJECTS):
diff --git a/src/mesa/drivers/dri/Makefile.template b/src/mesa/drivers/dri/Makefile.template
index 6f2314ee8cb..9e84dbca469 100644
--- a/src/mesa/drivers/dri/Makefile.template
+++ b/src/mesa/drivers/dri/Makefile.template
@@ -74,7 +74,7 @@ default: depend symlinks $(LIBNAME) $(TOP)/$(LIB_DIR)/$(LIBNAME)
$(LIBNAME): $(OBJECTS) $(MESA_MODULES) $(WINOBJ) Makefile $(TOP)/src/mesa/drivers/dri/Makefile.template
- $(TOP)/bin/mklib -noprefix -o $@ \
+ $(TOP)/bin/mklib -ldflags '$(LDFLAGS)' -noprefix -o $@ \
$(OBJECTS) $(MESA_MODULES) $(WINOBJ) $(DRI_LIB_DEPS)
@@ -100,8 +100,8 @@ clean:
install: $(LIBNAME)
- $(INSTALL) -d $(DRI_DRIVER_INSTALL_DIR)
- $(INSTALL) -m 755 $(LIBNAME) $(DRI_DRIVER_INSTALL_DIR)
+ $(INSTALL) -d $(DESTDIR)$(DRI_DRIVER_INSTALL_DIR)
+ $(INSTALL) -m 755 $(LIBNAME) $(DESTDIR)$(DRI_DRIVER_INSTALL_DIR)
include depend
diff --git a/src/mesa/drivers/dri/common/dri_bufmgr.c b/src/mesa/drivers/dri/common/dri_bufmgr.c
index eaa4fb09c70..ebeed9a2030 100644
--- a/src/mesa/drivers/dri/common/dri_bufmgr.c
+++ b/src/mesa/drivers/dri/common/dri_bufmgr.c
@@ -115,7 +115,7 @@ driFenceType(DriFenceObject * fence)
unsigned ret;
_glthread_LOCK_MUTEX(bmMutex);
- ret = fence->fence.flags;
+ ret = fence->fence.type;
_glthread_UNLOCK_MUTEX(bmMutex);
return ret;
diff --git a/src/mesa/drivers/dri/common/extension_helper.h b/src/mesa/drivers/dri/common/extension_helper.h
index 49f3ee94e77..f930eee528a 100644
--- a/src/mesa/drivers/dri/common/extension_helper.h
+++ b/src/mesa/drivers/dri/common/extension_helper.h
@@ -1098,10 +1098,11 @@ static const char IsRenderbufferEXT_names[] =
"";
#endif
-#if defined(need_GL_VERSION_2_0)
+#if defined(need_GL_VERSION_2_0) || defined(need_GL_ATI_separate_stencil)
static const char StencilOpSeparate_names[] =
"iiii\0" /* Parameter signature */
"glStencilOpSeparate\0"
+ "glStencilOpSeparateATI\0"
"";
#endif
@@ -4172,6 +4173,13 @@ static const char ActiveStencilFaceEXT_names[] =
"";
#endif
+#if defined(need_GL_ATI_separate_stencil)
+static const char StencilFuncSeparateATI_names[] =
+ "iiii\0" /* Parameter signature */
+ "glStencilFuncSeparateATI\0"
+ "";
+#endif
+
#if defined(need_GL_VERSION_2_0) || defined(need_GL_ARB_shader_objects)
static const char GetShaderSourceARB_names[] =
"iipp\0" /* Parameter signature */
@@ -5175,6 +5183,14 @@ static const struct dri_extension_function GL_ATI_fragment_shader_functions[] =
};
#endif
+#if defined(need_GL_ATI_separate_stencil)
+static const struct dri_extension_function GL_ATI_separate_stencil_functions[] = {
+ { StencilOpSeparate_names, StencilOpSeparate_remap_index, -1 },
+ { StencilFuncSeparateATI_names, StencilFuncSeparateATI_remap_index, -1 },
+ { NULL, 0, 0 }
+};
+#endif
+
#if defined(need_GL_EXT_blend_color)
static const struct dri_extension_function GL_EXT_blend_color_functions[] = {
{ BlendColor_names, -1, 336 },
diff --git a/src/mesa/drivers/dri/glcore/Makefile b/src/mesa/drivers/dri/glcore/Makefile
index a9e96970fae..968190acfc0 100644
--- a/src/mesa/drivers/dri/glcore/Makefile
+++ b/src/mesa/drivers/dri/glcore/Makefile
@@ -61,7 +61,8 @@ default: depend $(TOP)/$(LIB_DIR)/$(LIBNAME)
$(TOP)/$(LIB_DIR)/$(LIBNAME): $(OBJECTS) $(MESA_MODULES) $(WINOBJ) Makefile
- CC="$(CC)" CXX="$(CXX)" $(TOP)/bin/mklib -o $(LIBNAME) -noprefix -install $(TOP)/$(LIB_DIR) \
+ CC="$(CC)" CXX="$(CXX)" $(TOP)/bin/mklib -o $(LIBNAME) -noprefix \
+ -ldflags '$(LDFLAGS)' -install $(TOP)/$(LIB_DIR) \
$(OBJECTS) $(WINLIB) $(LIB_DEPS) $(WINOBJ) $(MESA_MODULES)
diff --git a/src/mesa/drivers/dri/i915tex/i915_metaops.c b/src/mesa/drivers/dri/i915tex/i915_metaops.c
index 3ab62bc806b..397ff75b6f1 100644
--- a/src/mesa/drivers/dri/i915tex/i915_metaops.c
+++ b/src/mesa/drivers/dri/i915tex/i915_metaops.c
@@ -95,7 +95,7 @@ meta_depth_replace(struct intel_context *intel)
i915->meta.Ctx[I915_CTXREG_LIS6] |= (S6_DEPTH_TEST_ENABLE |
S6_DEPTH_WRITE_ENABLE);
- /* ctx->Driver.DepthFunc( ctx, GL_REPLACE )
+ /* ctx->Driver.DepthFunc( ctx, GL_ALWAYS )
*/
i915->meta.Ctx[I915_CTXREG_LIS6] &= ~S6_DEPTH_TEST_FUNC_MASK;
i915->meta.Ctx[I915_CTXREG_LIS6] |=
diff --git a/src/mesa/drivers/dri/i915tex/i915_tex_layout.c b/src/mesa/drivers/dri/i915tex/i915_tex_layout.c
index 9f40706c36a..7b761a7b221 100644
--- a/src/mesa/drivers/dri/i915tex/i915_tex_layout.c
+++ b/src/mesa/drivers/dri/i915tex/i915_tex_layout.c
@@ -113,7 +113,7 @@ i915_miptree_layout(struct intel_mipmap_tree * mt)
*/
for (level = mt->first_level; level <= MAX2(8, mt->last_level);
level++) {
- intel_miptree_set_level_info(mt, level, 1, 0, mt->total_height,
+ intel_miptree_set_level_info(mt, level, depth, 0, mt->total_height,
width, height, depth);
diff --git a/src/mesa/drivers/dri/i915tex/intel_blit.c b/src/mesa/drivers/dri/i915tex/intel_blit.c
index dbe4ba2ac5e..a0601515c16 100644
--- a/src/mesa/drivers/dri/i915tex/intel_blit.c
+++ b/src/mesa/drivers/dri/i915tex/intel_blit.c
@@ -409,6 +409,9 @@ intelClearWithBlit(GLcontext * ctx, GLbitfield mask)
b = *box;
}
+ if (b.x1 >= b.x2 || b.y1 >= b.y2)
+ continue;
+
if (0)
_mesa_printf("clear %d,%d..%d,%d, mask %x\n",
b.x1, b.y1, b.x2, b.y2, mask);
diff --git a/src/mesa/drivers/dri/i915tex/intel_buffers.c b/src/mesa/drivers/dri/i915tex/intel_buffers.c
index 15d02f8e2cf..78fb720b6b9 100644
--- a/src/mesa/drivers/dri/i915tex/intel_buffers.c
+++ b/src/mesa/drivers/dri/i915tex/intel_buffers.c
@@ -1124,6 +1124,15 @@ intel_draw_buffer(GLcontext * ctx, struct gl_framebuffer *fb)
ctx->Driver.Enable(ctx, GL_STENCIL_TEST, ctx->Stencil.Enabled);
}
+ /*
+ * Update depth test state
+ */
+ if (ctx->Depth.Test && fb->Visual.depthBits > 0) {
+ ctx->Driver.Enable(ctx, GL_DEPTH_TEST, GL_TRUE);
+ }
+ else {
+ ctx->Driver.Enable(ctx, GL_DEPTH_TEST, GL_FALSE);
+ }
/**
** Release old regions, reference new regions
diff --git a/src/mesa/drivers/dri/i915tex/intel_mipmap_tree.c b/src/mesa/drivers/dri/i915tex/intel_mipmap_tree.c
index 6c285433241..564eb9e0197 100644
--- a/src/mesa/drivers/dri/i915tex/intel_mipmap_tree.c
+++ b/src/mesa/drivers/dri/i915tex/intel_mipmap_tree.c
@@ -104,7 +104,16 @@ intel_miptree_create(struct intel_context *intel,
* replaced at some point by some scheme to only do this when really
* necessary.
*/
- mt->pitch = ((mt->pitch * cpp + 63) & ~63) / cpp;
+ mt->pitch = (mt->pitch * cpp + 63) & ~63;
+
+ /* XXX: At least the i915 seems very upset when the pitch is a multiple
+ * of 1024 and sometimes 512 bytes - performance can drop by several
+ * times. Go to the next multiple of 64 for now.
+ */
+ if (!(mt->pitch & 511))
+ mt->pitch += 64;
+
+ mt->pitch /= cpp;
}
mt->region = intel_region_alloc(intel->intelScreen,
diff --git a/src/mesa/drivers/dri/i965/brw_aub.c b/src/mesa/drivers/dri/i965/brw_aub.c
index f851a5b7955..c549f7a4f60 100644
--- a/src/mesa/drivers/dri/i965/brw_aub.c
+++ b/src/mesa/drivers/dri/i965/brw_aub.c
@@ -80,7 +80,7 @@ static void init_aubfile( FILE *aub_file )
fh.hour = (nr>>16) & 0xff;
fh.comment_length = 0x0;
- if (fwrite(&fh, sizeof(fh), 1, aub_file) < 0)
+ if (fwrite(&fh, sizeof(fh), 1, aub_file) < 1)
FAIL;
/* Setup the GTT starting at main memory address zero (!):
@@ -96,12 +96,12 @@ static void init_aubfile( FILE *aub_file )
bh.address = PGETBL_CTL;
bh.length = 0x4;
- if (fwrite(&bh, sizeof(bh), 1, aub_file) < 0)
+ if (fwrite(&bh, sizeof(bh), 1, aub_file) < 1)
FAIL;
data = 0x0 | PGETBL_ENABLED;
- if (fwrite(&data, sizeof(data), 1, aub_file) < 0)
+ if (fwrite(&data, sizeof(data), 1, aub_file) < 1)
FAIL;
}
@@ -128,7 +128,7 @@ static void init_aub_gtt( struct brw_context *brw,
bh.address = start_offset / 4096 * 4;
bh.length = size / 4096 * 4;
- if (fwrite(&bh, sizeof(bh), 1, aub_file) < 0)
+ if (fwrite(&bh, sizeof(bh), 1, aub_file) < 1)
FAIL;
for (i = 0; i < size / 4096; i++) {
@@ -136,7 +136,7 @@ static void init_aub_gtt( struct brw_context *brw,
brw->next_free_page += 4096;
- if (fwrite(&data, sizeof(data), 1, aub_file) < 0)
+ if (fwrite(&data, sizeof(data), 1, aub_file) < 1)
FAIL;
}
@@ -149,10 +149,10 @@ static void write_block_header( FILE *aub_file,
{
sz = (sz + 3) & ~3;
- if (fwrite(bh, sizeof(*bh), 1, aub_file) < 0)
+ if (fwrite(bh, sizeof(*bh), 1, aub_file) < 1)
FAIL;
- if (fwrite(data, sz, 1, aub_file) < 0)
+ if (fwrite(data, sz, 1, aub_file) < 1)
FAIL;
fflush(aub_file);
@@ -162,7 +162,7 @@ static void write_block_header( FILE *aub_file,
static void write_dump_bmp( FILE *aub_file,
struct aub_dump_bmp *db )
{
- if (fwrite(db, sizeof(*db), 1, aub_file) < 0)
+ if (fwrite(db, sizeof(*db), 1, aub_file) < 1)
FAIL;
fflush(aub_file);
diff --git a/src/mesa/drivers/dri/i965/brw_clip.c b/src/mesa/drivers/dri/i965/brw_clip.c
index 3bec153075a..8287fd9edf3 100644
--- a/src/mesa/drivers/dri/i965/brw_clip.c
+++ b/src/mesa/drivers/dri/i965/brw_clip.c
@@ -212,6 +212,10 @@ static void upload_clip_prog( struct brw_context *brw )
}
}
+ if (brw->attribs.Polygon->BackMode != GL_FILL ||
+ brw->attribs.Polygon->FrontMode != GL_FILL)
+ key.do_unfilled = 1;
+
/* Most cases the fixed function units will handle. Cases where
* one or more polygon faces are unfilled will require help:
*/
diff --git a/src/mesa/drivers/dri/i965/brw_curbe.c b/src/mesa/drivers/dri/i965/brw_curbe.c
index 3f0aaa1f86d..5bf0ed536ba 100644
--- a/src/mesa/drivers/dri/i965/brw_curbe.c
+++ b/src/mesa/drivers/dri/i965/brw_curbe.c
@@ -90,7 +90,7 @@ static void calculate_curbe_offsets( struct brw_context *brw )
*/
if (nr_fp_regs > brw->curbe.wm_size ||
nr_vp_regs > brw->curbe.vs_size ||
- nr_clip_regs > brw->curbe.clip_size ||
+ nr_clip_regs != brw->curbe.clip_size ||
(total_regs < brw->curbe.total_size / 4 &&
brw->curbe.total_size > 16)) {
diff --git a/src/mesa/drivers/dri/i965/brw_draw.c b/src/mesa/drivers/dri/i965/brw_draw.c
index c7798b14a93..f7964727d5d 100644
--- a/src/mesa/drivers/dri/i965/brw_draw.c
+++ b/src/mesa/drivers/dri/i965/brw_draw.c
@@ -330,6 +330,7 @@ static GLboolean brw_try_draw_prims( GLcontext *ctx,
else {
/* Otherwise, explicitly do the cliprects at this point:
*/
+ GLuint nprims = 0;
for (j = 0; j < brw->intel.numClipRects; j++) {
brw_emit_cliprect(brw, &brw->intel.pClipRects[j]);
@@ -337,6 +338,11 @@ static GLboolean brw_try_draw_prims( GLcontext *ctx,
*/
for (i = 0; i < nr_prims; i++) {
brw_emit_prim(brw, &prim[i]);
+
+ if (++nprims == VBO_MAX_PRIM) {
+ intel_batchbuffer_flush(brw->intel.batch);
+ nprims = 0;
+ }
}
}
}
diff --git a/src/mesa/drivers/dri/i965/brw_sf_emit.c b/src/mesa/drivers/dri/i965/brw_sf_emit.c
index cbaf018c44a..2ea9816e285 100644
--- a/src/mesa/drivers/dri/i965/brw_sf_emit.c
+++ b/src/mesa/drivers/dri/i965/brw_sf_emit.c
@@ -582,7 +582,9 @@ void brw_emit_anyprim_setup( struct brw_sf_compile *c )
(1<<_3DPRIM_TRIFAN_NOSTIPPLE)));
jmp = brw_JMPI(p, ip, ip, brw_imm_w(0));
{
+ brw_push_insn_state(p);
brw_emit_tri_setup( c );
+ brw_pop_insn_state(p);
/* note - thread killed in subroutine */
}
brw_land_fwd_jump(p, jmp);
@@ -596,7 +598,9 @@ void brw_emit_anyprim_setup( struct brw_sf_compile *c )
(1<<_3DPRIM_LINESTRIP_CONT_BF)));
jmp = brw_JMPI(p, ip, ip, brw_imm_w(0));
{
+ brw_push_insn_state(p);
brw_emit_line_setup( c );
+ brw_pop_insn_state(p);
/* note - thread killed in subroutine */
}
brw_land_fwd_jump(p, jmp);
diff --git a/src/mesa/drivers/dri/i965/brw_vs_tnl.c b/src/mesa/drivers/dri/i965/brw_vs_tnl.c
index 35adc4846a0..14483b325a9 100644
--- a/src/mesa/drivers/dri/i965/brw_vs_tnl.c
+++ b/src/mesa/drivers/dri/i965/brw_vs_tnl.c
@@ -1000,13 +1000,19 @@ static void build_lighting( struct tnl_program *p )
STATE_POSITION);
struct ureg V = get_eye_position(p);
struct ureg dist = get_temp(p);
+ struct ureg tmpPpli = get_temp(p);
VPpli = get_temp(p);
half = get_temp(p);
-
+
+ /* In homogeneous object coordinates
+ */
+ emit_op1(p, OPCODE_RCP, dist, 0, swizzle1(Ppli, W));
+ emit_op2(p, OPCODE_MUL, tmpPpli, 0, Ppli, dist);
+
/* Calulate VPpli vector
*/
- emit_op2(p, OPCODE_SUB, VPpli, 0, Ppli, V);
+ emit_op2(p, OPCODE_SUB, VPpli, 0, tmpPpli, V);
/* Normalize VPpli. The dist value also used in
* attenuation below.
@@ -1038,6 +1044,7 @@ static void build_lighting( struct tnl_program *p )
emit_normalize_vec3(p, half, half);
release_temp(p, dist);
+ release_temp(p, tmpPpli);
}
/* Calculate dot products:
diff --git a/src/mesa/drivers/dri/i965/brw_wm_fp.c b/src/mesa/drivers/dri/i965/brw_wm_fp.c
index ff97d87dc45..dc57fd263c2 100644
--- a/src/mesa/drivers/dri/i965/brw_wm_fp.c
+++ b/src/mesa/drivers/dri/i965/brw_wm_fp.c
@@ -525,7 +525,57 @@ static void precalc_tex( struct brw_wm_compile *c,
struct prog_src_register coord;
struct prog_dst_register tmpcoord;
- if (inst->TexSrcTarget == TEXTURE_RECT_INDEX) {
+ if (inst->TexSrcTarget == TEXTURE_CUBE_INDEX) {
+ struct prog_instruction *out;
+ struct prog_dst_register tmp0 = get_temp(c);
+ struct prog_src_register tmp0src = src_reg_from_dst(tmp0);
+ struct prog_dst_register tmp1 = get_temp(c);
+ struct prog_src_register tmp1src = src_reg_from_dst(tmp1);
+ struct prog_src_register src0 = inst->SrcReg[0];
+
+ tmpcoord = get_temp(c);
+ coord = src_reg_from_dst(tmpcoord);
+
+ out = emit_op(c, OPCODE_MOV,
+ tmpcoord,
+ 0, 0, 0,
+ src0,
+ src_undef(),
+ src_undef());
+ out->SrcReg[0].NegateBase = 0;
+ out->SrcReg[0].Abs = 1;
+
+ emit_op(c, OPCODE_MAX,
+ tmp0,
+ 0, 0, 0,
+ src_swizzle1(coord, X),
+ src_swizzle1(coord, Y),
+ src_undef());
+
+ emit_op(c, OPCODE_MAX,
+ tmp1,
+ 0, 0, 0,
+ tmp0src,
+ src_swizzle1(coord, Z),
+ src_undef());
+
+ emit_op(c, OPCODE_RCP,
+ tmp0,
+ 0, 0, 0,
+ tmp1src,
+ src_undef(),
+ src_undef());
+
+ emit_op(c, OPCODE_MUL,
+ tmpcoord,
+ 0, 0, 0,
+ src0,
+ tmp0src,
+ src_undef());
+
+ release_temp(c, tmp0);
+ release_temp(c, tmp1);
+ } else if (inst->TexSrcTarget == TEXTURE_RECT_INDEX) {
struct prog_src_register scale =
search_or_add_param5( c,
STATE_INTERNAL,
diff --git a/src/mesa/drivers/dri/i965/brw_wm_sampler_state.c b/src/mesa/drivers/dri/i965/brw_wm_sampler_state.c
index 93d4cfc3a5f..794c7d98169 100644
--- a/src/mesa/drivers/dri/i965/brw_wm_sampler_state.c
+++ b/src/mesa/drivers/dri/i965/brw_wm_sampler_state.c
@@ -173,12 +173,12 @@ static void brw_update_sampler_state( struct gl_texture_unit *texUnit,
* message (sample_c). So need to recompile WM program when
* shadow comparison is enabled on each/any texture unit.
*/
- sampler->ss0.shadow_function = intel_translate_compare_func(texObj->CompareFunc);
+ sampler->ss0.shadow_function = intel_translate_shadow_compare_func(texObj->CompareFunc);
}
/* Set LOD bias:
*/
- sampler->ss0.lod_bias = S_FIXED(texUnit->LodBias + texObj->LodBias, 6);
+ sampler->ss0.lod_bias = S_FIXED(CLAMP(texUnit->LodBias + texObj->LodBias, -16, 15), 6);
sampler->ss0.lod_preclamp = 1; /* OpenGL mode */
sampler->ss0.default_color_mode = 0; /* OpenGL/DX10 mode */
@@ -192,8 +192,8 @@ static void brw_update_sampler_state( struct gl_texture_unit *texUnit,
*/
sampler->ss0.base_level = U_FIXED(0, 1);
- sampler->ss1.max_lod = U_FIXED(MAX2(texObj->MaxLod, 0), 6);
- sampler->ss1.min_lod = U_FIXED(MAX2(texObj->MinLod, 0), 6);
+ sampler->ss1.max_lod = U_FIXED(MIN2(MAX2(texObj->MaxLod, 0), 13), 6);
+ sampler->ss1.min_lod = U_FIXED(MIN2(MAX2(texObj->MinLod, 0), 13), 6);
sampler->ss2.default_color_pointer = sdc_gs_offset >> 5;
}
diff --git a/src/mesa/drivers/dri/i965/brw_wm_state.c b/src/mesa/drivers/dri/i965/brw_wm_state.c
index ff5cb31bdd1..5b4f2abd0e2 100644
--- a/src/mesa/drivers/dri/i965/brw_wm_state.c
+++ b/src/mesa/drivers/dri/i965/brw_wm_state.c
@@ -117,7 +117,7 @@ static void upload_wm_unit(struct brw_context *brw )
wm.thread1.floating_point_mode = BRW_FLOATING_POINT_NON_IEEE_754;
/* CACHE_NEW_SAMPLER */
- wm.wm4.sampler_count = brw->wm.sampler_count;
+ wm.wm4.sampler_count = (brw->wm.sampler_count + 1) / 4;
wm.wm4.sampler_state_pointer = brw->wm.sampler_gs_offset >> 5;
/* BRW_NEW_FRAGMENT_PROGRAM */
diff --git a/src/mesa/drivers/dri/i965/intel_buffers.c b/src/mesa/drivers/dri/i965/intel_buffers.c
index d155c039d77..de6a867cca4 100644
--- a/src/mesa/drivers/dri/i965/intel_buffers.c
+++ b/src/mesa/drivers/dri/i965/intel_buffers.c
@@ -31,7 +31,9 @@
#include "intel_regions.h"
#include "intel_batchbuffer.h"
#include "context.h"
+#include "utils.h"
#include "framebuffer.h"
+#include "vblank.h"
#include "macros.h"
#include "swrast/swrast.h"
@@ -190,8 +192,40 @@ void intelWindowMoved( struct intel_context *intel )
}
}
+ {
+ if (intel->intelScreen->driScrnPriv->ddxMinor >= 7) {
+ volatile drmI830Sarea *sarea = intel->sarea;
+ drm_clip_rect_t drw_rect = { .x1 = dPriv->x, .x2 = dPriv->x + dPriv->w,
+ .y1 = dPriv->y, .y2 = dPriv->y + dPriv->h
+ };
+ drm_clip_rect_t pipeA_rect = { .x1 = sarea->pipeA_x,
+ .x2 = sarea->pipeA_x + sarea->pipeA_w,
+ .y1 = sarea->pipeA_y,
+ .y2 = sarea->pipeA_y + sarea->pipeA_h };
+ drm_clip_rect_t pipeB_rect = { .x1 = sarea->pipeB_x,
+ .x2 = sarea->pipeB_x + sarea->pipeB_w,
+ .y1 = sarea->pipeB_y,
+ .y2 = sarea->pipeB_y + sarea->pipeB_h };
+ GLint areaA = driIntersectArea( drw_rect, pipeA_rect );
+ GLint areaB = driIntersectArea( drw_rect, pipeB_rect );
+ GLuint flags = intel->vblank_flags;
+
+ if (areaB > areaA || (areaA > 0 && areaB > 0)) {
+ flags = intel->vblank_flags | VBLANK_FLAG_SECONDARY;
+ } else {
+ flags = intel->vblank_flags & ~VBLANK_FLAG_SECONDARY;
+ }
+
+ if (flags != intel->vblank_flags) {
+ intel->vblank_flags = flags;
+ driGetCurrentVBlank(dPriv, intel->vblank_flags, &intel->vbl_seq);
+ }
+ } else {
+ intel->vblank_flags &= ~VBLANK_FLAG_SECONDARY;
+ }
+ }
_mesa_resize_framebuffer(&intel->ctx,
- (GLframebuffer*)dPriv->driverPrivate,
+ (GLframebuffer*)dPriv->driverPrivate,
dPriv->w, dPriv->h);
/* Set state we know depends on drawable parameters:
diff --git a/src/mesa/drivers/dri/i965/intel_context.c b/src/mesa/drivers/dri/i965/intel_context.c
index 10eb9a2e28d..33efed431db 100644
--- a/src/mesa/drivers/dri/i965/intel_context.c
+++ b/src/mesa/drivers/dri/i965/intel_context.c
@@ -262,7 +262,7 @@ intelBeginQuery(GLcontext *ctx, GLenum target, struct gl_query_object *q)
};
intel->stats_wm++;
intelFinish(&intel->ctx);
- drmCommandRead(intel->driFd, DRM_I830_MMIO, &io, sizeof(io));
+ drmCommandWrite(intel->driFd, DRM_I830_MMIO, &io, sizeof(io));
}
static void
@@ -276,7 +276,7 @@ intelEndQuery(GLcontext *ctx, GLenum target, struct gl_query_object *q)
.data = &tmp
};
intelFinish(&intel->ctx);
- drmCommandRead(intel->driFd, DRM_I830_MMIO, &io, sizeof(io));
+ drmCommandWrite(intel->driFd, DRM_I830_MMIO, &io, sizeof(io));
q->Result = tmp - q->Result;
q->Ready = GL_TRUE;
intel->stats_wm--;
@@ -487,7 +487,7 @@ GLboolean intelInitContext( struct intel_context *intel,
_mesa_enable_extension( ctx, "GL_EXT_texture_compression_s3tc" );
_mesa_enable_extension( ctx, "GL_S3_s3tc" );
}
- else if (driQueryOptionb (&intelScreen->optionCache, "force_s3tc_enable")) {
+ else if (driQueryOptionb (&intel->optionCache, "force_s3tc_enable")) {
_mesa_enable_extension( ctx, "GL_EXT_texture_compression_s3tc" );
}
@@ -567,6 +567,10 @@ GLboolean intelMakeCurrent(__DRIcontextPrivate *driContextPriv,
if (driContextPriv) {
struct intel_context *intel = (struct intel_context *) driContextPriv->driverPrivate;
+ if (intel->driReadDrawable != driReadPriv) {
+ intel->driReadDrawable = driReadPriv;
+ }
+
if ( intel->driDrawable != driDrawPriv ) {
/* Shouldn't the readbuffer be stored also? */
driDrawableInitVBlank( driDrawPriv, intel->vblank_flags,
diff --git a/src/mesa/drivers/dri/i965/intel_context.h b/src/mesa/drivers/dri/i965/intel_context.h
index 808512f7fd5..9f69f23706d 100644
--- a/src/mesa/drivers/dri/i965/intel_context.h
+++ b/src/mesa/drivers/dri/i965/intel_context.h
@@ -234,6 +234,7 @@ struct intel_context
int driFd;
__DRIdrawablePrivate *driDrawable;
+ __DRIdrawablePrivate *driReadDrawable;
__DRIscreenPrivate *driScreen;
intelScreenPrivate *intelScreen;
volatile drmI830Sarea *sarea;
@@ -463,7 +464,7 @@ extern void intelInitStateFuncs( struct dd_function_table *functions );
#define BLENDFACT_INV_CONST_ALPHA 0x0f
#define BLENDFACT_MASK 0x0f
-
+extern int intel_translate_shadow_compare_func( GLenum func );
extern int intel_translate_compare_func( GLenum func );
extern int intel_translate_stencil_op( GLenum op );
extern int intel_translate_blend_factor( GLenum factor );
diff --git a/src/mesa/drivers/dri/i965/intel_pixel_bitmap.c b/src/mesa/drivers/dri/i965/intel_pixel_bitmap.c
index 421fcc5e511..df9d6885c08 100644
--- a/src/mesa/drivers/dri/i965/intel_pixel_bitmap.c
+++ b/src/mesa/drivers/dri/i965/intel_pixel_bitmap.c
@@ -168,12 +168,15 @@ do_blit_bitmap( GLcontext *ctx,
{
struct intel_context *intel = intel_context(ctx);
struct intel_region *dst = intel_drawbuf_region(intel);
-
+ GLfloat tmpColor[4];
+
union {
GLuint ui;
GLubyte ub[4];
} color;
+ if (!dst)
+ return GL_FALSE;
if (unpack->BufferObj->Name) {
bitmap = map_pbo(ctx, width, height, unpack, bitmap);
@@ -181,10 +184,16 @@ do_blit_bitmap( GLcontext *ctx,
return GL_TRUE; /* even though this is an error, we're done */
}
- UNCLAMPED_FLOAT_TO_CHAN(color.ub[0], ctx->Current.RasterColor[2]);
- UNCLAMPED_FLOAT_TO_CHAN(color.ub[1], ctx->Current.RasterColor[1]);
- UNCLAMPED_FLOAT_TO_CHAN(color.ub[2], ctx->Current.RasterColor[0]);
- UNCLAMPED_FLOAT_TO_CHAN(color.ub[3], ctx->Current.RasterColor[3]);
+ COPY_4V(tmpColor, ctx->Current.RasterColor);
+
+ if (NEED_SECONDARY_COLOR(ctx)) {
+ ADD_3V(tmpColor, tmpColor, ctx->Current.RasterSecondaryColor);
+ }
+
+ UNCLAMPED_FLOAT_TO_CHAN(color.ub[0], tmpColor[2]);
+ UNCLAMPED_FLOAT_TO_CHAN(color.ub[1], tmpColor[1]);
+ UNCLAMPED_FLOAT_TO_CHAN(color.ub[2], tmpColor[0]);
+ UNCLAMPED_FLOAT_TO_CHAN(color.ub[3], tmpColor[3]);
/* Does zoom apply to bitmaps?
*/
diff --git a/src/mesa/drivers/dri/i965/intel_pixel_copy.c b/src/mesa/drivers/dri/i965/intel_pixel_copy.c
index 58dc49505fe..3bdf2fb4790 100644
--- a/src/mesa/drivers/dri/i965/intel_pixel_copy.c
+++ b/src/mesa/drivers/dri/i965/intel_pixel_copy.c
@@ -231,6 +231,7 @@ do_blit_copypixels(GLcontext * ctx,
if (intel->driDrawable->numClipRects) {
__DRIdrawablePrivate *dPriv = intel->driDrawable;
+ __DRIdrawablePrivate *dReadPriv = intel->driReadDrawable;
drm_clip_rect_t *box = dPriv->pClipRects;
drm_clip_rect_t dest_rect;
GLint nbox = dPriv->numClipRects;
@@ -262,8 +263,8 @@ do_blit_copypixels(GLcontext * ctx,
srcy = dPriv->h - srcy - height;
dstx += dPriv->x;
dsty += dPriv->y;
- srcx += dPriv->x;
- srcy += dPriv->y;
+ srcx += dReadPriv->x;
+ srcy += dReadPriv->y;
/* Clip against the source region. This is the only source
* clipping we do. Dst is clipped with cliprects below.
diff --git a/src/mesa/drivers/dri/i965/intel_state.c b/src/mesa/drivers/dri/i965/intel_state.c
index ec6e0465d4a..701b30cc91d 100644
--- a/src/mesa/drivers/dri/i965/intel_state.c
+++ b/src/mesa/drivers/dri/i965/intel_state.c
@@ -38,6 +38,31 @@
#include "intel_regions.h"
#include "swrast/swrast.h"
+int intel_translate_shadow_compare_func( GLenum func )
+{
+ switch(func) {
+ case GL_NEVER:
+ return COMPAREFUNC_ALWAYS;
+ case GL_LESS:
+ return COMPAREFUNC_LEQUAL;
+ case GL_LEQUAL:
+ return COMPAREFUNC_LESS;
+ case GL_GREATER:
+ return COMPAREFUNC_GEQUAL;
+ case GL_GEQUAL:
+ return COMPAREFUNC_GREATER;
+ case GL_NOTEQUAL:
+ return COMPAREFUNC_EQUAL;
+ case GL_EQUAL:
+ return COMPAREFUNC_NOTEQUAL;
+ case GL_ALWAYS:
+ return COMPAREFUNC_NEVER;
+ }
+
+ fprintf(stderr, "Unknown value in %s: %x\n", __FUNCTION__, func);
+ return COMPAREFUNC_NEVER;
+}
+
int intel_translate_compare_func( GLenum func )
{
switch(func) {
diff --git a/src/mesa/drivers/dri/i965/server/i830_common.h b/src/mesa/drivers/dri/i965/server/i830_common.h
index f320378c2a5..fe2b8e8b5d4 100644
--- a/src/mesa/drivers/dri/i965/server/i830_common.h
+++ b/src/mesa/drivers/dri/i965/server/i830_common.h
@@ -119,6 +119,16 @@ typedef struct {
unsigned int depth_tiled;
unsigned int rotated_tiled;
unsigned int rotated2_tiled;
+
+ int pipeA_x;
+ int pipeA_y;
+ int pipeA_w;
+ int pipeA_h;
+ int pipeB_x;
+ int pipeB_y;
+ int pipeB_w;
+ int pipeB_h;
+
} drmI830Sarea;
/* Flags for perf_boxes
diff --git a/src/mesa/drivers/dri/r200/r200_context.h b/src/mesa/drivers/dri/r200/r200_context.h
index e840a502c0b..a06a2f5bb4e 100644
--- a/src/mesa/drivers/dri/r200/r200_context.h
+++ b/src/mesa/drivers/dri/r200/r200_context.h
@@ -180,6 +180,7 @@ struct r200_tex_obj {
drm_radeon_tex_image_t image[6][RADEON_MAX_TEXTURE_LEVELS];
/* Six, for the cube faces */
+ GLboolean image_override; /* Image overridden by GLX_EXT_tfp */
GLuint pp_txfilter; /* hardware register values */
GLuint pp_txformat;
diff --git a/src/mesa/drivers/dri/r200/r200_tex.h b/src/mesa/drivers/dri/r200/r200_tex.h
index 4438cc02a82..68e9a0ed5f0 100644
--- a/src/mesa/drivers/dri/r200/r200_tex.h
+++ b/src/mesa/drivers/dri/r200/r200_tex.h
@@ -36,6 +36,10 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#ifndef __R200_TEX_H__
#define __R200_TEX_H__
+extern void r200SetTexOffset(__DRIcontext *pDRICtx, GLint texname,
+ unsigned long long offset, GLint depth,
+ GLuint pitch);
+
extern void r200UpdateTextureState( GLcontext *ctx );
extern int r200UploadTexImages( r200ContextPtr rmesa, r200TexObjPtr t, GLuint face );
diff --git a/src/mesa/drivers/dri/r200/r200_texmem.c b/src/mesa/drivers/dri/r200/r200_texmem.c
index 28988c97556..9daafcf5937 100644
--- a/src/mesa/drivers/dri/r200/r200_texmem.c
+++ b/src/mesa/drivers/dri/r200/r200_texmem.c
@@ -182,7 +182,8 @@ static void r200UploadRectSubImage( r200ContextPtr rmesa,
/* In this case, could also use GART texturing. This is
* currently disabled, but has been tested & works.
*/
- t->pp_txoffset = r200GartOffsetFromVirtual( rmesa, texImage->Data );
+ if ( !t->image_override )
+ t->pp_txoffset = r200GartOffsetFromVirtual( rmesa, texImage->Data );
t->pp_txpitch = texImage->RowStride * texFormat->TexelBytes - 32;
if (R200_DEBUG & DEBUG_TEXTURE)
@@ -468,7 +469,7 @@ int r200UploadTexImages( r200ContextPtr rmesa, r200TexObjPtr t, GLuint face )
t->base.firstLevel, t->base.lastLevel );
}
- if ( !t || t->base.totalSize == 0 )
+ if ( !t || t->base.totalSize == 0 || t->image_override )
return 0;
if (R200_DEBUG & DEBUG_SYNC) {
diff --git a/src/mesa/drivers/dri/r200/r200_texstate.c b/src/mesa/drivers/dri/r200/r200_texstate.c
index 875d3bab73f..af5092bb972 100644
--- a/src/mesa/drivers/dri/r200/r200_texstate.c
+++ b/src/mesa/drivers/dri/r200/r200_texstate.c
@@ -38,6 +38,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#include "context.h"
#include "macros.h"
#include "texformat.h"
+#include "texobj.h"
#include "enums.h"
#include "r200_context.h"
@@ -73,10 +74,11 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#define VALID_FORMAT(f) ( ((f) <= MESA_FORMAT_RGBA_DXT5) \
&& (tx_table_le[f].format != 0xffffffff) )
-static const struct {
+struct tx_table {
GLuint format, filter;
-}
-tx_table_be[] =
+};
+
+static const struct tx_table tx_table_be[] =
{
[ MESA_FORMAT_RGBA8888 ] = { R200_TXFORMAT_ABGR8888 | R200_TXFORMAT_ALPHA_IN_MAP, 0 },
_ALPHA_REV(RGBA8888),
@@ -105,16 +107,13 @@ tx_table_be[] =
_ALPHA(RGBA_DXT5),
};
-static const struct {
- GLuint format, filter;
-}
-tx_table_le[] =
+static const struct tx_table tx_table_le[] =
{
_ALPHA(RGBA8888),
[ MESA_FORMAT_RGBA8888_REV ] = { R200_TXFORMAT_ABGR8888 | R200_TXFORMAT_ALPHA_IN_MAP, 0 },
_ALPHA(ARGB8888),
_ALPHA_REV(ARGB8888),
- _INVALID(RGB888),
+ [ MESA_FORMAT_RGB888 ] = { R200_TXFORMAT_ARGB8888, 0 },
_COLOR(RGB565),
_COLOR_REV(RGB565),
_ALPHA(ARGB4444),
@@ -161,30 +160,23 @@ static void r200SetTexImages( r200ContextPtr rmesa,
GLint i, texelBytes;
GLint numLevels;
GLint log2Width, log2Height, log2Depth;
- const GLuint ui = 1;
- const GLubyte littleEndian = *((const GLubyte *) &ui);
/* Set the hardware texture format
*/
+ if ( !t->image_override ) {
+ if ( VALID_FORMAT( baseImage->TexFormat->MesaFormat ) ) {
+ t->pp_txformat &= ~(R200_TXFORMAT_FORMAT_MASK |
+ R200_TXFORMAT_ALPHA_IN_MAP);
+ t->pp_txfilter &= ~R200_YUV_TO_RGB;
- t->pp_txformat &= ~(R200_TXFORMAT_FORMAT_MASK |
- R200_TXFORMAT_ALPHA_IN_MAP);
- t->pp_txfilter &= ~R200_YUV_TO_RGB;
-
- if ( VALID_FORMAT( baseImage->TexFormat->MesaFormat ) ) {
- if (littleEndian) {
t->pp_txformat |= tx_table_le[ baseImage->TexFormat->MesaFormat ].format;
t->pp_txfilter |= tx_table_le[ baseImage->TexFormat->MesaFormat ].filter;
}
else {
- t->pp_txformat |= tx_table_be[ baseImage->TexFormat->MesaFormat ].format;
- t->pp_txfilter |= tx_table_be[ baseImage->TexFormat->MesaFormat ].filter;
+ _mesa_problem(NULL, "unexpected texture format in %s", __FUNCTION__);
+ return;
}
}
- else {
- _mesa_problem(NULL, "unexpected texture format in %s", __FUNCTION__);
- return;
- }
texelBytes = baseImage->TexFormat->TexelBytes;
@@ -381,11 +373,13 @@ static void r200SetTexImages( r200ContextPtr rmesa,
* requires 64-byte aligned pitches, and we may/may not need the
* blitter. NPOT only!
*/
- if (baseImage->IsCompressed)
- t->pp_txpitch = (tObj->Image[0][t->base.firstLevel]->Width + 63) & ~(63);
- else
- t->pp_txpitch = ((tObj->Image[0][t->base.firstLevel]->Width * texelBytes) + 63) & ~(63);
- t->pp_txpitch -= 32;
+ if ( !t->image_override ) {
+ if (baseImage->IsCompressed)
+ t->pp_txpitch = (tObj->Image[0][t->base.firstLevel]->Width + 63) & ~(63);
+ else
+ t->pp_txpitch = ((tObj->Image[0][t->base.firstLevel]->Width * texelBytes) + 63) & ~(63);
+ t->pp_txpitch -= 32;
+ }
t->dirty_state = TEX_ALL;
@@ -980,6 +974,46 @@ static GLboolean r200UpdateTextureEnv( GLcontext *ctx, int unit, int slot, GLuin
return GL_TRUE;
}
+void r200SetTexOffset(__DRIcontext * pDRICtx, GLint texname,
+ unsigned long long offset, GLint depth, GLuint pitch)
+{
+ r200ContextPtr rmesa =
+ (r200ContextPtr) ((__DRIcontextPrivate *) pDRICtx->private)->
+ driverPrivate;
+ struct gl_texture_object *tObj =
+ _mesa_lookup_texture(rmesa->glCtx, texname);
+ r200TexObjPtr t;
+
+ if (!tObj)
+ return;
+
+ t = (r200TexObjPtr) tObj->DriverData;
+
+ t->image_override = GL_TRUE;
+
+ if (!offset)
+ return;
+
+ t->pp_txoffset = offset;
+ t->pp_txpitch = pitch - 32;
+
+ switch (depth) {
+ case 32:
+ t->pp_txformat = tx_table_le[MESA_FORMAT_ARGB8888].format;
+ t->pp_txfilter |= tx_table_le[MESA_FORMAT_ARGB8888].filter;
+ break;
+ case 24:
+ default:
+ t->pp_txformat = tx_table_le[MESA_FORMAT_RGB888].format;
+ t->pp_txfilter |= tx_table_le[MESA_FORMAT_RGB888].filter;
+ break;
+ case 16:
+ t->pp_txformat = tx_table_le[MESA_FORMAT_RGB565].format;
+ t->pp_txfilter |= tx_table_le[MESA_FORMAT_RGB565].filter;
+ break;
+ }
+}
+
#define REF_COLOR 1
#define REF_ALPHA 2
@@ -1561,7 +1595,7 @@ static GLboolean enable_tex_2d( GLcontext *ctx, int unit )
R200_FIREVERTICES( rmesa );
r200SetTexImages( rmesa, tObj );
r200UploadTexImages( rmesa, (r200TexObjPtr) tObj->DriverData, 0 );
- if ( !t->base.memBlock )
+ if ( !t->base.memBlock && !t->image_override )
return GL_FALSE;
}
@@ -1669,7 +1703,9 @@ static GLboolean enable_tex_rect( GLcontext *ctx, int unit )
R200_FIREVERTICES( rmesa );
r200SetTexImages( rmesa, tObj );
r200UploadTexImages( rmesa, (r200TexObjPtr) tObj->DriverData, 0 );
- if ( !t->base.memBlock && !rmesa->prefer_gart_client_texturing )
+ if ( !t->base.memBlock &&
+ !t->image_override &&
+ !rmesa->prefer_gart_client_texturing )
return GL_FALSE;
}
diff --git a/src/mesa/drivers/dri/radeon/radeon_screen.c b/src/mesa/drivers/dri/radeon/radeon_screen.c
index aa7fb633dd1..682cf3a5ee5 100644
--- a/src/mesa/drivers/dri/radeon/radeon_screen.c
+++ b/src/mesa/drivers/dri/radeon/radeon_screen.c
@@ -53,6 +53,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#include "r200_context.h"
#include "r200_ioctl.h"
#include "r200_span.h"
+#include "r200_tex.h"
#elif RADEON_COMMON && defined(RADEON_COMMON_FOR_R300)
#include "r300_context.h"
#include "r300_fragprog.h"
@@ -973,7 +974,8 @@ static const struct __DriverAPIRec r200API = {
.WaitForMSC = driWaitForMSC32,
.WaitForSBC = NULL,
.SwapBuffersMSC = NULL,
- .CopySubBuffer = r200CopySubBuffer
+ .CopySubBuffer = r200CopySubBuffer,
+ .setTexOffset = r200SetTexOffset
};
#endif
diff --git a/src/mesa/drivers/dri/unichrome/via_tris.c b/src/mesa/drivers/dri/unichrome/via_tris.c
index 4cc7942b1b6..b97dacde241 100644
--- a/src/mesa/drivers/dri/unichrome/via_tris.c
+++ b/src/mesa/drivers/dri/unichrome/via_tris.c
@@ -625,13 +625,12 @@ static void viaFastRenderClippedPoly(GLcontext *ctx, const GLuint *elts,
}
}
+
/**********************************************************************/
/* Choose render functions */
/**********************************************************************/
-
-
#define _VIA_NEW_VERTEX (_NEW_TEXTURE | \
_DD_NEW_SEPARATE_SPECULAR | \
_DD_NEW_TRI_UNFILLED | \
@@ -665,14 +664,17 @@ static void viaChooseRenderState(GLcontext *ctx)
vmesa->drawTri = via_draw_triangle;
}
- if (flags & (ANY_FALLBACK_FLAGS|ANY_RASTER_FLAGS)) {
- if (flags & DD_TRI_LIGHT_TWOSIDE) index |= VIA_TWOSIDE_BIT;
- if (flags & DD_TRI_OFFSET) index |= VIA_OFFSET_BIT;
- if (flags & DD_TRI_UNFILLED) index |= VIA_UNFILLED_BIT;
- if (flags & ANY_FALLBACK_FLAGS) index |= VIA_FALLBACK_BIT;
-
- /* Hook in fallbacks for specific primitives.
- */
+ if (flags & (ANY_FALLBACK_FLAGS | ANY_RASTER_FLAGS)) {
+ if (ctx->Light.Enabled && ctx->Light.Model.TwoSide)
+ index |= VIA_TWOSIDE_BIT;
+ if (ctx->Polygon.FrontMode != GL_FILL || ctx->Polygon.BackMode != GL_FILL)
+ index |= VIA_UNFILLED_BIT;
+ if (flags & DD_TRI_OFFSET)
+ index |= VIA_OFFSET_BIT;
+ if (flags & ANY_FALLBACK_FLAGS)
+ index |= VIA_FALLBACK_BIT;
+
+ /* Hook in fallbacks for specific primitives. */
if (flags & POINT_FALLBACK)
vmesa->drawPoint = via_fallback_point;
@@ -683,11 +685,8 @@ static void viaChooseRenderState(GLcontext *ctx)
vmesa->drawTri = via_fallback_tri;
}
-
- if ((flags & DD_SEPARATE_SPECULAR) &&
- ctx->Light.ShadeModel == GL_FLAT) {
+ if ((flags & DD_SEPARATE_SPECULAR) && ctx->Light.ShadeModel == GL_FLAT)
index = VIA_MAX_TRIFUNC; /* flat specular */
- }
if (vmesa->renderIndex != index) {
vmesa->renderIndex = index;
diff --git a/src/mesa/drivers/windows/gdi/wmesa.c b/src/mesa/drivers/windows/gdi/wmesa.c
index 5b67439f0f2..c1d26a31a45 100644
--- a/src/mesa/drivers/windows/gdi/wmesa.c
+++ b/src/mesa/drivers/windows/gdi/wmesa.c
@@ -458,23 +458,84 @@ static void write_rgba_span_front(const GLcontext *ctx,
const GLubyte rgba[][4],
const GLubyte mask[] )
{
- WMesaContext pwc = wmesa_context(ctx);
- GLuint i;
-
- (void) ctx;
- y=FLIP(y);
- if (mask) {
- for (i=0; i<n; i++)
- if (mask[i])
- SetPixel(pwc->hDC, x+i, y, RGB(rgba[i][RCOMP], rgba[i][GCOMP],
- rgba[i][BCOMP]));
- }
- else {
- for (i=0; i<n; i++)
- SetPixel(pwc->hDC, x+i, y, RGB(rgba[i][RCOMP], rgba[i][GCOMP],
- rgba[i][BCOMP]));
- }
-
+ WMesaContext pwc = wmesa_context(ctx);
+ WMesaFramebuffer pwfb = wmesa_lookup_framebuffer(pwc->hDC);
+ CONST BITMAPINFO bmi=
+ {
+ {
+ sizeof(BITMAPINFOHEADER),
+ n, 1, 1, 32, BI_RGB, 0, 1, 1, 0, 0
+ }
+ };
+ HBITMAP bmp=0;
+ HDC mdc=0;
+ typedef union
+ {
+ unsigned i;
+ struct {
+ unsigned b:8, g:8, r:8, a:8;
+ };
+ } BGRA;
+ BGRA *bgra, c;
+ int i;
+
+ if (n < 16) { // the value 16 is just guessed
+ y=FLIP(y);
+ if (mask) {
+ for (i=0; i<n; i++)
+ if (mask[i])
+ SetPixel(pwc->hDC, x+i, y,
+ RGB(rgba[i][RCOMP], rgba[i][GCOMP], rgba[i][BCOMP]));
+ }
+ else {
+ for (i=0; i<n; i++)
+ SetPixel(pwc->hDC, x+i, y,
+ RGB(rgba[i][RCOMP], rgba[i][GCOMP], rgba[i][BCOMP]));
+ }
+ }
+ else {
+ if (!pwfb) {
+ _mesa_problem(NULL, "wmesa: write_rgba_span_front on unknown hdc");
+ return;
+ }
+ bgra=malloc(n*sizeof(BGRA));
+ if (!bgra) {
+ _mesa_problem(NULL, "wmesa: write_rgba_span_front: out of memory");
+ return;
+ }
+ c.a=0;
+ if (mask) {
+ for (i=0; i<n; i++) {
+ if (mask[i]) {
+ c.r=rgba[i][RCOMP];
+ c.g=rgba[i][GCOMP];
+ c.b=rgba[i][BCOMP];
+ c.a=rgba[i][ACOMP];
+ bgra[i]=c;
+ }
+ else
+ bgra[i].i=0;
+ }
+ }
+ else {
+ for (i=0; i<n; i++) {
+ c.r=rgba[i][RCOMP];
+ c.g=rgba[i][GCOMP];
+ c.b=rgba[i][BCOMP];
+ c.a=rgba[i][ACOMP];
+ bgra[i]=c;
+ }
+ }
+ bmp=CreateBitmap(n, 1, 1, 32, bgra);
+ mdc=CreateCompatibleDC(pwfb->hDC);
+ SelectObject(mdc, bmp);
+ y=FLIP(y);
+ BitBlt(pwfb->hDC, x, y, n, 1, mdc, 0, 0, SRCCOPY);
+ SelectObject(mdc, 0);
+ DeleteObject(bmp);
+ DeleteDC(mdc);
+ free(bgra);
+ }
}
/* Write a horizontal span of RGB color pixels with a boolean mask. */
diff --git a/src/mesa/drivers/x11/xm_dd.c b/src/mesa/drivers/x11/xm_dd.c
index c8546236fbf..4c8bf5f656d 100644
--- a/src/mesa/drivers/x11/xm_dd.c
+++ b/src/mesa/drivers/x11/xm_dd.c
@@ -159,7 +159,6 @@ index_mask( GLcontext *ctx, GLuint mask )
m = (unsigned long) mask;
}
XMesaSetPlaneMask( xmesa->display, xmbuf->cleargc, m );
- XMesaSetPlaneMask( xmesa->display, xmbuf->gc, m );
}
}
@@ -191,7 +190,6 @@ color_mask(GLcontext *ctx,
if (bmask) m |= GET_BLUEMASK(xmesa->xm_visual);
}
XMesaSetPlaneMask( xmesa->display, xmbuf->cleargc, m );
- XMesaSetPlaneMask( xmesa->display, xmbuf->gc, m );
}
}
@@ -450,13 +448,13 @@ xmesa_DrawPixels_8R8G8B( GLcontext *ctx,
ctx->_ImageTransferState == 0 && /* no color tables, scale/bias, etc */
ctx->Pixel.ZoomX == 1.0 && /* no zooming */
ctx->Pixel.ZoomY == 1.0 &&
- xrb->pixmap &&
+ xrb->pixmap && /* drawing to pixmap or window */
xrb->Base.AlphaBits == 0)
{
const XMesaContext xmesa = XMESA_CONTEXT(ctx);
XMesaBuffer xmbuf = XMESA_BUFFER(ctx->DrawBuffer);
XMesaDisplay *dpy = xmesa->xm_visual->display;
- const XMesaGC gc = xmbuf->gc;
+ const XMesaGC gc = xmbuf->cleargc; /* effected by glColorMask */
int dstX = x;
int dstY = y;
int w = width;
@@ -551,7 +549,7 @@ xmesa_DrawPixels_5R6G5B( GLcontext *ctx,
const SWcontext *swrast = SWRAST_CONTEXT( ctx );
XMesaDisplay *dpy = xmesa->xm_visual->display;
XMesaBuffer xmbuf = XMESA_BUFFER(ctx->DrawBuffer);
- const XMesaGC gc = xmbuf->gc;
+ const XMesaGC gc = xmbuf->cleargc; /* effected by glColorMask */
ASSERT(dpy);
ASSERT(gc);
@@ -560,7 +558,7 @@ xmesa_DrawPixels_5R6G5B( GLcontext *ctx,
if (swrast->NewState)
_swrast_validate_derived( ctx );
- if (xrb->pixmap &&
+ if (xrb->pixmap && /* drawing to pixmap or window */
format == GL_RGB &&
type == GL_UNSIGNED_SHORT_5_6_5 &&
!ctx->Color.DitherFlag && /* no dithering */
@@ -651,7 +649,8 @@ xmesa_CopyPixels( GLcontext *ctx,
const XMesaContext xmesa = XMESA_CONTEXT(ctx);
const SWcontext *swrast = SWRAST_CONTEXT( ctx );
XMesaDisplay *dpy = xmesa->xm_visual->display;
- const XMesaGC gc = ((XMesaBuffer) ctx->DrawBuffer)->gc;
+ XMesaBuffer xmbuf = XMESA_BUFFER(ctx->DrawBuffer);
+ const XMesaGC gc = xmbuf->cleargc; /* effected by glColorMask */
struct xmesa_renderbuffer *srcXrb
= xmesa_renderbuffer(ctx->ReadBuffer->_ColorReadBuffer->Wrapped);
struct xmesa_renderbuffer *dstXrb
diff --git a/src/mesa/gl.pc.in b/src/mesa/gl.pc.in
new file mode 100644
index 00000000000..4b144ffa4b2
--- /dev/null
+++ b/src/mesa/gl.pc.in
@@ -0,0 +1,11 @@
+prefix=@INSTALL_DIR@
+exec_prefix=${prefix}
+libdir=${exec_prefix}/@LIB_DIR@
+includedir=${prefix}/include
+
+Name: gl
+Description: Mesa OpenGL library
+Requires:
+Version: @VERSION@
+Libs: -L${libdir} -lGL
+Cflags: -I${includedir}
diff --git a/src/mesa/glapi/dispatch.h b/src/mesa/glapi/dispatch.h
index a128164323a..d073f4a5ea9 100644
--- a/src/mesa/glapi/dispatch.h
+++ b/src/mesa/glapi/dispatch.h
@@ -2362,6 +2362,9 @@
#define CALL_BlitFramebufferEXT(disp, parameters) (*((disp)->BlitFramebufferEXT)) parameters
#define GET_BlitFramebufferEXT(disp) ((disp)->BlitFramebufferEXT)
#define SET_BlitFramebufferEXT(disp, fn) ((disp)->BlitFramebufferEXT = fn)
+#define CALL_StencilFuncSeparateATI(disp, parameters) (*((disp)->StencilFuncSeparateATI)) parameters
+#define GET_StencilFuncSeparateATI(disp) ((disp)->StencilFuncSeparateATI)
+#define SET_StencilFuncSeparateATI(disp, fn) ((disp)->StencilFuncSeparateATI = fn)
#define CALL_ProgramEnvParameters4fvEXT(disp, parameters) (*((disp)->ProgramEnvParameters4fvEXT)) parameters
#define GET_ProgramEnvParameters4fvEXT(disp) ((disp)->ProgramEnvParameters4fvEXT)
#define SET_ProgramEnvParameters4fvEXT(disp, fn) ((disp)->ProgramEnvParameters4fvEXT = fn)
@@ -2377,7 +2380,7 @@
#else
-#define driDispatchRemapTable_size 364
+#define driDispatchRemapTable_size 365
extern int driDispatchRemapTable[ driDispatchRemapTable_size ];
#define AttachShader_remap_index 0
@@ -2740,10 +2743,11 @@ extern int driDispatchRemapTable[ driDispatchRemapTable_size ];
#define IsRenderbufferEXT_remap_index 357
#define RenderbufferStorageEXT_remap_index 358
#define BlitFramebufferEXT_remap_index 359
-#define ProgramEnvParameters4fvEXT_remap_index 360
-#define ProgramLocalParameters4fvEXT_remap_index 361
-#define GetQueryObjecti64vEXT_remap_index 362
-#define GetQueryObjectui64vEXT_remap_index 363
+#define StencilFuncSeparateATI_remap_index 360
+#define ProgramEnvParameters4fvEXT_remap_index 361
+#define ProgramLocalParameters4fvEXT_remap_index 362
+#define GetQueryObjecti64vEXT_remap_index 363
+#define GetQueryObjectui64vEXT_remap_index 364
#define CALL_AttachShader(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLuint)), driDispatchRemapTable[AttachShader_remap_index], parameters)
#define GET_AttachShader(disp) GET_by_offset(disp, driDispatchRemapTable[AttachShader_remap_index])
@@ -3825,6 +3829,9 @@ extern int driDispatchRemapTable[ driDispatchRemapTable_size ];
#define CALL_BlitFramebufferEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint, GLint, GLint, GLint, GLint, GLint, GLbitfield, GLenum)), driDispatchRemapTable[BlitFramebufferEXT_remap_index], parameters)
#define GET_BlitFramebufferEXT(disp) GET_by_offset(disp, driDispatchRemapTable[BlitFramebufferEXT_remap_index])
#define SET_BlitFramebufferEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BlitFramebufferEXT_remap_index], fn)
+#define CALL_StencilFuncSeparateATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint, GLuint)), driDispatchRemapTable[StencilFuncSeparateATI_remap_index], parameters)
+#define GET_StencilFuncSeparateATI(disp) GET_by_offset(disp, driDispatchRemapTable[StencilFuncSeparateATI_remap_index])
+#define SET_StencilFuncSeparateATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[StencilFuncSeparateATI_remap_index], fn)
#define CALL_ProgramEnvParameters4fvEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLsizei, const GLfloat *)), driDispatchRemapTable[ProgramEnvParameters4fvEXT_remap_index], parameters)
#define GET_ProgramEnvParameters4fvEXT(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramEnvParameters4fvEXT_remap_index])
#define SET_ProgramEnvParameters4fvEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramEnvParameters4fvEXT_remap_index], fn)
diff --git a/src/mesa/glapi/gl_API.xml b/src/mesa/glapi/gl_API.xml
index 4bd3b2f0fb7..3d47e6f2cef 100644
--- a/src/mesa/glapi/gl_API.xml
+++ b/src/mesa/glapi/gl_API.xml
@@ -5138,7 +5138,7 @@
<function name="StencilOpSeparate" offset="assign">
<param name="face" type="GLenum"/>
- <param name="fail" type="GLenum"/>
+ <param name="sfail" type="GLenum"/>
<param name="zfail" type="GLenum"/>
<param name="zpass" type="GLenum"/>
<glx ignore="true"/>
@@ -12156,6 +12156,35 @@
</function>
</category>
+<category name="GL_ATI_separate_stencil">
+ <enum name="STENCIL_BACK_FUNC_ATI" count="1" value="0x8800">
+ <size name="Get" mode="get"/>
+ </enum>
+ <enum name="STENCIL_BACK_FAIL_ATI" count="1" value="0x8801">
+ <size name="Get" mode="get"/>
+ </enum>
+ <enum name="STENCIL_BACK_PASS_DEPTH_FAIL_ATI" count="1" value="0x8802">
+ <size name="Get" mode="get"/>
+ </enum>
+ <enum name="STENCIL_BACK_PASS_DEPTH_PASS_ATI" count="1" value="0x8803">
+ <size name="Get" mode="get"/>
+ </enum>
+
+ <function name="StencilOpSeparateATI" alias="StencilOpSeparate" static_dispatch="false">
+ <param name="face" type="GLenum"/>
+ <param name="sfail" type="GLenum"/>
+ <param name="zfail" type="GLenum"/>
+ <param name="zpass" type="GLenum"/>
+ </function>
+ <function name="StencilFuncSeparateATI" offset="assign" static_dispatch="false">
+ <param name="frontfunc" type="GLenum"/>
+ <param name="backfunc" type="GLenum"/>
+ <param name="ref" type="GLint"/>
+ <param name="mask" type="GLuint"/>
+ </function>
+
+</category>
+
<category name="GL_EXT_gpu_program_parameters">
<function name="ProgramEnvParameters4fvEXT" offset="assign" static_dispatch="false">
<param name="target" type="GLenum"/>
diff --git a/src/mesa/glapi/glapioffsets.h b/src/mesa/glapi/glapioffsets.h
index cb0d21083ef..4c6dd98a6d9 100644
--- a/src/mesa/glapi/glapioffsets.h
+++ b/src/mesa/glapi/glapioffsets.h
@@ -800,11 +800,12 @@
#define _gloffset_IsRenderbufferEXT 765
#define _gloffset_RenderbufferStorageEXT 766
#define _gloffset_BlitFramebufferEXT 767
-#define _gloffset_ProgramEnvParameters4fvEXT 768
-#define _gloffset_ProgramLocalParameters4fvEXT 769
-#define _gloffset_GetQueryObjecti64vEXT 770
-#define _gloffset_GetQueryObjectui64vEXT 771
-#define _gloffset_FIRST_DYNAMIC 772
+#define _gloffset_StencilFuncSeparateATI 768
+#define _gloffset_ProgramEnvParameters4fvEXT 769
+#define _gloffset_ProgramLocalParameters4fvEXT 770
+#define _gloffset_GetQueryObjecti64vEXT 771
+#define _gloffset_GetQueryObjectui64vEXT 772
+#define _gloffset_FIRST_DYNAMIC 773
#else
@@ -1168,6 +1169,7 @@
#define _gloffset_IsRenderbufferEXT driDispatchRemapTable[IsRenderbufferEXT_remap_index]
#define _gloffset_RenderbufferStorageEXT driDispatchRemapTable[RenderbufferStorageEXT_remap_index]
#define _gloffset_BlitFramebufferEXT driDispatchRemapTable[BlitFramebufferEXT_remap_index]
+#define _gloffset_StencilFuncSeparateATI driDispatchRemapTable[StencilFuncSeparateATI_remap_index]
#define _gloffset_ProgramEnvParameters4fvEXT driDispatchRemapTable[ProgramEnvParameters4fvEXT_remap_index]
#define _gloffset_ProgramLocalParameters4fvEXT driDispatchRemapTable[ProgramLocalParameters4fvEXT_remap_index]
#define _gloffset_GetQueryObjecti64vEXT driDispatchRemapTable[GetQueryObjecti64vEXT_remap_index]
diff --git a/src/mesa/glapi/glapitable.h b/src/mesa/glapi/glapitable.h
index 4af0c2d43b8..a66f6f386e6 100644
--- a/src/mesa/glapi/glapitable.h
+++ b/src/mesa/glapi/glapitable.h
@@ -464,7 +464,7 @@ struct _glapi_table
GLboolean (GLAPIENTRYP IsShader)(GLuint shader); /* 420 */
void (GLAPIENTRYP StencilFuncSeparate)(GLenum face, GLenum func, GLint ref, GLuint mask); /* 421 */
void (GLAPIENTRYP StencilMaskSeparate)(GLenum face, GLuint mask); /* 422 */
- void (GLAPIENTRYP StencilOpSeparate)(GLenum face, GLenum fail, GLenum zfail, GLenum zpass); /* 423 */
+ void (GLAPIENTRYP StencilOpSeparate)(GLenum face, GLenum sfail, GLenum zfail, GLenum zpass); /* 423 */
void (GLAPIENTRYP UniformMatrix2x3fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value); /* 424 */
void (GLAPIENTRYP UniformMatrix2x4fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value); /* 425 */
void (GLAPIENTRYP UniformMatrix3x2fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value); /* 426 */
@@ -809,10 +809,11 @@ struct _glapi_table
GLboolean (GLAPIENTRYP IsRenderbufferEXT)(GLuint renderbuffer); /* 765 */
void (GLAPIENTRYP RenderbufferStorageEXT)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height); /* 766 */
void (GLAPIENTRYP BlitFramebufferEXT)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); /* 767 */
- void (GLAPIENTRYP ProgramEnvParameters4fvEXT)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); /* 768 */
- void (GLAPIENTRYP ProgramLocalParameters4fvEXT)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); /* 769 */
- void (GLAPIENTRYP GetQueryObjecti64vEXT)(GLuint id, GLenum pname, GLint64EXT * params); /* 770 */
- void (GLAPIENTRYP GetQueryObjectui64vEXT)(GLuint id, GLenum pname, GLuint64EXT * params); /* 771 */
+ void (GLAPIENTRYP StencilFuncSeparateATI)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); /* 768 */
+ void (GLAPIENTRYP ProgramEnvParameters4fvEXT)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); /* 769 */
+ void (GLAPIENTRYP ProgramLocalParameters4fvEXT)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); /* 770 */
+ void (GLAPIENTRYP GetQueryObjecti64vEXT)(GLuint id, GLenum pname, GLint64EXT * params); /* 771 */
+ void (GLAPIENTRYP GetQueryObjectui64vEXT)(GLuint id, GLenum pname, GLuint64EXT * params); /* 772 */
};
#endif /* !defined( _GLAPI_TABLE_H_ ) */
diff --git a/src/mesa/glapi/glapitemp.h b/src/mesa/glapi/glapitemp.h
index 2a8051ff0a9..1a979cf01c1 100644
--- a/src/mesa/glapi/glapitemp.h
+++ b/src/mesa/glapi/glapitemp.h
@@ -2754,9 +2754,16 @@ KEYWORD1 void KEYWORD2 NAME(StencilMaskSeparate)(GLenum face, GLuint mask)
DISPATCH(StencilMaskSeparate, (face, mask), (F, "glStencilMaskSeparate(0x%x, %d);\n", face, mask));
}
-KEYWORD1 void KEYWORD2 NAME(StencilOpSeparate)(GLenum face, GLenum fail, GLenum zfail, GLenum zpass)
+KEYWORD1 void KEYWORD2 NAME(StencilOpSeparate)(GLenum face, GLenum sfail, GLenum zfail, GLenum zpass)
{
- DISPATCH(StencilOpSeparate, (face, fail, zfail, zpass), (F, "glStencilOpSeparate(0x%x, 0x%x, 0x%x, 0x%x);\n", face, fail, zfail, zpass));
+ DISPATCH(StencilOpSeparate, (face, sfail, zfail, zpass), (F, "glStencilOpSeparate(0x%x, 0x%x, 0x%x, 0x%x);\n", face, sfail, zfail, zpass));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_423)(GLenum face, GLenum sfail, GLenum zfail, GLenum zpass);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_423)(GLenum face, GLenum sfail, GLenum zfail, GLenum zpass)
+{
+ DISPATCH(StencilOpSeparate, (face, sfail, zfail, zpass), (F, "glStencilOpSeparateATI(0x%x, 0x%x, 0x%x, 0x%x);\n", face, sfail, zfail, zpass));
}
KEYWORD1 void KEYWORD2 NAME(UniformMatrix2x3fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value)
@@ -5441,30 +5448,37 @@ KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_767)(GLint srcX0, GLint srcY0, GL
DISPATCH(BlitFramebufferEXT, (srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter), (F, "glBlitFramebufferEXT(%d, %d, %d, %d, %d, %d, %d, %d, %d, 0x%x);\n", srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter));
}
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_768)(GLenum target, GLuint index, GLsizei count, const GLfloat * params);
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_768)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask);
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_768)(GLenum target, GLuint index, GLsizei count, const GLfloat * params)
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_768)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask)
{
- DISPATCH(ProgramEnvParameters4fvEXT, (target, index, count, params), (F, "glProgramEnvParameters4fvEXT(0x%x, %d, %d, %p);\n", target, index, count, (const void *) params));
+ DISPATCH(StencilFuncSeparateATI, (frontfunc, backfunc, ref, mask), (F, "glStencilFuncSeparateATI(0x%x, 0x%x, %d, %d);\n", frontfunc, backfunc, ref, mask));
}
KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_769)(GLenum target, GLuint index, GLsizei count, const GLfloat * params);
KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_769)(GLenum target, GLuint index, GLsizei count, const GLfloat * params)
{
+ DISPATCH(ProgramEnvParameters4fvEXT, (target, index, count, params), (F, "glProgramEnvParameters4fvEXT(0x%x, %d, %d, %p);\n", target, index, count, (const void *) params));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_770)(GLenum target, GLuint index, GLsizei count, const GLfloat * params);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_770)(GLenum target, GLuint index, GLsizei count, const GLfloat * params)
+{
DISPATCH(ProgramLocalParameters4fvEXT, (target, index, count, params), (F, "glProgramLocalParameters4fvEXT(0x%x, %d, %d, %p);\n", target, index, count, (const void *) params));
}
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_770)(GLuint id, GLenum pname, GLint64EXT * params);
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_771)(GLuint id, GLenum pname, GLint64EXT * params);
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_770)(GLuint id, GLenum pname, GLint64EXT * params)
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_771)(GLuint id, GLenum pname, GLint64EXT * params)
{
DISPATCH(GetQueryObjecti64vEXT, (id, pname, params), (F, "glGetQueryObjecti64vEXT(%d, 0x%x, %p);\n", id, pname, (const void *) params));
}
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_771)(GLuint id, GLenum pname, GLuint64EXT * params);
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_772)(GLuint id, GLenum pname, GLuint64EXT * params);
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_771)(GLuint id, GLenum pname, GLuint64EXT * params)
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_772)(GLuint id, GLenum pname, GLuint64EXT * params)
{
DISPATCH(GetQueryObjectui64vEXT, (id, pname, params), (F, "glGetQueryObjectui64vEXT(%d, 0x%x, %p);\n", id, pname, (const void *) params));
}
@@ -6255,6 +6269,7 @@ static _glapi_proc DISPATCH_TABLE_NAME[] = {
TABLE_ENTRY(_dispatch_stub_769),
TABLE_ENTRY(_dispatch_stub_770),
TABLE_ENTRY(_dispatch_stub_771),
+ TABLE_ENTRY(_dispatch_stub_772),
/* A whole bunch of no-op functions. These might be called
* when someone tries to call a dynamically-registered
* extension function without a current rendering context.
diff --git a/src/mesa/glapi/glprocs.h b/src/mesa/glapi/glprocs.h
index 99120bcb687..bc0dc4f9a6c 100644
--- a/src/mesa/glapi/glprocs.h
+++ b/src/mesa/glapi/glprocs.h
@@ -820,6 +820,7 @@ static const char gl_string_table[] =
"glIsRenderbufferEXT\0"
"glRenderbufferStorageEXT\0"
"glBlitFramebufferEXT\0"
+ "glStencilFuncSeparateATI\0"
"glProgramEnvParameters4fvEXT\0"
"glProgramLocalParameters4fvEXT\0"
"glGetQueryObjecti64vEXT\0"
@@ -915,6 +916,7 @@ static const char gl_string_table[] =
"glMultiTexCoord4iv\0"
"glMultiTexCoord4s\0"
"glMultiTexCoord4sv\0"
+ "glStencilOpSeparateATI\0"
"glLoadTransposeMatrixd\0"
"glLoadTransposeMatrixf\0"
"glMultTransposeMatrixd\0"
@@ -1147,6 +1149,7 @@ static const char gl_string_table[] =
#define gl_dispatch_stub_769 mgl_dispatch_stub_769
#define gl_dispatch_stub_770 mgl_dispatch_stub_770
#define gl_dispatch_stub_771 mgl_dispatch_stub_771
+#define gl_dispatch_stub_772 mgl_dispatch_stub_772
#endif /* USE_MGL_NAMESPACE */
@@ -1197,6 +1200,7 @@ extern void gl_dispatch_stub_768(void);
extern void gl_dispatch_stub_769(void);
extern void gl_dispatch_stub_770(void);
extern void gl_dispatch_stub_771(void);
+extern void gl_dispatch_stub_772(void);
#endif /* defined(NEED_FUNCTION_POINTER) || defined(GLX_INDIRECT_RENDERING) */
static const glprocs_table_t static_functions[] = {
@@ -1968,284 +1972,286 @@ static const glprocs_table_t static_functions[] = {
NAME_FUNC_OFFSET(13404, glIsRenderbufferEXT, glIsRenderbufferEXT, NULL, _gloffset_IsRenderbufferEXT),
NAME_FUNC_OFFSET(13424, glRenderbufferStorageEXT, glRenderbufferStorageEXT, NULL, _gloffset_RenderbufferStorageEXT),
NAME_FUNC_OFFSET(13449, gl_dispatch_stub_767, gl_dispatch_stub_767, NULL, _gloffset_BlitFramebufferEXT),
- NAME_FUNC_OFFSET(13470, gl_dispatch_stub_768, gl_dispatch_stub_768, NULL, _gloffset_ProgramEnvParameters4fvEXT),
- NAME_FUNC_OFFSET(13499, gl_dispatch_stub_769, gl_dispatch_stub_769, NULL, _gloffset_ProgramLocalParameters4fvEXT),
- NAME_FUNC_OFFSET(13530, gl_dispatch_stub_770, gl_dispatch_stub_770, NULL, _gloffset_GetQueryObjecti64vEXT),
- NAME_FUNC_OFFSET(13554, gl_dispatch_stub_771, gl_dispatch_stub_771, NULL, _gloffset_GetQueryObjectui64vEXT),
- NAME_FUNC_OFFSET(13579, glArrayElement, glArrayElement, NULL, _gloffset_ArrayElement),
- NAME_FUNC_OFFSET(13597, glBindTexture, glBindTexture, NULL, _gloffset_BindTexture),
- NAME_FUNC_OFFSET(13614, glDrawArrays, glDrawArrays, NULL, _gloffset_DrawArrays),
- NAME_FUNC_OFFSET(13630, glAreTexturesResident, glAreTexturesResidentEXT, glAreTexturesResidentEXT, _gloffset_AreTexturesResident),
- NAME_FUNC_OFFSET(13655, glCopyTexImage1D, glCopyTexImage1D, NULL, _gloffset_CopyTexImage1D),
- NAME_FUNC_OFFSET(13675, glCopyTexImage2D, glCopyTexImage2D, NULL, _gloffset_CopyTexImage2D),
- NAME_FUNC_OFFSET(13695, glCopyTexSubImage1D, glCopyTexSubImage1D, NULL, _gloffset_CopyTexSubImage1D),
- NAME_FUNC_OFFSET(13718, glCopyTexSubImage2D, glCopyTexSubImage2D, NULL, _gloffset_CopyTexSubImage2D),
- NAME_FUNC_OFFSET(13741, glDeleteTextures, glDeleteTexturesEXT, glDeleteTexturesEXT, _gloffset_DeleteTextures),
- NAME_FUNC_OFFSET(13761, glGenTextures, glGenTexturesEXT, glGenTexturesEXT, _gloffset_GenTextures),
- NAME_FUNC_OFFSET(13778, glGetPointerv, glGetPointerv, NULL, _gloffset_GetPointerv),
- NAME_FUNC_OFFSET(13795, glIsTexture, glIsTextureEXT, glIsTextureEXT, _gloffset_IsTexture),
- NAME_FUNC_OFFSET(13810, glPrioritizeTextures, glPrioritizeTextures, NULL, _gloffset_PrioritizeTextures),
- NAME_FUNC_OFFSET(13834, glTexSubImage1D, glTexSubImage1D, NULL, _gloffset_TexSubImage1D),
- NAME_FUNC_OFFSET(13853, glTexSubImage2D, glTexSubImage2D, NULL, _gloffset_TexSubImage2D),
- NAME_FUNC_OFFSET(13872, glBlendColor, glBlendColor, NULL, _gloffset_BlendColor),
- NAME_FUNC_OFFSET(13888, glBlendEquation, glBlendEquation, NULL, _gloffset_BlendEquation),
- NAME_FUNC_OFFSET(13907, glDrawRangeElements, glDrawRangeElements, NULL, _gloffset_DrawRangeElements),
- NAME_FUNC_OFFSET(13930, glColorTable, glColorTable, NULL, _gloffset_ColorTable),
- NAME_FUNC_OFFSET(13946, glColorTable, glColorTable, NULL, _gloffset_ColorTable),
- NAME_FUNC_OFFSET(13962, glColorTableParameterfv, glColorTableParameterfv, NULL, _gloffset_ColorTableParameterfv),
- NAME_FUNC_OFFSET(13989, glColorTableParameteriv, glColorTableParameteriv, NULL, _gloffset_ColorTableParameteriv),
- NAME_FUNC_OFFSET(14016, glCopyColorTable, glCopyColorTable, NULL, _gloffset_CopyColorTable),
- NAME_FUNC_OFFSET(14036, glGetColorTable, glGetColorTableEXT, glGetColorTableEXT, _gloffset_GetColorTable),
- NAME_FUNC_OFFSET(14055, glGetColorTable, glGetColorTableEXT, glGetColorTableEXT, _gloffset_GetColorTable),
- NAME_FUNC_OFFSET(14074, glGetColorTableParameterfv, glGetColorTableParameterfvEXT, glGetColorTableParameterfvEXT, _gloffset_GetColorTableParameterfv),
- NAME_FUNC_OFFSET(14104, glGetColorTableParameterfv, glGetColorTableParameterfvEXT, glGetColorTableParameterfvEXT, _gloffset_GetColorTableParameterfv),
- NAME_FUNC_OFFSET(14134, glGetColorTableParameteriv, glGetColorTableParameterivEXT, glGetColorTableParameterivEXT, _gloffset_GetColorTableParameteriv),
- NAME_FUNC_OFFSET(14164, glGetColorTableParameteriv, glGetColorTableParameterivEXT, glGetColorTableParameterivEXT, _gloffset_GetColorTableParameteriv),
- NAME_FUNC_OFFSET(14194, glColorSubTable, glColorSubTable, NULL, _gloffset_ColorSubTable),
- NAME_FUNC_OFFSET(14213, glCopyColorSubTable, glCopyColorSubTable, NULL, _gloffset_CopyColorSubTable),
- NAME_FUNC_OFFSET(14236, glConvolutionFilter1D, glConvolutionFilter1D, NULL, _gloffset_ConvolutionFilter1D),
- NAME_FUNC_OFFSET(14261, glConvolutionFilter2D, glConvolutionFilter2D, NULL, _gloffset_ConvolutionFilter2D),
- NAME_FUNC_OFFSET(14286, glConvolutionParameterf, glConvolutionParameterf, NULL, _gloffset_ConvolutionParameterf),
- NAME_FUNC_OFFSET(14313, glConvolutionParameterfv, glConvolutionParameterfv, NULL, _gloffset_ConvolutionParameterfv),
- NAME_FUNC_OFFSET(14341, glConvolutionParameteri, glConvolutionParameteri, NULL, _gloffset_ConvolutionParameteri),
- NAME_FUNC_OFFSET(14368, glConvolutionParameteriv, glConvolutionParameteriv, NULL, _gloffset_ConvolutionParameteriv),
- NAME_FUNC_OFFSET(14396, glCopyConvolutionFilter1D, glCopyConvolutionFilter1D, NULL, _gloffset_CopyConvolutionFilter1D),
- NAME_FUNC_OFFSET(14425, glCopyConvolutionFilter2D, glCopyConvolutionFilter2D, NULL, _gloffset_CopyConvolutionFilter2D),
- NAME_FUNC_OFFSET(14454, glGetConvolutionFilter, gl_dispatch_stub_356, gl_dispatch_stub_356, _gloffset_GetConvolutionFilter),
- NAME_FUNC_OFFSET(14480, glGetConvolutionParameterfv, gl_dispatch_stub_357, gl_dispatch_stub_357, _gloffset_GetConvolutionParameterfv),
- NAME_FUNC_OFFSET(14511, glGetConvolutionParameteriv, gl_dispatch_stub_358, gl_dispatch_stub_358, _gloffset_GetConvolutionParameteriv),
- NAME_FUNC_OFFSET(14542, glGetSeparableFilter, gl_dispatch_stub_359, gl_dispatch_stub_359, _gloffset_GetSeparableFilter),
- NAME_FUNC_OFFSET(14566, glSeparableFilter2D, glSeparableFilter2D, NULL, _gloffset_SeparableFilter2D),
- NAME_FUNC_OFFSET(14589, glGetHistogram, gl_dispatch_stub_361, gl_dispatch_stub_361, _gloffset_GetHistogram),
- NAME_FUNC_OFFSET(14607, glGetHistogramParameterfv, gl_dispatch_stub_362, gl_dispatch_stub_362, _gloffset_GetHistogramParameterfv),
- NAME_FUNC_OFFSET(14636, glGetHistogramParameteriv, gl_dispatch_stub_363, gl_dispatch_stub_363, _gloffset_GetHistogramParameteriv),
- NAME_FUNC_OFFSET(14665, glGetMinmax, gl_dispatch_stub_364, gl_dispatch_stub_364, _gloffset_GetMinmax),
- NAME_FUNC_OFFSET(14680, glGetMinmaxParameterfv, gl_dispatch_stub_365, gl_dispatch_stub_365, _gloffset_GetMinmaxParameterfv),
- NAME_FUNC_OFFSET(14706, glGetMinmaxParameteriv, gl_dispatch_stub_366, gl_dispatch_stub_366, _gloffset_GetMinmaxParameteriv),
- NAME_FUNC_OFFSET(14732, glHistogram, glHistogram, NULL, _gloffset_Histogram),
- NAME_FUNC_OFFSET(14747, glMinmax, glMinmax, NULL, _gloffset_Minmax),
- NAME_FUNC_OFFSET(14759, glResetHistogram, glResetHistogram, NULL, _gloffset_ResetHistogram),
- NAME_FUNC_OFFSET(14779, glResetMinmax, glResetMinmax, NULL, _gloffset_ResetMinmax),
- NAME_FUNC_OFFSET(14796, glTexImage3D, glTexImage3D, NULL, _gloffset_TexImage3D),
- NAME_FUNC_OFFSET(14812, glTexSubImage3D, glTexSubImage3D, NULL, _gloffset_TexSubImage3D),
- NAME_FUNC_OFFSET(14831, glCopyTexSubImage3D, glCopyTexSubImage3D, NULL, _gloffset_CopyTexSubImage3D),
- NAME_FUNC_OFFSET(14854, glActiveTextureARB, glActiveTextureARB, NULL, _gloffset_ActiveTextureARB),
- NAME_FUNC_OFFSET(14870, glClientActiveTextureARB, glClientActiveTextureARB, NULL, _gloffset_ClientActiveTextureARB),
- NAME_FUNC_OFFSET(14892, glMultiTexCoord1dARB, glMultiTexCoord1dARB, NULL, _gloffset_MultiTexCoord1dARB),
- NAME_FUNC_OFFSET(14910, glMultiTexCoord1dvARB, glMultiTexCoord1dvARB, NULL, _gloffset_MultiTexCoord1dvARB),
- NAME_FUNC_OFFSET(14929, glMultiTexCoord1fARB, glMultiTexCoord1fARB, NULL, _gloffset_MultiTexCoord1fARB),
- NAME_FUNC_OFFSET(14947, glMultiTexCoord1fvARB, glMultiTexCoord1fvARB, NULL, _gloffset_MultiTexCoord1fvARB),
- NAME_FUNC_OFFSET(14966, glMultiTexCoord1iARB, glMultiTexCoord1iARB, NULL, _gloffset_MultiTexCoord1iARB),
- NAME_FUNC_OFFSET(14984, glMultiTexCoord1ivARB, glMultiTexCoord1ivARB, NULL, _gloffset_MultiTexCoord1ivARB),
- NAME_FUNC_OFFSET(15003, glMultiTexCoord1sARB, glMultiTexCoord1sARB, NULL, _gloffset_MultiTexCoord1sARB),
- NAME_FUNC_OFFSET(15021, glMultiTexCoord1svARB, glMultiTexCoord1svARB, NULL, _gloffset_MultiTexCoord1svARB),
- NAME_FUNC_OFFSET(15040, glMultiTexCoord2dARB, glMultiTexCoord2dARB, NULL, _gloffset_MultiTexCoord2dARB),
- NAME_FUNC_OFFSET(15058, glMultiTexCoord2dvARB, glMultiTexCoord2dvARB, NULL, _gloffset_MultiTexCoord2dvARB),
- NAME_FUNC_OFFSET(15077, glMultiTexCoord2fARB, glMultiTexCoord2fARB, NULL, _gloffset_MultiTexCoord2fARB),
- NAME_FUNC_OFFSET(15095, glMultiTexCoord2fvARB, glMultiTexCoord2fvARB, NULL, _gloffset_MultiTexCoord2fvARB),
- NAME_FUNC_OFFSET(15114, glMultiTexCoord2iARB, glMultiTexCoord2iARB, NULL, _gloffset_MultiTexCoord2iARB),
- NAME_FUNC_OFFSET(15132, glMultiTexCoord2ivARB, glMultiTexCoord2ivARB, NULL, _gloffset_MultiTexCoord2ivARB),
- NAME_FUNC_OFFSET(15151, glMultiTexCoord2sARB, glMultiTexCoord2sARB, NULL, _gloffset_MultiTexCoord2sARB),
- NAME_FUNC_OFFSET(15169, glMultiTexCoord2svARB, glMultiTexCoord2svARB, NULL, _gloffset_MultiTexCoord2svARB),
- NAME_FUNC_OFFSET(15188, glMultiTexCoord3dARB, glMultiTexCoord3dARB, NULL, _gloffset_MultiTexCoord3dARB),
- NAME_FUNC_OFFSET(15206, glMultiTexCoord3dvARB, glMultiTexCoord3dvARB, NULL, _gloffset_MultiTexCoord3dvARB),
- NAME_FUNC_OFFSET(15225, glMultiTexCoord3fARB, glMultiTexCoord3fARB, NULL, _gloffset_MultiTexCoord3fARB),
- NAME_FUNC_OFFSET(15243, glMultiTexCoord3fvARB, glMultiTexCoord3fvARB, NULL, _gloffset_MultiTexCoord3fvARB),
- NAME_FUNC_OFFSET(15262, glMultiTexCoord3iARB, glMultiTexCoord3iARB, NULL, _gloffset_MultiTexCoord3iARB),
- NAME_FUNC_OFFSET(15280, glMultiTexCoord3ivARB, glMultiTexCoord3ivARB, NULL, _gloffset_MultiTexCoord3ivARB),
- NAME_FUNC_OFFSET(15299, glMultiTexCoord3sARB, glMultiTexCoord3sARB, NULL, _gloffset_MultiTexCoord3sARB),
- NAME_FUNC_OFFSET(15317, glMultiTexCoord3svARB, glMultiTexCoord3svARB, NULL, _gloffset_MultiTexCoord3svARB),
- NAME_FUNC_OFFSET(15336, glMultiTexCoord4dARB, glMultiTexCoord4dARB, NULL, _gloffset_MultiTexCoord4dARB),
- NAME_FUNC_OFFSET(15354, glMultiTexCoord4dvARB, glMultiTexCoord4dvARB, NULL, _gloffset_MultiTexCoord4dvARB),
- NAME_FUNC_OFFSET(15373, glMultiTexCoord4fARB, glMultiTexCoord4fARB, NULL, _gloffset_MultiTexCoord4fARB),
- NAME_FUNC_OFFSET(15391, glMultiTexCoord4fvARB, glMultiTexCoord4fvARB, NULL, _gloffset_MultiTexCoord4fvARB),
- NAME_FUNC_OFFSET(15410, glMultiTexCoord4iARB, glMultiTexCoord4iARB, NULL, _gloffset_MultiTexCoord4iARB),
- NAME_FUNC_OFFSET(15428, glMultiTexCoord4ivARB, glMultiTexCoord4ivARB, NULL, _gloffset_MultiTexCoord4ivARB),
- NAME_FUNC_OFFSET(15447, glMultiTexCoord4sARB, glMultiTexCoord4sARB, NULL, _gloffset_MultiTexCoord4sARB),
- NAME_FUNC_OFFSET(15465, glMultiTexCoord4svARB, glMultiTexCoord4svARB, NULL, _gloffset_MultiTexCoord4svARB),
- NAME_FUNC_OFFSET(15484, glLoadTransposeMatrixdARB, glLoadTransposeMatrixdARB, NULL, _gloffset_LoadTransposeMatrixdARB),
- NAME_FUNC_OFFSET(15507, glLoadTransposeMatrixfARB, glLoadTransposeMatrixfARB, NULL, _gloffset_LoadTransposeMatrixfARB),
- NAME_FUNC_OFFSET(15530, glMultTransposeMatrixdARB, glMultTransposeMatrixdARB, NULL, _gloffset_MultTransposeMatrixdARB),
- NAME_FUNC_OFFSET(15553, glMultTransposeMatrixfARB, glMultTransposeMatrixfARB, NULL, _gloffset_MultTransposeMatrixfARB),
- NAME_FUNC_OFFSET(15576, glSampleCoverageARB, glSampleCoverageARB, NULL, _gloffset_SampleCoverageARB),
- NAME_FUNC_OFFSET(15593, glCompressedTexImage1DARB, glCompressedTexImage1DARB, NULL, _gloffset_CompressedTexImage1DARB),
- NAME_FUNC_OFFSET(15616, glCompressedTexImage2DARB, glCompressedTexImage2DARB, NULL, _gloffset_CompressedTexImage2DARB),
- NAME_FUNC_OFFSET(15639, glCompressedTexImage3DARB, glCompressedTexImage3DARB, NULL, _gloffset_CompressedTexImage3DARB),
- NAME_FUNC_OFFSET(15662, glCompressedTexSubImage1DARB, glCompressedTexSubImage1DARB, NULL, _gloffset_CompressedTexSubImage1DARB),
- NAME_FUNC_OFFSET(15688, glCompressedTexSubImage2DARB, glCompressedTexSubImage2DARB, NULL, _gloffset_CompressedTexSubImage2DARB),
- NAME_FUNC_OFFSET(15714, glCompressedTexSubImage3DARB, glCompressedTexSubImage3DARB, NULL, _gloffset_CompressedTexSubImage3DARB),
- NAME_FUNC_OFFSET(15740, glGetCompressedTexImageARB, glGetCompressedTexImageARB, NULL, _gloffset_GetCompressedTexImageARB),
- NAME_FUNC_OFFSET(15764, glDisableVertexAttribArrayARB, glDisableVertexAttribArrayARB, NULL, _gloffset_DisableVertexAttribArrayARB),
- NAME_FUNC_OFFSET(15791, glEnableVertexAttribArrayARB, glEnableVertexAttribArrayARB, NULL, _gloffset_EnableVertexAttribArrayARB),
- NAME_FUNC_OFFSET(15817, glGetVertexAttribdvARB, glGetVertexAttribdvARB, NULL, _gloffset_GetVertexAttribdvARB),
- NAME_FUNC_OFFSET(15837, glGetVertexAttribfvARB, glGetVertexAttribfvARB, NULL, _gloffset_GetVertexAttribfvARB),
- NAME_FUNC_OFFSET(15857, glGetVertexAttribivARB, glGetVertexAttribivARB, NULL, _gloffset_GetVertexAttribivARB),
- NAME_FUNC_OFFSET(15877, glVertexAttrib1dARB, glVertexAttrib1dARB, NULL, _gloffset_VertexAttrib1dARB),
- NAME_FUNC_OFFSET(15894, glVertexAttrib1dvARB, glVertexAttrib1dvARB, NULL, _gloffset_VertexAttrib1dvARB),
- NAME_FUNC_OFFSET(15912, glVertexAttrib1fARB, glVertexAttrib1fARB, NULL, _gloffset_VertexAttrib1fARB),
- NAME_FUNC_OFFSET(15929, glVertexAttrib1fvARB, glVertexAttrib1fvARB, NULL, _gloffset_VertexAttrib1fvARB),
- NAME_FUNC_OFFSET(15947, glVertexAttrib1sARB, glVertexAttrib1sARB, NULL, _gloffset_VertexAttrib1sARB),
- NAME_FUNC_OFFSET(15964, glVertexAttrib1svARB, glVertexAttrib1svARB, NULL, _gloffset_VertexAttrib1svARB),
- NAME_FUNC_OFFSET(15982, glVertexAttrib2dARB, glVertexAttrib2dARB, NULL, _gloffset_VertexAttrib2dARB),
- NAME_FUNC_OFFSET(15999, glVertexAttrib2dvARB, glVertexAttrib2dvARB, NULL, _gloffset_VertexAttrib2dvARB),
- NAME_FUNC_OFFSET(16017, glVertexAttrib2fARB, glVertexAttrib2fARB, NULL, _gloffset_VertexAttrib2fARB),
- NAME_FUNC_OFFSET(16034, glVertexAttrib2fvARB, glVertexAttrib2fvARB, NULL, _gloffset_VertexAttrib2fvARB),
- NAME_FUNC_OFFSET(16052, glVertexAttrib2sARB, glVertexAttrib2sARB, NULL, _gloffset_VertexAttrib2sARB),
- NAME_FUNC_OFFSET(16069, glVertexAttrib2svARB, glVertexAttrib2svARB, NULL, _gloffset_VertexAttrib2svARB),
- NAME_FUNC_OFFSET(16087, glVertexAttrib3dARB, glVertexAttrib3dARB, NULL, _gloffset_VertexAttrib3dARB),
- NAME_FUNC_OFFSET(16104, glVertexAttrib3dvARB, glVertexAttrib3dvARB, NULL, _gloffset_VertexAttrib3dvARB),
- NAME_FUNC_OFFSET(16122, glVertexAttrib3fARB, glVertexAttrib3fARB, NULL, _gloffset_VertexAttrib3fARB),
- NAME_FUNC_OFFSET(16139, glVertexAttrib3fvARB, glVertexAttrib3fvARB, NULL, _gloffset_VertexAttrib3fvARB),
- NAME_FUNC_OFFSET(16157, glVertexAttrib3sARB, glVertexAttrib3sARB, NULL, _gloffset_VertexAttrib3sARB),
- NAME_FUNC_OFFSET(16174, glVertexAttrib3svARB, glVertexAttrib3svARB, NULL, _gloffset_VertexAttrib3svARB),
- NAME_FUNC_OFFSET(16192, glVertexAttrib4NbvARB, glVertexAttrib4NbvARB, NULL, _gloffset_VertexAttrib4NbvARB),
- NAME_FUNC_OFFSET(16211, glVertexAttrib4NivARB, glVertexAttrib4NivARB, NULL, _gloffset_VertexAttrib4NivARB),
- NAME_FUNC_OFFSET(16230, glVertexAttrib4NsvARB, glVertexAttrib4NsvARB, NULL, _gloffset_VertexAttrib4NsvARB),
- NAME_FUNC_OFFSET(16249, glVertexAttrib4NubARB, glVertexAttrib4NubARB, NULL, _gloffset_VertexAttrib4NubARB),
- NAME_FUNC_OFFSET(16268, glVertexAttrib4NubvARB, glVertexAttrib4NubvARB, NULL, _gloffset_VertexAttrib4NubvARB),
- NAME_FUNC_OFFSET(16288, glVertexAttrib4NuivARB, glVertexAttrib4NuivARB, NULL, _gloffset_VertexAttrib4NuivARB),
- NAME_FUNC_OFFSET(16308, glVertexAttrib4NusvARB, glVertexAttrib4NusvARB, NULL, _gloffset_VertexAttrib4NusvARB),
- NAME_FUNC_OFFSET(16328, glVertexAttrib4bvARB, glVertexAttrib4bvARB, NULL, _gloffset_VertexAttrib4bvARB),
- NAME_FUNC_OFFSET(16346, glVertexAttrib4dARB, glVertexAttrib4dARB, NULL, _gloffset_VertexAttrib4dARB),
- NAME_FUNC_OFFSET(16363, glVertexAttrib4dvARB, glVertexAttrib4dvARB, NULL, _gloffset_VertexAttrib4dvARB),
- NAME_FUNC_OFFSET(16381, glVertexAttrib4fARB, glVertexAttrib4fARB, NULL, _gloffset_VertexAttrib4fARB),
- NAME_FUNC_OFFSET(16398, glVertexAttrib4fvARB, glVertexAttrib4fvARB, NULL, _gloffset_VertexAttrib4fvARB),
- NAME_FUNC_OFFSET(16416, glVertexAttrib4ivARB, glVertexAttrib4ivARB, NULL, _gloffset_VertexAttrib4ivARB),
- NAME_FUNC_OFFSET(16434, glVertexAttrib4sARB, glVertexAttrib4sARB, NULL, _gloffset_VertexAttrib4sARB),
- NAME_FUNC_OFFSET(16451, glVertexAttrib4svARB, glVertexAttrib4svARB, NULL, _gloffset_VertexAttrib4svARB),
- NAME_FUNC_OFFSET(16469, glVertexAttrib4ubvARB, glVertexAttrib4ubvARB, NULL, _gloffset_VertexAttrib4ubvARB),
- NAME_FUNC_OFFSET(16488, glVertexAttrib4uivARB, glVertexAttrib4uivARB, NULL, _gloffset_VertexAttrib4uivARB),
- NAME_FUNC_OFFSET(16507, glVertexAttrib4usvARB, glVertexAttrib4usvARB, NULL, _gloffset_VertexAttrib4usvARB),
- NAME_FUNC_OFFSET(16526, glVertexAttribPointerARB, glVertexAttribPointerARB, NULL, _gloffset_VertexAttribPointerARB),
- NAME_FUNC_OFFSET(16548, glBindBufferARB, glBindBufferARB, NULL, _gloffset_BindBufferARB),
- NAME_FUNC_OFFSET(16561, glBufferDataARB, glBufferDataARB, NULL, _gloffset_BufferDataARB),
- NAME_FUNC_OFFSET(16574, glBufferSubDataARB, glBufferSubDataARB, NULL, _gloffset_BufferSubDataARB),
- NAME_FUNC_OFFSET(16590, glDeleteBuffersARB, glDeleteBuffersARB, NULL, _gloffset_DeleteBuffersARB),
- NAME_FUNC_OFFSET(16606, glGenBuffersARB, glGenBuffersARB, NULL, _gloffset_GenBuffersARB),
- NAME_FUNC_OFFSET(16619, glGetBufferParameterivARB, glGetBufferParameterivARB, NULL, _gloffset_GetBufferParameterivARB),
- NAME_FUNC_OFFSET(16642, glGetBufferPointervARB, glGetBufferPointervARB, NULL, _gloffset_GetBufferPointervARB),
- NAME_FUNC_OFFSET(16662, glGetBufferSubDataARB, glGetBufferSubDataARB, NULL, _gloffset_GetBufferSubDataARB),
- NAME_FUNC_OFFSET(16681, glIsBufferARB, glIsBufferARB, NULL, _gloffset_IsBufferARB),
- NAME_FUNC_OFFSET(16692, glMapBufferARB, glMapBufferARB, NULL, _gloffset_MapBufferARB),
- NAME_FUNC_OFFSET(16704, glUnmapBufferARB, glUnmapBufferARB, NULL, _gloffset_UnmapBufferARB),
- NAME_FUNC_OFFSET(16718, glBeginQueryARB, glBeginQueryARB, NULL, _gloffset_BeginQueryARB),
- NAME_FUNC_OFFSET(16731, glDeleteQueriesARB, glDeleteQueriesARB, NULL, _gloffset_DeleteQueriesARB),
- NAME_FUNC_OFFSET(16747, glEndQueryARB, glEndQueryARB, NULL, _gloffset_EndQueryARB),
- NAME_FUNC_OFFSET(16758, glGenQueriesARB, glGenQueriesARB, NULL, _gloffset_GenQueriesARB),
- NAME_FUNC_OFFSET(16771, glGetQueryObjectivARB, glGetQueryObjectivARB, NULL, _gloffset_GetQueryObjectivARB),
- NAME_FUNC_OFFSET(16790, glGetQueryObjectuivARB, glGetQueryObjectuivARB, NULL, _gloffset_GetQueryObjectuivARB),
- NAME_FUNC_OFFSET(16810, glGetQueryivARB, glGetQueryivARB, NULL, _gloffset_GetQueryivARB),
- NAME_FUNC_OFFSET(16823, glIsQueryARB, glIsQueryARB, NULL, _gloffset_IsQueryARB),
- NAME_FUNC_OFFSET(16833, glCompileShaderARB, glCompileShaderARB, NULL, _gloffset_CompileShaderARB),
- NAME_FUNC_OFFSET(16849, glGetActiveUniformARB, glGetActiveUniformARB, NULL, _gloffset_GetActiveUniformARB),
- NAME_FUNC_OFFSET(16868, glGetShaderSourceARB, glGetShaderSourceARB, NULL, _gloffset_GetShaderSourceARB),
- NAME_FUNC_OFFSET(16886, glGetUniformLocationARB, glGetUniformLocationARB, NULL, _gloffset_GetUniformLocationARB),
- NAME_FUNC_OFFSET(16907, glGetUniformfvARB, glGetUniformfvARB, NULL, _gloffset_GetUniformfvARB),
- NAME_FUNC_OFFSET(16922, glGetUniformivARB, glGetUniformivARB, NULL, _gloffset_GetUniformivARB),
- NAME_FUNC_OFFSET(16937, glLinkProgramARB, glLinkProgramARB, NULL, _gloffset_LinkProgramARB),
- NAME_FUNC_OFFSET(16951, glShaderSourceARB, glShaderSourceARB, NULL, _gloffset_ShaderSourceARB),
- NAME_FUNC_OFFSET(16966, glUniform1fARB, glUniform1fARB, NULL, _gloffset_Uniform1fARB),
- NAME_FUNC_OFFSET(16978, glUniform1fvARB, glUniform1fvARB, NULL, _gloffset_Uniform1fvARB),
- NAME_FUNC_OFFSET(16991, glUniform1iARB, glUniform1iARB, NULL, _gloffset_Uniform1iARB),
- NAME_FUNC_OFFSET(17003, glUniform1ivARB, glUniform1ivARB, NULL, _gloffset_Uniform1ivARB),
- NAME_FUNC_OFFSET(17016, glUniform2fARB, glUniform2fARB, NULL, _gloffset_Uniform2fARB),
- NAME_FUNC_OFFSET(17028, glUniform2fvARB, glUniform2fvARB, NULL, _gloffset_Uniform2fvARB),
- NAME_FUNC_OFFSET(17041, glUniform2iARB, glUniform2iARB, NULL, _gloffset_Uniform2iARB),
- NAME_FUNC_OFFSET(17053, glUniform2ivARB, glUniform2ivARB, NULL, _gloffset_Uniform2ivARB),
- NAME_FUNC_OFFSET(17066, glUniform3fARB, glUniform3fARB, NULL, _gloffset_Uniform3fARB),
- NAME_FUNC_OFFSET(17078, glUniform3fvARB, glUniform3fvARB, NULL, _gloffset_Uniform3fvARB),
- NAME_FUNC_OFFSET(17091, glUniform3iARB, glUniform3iARB, NULL, _gloffset_Uniform3iARB),
- NAME_FUNC_OFFSET(17103, glUniform3ivARB, glUniform3ivARB, NULL, _gloffset_Uniform3ivARB),
- NAME_FUNC_OFFSET(17116, glUniform4fARB, glUniform4fARB, NULL, _gloffset_Uniform4fARB),
- NAME_FUNC_OFFSET(17128, glUniform4fvARB, glUniform4fvARB, NULL, _gloffset_Uniform4fvARB),
- NAME_FUNC_OFFSET(17141, glUniform4iARB, glUniform4iARB, NULL, _gloffset_Uniform4iARB),
- NAME_FUNC_OFFSET(17153, glUniform4ivARB, glUniform4ivARB, NULL, _gloffset_Uniform4ivARB),
- NAME_FUNC_OFFSET(17166, glUniformMatrix2fvARB, glUniformMatrix2fvARB, NULL, _gloffset_UniformMatrix2fvARB),
- NAME_FUNC_OFFSET(17185, glUniformMatrix3fvARB, glUniformMatrix3fvARB, NULL, _gloffset_UniformMatrix3fvARB),
- NAME_FUNC_OFFSET(17204, glUniformMatrix4fvARB, glUniformMatrix4fvARB, NULL, _gloffset_UniformMatrix4fvARB),
- NAME_FUNC_OFFSET(17223, glUseProgramObjectARB, glUseProgramObjectARB, NULL, _gloffset_UseProgramObjectARB),
- NAME_FUNC_OFFSET(17236, glValidateProgramARB, glValidateProgramARB, NULL, _gloffset_ValidateProgramARB),
- NAME_FUNC_OFFSET(17254, glBindAttribLocationARB, glBindAttribLocationARB, NULL, _gloffset_BindAttribLocationARB),
- NAME_FUNC_OFFSET(17275, glGetActiveAttribARB, glGetActiveAttribARB, NULL, _gloffset_GetActiveAttribARB),
- NAME_FUNC_OFFSET(17293, glGetAttribLocationARB, glGetAttribLocationARB, NULL, _gloffset_GetAttribLocationARB),
- NAME_FUNC_OFFSET(17313, glDrawBuffersARB, glDrawBuffersARB, NULL, _gloffset_DrawBuffersARB),
- NAME_FUNC_OFFSET(17327, glDrawBuffersARB, glDrawBuffersARB, NULL, _gloffset_DrawBuffersARB),
- NAME_FUNC_OFFSET(17344, gl_dispatch_stub_568, gl_dispatch_stub_568, NULL, _gloffset_SampleMaskSGIS),
- NAME_FUNC_OFFSET(17360, gl_dispatch_stub_569, gl_dispatch_stub_569, NULL, _gloffset_SamplePatternSGIS),
- NAME_FUNC_OFFSET(17379, glPointParameterfEXT, glPointParameterfEXT, NULL, _gloffset_PointParameterfEXT),
- NAME_FUNC_OFFSET(17397, glPointParameterfEXT, glPointParameterfEXT, NULL, _gloffset_PointParameterfEXT),
- NAME_FUNC_OFFSET(17418, glPointParameterfEXT, glPointParameterfEXT, NULL, _gloffset_PointParameterfEXT),
- NAME_FUNC_OFFSET(17440, glPointParameterfvEXT, glPointParameterfvEXT, NULL, _gloffset_PointParameterfvEXT),
- NAME_FUNC_OFFSET(17459, glPointParameterfvEXT, glPointParameterfvEXT, NULL, _gloffset_PointParameterfvEXT),
- NAME_FUNC_OFFSET(17481, glPointParameterfvEXT, glPointParameterfvEXT, NULL, _gloffset_PointParameterfvEXT),
- NAME_FUNC_OFFSET(17504, glSecondaryColor3bEXT, glSecondaryColor3bEXT, NULL, _gloffset_SecondaryColor3bEXT),
- NAME_FUNC_OFFSET(17523, glSecondaryColor3bvEXT, glSecondaryColor3bvEXT, NULL, _gloffset_SecondaryColor3bvEXT),
- NAME_FUNC_OFFSET(17543, glSecondaryColor3dEXT, glSecondaryColor3dEXT, NULL, _gloffset_SecondaryColor3dEXT),
- NAME_FUNC_OFFSET(17562, glSecondaryColor3dvEXT, glSecondaryColor3dvEXT, NULL, _gloffset_SecondaryColor3dvEXT),
- NAME_FUNC_OFFSET(17582, glSecondaryColor3fEXT, glSecondaryColor3fEXT, NULL, _gloffset_SecondaryColor3fEXT),
- NAME_FUNC_OFFSET(17601, glSecondaryColor3fvEXT, glSecondaryColor3fvEXT, NULL, _gloffset_SecondaryColor3fvEXT),
- NAME_FUNC_OFFSET(17621, glSecondaryColor3iEXT, glSecondaryColor3iEXT, NULL, _gloffset_SecondaryColor3iEXT),
- NAME_FUNC_OFFSET(17640, glSecondaryColor3ivEXT, glSecondaryColor3ivEXT, NULL, _gloffset_SecondaryColor3ivEXT),
- NAME_FUNC_OFFSET(17660, glSecondaryColor3sEXT, glSecondaryColor3sEXT, NULL, _gloffset_SecondaryColor3sEXT),
- NAME_FUNC_OFFSET(17679, glSecondaryColor3svEXT, glSecondaryColor3svEXT, NULL, _gloffset_SecondaryColor3svEXT),
- NAME_FUNC_OFFSET(17699, glSecondaryColor3ubEXT, glSecondaryColor3ubEXT, NULL, _gloffset_SecondaryColor3ubEXT),
- NAME_FUNC_OFFSET(17719, glSecondaryColor3ubvEXT, glSecondaryColor3ubvEXT, NULL, _gloffset_SecondaryColor3ubvEXT),
- NAME_FUNC_OFFSET(17740, glSecondaryColor3uiEXT, glSecondaryColor3uiEXT, NULL, _gloffset_SecondaryColor3uiEXT),
- NAME_FUNC_OFFSET(17760, glSecondaryColor3uivEXT, glSecondaryColor3uivEXT, NULL, _gloffset_SecondaryColor3uivEXT),
- NAME_FUNC_OFFSET(17781, glSecondaryColor3usEXT, glSecondaryColor3usEXT, NULL, _gloffset_SecondaryColor3usEXT),
- NAME_FUNC_OFFSET(17801, glSecondaryColor3usvEXT, glSecondaryColor3usvEXT, NULL, _gloffset_SecondaryColor3usvEXT),
- NAME_FUNC_OFFSET(17822, glSecondaryColorPointerEXT, glSecondaryColorPointerEXT, NULL, _gloffset_SecondaryColorPointerEXT),
- NAME_FUNC_OFFSET(17846, glMultiDrawArraysEXT, glMultiDrawArraysEXT, NULL, _gloffset_MultiDrawArraysEXT),
- NAME_FUNC_OFFSET(17864, glMultiDrawElementsEXT, glMultiDrawElementsEXT, NULL, _gloffset_MultiDrawElementsEXT),
- NAME_FUNC_OFFSET(17884, glFogCoordPointerEXT, glFogCoordPointerEXT, NULL, _gloffset_FogCoordPointerEXT),
- NAME_FUNC_OFFSET(17902, glFogCoorddEXT, glFogCoorddEXT, NULL, _gloffset_FogCoorddEXT),
- NAME_FUNC_OFFSET(17914, glFogCoorddvEXT, glFogCoorddvEXT, NULL, _gloffset_FogCoorddvEXT),
- NAME_FUNC_OFFSET(17927, glFogCoordfEXT, glFogCoordfEXT, NULL, _gloffset_FogCoordfEXT),
- NAME_FUNC_OFFSET(17939, glFogCoordfvEXT, glFogCoordfvEXT, NULL, _gloffset_FogCoordfvEXT),
- NAME_FUNC_OFFSET(17952, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, _gloffset_BlendFuncSeparateEXT),
- NAME_FUNC_OFFSET(17972, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, _gloffset_BlendFuncSeparateEXT),
- NAME_FUNC_OFFSET(17996, glWindowPos2dMESA, glWindowPos2dMESA, NULL, _gloffset_WindowPos2dMESA),
- NAME_FUNC_OFFSET(18010, glWindowPos2dMESA, glWindowPos2dMESA, NULL, _gloffset_WindowPos2dMESA),
- NAME_FUNC_OFFSET(18027, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, _gloffset_WindowPos2dvMESA),
- NAME_FUNC_OFFSET(18042, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, _gloffset_WindowPos2dvMESA),
- NAME_FUNC_OFFSET(18060, glWindowPos2fMESA, glWindowPos2fMESA, NULL, _gloffset_WindowPos2fMESA),
- NAME_FUNC_OFFSET(18074, glWindowPos2fMESA, glWindowPos2fMESA, NULL, _gloffset_WindowPos2fMESA),
- NAME_FUNC_OFFSET(18091, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, _gloffset_WindowPos2fvMESA),
- NAME_FUNC_OFFSET(18106, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, _gloffset_WindowPos2fvMESA),
- NAME_FUNC_OFFSET(18124, glWindowPos2iMESA, glWindowPos2iMESA, NULL, _gloffset_WindowPos2iMESA),
- NAME_FUNC_OFFSET(18138, glWindowPos2iMESA, glWindowPos2iMESA, NULL, _gloffset_WindowPos2iMESA),
- NAME_FUNC_OFFSET(18155, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, _gloffset_WindowPos2ivMESA),
- NAME_FUNC_OFFSET(18170, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, _gloffset_WindowPos2ivMESA),
- NAME_FUNC_OFFSET(18188, glWindowPos2sMESA, glWindowPos2sMESA, NULL, _gloffset_WindowPos2sMESA),
- NAME_FUNC_OFFSET(18202, glWindowPos2sMESA, glWindowPos2sMESA, NULL, _gloffset_WindowPos2sMESA),
- NAME_FUNC_OFFSET(18219, glWindowPos2svMESA, glWindowPos2svMESA, NULL, _gloffset_WindowPos2svMESA),
- NAME_FUNC_OFFSET(18234, glWindowPos2svMESA, glWindowPos2svMESA, NULL, _gloffset_WindowPos2svMESA),
- NAME_FUNC_OFFSET(18252, glWindowPos3dMESA, glWindowPos3dMESA, NULL, _gloffset_WindowPos3dMESA),
- NAME_FUNC_OFFSET(18266, glWindowPos3dMESA, glWindowPos3dMESA, NULL, _gloffset_WindowPos3dMESA),
- NAME_FUNC_OFFSET(18283, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, _gloffset_WindowPos3dvMESA),
- NAME_FUNC_OFFSET(18298, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, _gloffset_WindowPos3dvMESA),
- NAME_FUNC_OFFSET(18316, glWindowPos3fMESA, glWindowPos3fMESA, NULL, _gloffset_WindowPos3fMESA),
- NAME_FUNC_OFFSET(18330, glWindowPos3fMESA, glWindowPos3fMESA, NULL, _gloffset_WindowPos3fMESA),
- NAME_FUNC_OFFSET(18347, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, _gloffset_WindowPos3fvMESA),
- NAME_FUNC_OFFSET(18362, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, _gloffset_WindowPos3fvMESA),
- NAME_FUNC_OFFSET(18380, glWindowPos3iMESA, glWindowPos3iMESA, NULL, _gloffset_WindowPos3iMESA),
- NAME_FUNC_OFFSET(18394, glWindowPos3iMESA, glWindowPos3iMESA, NULL, _gloffset_WindowPos3iMESA),
- NAME_FUNC_OFFSET(18411, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, _gloffset_WindowPos3ivMESA),
- NAME_FUNC_OFFSET(18426, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, _gloffset_WindowPos3ivMESA),
- NAME_FUNC_OFFSET(18444, glWindowPos3sMESA, glWindowPos3sMESA, NULL, _gloffset_WindowPos3sMESA),
- NAME_FUNC_OFFSET(18458, glWindowPos3sMESA, glWindowPos3sMESA, NULL, _gloffset_WindowPos3sMESA),
- NAME_FUNC_OFFSET(18475, glWindowPos3svMESA, glWindowPos3svMESA, NULL, _gloffset_WindowPos3svMESA),
- NAME_FUNC_OFFSET(18490, glWindowPos3svMESA, glWindowPos3svMESA, NULL, _gloffset_WindowPos3svMESA),
- NAME_FUNC_OFFSET(18508, glBindProgramNV, glBindProgramNV, NULL, _gloffset_BindProgramNV),
- NAME_FUNC_OFFSET(18525, glDeleteProgramsNV, glDeleteProgramsNV, NULL, _gloffset_DeleteProgramsNV),
- NAME_FUNC_OFFSET(18545, glGenProgramsNV, glGenProgramsNV, NULL, _gloffset_GenProgramsNV),
- NAME_FUNC_OFFSET(18562, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, _gloffset_GetVertexAttribPointervNV),
- NAME_FUNC_OFFSET(18588, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, _gloffset_GetVertexAttribPointervNV),
- NAME_FUNC_OFFSET(18617, glIsProgramNV, glIsProgramNV, NULL, _gloffset_IsProgramNV),
- NAME_FUNC_OFFSET(18632, glPointParameteriNV, glPointParameteriNV, NULL, _gloffset_PointParameteriNV),
- NAME_FUNC_OFFSET(18650, glPointParameterivNV, glPointParameterivNV, NULL, _gloffset_PointParameterivNV),
- NAME_FUNC_OFFSET(18669, gl_dispatch_stub_749, gl_dispatch_stub_749, NULL, _gloffset_BlendEquationSeparateEXT),
- NAME_FUNC_OFFSET(18693, gl_dispatch_stub_749, gl_dispatch_stub_749, NULL, _gloffset_BlendEquationSeparateEXT),
+ NAME_FUNC_OFFSET(13470, gl_dispatch_stub_768, gl_dispatch_stub_768, NULL, _gloffset_StencilFuncSeparateATI),
+ NAME_FUNC_OFFSET(13495, gl_dispatch_stub_769, gl_dispatch_stub_769, NULL, _gloffset_ProgramEnvParameters4fvEXT),
+ NAME_FUNC_OFFSET(13524, gl_dispatch_stub_770, gl_dispatch_stub_770, NULL, _gloffset_ProgramLocalParameters4fvEXT),
+ NAME_FUNC_OFFSET(13555, gl_dispatch_stub_771, gl_dispatch_stub_771, NULL, _gloffset_GetQueryObjecti64vEXT),
+ NAME_FUNC_OFFSET(13579, gl_dispatch_stub_772, gl_dispatch_stub_772, NULL, _gloffset_GetQueryObjectui64vEXT),
+ NAME_FUNC_OFFSET(13604, glArrayElement, glArrayElement, NULL, _gloffset_ArrayElement),
+ NAME_FUNC_OFFSET(13622, glBindTexture, glBindTexture, NULL, _gloffset_BindTexture),
+ NAME_FUNC_OFFSET(13639, glDrawArrays, glDrawArrays, NULL, _gloffset_DrawArrays),
+ NAME_FUNC_OFFSET(13655, glAreTexturesResident, glAreTexturesResidentEXT, glAreTexturesResidentEXT, _gloffset_AreTexturesResident),
+ NAME_FUNC_OFFSET(13680, glCopyTexImage1D, glCopyTexImage1D, NULL, _gloffset_CopyTexImage1D),
+ NAME_FUNC_OFFSET(13700, glCopyTexImage2D, glCopyTexImage2D, NULL, _gloffset_CopyTexImage2D),
+ NAME_FUNC_OFFSET(13720, glCopyTexSubImage1D, glCopyTexSubImage1D, NULL, _gloffset_CopyTexSubImage1D),
+ NAME_FUNC_OFFSET(13743, glCopyTexSubImage2D, glCopyTexSubImage2D, NULL, _gloffset_CopyTexSubImage2D),
+ NAME_FUNC_OFFSET(13766, glDeleteTextures, glDeleteTexturesEXT, glDeleteTexturesEXT, _gloffset_DeleteTextures),
+ NAME_FUNC_OFFSET(13786, glGenTextures, glGenTexturesEXT, glGenTexturesEXT, _gloffset_GenTextures),
+ NAME_FUNC_OFFSET(13803, glGetPointerv, glGetPointerv, NULL, _gloffset_GetPointerv),
+ NAME_FUNC_OFFSET(13820, glIsTexture, glIsTextureEXT, glIsTextureEXT, _gloffset_IsTexture),
+ NAME_FUNC_OFFSET(13835, glPrioritizeTextures, glPrioritizeTextures, NULL, _gloffset_PrioritizeTextures),
+ NAME_FUNC_OFFSET(13859, glTexSubImage1D, glTexSubImage1D, NULL, _gloffset_TexSubImage1D),
+ NAME_FUNC_OFFSET(13878, glTexSubImage2D, glTexSubImage2D, NULL, _gloffset_TexSubImage2D),
+ NAME_FUNC_OFFSET(13897, glBlendColor, glBlendColor, NULL, _gloffset_BlendColor),
+ NAME_FUNC_OFFSET(13913, glBlendEquation, glBlendEquation, NULL, _gloffset_BlendEquation),
+ NAME_FUNC_OFFSET(13932, glDrawRangeElements, glDrawRangeElements, NULL, _gloffset_DrawRangeElements),
+ NAME_FUNC_OFFSET(13955, glColorTable, glColorTable, NULL, _gloffset_ColorTable),
+ NAME_FUNC_OFFSET(13971, glColorTable, glColorTable, NULL, _gloffset_ColorTable),
+ NAME_FUNC_OFFSET(13987, glColorTableParameterfv, glColorTableParameterfv, NULL, _gloffset_ColorTableParameterfv),
+ NAME_FUNC_OFFSET(14014, glColorTableParameteriv, glColorTableParameteriv, NULL, _gloffset_ColorTableParameteriv),
+ NAME_FUNC_OFFSET(14041, glCopyColorTable, glCopyColorTable, NULL, _gloffset_CopyColorTable),
+ NAME_FUNC_OFFSET(14061, glGetColorTable, glGetColorTableEXT, glGetColorTableEXT, _gloffset_GetColorTable),
+ NAME_FUNC_OFFSET(14080, glGetColorTable, glGetColorTableEXT, glGetColorTableEXT, _gloffset_GetColorTable),
+ NAME_FUNC_OFFSET(14099, glGetColorTableParameterfv, glGetColorTableParameterfvEXT, glGetColorTableParameterfvEXT, _gloffset_GetColorTableParameterfv),
+ NAME_FUNC_OFFSET(14129, glGetColorTableParameterfv, glGetColorTableParameterfvEXT, glGetColorTableParameterfvEXT, _gloffset_GetColorTableParameterfv),
+ NAME_FUNC_OFFSET(14159, glGetColorTableParameteriv, glGetColorTableParameterivEXT, glGetColorTableParameterivEXT, _gloffset_GetColorTableParameteriv),
+ NAME_FUNC_OFFSET(14189, glGetColorTableParameteriv, glGetColorTableParameterivEXT, glGetColorTableParameterivEXT, _gloffset_GetColorTableParameteriv),
+ NAME_FUNC_OFFSET(14219, glColorSubTable, glColorSubTable, NULL, _gloffset_ColorSubTable),
+ NAME_FUNC_OFFSET(14238, glCopyColorSubTable, glCopyColorSubTable, NULL, _gloffset_CopyColorSubTable),
+ NAME_FUNC_OFFSET(14261, glConvolutionFilter1D, glConvolutionFilter1D, NULL, _gloffset_ConvolutionFilter1D),
+ NAME_FUNC_OFFSET(14286, glConvolutionFilter2D, glConvolutionFilter2D, NULL, _gloffset_ConvolutionFilter2D),
+ NAME_FUNC_OFFSET(14311, glConvolutionParameterf, glConvolutionParameterf, NULL, _gloffset_ConvolutionParameterf),
+ NAME_FUNC_OFFSET(14338, glConvolutionParameterfv, glConvolutionParameterfv, NULL, _gloffset_ConvolutionParameterfv),
+ NAME_FUNC_OFFSET(14366, glConvolutionParameteri, glConvolutionParameteri, NULL, _gloffset_ConvolutionParameteri),
+ NAME_FUNC_OFFSET(14393, glConvolutionParameteriv, glConvolutionParameteriv, NULL, _gloffset_ConvolutionParameteriv),
+ NAME_FUNC_OFFSET(14421, glCopyConvolutionFilter1D, glCopyConvolutionFilter1D, NULL, _gloffset_CopyConvolutionFilter1D),
+ NAME_FUNC_OFFSET(14450, glCopyConvolutionFilter2D, glCopyConvolutionFilter2D, NULL, _gloffset_CopyConvolutionFilter2D),
+ NAME_FUNC_OFFSET(14479, glGetConvolutionFilter, gl_dispatch_stub_356, gl_dispatch_stub_356, _gloffset_GetConvolutionFilter),
+ NAME_FUNC_OFFSET(14505, glGetConvolutionParameterfv, gl_dispatch_stub_357, gl_dispatch_stub_357, _gloffset_GetConvolutionParameterfv),
+ NAME_FUNC_OFFSET(14536, glGetConvolutionParameteriv, gl_dispatch_stub_358, gl_dispatch_stub_358, _gloffset_GetConvolutionParameteriv),
+ NAME_FUNC_OFFSET(14567, glGetSeparableFilter, gl_dispatch_stub_359, gl_dispatch_stub_359, _gloffset_GetSeparableFilter),
+ NAME_FUNC_OFFSET(14591, glSeparableFilter2D, glSeparableFilter2D, NULL, _gloffset_SeparableFilter2D),
+ NAME_FUNC_OFFSET(14614, glGetHistogram, gl_dispatch_stub_361, gl_dispatch_stub_361, _gloffset_GetHistogram),
+ NAME_FUNC_OFFSET(14632, glGetHistogramParameterfv, gl_dispatch_stub_362, gl_dispatch_stub_362, _gloffset_GetHistogramParameterfv),
+ NAME_FUNC_OFFSET(14661, glGetHistogramParameteriv, gl_dispatch_stub_363, gl_dispatch_stub_363, _gloffset_GetHistogramParameteriv),
+ NAME_FUNC_OFFSET(14690, glGetMinmax, gl_dispatch_stub_364, gl_dispatch_stub_364, _gloffset_GetMinmax),
+ NAME_FUNC_OFFSET(14705, glGetMinmaxParameterfv, gl_dispatch_stub_365, gl_dispatch_stub_365, _gloffset_GetMinmaxParameterfv),
+ NAME_FUNC_OFFSET(14731, glGetMinmaxParameteriv, gl_dispatch_stub_366, gl_dispatch_stub_366, _gloffset_GetMinmaxParameteriv),
+ NAME_FUNC_OFFSET(14757, glHistogram, glHistogram, NULL, _gloffset_Histogram),
+ NAME_FUNC_OFFSET(14772, glMinmax, glMinmax, NULL, _gloffset_Minmax),
+ NAME_FUNC_OFFSET(14784, glResetHistogram, glResetHistogram, NULL, _gloffset_ResetHistogram),
+ NAME_FUNC_OFFSET(14804, glResetMinmax, glResetMinmax, NULL, _gloffset_ResetMinmax),
+ NAME_FUNC_OFFSET(14821, glTexImage3D, glTexImage3D, NULL, _gloffset_TexImage3D),
+ NAME_FUNC_OFFSET(14837, glTexSubImage3D, glTexSubImage3D, NULL, _gloffset_TexSubImage3D),
+ NAME_FUNC_OFFSET(14856, glCopyTexSubImage3D, glCopyTexSubImage3D, NULL, _gloffset_CopyTexSubImage3D),
+ NAME_FUNC_OFFSET(14879, glActiveTextureARB, glActiveTextureARB, NULL, _gloffset_ActiveTextureARB),
+ NAME_FUNC_OFFSET(14895, glClientActiveTextureARB, glClientActiveTextureARB, NULL, _gloffset_ClientActiveTextureARB),
+ NAME_FUNC_OFFSET(14917, glMultiTexCoord1dARB, glMultiTexCoord1dARB, NULL, _gloffset_MultiTexCoord1dARB),
+ NAME_FUNC_OFFSET(14935, glMultiTexCoord1dvARB, glMultiTexCoord1dvARB, NULL, _gloffset_MultiTexCoord1dvARB),
+ NAME_FUNC_OFFSET(14954, glMultiTexCoord1fARB, glMultiTexCoord1fARB, NULL, _gloffset_MultiTexCoord1fARB),
+ NAME_FUNC_OFFSET(14972, glMultiTexCoord1fvARB, glMultiTexCoord1fvARB, NULL, _gloffset_MultiTexCoord1fvARB),
+ NAME_FUNC_OFFSET(14991, glMultiTexCoord1iARB, glMultiTexCoord1iARB, NULL, _gloffset_MultiTexCoord1iARB),
+ NAME_FUNC_OFFSET(15009, glMultiTexCoord1ivARB, glMultiTexCoord1ivARB, NULL, _gloffset_MultiTexCoord1ivARB),
+ NAME_FUNC_OFFSET(15028, glMultiTexCoord1sARB, glMultiTexCoord1sARB, NULL, _gloffset_MultiTexCoord1sARB),
+ NAME_FUNC_OFFSET(15046, glMultiTexCoord1svARB, glMultiTexCoord1svARB, NULL, _gloffset_MultiTexCoord1svARB),
+ NAME_FUNC_OFFSET(15065, glMultiTexCoord2dARB, glMultiTexCoord2dARB, NULL, _gloffset_MultiTexCoord2dARB),
+ NAME_FUNC_OFFSET(15083, glMultiTexCoord2dvARB, glMultiTexCoord2dvARB, NULL, _gloffset_MultiTexCoord2dvARB),
+ NAME_FUNC_OFFSET(15102, glMultiTexCoord2fARB, glMultiTexCoord2fARB, NULL, _gloffset_MultiTexCoord2fARB),
+ NAME_FUNC_OFFSET(15120, glMultiTexCoord2fvARB, glMultiTexCoord2fvARB, NULL, _gloffset_MultiTexCoord2fvARB),
+ NAME_FUNC_OFFSET(15139, glMultiTexCoord2iARB, glMultiTexCoord2iARB, NULL, _gloffset_MultiTexCoord2iARB),
+ NAME_FUNC_OFFSET(15157, glMultiTexCoord2ivARB, glMultiTexCoord2ivARB, NULL, _gloffset_MultiTexCoord2ivARB),
+ NAME_FUNC_OFFSET(15176, glMultiTexCoord2sARB, glMultiTexCoord2sARB, NULL, _gloffset_MultiTexCoord2sARB),
+ NAME_FUNC_OFFSET(15194, glMultiTexCoord2svARB, glMultiTexCoord2svARB, NULL, _gloffset_MultiTexCoord2svARB),
+ NAME_FUNC_OFFSET(15213, glMultiTexCoord3dARB, glMultiTexCoord3dARB, NULL, _gloffset_MultiTexCoord3dARB),
+ NAME_FUNC_OFFSET(15231, glMultiTexCoord3dvARB, glMultiTexCoord3dvARB, NULL, _gloffset_MultiTexCoord3dvARB),
+ NAME_FUNC_OFFSET(15250, glMultiTexCoord3fARB, glMultiTexCoord3fARB, NULL, _gloffset_MultiTexCoord3fARB),
+ NAME_FUNC_OFFSET(15268, glMultiTexCoord3fvARB, glMultiTexCoord3fvARB, NULL, _gloffset_MultiTexCoord3fvARB),
+ NAME_FUNC_OFFSET(15287, glMultiTexCoord3iARB, glMultiTexCoord3iARB, NULL, _gloffset_MultiTexCoord3iARB),
+ NAME_FUNC_OFFSET(15305, glMultiTexCoord3ivARB, glMultiTexCoord3ivARB, NULL, _gloffset_MultiTexCoord3ivARB),
+ NAME_FUNC_OFFSET(15324, glMultiTexCoord3sARB, glMultiTexCoord3sARB, NULL, _gloffset_MultiTexCoord3sARB),
+ NAME_FUNC_OFFSET(15342, glMultiTexCoord3svARB, glMultiTexCoord3svARB, NULL, _gloffset_MultiTexCoord3svARB),
+ NAME_FUNC_OFFSET(15361, glMultiTexCoord4dARB, glMultiTexCoord4dARB, NULL, _gloffset_MultiTexCoord4dARB),
+ NAME_FUNC_OFFSET(15379, glMultiTexCoord4dvARB, glMultiTexCoord4dvARB, NULL, _gloffset_MultiTexCoord4dvARB),
+ NAME_FUNC_OFFSET(15398, glMultiTexCoord4fARB, glMultiTexCoord4fARB, NULL, _gloffset_MultiTexCoord4fARB),
+ NAME_FUNC_OFFSET(15416, glMultiTexCoord4fvARB, glMultiTexCoord4fvARB, NULL, _gloffset_MultiTexCoord4fvARB),
+ NAME_FUNC_OFFSET(15435, glMultiTexCoord4iARB, glMultiTexCoord4iARB, NULL, _gloffset_MultiTexCoord4iARB),
+ NAME_FUNC_OFFSET(15453, glMultiTexCoord4ivARB, glMultiTexCoord4ivARB, NULL, _gloffset_MultiTexCoord4ivARB),
+ NAME_FUNC_OFFSET(15472, glMultiTexCoord4sARB, glMultiTexCoord4sARB, NULL, _gloffset_MultiTexCoord4sARB),
+ NAME_FUNC_OFFSET(15490, glMultiTexCoord4svARB, glMultiTexCoord4svARB, NULL, _gloffset_MultiTexCoord4svARB),
+ NAME_FUNC_OFFSET(15509, glStencilOpSeparate, glStencilOpSeparate, NULL, _gloffset_StencilOpSeparate),
+ NAME_FUNC_OFFSET(15532, glLoadTransposeMatrixdARB, glLoadTransposeMatrixdARB, NULL, _gloffset_LoadTransposeMatrixdARB),
+ NAME_FUNC_OFFSET(15555, glLoadTransposeMatrixfARB, glLoadTransposeMatrixfARB, NULL, _gloffset_LoadTransposeMatrixfARB),
+ NAME_FUNC_OFFSET(15578, glMultTransposeMatrixdARB, glMultTransposeMatrixdARB, NULL, _gloffset_MultTransposeMatrixdARB),
+ NAME_FUNC_OFFSET(15601, glMultTransposeMatrixfARB, glMultTransposeMatrixfARB, NULL, _gloffset_MultTransposeMatrixfARB),
+ NAME_FUNC_OFFSET(15624, glSampleCoverageARB, glSampleCoverageARB, NULL, _gloffset_SampleCoverageARB),
+ NAME_FUNC_OFFSET(15641, glCompressedTexImage1DARB, glCompressedTexImage1DARB, NULL, _gloffset_CompressedTexImage1DARB),
+ NAME_FUNC_OFFSET(15664, glCompressedTexImage2DARB, glCompressedTexImage2DARB, NULL, _gloffset_CompressedTexImage2DARB),
+ NAME_FUNC_OFFSET(15687, glCompressedTexImage3DARB, glCompressedTexImage3DARB, NULL, _gloffset_CompressedTexImage3DARB),
+ NAME_FUNC_OFFSET(15710, glCompressedTexSubImage1DARB, glCompressedTexSubImage1DARB, NULL, _gloffset_CompressedTexSubImage1DARB),
+ NAME_FUNC_OFFSET(15736, glCompressedTexSubImage2DARB, glCompressedTexSubImage2DARB, NULL, _gloffset_CompressedTexSubImage2DARB),
+ NAME_FUNC_OFFSET(15762, glCompressedTexSubImage3DARB, glCompressedTexSubImage3DARB, NULL, _gloffset_CompressedTexSubImage3DARB),
+ NAME_FUNC_OFFSET(15788, glGetCompressedTexImageARB, glGetCompressedTexImageARB, NULL, _gloffset_GetCompressedTexImageARB),
+ NAME_FUNC_OFFSET(15812, glDisableVertexAttribArrayARB, glDisableVertexAttribArrayARB, NULL, _gloffset_DisableVertexAttribArrayARB),
+ NAME_FUNC_OFFSET(15839, glEnableVertexAttribArrayARB, glEnableVertexAttribArrayARB, NULL, _gloffset_EnableVertexAttribArrayARB),
+ NAME_FUNC_OFFSET(15865, glGetVertexAttribdvARB, glGetVertexAttribdvARB, NULL, _gloffset_GetVertexAttribdvARB),
+ NAME_FUNC_OFFSET(15885, glGetVertexAttribfvARB, glGetVertexAttribfvARB, NULL, _gloffset_GetVertexAttribfvARB),
+ NAME_FUNC_OFFSET(15905, glGetVertexAttribivARB, glGetVertexAttribivARB, NULL, _gloffset_GetVertexAttribivARB),
+ NAME_FUNC_OFFSET(15925, glVertexAttrib1dARB, glVertexAttrib1dARB, NULL, _gloffset_VertexAttrib1dARB),
+ NAME_FUNC_OFFSET(15942, glVertexAttrib1dvARB, glVertexAttrib1dvARB, NULL, _gloffset_VertexAttrib1dvARB),
+ NAME_FUNC_OFFSET(15960, glVertexAttrib1fARB, glVertexAttrib1fARB, NULL, _gloffset_VertexAttrib1fARB),
+ NAME_FUNC_OFFSET(15977, glVertexAttrib1fvARB, glVertexAttrib1fvARB, NULL, _gloffset_VertexAttrib1fvARB),
+ NAME_FUNC_OFFSET(15995, glVertexAttrib1sARB, glVertexAttrib1sARB, NULL, _gloffset_VertexAttrib1sARB),
+ NAME_FUNC_OFFSET(16012, glVertexAttrib1svARB, glVertexAttrib1svARB, NULL, _gloffset_VertexAttrib1svARB),
+ NAME_FUNC_OFFSET(16030, glVertexAttrib2dARB, glVertexAttrib2dARB, NULL, _gloffset_VertexAttrib2dARB),
+ NAME_FUNC_OFFSET(16047, glVertexAttrib2dvARB, glVertexAttrib2dvARB, NULL, _gloffset_VertexAttrib2dvARB),
+ NAME_FUNC_OFFSET(16065, glVertexAttrib2fARB, glVertexAttrib2fARB, NULL, _gloffset_VertexAttrib2fARB),
+ NAME_FUNC_OFFSET(16082, glVertexAttrib2fvARB, glVertexAttrib2fvARB, NULL, _gloffset_VertexAttrib2fvARB),
+ NAME_FUNC_OFFSET(16100, glVertexAttrib2sARB, glVertexAttrib2sARB, NULL, _gloffset_VertexAttrib2sARB),
+ NAME_FUNC_OFFSET(16117, glVertexAttrib2svARB, glVertexAttrib2svARB, NULL, _gloffset_VertexAttrib2svARB),
+ NAME_FUNC_OFFSET(16135, glVertexAttrib3dARB, glVertexAttrib3dARB, NULL, _gloffset_VertexAttrib3dARB),
+ NAME_FUNC_OFFSET(16152, glVertexAttrib3dvARB, glVertexAttrib3dvARB, NULL, _gloffset_VertexAttrib3dvARB),
+ NAME_FUNC_OFFSET(16170, glVertexAttrib3fARB, glVertexAttrib3fARB, NULL, _gloffset_VertexAttrib3fARB),
+ NAME_FUNC_OFFSET(16187, glVertexAttrib3fvARB, glVertexAttrib3fvARB, NULL, _gloffset_VertexAttrib3fvARB),
+ NAME_FUNC_OFFSET(16205, glVertexAttrib3sARB, glVertexAttrib3sARB, NULL, _gloffset_VertexAttrib3sARB),
+ NAME_FUNC_OFFSET(16222, glVertexAttrib3svARB, glVertexAttrib3svARB, NULL, _gloffset_VertexAttrib3svARB),
+ NAME_FUNC_OFFSET(16240, glVertexAttrib4NbvARB, glVertexAttrib4NbvARB, NULL, _gloffset_VertexAttrib4NbvARB),
+ NAME_FUNC_OFFSET(16259, glVertexAttrib4NivARB, glVertexAttrib4NivARB, NULL, _gloffset_VertexAttrib4NivARB),
+ NAME_FUNC_OFFSET(16278, glVertexAttrib4NsvARB, glVertexAttrib4NsvARB, NULL, _gloffset_VertexAttrib4NsvARB),
+ NAME_FUNC_OFFSET(16297, glVertexAttrib4NubARB, glVertexAttrib4NubARB, NULL, _gloffset_VertexAttrib4NubARB),
+ NAME_FUNC_OFFSET(16316, glVertexAttrib4NubvARB, glVertexAttrib4NubvARB, NULL, _gloffset_VertexAttrib4NubvARB),
+ NAME_FUNC_OFFSET(16336, glVertexAttrib4NuivARB, glVertexAttrib4NuivARB, NULL, _gloffset_VertexAttrib4NuivARB),
+ NAME_FUNC_OFFSET(16356, glVertexAttrib4NusvARB, glVertexAttrib4NusvARB, NULL, _gloffset_VertexAttrib4NusvARB),
+ NAME_FUNC_OFFSET(16376, glVertexAttrib4bvARB, glVertexAttrib4bvARB, NULL, _gloffset_VertexAttrib4bvARB),
+ NAME_FUNC_OFFSET(16394, glVertexAttrib4dARB, glVertexAttrib4dARB, NULL, _gloffset_VertexAttrib4dARB),
+ NAME_FUNC_OFFSET(16411, glVertexAttrib4dvARB, glVertexAttrib4dvARB, NULL, _gloffset_VertexAttrib4dvARB),
+ NAME_FUNC_OFFSET(16429, glVertexAttrib4fARB, glVertexAttrib4fARB, NULL, _gloffset_VertexAttrib4fARB),
+ NAME_FUNC_OFFSET(16446, glVertexAttrib4fvARB, glVertexAttrib4fvARB, NULL, _gloffset_VertexAttrib4fvARB),
+ NAME_FUNC_OFFSET(16464, glVertexAttrib4ivARB, glVertexAttrib4ivARB, NULL, _gloffset_VertexAttrib4ivARB),
+ NAME_FUNC_OFFSET(16482, glVertexAttrib4sARB, glVertexAttrib4sARB, NULL, _gloffset_VertexAttrib4sARB),
+ NAME_FUNC_OFFSET(16499, glVertexAttrib4svARB, glVertexAttrib4svARB, NULL, _gloffset_VertexAttrib4svARB),
+ NAME_FUNC_OFFSET(16517, glVertexAttrib4ubvARB, glVertexAttrib4ubvARB, NULL, _gloffset_VertexAttrib4ubvARB),
+ NAME_FUNC_OFFSET(16536, glVertexAttrib4uivARB, glVertexAttrib4uivARB, NULL, _gloffset_VertexAttrib4uivARB),
+ NAME_FUNC_OFFSET(16555, glVertexAttrib4usvARB, glVertexAttrib4usvARB, NULL, _gloffset_VertexAttrib4usvARB),
+ NAME_FUNC_OFFSET(16574, glVertexAttribPointerARB, glVertexAttribPointerARB, NULL, _gloffset_VertexAttribPointerARB),
+ NAME_FUNC_OFFSET(16596, glBindBufferARB, glBindBufferARB, NULL, _gloffset_BindBufferARB),
+ NAME_FUNC_OFFSET(16609, glBufferDataARB, glBufferDataARB, NULL, _gloffset_BufferDataARB),
+ NAME_FUNC_OFFSET(16622, glBufferSubDataARB, glBufferSubDataARB, NULL, _gloffset_BufferSubDataARB),
+ NAME_FUNC_OFFSET(16638, glDeleteBuffersARB, glDeleteBuffersARB, NULL, _gloffset_DeleteBuffersARB),
+ NAME_FUNC_OFFSET(16654, glGenBuffersARB, glGenBuffersARB, NULL, _gloffset_GenBuffersARB),
+ NAME_FUNC_OFFSET(16667, glGetBufferParameterivARB, glGetBufferParameterivARB, NULL, _gloffset_GetBufferParameterivARB),
+ NAME_FUNC_OFFSET(16690, glGetBufferPointervARB, glGetBufferPointervARB, NULL, _gloffset_GetBufferPointervARB),
+ NAME_FUNC_OFFSET(16710, glGetBufferSubDataARB, glGetBufferSubDataARB, NULL, _gloffset_GetBufferSubDataARB),
+ NAME_FUNC_OFFSET(16729, glIsBufferARB, glIsBufferARB, NULL, _gloffset_IsBufferARB),
+ NAME_FUNC_OFFSET(16740, glMapBufferARB, glMapBufferARB, NULL, _gloffset_MapBufferARB),
+ NAME_FUNC_OFFSET(16752, glUnmapBufferARB, glUnmapBufferARB, NULL, _gloffset_UnmapBufferARB),
+ NAME_FUNC_OFFSET(16766, glBeginQueryARB, glBeginQueryARB, NULL, _gloffset_BeginQueryARB),
+ NAME_FUNC_OFFSET(16779, glDeleteQueriesARB, glDeleteQueriesARB, NULL, _gloffset_DeleteQueriesARB),
+ NAME_FUNC_OFFSET(16795, glEndQueryARB, glEndQueryARB, NULL, _gloffset_EndQueryARB),
+ NAME_FUNC_OFFSET(16806, glGenQueriesARB, glGenQueriesARB, NULL, _gloffset_GenQueriesARB),
+ NAME_FUNC_OFFSET(16819, glGetQueryObjectivARB, glGetQueryObjectivARB, NULL, _gloffset_GetQueryObjectivARB),
+ NAME_FUNC_OFFSET(16838, glGetQueryObjectuivARB, glGetQueryObjectuivARB, NULL, _gloffset_GetQueryObjectuivARB),
+ NAME_FUNC_OFFSET(16858, glGetQueryivARB, glGetQueryivARB, NULL, _gloffset_GetQueryivARB),
+ NAME_FUNC_OFFSET(16871, glIsQueryARB, glIsQueryARB, NULL, _gloffset_IsQueryARB),
+ NAME_FUNC_OFFSET(16881, glCompileShaderARB, glCompileShaderARB, NULL, _gloffset_CompileShaderARB),
+ NAME_FUNC_OFFSET(16897, glGetActiveUniformARB, glGetActiveUniformARB, NULL, _gloffset_GetActiveUniformARB),
+ NAME_FUNC_OFFSET(16916, glGetShaderSourceARB, glGetShaderSourceARB, NULL, _gloffset_GetShaderSourceARB),
+ NAME_FUNC_OFFSET(16934, glGetUniformLocationARB, glGetUniformLocationARB, NULL, _gloffset_GetUniformLocationARB),
+ NAME_FUNC_OFFSET(16955, glGetUniformfvARB, glGetUniformfvARB, NULL, _gloffset_GetUniformfvARB),
+ NAME_FUNC_OFFSET(16970, glGetUniformivARB, glGetUniformivARB, NULL, _gloffset_GetUniformivARB),
+ NAME_FUNC_OFFSET(16985, glLinkProgramARB, glLinkProgramARB, NULL, _gloffset_LinkProgramARB),
+ NAME_FUNC_OFFSET(16999, glShaderSourceARB, glShaderSourceARB, NULL, _gloffset_ShaderSourceARB),
+ NAME_FUNC_OFFSET(17014, glUniform1fARB, glUniform1fARB, NULL, _gloffset_Uniform1fARB),
+ NAME_FUNC_OFFSET(17026, glUniform1fvARB, glUniform1fvARB, NULL, _gloffset_Uniform1fvARB),
+ NAME_FUNC_OFFSET(17039, glUniform1iARB, glUniform1iARB, NULL, _gloffset_Uniform1iARB),
+ NAME_FUNC_OFFSET(17051, glUniform1ivARB, glUniform1ivARB, NULL, _gloffset_Uniform1ivARB),
+ NAME_FUNC_OFFSET(17064, glUniform2fARB, glUniform2fARB, NULL, _gloffset_Uniform2fARB),
+ NAME_FUNC_OFFSET(17076, glUniform2fvARB, glUniform2fvARB, NULL, _gloffset_Uniform2fvARB),
+ NAME_FUNC_OFFSET(17089, glUniform2iARB, glUniform2iARB, NULL, _gloffset_Uniform2iARB),
+ NAME_FUNC_OFFSET(17101, glUniform2ivARB, glUniform2ivARB, NULL, _gloffset_Uniform2ivARB),
+ NAME_FUNC_OFFSET(17114, glUniform3fARB, glUniform3fARB, NULL, _gloffset_Uniform3fARB),
+ NAME_FUNC_OFFSET(17126, glUniform3fvARB, glUniform3fvARB, NULL, _gloffset_Uniform3fvARB),
+ NAME_FUNC_OFFSET(17139, glUniform3iARB, glUniform3iARB, NULL, _gloffset_Uniform3iARB),
+ NAME_FUNC_OFFSET(17151, glUniform3ivARB, glUniform3ivARB, NULL, _gloffset_Uniform3ivARB),
+ NAME_FUNC_OFFSET(17164, glUniform4fARB, glUniform4fARB, NULL, _gloffset_Uniform4fARB),
+ NAME_FUNC_OFFSET(17176, glUniform4fvARB, glUniform4fvARB, NULL, _gloffset_Uniform4fvARB),
+ NAME_FUNC_OFFSET(17189, glUniform4iARB, glUniform4iARB, NULL, _gloffset_Uniform4iARB),
+ NAME_FUNC_OFFSET(17201, glUniform4ivARB, glUniform4ivARB, NULL, _gloffset_Uniform4ivARB),
+ NAME_FUNC_OFFSET(17214, glUniformMatrix2fvARB, glUniformMatrix2fvARB, NULL, _gloffset_UniformMatrix2fvARB),
+ NAME_FUNC_OFFSET(17233, glUniformMatrix3fvARB, glUniformMatrix3fvARB, NULL, _gloffset_UniformMatrix3fvARB),
+ NAME_FUNC_OFFSET(17252, glUniformMatrix4fvARB, glUniformMatrix4fvARB, NULL, _gloffset_UniformMatrix4fvARB),
+ NAME_FUNC_OFFSET(17271, glUseProgramObjectARB, glUseProgramObjectARB, NULL, _gloffset_UseProgramObjectARB),
+ NAME_FUNC_OFFSET(17284, glValidateProgramARB, glValidateProgramARB, NULL, _gloffset_ValidateProgramARB),
+ NAME_FUNC_OFFSET(17302, glBindAttribLocationARB, glBindAttribLocationARB, NULL, _gloffset_BindAttribLocationARB),
+ NAME_FUNC_OFFSET(17323, glGetActiveAttribARB, glGetActiveAttribARB, NULL, _gloffset_GetActiveAttribARB),
+ NAME_FUNC_OFFSET(17341, glGetAttribLocationARB, glGetAttribLocationARB, NULL, _gloffset_GetAttribLocationARB),
+ NAME_FUNC_OFFSET(17361, glDrawBuffersARB, glDrawBuffersARB, NULL, _gloffset_DrawBuffersARB),
+ NAME_FUNC_OFFSET(17375, glDrawBuffersARB, glDrawBuffersARB, NULL, _gloffset_DrawBuffersARB),
+ NAME_FUNC_OFFSET(17392, gl_dispatch_stub_568, gl_dispatch_stub_568, NULL, _gloffset_SampleMaskSGIS),
+ NAME_FUNC_OFFSET(17408, gl_dispatch_stub_569, gl_dispatch_stub_569, NULL, _gloffset_SamplePatternSGIS),
+ NAME_FUNC_OFFSET(17427, glPointParameterfEXT, glPointParameterfEXT, NULL, _gloffset_PointParameterfEXT),
+ NAME_FUNC_OFFSET(17445, glPointParameterfEXT, glPointParameterfEXT, NULL, _gloffset_PointParameterfEXT),
+ NAME_FUNC_OFFSET(17466, glPointParameterfEXT, glPointParameterfEXT, NULL, _gloffset_PointParameterfEXT),
+ NAME_FUNC_OFFSET(17488, glPointParameterfvEXT, glPointParameterfvEXT, NULL, _gloffset_PointParameterfvEXT),
+ NAME_FUNC_OFFSET(17507, glPointParameterfvEXT, glPointParameterfvEXT, NULL, _gloffset_PointParameterfvEXT),
+ NAME_FUNC_OFFSET(17529, glPointParameterfvEXT, glPointParameterfvEXT, NULL, _gloffset_PointParameterfvEXT),
+ NAME_FUNC_OFFSET(17552, glSecondaryColor3bEXT, glSecondaryColor3bEXT, NULL, _gloffset_SecondaryColor3bEXT),
+ NAME_FUNC_OFFSET(17571, glSecondaryColor3bvEXT, glSecondaryColor3bvEXT, NULL, _gloffset_SecondaryColor3bvEXT),
+ NAME_FUNC_OFFSET(17591, glSecondaryColor3dEXT, glSecondaryColor3dEXT, NULL, _gloffset_SecondaryColor3dEXT),
+ NAME_FUNC_OFFSET(17610, glSecondaryColor3dvEXT, glSecondaryColor3dvEXT, NULL, _gloffset_SecondaryColor3dvEXT),
+ NAME_FUNC_OFFSET(17630, glSecondaryColor3fEXT, glSecondaryColor3fEXT, NULL, _gloffset_SecondaryColor3fEXT),
+ NAME_FUNC_OFFSET(17649, glSecondaryColor3fvEXT, glSecondaryColor3fvEXT, NULL, _gloffset_SecondaryColor3fvEXT),
+ NAME_FUNC_OFFSET(17669, glSecondaryColor3iEXT, glSecondaryColor3iEXT, NULL, _gloffset_SecondaryColor3iEXT),
+ NAME_FUNC_OFFSET(17688, glSecondaryColor3ivEXT, glSecondaryColor3ivEXT, NULL, _gloffset_SecondaryColor3ivEXT),
+ NAME_FUNC_OFFSET(17708, glSecondaryColor3sEXT, glSecondaryColor3sEXT, NULL, _gloffset_SecondaryColor3sEXT),
+ NAME_FUNC_OFFSET(17727, glSecondaryColor3svEXT, glSecondaryColor3svEXT, NULL, _gloffset_SecondaryColor3svEXT),
+ NAME_FUNC_OFFSET(17747, glSecondaryColor3ubEXT, glSecondaryColor3ubEXT, NULL, _gloffset_SecondaryColor3ubEXT),
+ NAME_FUNC_OFFSET(17767, glSecondaryColor3ubvEXT, glSecondaryColor3ubvEXT, NULL, _gloffset_SecondaryColor3ubvEXT),
+ NAME_FUNC_OFFSET(17788, glSecondaryColor3uiEXT, glSecondaryColor3uiEXT, NULL, _gloffset_SecondaryColor3uiEXT),
+ NAME_FUNC_OFFSET(17808, glSecondaryColor3uivEXT, glSecondaryColor3uivEXT, NULL, _gloffset_SecondaryColor3uivEXT),
+ NAME_FUNC_OFFSET(17829, glSecondaryColor3usEXT, glSecondaryColor3usEXT, NULL, _gloffset_SecondaryColor3usEXT),
+ NAME_FUNC_OFFSET(17849, glSecondaryColor3usvEXT, glSecondaryColor3usvEXT, NULL, _gloffset_SecondaryColor3usvEXT),
+ NAME_FUNC_OFFSET(17870, glSecondaryColorPointerEXT, glSecondaryColorPointerEXT, NULL, _gloffset_SecondaryColorPointerEXT),
+ NAME_FUNC_OFFSET(17894, glMultiDrawArraysEXT, glMultiDrawArraysEXT, NULL, _gloffset_MultiDrawArraysEXT),
+ NAME_FUNC_OFFSET(17912, glMultiDrawElementsEXT, glMultiDrawElementsEXT, NULL, _gloffset_MultiDrawElementsEXT),
+ NAME_FUNC_OFFSET(17932, glFogCoordPointerEXT, glFogCoordPointerEXT, NULL, _gloffset_FogCoordPointerEXT),
+ NAME_FUNC_OFFSET(17950, glFogCoorddEXT, glFogCoorddEXT, NULL, _gloffset_FogCoorddEXT),
+ NAME_FUNC_OFFSET(17962, glFogCoorddvEXT, glFogCoorddvEXT, NULL, _gloffset_FogCoorddvEXT),
+ NAME_FUNC_OFFSET(17975, glFogCoordfEXT, glFogCoordfEXT, NULL, _gloffset_FogCoordfEXT),
+ NAME_FUNC_OFFSET(17987, glFogCoordfvEXT, glFogCoordfvEXT, NULL, _gloffset_FogCoordfvEXT),
+ NAME_FUNC_OFFSET(18000, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, _gloffset_BlendFuncSeparateEXT),
+ NAME_FUNC_OFFSET(18020, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, _gloffset_BlendFuncSeparateEXT),
+ NAME_FUNC_OFFSET(18044, glWindowPos2dMESA, glWindowPos2dMESA, NULL, _gloffset_WindowPos2dMESA),
+ NAME_FUNC_OFFSET(18058, glWindowPos2dMESA, glWindowPos2dMESA, NULL, _gloffset_WindowPos2dMESA),
+ NAME_FUNC_OFFSET(18075, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, _gloffset_WindowPos2dvMESA),
+ NAME_FUNC_OFFSET(18090, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, _gloffset_WindowPos2dvMESA),
+ NAME_FUNC_OFFSET(18108, glWindowPos2fMESA, glWindowPos2fMESA, NULL, _gloffset_WindowPos2fMESA),
+ NAME_FUNC_OFFSET(18122, glWindowPos2fMESA, glWindowPos2fMESA, NULL, _gloffset_WindowPos2fMESA),
+ NAME_FUNC_OFFSET(18139, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, _gloffset_WindowPos2fvMESA),
+ NAME_FUNC_OFFSET(18154, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, _gloffset_WindowPos2fvMESA),
+ NAME_FUNC_OFFSET(18172, glWindowPos2iMESA, glWindowPos2iMESA, NULL, _gloffset_WindowPos2iMESA),
+ NAME_FUNC_OFFSET(18186, glWindowPos2iMESA, glWindowPos2iMESA, NULL, _gloffset_WindowPos2iMESA),
+ NAME_FUNC_OFFSET(18203, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, _gloffset_WindowPos2ivMESA),
+ NAME_FUNC_OFFSET(18218, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, _gloffset_WindowPos2ivMESA),
+ NAME_FUNC_OFFSET(18236, glWindowPos2sMESA, glWindowPos2sMESA, NULL, _gloffset_WindowPos2sMESA),
+ NAME_FUNC_OFFSET(18250, glWindowPos2sMESA, glWindowPos2sMESA, NULL, _gloffset_WindowPos2sMESA),
+ NAME_FUNC_OFFSET(18267, glWindowPos2svMESA, glWindowPos2svMESA, NULL, _gloffset_WindowPos2svMESA),
+ NAME_FUNC_OFFSET(18282, glWindowPos2svMESA, glWindowPos2svMESA, NULL, _gloffset_WindowPos2svMESA),
+ NAME_FUNC_OFFSET(18300, glWindowPos3dMESA, glWindowPos3dMESA, NULL, _gloffset_WindowPos3dMESA),
+ NAME_FUNC_OFFSET(18314, glWindowPos3dMESA, glWindowPos3dMESA, NULL, _gloffset_WindowPos3dMESA),
+ NAME_FUNC_OFFSET(18331, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, _gloffset_WindowPos3dvMESA),
+ NAME_FUNC_OFFSET(18346, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, _gloffset_WindowPos3dvMESA),
+ NAME_FUNC_OFFSET(18364, glWindowPos3fMESA, glWindowPos3fMESA, NULL, _gloffset_WindowPos3fMESA),
+ NAME_FUNC_OFFSET(18378, glWindowPos3fMESA, glWindowPos3fMESA, NULL, _gloffset_WindowPos3fMESA),
+ NAME_FUNC_OFFSET(18395, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, _gloffset_WindowPos3fvMESA),
+ NAME_FUNC_OFFSET(18410, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, _gloffset_WindowPos3fvMESA),
+ NAME_FUNC_OFFSET(18428, glWindowPos3iMESA, glWindowPos3iMESA, NULL, _gloffset_WindowPos3iMESA),
+ NAME_FUNC_OFFSET(18442, glWindowPos3iMESA, glWindowPos3iMESA, NULL, _gloffset_WindowPos3iMESA),
+ NAME_FUNC_OFFSET(18459, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, _gloffset_WindowPos3ivMESA),
+ NAME_FUNC_OFFSET(18474, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, _gloffset_WindowPos3ivMESA),
+ NAME_FUNC_OFFSET(18492, glWindowPos3sMESA, glWindowPos3sMESA, NULL, _gloffset_WindowPos3sMESA),
+ NAME_FUNC_OFFSET(18506, glWindowPos3sMESA, glWindowPos3sMESA, NULL, _gloffset_WindowPos3sMESA),
+ NAME_FUNC_OFFSET(18523, glWindowPos3svMESA, glWindowPos3svMESA, NULL, _gloffset_WindowPos3svMESA),
+ NAME_FUNC_OFFSET(18538, glWindowPos3svMESA, glWindowPos3svMESA, NULL, _gloffset_WindowPos3svMESA),
+ NAME_FUNC_OFFSET(18556, glBindProgramNV, glBindProgramNV, NULL, _gloffset_BindProgramNV),
+ NAME_FUNC_OFFSET(18573, glDeleteProgramsNV, glDeleteProgramsNV, NULL, _gloffset_DeleteProgramsNV),
+ NAME_FUNC_OFFSET(18593, glGenProgramsNV, glGenProgramsNV, NULL, _gloffset_GenProgramsNV),
+ NAME_FUNC_OFFSET(18610, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, _gloffset_GetVertexAttribPointervNV),
+ NAME_FUNC_OFFSET(18636, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, _gloffset_GetVertexAttribPointervNV),
+ NAME_FUNC_OFFSET(18665, glIsProgramNV, glIsProgramNV, NULL, _gloffset_IsProgramNV),
+ NAME_FUNC_OFFSET(18680, glPointParameteriNV, glPointParameteriNV, NULL, _gloffset_PointParameteriNV),
+ NAME_FUNC_OFFSET(18698, glPointParameterivNV, glPointParameterivNV, NULL, _gloffset_PointParameterivNV),
+ NAME_FUNC_OFFSET(18717, gl_dispatch_stub_749, gl_dispatch_stub_749, NULL, _gloffset_BlendEquationSeparateEXT),
+ NAME_FUNC_OFFSET(18741, gl_dispatch_stub_749, gl_dispatch_stub_749, NULL, _gloffset_BlendEquationSeparateEXT),
NAME_FUNC_OFFSET(-1, NULL, NULL, NULL, 0)
};
diff --git a/src/mesa/main/api_validate.c b/src/mesa/main/api_validate.c
index 88a527e84cb..7d75cd796bc 100644
--- a/src/mesa/main/api_validate.c
+++ b/src/mesa/main/api_validate.c
@@ -214,7 +214,7 @@ _mesa_validate_DrawRangeElements(GLcontext *ctx, GLenum mode,
/* make sure count doesn't go outside buffer bounds */
if (indexBytes > ctx->Array.ElementArrayBufferObj->Size) {
- _mesa_warning(ctx, "glDrawElements index out of buffer bounds");
+ _mesa_warning(ctx, "glDrawRangeElements index out of buffer bounds");
return GL_FALSE;
}
}
@@ -247,8 +247,9 @@ _mesa_validate_DrawArrays(GLcontext *ctx,
{
ASSERT_OUTSIDE_BEGIN_END_WITH_RETVAL(ctx, GL_FALSE);
- if (count < 0) {
- _mesa_error(ctx, GL_INVALID_VALUE, "glDrawArrays(count)" );
+ if (count <= 0) {
+ if (count < 0)
+ _mesa_error(ctx, GL_INVALID_VALUE, "glDrawArrays(count)" );
return GL_FALSE;
}
diff --git a/src/mesa/main/attrib.c b/src/mesa/main/attrib.c
index 427a6b0901c..8ddfda8ba04 100644
--- a/src/mesa/main/attrib.c
+++ b/src/mesa/main/attrib.c
@@ -1106,7 +1106,8 @@ _mesa_PopAttrib(void)
(GLint) point->CoordReplace[u]);
}
_mesa_set_enable(ctx, GL_POINT_SPRITE_NV,point->PointSprite);
- _mesa_PointParameteriNV(GL_POINT_SPRITE_R_MODE_NV,
+ if (ctx->Extensions.NV_point_sprite)
+ _mesa_PointParameteriNV(GL_POINT_SPRITE_R_MODE_NV,
ctx->Point.SpriteRMode);
_mesa_PointParameterfEXT(GL_POINT_SPRITE_COORD_ORIGIN,
(GLfloat)ctx->Point.SpriteOrigin);
diff --git a/src/mesa/main/context.c b/src/mesa/main/context.c
index 4f3e22dbb2b..754b1a7d823 100644
--- a/src/mesa/main/context.c
+++ b/src/mesa/main/context.c
@@ -6,7 +6,7 @@
/*
* Mesa 3-D graphics library
- * Version: 7.0
+ * Version: 7.0.2
*
* Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
*
@@ -1462,8 +1462,6 @@ void
_mesa_make_current( GLcontext *newCtx, GLframebuffer *drawBuffer,
GLframebuffer *readBuffer )
{
- GET_CURRENT_CONTEXT(oldCtx);
-
if (MESA_VERBOSE & VERBOSE_API)
_mesa_debug(newCtx, "_mesa_make_current()\n");
@@ -1488,13 +1486,6 @@ _mesa_make_current( GLcontext *newCtx, GLframebuffer *drawBuffer,
_glapi_set_context((void *) newCtx);
ASSERT(_mesa_get_current_context() == newCtx);
- if (oldCtx) {
- _mesa_unreference_framebuffer(&oldCtx->WinSysDrawBuffer);
- _mesa_unreference_framebuffer(&oldCtx->WinSysReadBuffer);
- _mesa_unreference_framebuffer(&oldCtx->DrawBuffer);
- _mesa_unreference_framebuffer(&oldCtx->ReadBuffer);
- }
-
if (!newCtx) {
_glapi_set_dispatch(NULL); /* none current */
}
diff --git a/src/mesa/main/enable.c b/src/mesa/main/enable.c
index 0e14345e730..1c6167b7994 100644
--- a/src/mesa/main/enable.c
+++ b/src/mesa/main/enable.c
@@ -364,6 +364,10 @@ _mesa_set_enable(GLcontext *ctx, GLenum cap, GLboolean state)
case GL_LIGHTING:
if (ctx->Light.Enabled == state)
return;
+ if (ctx->Light.Enabled && ctx->Light.Model.TwoSide)
+ ctx->_TriangleCaps |= DD_TRI_LIGHT_TWOSIDE;
+ else
+ ctx->_TriangleCaps &= ~DD_TRI_LIGHT_TWOSIDE;
FLUSH_VERTICES(ctx, _NEW_LIGHT);
ctx->Light.Enabled = state;
break;
@@ -372,12 +376,14 @@ _mesa_set_enable(GLcontext *ctx, GLenum cap, GLboolean state)
return;
FLUSH_VERTICES(ctx, _NEW_LINE);
ctx->Line.SmoothFlag = state;
+ ctx->_TriangleCaps ^= DD_LINE_SMOOTH;
break;
case GL_LINE_STIPPLE:
if (ctx->Line.StippleFlag == state)
return;
FLUSH_VERTICES(ctx, _NEW_LINE);
ctx->Line.StippleFlag = state;
+ ctx->_TriangleCaps ^= DD_LINE_STIPPLE;
break;
case GL_INDEX_LOGIC_OP:
if (ctx->Color.IndexLogicOpEnabled == state)
@@ -516,18 +522,21 @@ _mesa_set_enable(GLcontext *ctx, GLenum cap, GLboolean state)
return;
FLUSH_VERTICES(ctx, _NEW_POINT);
ctx->Point.SmoothFlag = state;
+ ctx->_TriangleCaps ^= DD_POINT_SMOOTH;
break;
case GL_POLYGON_SMOOTH:
if (ctx->Polygon.SmoothFlag == state)
return;
FLUSH_VERTICES(ctx, _NEW_POLYGON);
ctx->Polygon.SmoothFlag = state;
+ ctx->_TriangleCaps ^= DD_TRI_SMOOTH;
break;
case GL_POLYGON_STIPPLE:
if (ctx->Polygon.StippleFlag == state)
return;
FLUSH_VERTICES(ctx, _NEW_POLYGON);
ctx->Polygon.StippleFlag = state;
+ ctx->_TriangleCaps ^= DD_TRI_STIPPLE;
break;
case GL_POLYGON_OFFSET_POINT:
if (ctx->Polygon.OffsetPoint == state)
@@ -877,6 +886,10 @@ _mesa_set_enable(GLcontext *ctx, GLenum cap, GLboolean state)
return;
FLUSH_VERTICES(ctx, _NEW_STENCIL);
ctx->Stencil.TestTwoSide = state;
+ if (state)
+ ctx->_TriangleCaps |= DD_TRI_TWOSTENCIL;
+ else
+ ctx->_TriangleCaps &= ~DD_TRI_TWOSTENCIL;
break;
#if FEATURE_ARB_fragment_program
diff --git a/src/mesa/main/enums.c b/src/mesa/main/enums.c
index bad33f7f642..e4e8611f437 100644
--- a/src/mesa/main/enums.c
+++ b/src/mesa/main/enums.c
@@ -1428,9 +1428,13 @@ LONGSTRING static const char enum_string_table[] =
"GL_STENCIL\0"
"GL_STENCIL_ATTACHMENT_EXT\0"
"GL_STENCIL_BACK_FAIL\0"
+ "GL_STENCIL_BACK_FAIL_ATI\0"
"GL_STENCIL_BACK_FUNC\0"
+ "GL_STENCIL_BACK_FUNC_ATI\0"
"GL_STENCIL_BACK_PASS_DEPTH_FAIL\0"
+ "GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI\0"
"GL_STENCIL_BACK_PASS_DEPTH_PASS\0"
+ "GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI\0"
"GL_STENCIL_BACK_REF\0"
"GL_STENCIL_BACK_VALUE_MASK\0"
"GL_STENCIL_BACK_WRITEMASK\0"
@@ -1774,7 +1778,7 @@ LONGSTRING static const char enum_string_table[] =
"GL_ZOOM_Y\0"
;
-static const enum_elt all_enums[1737] =
+static const enum_elt all_enums[1741] =
{
{ 0, 0x00000600 }, /* GL_2D */
{ 6, 0x00001407 }, /* GL_2_BYTES */
@@ -3169,350 +3173,354 @@ static const enum_elt all_enums[1737] =
{ 29503, 0x00001802 }, /* GL_STENCIL */
{ 29514, 0x00008D20 }, /* GL_STENCIL_ATTACHMENT_EXT */
{ 29540, 0x00008801 }, /* GL_STENCIL_BACK_FAIL */
- { 29561, 0x00008800 }, /* GL_STENCIL_BACK_FUNC */
- { 29582, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */
- { 29614, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */
- { 29646, 0x00008CA3 }, /* GL_STENCIL_BACK_REF */
- { 29666, 0x00008CA4 }, /* GL_STENCIL_BACK_VALUE_MASK */
- { 29693, 0x00008CA5 }, /* GL_STENCIL_BACK_WRITEMASK */
- { 29719, 0x00000D57 }, /* GL_STENCIL_BITS */
- { 29735, 0x00000400 }, /* GL_STENCIL_BUFFER_BIT */
- { 29757, 0x00000B91 }, /* GL_STENCIL_CLEAR_VALUE */
- { 29780, 0x00000B94 }, /* GL_STENCIL_FAIL */
- { 29796, 0x00000B92 }, /* GL_STENCIL_FUNC */
- { 29812, 0x00001901 }, /* GL_STENCIL_INDEX */
- { 29829, 0x00008D49 }, /* GL_STENCIL_INDEX16_EXT */
- { 29852, 0x00008D46 }, /* GL_STENCIL_INDEX1_EXT */
- { 29874, 0x00008D47 }, /* GL_STENCIL_INDEX4_EXT */
- { 29896, 0x00008D48 }, /* GL_STENCIL_INDEX8_EXT */
- { 29918, 0x00008D45 }, /* GL_STENCIL_INDEX_EXT */
- { 29939, 0x00000B95 }, /* GL_STENCIL_PASS_DEPTH_FAIL */
- { 29966, 0x00000B96 }, /* GL_STENCIL_PASS_DEPTH_PASS */
- { 29993, 0x00000B97 }, /* GL_STENCIL_REF */
- { 30008, 0x00000B90 }, /* GL_STENCIL_TEST */
- { 30024, 0x00008910 }, /* GL_STENCIL_TEST_TWO_SIDE_EXT */
- { 30053, 0x00000B93 }, /* GL_STENCIL_VALUE_MASK */
- { 30075, 0x00000B98 }, /* GL_STENCIL_WRITEMASK */
- { 30096, 0x00000C33 }, /* GL_STEREO */
- { 30106, 0x000088E2 }, /* GL_STREAM_COPY */
- { 30121, 0x000088E2 }, /* GL_STREAM_COPY_ARB */
- { 30140, 0x000088E0 }, /* GL_STREAM_DRAW */
- { 30155, 0x000088E0 }, /* GL_STREAM_DRAW_ARB */
- { 30174, 0x000088E1 }, /* GL_STREAM_READ */
- { 30189, 0x000088E1 }, /* GL_STREAM_READ_ARB */
- { 30208, 0x00000D50 }, /* GL_SUBPIXEL_BITS */
- { 30225, 0x000084E7 }, /* GL_SUBTRACT */
- { 30237, 0x000084E7 }, /* GL_SUBTRACT_ARB */
- { 30253, 0x00002001 }, /* GL_T */
- { 30258, 0x00002A2A }, /* GL_T2F_C3F_V3F */
- { 30273, 0x00002A2C }, /* GL_T2F_C4F_N3F_V3F */
- { 30292, 0x00002A29 }, /* GL_T2F_C4UB_V3F */
- { 30308, 0x00002A2B }, /* GL_T2F_N3F_V3F */
- { 30323, 0x00002A27 }, /* GL_T2F_V3F */
- { 30334, 0x00002A2D }, /* GL_T4F_C4F_N3F_V4F */
- { 30353, 0x00002A28 }, /* GL_T4F_V4F */
- { 30364, 0x00008031 }, /* GL_TABLE_TOO_LARGE_EXT */
- { 30387, 0x00001702 }, /* GL_TEXTURE */
- { 30398, 0x000084C0 }, /* GL_TEXTURE0 */
- { 30410, 0x000084C0 }, /* GL_TEXTURE0_ARB */
- { 30426, 0x000084C1 }, /* GL_TEXTURE1 */
- { 30438, 0x000084CA }, /* GL_TEXTURE10 */
- { 30451, 0x000084CA }, /* GL_TEXTURE10_ARB */
- { 30468, 0x000084CB }, /* GL_TEXTURE11 */
- { 30481, 0x000084CB }, /* GL_TEXTURE11_ARB */
- { 30498, 0x000084CC }, /* GL_TEXTURE12 */
- { 30511, 0x000084CC }, /* GL_TEXTURE12_ARB */
- { 30528, 0x000084CD }, /* GL_TEXTURE13 */
- { 30541, 0x000084CD }, /* GL_TEXTURE13_ARB */
- { 30558, 0x000084CE }, /* GL_TEXTURE14 */
- { 30571, 0x000084CE }, /* GL_TEXTURE14_ARB */
- { 30588, 0x000084CF }, /* GL_TEXTURE15 */
- { 30601, 0x000084CF }, /* GL_TEXTURE15_ARB */
- { 30618, 0x000084D0 }, /* GL_TEXTURE16 */
- { 30631, 0x000084D0 }, /* GL_TEXTURE16_ARB */
- { 30648, 0x000084D1 }, /* GL_TEXTURE17 */
- { 30661, 0x000084D1 }, /* GL_TEXTURE17_ARB */
- { 30678, 0x000084D2 }, /* GL_TEXTURE18 */
- { 30691, 0x000084D2 }, /* GL_TEXTURE18_ARB */
- { 30708, 0x000084D3 }, /* GL_TEXTURE19 */
- { 30721, 0x000084D3 }, /* GL_TEXTURE19_ARB */
- { 30738, 0x000084C1 }, /* GL_TEXTURE1_ARB */
- { 30754, 0x000084C2 }, /* GL_TEXTURE2 */
- { 30766, 0x000084D4 }, /* GL_TEXTURE20 */
- { 30779, 0x000084D4 }, /* GL_TEXTURE20_ARB */
- { 30796, 0x000084D5 }, /* GL_TEXTURE21 */
- { 30809, 0x000084D5 }, /* GL_TEXTURE21_ARB */
- { 30826, 0x000084D6 }, /* GL_TEXTURE22 */
- { 30839, 0x000084D6 }, /* GL_TEXTURE22_ARB */
- { 30856, 0x000084D7 }, /* GL_TEXTURE23 */
- { 30869, 0x000084D7 }, /* GL_TEXTURE23_ARB */
- { 30886, 0x000084D8 }, /* GL_TEXTURE24 */
- { 30899, 0x000084D8 }, /* GL_TEXTURE24_ARB */
- { 30916, 0x000084D9 }, /* GL_TEXTURE25 */
- { 30929, 0x000084D9 }, /* GL_TEXTURE25_ARB */
- { 30946, 0x000084DA }, /* GL_TEXTURE26 */
- { 30959, 0x000084DA }, /* GL_TEXTURE26_ARB */
- { 30976, 0x000084DB }, /* GL_TEXTURE27 */
- { 30989, 0x000084DB }, /* GL_TEXTURE27_ARB */
- { 31006, 0x000084DC }, /* GL_TEXTURE28 */
- { 31019, 0x000084DC }, /* GL_TEXTURE28_ARB */
- { 31036, 0x000084DD }, /* GL_TEXTURE29 */
- { 31049, 0x000084DD }, /* GL_TEXTURE29_ARB */
- { 31066, 0x000084C2 }, /* GL_TEXTURE2_ARB */
- { 31082, 0x000084C3 }, /* GL_TEXTURE3 */
- { 31094, 0x000084DE }, /* GL_TEXTURE30 */
- { 31107, 0x000084DE }, /* GL_TEXTURE30_ARB */
- { 31124, 0x000084DF }, /* GL_TEXTURE31 */
- { 31137, 0x000084DF }, /* GL_TEXTURE31_ARB */
- { 31154, 0x000084C3 }, /* GL_TEXTURE3_ARB */
- { 31170, 0x000084C4 }, /* GL_TEXTURE4 */
- { 31182, 0x000084C4 }, /* GL_TEXTURE4_ARB */
- { 31198, 0x000084C5 }, /* GL_TEXTURE5 */
- { 31210, 0x000084C5 }, /* GL_TEXTURE5_ARB */
- { 31226, 0x000084C6 }, /* GL_TEXTURE6 */
- { 31238, 0x000084C6 }, /* GL_TEXTURE6_ARB */
- { 31254, 0x000084C7 }, /* GL_TEXTURE7 */
- { 31266, 0x000084C7 }, /* GL_TEXTURE7_ARB */
- { 31282, 0x000084C8 }, /* GL_TEXTURE8 */
- { 31294, 0x000084C8 }, /* GL_TEXTURE8_ARB */
- { 31310, 0x000084C9 }, /* GL_TEXTURE9 */
- { 31322, 0x000084C9 }, /* GL_TEXTURE9_ARB */
- { 31338, 0x00000DE0 }, /* GL_TEXTURE_1D */
- { 31352, 0x00000DE1 }, /* GL_TEXTURE_2D */
- { 31366, 0x0000806F }, /* GL_TEXTURE_3D */
- { 31380, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE */
- { 31402, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE_EXT */
- { 31428, 0x0000813C }, /* GL_TEXTURE_BASE_LEVEL */
- { 31450, 0x00008068 }, /* GL_TEXTURE_BINDING_1D */
- { 31472, 0x00008069 }, /* GL_TEXTURE_BINDING_2D */
- { 31494, 0x0000806A }, /* GL_TEXTURE_BINDING_3D */
- { 31516, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP */
- { 31544, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP_ARB */
- { 31576, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_ARB */
- { 31609, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_NV */
- { 31641, 0x00040000 }, /* GL_TEXTURE_BIT */
- { 31656, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE */
- { 31677, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE_EXT */
- { 31702, 0x00001005 }, /* GL_TEXTURE_BORDER */
- { 31720, 0x00001004 }, /* GL_TEXTURE_BORDER_COLOR */
- { 31744, 0x00008171 }, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */
- { 31775, 0x00008176 }, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */
- { 31805, 0x00008172 }, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */
- { 31835, 0x00008175 }, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */
- { 31870, 0x00008173 }, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */
- { 31901, 0x00008174 }, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */
- { 31939, 0x000080BC }, /* GL_TEXTURE_COLOR_TABLE_SGI */
- { 31966, 0x000081EF }, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */
- { 31998, 0x000080BF }, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */
- { 32032, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC */
- { 32056, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC_ARB */
- { 32084, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE */
- { 32108, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE_ARB */
- { 32136, 0x0000819B }, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */
- { 32169, 0x0000819A }, /* GL_TEXTURE_COMPARE_SGIX */
- { 32193, 0x00001003 }, /* GL_TEXTURE_COMPONENTS */
- { 32215, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED */
- { 32237, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED_ARB */
- { 32263, 0x000086A3 }, /* GL_TEXTURE_COMPRESSED_FORMATS_ARB */
- { 32297, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */
- { 32330, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB */
- { 32367, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT */
- { 32395, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT_ARB */
- { 32427, 0x00008078 }, /* GL_TEXTURE_COORD_ARRAY */
- { 32450, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */
- { 32488, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB */
- { 32530, 0x00008092 }, /* GL_TEXTURE_COORD_ARRAY_POINTER */
- { 32561, 0x00008088 }, /* GL_TEXTURE_COORD_ARRAY_SIZE */
- { 32589, 0x0000808A }, /* GL_TEXTURE_COORD_ARRAY_STRIDE */
- { 32619, 0x00008089 }, /* GL_TEXTURE_COORD_ARRAY_TYPE */
- { 32647, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP */
- { 32667, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP_ARB */
- { 32691, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */
- { 32722, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB */
- { 32757, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */
- { 32788, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB */
- { 32823, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */
- { 32854, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB */
- { 32889, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */
- { 32920, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB */
- { 32955, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */
- { 32986, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB */
- { 33021, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */
- { 33052, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB */
- { 33087, 0x00008071 }, /* GL_TEXTURE_DEPTH */
- { 33104, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE */
- { 33126, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE_ARB */
- { 33152, 0x00002300 }, /* GL_TEXTURE_ENV */
- { 33167, 0x00002201 }, /* GL_TEXTURE_ENV_COLOR */
- { 33188, 0x00002200 }, /* GL_TEXTURE_ENV_MODE */
- { 33208, 0x00008500 }, /* GL_TEXTURE_FILTER_CONTROL */
- { 33234, 0x00002500 }, /* GL_TEXTURE_GEN_MODE */
- { 33254, 0x00000C63 }, /* GL_TEXTURE_GEN_Q */
- { 33271, 0x00000C62 }, /* GL_TEXTURE_GEN_R */
- { 33288, 0x00000C60 }, /* GL_TEXTURE_GEN_S */
- { 33305, 0x00000C61 }, /* GL_TEXTURE_GEN_T */
- { 33322, 0x0000819D }, /* GL_TEXTURE_GEQUAL_R_SGIX */
- { 33347, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE */
- { 33369, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE_EXT */
- { 33395, 0x00001001 }, /* GL_TEXTURE_HEIGHT */
- { 33413, 0x000080ED }, /* GL_TEXTURE_INDEX_SIZE_EXT */
- { 33439, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE */
- { 33465, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE_EXT */
- { 33495, 0x00001003 }, /* GL_TEXTURE_INTERNAL_FORMAT */
- { 33522, 0x0000819C }, /* GL_TEXTURE_LEQUAL_R_SGIX */
- { 33547, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS */
- { 33567, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS_EXT */
- { 33591, 0x00008190 }, /* GL_TEXTURE_LOD_BIAS_R_SGIX */
- { 33618, 0x0000818E }, /* GL_TEXTURE_LOD_BIAS_S_SGIX */
- { 33645, 0x0000818F }, /* GL_TEXTURE_LOD_BIAS_T_SGIX */
- { 33672, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE */
- { 33698, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE_EXT */
- { 33728, 0x00002800 }, /* GL_TEXTURE_MAG_FILTER */
- { 33750, 0x00000BA8 }, /* GL_TEXTURE_MATRIX */
- { 33768, 0x000084FE }, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */
- { 33798, 0x0000836B }, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */
- { 33826, 0x00008369 }, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */
- { 33854, 0x0000836A }, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */
- { 33882, 0x0000813D }, /* GL_TEXTURE_MAX_LEVEL */
- { 33903, 0x0000813B }, /* GL_TEXTURE_MAX_LOD */
- { 33922, 0x00002801 }, /* GL_TEXTURE_MIN_FILTER */
- { 33944, 0x0000813A }, /* GL_TEXTURE_MIN_LOD */
- { 33963, 0x00008066 }, /* GL_TEXTURE_PRIORITY */
- { 33983, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_ARB */
- { 34008, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_NV */
- { 34032, 0x0000805C }, /* GL_TEXTURE_RED_SIZE */
- { 34052, 0x0000805C }, /* GL_TEXTURE_RED_SIZE_EXT */
- { 34076, 0x00008067 }, /* GL_TEXTURE_RESIDENT */
- { 34096, 0x00000BA5 }, /* GL_TEXTURE_STACK_DEPTH */
- { 34119, 0x00008065 }, /* GL_TEXTURE_TOO_LARGE_EXT */
- { 34144, 0x0000888F }, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */
- { 34178, 0x00001000 }, /* GL_TEXTURE_WIDTH */
- { 34195, 0x00008072 }, /* GL_TEXTURE_WRAP_R */
- { 34213, 0x00002802 }, /* GL_TEXTURE_WRAP_S */
- { 34231, 0x00002803 }, /* GL_TEXTURE_WRAP_T */
- { 34249, 0x000088BF }, /* GL_TIME_ELAPSED_EXT */
- { 34269, 0x00008648 }, /* GL_TRACK_MATRIX_NV */
- { 34288, 0x00008649 }, /* GL_TRACK_MATRIX_TRANSFORM_NV */
- { 34317, 0x00001000 }, /* GL_TRANSFORM_BIT */
- { 34334, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX */
- { 34360, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX_ARB */
- { 34390, 0x000088B7 }, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */
- { 34422, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX */
- { 34452, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX_ARB */
- { 34486, 0x0000862C }, /* GL_TRANSPOSE_NV */
- { 34502, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX */
- { 34533, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX_ARB */
- { 34568, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX */
- { 34596, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX_ARB */
- { 34628, 0x00000004 }, /* GL_TRIANGLES */
- { 34641, 0x00000006 }, /* GL_TRIANGLE_FAN */
- { 34657, 0x00008615 }, /* GL_TRIANGLE_MESH_SUN */
- { 34678, 0x00000005 }, /* GL_TRIANGLE_STRIP */
- { 34696, 0x00000001 }, /* GL_TRUE */
- { 34704, 0x00000CF5 }, /* GL_UNPACK_ALIGNMENT */
- { 34724, 0x0000806E }, /* GL_UNPACK_IMAGE_HEIGHT */
- { 34747, 0x00000CF1 }, /* GL_UNPACK_LSB_FIRST */
- { 34767, 0x00000CF2 }, /* GL_UNPACK_ROW_LENGTH */
- { 34788, 0x0000806D }, /* GL_UNPACK_SKIP_IMAGES */
- { 34810, 0x00000CF4 }, /* GL_UNPACK_SKIP_PIXELS */
- { 34832, 0x00000CF3 }, /* GL_UNPACK_SKIP_ROWS */
- { 34852, 0x00000CF0 }, /* GL_UNPACK_SWAP_BYTES */
- { 34873, 0x00001401 }, /* GL_UNSIGNED_BYTE */
- { 34890, 0x00008362 }, /* GL_UNSIGNED_BYTE_2_3_3_REV */
- { 34917, 0x00008032 }, /* GL_UNSIGNED_BYTE_3_3_2 */
- { 34940, 0x00001405 }, /* GL_UNSIGNED_INT */
- { 34956, 0x00008036 }, /* GL_UNSIGNED_INT_10_10_10_2 */
- { 34983, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_NV */
- { 35007, 0x00008368 }, /* GL_UNSIGNED_INT_2_10_10_10_REV */
- { 35038, 0x00008035 }, /* GL_UNSIGNED_INT_8_8_8_8 */
- { 35062, 0x00008367 }, /* GL_UNSIGNED_INT_8_8_8_8_REV */
- { 35090, 0x00001403 }, /* GL_UNSIGNED_SHORT */
- { 35108, 0x00008366 }, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */
- { 35138, 0x00008033 }, /* GL_UNSIGNED_SHORT_4_4_4_4 */
- { 35164, 0x00008365 }, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */
- { 35194, 0x00008034 }, /* GL_UNSIGNED_SHORT_5_5_5_1 */
- { 35220, 0x00008363 }, /* GL_UNSIGNED_SHORT_5_6_5 */
- { 35244, 0x00008364 }, /* GL_UNSIGNED_SHORT_5_6_5_REV */
- { 35272, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_APPLE */
- { 35300, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_MESA */
- { 35327, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */
- { 35359, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_MESA */
- { 35390, 0x00008CA2 }, /* GL_UPPER_LEFT */
- { 35404, 0x00002A20 }, /* GL_V2F */
- { 35411, 0x00002A21 }, /* GL_V3F */
- { 35418, 0x00008B83 }, /* GL_VALIDATE_STATUS */
- { 35437, 0x00001F00 }, /* GL_VENDOR */
- { 35447, 0x00001F02 }, /* GL_VERSION */
- { 35458, 0x00008074 }, /* GL_VERTEX_ARRAY */
- { 35474, 0x000085B5 }, /* GL_VERTEX_ARRAY_BINDING_APPLE */
- { 35504, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING */
- { 35535, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING_ARB */
- { 35570, 0x0000808E }, /* GL_VERTEX_ARRAY_POINTER */
- { 35594, 0x0000807A }, /* GL_VERTEX_ARRAY_SIZE */
- { 35615, 0x0000807C }, /* GL_VERTEX_ARRAY_STRIDE */
- { 35638, 0x0000807B }, /* GL_VERTEX_ARRAY_TYPE */
- { 35659, 0x00008650 }, /* GL_VERTEX_ATTRIB_ARRAY0_NV */
- { 35686, 0x0000865A }, /* GL_VERTEX_ATTRIB_ARRAY10_NV */
- { 35714, 0x0000865B }, /* GL_VERTEX_ATTRIB_ARRAY11_NV */
- { 35742, 0x0000865C }, /* GL_VERTEX_ATTRIB_ARRAY12_NV */
- { 35770, 0x0000865D }, /* GL_VERTEX_ATTRIB_ARRAY13_NV */
- { 35798, 0x0000865E }, /* GL_VERTEX_ATTRIB_ARRAY14_NV */
- { 35826, 0x0000865F }, /* GL_VERTEX_ATTRIB_ARRAY15_NV */
- { 35854, 0x00008651 }, /* GL_VERTEX_ATTRIB_ARRAY1_NV */
- { 35881, 0x00008652 }, /* GL_VERTEX_ATTRIB_ARRAY2_NV */
- { 35908, 0x00008653 }, /* GL_VERTEX_ATTRIB_ARRAY3_NV */
- { 35935, 0x00008654 }, /* GL_VERTEX_ATTRIB_ARRAY4_NV */
- { 35962, 0x00008655 }, /* GL_VERTEX_ATTRIB_ARRAY5_NV */
- { 35989, 0x00008656 }, /* GL_VERTEX_ATTRIB_ARRAY6_NV */
- { 36016, 0x00008657 }, /* GL_VERTEX_ATTRIB_ARRAY7_NV */
- { 36043, 0x00008658 }, /* GL_VERTEX_ATTRIB_ARRAY8_NV */
- { 36070, 0x00008659 }, /* GL_VERTEX_ATTRIB_ARRAY9_NV */
- { 36097, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */
- { 36135, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB */
- { 36177, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */
- { 36208, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB */
- { 36243, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */
- { 36277, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB */
- { 36315, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */
- { 36346, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB */
- { 36381, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */
- { 36409, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB */
- { 36441, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */
- { 36471, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB */
- { 36505, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */
- { 36533, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB */
- { 36565, 0x000086A7 }, /* GL_VERTEX_BLEND_ARB */
- { 36585, 0x00008620 }, /* GL_VERTEX_PROGRAM_ARB */
- { 36607, 0x0000864A }, /* GL_VERTEX_PROGRAM_BINDING_NV */
- { 36636, 0x00008620 }, /* GL_VERTEX_PROGRAM_NV */
- { 36657, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE */
- { 36686, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_ARB */
- { 36719, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_NV */
- { 36751, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE */
- { 36778, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_ARB */
- { 36809, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_NV */
- { 36839, 0x00008B31 }, /* GL_VERTEX_SHADER */
- { 36856, 0x00008B31 }, /* GL_VERTEX_SHADER_ARB */
- { 36877, 0x00008621 }, /* GL_VERTEX_STATE_PROGRAM_NV */
- { 36904, 0x00000BA2 }, /* GL_VIEWPORT */
- { 36916, 0x00000800 }, /* GL_VIEWPORT_BIT */
- { 36932, 0x000086AD }, /* GL_WEIGHT_ARRAY_ARB */
- { 36952, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */
- { 36983, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB */
- { 37018, 0x000086AC }, /* GL_WEIGHT_ARRAY_POINTER_ARB */
- { 37046, 0x000086AB }, /* GL_WEIGHT_ARRAY_SIZE_ARB */
- { 37071, 0x000086AA }, /* GL_WEIGHT_ARRAY_STRIDE_ARB */
- { 37098, 0x000086A9 }, /* GL_WEIGHT_ARRAY_TYPE_ARB */
- { 37123, 0x000086A6 }, /* GL_WEIGHT_SUM_UNITY_ARB */
- { 37147, 0x000081D4 }, /* GL_WRAP_BORDER_SUN */
- { 37166, 0x000088B9 }, /* GL_WRITE_ONLY */
- { 37180, 0x000088B9 }, /* GL_WRITE_ONLY_ARB */
- { 37198, 0x00001506 }, /* GL_XOR */
- { 37205, 0x000085B9 }, /* GL_YCBCR_422_APPLE */
- { 37224, 0x00008757 }, /* GL_YCBCR_MESA */
- { 37238, 0x00000000 }, /* GL_ZERO */
- { 37246, 0x00000D16 }, /* GL_ZOOM_X */
- { 37256, 0x00000D17 }, /* GL_ZOOM_Y */
+ { 29561, 0x00008801 }, /* GL_STENCIL_BACK_FAIL_ATI */
+ { 29586, 0x00008800 }, /* GL_STENCIL_BACK_FUNC */
+ { 29607, 0x00008800 }, /* GL_STENCIL_BACK_FUNC_ATI */
+ { 29632, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */
+ { 29664, 0x00008802 }, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI */
+ { 29700, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */
+ { 29732, 0x00008803 }, /* GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI */
+ { 29768, 0x00008CA3 }, /* GL_STENCIL_BACK_REF */
+ { 29788, 0x00008CA4 }, /* GL_STENCIL_BACK_VALUE_MASK */
+ { 29815, 0x00008CA5 }, /* GL_STENCIL_BACK_WRITEMASK */
+ { 29841, 0x00000D57 }, /* GL_STENCIL_BITS */
+ { 29857, 0x00000400 }, /* GL_STENCIL_BUFFER_BIT */
+ { 29879, 0x00000B91 }, /* GL_STENCIL_CLEAR_VALUE */
+ { 29902, 0x00000B94 }, /* GL_STENCIL_FAIL */
+ { 29918, 0x00000B92 }, /* GL_STENCIL_FUNC */
+ { 29934, 0x00001901 }, /* GL_STENCIL_INDEX */
+ { 29951, 0x00008D49 }, /* GL_STENCIL_INDEX16_EXT */
+ { 29974, 0x00008D46 }, /* GL_STENCIL_INDEX1_EXT */
+ { 29996, 0x00008D47 }, /* GL_STENCIL_INDEX4_EXT */
+ { 30018, 0x00008D48 }, /* GL_STENCIL_INDEX8_EXT */
+ { 30040, 0x00008D45 }, /* GL_STENCIL_INDEX_EXT */
+ { 30061, 0x00000B95 }, /* GL_STENCIL_PASS_DEPTH_FAIL */
+ { 30088, 0x00000B96 }, /* GL_STENCIL_PASS_DEPTH_PASS */
+ { 30115, 0x00000B97 }, /* GL_STENCIL_REF */
+ { 30130, 0x00000B90 }, /* GL_STENCIL_TEST */
+ { 30146, 0x00008910 }, /* GL_STENCIL_TEST_TWO_SIDE_EXT */
+ { 30175, 0x00000B93 }, /* GL_STENCIL_VALUE_MASK */
+ { 30197, 0x00000B98 }, /* GL_STENCIL_WRITEMASK */
+ { 30218, 0x00000C33 }, /* GL_STEREO */
+ { 30228, 0x000088E2 }, /* GL_STREAM_COPY */
+ { 30243, 0x000088E2 }, /* GL_STREAM_COPY_ARB */
+ { 30262, 0x000088E0 }, /* GL_STREAM_DRAW */
+ { 30277, 0x000088E0 }, /* GL_STREAM_DRAW_ARB */
+ { 30296, 0x000088E1 }, /* GL_STREAM_READ */
+ { 30311, 0x000088E1 }, /* GL_STREAM_READ_ARB */
+ { 30330, 0x00000D50 }, /* GL_SUBPIXEL_BITS */
+ { 30347, 0x000084E7 }, /* GL_SUBTRACT */
+ { 30359, 0x000084E7 }, /* GL_SUBTRACT_ARB */
+ { 30375, 0x00002001 }, /* GL_T */
+ { 30380, 0x00002A2A }, /* GL_T2F_C3F_V3F */
+ { 30395, 0x00002A2C }, /* GL_T2F_C4F_N3F_V3F */
+ { 30414, 0x00002A29 }, /* GL_T2F_C4UB_V3F */
+ { 30430, 0x00002A2B }, /* GL_T2F_N3F_V3F */
+ { 30445, 0x00002A27 }, /* GL_T2F_V3F */
+ { 30456, 0x00002A2D }, /* GL_T4F_C4F_N3F_V4F */
+ { 30475, 0x00002A28 }, /* GL_T4F_V4F */
+ { 30486, 0x00008031 }, /* GL_TABLE_TOO_LARGE_EXT */
+ { 30509, 0x00001702 }, /* GL_TEXTURE */
+ { 30520, 0x000084C0 }, /* GL_TEXTURE0 */
+ { 30532, 0x000084C0 }, /* GL_TEXTURE0_ARB */
+ { 30548, 0x000084C1 }, /* GL_TEXTURE1 */
+ { 30560, 0x000084CA }, /* GL_TEXTURE10 */
+ { 30573, 0x000084CA }, /* GL_TEXTURE10_ARB */
+ { 30590, 0x000084CB }, /* GL_TEXTURE11 */
+ { 30603, 0x000084CB }, /* GL_TEXTURE11_ARB */
+ { 30620, 0x000084CC }, /* GL_TEXTURE12 */
+ { 30633, 0x000084CC }, /* GL_TEXTURE12_ARB */
+ { 30650, 0x000084CD }, /* GL_TEXTURE13 */
+ { 30663, 0x000084CD }, /* GL_TEXTURE13_ARB */
+ { 30680, 0x000084CE }, /* GL_TEXTURE14 */
+ { 30693, 0x000084CE }, /* GL_TEXTURE14_ARB */
+ { 30710, 0x000084CF }, /* GL_TEXTURE15 */
+ { 30723, 0x000084CF }, /* GL_TEXTURE15_ARB */
+ { 30740, 0x000084D0 }, /* GL_TEXTURE16 */
+ { 30753, 0x000084D0 }, /* GL_TEXTURE16_ARB */
+ { 30770, 0x000084D1 }, /* GL_TEXTURE17 */
+ { 30783, 0x000084D1 }, /* GL_TEXTURE17_ARB */
+ { 30800, 0x000084D2 }, /* GL_TEXTURE18 */
+ { 30813, 0x000084D2 }, /* GL_TEXTURE18_ARB */
+ { 30830, 0x000084D3 }, /* GL_TEXTURE19 */
+ { 30843, 0x000084D3 }, /* GL_TEXTURE19_ARB */
+ { 30860, 0x000084C1 }, /* GL_TEXTURE1_ARB */
+ { 30876, 0x000084C2 }, /* GL_TEXTURE2 */
+ { 30888, 0x000084D4 }, /* GL_TEXTURE20 */
+ { 30901, 0x000084D4 }, /* GL_TEXTURE20_ARB */
+ { 30918, 0x000084D5 }, /* GL_TEXTURE21 */
+ { 30931, 0x000084D5 }, /* GL_TEXTURE21_ARB */
+ { 30948, 0x000084D6 }, /* GL_TEXTURE22 */
+ { 30961, 0x000084D6 }, /* GL_TEXTURE22_ARB */
+ { 30978, 0x000084D7 }, /* GL_TEXTURE23 */
+ { 30991, 0x000084D7 }, /* GL_TEXTURE23_ARB */
+ { 31008, 0x000084D8 }, /* GL_TEXTURE24 */
+ { 31021, 0x000084D8 }, /* GL_TEXTURE24_ARB */
+ { 31038, 0x000084D9 }, /* GL_TEXTURE25 */
+ { 31051, 0x000084D9 }, /* GL_TEXTURE25_ARB */
+ { 31068, 0x000084DA }, /* GL_TEXTURE26 */
+ { 31081, 0x000084DA }, /* GL_TEXTURE26_ARB */
+ { 31098, 0x000084DB }, /* GL_TEXTURE27 */
+ { 31111, 0x000084DB }, /* GL_TEXTURE27_ARB */
+ { 31128, 0x000084DC }, /* GL_TEXTURE28 */
+ { 31141, 0x000084DC }, /* GL_TEXTURE28_ARB */
+ { 31158, 0x000084DD }, /* GL_TEXTURE29 */
+ { 31171, 0x000084DD }, /* GL_TEXTURE29_ARB */
+ { 31188, 0x000084C2 }, /* GL_TEXTURE2_ARB */
+ { 31204, 0x000084C3 }, /* GL_TEXTURE3 */
+ { 31216, 0x000084DE }, /* GL_TEXTURE30 */
+ { 31229, 0x000084DE }, /* GL_TEXTURE30_ARB */
+ { 31246, 0x000084DF }, /* GL_TEXTURE31 */
+ { 31259, 0x000084DF }, /* GL_TEXTURE31_ARB */
+ { 31276, 0x000084C3 }, /* GL_TEXTURE3_ARB */
+ { 31292, 0x000084C4 }, /* GL_TEXTURE4 */
+ { 31304, 0x000084C4 }, /* GL_TEXTURE4_ARB */
+ { 31320, 0x000084C5 }, /* GL_TEXTURE5 */
+ { 31332, 0x000084C5 }, /* GL_TEXTURE5_ARB */
+ { 31348, 0x000084C6 }, /* GL_TEXTURE6 */
+ { 31360, 0x000084C6 }, /* GL_TEXTURE6_ARB */
+ { 31376, 0x000084C7 }, /* GL_TEXTURE7 */
+ { 31388, 0x000084C7 }, /* GL_TEXTURE7_ARB */
+ { 31404, 0x000084C8 }, /* GL_TEXTURE8 */
+ { 31416, 0x000084C8 }, /* GL_TEXTURE8_ARB */
+ { 31432, 0x000084C9 }, /* GL_TEXTURE9 */
+ { 31444, 0x000084C9 }, /* GL_TEXTURE9_ARB */
+ { 31460, 0x00000DE0 }, /* GL_TEXTURE_1D */
+ { 31474, 0x00000DE1 }, /* GL_TEXTURE_2D */
+ { 31488, 0x0000806F }, /* GL_TEXTURE_3D */
+ { 31502, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE */
+ { 31524, 0x0000805F }, /* GL_TEXTURE_ALPHA_SIZE_EXT */
+ { 31550, 0x0000813C }, /* GL_TEXTURE_BASE_LEVEL */
+ { 31572, 0x00008068 }, /* GL_TEXTURE_BINDING_1D */
+ { 31594, 0x00008069 }, /* GL_TEXTURE_BINDING_2D */
+ { 31616, 0x0000806A }, /* GL_TEXTURE_BINDING_3D */
+ { 31638, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP */
+ { 31666, 0x00008514 }, /* GL_TEXTURE_BINDING_CUBE_MAP_ARB */
+ { 31698, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_ARB */
+ { 31731, 0x000084F6 }, /* GL_TEXTURE_BINDING_RECTANGLE_NV */
+ { 31763, 0x00040000 }, /* GL_TEXTURE_BIT */
+ { 31778, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE */
+ { 31799, 0x0000805E }, /* GL_TEXTURE_BLUE_SIZE_EXT */
+ { 31824, 0x00001005 }, /* GL_TEXTURE_BORDER */
+ { 31842, 0x00001004 }, /* GL_TEXTURE_BORDER_COLOR */
+ { 31866, 0x00008171 }, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */
+ { 31897, 0x00008176 }, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */
+ { 31927, 0x00008172 }, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */
+ { 31957, 0x00008175 }, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */
+ { 31992, 0x00008173 }, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */
+ { 32023, 0x00008174 }, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */
+ { 32061, 0x000080BC }, /* GL_TEXTURE_COLOR_TABLE_SGI */
+ { 32088, 0x000081EF }, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */
+ { 32120, 0x000080BF }, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */
+ { 32154, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC */
+ { 32178, 0x0000884D }, /* GL_TEXTURE_COMPARE_FUNC_ARB */
+ { 32206, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE */
+ { 32230, 0x0000884C }, /* GL_TEXTURE_COMPARE_MODE_ARB */
+ { 32258, 0x0000819B }, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */
+ { 32291, 0x0000819A }, /* GL_TEXTURE_COMPARE_SGIX */
+ { 32315, 0x00001003 }, /* GL_TEXTURE_COMPONENTS */
+ { 32337, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED */
+ { 32359, 0x000086A1 }, /* GL_TEXTURE_COMPRESSED_ARB */
+ { 32385, 0x000086A3 }, /* GL_TEXTURE_COMPRESSED_FORMATS_ARB */
+ { 32419, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */
+ { 32452, 0x000086A0 }, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB */
+ { 32489, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT */
+ { 32517, 0x000084EF }, /* GL_TEXTURE_COMPRESSION_HINT_ARB */
+ { 32549, 0x00008078 }, /* GL_TEXTURE_COORD_ARRAY */
+ { 32572, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */
+ { 32610, 0x0000889A }, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB */
+ { 32652, 0x00008092 }, /* GL_TEXTURE_COORD_ARRAY_POINTER */
+ { 32683, 0x00008088 }, /* GL_TEXTURE_COORD_ARRAY_SIZE */
+ { 32711, 0x0000808A }, /* GL_TEXTURE_COORD_ARRAY_STRIDE */
+ { 32741, 0x00008089 }, /* GL_TEXTURE_COORD_ARRAY_TYPE */
+ { 32769, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP */
+ { 32789, 0x00008513 }, /* GL_TEXTURE_CUBE_MAP_ARB */
+ { 32813, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */
+ { 32844, 0x00008516 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB */
+ { 32879, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */
+ { 32910, 0x00008518 }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB */
+ { 32945, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */
+ { 32976, 0x0000851A }, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB */
+ { 33011, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */
+ { 33042, 0x00008515 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB */
+ { 33077, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */
+ { 33108, 0x00008517 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB */
+ { 33143, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */
+ { 33174, 0x00008519 }, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB */
+ { 33209, 0x00008071 }, /* GL_TEXTURE_DEPTH */
+ { 33226, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE */
+ { 33248, 0x0000884A }, /* GL_TEXTURE_DEPTH_SIZE_ARB */
+ { 33274, 0x00002300 }, /* GL_TEXTURE_ENV */
+ { 33289, 0x00002201 }, /* GL_TEXTURE_ENV_COLOR */
+ { 33310, 0x00002200 }, /* GL_TEXTURE_ENV_MODE */
+ { 33330, 0x00008500 }, /* GL_TEXTURE_FILTER_CONTROL */
+ { 33356, 0x00002500 }, /* GL_TEXTURE_GEN_MODE */
+ { 33376, 0x00000C63 }, /* GL_TEXTURE_GEN_Q */
+ { 33393, 0x00000C62 }, /* GL_TEXTURE_GEN_R */
+ { 33410, 0x00000C60 }, /* GL_TEXTURE_GEN_S */
+ { 33427, 0x00000C61 }, /* GL_TEXTURE_GEN_T */
+ { 33444, 0x0000819D }, /* GL_TEXTURE_GEQUAL_R_SGIX */
+ { 33469, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE */
+ { 33491, 0x0000805D }, /* GL_TEXTURE_GREEN_SIZE_EXT */
+ { 33517, 0x00001001 }, /* GL_TEXTURE_HEIGHT */
+ { 33535, 0x000080ED }, /* GL_TEXTURE_INDEX_SIZE_EXT */
+ { 33561, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE */
+ { 33587, 0x00008061 }, /* GL_TEXTURE_INTENSITY_SIZE_EXT */
+ { 33617, 0x00001003 }, /* GL_TEXTURE_INTERNAL_FORMAT */
+ { 33644, 0x0000819C }, /* GL_TEXTURE_LEQUAL_R_SGIX */
+ { 33669, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS */
+ { 33689, 0x00008501 }, /* GL_TEXTURE_LOD_BIAS_EXT */
+ { 33713, 0x00008190 }, /* GL_TEXTURE_LOD_BIAS_R_SGIX */
+ { 33740, 0x0000818E }, /* GL_TEXTURE_LOD_BIAS_S_SGIX */
+ { 33767, 0x0000818F }, /* GL_TEXTURE_LOD_BIAS_T_SGIX */
+ { 33794, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE */
+ { 33820, 0x00008060 }, /* GL_TEXTURE_LUMINANCE_SIZE_EXT */
+ { 33850, 0x00002800 }, /* GL_TEXTURE_MAG_FILTER */
+ { 33872, 0x00000BA8 }, /* GL_TEXTURE_MATRIX */
+ { 33890, 0x000084FE }, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */
+ { 33920, 0x0000836B }, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */
+ { 33948, 0x00008369 }, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */
+ { 33976, 0x0000836A }, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */
+ { 34004, 0x0000813D }, /* GL_TEXTURE_MAX_LEVEL */
+ { 34025, 0x0000813B }, /* GL_TEXTURE_MAX_LOD */
+ { 34044, 0x00002801 }, /* GL_TEXTURE_MIN_FILTER */
+ { 34066, 0x0000813A }, /* GL_TEXTURE_MIN_LOD */
+ { 34085, 0x00008066 }, /* GL_TEXTURE_PRIORITY */
+ { 34105, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_ARB */
+ { 34130, 0x000084F5 }, /* GL_TEXTURE_RECTANGLE_NV */
+ { 34154, 0x0000805C }, /* GL_TEXTURE_RED_SIZE */
+ { 34174, 0x0000805C }, /* GL_TEXTURE_RED_SIZE_EXT */
+ { 34198, 0x00008067 }, /* GL_TEXTURE_RESIDENT */
+ { 34218, 0x00000BA5 }, /* GL_TEXTURE_STACK_DEPTH */
+ { 34241, 0x00008065 }, /* GL_TEXTURE_TOO_LARGE_EXT */
+ { 34266, 0x0000888F }, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */
+ { 34300, 0x00001000 }, /* GL_TEXTURE_WIDTH */
+ { 34317, 0x00008072 }, /* GL_TEXTURE_WRAP_R */
+ { 34335, 0x00002802 }, /* GL_TEXTURE_WRAP_S */
+ { 34353, 0x00002803 }, /* GL_TEXTURE_WRAP_T */
+ { 34371, 0x000088BF }, /* GL_TIME_ELAPSED_EXT */
+ { 34391, 0x00008648 }, /* GL_TRACK_MATRIX_NV */
+ { 34410, 0x00008649 }, /* GL_TRACK_MATRIX_TRANSFORM_NV */
+ { 34439, 0x00001000 }, /* GL_TRANSFORM_BIT */
+ { 34456, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX */
+ { 34482, 0x000084E6 }, /* GL_TRANSPOSE_COLOR_MATRIX_ARB */
+ { 34512, 0x000088B7 }, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */
+ { 34544, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX */
+ { 34574, 0x000084E3 }, /* GL_TRANSPOSE_MODELVIEW_MATRIX_ARB */
+ { 34608, 0x0000862C }, /* GL_TRANSPOSE_NV */
+ { 34624, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX */
+ { 34655, 0x000084E4 }, /* GL_TRANSPOSE_PROJECTION_MATRIX_ARB */
+ { 34690, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX */
+ { 34718, 0x000084E5 }, /* GL_TRANSPOSE_TEXTURE_MATRIX_ARB */
+ { 34750, 0x00000004 }, /* GL_TRIANGLES */
+ { 34763, 0x00000006 }, /* GL_TRIANGLE_FAN */
+ { 34779, 0x00008615 }, /* GL_TRIANGLE_MESH_SUN */
+ { 34800, 0x00000005 }, /* GL_TRIANGLE_STRIP */
+ { 34818, 0x00000001 }, /* GL_TRUE */
+ { 34826, 0x00000CF5 }, /* GL_UNPACK_ALIGNMENT */
+ { 34846, 0x0000806E }, /* GL_UNPACK_IMAGE_HEIGHT */
+ { 34869, 0x00000CF1 }, /* GL_UNPACK_LSB_FIRST */
+ { 34889, 0x00000CF2 }, /* GL_UNPACK_ROW_LENGTH */
+ { 34910, 0x0000806D }, /* GL_UNPACK_SKIP_IMAGES */
+ { 34932, 0x00000CF4 }, /* GL_UNPACK_SKIP_PIXELS */
+ { 34954, 0x00000CF3 }, /* GL_UNPACK_SKIP_ROWS */
+ { 34974, 0x00000CF0 }, /* GL_UNPACK_SWAP_BYTES */
+ { 34995, 0x00001401 }, /* GL_UNSIGNED_BYTE */
+ { 35012, 0x00008362 }, /* GL_UNSIGNED_BYTE_2_3_3_REV */
+ { 35039, 0x00008032 }, /* GL_UNSIGNED_BYTE_3_3_2 */
+ { 35062, 0x00001405 }, /* GL_UNSIGNED_INT */
+ { 35078, 0x00008036 }, /* GL_UNSIGNED_INT_10_10_10_2 */
+ { 35105, 0x000084FA }, /* GL_UNSIGNED_INT_24_8_NV */
+ { 35129, 0x00008368 }, /* GL_UNSIGNED_INT_2_10_10_10_REV */
+ { 35160, 0x00008035 }, /* GL_UNSIGNED_INT_8_8_8_8 */
+ { 35184, 0x00008367 }, /* GL_UNSIGNED_INT_8_8_8_8_REV */
+ { 35212, 0x00001403 }, /* GL_UNSIGNED_SHORT */
+ { 35230, 0x00008366 }, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */
+ { 35260, 0x00008033 }, /* GL_UNSIGNED_SHORT_4_4_4_4 */
+ { 35286, 0x00008365 }, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */
+ { 35316, 0x00008034 }, /* GL_UNSIGNED_SHORT_5_5_5_1 */
+ { 35342, 0x00008363 }, /* GL_UNSIGNED_SHORT_5_6_5 */
+ { 35366, 0x00008364 }, /* GL_UNSIGNED_SHORT_5_6_5_REV */
+ { 35394, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_APPLE */
+ { 35422, 0x000085BA }, /* GL_UNSIGNED_SHORT_8_8_MESA */
+ { 35449, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */
+ { 35481, 0x000085BB }, /* GL_UNSIGNED_SHORT_8_8_REV_MESA */
+ { 35512, 0x00008CA2 }, /* GL_UPPER_LEFT */
+ { 35526, 0x00002A20 }, /* GL_V2F */
+ { 35533, 0x00002A21 }, /* GL_V3F */
+ { 35540, 0x00008B83 }, /* GL_VALIDATE_STATUS */
+ { 35559, 0x00001F00 }, /* GL_VENDOR */
+ { 35569, 0x00001F02 }, /* GL_VERSION */
+ { 35580, 0x00008074 }, /* GL_VERTEX_ARRAY */
+ { 35596, 0x000085B5 }, /* GL_VERTEX_ARRAY_BINDING_APPLE */
+ { 35626, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING */
+ { 35657, 0x00008896 }, /* GL_VERTEX_ARRAY_BUFFER_BINDING_ARB */
+ { 35692, 0x0000808E }, /* GL_VERTEX_ARRAY_POINTER */
+ { 35716, 0x0000807A }, /* GL_VERTEX_ARRAY_SIZE */
+ { 35737, 0x0000807C }, /* GL_VERTEX_ARRAY_STRIDE */
+ { 35760, 0x0000807B }, /* GL_VERTEX_ARRAY_TYPE */
+ { 35781, 0x00008650 }, /* GL_VERTEX_ATTRIB_ARRAY0_NV */
+ { 35808, 0x0000865A }, /* GL_VERTEX_ATTRIB_ARRAY10_NV */
+ { 35836, 0x0000865B }, /* GL_VERTEX_ATTRIB_ARRAY11_NV */
+ { 35864, 0x0000865C }, /* GL_VERTEX_ATTRIB_ARRAY12_NV */
+ { 35892, 0x0000865D }, /* GL_VERTEX_ATTRIB_ARRAY13_NV */
+ { 35920, 0x0000865E }, /* GL_VERTEX_ATTRIB_ARRAY14_NV */
+ { 35948, 0x0000865F }, /* GL_VERTEX_ATTRIB_ARRAY15_NV */
+ { 35976, 0x00008651 }, /* GL_VERTEX_ATTRIB_ARRAY1_NV */
+ { 36003, 0x00008652 }, /* GL_VERTEX_ATTRIB_ARRAY2_NV */
+ { 36030, 0x00008653 }, /* GL_VERTEX_ATTRIB_ARRAY3_NV */
+ { 36057, 0x00008654 }, /* GL_VERTEX_ATTRIB_ARRAY4_NV */
+ { 36084, 0x00008655 }, /* GL_VERTEX_ATTRIB_ARRAY5_NV */
+ { 36111, 0x00008656 }, /* GL_VERTEX_ATTRIB_ARRAY6_NV */
+ { 36138, 0x00008657 }, /* GL_VERTEX_ATTRIB_ARRAY7_NV */
+ { 36165, 0x00008658 }, /* GL_VERTEX_ATTRIB_ARRAY8_NV */
+ { 36192, 0x00008659 }, /* GL_VERTEX_ATTRIB_ARRAY9_NV */
+ { 36219, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */
+ { 36257, 0x0000889F }, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB */
+ { 36299, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */
+ { 36330, 0x00008622 }, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB */
+ { 36365, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */
+ { 36399, 0x0000886A }, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB */
+ { 36437, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */
+ { 36468, 0x00008645 }, /* GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB */
+ { 36503, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */
+ { 36531, 0x00008623 }, /* GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB */
+ { 36563, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */
+ { 36593, 0x00008624 }, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB */
+ { 36627, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */
+ { 36655, 0x00008625 }, /* GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB */
+ { 36687, 0x000086A7 }, /* GL_VERTEX_BLEND_ARB */
+ { 36707, 0x00008620 }, /* GL_VERTEX_PROGRAM_ARB */
+ { 36729, 0x0000864A }, /* GL_VERTEX_PROGRAM_BINDING_NV */
+ { 36758, 0x00008620 }, /* GL_VERTEX_PROGRAM_NV */
+ { 36779, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE */
+ { 36808, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_ARB */
+ { 36841, 0x00008642 }, /* GL_VERTEX_PROGRAM_POINT_SIZE_NV */
+ { 36873, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE */
+ { 36900, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_ARB */
+ { 36931, 0x00008643 }, /* GL_VERTEX_PROGRAM_TWO_SIDE_NV */
+ { 36961, 0x00008B31 }, /* GL_VERTEX_SHADER */
+ { 36978, 0x00008B31 }, /* GL_VERTEX_SHADER_ARB */
+ { 36999, 0x00008621 }, /* GL_VERTEX_STATE_PROGRAM_NV */
+ { 37026, 0x00000BA2 }, /* GL_VIEWPORT */
+ { 37038, 0x00000800 }, /* GL_VIEWPORT_BIT */
+ { 37054, 0x000086AD }, /* GL_WEIGHT_ARRAY_ARB */
+ { 37074, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */
+ { 37105, 0x0000889E }, /* GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB */
+ { 37140, 0x000086AC }, /* GL_WEIGHT_ARRAY_POINTER_ARB */
+ { 37168, 0x000086AB }, /* GL_WEIGHT_ARRAY_SIZE_ARB */
+ { 37193, 0x000086AA }, /* GL_WEIGHT_ARRAY_STRIDE_ARB */
+ { 37220, 0x000086A9 }, /* GL_WEIGHT_ARRAY_TYPE_ARB */
+ { 37245, 0x000086A6 }, /* GL_WEIGHT_SUM_UNITY_ARB */
+ { 37269, 0x000081D4 }, /* GL_WRAP_BORDER_SUN */
+ { 37288, 0x000088B9 }, /* GL_WRITE_ONLY */
+ { 37302, 0x000088B9 }, /* GL_WRITE_ONLY_ARB */
+ { 37320, 0x00001506 }, /* GL_XOR */
+ { 37327, 0x000085B9 }, /* GL_YCBCR_422_APPLE */
+ { 37346, 0x00008757 }, /* GL_YCBCR_MESA */
+ { 37360, 0x00000000 }, /* GL_ZERO */
+ { 37368, 0x00000D16 }, /* GL_ZOOM_X */
+ { 37378, 0x00000D17 }, /* GL_ZOOM_Y */
};
static const unsigned reduced_enums[1277] =
@@ -3521,9 +3529,9 @@ static const unsigned reduced_enums[1277] =
643, /* GL_LINES */
645, /* GL_LINE_LOOP */
652, /* GL_LINE_STRIP */
- 1628, /* GL_TRIANGLES */
- 1631, /* GL_TRIANGLE_STRIP */
- 1629, /* GL_TRIANGLE_FAN */
+ 1632, /* GL_TRIANGLES */
+ 1635, /* GL_TRIANGLE_STRIP */
+ 1633, /* GL_TRIANGLE_FAN */
1206, /* GL_QUADS */
1208, /* GL_QUAD_STRIP */
1096, /* GL_POLYGON */
@@ -3646,24 +3654,24 @@ static const unsigned reduced_enums[1277] =
320, /* GL_DEPTH_CLEAR_VALUE */
331, /* GL_DEPTH_FUNC */
12, /* GL_ACCUM_CLEAR_VALUE */
- 1413, /* GL_STENCIL_TEST */
- 1401, /* GL_STENCIL_CLEAR_VALUE */
- 1403, /* GL_STENCIL_FUNC */
- 1415, /* GL_STENCIL_VALUE_MASK */
- 1402, /* GL_STENCIL_FAIL */
- 1410, /* GL_STENCIL_PASS_DEPTH_FAIL */
- 1411, /* GL_STENCIL_PASS_DEPTH_PASS */
- 1412, /* GL_STENCIL_REF */
- 1416, /* GL_STENCIL_WRITEMASK */
+ 1417, /* GL_STENCIL_TEST */
+ 1405, /* GL_STENCIL_CLEAR_VALUE */
+ 1407, /* GL_STENCIL_FUNC */
+ 1419, /* GL_STENCIL_VALUE_MASK */
+ 1406, /* GL_STENCIL_FAIL */
+ 1414, /* GL_STENCIL_PASS_DEPTH_FAIL */
+ 1415, /* GL_STENCIL_PASS_DEPTH_PASS */
+ 1416, /* GL_STENCIL_REF */
+ 1420, /* GL_STENCIL_WRITEMASK */
789, /* GL_MATRIX_MODE */
955, /* GL_NORMALIZE */
- 1718, /* GL_VIEWPORT */
+ 1722, /* GL_VIEWPORT */
929, /* GL_MODELVIEW_STACK_DEPTH */
1188, /* GL_PROJECTION_STACK_DEPTH */
- 1607, /* GL_TEXTURE_STACK_DEPTH */
+ 1611, /* GL_TEXTURE_STACK_DEPTH */
927, /* GL_MODELVIEW_MATRIX */
1187, /* GL_PROJECTION_MATRIX */
- 1592, /* GL_TEXTURE_MATRIX */
+ 1596, /* GL_TEXTURE_MATRIX */
61, /* GL_ATTRIB_STACK_DEPTH */
127, /* GL_CLIENT_ATTRIB_STACK_DEPTH */
43, /* GL_ALPHA_TEST */
@@ -3688,17 +3696,17 @@ static const unsigned reduced_enums[1277] =
585, /* GL_INDEX_MODE */
1282, /* GL_RGBA_MODE */
352, /* GL_DOUBLEBUFFER */
- 1417, /* GL_STEREO */
+ 1421, /* GL_STEREO */
1241, /* GL_RENDER_MODE */
1040, /* GL_PERSPECTIVE_CORRECTION_HINT */
1089, /* GL_POINT_SMOOTH_HINT */
648, /* GL_LINE_SMOOTH_HINT */
1106, /* GL_POLYGON_SMOOTH_HINT */
477, /* GL_FOG_HINT */
- 1573, /* GL_TEXTURE_GEN_S */
- 1574, /* GL_TEXTURE_GEN_T */
- 1572, /* GL_TEXTURE_GEN_R */
- 1571, /* GL_TEXTURE_GEN_Q */
+ 1577, /* GL_TEXTURE_GEN_S */
+ 1578, /* GL_TEXTURE_GEN_T */
+ 1576, /* GL_TEXTURE_GEN_R */
+ 1575, /* GL_TEXTURE_GEN_Q */
1053, /* GL_PIXEL_MAP_I_TO_I */
1059, /* GL_PIXEL_MAP_S_TO_S */
1055, /* GL_PIXEL_MAP_I_TO_R */
@@ -3719,12 +3727,12 @@ static const unsigned reduced_enums[1277] =
1046, /* GL_PIXEL_MAP_G_TO_G_SIZE */
1044, /* GL_PIXEL_MAP_B_TO_B_SIZE */
1042, /* GL_PIXEL_MAP_A_TO_A_SIZE */
- 1640, /* GL_UNPACK_SWAP_BYTES */
- 1635, /* GL_UNPACK_LSB_FIRST */
- 1636, /* GL_UNPACK_ROW_LENGTH */
- 1639, /* GL_UNPACK_SKIP_ROWS */
- 1638, /* GL_UNPACK_SKIP_PIXELS */
- 1633, /* GL_UNPACK_ALIGNMENT */
+ 1644, /* GL_UNPACK_SWAP_BYTES */
+ 1639, /* GL_UNPACK_LSB_FIRST */
+ 1640, /* GL_UNPACK_ROW_LENGTH */
+ 1643, /* GL_UNPACK_SKIP_ROWS */
+ 1642, /* GL_UNPACK_SKIP_PIXELS */
+ 1637, /* GL_UNPACK_ALIGNMENT */
1028, /* GL_PACK_SWAP_BYTES */
1023, /* GL_PACK_LSB_FIRST */
1024, /* GL_PACK_ROW_LENGTH */
@@ -3737,8 +3745,8 @@ static const unsigned reduced_enums[1277] =
586, /* GL_INDEX_OFFSET */
1230, /* GL_RED_SCALE */
1228, /* GL_RED_BIAS */
- 1735, /* GL_ZOOM_X */
- 1736, /* GL_ZOOM_Y */
+ 1739, /* GL_ZOOM_X */
+ 1740, /* GL_ZOOM_Y */
549, /* GL_GREEN_SCALE */
547, /* GL_GREEN_BIAS */
92, /* GL_BLUE_SCALE */
@@ -3759,14 +3767,14 @@ static const unsigned reduced_enums[1277] =
863, /* GL_MAX_TEXTURE_STACK_DEPTH */
877, /* GL_MAX_VIEWPORT_DIMS */
794, /* GL_MAX_CLIENT_ATTRIB_STACK_DEPTH */
- 1424, /* GL_SUBPIXEL_BITS */
+ 1428, /* GL_SUBPIXEL_BITS */
582, /* GL_INDEX_BITS */
1229, /* GL_RED_BITS */
548, /* GL_GREEN_BITS */
91, /* GL_BLUE_BITS */
41, /* GL_ALPHA_BITS */
315, /* GL_DEPTH_BITS */
- 1399, /* GL_STENCIL_BITS */
+ 1403, /* GL_STENCIL_BITS */
14, /* GL_ACCUM_RED_BITS */
13, /* GL_ACCUM_GREEN_BITS */
10, /* GL_ACCUM_BLUE_BITS */
@@ -3795,18 +3803,18 @@ static const unsigned reduced_enums[1277] =
690, /* GL_MAP1_GRID_SEGMENTS */
716, /* GL_MAP2_GRID_DOMAIN */
717, /* GL_MAP2_GRID_SEGMENTS */
- 1501, /* GL_TEXTURE_1D */
- 1502, /* GL_TEXTURE_2D */
+ 1505, /* GL_TEXTURE_1D */
+ 1506, /* GL_TEXTURE_2D */
438, /* GL_FEEDBACK_BUFFER_POINTER */
439, /* GL_FEEDBACK_BUFFER_SIZE */
440, /* GL_FEEDBACK_BUFFER_TYPE */
1325, /* GL_SELECTION_BUFFER_POINTER */
1326, /* GL_SELECTION_BUFFER_SIZE */
- 1610, /* GL_TEXTURE_WIDTH */
- 1578, /* GL_TEXTURE_HEIGHT */
- 1534, /* GL_TEXTURE_COMPONENTS */
- 1518, /* GL_TEXTURE_BORDER_COLOR */
- 1517, /* GL_TEXTURE_BORDER */
+ 1614, /* GL_TEXTURE_WIDTH */
+ 1582, /* GL_TEXTURE_HEIGHT */
+ 1538, /* GL_TEXTURE_COMPONENTS */
+ 1522, /* GL_TEXTURE_BORDER_COLOR */
+ 1521, /* GL_TEXTURE_BORDER */
344, /* GL_DONT_CARE */
436, /* GL_FASTEST */
951, /* GL_NICEST */
@@ -3823,11 +3831,11 @@ static const unsigned reduced_enums[1277] =
218, /* GL_COMPILE */
219, /* GL_COMPILE_AND_EXECUTE */
111, /* GL_BYTE */
- 1641, /* GL_UNSIGNED_BYTE */
+ 1645, /* GL_UNSIGNED_BYTE */
1339, /* GL_SHORT */
- 1650, /* GL_UNSIGNED_SHORT */
+ 1654, /* GL_UNSIGNED_SHORT */
590, /* GL_INT */
- 1644, /* GL_UNSIGNED_INT */
+ 1648, /* GL_UNSIGNED_INT */
443, /* GL_FLOAT */
1, /* GL_2_BYTES */
5, /* GL_3_BYTES */
@@ -3839,7 +3847,7 @@ static const unsigned reduced_enums[1277] =
268, /* GL_COPY */
50, /* GL_AND_INVERTED */
953, /* GL_NOOP */
- 1731, /* GL_XOR */
+ 1735, /* GL_XOR */
1015, /* GL_OR */
954, /* GL_NOR */
426, /* GL_EQUIV */
@@ -3855,12 +3863,12 @@ static const unsigned reduced_enums[1277] =
165, /* GL_COLOR_INDEXES */
894, /* GL_MODELVIEW */
1186, /* GL_PROJECTION */
- 1436, /* GL_TEXTURE */
+ 1440, /* GL_TEXTURE */
138, /* GL_COLOR */
312, /* GL_DEPTH */
1390, /* GL_STENCIL */
164, /* GL_COLOR_INDEX */
- 1404, /* GL_STENCIL_INDEX */
+ 1408, /* GL_STENCIL_INDEX */
321, /* GL_DEPTH_COMPONENT */
1225, /* GL_RED */
546, /* GL_GREEN */
@@ -3883,23 +3891,23 @@ static const unsigned reduced_enums[1277] =
1243, /* GL_REPLACE */
573, /* GL_INCR */
308, /* GL_DECR */
- 1665, /* GL_VENDOR */
+ 1669, /* GL_VENDOR */
1240, /* GL_RENDERER */
- 1666, /* GL_VERSION */
+ 1670, /* GL_VERSION */
430, /* GL_EXTENSIONS */
1289, /* GL_S */
- 1427, /* GL_T */
+ 1431, /* GL_T */
1215, /* GL_R */
1204, /* GL_Q */
930, /* GL_MODULATE */
307, /* GL_DECAL */
- 1568, /* GL_TEXTURE_ENV_MODE */
- 1567, /* GL_TEXTURE_ENV_COLOR */
- 1566, /* GL_TEXTURE_ENV */
+ 1572, /* GL_TEXTURE_ENV_MODE */
+ 1571, /* GL_TEXTURE_ENV_COLOR */
+ 1570, /* GL_TEXTURE_ENV */
431, /* GL_EYE_LINEAR */
977, /* GL_OBJECT_LINEAR */
1369, /* GL_SPHERE_MAP */
- 1570, /* GL_TEXTURE_GEN_MODE */
+ 1574, /* GL_TEXTURE_GEN_MODE */
979, /* GL_OBJECT_PLANE */
432, /* GL_EYE_PLANE */
945, /* GL_NEAREST */
@@ -3908,30 +3916,30 @@ static const unsigned reduced_enums[1277] =
642, /* GL_LINEAR_MIPMAP_NEAREST */
948, /* GL_NEAREST_MIPMAP_LINEAR */
641, /* GL_LINEAR_MIPMAP_LINEAR */
- 1591, /* GL_TEXTURE_MAG_FILTER */
- 1599, /* GL_TEXTURE_MIN_FILTER */
- 1612, /* GL_TEXTURE_WRAP_S */
- 1613, /* GL_TEXTURE_WRAP_T */
+ 1595, /* GL_TEXTURE_MAG_FILTER */
+ 1603, /* GL_TEXTURE_MIN_FILTER */
+ 1616, /* GL_TEXTURE_WRAP_S */
+ 1617, /* GL_TEXTURE_WRAP_T */
117, /* GL_CLAMP */
1242, /* GL_REPEAT */
1104, /* GL_POLYGON_OFFSET_UNITS */
1103, /* GL_POLYGON_OFFSET_POINT */
1102, /* GL_POLYGON_OFFSET_LINE */
1216, /* GL_R3_G3_B2 */
- 1662, /* GL_V2F */
- 1663, /* GL_V3F */
+ 1666, /* GL_V2F */
+ 1667, /* GL_V3F */
114, /* GL_C4UB_V2F */
115, /* GL_C4UB_V3F */
112, /* GL_C3F_V3F */
942, /* GL_N3F_V3F */
113, /* GL_C4F_N3F_V3F */
- 1432, /* GL_T2F_V3F */
- 1434, /* GL_T4F_V4F */
- 1430, /* GL_T2F_C4UB_V3F */
- 1428, /* GL_T2F_C3F_V3F */
- 1431, /* GL_T2F_N3F_V3F */
- 1429, /* GL_T2F_C4F_N3F_V3F */
- 1433, /* GL_T4F_C4F_N3F_V4F */
+ 1436, /* GL_T2F_V3F */
+ 1438, /* GL_T4F_V4F */
+ 1434, /* GL_T2F_C4UB_V3F */
+ 1432, /* GL_T2F_C3F_V3F */
+ 1435, /* GL_T2F_N3F_V3F */
+ 1433, /* GL_T2F_C4F_N3F_V3F */
+ 1437, /* GL_T4F_C4F_N3F_V4F */
130, /* GL_CLIP_PLANE0 */
131, /* GL_CLIP_PLANE1 */
132, /* GL_CLIP_PLANE2 */
@@ -3991,12 +3999,12 @@ static const unsigned reduced_enums[1277] =
879, /* GL_MINMAX */
881, /* GL_MINMAX_FORMAT */
883, /* GL_MINMAX_SINK */
- 1435, /* GL_TABLE_TOO_LARGE_EXT */
- 1643, /* GL_UNSIGNED_BYTE_3_3_2 */
- 1652, /* GL_UNSIGNED_SHORT_4_4_4_4 */
- 1654, /* GL_UNSIGNED_SHORT_5_5_5_1 */
- 1648, /* GL_UNSIGNED_INT_8_8_8_8 */
- 1645, /* GL_UNSIGNED_INT_10_10_10_2 */
+ 1439, /* GL_TABLE_TOO_LARGE_EXT */
+ 1647, /* GL_UNSIGNED_BYTE_3_3_2 */
+ 1656, /* GL_UNSIGNED_SHORT_4_4_4_4 */
+ 1658, /* GL_UNSIGNED_SHORT_5_5_5_1 */
+ 1652, /* GL_UNSIGNED_INT_8_8_8_8 */
+ 1649, /* GL_UNSIGNED_INT_10_10_10_2 */
1101, /* GL_POLYGON_OFFSET_FILL */
1100, /* GL_POLYGON_OFFSET_FACTOR */
1099, /* GL_POLYGON_OFFSET_BIAS */
@@ -4034,39 +4042,39 @@ static const unsigned reduced_enums[1277] =
1251, /* GL_RGB10_A2 */
1269, /* GL_RGBA12 */
1271, /* GL_RGBA16 */
- 1604, /* GL_TEXTURE_RED_SIZE */
- 1576, /* GL_TEXTURE_GREEN_SIZE */
- 1515, /* GL_TEXTURE_BLUE_SIZE */
- 1504, /* GL_TEXTURE_ALPHA_SIZE */
- 1589, /* GL_TEXTURE_LUMINANCE_SIZE */
- 1580, /* GL_TEXTURE_INTENSITY_SIZE */
+ 1608, /* GL_TEXTURE_RED_SIZE */
+ 1580, /* GL_TEXTURE_GREEN_SIZE */
+ 1519, /* GL_TEXTURE_BLUE_SIZE */
+ 1508, /* GL_TEXTURE_ALPHA_SIZE */
+ 1593, /* GL_TEXTURE_LUMINANCE_SIZE */
+ 1584, /* GL_TEXTURE_INTENSITY_SIZE */
1244, /* GL_REPLACE_EXT */
1194, /* GL_PROXY_TEXTURE_1D */
1196, /* GL_PROXY_TEXTURE_2D */
- 1608, /* GL_TEXTURE_TOO_LARGE_EXT */
- 1601, /* GL_TEXTURE_PRIORITY */
- 1606, /* GL_TEXTURE_RESIDENT */
- 1507, /* GL_TEXTURE_BINDING_1D */
- 1508, /* GL_TEXTURE_BINDING_2D */
- 1509, /* GL_TEXTURE_BINDING_3D */
+ 1612, /* GL_TEXTURE_TOO_LARGE_EXT */
+ 1605, /* GL_TEXTURE_PRIORITY */
+ 1610, /* GL_TEXTURE_RESIDENT */
+ 1511, /* GL_TEXTURE_BINDING_1D */
+ 1512, /* GL_TEXTURE_BINDING_2D */
+ 1513, /* GL_TEXTURE_BINDING_3D */
1025, /* GL_PACK_SKIP_IMAGES */
1021, /* GL_PACK_IMAGE_HEIGHT */
- 1637, /* GL_UNPACK_SKIP_IMAGES */
- 1634, /* GL_UNPACK_IMAGE_HEIGHT */
- 1503, /* GL_TEXTURE_3D */
+ 1641, /* GL_UNPACK_SKIP_IMAGES */
+ 1638, /* GL_UNPACK_IMAGE_HEIGHT */
+ 1507, /* GL_TEXTURE_3D */
1198, /* GL_PROXY_TEXTURE_3D */
- 1563, /* GL_TEXTURE_DEPTH */
- 1611, /* GL_TEXTURE_WRAP_R */
+ 1567, /* GL_TEXTURE_DEPTH */
+ 1615, /* GL_TEXTURE_WRAP_R */
792, /* GL_MAX_3D_TEXTURE_SIZE */
- 1667, /* GL_VERTEX_ARRAY */
+ 1671, /* GL_VERTEX_ARRAY */
956, /* GL_NORMAL_ARRAY */
139, /* GL_COLOR_ARRAY */
576, /* GL_INDEX_ARRAY */
- 1542, /* GL_TEXTURE_COORD_ARRAY */
+ 1546, /* GL_TEXTURE_COORD_ARRAY */
414, /* GL_EDGE_FLAG_ARRAY */
- 1672, /* GL_VERTEX_ARRAY_SIZE */
- 1674, /* GL_VERTEX_ARRAY_TYPE */
- 1673, /* GL_VERTEX_ARRAY_STRIDE */
+ 1676, /* GL_VERTEX_ARRAY_SIZE */
+ 1678, /* GL_VERTEX_ARRAY_TYPE */
+ 1677, /* GL_VERTEX_ARRAY_STRIDE */
961, /* GL_NORMAL_ARRAY_TYPE */
960, /* GL_NORMAL_ARRAY_STRIDE */
143, /* GL_COLOR_ARRAY_SIZE */
@@ -4074,15 +4082,15 @@ static const unsigned reduced_enums[1277] =
144, /* GL_COLOR_ARRAY_STRIDE */
581, /* GL_INDEX_ARRAY_TYPE */
580, /* GL_INDEX_ARRAY_STRIDE */
- 1546, /* GL_TEXTURE_COORD_ARRAY_SIZE */
- 1548, /* GL_TEXTURE_COORD_ARRAY_TYPE */
- 1547, /* GL_TEXTURE_COORD_ARRAY_STRIDE */
+ 1550, /* GL_TEXTURE_COORD_ARRAY_SIZE */
+ 1552, /* GL_TEXTURE_COORD_ARRAY_TYPE */
+ 1551, /* GL_TEXTURE_COORD_ARRAY_STRIDE */
418, /* GL_EDGE_FLAG_ARRAY_STRIDE */
- 1671, /* GL_VERTEX_ARRAY_POINTER */
+ 1675, /* GL_VERTEX_ARRAY_POINTER */
959, /* GL_NORMAL_ARRAY_POINTER */
142, /* GL_COLOR_ARRAY_POINTER */
579, /* GL_INDEX_ARRAY_POINTER */
- 1545, /* GL_TEXTURE_COORD_ARRAY_POINTER */
+ 1549, /* GL_TEXTURE_COORD_ARRAY_POINTER */
417, /* GL_EDGE_FLAG_ARRAY_POINTER */
935, /* GL_MULTISAMPLE */
1301, /* GL_SAMPLE_ALPHA_TO_COVERAGE */
@@ -4103,9 +4111,9 @@ static const unsigned reduced_enums[1277] =
1120, /* GL_POST_COLOR_MATRIX_GREEN_BIAS */
1115, /* GL_POST_COLOR_MATRIX_BLUE_BIAS */
1111, /* GL_POST_COLOR_MATRIX_ALPHA_BIAS */
- 1525, /* GL_TEXTURE_COLOR_TABLE_SGI */
+ 1529, /* GL_TEXTURE_COLOR_TABLE_SGI */
1199, /* GL_PROXY_TEXTURE_COLOR_TABLE_SGI */
- 1527, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */
+ 1531, /* GL_TEXTURE_COMPARE_FAIL_VALUE_ARB */
80, /* GL_BLEND_DST_RGB */
88, /* GL_BLEND_SRC_RGB */
79, /* GL_BLEND_DST_ALPHA */
@@ -4130,7 +4138,7 @@ static const unsigned reduced_enums[1277] =
72, /* GL_BGRA */
813, /* GL_MAX_ELEMENTS_VERTICES */
812, /* GL_MAX_ELEMENTS_INDICES */
- 1579, /* GL_TEXTURE_INDEX_SIZE_EXT */
+ 1583, /* GL_TEXTURE_INDEX_SIZE_EXT */
136, /* GL_CLIP_VOLUME_CLIPPING_HINT_EXT */
1083, /* GL_POINT_SIZE_MIN */
1079, /* GL_POINT_SIZE_MAX */
@@ -4138,10 +4146,10 @@ static const unsigned reduced_enums[1277] =
1069, /* GL_POINT_DISTANCE_ATTENUATION */
118, /* GL_CLAMP_TO_BORDER */
121, /* GL_CLAMP_TO_EDGE */
- 1600, /* GL_TEXTURE_MIN_LOD */
- 1598, /* GL_TEXTURE_MAX_LOD */
- 1506, /* GL_TEXTURE_BASE_LEVEL */
- 1597, /* GL_TEXTURE_MAX_LEVEL */
+ 1604, /* GL_TEXTURE_MIN_LOD */
+ 1602, /* GL_TEXTURE_MAX_LOD */
+ 1510, /* GL_TEXTURE_BASE_LEVEL */
+ 1601, /* GL_TEXTURE_MAX_LEVEL */
570, /* GL_IGNORE_BORDER_HP */
245, /* GL_CONSTANT_BORDER_HP */
1245, /* GL_REPLICATE_BORDER_HP */
@@ -4149,51 +4157,51 @@ static const unsigned reduced_enums[1277] =
984, /* GL_OCCLUSION_TEST_HP */
985, /* GL_OCCLUSION_TEST_RESULT_HP */
639, /* GL_LINEAR_CLIPMAP_LINEAR_SGIX */
- 1519, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */
- 1521, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */
- 1523, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */
- 1524, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */
- 1522, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */
- 1520, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */
+ 1523, /* GL_TEXTURE_CLIPMAP_CENTER_SGIX */
+ 1525, /* GL_TEXTURE_CLIPMAP_FRAME_SGIX */
+ 1527, /* GL_TEXTURE_CLIPMAP_OFFSET_SGIX */
+ 1528, /* GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX */
+ 1526, /* GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX */
+ 1524, /* GL_TEXTURE_CLIPMAP_DEPTH_SGIX */
795, /* GL_MAX_CLIPMAP_DEPTH_SGIX */
796, /* GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX */
1146, /* GL_POST_TEXTURE_FILTER_BIAS_SGIX */
1148, /* GL_POST_TEXTURE_FILTER_SCALE_SGIX */
1145, /* GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX */
1147, /* GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX */
- 1587, /* GL_TEXTURE_LOD_BIAS_S_SGIX */
- 1588, /* GL_TEXTURE_LOD_BIAS_T_SGIX */
- 1586, /* GL_TEXTURE_LOD_BIAS_R_SGIX */
+ 1591, /* GL_TEXTURE_LOD_BIAS_S_SGIX */
+ 1592, /* GL_TEXTURE_LOD_BIAS_T_SGIX */
+ 1590, /* GL_TEXTURE_LOD_BIAS_R_SGIX */
516, /* GL_GENERATE_MIPMAP */
517, /* GL_GENERATE_MIPMAP_HINT */
480, /* GL_FOG_OFFSET_SGIX */
481, /* GL_FOG_OFFSET_VALUE_SGIX */
- 1533, /* GL_TEXTURE_COMPARE_SGIX */
- 1532, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */
- 1583, /* GL_TEXTURE_LEQUAL_R_SGIX */
- 1575, /* GL_TEXTURE_GEQUAL_R_SGIX */
+ 1537, /* GL_TEXTURE_COMPARE_SGIX */
+ 1536, /* GL_TEXTURE_COMPARE_OPERATOR_SGIX */
+ 1587, /* GL_TEXTURE_LEQUAL_R_SGIX */
+ 1579, /* GL_TEXTURE_GEQUAL_R_SGIX */
322, /* GL_DEPTH_COMPONENT16 */
325, /* GL_DEPTH_COMPONENT24 */
328, /* GL_DEPTH_COMPONENT32 */
273, /* GL_CULL_VERTEX_EXT */
275, /* GL_CULL_VERTEX_OBJECT_POSITION_EXT */
274, /* GL_CULL_VERTEX_EYE_POSITION_EXT */
- 1728, /* GL_WRAP_BORDER_SUN */
- 1526, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */
+ 1732, /* GL_WRAP_BORDER_SUN */
+ 1530, /* GL_TEXTURE_COLOR_WRITEMASK_SGIS */
632, /* GL_LIGHT_MODEL_COLOR_CONTROL */
1340, /* GL_SINGLE_COLOR */
1328, /* GL_SEPARATE_SPECULAR_COLOR */
1337, /* GL_SHARED_TEXTURE_PALETTE_EXT */
- 1642, /* GL_UNSIGNED_BYTE_2_3_3_REV */
- 1655, /* GL_UNSIGNED_SHORT_5_6_5 */
- 1656, /* GL_UNSIGNED_SHORT_5_6_5_REV */
- 1653, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */
- 1651, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */
- 1649, /* GL_UNSIGNED_INT_8_8_8_8_REV */
- 1647, /* GL_UNSIGNED_INT_2_10_10_10_REV */
- 1595, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */
- 1596, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */
- 1594, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */
+ 1646, /* GL_UNSIGNED_BYTE_2_3_3_REV */
+ 1659, /* GL_UNSIGNED_SHORT_5_6_5 */
+ 1660, /* GL_UNSIGNED_SHORT_5_6_5_REV */
+ 1657, /* GL_UNSIGNED_SHORT_4_4_4_4_REV */
+ 1655, /* GL_UNSIGNED_SHORT_1_5_5_5_REV */
+ 1653, /* GL_UNSIGNED_INT_8_8_8_8_REV */
+ 1651, /* GL_UNSIGNED_INT_2_10_10_10_REV */
+ 1599, /* GL_TEXTURE_MAX_CLAMP_S_SGIX */
+ 1600, /* GL_TEXTURE_MAX_CLAMP_T_SGIX */
+ 1598, /* GL_TEXTURE_MAX_CLAMP_R_SGIX */
886, /* GL_MIRRORED_REPEAT */
1284, /* GL_RGB_S3TC */
1261, /* GL_RGB4_S3TC */
@@ -4226,46 +4234,46 @@ static const unsigned reduced_enums[1277] =
526, /* GL_GL_CURRENT_RASTER_SECONDARY_COLOR */
28, /* GL_ALIASED_POINT_SIZE_RANGE */
27, /* GL_ALIASED_LINE_WIDTH_RANGE */
- 1437, /* GL_TEXTURE0 */
- 1439, /* GL_TEXTURE1 */
- 1461, /* GL_TEXTURE2 */
- 1483, /* GL_TEXTURE3 */
- 1489, /* GL_TEXTURE4 */
- 1491, /* GL_TEXTURE5 */
- 1493, /* GL_TEXTURE6 */
- 1495, /* GL_TEXTURE7 */
- 1497, /* GL_TEXTURE8 */
- 1499, /* GL_TEXTURE9 */
- 1440, /* GL_TEXTURE10 */
- 1442, /* GL_TEXTURE11 */
- 1444, /* GL_TEXTURE12 */
- 1446, /* GL_TEXTURE13 */
- 1448, /* GL_TEXTURE14 */
- 1450, /* GL_TEXTURE15 */
- 1452, /* GL_TEXTURE16 */
- 1454, /* GL_TEXTURE17 */
- 1456, /* GL_TEXTURE18 */
- 1458, /* GL_TEXTURE19 */
- 1462, /* GL_TEXTURE20 */
- 1464, /* GL_TEXTURE21 */
- 1466, /* GL_TEXTURE22 */
- 1468, /* GL_TEXTURE23 */
- 1470, /* GL_TEXTURE24 */
- 1472, /* GL_TEXTURE25 */
- 1474, /* GL_TEXTURE26 */
- 1476, /* GL_TEXTURE27 */
- 1478, /* GL_TEXTURE28 */
- 1480, /* GL_TEXTURE29 */
- 1484, /* GL_TEXTURE30 */
- 1486, /* GL_TEXTURE31 */
+ 1441, /* GL_TEXTURE0 */
+ 1443, /* GL_TEXTURE1 */
+ 1465, /* GL_TEXTURE2 */
+ 1487, /* GL_TEXTURE3 */
+ 1493, /* GL_TEXTURE4 */
+ 1495, /* GL_TEXTURE5 */
+ 1497, /* GL_TEXTURE6 */
+ 1499, /* GL_TEXTURE7 */
+ 1501, /* GL_TEXTURE8 */
+ 1503, /* GL_TEXTURE9 */
+ 1444, /* GL_TEXTURE10 */
+ 1446, /* GL_TEXTURE11 */
+ 1448, /* GL_TEXTURE12 */
+ 1450, /* GL_TEXTURE13 */
+ 1452, /* GL_TEXTURE14 */
+ 1454, /* GL_TEXTURE15 */
+ 1456, /* GL_TEXTURE16 */
+ 1458, /* GL_TEXTURE17 */
+ 1460, /* GL_TEXTURE18 */
+ 1462, /* GL_TEXTURE19 */
+ 1466, /* GL_TEXTURE20 */
+ 1468, /* GL_TEXTURE21 */
+ 1470, /* GL_TEXTURE22 */
+ 1472, /* GL_TEXTURE23 */
+ 1474, /* GL_TEXTURE24 */
+ 1476, /* GL_TEXTURE25 */
+ 1478, /* GL_TEXTURE26 */
+ 1480, /* GL_TEXTURE27 */
+ 1482, /* GL_TEXTURE28 */
+ 1484, /* GL_TEXTURE29 */
+ 1488, /* GL_TEXTURE30 */
+ 1490, /* GL_TEXTURE31 */
18, /* GL_ACTIVE_TEXTURE */
124, /* GL_CLIENT_ACTIVE_TEXTURE */
864, /* GL_MAX_TEXTURE_UNITS */
- 1621, /* GL_TRANSPOSE_MODELVIEW_MATRIX */
- 1624, /* GL_TRANSPOSE_PROJECTION_MATRIX */
- 1626, /* GL_TRANSPOSE_TEXTURE_MATRIX */
- 1618, /* GL_TRANSPOSE_COLOR_MATRIX */
- 1425, /* GL_SUBTRACT */
+ 1625, /* GL_TRANSPOSE_MODELVIEW_MATRIX */
+ 1628, /* GL_TRANSPOSE_PROJECTION_MATRIX */
+ 1630, /* GL_TRANSPOSE_TEXTURE_MATRIX */
+ 1622, /* GL_TRANSPOSE_COLOR_MATRIX */
+ 1429, /* GL_SUBTRACT */
853, /* GL_MAX_RENDERBUFFER_SIZE_EXT */
221, /* GL_COMPRESSED_ALPHA */
225, /* GL_COMPRESSED_LUMINANCE */
@@ -4273,18 +4281,18 @@ static const unsigned reduced_enums[1277] =
223, /* GL_COMPRESSED_INTENSITY */
229, /* GL_COMPRESSED_RGB */
230, /* GL_COMPRESSED_RGBA */
- 1540, /* GL_TEXTURE_COMPRESSION_HINT */
- 1602, /* GL_TEXTURE_RECTANGLE_ARB */
- 1512, /* GL_TEXTURE_BINDING_RECTANGLE_ARB */
+ 1544, /* GL_TEXTURE_COMPRESSION_HINT */
+ 1606, /* GL_TEXTURE_RECTANGLE_ARB */
+ 1516, /* GL_TEXTURE_BINDING_RECTANGLE_ARB */
1202, /* GL_PROXY_TEXTURE_RECTANGLE_ARB */
851, /* GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB */
334, /* GL_DEPTH_STENCIL_NV */
- 1646, /* GL_UNSIGNED_INT_24_8_NV */
+ 1650, /* GL_UNSIGNED_INT_24_8_NV */
860, /* GL_MAX_TEXTURE_LOD_BIAS */
- 1593, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */
+ 1597, /* GL_TEXTURE_MAX_ANISOTROPY_EXT */
861, /* GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT */
- 1569, /* GL_TEXTURE_FILTER_CONTROL */
- 1584, /* GL_TEXTURE_LOD_BIAS */
+ 1573, /* GL_TEXTURE_FILTER_CONTROL */
+ 1588, /* GL_TEXTURE_LOD_BIAS */
207, /* GL_COMBINE4 */
854, /* GL_MAX_SHININESS_NV */
855, /* GL_MAX_SPOT_EXPONENT_NV */
@@ -4293,14 +4301,14 @@ static const unsigned reduced_enums[1277] =
906, /* GL_MODELVIEW1_ARB */
962, /* GL_NORMAL_MAP */
1231, /* GL_REFLECTION_MAP */
- 1549, /* GL_TEXTURE_CUBE_MAP */
- 1510, /* GL_TEXTURE_BINDING_CUBE_MAP */
- 1557, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */
- 1551, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */
- 1559, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */
- 1553, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */
- 1561, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */
- 1555, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */
+ 1553, /* GL_TEXTURE_CUBE_MAP */
+ 1514, /* GL_TEXTURE_BINDING_CUBE_MAP */
+ 1561, /* GL_TEXTURE_CUBE_MAP_POSITIVE_X */
+ 1555, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_X */
+ 1563, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Y */
+ 1557, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Y */
+ 1565, /* GL_TEXTURE_CUBE_MAP_POSITIVE_Z */
+ 1559, /* GL_TEXTURE_CUBE_MAP_NEGATIVE_Z */
1200, /* GL_PROXY_TEXTURE_CUBE_MAP */
807, /* GL_MAX_CUBE_MAP_TEXTURE_SIZE */
941, /* GL_MULTISAMPLE_FILTER_HINT_NV */
@@ -4332,26 +4340,26 @@ static const unsigned reduced_enums[1277] =
1001, /* GL_OPERAND1_ALPHA */
1007, /* GL_OPERAND2_ALPHA */
1013, /* GL_OPERAND3_ALPHA_NV */
- 1668, /* GL_VERTEX_ARRAY_BINDING_APPLE */
- 1732, /* GL_YCBCR_422_APPLE */
- 1657, /* GL_UNSIGNED_SHORT_8_8_APPLE */
- 1659, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */
+ 1672, /* GL_VERTEX_ARRAY_BINDING_APPLE */
+ 1736, /* GL_YCBCR_422_APPLE */
+ 1661, /* GL_UNSIGNED_SHORT_8_8_APPLE */
+ 1663, /* GL_UNSIGNED_SHORT_8_8_REV_APPLE */
1342, /* GL_SLICE_ACCUM_SUN */
1207, /* GL_QUAD_MESH_SUN */
- 1630, /* GL_TRIANGLE_MESH_SUN */
- 1706, /* GL_VERTEX_PROGRAM_ARB */
- 1717, /* GL_VERTEX_STATE_PROGRAM_NV */
- 1693, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */
- 1699, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */
- 1701, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */
- 1703, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */
+ 1634, /* GL_TRIANGLE_MESH_SUN */
+ 1710, /* GL_VERTEX_PROGRAM_ARB */
+ 1721, /* GL_VERTEX_STATE_PROGRAM_NV */
+ 1697, /* GL_VERTEX_ATTRIB_ARRAY_ENABLED */
+ 1703, /* GL_VERTEX_ATTRIB_ARRAY_SIZE */
+ 1705, /* GL_VERTEX_ATTRIB_ARRAY_STRIDE */
+ 1707, /* GL_VERTEX_ATTRIB_ARRAY_TYPE */
300, /* GL_CURRENT_VERTEX_ATTRIB */
1165, /* GL_PROGRAM_LENGTH_ARB */
1179, /* GL_PROGRAM_STRING_ARB */
928, /* GL_MODELVIEW_PROJECTION_NV */
569, /* GL_IDENTITY_NV */
614, /* GL_INVERSE_NV */
- 1623, /* GL_TRANSPOSE_NV */
+ 1627, /* GL_TRANSPOSE_NV */
615, /* GL_INVERSE_TRANSPOSE_NV */
837, /* GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB */
836, /* GL_MAX_PROGRAM_MATRICES_ARB */
@@ -4365,33 +4373,33 @@ static const unsigned reduced_enums[1277] =
781, /* GL_MATRIX7_NV */
285, /* GL_CURRENT_MATRIX_STACK_DEPTH_ARB */
282, /* GL_CURRENT_MATRIX_ARB */
- 1709, /* GL_VERTEX_PROGRAM_POINT_SIZE */
- 1712, /* GL_VERTEX_PROGRAM_TWO_SIDE */
+ 1713, /* GL_VERTEX_PROGRAM_POINT_SIZE */
+ 1716, /* GL_VERTEX_PROGRAM_TWO_SIDE */
1177, /* GL_PROGRAM_PARAMETER_NV */
- 1697, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */
+ 1701, /* GL_VERTEX_ATTRIB_ARRAY_POINTER */
1181, /* GL_PROGRAM_TARGET_NV */
1178, /* GL_PROGRAM_RESIDENT_NV */
- 1615, /* GL_TRACK_MATRIX_NV */
- 1616, /* GL_TRACK_MATRIX_TRANSFORM_NV */
- 1707, /* GL_VERTEX_PROGRAM_BINDING_NV */
+ 1619, /* GL_TRACK_MATRIX_NV */
+ 1620, /* GL_TRACK_MATRIX_TRANSFORM_NV */
+ 1711, /* GL_VERTEX_PROGRAM_BINDING_NV */
1159, /* GL_PROGRAM_ERROR_POSITION_ARB */
319, /* GL_DEPTH_CLAMP_NV */
- 1675, /* GL_VERTEX_ATTRIB_ARRAY0_NV */
- 1682, /* GL_VERTEX_ATTRIB_ARRAY1_NV */
- 1683, /* GL_VERTEX_ATTRIB_ARRAY2_NV */
- 1684, /* GL_VERTEX_ATTRIB_ARRAY3_NV */
- 1685, /* GL_VERTEX_ATTRIB_ARRAY4_NV */
- 1686, /* GL_VERTEX_ATTRIB_ARRAY5_NV */
- 1687, /* GL_VERTEX_ATTRIB_ARRAY6_NV */
- 1688, /* GL_VERTEX_ATTRIB_ARRAY7_NV */
- 1689, /* GL_VERTEX_ATTRIB_ARRAY8_NV */
- 1690, /* GL_VERTEX_ATTRIB_ARRAY9_NV */
- 1676, /* GL_VERTEX_ATTRIB_ARRAY10_NV */
- 1677, /* GL_VERTEX_ATTRIB_ARRAY11_NV */
- 1678, /* GL_VERTEX_ATTRIB_ARRAY12_NV */
- 1679, /* GL_VERTEX_ATTRIB_ARRAY13_NV */
- 1680, /* GL_VERTEX_ATTRIB_ARRAY14_NV */
- 1681, /* GL_VERTEX_ATTRIB_ARRAY15_NV */
+ 1679, /* GL_VERTEX_ATTRIB_ARRAY0_NV */
+ 1686, /* GL_VERTEX_ATTRIB_ARRAY1_NV */
+ 1687, /* GL_VERTEX_ATTRIB_ARRAY2_NV */
+ 1688, /* GL_VERTEX_ATTRIB_ARRAY3_NV */
+ 1689, /* GL_VERTEX_ATTRIB_ARRAY4_NV */
+ 1690, /* GL_VERTEX_ATTRIB_ARRAY5_NV */
+ 1691, /* GL_VERTEX_ATTRIB_ARRAY6_NV */
+ 1692, /* GL_VERTEX_ATTRIB_ARRAY7_NV */
+ 1693, /* GL_VERTEX_ATTRIB_ARRAY8_NV */
+ 1694, /* GL_VERTEX_ATTRIB_ARRAY9_NV */
+ 1680, /* GL_VERTEX_ATTRIB_ARRAY10_NV */
+ 1681, /* GL_VERTEX_ATTRIB_ARRAY11_NV */
+ 1682, /* GL_VERTEX_ATTRIB_ARRAY12_NV */
+ 1683, /* GL_VERTEX_ATTRIB_ARRAY13_NV */
+ 1684, /* GL_VERTEX_ATTRIB_ARRAY14_NV */
+ 1685, /* GL_VERTEX_ATTRIB_ARRAY15_NV */
699, /* GL_MAP1_VERTEX_ATTRIB0_4_NV */
706, /* GL_MAP1_VERTEX_ATTRIB1_4_NV */
707, /* GL_MAP1_VERTEX_ATTRIB2_4_NV */
@@ -4424,20 +4432,20 @@ static const unsigned reduced_enums[1277] =
730, /* GL_MAP2_VERTEX_ATTRIB13_4_NV */
731, /* GL_MAP2_VERTEX_ATTRIB14_4_NV */
732, /* GL_MAP2_VERTEX_ATTRIB15_4_NV */
- 1538, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */
- 1535, /* GL_TEXTURE_COMPRESSED */
+ 1542, /* GL_TEXTURE_COMPRESSED_IMAGE_SIZE */
+ 1539, /* GL_TEXTURE_COMPRESSED */
967, /* GL_NUM_COMPRESSED_TEXTURE_FORMATS */
239, /* GL_COMPRESSED_TEXTURE_FORMATS */
876, /* GL_MAX_VERTEX_UNITS_ARB */
22, /* GL_ACTIVE_VERTEX_UNITS_ARB */
- 1727, /* GL_WEIGHT_SUM_UNITY_ARB */
- 1705, /* GL_VERTEX_BLEND_ARB */
+ 1731, /* GL_WEIGHT_SUM_UNITY_ARB */
+ 1709, /* GL_VERTEX_BLEND_ARB */
302, /* GL_CURRENT_WEIGHT_ARB */
- 1726, /* GL_WEIGHT_ARRAY_TYPE_ARB */
- 1725, /* GL_WEIGHT_ARRAY_STRIDE_ARB */
- 1724, /* GL_WEIGHT_ARRAY_SIZE_ARB */
- 1723, /* GL_WEIGHT_ARRAY_POINTER_ARB */
- 1720, /* GL_WEIGHT_ARRAY_ARB */
+ 1730, /* GL_WEIGHT_ARRAY_TYPE_ARB */
+ 1729, /* GL_WEIGHT_ARRAY_STRIDE_ARB */
+ 1728, /* GL_WEIGHT_ARRAY_SIZE_ARB */
+ 1727, /* GL_WEIGHT_ARRAY_POINTER_ARB */
+ 1724, /* GL_WEIGHT_ARRAY_ARB */
345, /* GL_DOT3_RGB */
346, /* GL_DOT3_RGBA */
237, /* GL_COMPRESSED_RGB_FXT1_3DFX */
@@ -4482,17 +4490,17 @@ static const unsigned reduced_enums[1277] =
931, /* GL_MODULATE_ADD_ATI */
932, /* GL_MODULATE_SIGNED_ADD_ATI */
933, /* GL_MODULATE_SUBTRACT_ATI */
- 1733, /* GL_YCBCR_MESA */
+ 1737, /* GL_YCBCR_MESA */
1022, /* GL_PACK_INVERT_MESA */
305, /* GL_DEBUG_OBJECT_MESA */
306, /* GL_DEBUG_PRINT_MESA */
304, /* GL_DEBUG_ASSERT_MESA */
107, /* GL_BUFFER_SIZE */
109, /* GL_BUFFER_USAGE */
- 1393, /* GL_STENCIL_BACK_FUNC */
+ 1394, /* GL_STENCIL_BACK_FUNC */
1392, /* GL_STENCIL_BACK_FAIL */
- 1394, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */
- 1395, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */
+ 1396, /* GL_STENCIL_BACK_PASS_DEPTH_FAIL */
+ 1398, /* GL_STENCIL_BACK_PASS_DEPTH_PASS */
484, /* GL_FRAGMENT_PROGRAM_ARB */
1156, /* GL_PROGRAM_ALU_INSTRUCTIONS_ARB */
1184, /* GL_PROGRAM_TEX_INSTRUCTIONS_ARB */
@@ -4534,10 +4542,10 @@ static const unsigned reduced_enums[1277] =
788, /* GL_MATRIX_INDEX_ARRAY_TYPE_ARB */
787, /* GL_MATRIX_INDEX_ARRAY_STRIDE_ARB */
785, /* GL_MATRIX_INDEX_ARRAY_POINTER_ARB */
- 1564, /* GL_TEXTURE_DEPTH_SIZE */
+ 1568, /* GL_TEXTURE_DEPTH_SIZE */
338, /* GL_DEPTH_TEXTURE_MODE */
- 1530, /* GL_TEXTURE_COMPARE_MODE */
- 1528, /* GL_TEXTURE_COMPARE_FUNC */
+ 1534, /* GL_TEXTURE_COMPARE_MODE */
+ 1532, /* GL_TEXTURE_COMPARE_FUNC */
216, /* GL_COMPARE_R_TO_TEXTURE */
1090, /* GL_POINT_SPRITE */
265, /* GL_COORD_REPLACE */
@@ -4547,7 +4555,7 @@ static const unsigned reduced_enums[1277] =
1211, /* GL_QUERY_RESULT */
1213, /* GL_QUERY_RESULT_AVAILABLE */
870, /* GL_MAX_VERTEX_ATTRIBS */
- 1695, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */
+ 1699, /* GL_VERTEX_ATTRIB_ARRAY_NORMALIZED */
336, /* GL_DEPTH_STENCIL_TO_RGBA_NV */
335, /* GL_DEPTH_STENCIL_TO_BGRA_NV */
856, /* GL_MAX_TEXTURE_COORDS */
@@ -4555,23 +4563,23 @@ static const unsigned reduced_enums[1277] =
1161, /* GL_PROGRAM_ERROR_STRING_ARB */
1163, /* GL_PROGRAM_FORMAT_ASCII_ARB */
1162, /* GL_PROGRAM_FORMAT_ARB */
- 1609, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */
+ 1613, /* GL_TEXTURE_UNSIGNED_REMAP_MODE_NV */
317, /* GL_DEPTH_BOUNDS_TEST_EXT */
316, /* GL_DEPTH_BOUNDS_EXT */
52, /* GL_ARRAY_BUFFER */
419, /* GL_ELEMENT_ARRAY_BUFFER */
54, /* GL_ARRAY_BUFFER_BINDING */
421, /* GL_ELEMENT_ARRAY_BUFFER_BINDING */
- 1669, /* GL_VERTEX_ARRAY_BUFFER_BINDING */
+ 1673, /* GL_VERTEX_ARRAY_BUFFER_BINDING */
957, /* GL_NORMAL_ARRAY_BUFFER_BINDING */
140, /* GL_COLOR_ARRAY_BUFFER_BINDING */
577, /* GL_INDEX_ARRAY_BUFFER_BINDING */
- 1543, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */
+ 1547, /* GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING */
415, /* GL_EDGE_FLAG_ARRAY_BUFFER_BINDING */
1318, /* GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING */
462, /* GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING */
- 1721, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */
- 1691, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */
+ 1725, /* GL_WEIGHT_ARRAY_BUFFER_BINDING */
+ 1695, /* GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING */
1164, /* GL_PROGRAM_INSTRUCTIONS_ARB */
832, /* GL_MAX_PROGRAM_INSTRUCTIONS_ARB */
1170, /* GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB */
@@ -4595,14 +4603,14 @@ static const unsigned reduced_enums[1277] =
833, /* GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB */
829, /* GL_MAX_PROGRAM_ENV_PARAMETERS_ARB */
1185, /* GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB */
- 1620, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */
+ 1624, /* GL_TRANSPOSE_CURRENT_MATRIX_ARB */
1221, /* GL_READ_ONLY */
- 1729, /* GL_WRITE_ONLY */
+ 1733, /* GL_WRITE_ONLY */
1223, /* GL_READ_WRITE */
101, /* GL_BUFFER_ACCESS */
103, /* GL_BUFFER_MAPPED */
105, /* GL_BUFFER_MAP_POINTER */
- 1614, /* GL_TIME_ELAPSED_EXT */
+ 1618, /* GL_TIME_ELAPSED_EXT */
744, /* GL_MATRIX0_ARB */
756, /* GL_MATRIX1_ARB */
768, /* GL_MATRIX2_ARB */
@@ -4635,9 +4643,9 @@ static const unsigned reduced_enums[1277] =
767, /* GL_MATRIX29_ARB */
770, /* GL_MATRIX30_ARB */
771, /* GL_MATRIX31_ARB */
- 1420, /* GL_STREAM_DRAW */
- 1422, /* GL_STREAM_READ */
- 1418, /* GL_STREAM_COPY */
+ 1424, /* GL_STREAM_DRAW */
+ 1426, /* GL_STREAM_READ */
+ 1422, /* GL_STREAM_COPY */
1386, /* GL_STATIC_DRAW */
1388, /* GL_STATIC_READ */
1384, /* GL_STATIC_COPY */
@@ -4653,12 +4661,12 @@ static const unsigned reduced_enums[1277] =
831, /* GL_MAX_PROGRAM_IF_DEPTH_NV */
835, /* GL_MAX_PROGRAM_LOOP_DEPTH_NV */
834, /* GL_MAX_PROGRAM_LOOP_COUNT_NV */
- 1414, /* GL_STENCIL_TEST_TWO_SIDE_EXT */
+ 1418, /* GL_STENCIL_TEST_TWO_SIDE_EXT */
17, /* GL_ACTIVE_STENCIL_FACE_EXT */
891, /* GL_MIRROR_CLAMP_TO_BORDER_EXT */
1299, /* GL_SAMPLES_PASSED */
485, /* GL_FRAGMENT_SHADER */
- 1715, /* GL_VERTEX_SHADER */
+ 1719, /* GL_VERTEX_SHADER */
1175, /* GL_PROGRAM_OBJECT_ARB */
1331, /* GL_SHADER_OBJECT_ARB */
816, /* GL_MAX_FRAGMENT_UNIFORM_COMPONENTS */
@@ -4696,7 +4704,7 @@ static const unsigned reduced_enums[1277] =
311, /* GL_DELETE_STATUS */
220, /* GL_COMPILE_STATUS */
657, /* GL_LINK_STATUS */
- 1664, /* GL_VALIDATE_STATUS */
+ 1668, /* GL_VALIDATE_STATUS */
589, /* GL_INFO_LOG_LENGTH */
56, /* GL_ATTACHED_SHADERS */
20, /* GL_ACTIVE_UNIFORMS */
@@ -4733,10 +4741,10 @@ static const unsigned reduced_enums[1277] =
523, /* GL_GL_COMPRESSED_SLUMINANCE_ALPHA */
1092, /* GL_POINT_SPRITE_COORD_ORIGIN */
665, /* GL_LOWER_LEFT */
- 1661, /* GL_UPPER_LEFT */
- 1396, /* GL_STENCIL_BACK_REF */
- 1397, /* GL_STENCIL_BACK_VALUE_MASK */
- 1398, /* GL_STENCIL_BACK_WRITEMASK */
+ 1665, /* GL_UPPER_LEFT */
+ 1400, /* GL_STENCIL_BACK_REF */
+ 1401, /* GL_STENCIL_BACK_VALUE_MASK */
+ 1402, /* GL_STENCIL_BACK_WRITEMASK */
402, /* GL_DRAW_FRAMEBUFFER_BINDING_EXT */
1235, /* GL_RENDERBUFFER_BINDING_EXT */
1220, /* GL_READ_FRAMEBUFFER_EXT */
@@ -4781,15 +4789,15 @@ static const unsigned reduced_enums[1277] =
1239, /* GL_RENDERBUFFER_WIDTH_EXT */
1237, /* GL_RENDERBUFFER_HEIGHT_EXT */
1238, /* GL_RENDERBUFFER_INTERNAL_FORMAT_EXT */
- 1409, /* GL_STENCIL_INDEX_EXT */
- 1406, /* GL_STENCIL_INDEX1_EXT */
- 1407, /* GL_STENCIL_INDEX4_EXT */
- 1408, /* GL_STENCIL_INDEX8_EXT */
- 1405, /* GL_STENCIL_INDEX16_EXT */
+ 1413, /* GL_STENCIL_INDEX_EXT */
+ 1410, /* GL_STENCIL_INDEX1_EXT */
+ 1411, /* GL_STENCIL_INDEX4_EXT */
+ 1412, /* GL_STENCIL_INDEX8_EXT */
+ 1409, /* GL_STENCIL_INDEX16_EXT */
427, /* GL_EVAL_BIT */
1217, /* GL_RASTER_POSITION_UNCLIPPED_IBM */
659, /* GL_LIST_BIT */
- 1514, /* GL_TEXTURE_BIT */
+ 1518, /* GL_TEXTURE_BIT */
1314, /* GL_SCISSOR_BIT */
29, /* GL_ALL_ATTRIB_BITS */
938, /* GL_MULTISAMPLE_BIT */
diff --git a/src/mesa/main/glheader.h b/src/mesa/main/glheader.h
index fd4127558a8..2d2da49fe5b 100644
--- a/src/mesa/main/glheader.h
+++ b/src/mesa/main/glheader.h
@@ -237,7 +237,7 @@
#endif
-#if !defined __GNUC__ || __GNUC__ < 3
+#if (!defined(__GNUC__) || __GNUC__ < 3) && !defined(__IBMC__)
# define __builtin_expect(x, y) x
#endif
diff --git a/src/mesa/main/light.c b/src/mesa/main/light.c
index 6e057614bad..6dd334e16dc 100644
--- a/src/mesa/main/light.c
+++ b/src/mesa/main/light.c
@@ -53,6 +53,11 @@ _mesa_ShadeModel( GLenum mode )
FLUSH_VERTICES(ctx, _NEW_LIGHT);
ctx->Light.ShadeModel = mode;
+ if (mode == GL_FLAT)
+ ctx->_TriangleCaps |= DD_FLATSHADE;
+ else
+ ctx->_TriangleCaps &= ~DD_FLATSHADE;
+
if (ctx->Driver.ShadeModel)
ctx->Driver.ShadeModel( ctx, mode );
}
@@ -441,6 +446,10 @@ _mesa_LightModelfv( GLenum pname, const GLfloat *params )
return;
FLUSH_VERTICES(ctx, _NEW_LIGHT);
ctx->Light.Model.TwoSide = newbool;
+ if (ctx->Light.Enabled && ctx->Light.Model.TwoSide)
+ ctx->_TriangleCaps |= DD_TRI_LIGHT_TWOSIDE;
+ else
+ ctx->_TriangleCaps &= ~DD_TRI_LIGHT_TWOSIDE;
break;
case GL_LIGHT_MODEL_COLOR_CONTROL:
if (params[0] == (GLfloat) GL_SINGLE_COLOR)
diff --git a/src/mesa/main/lines.c b/src/mesa/main/lines.c
index dc7195d4ebf..b464c4f59ed 100644
--- a/src/mesa/main/lines.c
+++ b/src/mesa/main/lines.c
@@ -59,6 +59,11 @@ _mesa_LineWidth( GLfloat width )
ctx->Const.MinLineWidth,
ctx->Const.MaxLineWidth);
+ if (width != 1.0F)
+ ctx->_TriangleCaps |= DD_LINE_WIDTH;
+ else
+ ctx->_TriangleCaps &= ~DD_LINE_WIDTH;
+
if (ctx->Driver.LineWidth)
ctx->Driver.LineWidth(ctx, width);
}
diff --git a/src/mesa/main/points.c b/src/mesa/main/points.c
index 408b68a7430..8825bb18192 100644
--- a/src/mesa/main/points.c
+++ b/src/mesa/main/points.c
@@ -123,9 +123,15 @@ _mesa_PointParameterfvEXT( GLenum pname, const GLfloat *params)
return;
FLUSH_VERTICES(ctx, _NEW_POINT);
COPY_3V(ctx->Point.Params, params);
+
ctx->Point._Attenuated = (ctx->Point.Params[0] != 1.0 ||
ctx->Point.Params[1] != 0.0 ||
ctx->Point.Params[2] != 0.0);
+
+ if (ctx->Point._Attenuated)
+ ctx->_TriangleCaps |= DD_POINT_ATTEN;
+ else
+ ctx->_TriangleCaps &= ~DD_POINT_ATTEN;
}
else {
_mesa_error(ctx, GL_INVALID_ENUM,
diff --git a/src/mesa/main/polygon.c b/src/mesa/main/polygon.c
index fd02e5a652d..564250b881c 100644
--- a/src/mesa/main/polygon.c
+++ b/src/mesa/main/polygon.c
@@ -167,6 +167,11 @@ _mesa_PolygonMode( GLenum face, GLenum mode )
return;
}
+ if (ctx->Polygon.FrontMode == GL_FILL && ctx->Polygon.BackMode == GL_FILL)
+ ctx->_TriangleCaps &= ~DD_TRI_UNFILLED;
+ else
+ ctx->_TriangleCaps |= DD_TRI_UNFILLED;
+
if (ctx->Driver.PolygonMode)
ctx->Driver.PolygonMode(ctx, face, mode);
}
diff --git a/src/mesa/main/state.c b/src/mesa/main/state.c
index 96ee5127e11..99b3f48b453 100644
--- a/src/mesa/main/state.c
+++ b/src/mesa/main/state.c
@@ -812,6 +812,9 @@ _mesa_init_exec_table(struct _glapi_table *exec)
SET_ProgramEnvParameters4fvEXT(exec, _mesa_ProgramEnvParameters4fvEXT);
SET_ProgramLocalParameters4fvEXT(exec, _mesa_ProgramLocalParameters4fvEXT);
#endif
+
+ /* GL_ATI_separate_stencil */
+ SET_StencilFuncSeparateATI(exec, _mesa_StencilFuncSeparateATI);
}
@@ -821,6 +824,16 @@ _mesa_init_exec_table(struct _glapi_table *exec)
/*@{*/
+static void
+update_separate_specular( GLcontext *ctx )
+{
+ if (NEED_SECONDARY_COLOR(ctx))
+ ctx->_TriangleCaps |= DD_SEPARATE_SPECULAR;
+ else
+ ctx->_TriangleCaps &= ~DD_SEPARATE_SPECULAR;
+}
+
+
/**
* Update state dependent on vertex arrays.
*/
@@ -1045,6 +1058,26 @@ update_color(GLcontext *ctx)
}
+/*
+ * Check polygon state and set DD_TRI_CULL_FRONT_BACK and/or DD_TRI_OFFSET
+ * in ctx->_TriangleCaps if needed.
+ */
+static void
+update_polygon( GLcontext *ctx )
+{
+ ctx->_TriangleCaps &= ~(DD_TRI_CULL_FRONT_BACK | DD_TRI_OFFSET);
+
+ if (ctx->Polygon.CullFlag && ctx->Polygon.CullFaceMode == GL_FRONT_AND_BACK)
+ ctx->_TriangleCaps |= DD_TRI_CULL_FRONT_BACK;
+
+ /* Any Polygon offsets enabled? */
+ if (ctx->Polygon.OffsetPoint ||
+ ctx->Polygon.OffsetLine ||
+ ctx->Polygon.OffsetFill) {
+ ctx->_TriangleCaps |= DD_TRI_OFFSET;
+ }
+}
+
/**
* Update the ctx->_TriangleCaps bitfield.
@@ -1052,6 +1085,7 @@ update_color(GLcontext *ctx)
* This function must be called after other update_*() functions since
* there are dependencies on some other derived values.
*/
+#if 0
static void
update_tricaps(GLcontext *ctx, GLbitfield new_state)
{
@@ -1117,6 +1151,7 @@ update_tricaps(GLcontext *ctx, GLbitfield new_state)
if (ctx->Stencil._TestTwoSide)
ctx->_TriangleCaps |= DD_TRI_TWOSTENCIL;
}
+#endif
/**
@@ -1154,6 +1189,9 @@ _mesa_update_state_locked( GLcontext *ctx )
if (new_state & (_NEW_SCISSOR | _NEW_BUFFERS | _NEW_VIEWPORT))
_mesa_update_draw_buffer_bounds( ctx );
+ if (new_state & _NEW_POLYGON)
+ update_polygon( ctx );
+
if (new_state & _NEW_LIGHT)
_mesa_update_lighting( ctx );
@@ -1163,6 +1201,9 @@ _mesa_update_state_locked( GLcontext *ctx )
if (new_state & _IMAGE_NEW_TRANSFER_STATE)
_mesa_update_pixel( ctx, new_state );
+ if (new_state & _DD_NEW_SEPARATE_SPECULAR)
+ update_separate_specular( ctx );
+
if (new_state & (_NEW_ARRAY | _NEW_PROGRAM))
update_arrays( ctx );
@@ -1172,9 +1213,11 @@ _mesa_update_state_locked( GLcontext *ctx )
if (new_state & _NEW_COLOR)
update_color( ctx );
+#if 0
if (new_state & (_NEW_POINT | _NEW_LINE | _NEW_POLYGON | _NEW_LIGHT
| _NEW_STENCIL | _DD_NEW_SEPARATE_SPECULAR))
update_tricaps( ctx, new_state );
+#endif
if (ctx->FragmentProgram._MaintainTexEnvProgram) {
if (new_state & (_NEW_TEXTURE | _DD_NEW_SEPARATE_SPECULAR | _NEW_FOG))
diff --git a/src/mesa/main/stencil.c b/src/mesa/main/stencil.c
index e61eb0030c0..c1906197de1 100644
--- a/src/mesa/main/stencil.c
+++ b/src/mesa/main/stencil.c
@@ -1,8 +1,8 @@
/*
* Mesa 3-D graphics library
- * Version: 6.5.2
+ * Version: 7.1
*
- * Copyright (C) 1999-2006 Brian Paul All Rights Reserved.
+ * Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
@@ -53,6 +53,48 @@
#include "mtypes.h"
+static GLboolean
+validate_stencil_op(GLcontext *ctx, GLenum op)
+{
+ switch (op) {
+ case GL_KEEP:
+ case GL_ZERO:
+ case GL_REPLACE:
+ case GL_INCR:
+ case GL_DECR:
+ case GL_INVERT:
+ return GL_TRUE;
+ case GL_INCR_WRAP_EXT:
+ case GL_DECR_WRAP_EXT:
+ if (ctx->Extensions.EXT_stencil_wrap) {
+ return GL_TRUE;
+ }
+ /* FALL-THROUGH */
+ default:
+ return GL_FALSE;
+ }
+}
+
+
+static GLboolean
+validate_stencil_func(GLcontext *ctx, GLenum func)
+{
+ switch (func) {
+ case GL_NEVER:
+ case GL_LESS:
+ case GL_LEQUAL:
+ case GL_GREATER:
+ case GL_GEQUAL:
+ case GL_EQUAL:
+ case GL_NOTEQUAL:
+ case GL_ALWAYS:
+ return GL_TRUE;
+ default:
+ return GL_FALSE;
+ }
+}
+
+
/**
* Set the clear value for the stencil buffer.
*
@@ -85,6 +127,62 @@ _mesa_ClearStencil( GLint s )
/**
* Set the function and reference value for stencil testing.
*
+ * \param frontfunc front test function.
+ * \param backfunc back test function.
+ * \param ref front and back reference value.
+ * \param mask front and back bitmask.
+ *
+ * \sa glStencilFunc().
+ *
+ * Verifies the parameters and updates the respective values in
+ * __GLcontextRec::Stencil. On change flushes the vertices and notifies the
+ * driver via the dd_function_table::StencilFunc callback.
+ */
+void GLAPIENTRY
+_mesa_StencilFuncSeparateATI( GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask )
+{
+ GET_CURRENT_CONTEXT(ctx);
+ const GLint stencilMax = (1 << ctx->DrawBuffer->Visual.stencilBits) - 1;
+ ASSERT_OUTSIDE_BEGIN_END(ctx);
+
+ if (!validate_stencil_func(ctx, frontfunc)) {
+ _mesa_error(ctx, GL_INVALID_ENUM,
+ "glStencilFuncSeparateATI(frontfunc)");
+ return;
+ }
+ if (!validate_stencil_func(ctx, backfunc)) {
+ _mesa_error(ctx, GL_INVALID_ENUM,
+ "glStencilFuncSeparateATI(backfunc)");
+ return;
+ }
+
+ ref = CLAMP( ref, 0, stencilMax );
+
+ /* set both front and back state */
+ if (ctx->Stencil.Function[0] == frontfunc &&
+ ctx->Stencil.Function[1] == backfunc &&
+ ctx->Stencil.ValueMask[0] == mask &&
+ ctx->Stencil.ValueMask[1] == mask &&
+ ctx->Stencil.Ref[0] == ref &&
+ ctx->Stencil.Ref[1] == ref)
+ return;
+ FLUSH_VERTICES(ctx, _NEW_STENCIL);
+ ctx->Stencil.Function[0] = frontfunc;
+ ctx->Stencil.Function[1] = backfunc;
+ ctx->Stencil.Ref[0] = ctx->Stencil.Ref[1] = ref;
+ ctx->Stencil.ValueMask[0] = ctx->Stencil.ValueMask[1] = mask;
+ if (ctx->Driver.StencilFuncSeparate) {
+ ctx->Driver.StencilFuncSeparate(ctx, GL_FRONT,
+ frontfunc, ref, mask);
+ ctx->Driver.StencilFuncSeparate(ctx, GL_BACK,
+ backfunc, ref, mask);
+ }
+}
+
+
+/**
+ * Set the function and reference value for stencil testing.
+ *
* \param func test function.
* \param ref reference value.
* \param mask bitmask.
@@ -102,19 +200,9 @@ _mesa_StencilFunc( GLenum func, GLint ref, GLuint mask )
const GLint stencilMax = (1 << ctx->DrawBuffer->Visual.stencilBits) - 1;
ASSERT_OUTSIDE_BEGIN_END(ctx);
- switch (func) {
- case GL_NEVER:
- case GL_LESS:
- case GL_LEQUAL:
- case GL_GREATER:
- case GL_GEQUAL:
- case GL_EQUAL:
- case GL_NOTEQUAL:
- case GL_ALWAYS:
- break;
- default:
- _mesa_error( ctx, GL_INVALID_ENUM, "glStencilFunc (0x%04x)", func );
- return;
+ if (!validate_stencil_func(ctx, func)) {
+ _mesa_error(ctx, GL_INVALID_ENUM, "glStencilFunc(func)");
+ return;
}
ref = CLAMP( ref, 0, stencilMax );
@@ -218,59 +306,17 @@ _mesa_StencilOp(GLenum fail, GLenum zfail, GLenum zpass)
GET_CURRENT_CONTEXT(ctx);
ASSERT_OUTSIDE_BEGIN_END(ctx);
- switch (fail) {
- case GL_KEEP:
- case GL_ZERO:
- case GL_REPLACE:
- case GL_INCR:
- case GL_DECR:
- case GL_INVERT:
- break;
- case GL_INCR_WRAP_EXT:
- case GL_DECR_WRAP_EXT:
- if (ctx->Extensions.EXT_stencil_wrap) {
- break;
- }
- /* FALL-THROUGH */
- default:
- _mesa_error(ctx, GL_INVALID_ENUM, "glStencilOp");
- return;
+ if (!validate_stencil_op(ctx, fail)) {
+ _mesa_error(ctx, GL_INVALID_ENUM, "glStencilOp(sfail)");
+ return;
}
- switch (zfail) {
- case GL_KEEP:
- case GL_ZERO:
- case GL_REPLACE:
- case GL_INCR:
- case GL_DECR:
- case GL_INVERT:
- break;
- case GL_INCR_WRAP_EXT:
- case GL_DECR_WRAP_EXT:
- if (ctx->Extensions.EXT_stencil_wrap) {
- break;
- }
- /* FALL-THROUGH */
- default:
- _mesa_error(ctx, GL_INVALID_ENUM, "glStencilOp");
- return;
+ if (!validate_stencil_op(ctx, zfail)) {
+ _mesa_error(ctx, GL_INVALID_ENUM, "glStencilOp(zfail)");
+ return;
}
- switch (zpass) {
- case GL_KEEP:
- case GL_ZERO:
- case GL_REPLACE:
- case GL_INCR:
- case GL_DECR:
- case GL_INVERT:
- break;
- case GL_INCR_WRAP_EXT:
- case GL_DECR_WRAP_EXT:
- if (ctx->Extensions.EXT_stencil_wrap) {
- break;
- }
- /* FALL-THROUGH */
- default:
- _mesa_error(ctx, GL_INVALID_ENUM, "glStencilOp");
- return;
+ if (!validate_stencil_op(ctx, zpass)) {
+ _mesa_error(ctx, GL_INVALID_ENUM, "glStencilOp(zpass)");
+ return;
}
if (ctx->Extensions.ATI_separate_stencil) {
@@ -343,85 +389,55 @@ _mesa_ActiveStencilFaceEXT(GLenum face)
* instead.
*/
void GLAPIENTRY
-_mesa_StencilOpSeparate(GLenum face, GLenum fail, GLenum zfail, GLenum zpass)
+_mesa_StencilOpSeparate(GLenum face, GLenum sfail, GLenum zfail, GLenum zpass)
{
+ GLboolean set = GL_FALSE;
GET_CURRENT_CONTEXT(ctx);
ASSERT_OUTSIDE_BEGIN_END(ctx);
- if (face != GL_FRONT && face != GL_BACK && face != GL_FRONT_AND_BACK) {
- _mesa_error(ctx, GL_INVALID_ENUM, "glStencilOpSeparate(face)");
+ if (!validate_stencil_op(ctx, sfail)) {
+ _mesa_error(ctx, GL_INVALID_ENUM, "glStencilOpSeparate(sfail)");
return;
}
-
- switch (fail) {
- case GL_KEEP:
- case GL_ZERO:
- case GL_REPLACE:
- case GL_INCR:
- case GL_DECR:
- case GL_INVERT:
- break;
- case GL_INCR_WRAP_EXT:
- case GL_DECR_WRAP_EXT:
- if (ctx->Extensions.EXT_stencil_wrap) {
- break;
- }
- /* FALL-THROUGH */
- default:
- _mesa_error(ctx, GL_INVALID_ENUM, "glStencilOpSeparate(fail)");
- return;
+ if (!validate_stencil_op(ctx, zfail)) {
+ _mesa_error(ctx, GL_INVALID_ENUM, "glStencilOpSeparate(zfail)");
+ return;
}
- switch (zfail) {
- case GL_KEEP:
- case GL_ZERO:
- case GL_REPLACE:
- case GL_INCR:
- case GL_DECR:
- case GL_INVERT:
- break;
- case GL_INCR_WRAP_EXT:
- case GL_DECR_WRAP_EXT:
- if (ctx->Extensions.EXT_stencil_wrap) {
- break;
- }
- /* FALL-THROUGH */
- default:
- _mesa_error(ctx, GL_INVALID_ENUM, "glStencilOpSeparate(zfail)");
- return;
+ if (!validate_stencil_op(ctx, zpass)) {
+ _mesa_error(ctx, GL_INVALID_ENUM, "glStencilOpSeparate(zpass)");
+ return;
}
- switch (zpass) {
- case GL_KEEP:
- case GL_ZERO:
- case GL_REPLACE:
- case GL_INCR:
- case GL_DECR:
- case GL_INVERT:
- break;
- case GL_INCR_WRAP_EXT:
- case GL_DECR_WRAP_EXT:
- if (ctx->Extensions.EXT_stencil_wrap) {
- break;
- }
- /* FALL-THROUGH */
- default:
- _mesa_error(ctx, GL_INVALID_ENUM, "glStencilOpSeparate(zpass)");
- return;
+ if (face != GL_FRONT && face != GL_BACK && face != GL_FRONT_AND_BACK) {
+ _mesa_error(ctx, GL_INVALID_ENUM, "glStencilOpSeparate(face)");
+ return;
}
- FLUSH_VERTICES(ctx, _NEW_STENCIL);
-
if (face != GL_BACK) {
- ctx->Stencil.FailFunc[0] = fail;
- ctx->Stencil.ZFailFunc[0] = zfail;
- ctx->Stencil.ZPassFunc[0] = zpass;
+ /* set front */
+ if (ctx->Stencil.ZFailFunc[0] != zfail ||
+ ctx->Stencil.ZPassFunc[0] != zpass ||
+ ctx->Stencil.FailFunc[0] != sfail){
+ FLUSH_VERTICES(ctx, _NEW_STENCIL);
+ ctx->Stencil.ZFailFunc[0] = zfail;
+ ctx->Stencil.ZPassFunc[0] = zpass;
+ ctx->Stencil.FailFunc[0] = sfail;
+ set = GL_TRUE;
+ }
}
if (face != GL_FRONT) {
- ctx->Stencil.FailFunc[1] = fail;
- ctx->Stencil.ZFailFunc[1] = zfail;
- ctx->Stencil.ZPassFunc[1] = zpass;
+ /* set back */
+ if (ctx->Stencil.ZFailFunc[1] != zfail ||
+ ctx->Stencil.ZPassFunc[1] != zpass ||
+ ctx->Stencil.FailFunc[1] != sfail) {
+ FLUSH_VERTICES(ctx, _NEW_STENCIL);
+ ctx->Stencil.ZFailFunc[1] = zfail;
+ ctx->Stencil.ZPassFunc[1] = zpass;
+ ctx->Stencil.FailFunc[1] = sfail;
+ set = GL_TRUE;
+ }
}
- if (ctx->Driver.StencilOpSeparate) {
- ctx->Driver.StencilOpSeparate(ctx, face, fail, zfail, zpass);
+ if (set && ctx->Driver.StencilOpSeparate) {
+ ctx->Driver.StencilOpSeparate(ctx, face, sfail, zfail, zpass);
}
}
@@ -438,20 +454,9 @@ _mesa_StencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
_mesa_error(ctx, GL_INVALID_ENUM, "glStencilFuncSeparate(face)");
return;
}
-
- switch (func) {
- case GL_NEVER:
- case GL_LESS:
- case GL_LEQUAL:
- case GL_GREATER:
- case GL_GEQUAL:
- case GL_EQUAL:
- case GL_NOTEQUAL:
- case GL_ALWAYS:
- break;
- default:
- _mesa_error(ctx, GL_INVALID_ENUM, "glStencilFuncSeparate(func)");
- return;
+ if (!validate_stencil_func(ctx, func)) {
+ _mesa_error(ctx, GL_INVALID_ENUM, "glStencilFuncSeparate(func)");
+ return;
}
ref = CLAMP(ref, 0, stencilMax);
diff --git a/src/mesa/main/stencil.h b/src/mesa/main/stencil.h
index 27c6362023c..252ac932acd 100644
--- a/src/mesa/main/stencil.h
+++ b/src/mesa/main/stencil.h
@@ -5,9 +5,9 @@
/*
* Mesa 3-D graphics library
- * Version: 6.5
+ * Version: 7.1
*
- * Copyright (C) 1999-2005 Brian Paul All Rights Reserved.
+ * Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
@@ -64,6 +64,9 @@ _mesa_StencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
extern void GLAPIENTRY
+_mesa_StencilFuncSeparateATI(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask);
+
+extern void GLAPIENTRY
_mesa_StencilMaskSeparate(GLenum face, GLuint mask);
diff --git a/src/mesa/main/texenvprogram.c b/src/mesa/main/texenvprogram.c
index 1a46c10ffa3..47f3adbd0d8 100644
--- a/src/mesa/main/texenvprogram.c
+++ b/src/mesa/main/texenvprogram.c
@@ -35,10 +35,11 @@
#include "texenvprogram.h"
/**
- * According to Glean's texCombine test, no more than 21 instructions
- * are needed. Allow a few extra just in case.
+ * This MAX is probably a bit generous, but that's OK. There can be
+ * up to four instructions per texture unit (TEX + 3 for combine),
+ * then there's fog and specular add.
*/
-#define MAX_INSTRUCTIONS 24
+#define MAX_INSTRUCTIONS ((MAX_TEXTURE_UNITS * 4) + 12)
#define DISASSEM (MESA_VERBOSE & VERBOSE_DISASSEM)
@@ -460,8 +461,8 @@ static void emit_dst( struct prog_dst_register *dst,
dst->File = ureg.file;
dst->Index = ureg.idx;
dst->WriteMask = mask;
- dst->CondMask = 0;
- dst->CondSwizzle = 0;
+ dst->CondMask = COND_TR; /* always pass cond test */
+ dst->CondSwizzle = SWIZZLE_NOOP;
}
static struct prog_instruction *
@@ -476,7 +477,9 @@ emit_op(struct texenv_fragment_program *p,
{
GLuint nr = p->program->Base.NumInstructions++;
struct prog_instruction *inst = &p->program->Base.Instructions[nr];
-
+
+ assert(nr < MAX_INSTRUCTIONS);
+
_mesa_init_instructions(inst, 1);
inst->Opcode = op;
diff --git a/src/mesa/main/version.h b/src/mesa/main/version.h
index 2c84579918d..2d3c68bca99 100644
--- a/src/mesa/main/version.h
+++ b/src/mesa/main/version.h
@@ -1,6 +1,6 @@
/*
* Mesa 3-D graphics library
- * Version: 7.0.1
+ * Version: 7.0.2
*
* Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
*
@@ -30,8 +30,8 @@
/* Mesa version */
#define MESA_MAJOR 7
#define MESA_MINOR 0
-#define MESA_PATCH 1
-#define MESA_VERSION_STRING "7.0.1"
+#define MESA_PATCH 2
+#define MESA_VERSION_STRING "7.0.2"
/* To make version comparison easy */
#define MESA_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))
diff --git a/src/mesa/shader/arbprogparse.c b/src/mesa/shader/arbprogparse.c
index 5027264f031..6a87a1779e7 100644
--- a/src/mesa/shader/arbprogparse.c
+++ b/src/mesa/shader/arbprogparse.c
@@ -624,6 +624,41 @@ program_error(GLcontext *ctx, GLint position, const char *descrip)
}
+/**
+ * As above, but with an extra string parameter for more info.
+ */
+static void
+program_error2(GLcontext *ctx, GLint position, const char *descrip,
+ const char *var)
+{
+ if (descrip) {
+ const char *prefix = "glProgramString(", *suffix = ")";
+ char *str = (char *) _mesa_malloc(_mesa_strlen(descrip) +
+ _mesa_strlen(": ") +
+ _mesa_strlen(var) +
+ _mesa_strlen(prefix) +
+ _mesa_strlen(suffix) + 1);
+ if (str) {
+ _mesa_sprintf(str, "%s%s: %s%s", prefix, descrip, var, suffix);
+ _mesa_error(ctx, GL_INVALID_OPERATION, str);
+ _mesa_free(str);
+ }
+ }
+ {
+ char *str = (char *) _mesa_malloc(_mesa_strlen(descrip) +
+ _mesa_strlen(": ") +
+ _mesa_strlen(var) + 1);
+ if (str) {
+ _mesa_sprintf(str, "%s: %s", descrip, var);
+ }
+ _mesa_set_program_error(ctx, position, str);
+ if (str) {
+ _mesa_free(str);
+ }
+ }
+}
+
+
/**
* constructs an integer from 4 GLubytes in LE format
@@ -1217,10 +1252,10 @@ parse_state_single_item (GLcontext * ctx, const GLubyte ** inst,
state_tokens[1] = coord;
/* EYE or OBJECT */
- type = *(*inst++);
+ type = *(*inst)++;
/* 0 - s, 1 - t, 2 - r, 3 - q */
- coord = *(*inst++);
+ coord = *(*inst)++;
if (type == TEX_GEN_EYE) {
switch (coord) {
@@ -1236,6 +1271,9 @@ parse_state_single_item (GLcontext * ctx, const GLubyte ** inst,
case COMPONENT_W:
state_tokens[2] = STATE_TEXGEN_EYE_Q;
break;
+ default:
+ _mesa_problem(ctx, "bad texgen component in "
+ "parse_state_single_item()");
}
}
else {
@@ -1252,6 +1290,9 @@ parse_state_single_item (GLcontext * ctx, const GLubyte ** inst,
case COMPONENT_W:
state_tokens[2] = STATE_TEXGEN_OBJECT_Q;
break;
+ default:
+ _mesa_problem(ctx, "bad texgen component in "
+ "parse_state_single_item()");
}
}
}
@@ -1274,7 +1315,7 @@ parse_state_single_item (GLcontext * ctx, const GLubyte ** inst,
break;
case STATE_POINT:
- switch (*(*inst++)) {
+ switch (*(*inst)++) {
case POINT_SIZE:
state_tokens[0] = STATE_POINT_SIZE;
break;
@@ -1678,18 +1719,14 @@ parse_attrib (GLcontext * ctx, const GLubyte ** inst, struct var_cache **vc_head
struct arb_program *Program)
{
GLuint found;
- char *error_msg;
struct var_cache *attrib_var;
attrib_var = parse_string (inst, vc_head, Program, &found);
Program->Position = parse_position (inst);
if (found) {
- error_msg = (char *)
- _mesa_malloc (_mesa_strlen ((char *) attrib_var->name) + 40);
- _mesa_sprintf (error_msg, "Duplicate Varible Declaration: %s",
- attrib_var->name);
- program_error(ctx, Program->Position, error_msg);
- _mesa_free (error_msg);
+ program_error2(ctx, Program->Position,
+ "Duplicate variable declaration",
+ (char *) attrib_var->name);
return 1;
}
@@ -1867,12 +1904,9 @@ parse_param (GLcontext * ctx, const GLubyte ** inst, struct var_cache **vc_head,
Program->Position = parse_position (inst);
if (found) {
- char *error_msg = (char *)
- _mesa_malloc (_mesa_strlen ((char *) param_var->name) + 40);
- _mesa_sprintf (error_msg, "Duplicate Varible Declaration: %s",
- param_var->name);
- program_error (ctx, Program->Position, error_msg);
- _mesa_free (error_msg);
+ program_error2(ctx, Program->Position,
+ "Duplicate variable declaration",
+ (char *) param_var->name);
return 1;
}
@@ -1967,12 +2001,9 @@ parse_temp (GLcontext * ctx, const GLubyte ** inst, struct var_cache **vc_head,
temp_var = parse_string (inst, vc_head, Program, &found);
Program->Position = parse_position (inst);
if (found) {
- char *error_msg = (char *)
- _mesa_malloc (_mesa_strlen ((char *) temp_var->name) + 40);
- _mesa_sprintf (error_msg, "Duplicate Varible Declaration: %s",
- temp_var->name);
- program_error(ctx, Program->Position, error_msg);
- _mesa_free (error_msg);
+ program_error2(ctx, Program->Position,
+ "Duplicate variable declaration",
+ (char *) temp_var->name);
return 1;
}
@@ -2013,12 +2044,9 @@ parse_output (GLcontext * ctx, const GLubyte ** inst, struct var_cache **vc_head
output_var = parse_string (inst, vc_head, Program, &found);
Program->Position = parse_position (inst);
if (found) {
- char *error_msg = (char *)
- _mesa_malloc (_mesa_strlen ((char *) output_var->name) + 40);
- _mesa_sprintf (error_msg, "Duplicate Varible Declaration: %s",
- output_var->name);
- program_error (ctx, Program->Position, error_msg);
- _mesa_free (error_msg);
+ program_error2(ctx, Program->Position,
+ "Duplicate variable declaration",
+ (char *) output_var->name);
return 1;
}
@@ -2044,12 +2072,9 @@ parse_alias (GLcontext * ctx, const GLubyte ** inst, struct var_cache **vc_head,
Program->Position = parse_position (inst);
if (found) {
- char *error_msg = (char *)
- _mesa_malloc (_mesa_strlen ((char *) temp_var->name) + 40);
- _mesa_sprintf (error_msg, "Duplicate Varible Declaration: %s",
- temp_var->name);
- program_error(ctx, Program->Position, error_msg);
- _mesa_free (error_msg);
+ program_error2(ctx, Program->Position,
+ "Duplicate variable declaration",
+ (char *) temp_var->name);
return 1;
}
@@ -2059,12 +2084,9 @@ parse_alias (GLcontext * ctx, const GLubyte ** inst, struct var_cache **vc_head,
if (!found)
{
- char *error_msg = (char *)
- _mesa_malloc (_mesa_strlen ((char *) temp_var->name) + 40);
- _mesa_sprintf (error_msg, "Alias value %s is not defined",
- temp_var->alias_binding->name);
- program_error (ctx, Program->Position, error_msg);
- _mesa_free (error_msg);
+ program_error2(ctx, Program->Position,
+ "Undefined alias value",
+ (char *) temp_var->alias_binding->name);
return 1;
}
@@ -2087,12 +2109,9 @@ parse_address (GLcontext * ctx, const GLubyte ** inst, struct var_cache **vc_hea
temp_var = parse_string (inst, vc_head, Program, &found);
Program->Position = parse_position (inst);
if (found) {
- char *error_msg = (char *)
- _mesa_malloc (_mesa_strlen ((char *) temp_var->name) + 40);
- _mesa_sprintf (error_msg, "Duplicate Varible Declaration: %s",
- temp_var->name);
- program_error (ctx, Program->Position, error_msg);
- _mesa_free (error_msg);
+ program_error2(ctx, Program->Position,
+ "Duplicate variable declaration",
+ (char *) temp_var->name);
return 1;
}
@@ -2445,8 +2464,9 @@ parse_src_reg (GLcontext * ctx, const GLubyte ** inst,
Program->Position = parse_position (inst);
if (!found) {
- program_error(ctx, Program->Position,
- "2: Undefined variable"); /* src->name */
+ program_error2(ctx, Program->Position,
+ "Undefined variable",
+ (char *) src->name);
return 1;
}
diff --git a/src/mesa/shader/prog_statevars.c b/src/mesa/shader/prog_statevars.c
index 975a617ac89..d37d7fb9bf4 100644
--- a/src/mesa/shader/prog_statevars.c
+++ b/src/mesa/shader/prog_statevars.c
@@ -507,6 +507,8 @@ _mesa_program_state_flags(const gl_state_index state[STATE_LENGTH])
switch (state[1]) {
case STATE_TEXRECT_SCALE:
return _NEW_TEXTURE;
+ case STATE_FOG_PARAMS_OPTIMIZED:
+ return _NEW_FOG;
default:
/* unknown state indexes are silently ignored and
* no flag set, since it is handled by the driver.
diff --git a/src/mesa/sparc/glapi_sparc.S b/src/mesa/sparc/glapi_sparc.S
index 420391a2d00..9709b030929 100644
--- a/src/mesa/sparc/glapi_sparc.S
+++ b/src/mesa/sparc/glapi_sparc.S
@@ -837,6 +837,7 @@ __glapi_sparc_icache_flush: /* %o0 = insn_addr */
.globl gl_dispatch_stub_769 ; .type gl_dispatch_stub_769,#function
.globl gl_dispatch_stub_770 ; .type gl_dispatch_stub_770,#function
.globl gl_dispatch_stub_771 ; .type gl_dispatch_stub_771,#function
+ .globl gl_dispatch_stub_772 ; .type gl_dispatch_stub_772,#function
.globl _mesa_sparc_glapi_begin ; .type _mesa_sparc_glapi_begin,#function
_mesa_sparc_glapi_begin:
@@ -1612,6 +1613,7 @@ _mesa_sparc_glapi_begin:
GL_STUB(gl_dispatch_stub_769, _gloffset__dispatch_stub_769)
GL_STUB(gl_dispatch_stub_770, _gloffset__dispatch_stub_770)
GL_STUB(gl_dispatch_stub_771, _gloffset__dispatch_stub_771)
+ GL_STUB(gl_dispatch_stub_772, _gloffset__dispatch_stub_772)
.globl _mesa_sparc_glapi_end ; .type _mesa_sparc_glapi_end,#function
_mesa_sparc_glapi_end:
diff --git a/src/mesa/swrast/s_copypix.c b/src/mesa/swrast/s_copypix.c
index 012839cb88a..ac7fa21fe0c 100644
--- a/src/mesa/swrast/s_copypix.c
+++ b/src/mesa/swrast/s_copypix.c
@@ -1,6 +1,6 @@
/*
* Mesa 3-D graphics library
- * Version: 6.5.3
+ * Version: 7.0.2
*
* Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
*
@@ -71,13 +71,20 @@ regions_overlap(GLint srcx, GLint srcy,
}
else {
/* add one pixel of slop when zooming, just to be safe */
- if ((srcx > dstx + (width * zoomX) + 1) || (srcx + width + 1 < dstx)) {
+ if (srcx > (dstx + ((zoomX > 0.0F) ? (width * zoomX + 1.0F) : 0.0F))) {
+ /* src is completely right of dest */
+ return GL_FALSE;
+ }
+ else if (srcx + width + 1.0F < dstx + ((zoomX > 0.0F) ? 0.0F : (width * zoomX))) {
+ /* src is completely left of dest */
return GL_FALSE;
}
else if ((srcy < dsty) && (srcy + height < dsty + (height * zoomY))) {
+ /* src is completely below dest */
return GL_FALSE;
}
else if ((srcy > dsty) && (srcy + height > dsty + (height * zoomY))) {
+ /* src is completely above dest */
return GL_FALSE;
}
else {
diff --git a/src/mesa/swrast/s_span.c b/src/mesa/swrast/s_span.c
index 097d2c7b51c..5814400b0fe 100644
--- a/src/mesa/swrast/s_span.c
+++ b/src/mesa/swrast/s_span.c
@@ -61,8 +61,11 @@ _swrast_span_default_z( GLcontext *ctx, SWspan *span )
const GLfloat depthMax = ctx->DrawBuffer->_DepthMaxF;
if (ctx->DrawBuffer->Visual.depthBits <= 16)
span->z = FloatToFixed(ctx->Current.RasterPos[2] * depthMax + 0.5F);
- else
- span->z = (GLint) (ctx->Current.RasterPos[2] * depthMax + 0.5F);
+ else {
+ GLfloat tmpf = ctx->Current.RasterPos[2] * depthMax;
+ tmpf = MIN2(tmpf, depthMax);
+ span->z = (GLint) tmpf;
+ }
span->zStep = 0;
span->interpMask |= SPAN_Z;
}
diff --git a/src/mesa/swrast_setup/ss_tritmp.h b/src/mesa/swrast_setup/ss_tritmp.h
index 1fdf0cb5999..59c534ee5ee 100644
--- a/src/mesa/swrast_setup/ss_tritmp.h
+++ b/src/mesa/swrast_setup/ss_tritmp.h
@@ -198,14 +198,16 @@ static void TAG(quadfunc)( GLcontext *ctx, GLuint v0,
{
if (IND & SS_UNFILLED_BIT) {
struct vertex_buffer *VB = &TNL_CONTEXT(ctx)->vb;
- GLubyte ef1 = VB->EdgeFlag[v1];
- GLubyte ef3 = VB->EdgeFlag[v3];
- VB->EdgeFlag[v1] = 0;
- TAG(triangle)( ctx, v0, v1, v3 );
- VB->EdgeFlag[v1] = ef1;
- VB->EdgeFlag[v3] = 0;
- TAG(triangle)( ctx, v1, v2, v3 );
- VB->EdgeFlag[v3] = ef3;
+ if (VB->EdgeFlag) { /* XXX this test shouldn't be needed (bug 12614) */
+ GLubyte ef1 = VB->EdgeFlag[v1];
+ GLubyte ef3 = VB->EdgeFlag[v3];
+ VB->EdgeFlag[v1] = 0;
+ TAG(triangle)( ctx, v0, v1, v3 );
+ VB->EdgeFlag[v1] = ef1;
+ VB->EdgeFlag[v3] = 0;
+ TAG(triangle)( ctx, v1, v2, v3 );
+ VB->EdgeFlag[v3] = ef3;
+ }
} else {
TAG(triangle)( ctx, v0, v1, v3 );
TAG(triangle)( ctx, v1, v2, v3 );
diff --git a/src/mesa/tnl/t_draw.c b/src/mesa/tnl/t_draw.c
index 5b2b2ae5495..ff50d91a165 100644
--- a/src/mesa/tnl/t_draw.c
+++ b/src/mesa/tnl/t_draw.c
@@ -1,9 +1,8 @@
-
/*
* Mesa 3-D graphics library
- * Version: 6.5
+ * Version: 7.0.2
*
- * Copyright (C) 1999-2006 Brian Paul All Rights Reserved.
+ * Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
@@ -368,7 +367,7 @@ void _tnl_draw_prims( GLcontext *ctx,
_tnl_draw_prims );
return;
}
- else if (max_index >= max) {
+ else if (max_index > max) {
/* The software TNL pipeline has a fixed amount of storage for
* vertices and it is necessary to split incoming drawing commands
* if they exceed that limit.
diff --git a/src/mesa/tnl/t_vb_fog.c b/src/mesa/tnl/t_vb_fog.c
index 5440ff7894d..d8bca3820bc 100644
--- a/src/mesa/tnl/t_vb_fog.c
+++ b/src/mesa/tnl/t_vb_fog.c
@@ -41,7 +41,6 @@
struct fog_stage_data {
GLvector4f fogcoord; /* has actual storage allocated */
- GLvector4f input; /* points into VB->EyePtr Z values */
};
#define FOG_STAGE_DATA(stage) ((struct fog_stage_data *)stage->privatePtr)
@@ -91,7 +90,8 @@ init_static_data( void )
* evaluating the GL_LINEAR, GL_EXP or GL_EXP2 fog function.
* Fog coordinates are distances from the eye (typically between the
* near and far clip plane distances).
- * Note the fog (eye Z) coords may be negative so we use ABS(z) below.
+ * Note that fogcoords may be negative, if eye z is source absolute
+ * value must be taken earlier.
* Fog blend factors are in the range [0,1].
*/
static void
@@ -114,7 +114,7 @@ compute_fog_blend_factors(GLcontext *ctx, GLvector4f *out, const GLvector4f *in)
else
d = 1.0F / (ctx->Fog.End - ctx->Fog.Start);
for ( i = 0 ; i < n ; i++, STRIDE_F(v, stride)) {
- const GLfloat z = FABSF(*v);
+ const GLfloat z = *v;
GLfloat f = (end - z) * d;
data[i][0] = CLAMP(f, 0.0F, 1.0F);
}
@@ -122,14 +122,14 @@ compute_fog_blend_factors(GLcontext *ctx, GLvector4f *out, const GLvector4f *in)
case GL_EXP:
d = ctx->Fog.Density;
for ( i = 0 ; i < n ; i++, STRIDE_F(v,stride)) {
- const GLfloat z = FABSF(*v);
+ const GLfloat z = *v;
NEG_EXP( data[i][0], d * z );
}
break;
case GL_EXP2:
d = ctx->Fog.Density*ctx->Fog.Density;
for ( i = 0 ; i < n ; i++, STRIDE_F(v, stride)) {
- const GLfloat z = FABSF(*v);
+ const GLfloat z = *v;
NEG_EXP( data[i][0], d * z * z );
}
break;
@@ -153,6 +153,8 @@ run_fog_stage(GLcontext *ctx, struct tnl_pipeline_stage *stage)
if (ctx->Fog.FogCoordinateSource == GL_FRAGMENT_DEPTH_EXT) {
+ GLuint i;
+ GLfloat *coord;
/* Fog is computed from vertex or fragment Z values */
/* source = VB->ObjPtr or VB->EyePtr coords */
/* dest = VB->AttribPtr[_TNL_ATTRIB_FOG] = fog stage private storage */
@@ -167,11 +169,10 @@ run_fog_stage(GLcontext *ctx, struct tnl_pipeline_stage *stage)
*/
input = &store->fogcoord;
- /* NOTE: negate plane here so we get positive fog coords! */
- plane[0] = -m[2];
- plane[1] = -m[6];
- plane[2] = -m[10];
- plane[3] = -m[14];
+ plane[0] = m[2];
+ plane[1] = m[6];
+ plane[2] = m[10];
+ plane[3] = m[14];
/* Full eye coords weren't required, just calculate the
* eye Z values.
*/
@@ -180,18 +181,29 @@ run_fog_stage(GLcontext *ctx, struct tnl_pipeline_stage *stage)
VB->ObjPtr, plane );
input->count = VB->ObjPtr->count;
+
+ /* make sure coords are really positive
+ NOTE should avoid going through array twice */
+ coord = input->start;
+ for (i = 0; i < input->count; i++) {
+ *coord = FABSF(*coord);
+ STRIDE_F(coord, input->stride);
+ }
}
else {
- /* fog coordinates = eye Z coordinates (use ABS later) */
- input = &store->input;
+ /* fog coordinates = eye Z coordinates - need to copy for ABS */
+ input = &store->fogcoord;
if (VB->EyePtr->size < 2)
_mesa_vector4f_clean_elem( VB->EyePtr, VB->Count, 2 );
- input->data = (GLfloat (*)[4]) &(VB->EyePtr->data[0][2]);
- input->start = VB->EyePtr->start+2;
- input->stride = VB->EyePtr->stride;
+ input->stride = 4 * sizeof(GLfloat);
input->count = VB->EyePtr->count;
+ coord = VB->EyePtr->start;
+ for (i = 0 ; i < VB->EyePtr->count; i++) {
+ input->data[i][0] = FABSF(coord[2]);
+ STRIDE_F(coord, VB->EyePtr->stride);
+ }
}
}
else {
@@ -234,7 +246,6 @@ alloc_fog_data(GLcontext *ctx, struct tnl_pipeline_stage *stage)
return GL_FALSE;
_mesa_vector4f_alloc( &store->fogcoord, 0, tnl->vb.Size, 32 );
- _mesa_vector4f_init( &store->input, 0, NULL );
if (!inited)
init_static_data();
diff --git a/src/mesa/tnl/t_vertex_sse.c b/src/mesa/tnl/t_vertex_sse.c
index ad4cc62d5f7..9515d9f81f5 100644
--- a/src/mesa/tnl/t_vertex_sse.c
+++ b/src/mesa/tnl/t_vertex_sse.c
@@ -39,6 +39,12 @@
#include "x86/common_x86_asm.h"
+/**
+ * Number of bytes to allocate for generated SSE functions
+ */
+#define MAX_SSE_CODE_SIZE 1024
+
+
#define X 0
#define Y 1
#define Z 2
@@ -348,8 +354,6 @@ static GLboolean build_vertex_emit( struct x86_program *p )
struct x86_reg vp1 = x86_make_reg(file_XMM, 2);
GLubyte *fixup, *label;
- x86_init_func(&p->func);
-
/* Push a few regs?
*/
x86_push(&p->func, countEBP);
@@ -621,7 +625,10 @@ static GLboolean build_vertex_emit( struct x86_program *p )
x86_pop(&p->func, countEBP);
x86_ret(&p->func);
+ assert(!vtx->emit);
vtx->emit = (tnl_emit_func)x86_get_func(&p->func);
+
+ assert( (char *) p->func.csr - (char *) p->func.store <= MAX_SSE_CODE_SIZE );
return GL_TRUE;
}
@@ -646,7 +653,10 @@ void _tnl_generate_sse_emit( GLcontext *ctx )
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, MAX_SSE_CODE_SIZE)) {
+ vtx->emit = NULL;
+ return;
+ }
if (build_vertex_emit(&p)) {
_tnl_register_fastpath( vtx, GL_TRUE );
diff --git a/src/mesa/tnl/t_vp_build.c b/src/mesa/tnl/t_vp_build.c
index dff062a417c..b7bc1977237 100644
--- a/src/mesa/tnl/t_vp_build.c
+++ b/src/mesa/tnl/t_vp_build.c
@@ -1,8 +1,8 @@
/*
* Mesa 3-D graphics library
- * Version: 6.5
+ * Version: 7.1
*
- * Copyright (C) 2006 Tungsten Graphics All Rights Reserved.
+ * Copyright (C) 2007 Tungsten Graphics All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
@@ -33,11 +33,11 @@
#include "glheader.h"
#include "macros.h"
#include "enums.h"
-#include "program.h"
-#include "prog_instruction.h"
-#include "prog_parameter.h"
-#include "prog_print.h"
-#include "prog_statevars.h"
+#include "shader/program.h"
+#include "shader/prog_instruction.h"
+#include "shader/prog_parameter.h"
+#include "shader/prog_print.h"
+#include "shader/prog_statevars.h"
#include "t_context.h" /* NOTE: very light dependency on this */
#include "t_vp_build.h"
@@ -457,9 +457,13 @@ static void register_matrix_param5( struct tnl_program *p,
}
+/**
+ * Convert a ureg source register to a prog_src_register.
+ */
static void emit_arg( struct prog_src_register *src,
struct ureg reg )
{
+ assert(reg.file != PROGRAM_OUTPUT);
src->File = reg.file;
src->Index = reg.idx;
src->Swizzle = reg.swz;
@@ -469,15 +473,24 @@ static void emit_arg( struct prog_src_register *src,
src->RelAddr = 0;
}
+/**
+ * Convert a ureg dest register to a prog_dst_register.
+ */
static void emit_dst( struct prog_dst_register *dst,
struct ureg reg, GLuint mask )
{
+ /* Check for legal output register type. UNDEFINED will occur in
+ * instruction that don't produce a result (like END).
+ */
+ assert(reg.file == PROGRAM_TEMPORARY ||
+ reg.file == PROGRAM_OUTPUT ||
+ reg.file == PROGRAM_UNDEFINED);
dst->File = reg.file;
dst->Index = reg.idx;
/* allow zero as a shorthand for xyzw */
dst->WriteMask = mask ? mask : WRITEMASK_XYZW;
- dst->CondMask = COND_TR;
- dst->CondSwizzle = 0;
+ dst->CondMask = COND_TR; /* always pass cond test */
+ dst->CondSwizzle = SWIZZLE_NOOP;
dst->CondSrc = 0;
dst->pad = 0;
}
@@ -500,7 +513,7 @@ static void debug_insn( struct prog_instruction *inst, const char *fn,
static void emit_op3fn(struct tnl_program *p,
- GLuint op,
+ enum prog_opcode op,
struct ureg dest,
GLuint mask,
struct ureg src0,
@@ -686,7 +699,7 @@ static struct ureg get_eye_normal( struct tnl_program *p )
struct ureg rescale = register_param2(p, STATE_INTERNAL,
STATE_NORMAL_SCALE);
- emit_op2( p, OPCODE_MUL, p->eye_normal, 0, normal,
+ emit_op2( p, OPCODE_MUL, p->eye_normal, 0, p->eye_normal,
swizzle1(rescale, X));
}
}
@@ -956,13 +969,19 @@ static void build_lighting( struct tnl_program *p )
STATE_POSITION);
struct ureg V = get_eye_position(p);
struct ureg dist = get_temp(p);
+ struct ureg tmpPpli = get_temp(p);
VPpli = get_temp(p);
half = get_temp(p);
- /* Calulate VPpli vector
+ /* In homogeneous object coordinates
+ */
+ emit_op1(p, OPCODE_RCP, dist, 0, swizzle1(Ppli, W));
+ emit_op2(p, OPCODE_MUL, tmpPpli, 0, Ppli, dist);
+
+ /* Calculate VPpli vector
*/
- emit_op2(p, OPCODE_SUB, VPpli, 0, Ppli, V);
+ emit_op2(p, OPCODE_SUB, VPpli, 0, tmpPpli, V);
/* Normalize VPpli. The dist value also used in
* attenuation below.
@@ -994,6 +1013,7 @@ static void build_lighting( struct tnl_program *p )
emit_normalize_vec3(p, half, half);
release_temp(p, dist);
+ release_temp(p, tmpPpli);
}
/* Calculate dot products:
@@ -1103,7 +1123,7 @@ static void build_fog( struct tnl_program *p )
{
struct ureg fog = register_output(p, VERT_RESULT_FOGC);
struct ureg input;
-
+
if (p->state->fog_source_is_depth) {
input = swizzle1(get_eye_position(p), Z);
}
@@ -1111,39 +1131,48 @@ static void build_fog( struct tnl_program *p )
input = swizzle1(register_input(p, VERT_ATTRIB_FOG), X);
}
- if (p->state->tnl_do_vertex_fog) {
+ if (p->state->fog_mode && p->state->tnl_do_vertex_fog) {
struct ureg params = register_param2(p, STATE_INTERNAL,
STATE_FOG_PARAMS_OPTIMIZED);
struct ureg tmp = get_temp(p);
+ GLboolean useabs = (p->state->fog_mode != FOG_EXP2);
+
+ if (useabs) {
+ emit_op1(p, OPCODE_ABS, tmp, 0, input);
+ }
switch (p->state->fog_mode) {
case FOG_LINEAR: {
struct ureg id = get_identity_param(p);
- emit_op3(p, OPCODE_MAD, tmp, 0, input, swizzle1(params,X), swizzle1(params,Y));
+ emit_op3(p, OPCODE_MAD, tmp, 0, useabs ? tmp : input,
+ swizzle1(params,X), swizzle1(params,Y));
emit_op2(p, OPCODE_MAX, tmp, 0, tmp, swizzle1(id,X)); /* saturate */
emit_op2(p, OPCODE_MIN, fog, WRITEMASK_X, tmp, swizzle1(id,W));
break;
}
case FOG_EXP:
- emit_op1(p, OPCODE_ABS, tmp, 0, input);
- emit_op2(p, OPCODE_MUL, tmp, 0, tmp, swizzle1(params,Z));
+ emit_op2(p, OPCODE_MUL, tmp, 0, useabs ? tmp : input,
+ swizzle1(params,Z));
emit_op1(p, OPCODE_EX2, fog, WRITEMASK_X, negate(tmp));
break;
case FOG_EXP2:
emit_op2(p, OPCODE_MUL, tmp, 0, input, swizzle1(params,W));
- emit_op2(p, OPCODE_MUL, tmp, 0, tmp, tmp);
+ emit_op2(p, OPCODE_MUL, tmp, 0, tmp, tmp);
emit_op1(p, OPCODE_EX2, fog, WRITEMASK_X, negate(tmp));
break;
}
-
+
release_temp(p, tmp);
}
else {
/* results = incoming fog coords (compute fog per-fragment later)
*
* KW: Is it really necessary to do anything in this case?
+ * BP: Yes, we always need to compute the absolute value, unless
+ * we want to push that down into the fragment program...
*/
- emit_op1(p, OPCODE_MOV, fog, WRITEMASK_X, input);
+ GLboolean useabs = GL_TRUE;
+ emit_op1(p, useabs ? OPCODE_ABS : OPCODE_MOV, fog, WRITEMASK_X, input);
}
}
diff --git a/src/mesa/vbo/vbo_save_draw.c b/src/mesa/vbo/vbo_save_draw.c
index 8940551d08b..697d00e9d11 100644
--- a/src/mesa/vbo/vbo_save_draw.c
+++ b/src/mesa/vbo/vbo_save_draw.c
@@ -132,9 +132,11 @@ static void vbo_bind_vertex_list( GLcontext *ctx,
}
for (attr = 0; attr < VBO_ATTRIB_MAX; attr++) {
- if (node->attrsz[attr]) {
+ GLuint src = map[attr];
+
+ if (node->attrsz[src]) {
arrays[attr].Ptr = (const GLubyte *)data;
- arrays[attr].Size = node->attrsz[attr];
+ arrays[attr].Size = node->attrsz[src];
arrays[attr].StrideB = node->vertex_size * sizeof(GLfloat);
arrays[attr].Stride = node->vertex_size * sizeof(GLfloat);
arrays[attr].Type = GL_FLOAT;
diff --git a/src/mesa/x86-64/glapi_x86-64.S b/src/mesa/x86-64/glapi_x86-64.S
index 75366e4d305..e58f8f1bc0b 100644
--- a/src/mesa/x86-64/glapi_x86-64.S
+++ b/src/mesa/x86-64/glapi_x86-64.S
@@ -29175,7 +29175,11 @@ GL_PREFIX(_dispatch_stub_770):
pushq %rdi
pushq %rsi
pushq %rdx
+ pushq %rcx
+ pushq %rbp
call _x86_64_get_dispatch@PLT
+ popq %rbp
+ popq %rcx
popq %rdx
popq %rsi
popq %rdi
@@ -29191,7 +29195,11 @@ GL_PREFIX(_dispatch_stub_770):
pushq %rdi
pushq %rsi
pushq %rdx
+ pushq %rcx
+ pushq %rbp
call _glapi_get_dispatch
+ popq %rbp
+ popq %rcx
popq %rdx
popq %rsi
popq %rdi
@@ -29238,6 +29246,44 @@ GL_PREFIX(_dispatch_stub_771):
#endif /* defined(GLX_USE_TLS) */
.size GL_PREFIX(_dispatch_stub_771), .-GL_PREFIX(_dispatch_stub_771)
+ .p2align 4,,15
+ .globl GL_PREFIX(_dispatch_stub_772)
+ .type GL_PREFIX(_dispatch_stub_772), @function
+ HIDDEN(GL_PREFIX(_dispatch_stub_772))
+GL_PREFIX(_dispatch_stub_772):
+#if defined(GLX_USE_TLS)
+ call _x86_64_get_dispatch@PLT
+ movq 6176(%rax), %r11
+ jmp *%r11
+#elif defined(PTHREADS)
+ pushq %rdi
+ pushq %rsi
+ pushq %rdx
+ call _x86_64_get_dispatch@PLT
+ popq %rdx
+ popq %rsi
+ popq %rdi
+ movq 6176(%rax), %r11
+ jmp *%r11
+#else
+ movq _glapi_Dispatch(%rip), %rax
+ testq %rax, %rax
+ je 1f
+ movq 6176(%rax), %r11
+ jmp *%r11
+1:
+ pushq %rdi
+ pushq %rsi
+ pushq %rdx
+ call _glapi_get_dispatch
+ popq %rdx
+ popq %rsi
+ popq %rdi
+ movq 6176(%rax), %r11
+ jmp *%r11
+#endif /* defined(GLX_USE_TLS) */
+ .size GL_PREFIX(_dispatch_stub_772), .-GL_PREFIX(_dispatch_stub_772)
+
.globl GL_PREFIX(ArrayElementEXT) ; .set GL_PREFIX(ArrayElementEXT), GL_PREFIX(ArrayElement)
.globl GL_PREFIX(BindTextureEXT) ; .set GL_PREFIX(BindTextureEXT), GL_PREFIX(BindTexture)
.globl GL_PREFIX(DrawArraysEXT) ; .set GL_PREFIX(DrawArraysEXT), GL_PREFIX(DrawArrays)
diff --git a/src/mesa/x86-64/xform4.S b/src/mesa/x86-64/xform4.S
index 65328f6666e..f512b3ac6d4 100644
--- a/src/mesa/x86-64/xform4.S
+++ b/src/mesa/x86-64/xform4.S
@@ -1,10 +1,8 @@
-/* $Id: xform4.S,v 1.2 2006/04/17 18:58:24 krh Exp $ */
-
/*
* Mesa 3-D graphics library
- * Version: 3.5
+ * Version: 7.0.1
*
- * Copyright (C) 1999-2001 Brian Paul All Rights Reserved.
+ * Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
@@ -64,7 +62,7 @@ _mesa_x86_64_transform_points4_general:
p4_general_loop:
- movaps (%rdx), %xmm8 /* ox | oy | oz | ow */
+ movups (%rdx), %xmm8 /* ox | oy | oz | ow */
prefetchw 16(%rdi)
pshufd $0x00, %xmm8, %xmm0 /* ox | ox | ox | ox */
@@ -149,7 +147,7 @@ _mesa_x86_64_transform_points4_3d:
p4_3d_loop:
- movaps (%rdx), %xmm8 /* ox | oy | oz | ow */
+ movups (%rdx), %xmm8 /* ox | oy | oz | ow */
prefetchw 16(%rdi)
pshufd $0x00, %xmm8, %xmm0 /* ox | ox | ox | ox */
diff --git a/src/mesa/x86/glapi_x86.S b/src/mesa/x86/glapi_x86.S
index 9e19e38697c..ef2d64a0cec 100644
--- a/src/mesa/x86/glapi_x86.S
+++ b/src/mesa/x86/glapi_x86.S
@@ -947,14 +947,16 @@ GLNAME(gl_dispatch_functions_start):
GL_STUB(RenderbufferStorageEXT, _gloffset_RenderbufferStorageEXT, RenderbufferStorageEXT@16)
GL_STUB(_dispatch_stub_767, _gloffset_BlitFramebufferEXT, _dispatch_stub_767@40)
HIDDEN(GL_PREFIX(_dispatch_stub_767, _dispatch_stub_767@40))
- GL_STUB(_dispatch_stub_768, _gloffset_ProgramEnvParameters4fvEXT, _dispatch_stub_768@16)
+ GL_STUB(_dispatch_stub_768, _gloffset_StencilFuncSeparateATI, _dispatch_stub_768@16)
HIDDEN(GL_PREFIX(_dispatch_stub_768, _dispatch_stub_768@16))
- GL_STUB(_dispatch_stub_769, _gloffset_ProgramLocalParameters4fvEXT, _dispatch_stub_769@16)
+ GL_STUB(_dispatch_stub_769, _gloffset_ProgramEnvParameters4fvEXT, _dispatch_stub_769@16)
HIDDEN(GL_PREFIX(_dispatch_stub_769, _dispatch_stub_769@16))
- GL_STUB(_dispatch_stub_770, _gloffset_GetQueryObjecti64vEXT, _dispatch_stub_770@12)
- HIDDEN(GL_PREFIX(_dispatch_stub_770, _dispatch_stub_770@12))
- GL_STUB(_dispatch_stub_771, _gloffset_GetQueryObjectui64vEXT, _dispatch_stub_771@12)
+ GL_STUB(_dispatch_stub_770, _gloffset_ProgramLocalParameters4fvEXT, _dispatch_stub_770@16)
+ HIDDEN(GL_PREFIX(_dispatch_stub_770, _dispatch_stub_770@16))
+ GL_STUB(_dispatch_stub_771, _gloffset_GetQueryObjecti64vEXT, _dispatch_stub_771@12)
HIDDEN(GL_PREFIX(_dispatch_stub_771, _dispatch_stub_771@12))
+ GL_STUB(_dispatch_stub_772, _gloffset_GetQueryObjectui64vEXT, _dispatch_stub_772@12)
+ HIDDEN(GL_PREFIX(_dispatch_stub_772, _dispatch_stub_772@12))
GL_STUB_ALIAS(ArrayElementEXT, _gloffset_ArrayElement, ArrayElementEXT@4, ArrayElement, ArrayElement@4)
GL_STUB_ALIAS(BindTextureEXT, _gloffset_BindTexture, BindTextureEXT@8, BindTexture, BindTexture@8)
GL_STUB_ALIAS(DrawArraysEXT, _gloffset_DrawArrays, DrawArraysEXT@12, DrawArrays, DrawArrays@12)
@@ -1086,6 +1088,7 @@ GLNAME(gl_dispatch_functions_start):
GL_STUB_ALIAS(MultiTexCoord4iv, _gloffset_MultiTexCoord4ivARB, MultiTexCoord4iv@8, MultiTexCoord4ivARB, MultiTexCoord4ivARB@8)
GL_STUB_ALIAS(MultiTexCoord4s, _gloffset_MultiTexCoord4sARB, MultiTexCoord4s@20, MultiTexCoord4sARB, MultiTexCoord4sARB@20)
GL_STUB_ALIAS(MultiTexCoord4sv, _gloffset_MultiTexCoord4svARB, MultiTexCoord4sv@8, MultiTexCoord4svARB, MultiTexCoord4svARB@8)
+ GL_STUB_ALIAS(StencilOpSeparateATI, _gloffset_StencilOpSeparate, StencilOpSeparateATI@16, StencilOpSeparate, StencilOpSeparate@16)
GL_STUB_ALIAS(LoadTransposeMatrixd, _gloffset_LoadTransposeMatrixdARB, LoadTransposeMatrixd@4, LoadTransposeMatrixdARB, LoadTransposeMatrixdARB@4)
GL_STUB_ALIAS(LoadTransposeMatrixf, _gloffset_LoadTransposeMatrixfARB, LoadTransposeMatrixf@4, LoadTransposeMatrixfARB, LoadTransposeMatrixfARB@4)
GL_STUB_ALIAS(MultTransposeMatrixd, _gloffset_MultTransposeMatrixdARB, MultTransposeMatrixd@4, MultTransposeMatrixdARB, MultTransposeMatrixdARB@4)
diff --git a/src/mesa/x86/read_rgba_span_x86.S b/src/mesa/x86/read_rgba_span_x86.S
index 3cbcd719960..2e5c3be83fe 100644
--- a/src/mesa/x86/read_rgba_span_x86.S
+++ b/src/mesa/x86/read_rgba_span_x86.S
@@ -33,20 +33,7 @@
.file "read_rgba_span_x86.S"
#if !defined(__DJGPP__) && !defined(__MINGW32__) /* this one cries for assyntax.h */
/* Kevin F. Quinn 2nd July 2006
- * Replace data segment constants with text-segment instructions
- .section .rodata
- .align 16
- .type mask, @object
- .size mask, 32
-mask:
- .long 0xff00ff00
- .long 0xff00ff00
- .long 0xff00ff00
- .long 0xff00ff00
- .long 0x00ff0000
- .long 0x00ff0000
- .long 0x00ff0000
- .long 0x00ff0000
+ * Replaced data segment constants with text-segment instructions.
*/
#define LOAD_MASK(mvins,m1,m2) \
pushl $0xff00ff00 ;\
@@ -61,8 +48,7 @@ mask:
mvins (%esp), m2 ;\
addl $32, %esp
-
-/* I implemented these as macros because the appear in quite a few places,
+/* I implemented these as macros because they appear in several places,
* and I've tweaked them a number of times. I got tired of changing every
* place they appear. :)
*/
@@ -99,11 +85,6 @@ _generic_read_RGBA_span_BGRA8888_REV_MMX:
#ifdef USE_INNER_EMMS
emms
#endif
-/* Kevin F. Quinn 2nd July 2006
- * Replace data segment constants with text-segment instructions
- movq mask, %mm1
- movq mask+16, %mm2
- */
LOAD_MASK(movq,%mm1,%mm2)
movl 8(%esp), %ebx /* source pointer */
@@ -201,11 +182,7 @@ _generic_read_RGBA_span_BGRA8888_REV_SSE:
#ifdef USE_INNER_EMMS
emms
#endif
-/* Kevin F. Quinn 2nd July 2006
- * Replace data segment constants with text-segment instructions
- movq mask, %mm1
- movq mask+16, %mm2
- */
+
LOAD_MASK(movq,%mm1,%mm2)
movl 16(%esp), %ebx /* source pointer */
@@ -364,11 +341,6 @@ _generic_read_RGBA_span_BGRA8888_REV_SSE2:
pushl %esi
pushl %ebx
-/* Kevin F. Quinn 2nd July 2006
- * Replace data segment constants with text-segment instructions
- movdqa mask, %xmm1
- movdqa mask+16, %xmm2
- */
LOAD_MASK(movdqu,%xmm1,%xmm2)
movl 12(%esp), %ebx /* source pointer */
@@ -491,60 +463,12 @@ _generic_read_RGBA_span_BGRA8888_REV_SSE2:
-/* Kevin F. Quinn 2nd July 2006
- * Replace data segment constants with text-segment instructions
- */
-#if 0
- .section .rodata
-
- .align 16
-mask_565:
- .word 0xf800
- .word 0x07e0
- .word 0x001f
- .word 0x0000
-
-/* Setting SCALE_ADJUST to 5 gives a perfect match with the classic C
- * implementation in Mesa. Setting SCALE_ADJUST to 0 is slightly faster but
- * at a small cost to accuracy.
- */
-
-#define SCALE_ADJUST 5
-#if SCALE_ADJUST == 5
-prescale:
- .word 0x0001
- .word 0x0010
- .word 0x0200
- .word 0x0000
-
-scale:
- .word 0x20e8 /* (0x00ff0000 / 0x000007c0) + 1 */
- .word 0x40c5 /* (0x00ff0000 / 0x000003f0) + 1 */
- .word 0x839d /* (0x00ff0000 / 0x000001f0) + 1 */
- .word 0x0000
-#elif SCALE_ADJUST == 0
-prescale:
- .word 0x0001
- .word 0x0020
- .word 0x0800
- .word 0x0000
-
-scale:
- .word 0x0108 /* (0x00ff0000 / 0x0000f800) + 1 */
- .word 0x0104 /* (0x00ff0000 / 0x0000fc00) + 1 */
- .word 0x0108 /* (0x00ff0000 / 0x0000f800) + 1 */
- .word 0x0000
-#else
-#error SCALE_ADJUST must either be 5 or 0.
-#endif
-
-
-alpha: .long 0x00000000
- .long 0x00ff0000
-#endif
-
#define MASK_565_L 0x07e0f800
#define MASK_565_H 0x0000001f
+/* Setting SCALE_ADJUST to 5 gives a perfect match with the
+ * classic C implementation in Mesa. Setting SCALE_ADJUST
+ * to 0 is slightly faster but at a small cost to accuracy.
+ */
#define SCALE_ADJUST 5
#if SCALE_ADJUST == 5
#define PRESCALE_L 0x00100001
@@ -581,23 +505,17 @@ _generic_read_RGBA_span_RGB565_MMX:
movl 8(%esp), %edx /* destination pointer */
movl 12(%esp), %ecx /* number of pixels to copy */
-/* Kevin F. Quinn 2nd July 2006
- * Replace data segment constants with text-segment instructions
- movq mask_565, %mm5
- movq prescale, %mm6
- movq scale, %mm7
- */
- pushl MASK_565_H
- pushl MASK_565_L
+ pushl $MASK_565_H
+ pushl $MASK_565_L
movq (%esp), %mm5
- pushl PRESCALE_H
- pushl PRESCALE_L
+ pushl $PRESCALE_H
+ pushl $PRESCALE_L
movq (%esp), %mm6
- pushl SCALE_H
- pushl SCALE_L
+ pushl $SCALE_H
+ pushl $SCALE_L
movq (%esp), %mm7
- pushl ALPHA_H
- pushl ALPHA_L
+ pushl $ALPHA_H
+ pushl $ALPHA_L
movq (%esp), %mm3
addl $32,%esp
@@ -648,11 +566,6 @@ _generic_read_RGBA_span_RGB565_MMX:
/* Always set the alpha value to 0xff.
*/
-/* Kevin F. Quinn 2nd July 2006
- * Replace data segment constants with text-segment instructions
- por alpha, %mm0
- por alpha, %mm2
- */
por %mm3, %mm0
por %mm3, %mm2
@@ -665,8 +578,6 @@ _generic_read_RGBA_span_RGB565_MMX:
movq %mm0, (%edx)
addl $8, %edx
-
-
pshufw $0xaa, %mm4, %mm0
pshufw $0xff, %mm4, %mm2
@@ -681,11 +592,6 @@ _generic_read_RGBA_span_RGB565_MMX:
pmulhuw %mm7, %mm0
pmulhuw %mm7, %mm2
-/* Kevin F. Quinn 2nd July 2006
- * Replace data segment constants with text-segment instructions
- por alpha, %mm0
- por alpha, %mm2
- */
por %mm3, %mm0
por %mm3, %mm2
@@ -724,11 +630,6 @@ _generic_read_RGBA_span_RGB565_MMX:
pmulhuw %mm7, %mm0
pmulhuw %mm7, %mm2
-/* Kevin F. Quinn 2nd July 2006
- * Replace data segment constants with text-segment instructions
- por alpha, %mm0
- por alpha, %mm2
- */
por %mm3, %mm0
por %mm3, %mm2
@@ -757,10 +658,6 @@ _generic_read_RGBA_span_RGB565_MMX:
#endif
pmulhuw %mm7, %mm0
-/* Kevin F. Quinn 2nd July 2006
- * Replace data segment constants with text-segment instructions
- por alpha, %mm0
- */
por %mm3, %mm0
packuswb %mm0, %mm0
diff --git a/src/mesa/x86/rtasm/x86sse.c b/src/mesa/x86/rtasm/x86sse.c
index 3ea37bb5e76..612cd51a6ee 100644
--- a/src/mesa/x86/rtasm/x86sse.c
+++ b/src/mesa/x86/rtasm/x86sse.c
@@ -1063,20 +1063,29 @@ struct x86_reg x86_fn_arg( struct x86_function *p,
}
-void x86_init_func( struct x86_function *p )
-{
- x86_init_func_size(p, 1024);
-}
-
-void x86_init_func_size( struct x86_function *p, GLuint code_size )
+/**
+ * Initialize an x86_function object, allocating space for up to
+ * 'code_size' bytes of code.
+ */
+GLboolean x86_init_func( struct x86_function *p, GLuint code_size )
{
+ assert(!p->store);
p->store = _mesa_exec_malloc(code_size);
- p->csr = p->store;
+ if (p->store) {
+ p->csr = p->store;
+ return GL_TRUE;
+ }
+ else {
+ p->csr = NULL;
+ return GL_FALSE;
+ }
}
void x86_release_func( struct x86_function *p )
{
- _mesa_exec_free(p->store);
+ if (p->store)
+ _mesa_exec_free(p->store);
+ p->store = p->csr = NULL;
}
diff --git a/src/mesa/x86/rtasm/x86sse.h b/src/mesa/x86/rtasm/x86sse.h
index 66fb852ac98..42b09937bca 100644
--- a/src/mesa/x86/rtasm/x86sse.h
+++ b/src/mesa/x86/rtasm/x86sse.h
@@ -80,8 +80,7 @@ enum sse_cc {
*/
-void x86_init_func( struct x86_function *p );
-void x86_init_func_size( struct x86_function *p, GLuint code_size );
+GLboolean x86_init_func( 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 --git a/windows/VC7/mesa/gdi/gdi.vcproj b/windows/VC7/mesa/gdi/gdi.vcproj
index 82de75dc5d8..0dc7892a4b1 100644
--- a/windows/VC7/mesa/gdi/gdi.vcproj
+++ b/windows/VC7/mesa/gdi/gdi.vcproj
@@ -1,181 +1,195 @@
-<?xml version="1.0" encoding = "Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.00"
- Name="gdi"
- SccProjectName=""
- SccLocalPath="">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory=".\Debug"
- IntermediateDirectory=".\Debug"
- ConfigurationType="2"
- UseOfMFC="0"
- ATLMinimizesCRunTimeLibraryUsage="FALSE"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="../../../../include,../../../../src/mesa,../../../../src/mesa/main,../../../../src/mesa/glapi,../../../../src/mesa/swrast,../../../../src/mesa/shader"
- PreprocessorDefinitions="_DEBUG;WIN32;_WINDOWS;_USRDLL;GDI_EXPORTS;_DLL;BUILD_GL32;MESA_MINWARN"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- PrecompiledHeaderFile=".\Debug/gdi.pch"
- AssemblerListingLocation=".\Debug/"
- ObjectFile=".\Debug/"
- ProgramDataBaseFileName=".\Debug/"
- BrowseInformation="1"
- WarningLevel="3"
- SuppressStartupBanner="TRUE"
- DebugInformationFormat="3"
- CompileAs="0"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalOptions="/MACHINE:I386"
- AdditionalDependencies="mesa.lib winmm.lib msvcrtd.lib odbc32.lib odbccp32.lib"
- OutputFile="Debug/OPENGL32.DLL"
- LinkIncremental="1"
- SuppressStartupBanner="TRUE"
- AdditionalLibraryDirectories="../mesa/Debug"
- IgnoreAllDefaultLibraries="TRUE"
- ModuleDefinitionFile="..\..\..\..\src\mesa\drivers\windows\gdi\mesa.def"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile=".\Debug/OPENGL32.pdb"
- ImportLibrary=".\Debug/OPENGL32.lib"/>
- <Tool
- Name="VCMIDLTool"
- PreprocessorDefinitions="_DEBUG"
- MkTypLibCompatible="TRUE"
- SuppressStartupBanner="TRUE"
- TargetEnvironment="1"
- TypeLibraryName=".\Debug/gdi.tlb"/>
- <Tool
- Name="VCPostBuildEventTool"
- CommandLine="if not exist ..\..\..\..\lib md ..\..\..\..\lib
-copy Debug\OPENGL32.LIB ..\..\..\..\lib
-copy Debug\OPENGL32.DLL ..\..\..\..\lib
-if exist ..\..\..\..\progs\demos copy Debug\OPENGL32.DLL ..\..\..\..\progs\demos
-"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="_DEBUG"
- Culture="1033"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory=".\Release"
- IntermediateDirectory=".\Release"
- ConfigurationType="2"
- UseOfMFC="0"
- ATLMinimizesCRunTimeLibraryUsage="FALSE"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- InlineFunctionExpansion="1"
- AdditionalIncludeDirectories="../../main,../../../../include,../../../../src/mesa,../../../../src/mesa/main,../../../../src/mesa/glapi,../../../../src/mesa/swrast,../../../../src/mesa/shader"
- PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;_USRDLL;GDI_EXPORTS;_DLL;BUILD_GL32;MESA_MINWARN"
- StringPooling="TRUE"
- RuntimeLibrary="0"
- EnableFunctionLevelLinking="TRUE"
- PrecompiledHeaderFile=".\Release/gdi.pch"
- AssemblerListingLocation=".\Release/"
- ObjectFile=".\Release/"
- ProgramDataBaseFileName=".\Release/"
- WarningLevel="3"
- SuppressStartupBanner="TRUE"
- CompileAs="0"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- AdditionalOptions="/MACHINE:I386"
- AdditionalDependencies="mesa.lib winmm.lib msvcrt.lib odbc32.lib odbccp32.lib"
- OutputFile="Release/OPENGL32.DLL"
- LinkIncremental="1"
- SuppressStartupBanner="TRUE"
- AdditionalLibraryDirectories="../mesa/Release"
- IgnoreAllDefaultLibraries="TRUE"
- ModuleDefinitionFile="..\..\..\..\src\mesa\drivers\windows\gdi\mesa.def"
- ProgramDatabaseFile=".\Release/OPENGL32.pdb"
- ImportLibrary=".\Release/OPENGL32.lib"/>
- <Tool
- Name="VCMIDLTool"
- PreprocessorDefinitions="NDEBUG"
- MkTypLibCompatible="TRUE"
- SuppressStartupBanner="TRUE"
- TargetEnvironment="1"
- TypeLibraryName=".\Release/gdi.tlb"/>
- <Tool
- Name="VCPostBuildEventTool"
- CommandLine="if not exist ..\..\..\..\lib md ..\..\..\..\lib
-copy Release\OPENGL32.LIB ..\..\..\..\lib
-copy Release\OPENGL32.DLL ..\..\..\..\lib
-if exist ..\..\..\..\progs\demos copy Release\OPENGL32.DLL ..\..\..\..\progs\demos
-"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="NDEBUG"
- Culture="1033"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- </Configuration>
- </Configurations>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat">
- <File
- RelativePath="..\..\..\..\src\mesa\drivers\common\driverfuncs.c">
- </File>
- <File
- RelativePath="..\..\..\..\src\mesa\drivers\windows\gdi\mesa.def">
- </File>
- <File
- RelativePath="..\..\..\..\src\mesa\drivers\windows\gdi\wgl.c">
- </File>
- <File
- RelativePath="..\..\..\..\src\mesa\drivers\windows\gdi\wmesa.c">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl">
- <File
- RelativePath="..\..\..\..\src\mesa\drivers\windows\gdi\colors.h">
- </File>
- <File
- RelativePath="..\..\..\..\src\mesa\drivers\common\driverfuncs.h">
- </File>
- <File
- RelativePath="..\..\..\..\src\mesa\drivers\windows\gdi\wmesadef.h">
- </File>
- </Filter>
- <Filter
- Name="Resource Files"
- Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe">
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="7.10"
+ Name="gdi"
+ SccProjectName=""
+ SccLocalPath="">
+ <Platforms>
+ <Platform
+ Name="Win32"/>
+ </Platforms>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory=".\Debug"
+ IntermediateDirectory=".\Debug"
+ ConfigurationType="2"
+ UseOfMFC="0"
+ ATLMinimizesCRunTimeLibraryUsage="FALSE"
+ CharacterSet="2">
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="../../../../include,../../../../src/mesa,../../../../src/mesa/main,../../../../src/mesa/glapi,../../../../src/mesa/swrast,../../../../src/mesa/shader"
+ PreprocessorDefinitions="_DEBUG;WIN32;_WINDOWS;_USRDLL;GDI_EXPORTS;_DLL;BUILD_GL32;MESA_MINWARN"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="1"
+ PrecompiledHeaderFile=".\Debug/gdi.pch"
+ AssemblerListingLocation=".\Debug/"
+ ObjectFile=".\Debug/"
+ ProgramDataBaseFileName=".\Debug/"
+ BrowseInformation="1"
+ WarningLevel="3"
+ SuppressStartupBanner="TRUE"
+ DebugInformationFormat="3"
+ CompileAs="0"/>
+ <Tool
+ Name="VCCustomBuildTool"/>
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalOptions="/MACHINE:I386"
+ AdditionalDependencies="mesa.lib winmm.lib msvcrtd.lib odbc32.lib odbccp32.lib"
+ OutputFile="Debug/OPENGL32.DLL"
+ LinkIncremental="1"
+ SuppressStartupBanner="TRUE"
+ AdditionalLibraryDirectories="../mesa/Debug"
+ IgnoreAllDefaultLibraries="TRUE"
+ ModuleDefinitionFile="..\..\..\..\src\mesa\drivers\windows\gdi\mesa.def"
+ GenerateDebugInformation="TRUE"
+ ProgramDatabaseFile=".\Debug/OPENGL32.pdb"
+ ImportLibrary=".\Debug/OPENGL32.lib"/>
+ <Tool
+ Name="VCMIDLTool"
+ PreprocessorDefinitions="_DEBUG"
+ MkTypLibCompatible="TRUE"
+ SuppressStartupBanner="TRUE"
+ TargetEnvironment="1"
+ TypeLibraryName=".\Debug/gdi.tlb"/>
+ <Tool
+ Name="VCPostBuildEventTool"
+ CommandLine="if not exist ..\..\..\..\lib md ..\..\..\..\lib
+copy Debug\OPENGL32.LIB ..\..\..\..\lib
+copy Debug\OPENGL32.DLL ..\..\..\..\lib
+if exist ..\..\..\..\progs\demos copy Debug\OPENGL32.DLL ..\..\..\..\progs\demos
+"/>
+ <Tool
+ Name="VCPreBuildEventTool"/>
+ <Tool
+ Name="VCPreLinkEventTool"/>
+ <Tool
+ Name="VCResourceCompilerTool"
+ PreprocessorDefinitions="_DEBUG"
+ Culture="1033"/>
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"/>
+ <Tool
+ Name="VCXMLDataGeneratorTool"/>
+ <Tool
+ Name="VCWebDeploymentTool"/>
+ <Tool
+ Name="VCManagedWrapperGeneratorTool"/>
+ <Tool
+ Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory=".\Release"
+ IntermediateDirectory=".\Release"
+ ConfigurationType="2"
+ UseOfMFC="0"
+ ATLMinimizesCRunTimeLibraryUsage="FALSE"
+ CharacterSet="2">
+ <Tool
+ Name="VCCLCompilerTool"
+ InlineFunctionExpansion="1"
+ AdditionalIncludeDirectories="../../main,../../../../include,../../../../src/mesa,../../../../src/mesa/main,../../../../src/mesa/glapi,../../../../src/mesa/swrast,../../../../src/mesa/shader"
+ PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;_USRDLL;GDI_EXPORTS;_DLL;BUILD_GL32;MESA_MINWARN"
+ StringPooling="TRUE"
+ RuntimeLibrary="0"
+ EnableFunctionLevelLinking="TRUE"
+ PrecompiledHeaderFile=".\Release/gdi.pch"
+ AssemblerListingLocation=".\Release/"
+ ObjectFile=".\Release/"
+ ProgramDataBaseFileName=".\Release/"
+ WarningLevel="3"
+ SuppressStartupBanner="TRUE"
+ CompileAs="0"/>
+ <Tool
+ Name="VCCustomBuildTool"/>
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalOptions="/MACHINE:I386"
+ AdditionalDependencies="mesa.lib winmm.lib msvcrt.lib odbc32.lib odbccp32.lib"
+ OutputFile="Release/OPENGL32.DLL"
+ LinkIncremental="1"
+ SuppressStartupBanner="TRUE"
+ AdditionalLibraryDirectories="../mesa/Release"
+ IgnoreAllDefaultLibraries="TRUE"
+ ModuleDefinitionFile="..\..\..\..\src\mesa\drivers\windows\gdi\mesa.def"
+ ProgramDatabaseFile=".\Release/OPENGL32.pdb"
+ ImportLibrary=".\Release/OPENGL32.lib"/>
+ <Tool
+ Name="VCMIDLTool"
+ PreprocessorDefinitions="NDEBUG"
+ MkTypLibCompatible="TRUE"
+ SuppressStartupBanner="TRUE"
+ TargetEnvironment="1"
+ TypeLibraryName=".\Release/gdi.tlb"/>
+ <Tool
+ Name="VCPostBuildEventTool"
+ CommandLine="if not exist ..\..\..\..\lib md ..\..\..\..\lib
+copy Release\OPENGL32.LIB ..\..\..\..\lib
+copy Release\OPENGL32.DLL ..\..\..\..\lib
+if exist ..\..\..\..\progs\demos copy Release\OPENGL32.DLL ..\..\..\..\progs\demos
+"/>
+ <Tool
+ Name="VCPreBuildEventTool"/>
+ <Tool
+ Name="VCPreLinkEventTool"/>
+ <Tool
+ Name="VCResourceCompilerTool"
+ PreprocessorDefinitions="NDEBUG"
+ Culture="1033"/>
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"/>
+ <Tool
+ Name="VCXMLDataGeneratorTool"/>
+ <Tool
+ Name="VCWebDeploymentTool"/>
+ <Tool
+ Name="VCManagedWrapperGeneratorTool"/>
+ <Tool
+ Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat">
+ <File
+ RelativePath="..\..\..\..\src\mesa\drivers\common\driverfuncs.c">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\drivers\windows\gdi\mesa.def">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\drivers\windows\gdi\wgl.c">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\drivers\windows\gdi\wmesa.c">
+ </File>
+ </Filter>
+ <Filter
+ Name="Header Files"
+ Filter="h;hpp;hxx;hm;inl">
+ <File
+ RelativePath="..\..\..\..\src\mesa\drivers\windows\gdi\colors.h">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\drivers\common\driverfuncs.h">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\drivers\windows\gdi\wmesadef.h">
+ </File>
+ </Filter>
+ <Filter
+ Name="Resource Files"
+ Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe">
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>
diff --git a/windows/VC7/mesa/glu/glu.vcproj b/windows/VC7/mesa/glu/glu.vcproj
index e0c481e011f..3f057317c0c 100644
--- a/windows/VC7/mesa/glu/glu.vcproj
+++ b/windows/VC7/mesa/glu/glu.vcproj
@@ -1,7 +1,7 @@
-<?xml version="1.0" encoding = "Windows-1252"?>
+<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="7.00"
+ Version="7.10"
Name="glu"
SccProjectName=""
SccLocalPath="">
@@ -71,7 +71,13 @@ if exist ..\..\..\..\progs\demos copy Release\GLU32.DLL ..\..\..\..\progs\demos
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
+ Name="VCXMLDataGeneratorTool"/>
+ <Tool
Name="VCWebDeploymentTool"/>
+ <Tool
+ Name="VCManagedWrapperGeneratorTool"/>
+ <Tool
+ Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
<Configuration
Name="Debug|Win32"
@@ -135,9 +141,17 @@ if exist ..\..\..\..\progs\demos copy Debug\GLU32.DLL ..\..\..\..\progs\demos
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
+ Name="VCXMLDataGeneratorTool"/>
+ <Tool
Name="VCWebDeploymentTool"/>
+ <Tool
+ Name="VCManagedWrapperGeneratorTool"/>
+ <Tool
+ Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
</Configurations>
+ <References>
+ </References>
<Files>
<Filter
Name="Source Files"
@@ -231,6 +245,9 @@ if exist ..\..\..\..\progs\demos copy Debug\GLU32.DLL ..\..\..\..\progs\demos
RelativePath="..\..\..\..\src\glu\sgi\libnurbs\internals\basicsurfeval.h">
</File>
<File
+ RelativePath="..\..\..\..\src\glu\sgi\libnurbs\internals\bezierarc.h">
+ </File>
+ <File
RelativePath="..\..\..\..\src\glu\sgi\libnurbs\interface\bezierEval.h">
</File>
<File
@@ -240,9 +257,6 @@ if exist ..\..\..\..\progs\demos copy Debug\GLU32.DLL ..\..\..\..\progs\demos
RelativePath="..\..\..\..\src\glu\sgi\libnurbs\interface\bezierPatchMesh.h">
</File>
<File
- RelativePath="..\..\..\..\src\glu\sgi\libnurbs\internals\bezierarc.h">
- </File>
- <File
RelativePath="..\..\..\..\src\glu\sgi\libnurbs\internals\bin.h">
</File>
<File
@@ -297,10 +311,10 @@ if exist ..\..\..\..\progs\demos copy Debug\GLU32.DLL ..\..\..\..\progs\demos
RelativePath="..\..\..\..\src\glu\sgi\libnurbs\interface\glcurveval.h">
</File>
<File
- RelativePath="..\..\..\..\src\glu\sgi\libnurbs\nurbtess\glimports.h">
+ RelativePath="..\..\..\..\src\glu\sgi\libnurbs\interface\glimports.h">
</File>
<File
- RelativePath="..\..\..\..\src\glu\sgi\libnurbs\interface\glimports.h">
+ RelativePath="..\..\..\..\src\glu\sgi\libnurbs\nurbtess\glimports.h">
</File>
<File
RelativePath="..\..\..\..\src\glu\sgi\libnurbs\interface\glrenderer.h">
@@ -315,9 +329,6 @@ if exist ..\..\..\..\progs\demos copy Debug\GLU32.DLL ..\..\..\..\progs\demos
RelativePath="..\..\..\..\src\glu\sgi\include\gluos.h">
</File>
<File
- RelativePath="..\..\..\..\src\glu\sgi\libnurbs\nurbtess\gridWrap.h">
- </File>
- <File
RelativePath="..\..\..\..\src\glu\sgi\libnurbs\internals\gridline.h">
</File>
<File
@@ -327,6 +338,9 @@ if exist ..\..\..\..\progs\demos copy Debug\GLU32.DLL ..\..\..\..\progs\demos
RelativePath="..\..\..\..\src\glu\sgi\libnurbs\internals\gridvertex.h">
</File>
<File
+ RelativePath="..\..\..\..\src\glu\sgi\libnurbs\nurbtess\gridWrap.h">
+ </File>
+ <File
RelativePath="..\..\..\..\src\glu\sgi\libnurbs\internals\hull.h">
</File>
<File
@@ -357,10 +371,10 @@ if exist ..\..\..\..\progs\demos copy Debug\GLU32.DLL ..\..\..\..\progs\demos
RelativePath="..\..\..\..\src\glu\sgi\libnurbs\nurbtess\monoPolyPart.h">
</File>
<File
- RelativePath="..\..\..\..\src\glu\sgi\libnurbs\nurbtess\monoTriangulation.h">
+ RelativePath="..\..\..\..\src\glu\sgi\libnurbs\internals\monotonizer.h">
</File>
<File
- RelativePath="..\..\..\..\src\glu\sgi\libnurbs\internals\monotonizer.h">
+ RelativePath="..\..\..\..\src\glu\sgi\libnurbs\nurbtess\monoTriangulation.h">
</File>
<File
RelativePath="..\..\..\..\src\glu\sgi\libnurbs\internals\myassert.h">
@@ -372,18 +386,18 @@ if exist ..\..\..\..\progs\demos copy Debug\GLU32.DLL ..\..\..\..\progs\demos
RelativePath="..\..\..\..\src\glu\sgi\libnurbs\internals\mysetjmp.h">
</File>
<File
- RelativePath="..\..\..\..\src\glu\sgi\libnurbs\nurbtess\mystdio.h">
- </File>
- <File
RelativePath="..\..\..\..\src\glu\sgi\libnurbs\interface\mystdio.h">
</File>
<File
- RelativePath="..\..\..\..\src\glu\sgi\libnurbs\nurbtess\mystdlib.h">
+ RelativePath="..\..\..\..\src\glu\sgi\libnurbs\nurbtess\mystdio.h">
</File>
<File
RelativePath="..\..\..\..\src\glu\sgi\libnurbs\interface\mystdlib.h">
</File>
<File
+ RelativePath="..\..\..\..\src\glu\sgi\libnurbs\nurbtess\mystdlib.h">
+ </File>
+ <File
RelativePath="..\..\..\..\src\glu\sgi\libnurbs\internals\mystring.h">
</File>
<File
@@ -459,10 +473,10 @@ if exist ..\..\..\..\progs\demos copy Debug\GLU32.DLL ..\..\..\..\progs\demos
RelativePath="..\..\..\..\src\glu\sgi\libnurbs\nurbtess\sampleCompTop.h">
</File>
<File
- RelativePath="..\..\..\..\src\glu\sgi\libnurbs\nurbtess\sampleMonoPoly.h">
+ RelativePath="..\..\..\..\src\glu\sgi\libnurbs\nurbtess\sampledLine.h">
</File>
<File
- RelativePath="..\..\..\..\src\glu\sgi\libnurbs\nurbtess\sampledLine.h">
+ RelativePath="..\..\..\..\src\glu\sgi\libnurbs\nurbtess\sampleMonoPoly.h">
</File>
<File
RelativePath="..\..\..\..\src\glu\sgi\libnurbs\nurbtess\searchTree.h">
@@ -517,9 +531,6 @@ if exist ..\..\..\..\progs\demos copy Debug\GLU32.DLL ..\..\..\..\progs\demos
Name="C++ files"
Filter=".cc">
<File
- RelativePath="..\..\..\..\src\glu\sgi\libtess\README">
- </File>
- <File
RelativePath="..\..\..\..\src\glu\sgi\libnurbs\internals\arc.cc">
</File>
<File
@@ -634,13 +645,13 @@ if exist ..\..\..\..\progs\demos copy Debug\GLU32.DLL ..\..\..\..\progs\demos
RelativePath="..\..\..\..\src\glu\sgi\libnurbs\nurbtess\monoPolyPart.cc">
</File>
<File
- RelativePath="..\..\..\..\src\glu\sgi\libnurbs\nurbtess\monoTriangulation.cc">
+ RelativePath="..\..\..\..\src\glu\sgi\libnurbs\internals\monotonizer.cc">
</File>
<File
- RelativePath="..\..\..\..\src\glu\sgi\libnurbs\internals\monoTriangulationBackend.cc">
+ RelativePath="..\..\..\..\src\glu\sgi\libnurbs\nurbtess\monoTriangulation.cc">
</File>
<File
- RelativePath="..\..\..\..\src\glu\sgi\libnurbs\internals\monotonizer.cc">
+ RelativePath="..\..\..\..\src\glu\sgi\libnurbs\internals\monoTriangulationBackend.cc">
</File>
<File
RelativePath="..\..\..\..\src\glu\sgi\libnurbs\internals\mycode.cc">
@@ -682,6 +693,9 @@ if exist ..\..\..\..\progs\demos copy Debug\GLU32.DLL ..\..\..\..\progs\demos
RelativePath="..\..\..\..\src\glu\sgi\libnurbs\internals\reader.cc">
</File>
<File
+ RelativePath="..\..\..\..\src\glu\sgi\libtess\README">
+ </File>
+ <File
RelativePath="..\..\..\..\src\glu\sgi\libnurbs\nurbtess\rectBlock.cc">
</File>
<File
@@ -700,10 +714,10 @@ if exist ..\..\..\..\progs\demos copy Debug\GLU32.DLL ..\..\..\..\progs\demos
RelativePath="..\..\..\..\src\glu\sgi\libnurbs\nurbtess\sampleCompTop.cc">
</File>
<File
- RelativePath="..\..\..\..\src\glu\sgi\libnurbs\nurbtess\sampleMonoPoly.cc">
+ RelativePath="..\..\..\..\src\glu\sgi\libnurbs\nurbtess\sampledLine.cc">
</File>
<File
- RelativePath="..\..\..\..\src\glu\sgi\libnurbs\nurbtess\sampledLine.cc">
+ RelativePath="..\..\..\..\src\glu\sgi\libnurbs\nurbtess\sampleMonoPoly.cc">
</File>
<File
RelativePath="..\..\..\..\src\glu\sgi\libnurbs\nurbtess\searchTree.cc">
diff --git a/windows/VC7/mesa/mesa.sln b/windows/VC7/mesa/mesa.sln
index ada5568f489..ae47790753b 100644
--- a/windows/VC7/mesa/mesa.sln
+++ b/windows/VC7/mesa/mesa.sln
@@ -1,20 +1,26 @@
-Microsoft Visual Studio Solution File, Format Version 7.00
+Microsoft Visual Studio Solution File, Format Version 8.00
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gdi", "gdi\gdi.vcproj", "{A1B24907-E196-4826-B6AF-26723629B633}"
+ ProjectSection(ProjectDependencies) = postProject
+ {2120C974-2717-4709-B44F-D6E6D0A56448} = {2120C974-2717-4709-B44F-D6E6D0A56448}
+ EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glu", "glu\glu.vcproj", "{2E50FDAF-430B-475B-AE6B-60B68F2875BA}"
+ ProjectSection(ProjectDependencies) = postProject
+ EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mesa", "mesa\mesa.vcproj", "{2120C974-2717-4709-B44F-D6E6D0A56448}"
+ ProjectSection(ProjectDependencies) = postProject
+ EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "osmesa", "osmesa\osmesa.vcproj", "{8D6CD423-383B-49E7-81BC-D20C70B07DF5}"
+ ProjectSection(ProjectDependencies) = postProject
+ {A1B24907-E196-4826-B6AF-26723629B633} = {A1B24907-E196-4826-B6AF-26723629B633}
+ EndProjectSection
EndProject
Global
GlobalSection(SolutionConfiguration) = preSolution
- ConfigName.0 = Debug
- ConfigName.1 = Release
- EndGlobalSection
- GlobalSection(ProjectDependencies) = postSolution
- {A1B24907-E196-4826-B6AF-26723629B633}.0 = {2120C974-2717-4709-B44F-D6E6D0A56448}
- {8D6CD423-383B-49E7-81BC-D20C70B07DF5}.0 = {A1B24907-E196-4826-B6AF-26723629B633}
+ Debug = Debug
+ Release = Release
EndGlobalSection
GlobalSection(ProjectConfiguration) = postSolution
{A1B24907-E196-4826-B6AF-26723629B633}.Debug.ActiveCfg = Debug|Win32
diff --git a/windows/VC7/mesa/mesa/mesa.vcproj b/windows/VC7/mesa/mesa/mesa.vcproj
index a9f285568fe..8a682585cda 100644
--- a/windows/VC7/mesa/mesa/mesa.vcproj
+++ b/windows/VC7/mesa/mesa/mesa.vcproj
@@ -1,7 +1,7 @@
-<?xml version="1.0" encoding = "Windows-1252"?>
+<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="7.00"
+ Version="7.10"
Name="mesa"
SccProjectName=""
SccLocalPath="">
@@ -55,6 +55,12 @@
Culture="1033"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
+ <Tool
+ Name="VCXMLDataGeneratorTool"/>
+ <Tool
+ Name="VCManagedWrapperGeneratorTool"/>
+ <Tool
+ Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
<Configuration
Name="Debug|Win32"
@@ -101,19 +107,21 @@
Culture="1033"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
+ <Tool
+ Name="VCXMLDataGeneratorTool"/>
+ <Tool
+ Name="VCManagedWrapperGeneratorTool"/>
+ <Tool
+ Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
</Configurations>
+ <References>
+ </References>
<Files>
<Filter
Name="Source Files"
Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat">
<File
- RelativePath="..\..\..\..\src\mesa\array_cache\ac_context.c">
- </File>
- <File
- RelativePath="..\..\..\..\src\mesa\array_cache\ac_import.c">
- </File>
- <File
RelativePath="..\..\..\..\src\mesa\main\accum.c">
</File>
<File
@@ -129,15 +137,15 @@
RelativePath="..\..\..\..\src\mesa\main\api_validate.c">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\main\arrayobj.c">
- </File>
- <File
RelativePath="..\..\..\..\src\mesa\shader\arbprogparse.c">
</File>
<File
RelativePath="..\..\..\..\src\mesa\shader\arbprogram.c">
</File>
<File
+ RelativePath="..\..\..\..\src\mesa\main\arrayobj.c">
+ </File>
+ <File
RelativePath="..\..\..\..\src\mesa\shader\atifragshader.c">
</File>
<File
@@ -237,6 +245,15 @@
</FileConfiguration>
</File>
<File
+ RelativePath="..\..\..\..\src\mesa\shader\grammar\grammar_crt.c">
+ <FileConfiguration
+ Name="Debug|Win32"
+ ExcludedFromBuild="TRUE">
+ <Tool
+ Name="VCCLCompilerTool"/>
+ </FileConfiguration>
+ </File>
+ <File
RelativePath="..\..\..\..\src\mesa\shader\grammar\grammar_mesa.c">
</File>
<File
@@ -300,15 +317,9 @@
RelativePath="..\..\..\..\src\mesa\shader\nvprogram.c">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\shader\nvvertexec.c">
- </File>
- <File
RelativePath="..\..\..\..\src\mesa\shader\nvvertparse.c">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\main\occlude.c">
- </File>
- <File
RelativePath="..\..\..\..\src\mesa\main\pixel.c">
</File>
<File
@@ -318,9 +329,33 @@
RelativePath="..\..\..\..\src\mesa\main\polygon.c">
</File>
<File
+ RelativePath="..\..\..\..\src\mesa\shader\prog_debug.c">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\shader\prog_execute.c">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\shader\prog_instruction.c">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\shader\prog_parameter.c">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\shader\prog_print.c">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\shader\prog_statevars.c">
+ </File>
+ <File
RelativePath="..\..\..\..\src\mesa\shader\program.c">
</File>
<File
+ RelativePath="..\..\..\..\src\mesa\shader\programopt.c">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\main\queryobj.c">
+ </File>
+ <File
RelativePath="..\..\..\..\src\mesa\main\rastpos.c">
</File>
<File
@@ -342,9 +377,6 @@
RelativePath="..\..\..\..\src\mesa\swrast\s_alpha.c">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\swrast\s_arbshader.c">
- </File>
- <File
RelativePath="..\..\..\..\src\mesa\swrast\s_atifragshader.c">
</File>
<File
@@ -378,6 +410,9 @@
RelativePath="..\..\..\..\src\mesa\swrast\s_fog.c">
</File>
<File
+ RelativePath="..\..\..\..\src\mesa\swrast\s_fragprog.c">
+ </File>
+ <File
RelativePath="..\..\..\..\src\mesa\swrast\s_imaging.c">
</File>
<File
@@ -390,9 +425,6 @@
RelativePath="..\..\..\..\src\mesa\swrast\s_masking.c">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\swrast\s_nvfragprog.c">
- </File>
- <File
RelativePath="..\..\..\..\src\mesa\swrast\s_points.c">
</File>
<File
@@ -420,28 +452,16 @@
RelativePath="..\..\..\..\src\mesa\swrast\s_zoom.c">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\shader\shaderobjects.c">
- </File>
- <File
- RelativePath="..\..\..\..\src\mesa\shader\shaderobjects_3dlabs.c">
- </File>
- <File
- RelativePath="..\..\..\..\src\mesa\shader\slang\slang_analyse.c">
+ RelativePath="..\..\..\..\src\mesa\shader\shader_api.c">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\shader\slang\slang_assemble.c">
+ RelativePath="..\..\..\..\src\mesa\main\shaders.c">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\shader\slang\slang_assemble_assignment.c">
+ RelativePath="..\..\..\..\src\mesa\shader\slang\slang_builtin.c">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\shader\slang\slang_assemble_conditional.c">
- </File>
- <File
- RelativePath="..\..\..\..\src\mesa\shader\slang\slang_assemble_constructor.c">
- </File>
- <File
- RelativePath="..\..\..\..\src\mesa\shader\slang\slang_assemble_typeinfo.c">
+ RelativePath="..\..\..\..\src\mesa\shader\slang\slang_codegen.c">
</File>
<File
RelativePath="..\..\..\..\src\mesa\shader\slang\slang_compile.c">
@@ -459,33 +479,48 @@
RelativePath="..\..\..\..\src\mesa\shader\slang\slang_compile_variable.c">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\shader\slang\slang_execute.c">
+ RelativePath="..\..\..\..\src\mesa\shader\slang\slang_emit.c">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\shader\slang\slang_execute_x86.c">
+ RelativePath="..\..\..\..\src\mesa\shader\slang\slang_ir.c">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\shader\slang\slang_export.c">
+ RelativePath="..\..\..\..\src\mesa\shader\slang\slang_label.c">
</File>
<File
RelativePath="..\..\..\..\src\mesa\shader\slang\slang_library_noise.c">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\shader\slang\slang_library_texsample.c">
+ RelativePath="..\..\..\..\src\mesa\shader\slang\slang_link.c">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\shader\slang\slang_link.c">
+ RelativePath="..\..\..\..\src\mesa\shader\slang\slang_log.c">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\shader\slang\slang_mem.c">
</File>
<File
RelativePath="..\..\..\..\src\mesa\shader\slang\slang_preprocess.c">
</File>
<File
+ RelativePath="..\..\..\..\src\mesa\shader\slang\slang_print.c">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\shader\slang\slang_simplify.c">
+ </File>
+ <File
RelativePath="..\..\..\..\src\mesa\shader\slang\slang_storage.c">
</File>
<File
+ RelativePath="..\..\..\..\src\mesa\shader\slang\slang_typeinfo.c">
+ </File>
+ <File
RelativePath="..\..\..\..\src\mesa\shader\slang\slang_utility.c">
</File>
<File
+ RelativePath="..\..\..\..\src\mesa\shader\slang\slang_vartable.c">
+ </File>
+ <File
RelativePath="..\..\..\..\src\mesa\swrast_setup\ss_context.c">
</File>
<File
@@ -498,10 +533,10 @@
RelativePath="..\..\..\..\src\mesa\main\stencil.c">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\tnl\t_draw.c">
+ RelativePath="..\..\..\..\src\mesa\tnl\t_context.c">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\tnl\t_context.c">
+ RelativePath="..\..\..\..\src\mesa\tnl\t_draw.c">
</File>
<File
RelativePath="..\..\..\..\src\mesa\tnl\t_pipeline.c">
@@ -579,6 +614,48 @@
RelativePath="..\..\..\..\src\mesa\main\varray.c">
</File>
<File
+ RelativePath="..\..\..\..\src\mesa\vbo\vbo_context.c">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\vbo\vbo_exec.c">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\vbo\vbo_exec_api.c">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\vbo\vbo_exec_array.c">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\vbo\vbo_exec_draw.c">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\vbo\vbo_exec_eval.c">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\vbo\vbo_rebase.c">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\vbo\vbo_save.c">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\vbo\vbo_save_api.c">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\vbo\vbo_save_draw.c">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\vbo\vbo_save_loopback.c">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\vbo\vbo_split.c">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\vbo\vbo_split_copy.c">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\vbo\vbo_split_inplace.c">
+ </File>
+ <File
RelativePath="..\..\..\..\src\mesa\main\vsnprintf.c">
<FileConfiguration
Name="Release|Win32"
@@ -736,6 +813,9 @@
RelativePath="..\..\..\..\src\mesa\shader\grammar\grammar.h">
</File>
<File
+ RelativePath="..\..\..\..\src\mesa\shader\grammar\grammar_crt.h">
+ </File>
+ <File
RelativePath="..\..\..\..\src\mesa\shader\grammar\grammar_mesa.h">
</File>
<File
@@ -820,9 +900,6 @@
RelativePath="..\..\..\..\src\mesa\shader\nvfragparse.h">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\shader\nvfragprog.h">
- </File>
- <File
RelativePath="..\..\..\..\src\mesa\shader\nvprogram.h">
</File>
<File
@@ -832,28 +909,43 @@
RelativePath="..\..\..\..\src\mesa\shader\nvvertparse.h">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\shader\nvvertprog.h">
+ RelativePath="..\..\..\..\src\mesa\main\pixel.h">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\main\occlude.h">
+ RelativePath="..\..\..\..\src\mesa\main\points.h">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\main\pixel.h">
+ RelativePath="..\..\..\..\src\mesa\main\polygon.h">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\main\points.h">
+ RelativePath="..\..\..\..\src\mesa\shader\prog_debug.h">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\main\polygon.h">
+ RelativePath="..\..\..\..\src\mesa\shader\prog_execute.h">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\shader\prog_instruction.h">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\shader\prog_parameter.h">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\shader\prog_print.h">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\shader\prog_statevars.h">
</File>
<File
RelativePath="..\..\..\..\src\mesa\shader\program.h">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\main\rastpos.h">
+ RelativePath="..\..\..\..\src\mesa\shader\programopt.h">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\main\rbadaptors.h">
+ RelativePath="..\..\..\..\src\mesa\main\queryobj.h">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\main\rastpos.h">
</File>
<File
RelativePath="..\..\..\..\src\mesa\main\renderbuffer.h">
@@ -898,6 +990,9 @@
RelativePath="..\..\..\..\src\mesa\swrast\s_fog.h">
</File>
<File
+ RelativePath="..\..\..\..\src\mesa\swrast\s_fragprog.h">
+ </File>
+ <File
RelativePath="..\..\..\..\src\mesa\swrast\s_lines.h">
</File>
<File
@@ -946,48 +1041,78 @@
RelativePath="..\..\..\..\src\mesa\swrast\s_zoom.h">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\shader\shaderobjects.h">
+ RelativePath="..\..\..\..\src\mesa\shader\shader_api.h">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\shader\shaderobjects_3dlabs.h">
+ RelativePath="..\..\..\..\src\mesa\main\shaders.h">
</File>
<File
RelativePath="..\..\..\..\src\mesa\main\simple_list.h">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\shader\slang\slang_assemble.h">
+ RelativePath="..\..\..\..\src\mesa\shader\slang\slang_builtin.h">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\shader\slang\slang_assemble_assignment.h">
+ RelativePath="..\..\..\..\src\mesa\shader\slang\slang_codegen.h">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\shader\slang\slang_assemble_conditional.h">
+ RelativePath="..\..\..\..\src\mesa\shader\slang\slang_compile.h">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\shader\slang\slang_assemble_constructor.h">
+ RelativePath="..\..\..\..\src\mesa\shader\slang\slang_compile_function.h">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\shader\slang\slang_assemble_typeinfo.h">
+ RelativePath="..\..\..\..\src\mesa\shader\slang\slang_compile_operation.h">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\shader\slang\slang_compile.h">
+ RelativePath="..\..\..\..\src\mesa\shader\slang\slang_compile_struct.h">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\shader\slang\slang_compile_variable.h">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\shader\slang\slang_emit.h">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\shader\slang\slang_ir.h">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\shader\slang\slang_label.h">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\shader\slang\slang_library_noise.h">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\shader\slang\slang_link.h">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\shader\slang\slang_execute.h">
+ RelativePath="..\..\..\..\src\mesa\shader\slang\slang_log.h">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\shader\slang\slang_mesa.h">
+ RelativePath="..\..\..\..\src\mesa\shader\slang\slang_mem.h">
</File>
<File
RelativePath="..\..\..\..\src\mesa\shader\slang\slang_preprocess.h">
</File>
<File
+ RelativePath="..\..\..\..\src\mesa\shader\slang\slang_print.h">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\shader\slang\slang_simplify.h">
+ </File>
+ <File
RelativePath="..\..\..\..\src\mesa\shader\slang\slang_storage.h">
</File>
<File
+ RelativePath="..\..\..\..\src\mesa\shader\slang\slang_typeinfo.h">
+ </File>
+ <File
RelativePath="..\..\..\..\src\mesa\shader\slang\slang_utility.h">
</File>
<File
+ RelativePath="..\..\..\..\src\mesa\shader\slang\slang_vartable.h">
+ </File>
+ <File
RelativePath="..\..\..\..\src\mesa\swrast_setup\ss_context.h">
</File>
<File
@@ -1012,24 +1137,12 @@
RelativePath="..\..\..\..\src\mesa\swrast_setup\swrast_setup.h">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\tnl\t_array_api.h">
- </File>
- <File
- RelativePath="..\..\..\..\src\mesa\tnl\t_array_import.h">
- </File>
- <File
RelativePath="..\..\..\..\src\mesa\tnl\t_context.h">
</File>
<File
RelativePath="..\..\..\..\src\mesa\tnl\t_pipeline.h">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\tnl\t_save_api.h">
- </File>
- <File
- RelativePath="..\..\..\..\src\mesa\tnl\t_vb_arbprogram.h">
- </File>
- <File
RelativePath="..\..\..\..\src\mesa\tnl\t_vb_cliptmp.h">
</File>
<File
@@ -1045,9 +1158,6 @@
RelativePath="..\..\..\..\src\mesa\tnl\t_vp_build.h">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\tnl\t_vtx_api.h">
- </File>
- <File
RelativePath="..\..\..\..\src\mesa\main\texcompress.h">
</File>
<File
@@ -1078,10 +1188,28 @@
RelativePath="..\..\..\..\src\mesa\tnl\tnl.h">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\shader\slang\traverse_wrap.h">
+ RelativePath="..\..\..\..\src\mesa\main\varray.h">
</File>
<File
- RelativePath="..\..\..\..\src\mesa\main\varray.h">
+ RelativePath="..\..\..\..\src\mesa\vbo\vbo.h">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\vbo\vbo_attrib.h">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\vbo\vbo_attrib_tmp.h">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\vbo\vbo_context.h">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\vbo\vbo_exec.h">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\vbo\vbo_save.h">
+ </File>
+ <File
+ RelativePath="..\..\..\..\src\mesa\vbo\vbo_split.h">
</File>
<File
RelativePath="..\..\..\..\src\mesa\main\version.h">
diff --git a/windows/VC7/mesa/osmesa/osmesa.vcproj b/windows/VC7/mesa/osmesa/osmesa.vcproj
index 266aff509f5..553dad7e6a1 100644
--- a/windows/VC7/mesa/osmesa/osmesa.vcproj
+++ b/windows/VC7/mesa/osmesa/osmesa.vcproj
@@ -1,7 +1,7 @@
-<?xml version="1.0" encoding = "Windows-1252"?>
+<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
- Version="7.00"
+ Version="7.10"
Name="osmesa"
SccProjectName=""
SccLocalPath="">
@@ -72,7 +72,13 @@ if exist ..\..\..\..\progs\demos copy Release\OSMESA32.DLL ..\..\..\..\progs\dem
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
+ Name="VCXMLDataGeneratorTool"/>
+ <Tool
Name="VCWebDeploymentTool"/>
+ <Tool
+ Name="VCManagedWrapperGeneratorTool"/>
+ <Tool
+ Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
<Configuration
Name="Debug|Win32"
@@ -137,9 +143,17 @@ if exist ..\..\..\..\progs\demos copy Debug\OSMESA32.DLL ..\..\..\..\progs\demos
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
+ Name="VCXMLDataGeneratorTool"/>
+ <Tool
Name="VCWebDeploymentTool"/>
+ <Tool
+ Name="VCManagedWrapperGeneratorTool"/>
+ <Tool
+ Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
</Configurations>
+ <References>
+ </References>
<Files>
<Filter
Name="Source Files"