diff --git a/.gitignore b/.gitignore diff --git a/Makefile b/Makefile diff --git a/Makefile.DJ b/Makefile.DJ diff --git a/Makefile.mgw b/Makefile.mgw diff --git a/bin/installmesa b/bin/installmesa diff --git a/bin/minstall b/bin/minstall diff --git a/bin/mklib b/bin/mklib diff --git a/configs/.gitignore b/configs/.gitignore diff --git a/configs/aix b/configs/aix diff --git a/configs/aix-64 b/configs/aix-64 diff --git a/configs/aix-64-static b/configs/aix-64-static diff --git a/configs/aix-gcc b/configs/aix-gcc diff --git a/configs/aix-static b/configs/aix-static diff --git a/configs/beos b/configs/beos diff --git a/configs/bluegene-osmesa b/configs/bluegene-osmesa diff --git a/configs/config.mgw b/configs/config.mgw diff --git a/configs/darwin b/configs/darwin diff --git a/configs/darwin-static b/configs/darwin-static diff --git a/configs/darwin-static-x86ppc b/configs/darwin-static-x86ppc diff --git a/configs/darwin-x86ppc b/configs/darwin-x86ppc diff --git a/configs/default b/configs/default index a7de3f8..54de4d0 100644 --- a/configs/default +++ b/configs/default @@ -78,8 +78,8 @@ APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm # Installation directories (for make install) -INSTALL_DIR = /usr/local -DRI_DRIVER_INSTALL_DIR = /usr/X11R6/lib/modules/dri +INSTALL_DIR = /usr +DRI_DRIVER_INSTALL_DIR = /usr/lib64/dri # Where libGL will look for DRI hardware drivers DRI_DRIVER_SEARCH_DIR = $(DRI_DRIVER_INSTALL_DIR) diff --git a/configs/freebsd b/configs/freebsd diff --git a/configs/freebsd-dri b/configs/freebsd-dri diff --git a/configs/freebsd-dri-amd64 b/configs/freebsd-dri-amd64 diff --git a/configs/freebsd-dri-x86 b/configs/freebsd-dri-x86 diff --git a/configs/hpux10 b/configs/hpux10 diff --git a/configs/hpux10-gcc b/configs/hpux10-gcc diff --git a/configs/hpux10-static b/configs/hpux10-static diff --git a/configs/hpux11-32 b/configs/hpux11-32 diff --git a/configs/hpux11-32-static b/configs/hpux11-32-static diff --git a/configs/hpux11-32-static-nothreads b/configs/hpux11-32-static-nothreads diff --git a/configs/hpux11-64 b/configs/hpux11-64 diff --git a/configs/hpux11-64-static b/configs/hpux11-64-static diff --git a/configs/hpux11-ia64 b/configs/hpux11-ia64 diff --git a/configs/hpux11-ia64-static b/configs/hpux11-ia64-static diff --git a/configs/hpux9 b/configs/hpux9 diff --git a/configs/hpux9-gcc b/configs/hpux9-gcc diff --git a/configs/irix6-64 b/configs/irix6-64 diff --git a/configs/irix6-64-static b/configs/irix6-64-static diff --git a/configs/irix6-n32 b/configs/irix6-n32 diff --git a/configs/irix6-n32-static b/configs/irix6-n32-static diff --git a/configs/irix6-o32 b/configs/irix6-o32 diff --git a/configs/irix6-o32-static b/configs/irix6-o32-static diff --git a/configs/linux b/configs/linux index 0d455ff..1d1e962 100644 --- a/configs/linux +++ b/configs/linux @@ -20,7 +20,7 @@ DEFINES = -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE \ -D_BSD_SOURCE -D_GNU_SOURCE \ -DPTHREADS -DUSE_XSHM -DHAVE_POSIX_MEMALIGN -X11_INCLUDES = -I/usr/X11R6/include +X11_INCLUDES = -I/usr/include/X11 CFLAGS = -Wall -Wmissing-prototypes $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) \ $(DEFINES) $(ASM_FLAGS) $(X11_INCLUDES) -std=c99 -ffast-math @@ -30,4 +30,4 @@ CXXFLAGS = -Wall $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES) \ GLUT_CFLAGS = -fexceptions -EXTRA_LIB_PATH = -L/usr/X11R6/lib +EXTRA_LIB_PATH = -L/usr/lib64 diff --git a/configs/linux-alpha b/configs/linux-alpha diff --git a/configs/linux-alpha-static b/configs/linux-alpha-static diff --git a/configs/linux-debug b/configs/linux-debug diff --git a/configs/linux-directfb b/configs/linux-directfb diff --git a/configs/linux-dri b/configs/linux-dri diff --git a/configs/linux-dri-debug b/configs/linux-dri-debug diff --git a/configs/linux-dri-ppc b/configs/linux-dri-ppc diff --git a/configs/linux-dri-x86 b/configs/linux-dri-x86 diff --git a/configs/linux-dri-x86-64 b/configs/linux-dri-x86-64 diff --git a/configs/linux-dri-xcb b/configs/linux-dri-xcb diff --git a/configs/linux-fbdev b/configs/linux-fbdev diff --git a/configs/linux-glide b/configs/linux-glide diff --git a/configs/linux-ia64-icc b/configs/linux-ia64-icc diff --git a/configs/linux-ia64-icc-static b/configs/linux-ia64-icc-static diff --git a/configs/linux-icc b/configs/linux-icc diff --git a/configs/linux-icc-static b/configs/linux-icc-static diff --git a/configs/linux-indirect b/configs/linux-indirect diff --git a/configs/linux-osmesa b/configs/linux-osmesa diff --git a/configs/linux-osmesa16 b/configs/linux-osmesa16 diff --git a/configs/linux-osmesa16-static b/configs/linux-osmesa16-static diff --git a/configs/linux-osmesa32 b/configs/linux-osmesa32 diff --git a/configs/linux-ppc b/configs/linux-ppc diff --git a/configs/linux-ppc-static b/configs/linux-ppc-static diff --git a/configs/linux-profile b/configs/linux-profile diff --git a/configs/linux-solo b/configs/linux-solo diff --git a/configs/linux-solo-ia64 b/configs/linux-solo-ia64 diff --git a/configs/linux-solo-x86 b/configs/linux-solo-x86 diff --git a/configs/linux-sparc b/configs/linux-sparc diff --git a/configs/linux-sparc5 b/configs/linux-sparc5 diff --git a/configs/linux-static b/configs/linux-static diff --git a/configs/linux-ultrasparc b/configs/linux-ultrasparc diff --git a/configs/linux-x86 b/configs/linux-x86 diff --git a/configs/linux-x86-32 b/configs/linux-x86-32 diff --git a/configs/linux-x86-64 b/configs/linux-x86-64 diff --git a/configs/linux-x86-64-debug b/configs/linux-x86-64-debug diff --git a/configs/linux-x86-64-static b/configs/linux-x86-64-static diff --git a/configs/linux-x86-debug b/configs/linux-x86-debug diff --git a/configs/linux-x86-glide b/configs/linux-x86-glide diff --git a/configs/linux-x86-static b/configs/linux-x86-static diff --git a/configs/netbsd b/configs/netbsd diff --git a/configs/openbsd b/configs/openbsd diff --git a/configs/osf1 b/configs/osf1 diff --git a/configs/osf1-static b/configs/osf1-static diff --git a/configs/solaris-x86 b/configs/solaris-x86 diff --git a/configs/solaris-x86-gcc b/configs/solaris-x86-gcc diff --git a/configs/solaris-x86-gcc-static b/configs/solaris-x86-gcc-static diff --git a/configs/sunos4 b/configs/sunos4 diff --git a/configs/sunos4-gcc b/configs/sunos4-gcc diff --git a/configs/sunos4-static b/configs/sunos4-static diff --git a/configs/sunos5 b/configs/sunos5 diff --git a/configs/sunos5-64-gcc b/configs/sunos5-64-gcc diff --git a/configs/sunos5-gcc b/configs/sunos5-gcc diff --git a/configs/sunos5-smp b/configs/sunos5-smp diff --git a/configs/sunos5-v8 b/configs/sunos5-v8 diff --git a/configs/sunos5-v8-static b/configs/sunos5-v8-static diff --git a/configs/sunos5-v9 b/configs/sunos5-v9 diff --git a/configs/sunos5-v9-cc-g++ b/configs/sunos5-v9-cc-g++ diff --git a/configs/sunos5-v9-static b/configs/sunos5-v9-static diff --git a/configs/ultrix-gcc b/configs/ultrix-gcc diff --git a/descrip.mms b/descrip.mms diff --git a/docs/COPYING b/docs/COPYING diff --git a/docs/MESA_agp_offset.spec b/docs/MESA_agp_offset.spec diff --git a/docs/MESA_copy_sub_buffer.spec b/docs/MESA_copy_sub_buffer.spec diff --git a/docs/MESA_pack_invert.spec b/docs/MESA_pack_invert.spec diff --git a/docs/MESA_packed_depth_stencil.spec b/docs/MESA_packed_depth_stencil.spec diff --git a/docs/MESA_pixmap_colormap.spec b/docs/MESA_pixmap_colormap.spec diff --git a/docs/MESA_program_debug.spec b/docs/MESA_program_debug.spec diff --git a/docs/MESA_release_buffers.spec b/docs/MESA_release_buffers.spec diff --git a/docs/MESA_resize_buffers.spec b/docs/MESA_resize_buffers.spec diff --git a/docs/MESA_set_3dfx_mode.spec b/docs/MESA_set_3dfx_mode.spec diff --git a/docs/MESA_shader_debug.spec b/docs/MESA_shader_debug.spec diff --git a/docs/MESA_sprite_point.spec b/docs/MESA_sprite_point.spec diff --git a/docs/MESA_swap_control.spec b/docs/MESA_swap_control.spec diff --git a/docs/MESA_swap_frame_usage.spec b/docs/MESA_swap_frame_usage.spec diff --git a/docs/MESA_texture_array.spec b/docs/MESA_texture_array.spec diff --git a/docs/MESA_trace.spec b/docs/MESA_trace.spec diff --git a/docs/MESA_window_pos.spec b/docs/MESA_window_pos.spec diff --git a/docs/MESA_ycbcr_texture.spec b/docs/MESA_ycbcr_texture.spec diff --git a/docs/MiniGLX.html b/docs/MiniGLX.html diff --git a/docs/README.3DFX b/docs/README.3DFX diff --git a/docs/README.AMIWIN b/docs/README.AMIWIN diff --git a/docs/README.BEOS b/docs/README.BEOS diff --git a/docs/README.CYGWIN b/docs/README.CYGWIN diff --git a/docs/README.D3D b/docs/README.D3D diff --git a/docs/README.DJ b/docs/README.DJ diff --git a/docs/README.GGI b/docs/README.GGI diff --git a/docs/README.LYNXOS b/docs/README.LYNXOS diff --git a/docs/README.MINGW32 b/docs/README.MINGW32 diff --git a/docs/README.MITS b/docs/README.MITS diff --git a/docs/README.NeXT b/docs/README.NeXT diff --git a/docs/README.OS2 b/docs/README.OS2 diff --git a/docs/README.OpenStep b/docs/README.OpenStep diff --git a/docs/README.QUAKE b/docs/README.QUAKE diff --git a/docs/README.THREADS b/docs/README.THREADS diff --git a/docs/README.VMS b/docs/README.VMS diff --git a/docs/README.WIN32 b/docs/README.WIN32 diff --git a/docs/README.WINDML b/docs/README.WINDML diff --git a/docs/README.directfb b/docs/README.directfb diff --git a/docs/RELNOTES-3.1 b/docs/RELNOTES-3.1 diff --git a/docs/RELNOTES-3.2 b/docs/RELNOTES-3.2 diff --git a/docs/RELNOTES-3.2.1 b/docs/RELNOTES-3.2.1 diff --git a/docs/RELNOTES-3.3 b/docs/RELNOTES-3.3 diff --git a/docs/RELNOTES-3.4 b/docs/RELNOTES-3.4 diff --git a/docs/RELNOTES-3.4.1 b/docs/RELNOTES-3.4.1 diff --git a/docs/RELNOTES-3.4.2 b/docs/RELNOTES-3.4.2 diff --git a/docs/RELNOTES-3.5 b/docs/RELNOTES-3.5 diff --git a/docs/RELNOTES-4.0 b/docs/RELNOTES-4.0 diff --git a/docs/RELNOTES-4.0.1 b/docs/RELNOTES-4.0.1 diff --git a/docs/RELNOTES-4.0.2 b/docs/RELNOTES-4.0.2 diff --git a/docs/RELNOTES-4.0.3 b/docs/RELNOTES-4.0.3 diff --git a/docs/RELNOTES-4.1 b/docs/RELNOTES-4.1 diff --git a/docs/RELNOTES-5.0 b/docs/RELNOTES-5.0 diff --git a/docs/RELNOTES-5.0.1 b/docs/RELNOTES-5.0.1 diff --git a/docs/RELNOTES-5.0.2 b/docs/RELNOTES-5.0.2 diff --git a/docs/RELNOTES-5.1 b/docs/RELNOTES-5.1 diff --git a/docs/RELNOTES-6.0 b/docs/RELNOTES-6.0 diff --git a/docs/RELNOTES-6.0.1 b/docs/RELNOTES-6.0.1 diff --git a/docs/RELNOTES-6.1 b/docs/RELNOTES-6.1 diff --git a/docs/RELNOTES-6.2 b/docs/RELNOTES-6.2 diff --git a/docs/RELNOTES-6.2.1 b/docs/RELNOTES-6.2.1 diff --git a/docs/RELNOTES-6.3 b/docs/RELNOTES-6.3 diff --git a/docs/RELNOTES-6.3.1 b/docs/RELNOTES-6.3.1 diff --git a/docs/RELNOTES-6.3.2 b/docs/RELNOTES-6.3.2 diff --git a/docs/RELNOTES-6.4 b/docs/RELNOTES-6.4 diff --git a/docs/VERSIONS b/docs/VERSIONS diff --git a/docs/banner.html b/docs/banner.html diff --git a/docs/bugs.html b/docs/bugs.html diff --git a/docs/conform.html b/docs/conform.html diff --git a/docs/contents.html b/docs/contents.html diff --git a/docs/debugging.html b/docs/debugging.html diff --git a/docs/demos.html b/docs/demos.html diff --git a/docs/developers.html b/docs/developers.html diff --git a/docs/devinfo.html b/docs/devinfo.html diff --git a/docs/dispatch.html b/docs/dispatch.html diff --git a/docs/download.html b/docs/download.html diff --git a/docs/enums.txt b/docs/enums.txt diff --git a/docs/envvars.html b/docs/envvars.html diff --git a/docs/extensions.html b/docs/extensions.html diff --git a/docs/faq.html b/docs/faq.html diff --git a/docs/fbdev-dri.html b/docs/fbdev-dri.html diff --git a/docs/games.html b/docs/games.html diff --git a/docs/gears.png b/docs/gears.png diff --git a/docs/glfbdev-driver.html b/docs/glfbdev-driver.html diff --git a/docs/glu.html b/docs/glu.html diff --git a/docs/helpwanted.html b/docs/helpwanted.html diff --git a/docs/index.html b/docs/index.html diff --git a/docs/install.html b/docs/install.html diff --git a/docs/intro.html b/docs/intro.html diff --git a/docs/libraries.html b/docs/libraries.html diff --git a/docs/license.html b/docs/license.html diff --git a/docs/lists.html b/docs/lists.html diff --git a/docs/mangling.html b/docs/mangling.html diff --git a/docs/mesa.css b/docs/mesa.css diff --git a/docs/modelers.html b/docs/modelers.html diff --git a/docs/news.html b/docs/news.html diff --git a/docs/osmesa.html b/docs/osmesa.html diff --git a/docs/pbuffers.html b/docs/pbuffers.html diff --git a/docs/perf.html b/docs/perf.html diff --git a/docs/precompiled.html b/docs/precompiled.html diff --git a/docs/relnotes-6.4.1.html b/docs/relnotes-6.4.1.html diff --git a/docs/relnotes-6.4.2.html b/docs/relnotes-6.4.2.html diff --git a/docs/relnotes-6.4.html b/docs/relnotes-6.4.html diff --git a/docs/relnotes-6.5.1.html b/docs/relnotes-6.5.1.html diff --git a/docs/relnotes-6.5.2.html b/docs/relnotes-6.5.2.html diff --git a/docs/relnotes-6.5.3.html b/docs/relnotes-6.5.3.html diff --git a/docs/relnotes-6.5.html b/docs/relnotes-6.5.html diff --git a/docs/relnotes-7.0.html b/docs/relnotes-7.0.html diff --git a/docs/relnotes-7.1.html b/docs/relnotes-7.1.html diff --git a/docs/relnotes.html b/docs/relnotes.html diff --git a/docs/repository.html b/docs/repository.html diff --git a/docs/science.html b/docs/science.html diff --git a/docs/shading.html b/docs/shading.html diff --git a/docs/sourcedocs.html b/docs/sourcedocs.html diff --git a/docs/subset-A.html b/docs/subset-A.html diff --git a/docs/subset.html b/docs/subset.html diff --git a/docs/systems.html b/docs/systems.html diff --git a/docs/thanks.html b/docs/thanks.html diff --git a/docs/utilities.html b/docs/utilities.html diff --git a/docs/utility.html b/docs/utility.html diff --git a/docs/versions.html b/docs/versions.html diff --git a/docs/webmaster.html b/docs/webmaster.html diff --git a/docs/xlibdriver.html b/docs/xlibdriver.html diff --git a/doxygen/.gitignore b/doxygen/.gitignore diff --git a/doxygen/Makefile b/doxygen/Makefile diff --git a/doxygen/README b/doxygen/README diff --git a/doxygen/common.doxy b/doxygen/common.doxy diff --git a/doxygen/core_subset.doxy b/doxygen/core_subset.doxy diff --git a/doxygen/doxy.bat b/doxygen/doxy.bat diff --git a/doxygen/glapi.doxy b/doxygen/glapi.doxy diff --git a/doxygen/header.html b/doxygen/header.html diff --git a/doxygen/header_subset.html b/doxygen/header_subset.html diff --git a/doxygen/main.doxy b/doxygen/main.doxy diff --git a/doxygen/math.doxy b/doxygen/math.doxy diff --git a/doxygen/math_subset.doxy b/doxygen/math_subset.doxy diff --git a/doxygen/miniglx.doxy b/doxygen/miniglx.doxy diff --git a/doxygen/radeon_subset.doxy b/doxygen/radeon_subset.doxy diff --git a/doxygen/shader.doxy b/doxygen/shader.doxy diff --git a/doxygen/swrast.doxy b/doxygen/swrast.doxy diff --git a/doxygen/swrast_setup.doxy b/doxygen/swrast_setup.doxy diff --git a/doxygen/tnl.doxy b/doxygen/tnl.doxy diff --git a/doxygen/tnl_dd.doxy b/doxygen/tnl_dd.doxy diff --git a/doxygen/vbo.doxy b/doxygen/vbo.doxy diff --git a/include/GL/Makefile.am b/include/GL/Makefile.am diff --git a/include/GL/amesa.h b/include/GL/amesa.h diff --git a/include/GL/directfbgl.h b/include/GL/directfbgl.h diff --git a/include/GL/dmesa.h b/include/GL/dmesa.h diff --git a/include/GL/foomesa.h b/include/GL/foomesa.h diff --git a/include/GL/fxmesa.h b/include/GL/fxmesa.h diff --git a/include/GL/ggimesa.h b/include/GL/ggimesa.h diff --git a/include/GL/gl.h b/include/GL/gl.h diff --git a/include/GL/gl_mangle.h b/include/GL/gl_mangle.h diff --git a/include/GL/glext.h b/include/GL/glext.h diff --git a/include/GL/glfbdev.h b/include/GL/glfbdev.h diff --git a/include/GL/glu.h b/include/GL/glu.h diff --git a/include/GL/glu_mangle.h b/include/GL/glu_mangle.h diff --git a/include/GL/glut.h b/include/GL/glut.h diff --git a/include/GL/glut_h.dja b/include/GL/glut_h.dja diff --git a/include/GL/glutf90.h b/include/GL/glutf90.h diff --git a/include/GL/glx.h b/include/GL/glx.h diff --git a/include/GL/glx_mangle.h b/include/GL/glx_mangle.h diff --git a/include/GL/glxext.h b/include/GL/glxext.h diff --git a/include/GL/internal/dri_interface.h b/include/GL/internal/dri_interface.h index 8d24e31..bd898d2 100644 --- a/include/GL/internal/dri_interface.h +++ b/include/GL/internal/dri_interface.h @@ -512,6 +512,17 @@ struct __DRIdrawableRec { */ void (*copySubBuffer)(__DRInativeDisplay *dpy, void *drawablePrivate, int x, int y, int w, int h); + + /** + * Like the screen version of getMSC, but also takes a drawable so that + * the appropriate pipe's counter can be retrieved. + * + * Get the number of vertical refreshes since some point in time before + * this function was first called (i.e., system start up). + * + * \since Internal API version 20070925. + */ + int (*getMSC)(__DRInativeDisplay *dpy, void *drawablePrivate, int64_t *msc); }; #endif diff --git a/include/GL/internal/glcore.h b/include/GL/internal/glcore.h diff --git a/include/GL/internal/sarea.h b/include/GL/internal/sarea.h diff --git a/include/GL/mesa_wgl.h b/include/GL/mesa_wgl.h diff --git a/include/GL/mglmesa.h b/include/GL/mglmesa.h diff --git a/include/GL/miniglx.h b/include/GL/miniglx.h diff --git a/include/GL/osmesa.h b/include/GL/osmesa.h diff --git a/include/GL/svgamesa.h b/include/GL/svgamesa.h diff --git a/include/GL/uglglutshapes.h b/include/GL/uglglutshapes.h diff --git a/include/GL/uglmesa.h b/include/GL/uglmesa.h diff --git a/include/GL/vms_x_fix.h b/include/GL/vms_x_fix.h diff --git a/include/GL/wmesa.h b/include/GL/wmesa.h diff --git a/include/GL/xmesa.h b/include/GL/xmesa.h diff --git a/include/GL/xmesa_x.h b/include/GL/xmesa_x.h diff --git a/include/GL/xmesa_xf86.h b/include/GL/xmesa_xf86.h diff --git a/include/GLES/egl.h b/include/GLES/egl.h diff --git a/include/GLES/egltypes.h b/include/GLES/egltypes.h diff --git a/include/GLView.h b/include/GLView.h diff --git a/mms-config. b/mms-config. diff --git a/progs/Makefile b/progs/Makefile diff --git a/progs/beos/GLInfo.cpp b/progs/beos/GLInfo.cpp diff --git a/progs/beos/Makefile b/progs/beos/Makefile diff --git a/progs/beos/demo.cpp b/progs/beos/demo.cpp diff --git a/progs/beos/sample.cpp b/progs/beos/sample.cpp diff --git a/progs/demos/.gitignore b/progs/demos/.gitignore diff --git a/progs/demos/Makefile b/progs/demos/Makefile diff --git a/progs/demos/Makefile.cygnus b/progs/demos/Makefile.cygnus diff --git a/progs/demos/Makefile.win b/progs/demos/Makefile.win diff --git a/progs/demos/README b/progs/demos/README diff --git a/progs/demos/Windows/all.dsp b/progs/demos/Windows/all.dsp diff --git a/progs/demos/Windows/bounce.dsp b/progs/demos/Windows/bounce.dsp diff --git a/progs/demos/Windows/clearspd.dsp b/progs/demos/Windows/clearspd.dsp diff --git a/progs/demos/Windows/cubemap.dsp b/progs/demos/Windows/cubemap.dsp diff --git a/progs/demos/Windows/demos.dsw b/progs/demos/Windows/demos.dsw diff --git a/progs/demos/Windows/drawpix.dsp b/progs/demos/Windows/drawpix.dsp diff --git a/progs/demos/Windows/fire.dsp b/progs/demos/Windows/fire.dsp diff --git a/progs/demos/Windows/gears.dsp b/progs/demos/Windows/gears.dsp diff --git a/progs/demos/Windows/geartrain.dsp b/progs/demos/Windows/geartrain.dsp diff --git a/progs/demos/Windows/glinfo.dsp b/progs/demos/Windows/glinfo.dsp diff --git a/progs/demos/Windows/gloss.dsp b/progs/demos/Windows/gloss.dsp diff --git a/progs/demos/Windows/gltestperf.dsp b/progs/demos/Windows/gltestperf.dsp diff --git a/progs/demos/Windows/glutfx.dsp b/progs/demos/Windows/glutfx.dsp diff --git a/progs/demos/Windows/ipers.dsp b/progs/demos/Windows/ipers.dsp diff --git a/progs/demos/Windows/isosurf.dsp b/progs/demos/Windows/isosurf.dsp diff --git a/progs/demos/Windows/loadbias.dsp b/progs/demos/Windows/loadbias.dsp diff --git a/progs/demos/Windows/morph3d.dsp b/progs/demos/Windows/morph3d.dsp diff --git a/progs/demos/Windows/multiarb.dsp b/progs/demos/Windows/multiarb.dsp diff --git a/progs/demos/Windows/occlude.dsp b/progs/demos/Windows/occlude.dsp diff --git a/progs/demos/Windows/osdemo.dsp b/progs/demos/Windows/osdemo.dsp diff --git a/progs/demos/Windows/paltex.dsp b/progs/demos/Windows/paltex.dsp diff --git a/progs/demos/Windows/pixeltex.dsp b/progs/demos/Windows/pixeltex.dsp diff --git a/progs/demos/Windows/pointblast.dsp b/progs/demos/Windows/pointblast.dsp diff --git a/progs/demos/Windows/rain.dsp b/progs/demos/Windows/rain.dsp diff --git a/progs/demos/Windows/ray.dsp b/progs/demos/Windows/ray.dsp diff --git a/progs/demos/Windows/readpix.dsp b/progs/demos/Windows/readpix.dsp diff --git a/progs/demos/Windows/reflect.dsp b/progs/demos/Windows/reflect.dsp diff --git a/progs/demos/Windows/renormal.dsp b/progs/demos/Windows/renormal.dsp diff --git a/progs/demos/Windows/shadowtex.dsp b/progs/demos/Windows/shadowtex.dsp diff --git a/progs/demos/Windows/spectex.dsp b/progs/demos/Windows/spectex.dsp diff --git a/progs/demos/Windows/spriteblast.dsp b/progs/demos/Windows/spriteblast.dsp diff --git a/progs/demos/Windows/stex3d.dsp b/progs/demos/Windows/stex3d.dsp diff --git a/progs/demos/Windows/teapot.dsp b/progs/demos/Windows/teapot.dsp diff --git a/progs/demos/Windows/terrain.dsp b/progs/demos/Windows/terrain.dsp diff --git a/progs/demos/Windows/tessdemo.dsp b/progs/demos/Windows/tessdemo.dsp diff --git a/progs/demos/Windows/texcyl.dsp b/progs/demos/Windows/texcyl.dsp diff --git a/progs/demos/Windows/texdown.dsp b/progs/demos/Windows/texdown.dsp diff --git a/progs/demos/Windows/texenv.dsp b/progs/demos/Windows/texenv.dsp diff --git a/progs/demos/Windows/texobj.dsp b/progs/demos/Windows/texobj.dsp diff --git a/progs/demos/Windows/trispd.dsp b/progs/demos/Windows/trispd.dsp diff --git a/progs/demos/Windows/tunnel.dsp b/progs/demos/Windows/tunnel.dsp diff --git a/progs/demos/Windows/tunnel2.dsp b/progs/demos/Windows/tunnel2.dsp diff --git a/progs/demos/Windows/winpos.dsp b/progs/demos/Windows/winpos.dsp diff --git a/progs/demos/arbfplight.c b/progs/demos/arbfplight.c diff --git a/progs/demos/arbfslight.c b/progs/demos/arbfslight.c diff --git a/progs/demos/arbocclude.c b/progs/demos/arbocclude.c diff --git a/progs/demos/bounce.c b/progs/demos/bounce.c diff --git a/progs/demos/clearspd.c b/progs/demos/clearspd.c diff --git a/progs/demos/cubemap.c b/progs/demos/cubemap.c diff --git a/progs/demos/descrip.mms b/progs/demos/descrip.mms diff --git a/progs/demos/drawpix.c b/progs/demos/drawpix.c diff --git a/progs/demos/engine.c b/progs/demos/engine.c diff --git a/progs/demos/fire.c b/progs/demos/fire.c diff --git a/progs/demos/fogcoord.c b/progs/demos/fogcoord.c diff --git a/progs/demos/fplight.c b/progs/demos/fplight.c diff --git a/progs/demos/fslight.c b/progs/demos/fslight.c diff --git a/progs/demos/gamma.c b/progs/demos/gamma.c diff --git a/progs/demos/gearbox.c b/progs/demos/gearbox.c diff --git a/progs/demos/gears.c b/progs/demos/gears.c diff --git a/progs/demos/geartrain.c b/progs/demos/geartrain.c diff --git a/progs/demos/geartrain.dat b/progs/demos/geartrain.dat diff --git a/progs/demos/glinfo.c b/progs/demos/glinfo.c diff --git a/progs/demos/gloss.c b/progs/demos/gloss.c diff --git a/progs/demos/glslnoise.c b/progs/demos/glslnoise.c diff --git a/progs/demos/gltestperf.c b/progs/demos/gltestperf.c diff --git a/progs/demos/glutfx.c b/progs/demos/glutfx.c diff --git a/progs/demos/ipers.c b/progs/demos/ipers.c diff --git a/progs/demos/isosurf.c b/progs/demos/isosurf.c diff --git a/progs/demos/isosurf.dat b/progs/demos/isosurf.dat diff --git a/progs/demos/lodbias.c b/progs/demos/lodbias.c diff --git a/progs/demos/morph3d.c b/progs/demos/morph3d.c diff --git a/progs/demos/multiarb.c b/progs/demos/multiarb.c diff --git a/progs/demos/occlude.c b/progs/demos/occlude.c diff --git a/progs/demos/paltex.c b/progs/demos/paltex.c diff --git a/progs/demos/particles.cxx b/progs/demos/particles.cxx diff --git a/progs/demos/particles.h b/progs/demos/particles.h diff --git a/progs/demos/pointblast.c b/progs/demos/pointblast.c diff --git a/progs/demos/rain.cxx b/progs/demos/rain.cxx diff --git a/progs/demos/ray.c b/progs/demos/ray.c diff --git a/progs/demos/readpix.c b/progs/demos/readpix.c diff --git a/progs/demos/reflect.c b/progs/demos/reflect.c diff --git a/progs/demos/renormal.c b/progs/demos/renormal.c diff --git a/progs/demos/shadowtex.c b/progs/demos/shadowtex.c diff --git a/progs/demos/singlebuffer.c b/progs/demos/singlebuffer.c diff --git a/progs/demos/spectex.c b/progs/demos/spectex.c diff --git a/progs/demos/spriteblast.c b/progs/demos/spriteblast.c diff --git a/progs/demos/stex3d.c b/progs/demos/stex3d.c diff --git a/progs/demos/streaming_rect.c b/progs/demos/streaming_rect.c diff --git a/progs/demos/teapot.c b/progs/demos/teapot.c diff --git a/progs/demos/terrain.c b/progs/demos/terrain.c diff --git a/progs/demos/terrain.dat b/progs/demos/terrain.dat diff --git a/progs/demos/tessdemo.c b/progs/demos/tessdemo.c diff --git a/progs/demos/texcyl.c b/progs/demos/texcyl.c diff --git a/progs/demos/texdown.c b/progs/demos/texdown.c diff --git a/progs/demos/texenv.c b/progs/demos/texenv.c diff --git a/progs/demos/texobj.c b/progs/demos/texobj.c diff --git a/progs/demos/trispd.c b/progs/demos/trispd.c diff --git a/progs/demos/tunnel.c b/progs/demos/tunnel.c diff --git a/progs/demos/tunnel2.c b/progs/demos/tunnel2.c diff --git a/progs/demos/tunneldat.h b/progs/demos/tunneldat.h diff --git a/progs/demos/vao_demo.c b/progs/demos/vao_demo.c diff --git a/progs/demos/winpos.c b/progs/demos/winpos.c diff --git a/progs/directfb/Makefile b/progs/directfb/Makefile diff --git a/progs/directfb/df_gears.c b/progs/directfb/df_gears.c diff --git a/progs/directfb/df_morph3d.c b/progs/directfb/df_morph3d.c diff --git a/progs/directfb/df_reflect.c b/progs/directfb/df_reflect.c diff --git a/progs/directfb/multi_window.c b/progs/directfb/multi_window.c diff --git a/progs/egl/Makefile b/progs/egl/Makefile diff --git a/progs/egl/demo1.c b/progs/egl/demo1.c diff --git a/progs/egl/demo2.c b/progs/egl/demo2.c diff --git a/progs/egl/demo3.c b/progs/egl/demo3.c diff --git a/progs/egl/eglgears.c b/progs/egl/eglgears.c diff --git a/progs/egl/eglinfo.c b/progs/egl/eglinfo.c diff --git a/progs/fbdev/Makefile b/progs/fbdev/Makefile diff --git a/progs/fbdev/glfbdevtest.c b/progs/fbdev/glfbdevtest.c diff --git a/progs/fp/Makefile b/progs/fp/Makefile diff --git a/progs/fp/point-position.c b/progs/fp/point-position.c diff --git a/progs/fp/tri-abs.c b/progs/fp/tri-abs.c diff --git a/progs/fp/tri-add.c b/progs/fp/tri-add.c diff --git a/progs/fp/tri-cmp.c b/progs/fp/tri-cmp.c diff --git a/progs/fp/tri-cos.c b/progs/fp/tri-cos.c diff --git a/progs/fp/tri-depth.c b/progs/fp/tri-depth.c diff --git a/progs/fp/tri-depth2.c b/progs/fp/tri-depth2.c diff --git a/progs/fp/tri-depthwrite.c b/progs/fp/tri-depthwrite.c diff --git a/progs/fp/tri-depthwrite2.c b/progs/fp/tri-depthwrite2.c diff --git a/progs/fp/tri-dp3.c b/progs/fp/tri-dp3.c diff --git a/progs/fp/tri-dp4.c b/progs/fp/tri-dp4.c diff --git a/progs/fp/tri-dph.c b/progs/fp/tri-dph.c diff --git a/progs/fp/tri-dst.c b/progs/fp/tri-dst.c diff --git a/progs/fp/tri-ex2.c b/progs/fp/tri-ex2.c diff --git a/progs/fp/tri-flr.c b/progs/fp/tri-flr.c diff --git a/progs/fp/tri-fp.c b/progs/fp/tri-fp.c diff --git a/progs/fp/tri-frc.c b/progs/fp/tri-frc.c diff --git a/progs/fp/tri-inv.c b/progs/fp/tri-inv.c diff --git a/progs/fp/tri-kil.c b/progs/fp/tri-kil.c diff --git a/progs/fp/tri-lg2.c b/progs/fp/tri-lg2.c diff --git a/progs/fp/tri-lit.c b/progs/fp/tri-lit.c diff --git a/progs/fp/tri-lrp.c b/progs/fp/tri-lrp.c diff --git a/progs/fp/tri-mad.c b/progs/fp/tri-mad.c diff --git a/progs/fp/tri-max.c b/progs/fp/tri-max.c diff --git a/progs/fp/tri-min.c b/progs/fp/tri-min.c diff --git a/progs/fp/tri-mov.c b/progs/fp/tri-mov.c diff --git a/progs/fp/tri-mul.c b/progs/fp/tri-mul.c diff --git a/progs/fp/tri-param.c b/progs/fp/tri-param.c diff --git a/progs/fp/tri-position.c b/progs/fp/tri-position.c diff --git a/progs/fp/tri-pow.c b/progs/fp/tri-pow.c diff --git a/progs/fp/tri-rcp.c b/progs/fp/tri-rcp.c diff --git a/progs/fp/tri-rsq.c b/progs/fp/tri-rsq.c diff --git a/progs/fp/tri-scs.c b/progs/fp/tri-scs.c diff --git a/progs/fp/tri-sge.c b/progs/fp/tri-sge.c diff --git a/progs/fp/tri-sge2.c b/progs/fp/tri-sge2.c diff --git a/progs/fp/tri-sin.c b/progs/fp/tri-sin.c diff --git a/progs/fp/tri-slt.c b/progs/fp/tri-slt.c diff --git a/progs/fp/tri-sub.c b/progs/fp/tri-sub.c diff --git a/progs/fp/tri-swz.c b/progs/fp/tri-swz.c diff --git a/progs/fp/tri-swz2.c b/progs/fp/tri-swz2.c diff --git a/progs/fp/tri-tex.c b/progs/fp/tri-tex.c diff --git a/progs/fp/tri-xpd.c b/progs/fp/tri-xpd.c diff --git a/progs/ggi/asc-view.c b/progs/ggi/asc-view.c diff --git a/progs/ggi/blah b/progs/ggi/blah diff --git a/progs/ggi/blat b/progs/ggi/blat diff --git a/progs/ggi/box.asc b/progs/ggi/box.asc diff --git a/progs/ggi/cone.asc b/progs/ggi/cone.asc diff --git a/progs/ggi/gears.c b/progs/ggi/gears.c diff --git a/progs/ggi/gears2.c b/progs/ggi/gears2.c diff --git a/progs/ggi/sphere.asc b/progs/ggi/sphere.asc diff --git a/progs/ggi/torus.asc b/progs/ggi/torus.asc diff --git a/progs/ggi/tube.asc b/progs/ggi/tube.asc diff --git a/progs/glsl/CH06-brick.frag.txt b/progs/glsl/CH06-brick.frag.txt diff --git a/progs/glsl/CH06-brick.vert.txt b/progs/glsl/CH06-brick.vert.txt diff --git a/progs/glsl/CH11-bumpmap.frag.txt b/progs/glsl/CH11-bumpmap.frag.txt diff --git a/progs/glsl/CH11-bumpmap.vert.txt b/progs/glsl/CH11-bumpmap.vert.txt diff --git a/progs/glsl/CH11-toyball.frag.txt b/progs/glsl/CH11-toyball.frag.txt diff --git a/progs/glsl/CH11-toyball.vert.txt b/progs/glsl/CH11-toyball.vert.txt diff --git a/progs/glsl/CH18-mandel.frag.txt b/progs/glsl/CH18-mandel.frag.txt diff --git a/progs/glsl/CH18-mandel.vert.txt b/progs/glsl/CH18-mandel.vert.txt diff --git a/progs/glsl/Makefile b/progs/glsl/Makefile diff --git a/progs/glsl/bitmap.c b/progs/glsl/bitmap.c diff --git a/progs/glsl/brick.c b/progs/glsl/brick.c diff --git a/progs/glsl/bump.c b/progs/glsl/bump.c diff --git a/progs/glsl/cubemap.frag.txt b/progs/glsl/cubemap.frag.txt diff --git a/progs/glsl/deriv.c b/progs/glsl/deriv.c diff --git a/progs/glsl/mandelbrot.c b/progs/glsl/mandelbrot.c diff --git a/progs/glsl/noise.c b/progs/glsl/noise.c diff --git a/progs/glsl/points.c b/progs/glsl/points.c diff --git a/progs/glsl/reflect.vert.txt b/progs/glsl/reflect.vert.txt diff --git a/progs/glsl/shadowtex.frag.txt b/progs/glsl/shadowtex.frag.txt diff --git a/progs/glsl/simple.vert.txt b/progs/glsl/simple.vert.txt diff --git a/progs/glsl/texdemo1.c b/progs/glsl/texdemo1.c diff --git a/progs/glsl/toyball.c b/progs/glsl/toyball.c diff --git a/progs/glsl/trirast.c b/progs/glsl/trirast.c diff --git a/progs/images/arch.rgb b/progs/images/arch.rgb diff --git a/progs/images/bw.rgb b/progs/images/bw.rgb diff --git a/progs/images/girl.rgb b/progs/images/girl.rgb diff --git a/progs/images/girl2.rgb b/progs/images/girl2.rgb diff --git a/progs/images/reflect.rgb b/progs/images/reflect.rgb diff --git a/progs/images/s128.rgb b/progs/images/s128.rgb diff --git a/progs/images/tile.rgb b/progs/images/tile.rgb diff --git a/progs/images/tree2.rgba b/progs/images/tree2.rgba diff --git a/progs/images/tree3.rgb b/progs/images/tree3.rgb diff --git a/progs/images/wrs_logo.rgb b/progs/images/wrs_logo.rgb diff --git a/progs/miniglx/Makefile b/progs/miniglx/Makefile diff --git a/progs/miniglx/glfbdevtest.c b/progs/miniglx/glfbdevtest.c diff --git a/progs/miniglx/manytex.c b/progs/miniglx/manytex.c diff --git a/progs/miniglx/miniglxsample.c b/progs/miniglx/miniglxsample.c diff --git a/progs/miniglx/miniglxtest.c b/progs/miniglx/miniglxtest.c diff --git a/progs/miniglx/sample_server.c b/progs/miniglx/sample_server.c diff --git a/progs/miniglx/sample_server2.c b/progs/miniglx/sample_server2.c diff --git a/progs/miniglx/texline.c b/progs/miniglx/texline.c diff --git a/progs/osdemos/Makefile b/progs/osdemos/Makefile diff --git a/progs/osdemos/osdemo.c b/progs/osdemos/osdemo.c diff --git a/progs/osdemos/osdemo16.c b/progs/osdemos/osdemo16.c diff --git a/progs/osdemos/osdemo32.c b/progs/osdemos/osdemo32.c diff --git a/progs/osdemos/ostest1.c b/progs/osdemos/ostest1.c diff --git a/progs/redbook/.gitignore b/progs/redbook/.gitignore diff --git a/progs/redbook/Makefile b/progs/redbook/Makefile diff --git a/progs/redbook/Makefile.win b/progs/redbook/Makefile.win diff --git a/progs/redbook/README b/progs/redbook/README diff --git a/progs/redbook/Windows/redbook.dsw b/progs/redbook/Windows/redbook.dsw diff --git a/progs/redbook/Windows/teapots.dsp b/progs/redbook/Windows/teapots.dsp diff --git a/progs/redbook/aaindex.c b/progs/redbook/aaindex.c diff --git a/progs/redbook/aapoly.c b/progs/redbook/aapoly.c diff --git a/progs/redbook/aargb.c b/progs/redbook/aargb.c diff --git a/progs/redbook/accanti.c b/progs/redbook/accanti.c diff --git a/progs/redbook/accpersp.c b/progs/redbook/accpersp.c diff --git a/progs/redbook/alpha.c b/progs/redbook/alpha.c diff --git a/progs/redbook/alpha3D.c b/progs/redbook/alpha3D.c diff --git a/progs/redbook/anti.c b/progs/redbook/anti.c diff --git a/progs/redbook/bezcurve.c b/progs/redbook/bezcurve.c diff --git a/progs/redbook/bezmesh.c b/progs/redbook/bezmesh.c diff --git a/progs/redbook/checker.c b/progs/redbook/checker.c diff --git a/progs/redbook/clip.c b/progs/redbook/clip.c diff --git a/progs/redbook/colormat.c b/progs/redbook/colormat.c diff --git a/progs/redbook/cube.c b/progs/redbook/cube.c diff --git a/progs/redbook/depthcue.c b/progs/redbook/depthcue.c diff --git a/progs/redbook/dof.c b/progs/redbook/dof.c diff --git a/progs/redbook/double.c b/progs/redbook/double.c diff --git a/progs/redbook/drawf.c b/progs/redbook/drawf.c diff --git a/progs/redbook/feedback.c b/progs/redbook/feedback.c diff --git a/progs/redbook/fog.c b/progs/redbook/fog.c diff --git a/progs/redbook/fogindex.c b/progs/redbook/fogindex.c diff --git a/progs/redbook/font.c b/progs/redbook/font.c diff --git a/progs/redbook/hello.c b/progs/redbook/hello.c diff --git a/progs/redbook/image.c b/progs/redbook/image.c diff --git a/progs/redbook/jitter.h b/progs/redbook/jitter.h diff --git a/progs/redbook/light.c b/progs/redbook/light.c diff --git a/progs/redbook/lines.c b/progs/redbook/lines.c diff --git a/progs/redbook/list.c b/progs/redbook/list.c diff --git a/progs/redbook/material.c b/progs/redbook/material.c diff --git a/progs/redbook/mipmap.c b/progs/redbook/mipmap.c diff --git a/progs/redbook/model.c b/progs/redbook/model.c diff --git a/progs/redbook/movelight.c b/progs/redbook/movelight.c diff --git a/progs/redbook/nurbs.c b/progs/redbook/nurbs.c diff --git a/progs/redbook/pickdepth.c b/progs/redbook/pickdepth.c diff --git a/progs/redbook/picksquare.c b/progs/redbook/picksquare.c diff --git a/progs/redbook/plane.c b/progs/redbook/plane.c diff --git a/progs/redbook/planet.c b/progs/redbook/planet.c diff --git a/progs/redbook/polyoff.c b/progs/redbook/polyoff.c diff --git a/progs/redbook/polys.c b/progs/redbook/polys.c diff --git a/progs/redbook/quadric.c b/progs/redbook/quadric.c diff --git a/progs/redbook/robot.c b/progs/redbook/robot.c diff --git a/progs/redbook/sccolorlight.c b/progs/redbook/sccolorlight.c diff --git a/progs/redbook/scene.c b/progs/redbook/scene.c diff --git a/progs/redbook/scenebamb.c b/progs/redbook/scenebamb.c diff --git a/progs/redbook/sceneflat.c b/progs/redbook/sceneflat.c diff --git a/progs/redbook/select.c b/progs/redbook/select.c diff --git a/progs/redbook/smooth.c b/progs/redbook/smooth.c diff --git a/progs/redbook/stencil.c b/progs/redbook/stencil.c diff --git a/progs/redbook/stroke.c b/progs/redbook/stroke.c diff --git a/progs/redbook/surface.c b/progs/redbook/surface.c diff --git a/progs/redbook/teaambient.c b/progs/redbook/teaambient.c diff --git a/progs/redbook/teapots.c b/progs/redbook/teapots.c diff --git a/progs/redbook/tess.c b/progs/redbook/tess.c diff --git a/progs/redbook/tesswind.c b/progs/redbook/tesswind.c diff --git a/progs/redbook/texbind.c b/progs/redbook/texbind.c diff --git a/progs/redbook/texgen.c b/progs/redbook/texgen.c diff --git a/progs/redbook/texprox.c b/progs/redbook/texprox.c diff --git a/progs/redbook/texsub.c b/progs/redbook/texsub.c diff --git a/progs/redbook/texturesurf.c b/progs/redbook/texturesurf.c diff --git a/progs/redbook/torus.c b/progs/redbook/torus.c diff --git a/progs/redbook/trim.c b/progs/redbook/trim.c diff --git a/progs/redbook/unproject.c b/progs/redbook/unproject.c diff --git a/progs/redbook/varray.c b/progs/redbook/varray.c diff --git a/progs/redbook/wrap.c b/progs/redbook/wrap.c diff --git a/progs/samples/.gitignore b/progs/samples/.gitignore diff --git a/progs/samples/Makefile b/progs/samples/Makefile diff --git a/progs/samples/Makefile.DJ b/progs/samples/Makefile.DJ diff --git a/progs/samples/Makefile.dja b/progs/samples/Makefile.dja diff --git a/progs/samples/Makefile.mgw b/progs/samples/Makefile.mgw diff --git a/progs/samples/Makefile.win b/progs/samples/Makefile.win diff --git a/progs/samples/README b/progs/samples/README diff --git a/progs/samples/accum.c b/progs/samples/accum.c diff --git a/progs/samples/bitmap1.c b/progs/samples/bitmap1.c diff --git a/progs/samples/bitmap2.c b/progs/samples/bitmap2.c diff --git a/progs/samples/blendeq.c b/progs/samples/blendeq.c diff --git a/progs/samples/blendxor.c b/progs/samples/blendxor.c diff --git a/progs/samples/copy.c b/progs/samples/copy.c diff --git a/progs/samples/cursor.c b/progs/samples/cursor.c diff --git a/progs/samples/depth.c b/progs/samples/depth.c diff --git a/progs/samples/eval.c b/progs/samples/eval.c diff --git a/progs/samples/fog.c b/progs/samples/fog.c diff --git a/progs/samples/font.c b/progs/samples/font.c diff --git a/progs/samples/line.c b/progs/samples/line.c diff --git a/progs/samples/loadppm.c b/progs/samples/loadppm.c diff --git a/progs/samples/logo.c b/progs/samples/logo.c diff --git a/progs/samples/nurb.c b/progs/samples/nurb.c diff --git a/progs/samples/oglinfo.c b/progs/samples/oglinfo.c diff --git a/progs/samples/olympic.c b/progs/samples/olympic.c diff --git a/progs/samples/overlay.c b/progs/samples/overlay.c diff --git a/progs/samples/point.c b/progs/samples/point.c diff --git a/progs/samples/prim.c b/progs/samples/prim.c diff --git a/progs/samples/quad.c b/progs/samples/quad.c diff --git a/progs/samples/rgbtoppm.c b/progs/samples/rgbtoppm.c diff --git a/progs/samples/select.c b/progs/samples/select.c diff --git a/progs/samples/shape.c b/progs/samples/shape.c diff --git a/progs/samples/sphere.c b/progs/samples/sphere.c diff --git a/progs/samples/star.c b/progs/samples/star.c diff --git a/progs/samples/stencil.c b/progs/samples/stencil.c diff --git a/progs/samples/stretch.c b/progs/samples/stretch.c diff --git a/progs/samples/texture.c b/progs/samples/texture.c diff --git a/progs/samples/tkmap.c b/progs/samples/tkmap.c diff --git a/progs/samples/tri.c b/progs/samples/tri.c diff --git a/progs/samples/wave.c b/progs/samples/wave.c diff --git a/progs/slang/Makefile b/progs/slang/Makefile diff --git a/progs/slang/README b/progs/slang/README diff --git a/progs/slang/cltest.c b/progs/slang/cltest.c diff --git a/progs/slang/cltest.txt b/progs/slang/cltest.txt diff --git a/progs/slang/framework.c b/progs/slang/framework.c diff --git a/progs/slang/framework.h b/progs/slang/framework.h diff --git a/progs/slang/sotest.c b/progs/slang/sotest.c diff --git a/progs/slang/vstest.c b/progs/slang/vstest.c diff --git a/progs/slang/vstest.txt b/progs/slang/vstest.txt diff --git a/progs/slang/windows/vc60/cltest.dsp b/progs/slang/windows/vc60/cltest.dsp diff --git a/progs/slang/windows/vc60/framework.dsp b/progs/slang/windows/vc60/framework.dsp diff --git a/progs/slang/windows/vc60/slang.dsw b/progs/slang/windows/vc60/slang.dsw diff --git a/progs/slang/windows/vc60/sotest.dsp b/progs/slang/windows/vc60/sotest.dsp diff --git a/progs/slang/windows/vc60/vstest.dsp b/progs/slang/windows/vc60/vstest.dsp diff --git a/progs/tests/.gitignore b/progs/tests/.gitignore diff --git a/progs/tests/Makefile b/progs/tests/Makefile diff --git a/progs/tests/Makefile.win b/progs/tests/Makefile.win diff --git a/progs/tests/afsmultiarb.c b/progs/tests/afsmultiarb.c diff --git a/progs/tests/antialias.c b/progs/tests/antialias.c diff --git a/progs/tests/api_speed.c b/progs/tests/api_speed.c diff --git a/progs/tests/api_speed.py b/progs/tests/api_speed.py diff --git a/progs/tests/arbfpspec.c b/progs/tests/arbfpspec.c diff --git a/progs/tests/arbfptest1.c b/progs/tests/arbfptest1.c diff --git a/progs/tests/arbfptexture.c b/progs/tests/arbfptexture.c diff --git a/progs/tests/arbfptrig.c b/progs/tests/arbfptrig.c diff --git a/progs/tests/arbnpot-mipmap.c b/progs/tests/arbnpot-mipmap.c diff --git a/progs/tests/arbnpot.c b/progs/tests/arbnpot.c diff --git a/progs/tests/arbvptest1.c b/progs/tests/arbvptest1.c diff --git a/progs/tests/arbvptest3.c b/progs/tests/arbvptest3.c diff --git a/progs/tests/arbvptorus.c b/progs/tests/arbvptorus.c diff --git a/progs/tests/arbvpwarpmesh.c b/progs/tests/arbvpwarpmesh.c diff --git a/progs/tests/arraytexture.c b/progs/tests/arraytexture.c diff --git a/progs/tests/auxbuffer.c b/progs/tests/auxbuffer.c diff --git a/progs/tests/blendminmax.c b/progs/tests/blendminmax.c diff --git a/progs/tests/blendsquare.c b/progs/tests/blendsquare.c diff --git a/progs/tests/bufferobj.c b/progs/tests/bufferobj.c diff --git a/progs/tests/bug_3050.c b/progs/tests/bug_3050.c diff --git a/progs/tests/bug_3101.c b/progs/tests/bug_3101.c diff --git a/progs/tests/bug_3195.c b/progs/tests/bug_3195.c diff --git a/progs/tests/copypixrate.c b/progs/tests/copypixrate.c diff --git a/progs/tests/crossbar.c b/progs/tests/crossbar.c diff --git a/progs/tests/cva.c b/progs/tests/cva.c diff --git a/progs/tests/debugger.c b/progs/tests/debugger.c diff --git a/progs/tests/descrip.mms b/progs/tests/descrip.mms diff --git a/progs/tests/dinoshade.c b/progs/tests/dinoshade.c diff --git a/progs/tests/drawbuffers.c b/progs/tests/drawbuffers.c diff --git a/progs/tests/ext422square.c b/progs/tests/ext422square.c diff --git a/progs/tests/fbotest1.c b/progs/tests/fbotest1.c diff --git a/progs/tests/fbotest2.c b/progs/tests/fbotest2.c diff --git a/progs/tests/fbotexture.c b/progs/tests/fbotexture.c diff --git a/progs/tests/floattex.c b/progs/tests/floattex.c diff --git a/progs/tests/fog.c b/progs/tests/fog.c diff --git a/progs/tests/fogcoord.c b/progs/tests/fogcoord.c diff --git a/progs/tests/fptest1.c b/progs/tests/fptest1.c diff --git a/progs/tests/fptexture.c b/progs/tests/fptexture.c diff --git a/progs/tests/getprocaddress.c b/progs/tests/getprocaddress.c diff --git a/progs/tests/getprocaddress.py b/progs/tests/getprocaddress.py diff --git a/progs/tests/interleave.c b/progs/tests/interleave.c diff --git a/progs/tests/invert.c b/progs/tests/invert.c diff --git a/progs/tests/jkrahntest.c b/progs/tests/jkrahntest.c diff --git a/progs/tests/manytex.c b/progs/tests/manytex.c diff --git a/progs/tests/mipmap_limits.c b/progs/tests/mipmap_limits.c diff --git a/progs/tests/multipal.c b/progs/tests/multipal.c diff --git a/progs/tests/multitexarray.c b/progs/tests/multitexarray.c diff --git a/progs/tests/multiwindow.c b/progs/tests/multiwindow.c diff --git a/progs/tests/no_s3tc.c b/progs/tests/no_s3tc.c diff --git a/progs/tests/packedpixels.c b/progs/tests/packedpixels.c diff --git a/progs/tests/pbo.c b/progs/tests/pbo.c diff --git a/progs/tests/prog_parameter.c b/progs/tests/prog_parameter.c diff --git a/progs/tests/projtex.c b/progs/tests/projtex.c diff --git a/progs/tests/random.c b/progs/tests/random.c diff --git a/progs/tests/readrate.c b/progs/tests/readrate.c diff --git a/progs/tests/seccolor.c b/progs/tests/seccolor.c diff --git a/progs/tests/sharedtex.c b/progs/tests/sharedtex.c diff --git a/progs/tests/stencil_wrap.c b/progs/tests/stencil_wrap.c diff --git a/progs/tests/stencilwrap.c b/progs/tests/stencilwrap.c diff --git a/progs/tests/subtexrate.c b/progs/tests/subtexrate.c diff --git a/progs/tests/tex1d.c b/progs/tests/tex1d.c diff --git a/progs/tests/texcmp.c b/progs/tests/texcmp.c diff --git a/progs/tests/texcompress2.c b/progs/tests/texcompress2.c diff --git a/progs/tests/texfilt.c b/progs/tests/texfilt.c diff --git a/progs/tests/texgenmix.c b/progs/tests/texgenmix.c diff --git a/progs/tests/texline.c b/progs/tests/texline.c diff --git a/progs/tests/texobjshare.c b/progs/tests/texobjshare.c diff --git a/progs/tests/texrect.c b/progs/tests/texrect.c diff --git a/progs/tests/texwrap.c b/progs/tests/texwrap.c diff --git a/progs/tests/vao-01.c b/progs/tests/vao-01.c diff --git a/progs/tests/vao-02.c b/progs/tests/vao-02.c diff --git a/progs/tests/vparray.c b/progs/tests/vparray.c diff --git a/progs/tests/vpeval.c b/progs/tests/vpeval.c diff --git a/progs/tests/vptest1.c b/progs/tests/vptest1.c diff --git a/progs/tests/vptest2.c b/progs/tests/vptest2.c diff --git a/progs/tests/vptest3.c b/progs/tests/vptest3.c diff --git a/progs/tests/vptorus.c b/progs/tests/vptorus.c diff --git a/progs/tests/vpwarpmesh.c b/progs/tests/vpwarpmesh.c diff --git a/progs/tests/yuvrect.c b/progs/tests/yuvrect.c diff --git a/progs/tests/yuvsquare.c b/progs/tests/yuvsquare.c diff --git a/progs/tests/zreaddraw.c b/progs/tests/zreaddraw.c diff --git a/progs/tools/trace/Makefile b/progs/tools/trace/Makefile diff --git a/progs/tools/trace/README b/progs/tools/trace/README diff --git a/progs/tools/trace/gltrace b/progs/tools/trace/gltrace diff --git a/progs/tools/trace/gltrace.py b/progs/tools/trace/gltrace.py diff --git a/progs/tools/trace/gltrace_support.cc b/progs/tools/trace/gltrace_support.cc diff --git a/progs/tools/trace/gltrace_support.h b/progs/tools/trace/gltrace_support.h diff --git a/progs/trivial/Makefile b/progs/trivial/Makefile diff --git a/progs/trivial/clear.c b/progs/trivial/clear.c diff --git a/progs/trivial/dlist-dangling.c b/progs/trivial/dlist-dangling.c diff --git a/progs/trivial/dlist-edgeflag-dangling.c b/progs/trivial/dlist-edgeflag-dangling.c diff --git a/progs/trivial/dlist-edgeflag.c b/progs/trivial/dlist-edgeflag.c diff --git a/progs/trivial/drawarrays.c b/progs/trivial/drawarrays.c diff --git a/progs/trivial/drawelements.c b/progs/trivial/drawelements.c diff --git a/progs/trivial/drawrange.c b/progs/trivial/drawrange.c diff --git a/progs/trivial/line-clip.c b/progs/trivial/line-clip.c diff --git a/progs/trivial/line-cull.c b/progs/trivial/line-cull.c diff --git a/progs/trivial/line-userclip-clip.c b/progs/trivial/line-userclip-clip.c diff --git a/progs/trivial/line-userclip-nop-clip.c b/progs/trivial/line-userclip-nop-clip.c diff --git a/progs/trivial/line-userclip-nop.c b/progs/trivial/line-userclip-nop.c diff --git a/progs/trivial/line-userclip.c b/progs/trivial/line-userclip.c diff --git a/progs/trivial/line.c b/progs/trivial/line.c diff --git a/progs/trivial/lineloop-clip.c b/progs/trivial/lineloop-clip.c diff --git a/progs/trivial/lineloop.c b/progs/trivial/lineloop.c diff --git a/progs/trivial/point-clip.c b/progs/trivial/point-clip.c diff --git a/progs/trivial/point-param.c b/progs/trivial/point-param.c diff --git a/progs/trivial/point-wide.c b/progs/trivial/point-wide.c diff --git a/progs/trivial/point.c b/progs/trivial/point.c diff --git a/progs/trivial/poly-flat.c b/progs/trivial/poly-flat.c diff --git a/progs/trivial/poly-unfilled.c b/progs/trivial/poly-unfilled.c diff --git a/progs/trivial/poly.c b/progs/trivial/poly.c diff --git a/progs/trivial/quad-clip-all-vertices.c b/progs/trivial/quad-clip-all-vertices.c diff --git a/progs/trivial/quad-clip-nearplane.c b/progs/trivial/quad-clip-nearplane.c diff --git a/progs/trivial/quad-clip.c b/progs/trivial/quad-clip.c diff --git a/progs/trivial/quad-degenerate.c b/progs/trivial/quad-degenerate.c diff --git a/progs/trivial/quad-flat.c b/progs/trivial/quad-flat.c diff --git a/progs/trivial/quad-offset-factor.c b/progs/trivial/quad-offset-factor.c diff --git a/progs/trivial/quad-offset-unfilled.c b/progs/trivial/quad-offset-unfilled.c diff --git a/progs/trivial/quad-offset-units.c b/progs/trivial/quad-offset-units.c diff --git a/progs/trivial/quad-tex-2d.c b/progs/trivial/quad-tex-2d.c diff --git a/progs/trivial/quad-tex-3d.c b/progs/trivial/quad-tex-3d.c diff --git a/progs/trivial/quad-tex-pbo.c b/progs/trivial/quad-tex-pbo.c diff --git a/progs/trivial/quad-unfilled.c b/progs/trivial/quad-unfilled.c diff --git a/progs/trivial/quad.c b/progs/trivial/quad.c diff --git a/progs/trivial/quads.c b/progs/trivial/quads.c diff --git a/progs/trivial/quadstrip-flat.c b/progs/trivial/quadstrip-flat.c diff --git a/progs/trivial/quadstrip.c b/progs/trivial/quadstrip.c diff --git a/progs/trivial/tri-blend.c b/progs/trivial/tri-blend.c diff --git a/progs/trivial/tri-clip.c b/progs/trivial/tri-clip.c diff --git a/progs/trivial/tri-cull.c b/progs/trivial/tri-cull.c diff --git a/progs/trivial/tri-dlist.c b/progs/trivial/tri-dlist.c diff --git a/progs/trivial/tri-edgeflag.c b/progs/trivial/tri-edgeflag.c diff --git a/progs/trivial/tri-flat-clip.c b/progs/trivial/tri-flat-clip.c diff --git a/progs/trivial/tri-flat.c b/progs/trivial/tri-flat.c diff --git a/progs/trivial/tri-tex-3d.c b/progs/trivial/tri-tex-3d.c diff --git a/progs/trivial/tri-unfilled-clip.c b/progs/trivial/tri-unfilled-clip.c diff --git a/progs/trivial/tri-unfilled-smooth.c b/progs/trivial/tri-unfilled-smooth.c diff --git a/progs/trivial/tri-unfilled-userclip.c b/progs/trivial/tri-unfilled-userclip.c diff --git a/progs/trivial/tri-unfilled.c b/progs/trivial/tri-unfilled.c diff --git a/progs/trivial/tri-userclip.c b/progs/trivial/tri-userclip.c diff --git a/progs/trivial/tri.c b/progs/trivial/tri.c diff --git a/progs/trivial/tristrip-clip.c b/progs/trivial/tristrip-clip.c diff --git a/progs/trivial/tristrip.c b/progs/trivial/tristrip.c diff --git a/progs/trivial/vbo-drawarrays.c b/progs/trivial/vbo-drawarrays.c diff --git a/progs/trivial/vbo-drawelements.c b/progs/trivial/vbo-drawelements.c diff --git a/progs/trivial/vbo-drawrange.c b/progs/trivial/vbo-drawrange.c diff --git a/progs/trivial/vp-array.c b/progs/trivial/vp-array.c diff --git a/progs/trivial/vp-clip.c b/progs/trivial/vp-clip.c diff --git a/progs/trivial/vp-line-clip.c b/progs/trivial/vp-line-clip.c diff --git a/progs/trivial/vp-tri.c b/progs/trivial/vp-tri.c diff --git a/progs/trivial/vp-unfilled.c b/progs/trivial/vp-unfilled.c diff --git a/progs/util/README b/progs/util/README diff --git a/progs/util/descrip.mms b/progs/util/descrip.mms diff --git a/progs/util/dumpstate.c b/progs/util/dumpstate.c diff --git a/progs/util/errcheck.c b/progs/util/errcheck.c diff --git a/progs/util/extfuncs.h b/progs/util/extfuncs.h diff --git a/progs/util/glstate.c b/progs/util/glstate.c diff --git a/progs/util/glstate.h b/progs/util/glstate.h diff --git a/progs/util/glutskel.c b/progs/util/glutskel.c diff --git a/progs/util/idproj.c b/progs/util/idproj.c diff --git a/progs/util/imagesgi.cpp b/progs/util/imagesgi.cpp diff --git a/progs/util/imagesgi.h b/progs/util/imagesgi.h diff --git a/progs/util/matrix.c b/progs/util/matrix.c diff --git a/progs/util/mwmborder.c b/progs/util/mwmborder.c diff --git a/progs/util/readtex.c b/progs/util/readtex.c diff --git a/progs/util/readtex.h b/progs/util/readtex.h diff --git a/progs/util/sampleMakefile b/progs/util/sampleMakefile diff --git a/progs/util/showbuffer.c b/progs/util/showbuffer.c diff --git a/progs/util/showbuffer.h b/progs/util/showbuffer.h diff --git a/progs/util/trackball.c b/progs/util/trackball.c diff --git a/progs/util/trackball.h b/progs/util/trackball.h diff --git a/progs/util/winpos.c b/progs/util/winpos.c diff --git a/progs/vp/Makefile b/progs/vp/Makefile diff --git a/progs/vp/abs.txt b/progs/vp/abs.txt diff --git a/progs/vp/add.txt b/progs/vp/add.txt diff --git a/progs/vp/arl.txt b/progs/vp/arl.txt diff --git a/progs/vp/dp3.txt b/progs/vp/dp3.txt diff --git a/progs/vp/dp4.txt b/progs/vp/dp4.txt diff --git a/progs/vp/dph.txt b/progs/vp/dph.txt diff --git a/progs/vp/dst.txt b/progs/vp/dst.txt diff --git a/progs/vp/ex2.txt b/progs/vp/ex2.txt diff --git a/progs/vp/flr.txt b/progs/vp/flr.txt diff --git a/progs/vp/frc.txt b/progs/vp/frc.txt diff --git a/progs/vp/lg2.txt b/progs/vp/lg2.txt diff --git a/progs/vp/lit.txt b/progs/vp/lit.txt diff --git a/progs/vp/mad.txt b/progs/vp/mad.txt diff --git a/progs/vp/max.txt b/progs/vp/max.txt diff --git a/progs/vp/min.txt b/progs/vp/min.txt diff --git a/progs/vp/mov.txt b/progs/vp/mov.txt diff --git a/progs/vp/mul.txt b/progs/vp/mul.txt diff --git a/progs/vp/pow.txt b/progs/vp/pow.txt diff --git a/progs/vp/rcp.txt b/progs/vp/rcp.txt diff --git a/progs/vp/rsq.txt b/progs/vp/rsq.txt diff --git a/progs/vp/sge.txt b/progs/vp/sge.txt diff --git a/progs/vp/slt.txt b/progs/vp/slt.txt diff --git a/progs/vp/sub.txt b/progs/vp/sub.txt diff --git a/progs/vp/swz.txt b/progs/vp/swz.txt diff --git a/progs/vp/swz2.txt b/progs/vp/swz2.txt diff --git a/progs/vp/vp-tris.c b/progs/vp/vp-tris.c diff --git a/progs/vp/xpd.txt b/progs/vp/xpd.txt diff --git a/progs/windml/Makefile.ugl b/progs/windml/Makefile.ugl diff --git a/progs/windml/readtex.c b/progs/windml/readtex.c diff --git a/progs/windml/uglaccum.c b/progs/windml/uglaccum.c diff --git a/progs/windml/uglalldemos.c b/progs/windml/uglalldemos.c diff --git a/progs/windml/uglbounce.c b/progs/windml/uglbounce.c diff --git a/progs/windml/uglcube.c b/progs/windml/uglcube.c diff --git a/progs/windml/ugldrawpix.c b/progs/windml/ugldrawpix.c diff --git a/progs/windml/uglflip.c b/progs/windml/uglflip.c diff --git a/progs/windml/uglgears.c b/progs/windml/uglgears.c diff --git a/progs/windml/uglicotorus.c b/progs/windml/uglicotorus.c diff --git a/progs/windml/uglline.c b/progs/windml/uglline.c diff --git a/progs/windml/uglolympic.c b/progs/windml/uglolympic.c diff --git a/progs/windml/uglpoint.c b/progs/windml/uglpoint.c diff --git a/progs/windml/uglstencil.c b/progs/windml/uglstencil.c diff --git a/progs/windml/uglteapot.c b/progs/windml/uglteapot.c diff --git a/progs/windml/ugltexcube.c b/progs/windml/ugltexcube.c diff --git a/progs/windml/ugltexcyl.c b/progs/windml/ugltexcyl.c diff --git a/progs/windml/wrs_logo.bmp b/progs/windml/wrs_logo.bmp diff --git a/progs/xdemos/.gitignore b/progs/xdemos/.gitignore diff --git a/progs/xdemos/Makefile b/progs/xdemos/Makefile diff --git a/progs/xdemos/descrip.mms b/progs/xdemos/descrip.mms diff --git a/progs/xdemos/glthreads.c b/progs/xdemos/glthreads.c diff --git a/progs/xdemos/glxcontexts.c b/progs/xdemos/glxcontexts.c diff --git a/progs/xdemos/glxdemo.c b/progs/xdemos/glxdemo.c diff --git a/progs/xdemos/glxgears.c b/progs/xdemos/glxgears.c diff --git a/progs/xdemos/glxgears_fbconfig.c b/progs/xdemos/glxgears_fbconfig.c diff --git a/progs/xdemos/glxheads.c b/progs/xdemos/glxheads.c diff --git a/progs/xdemos/glxinfo.c b/progs/xdemos/glxinfo.c diff --git a/progs/xdemos/glxpbdemo.c b/progs/xdemos/glxpbdemo.c diff --git a/progs/xdemos/glxpixmap.c b/progs/xdemos/glxpixmap.c diff --git a/progs/xdemos/glxswapcontrol.c b/progs/xdemos/glxswapcontrol.c diff --git a/progs/xdemos/manywin.c b/progs/xdemos/manywin.c diff --git a/progs/xdemos/offset.c b/progs/xdemos/offset.c diff --git a/progs/xdemos/opencloseopen.c b/progs/xdemos/opencloseopen.c diff --git a/progs/xdemos/overlay.c b/progs/xdemos/overlay.c diff --git a/progs/xdemos/pbdemo.c b/progs/xdemos/pbdemo.c diff --git a/progs/xdemos/pbinfo.c b/progs/xdemos/pbinfo.c diff --git a/progs/xdemos/pbutil.c b/progs/xdemos/pbutil.c diff --git a/progs/xdemos/pbutil.h b/progs/xdemos/pbutil.h diff --git a/progs/xdemos/shape.c b/progs/xdemos/shape.c diff --git a/progs/xdemos/texture_from_pixmap.c b/progs/xdemos/texture_from_pixmap.c diff --git a/progs/xdemos/vgears.c b/progs/xdemos/vgears.c diff --git a/progs/xdemos/vindex.c b/progs/xdemos/vindex.c diff --git a/progs/xdemos/vtest.c b/progs/xdemos/vtest.c diff --git a/progs/xdemos/wincopy.c b/progs/xdemos/wincopy.c diff --git a/progs/xdemos/xdemo.c b/progs/xdemos/xdemo.c diff --git a/progs/xdemos/xfont.c b/progs/xdemos/xfont.c diff --git a/progs/xdemos/xrotfontdemo.c b/progs/xdemos/xrotfontdemo.c diff --git a/progs/xdemos/xuserotfont.c b/progs/xdemos/xuserotfont.c diff --git a/progs/xdemos/xuserotfont.h b/progs/xdemos/xuserotfont.h diff --git a/progs/xdemos/yuvrect_client.c b/progs/xdemos/yuvrect_client.c diff --git a/src/Makefile b/src/Makefile diff --git a/src/descrip.mms b/src/descrip.mms diff --git a/src/egl/Makefile b/src/egl/Makefile diff --git a/src/egl/docs/EGL_MESA_screen_surface b/src/egl/docs/EGL_MESA_screen_surface diff --git a/src/egl/drivers/demo/Makefile b/src/egl/drivers/demo/Makefile diff --git a/src/egl/drivers/demo/demo.c b/src/egl/drivers/demo/demo.c diff --git a/src/egl/drivers/dri/Makefile b/src/egl/drivers/dri/Makefile diff --git a/src/egl/drivers/dri/egldri.c b/src/egl/drivers/dri/egldri.c diff --git a/src/egl/drivers/dri/egldri.h b/src/egl/drivers/dri/egldri.h diff --git a/src/egl/main/Makefile b/src/egl/main/Makefile diff --git a/src/egl/main/eglapi.c b/src/egl/main/eglapi.c diff --git a/src/egl/main/eglapi.h b/src/egl/main/eglapi.h diff --git a/src/egl/main/eglconfig.c b/src/egl/main/eglconfig.c diff --git a/src/egl/main/eglconfig.h b/src/egl/main/eglconfig.h diff --git a/src/egl/main/eglcontext.c b/src/egl/main/eglcontext.c diff --git a/src/egl/main/eglcontext.h b/src/egl/main/eglcontext.h diff --git a/src/egl/main/egldisplay.c b/src/egl/main/egldisplay.c diff --git a/src/egl/main/egldisplay.h b/src/egl/main/egldisplay.h diff --git a/src/egl/main/egldriver.c b/src/egl/main/egldriver.c diff --git a/src/egl/main/egldriver.h b/src/egl/main/egldriver.h diff --git a/src/egl/main/eglglobals.c b/src/egl/main/eglglobals.c diff --git a/src/egl/main/eglglobals.h b/src/egl/main/eglglobals.h diff --git a/src/egl/main/eglhash.c b/src/egl/main/eglhash.c diff --git a/src/egl/main/eglhash.h b/src/egl/main/eglhash.h diff --git a/src/egl/main/egllog.c b/src/egl/main/egllog.c diff --git a/src/egl/main/egllog.h b/src/egl/main/egllog.h diff --git a/src/egl/main/eglmode.c b/src/egl/main/eglmode.c diff --git a/src/egl/main/eglmode.h b/src/egl/main/eglmode.h diff --git a/src/egl/main/eglscreen.c b/src/egl/main/eglscreen.c diff --git a/src/egl/main/eglscreen.h b/src/egl/main/eglscreen.h diff --git a/src/egl/main/eglsurface.c b/src/egl/main/eglsurface.c diff --git a/src/egl/main/eglsurface.h b/src/egl/main/eglsurface.h diff --git a/src/egl/main/egltypedefs.h b/src/egl/main/egltypedefs.h diff --git a/src/glu/Makefile b/src/glu/Makefile diff --git a/src/glu/descrip.mms b/src/glu/descrip.mms diff --git a/src/glu/glu.pc.in b/src/glu/glu.pc.in diff --git a/src/glu/mesa/Makefile b/src/glu/mesa/Makefile diff --git a/src/glu/mesa/Makefile.DJ b/src/glu/mesa/Makefile.DJ diff --git a/src/glu/mesa/Makefile.m32 b/src/glu/mesa/Makefile.m32 diff --git a/src/glu/mesa/Makefile.ugl b/src/glu/mesa/Makefile.ugl diff --git a/src/glu/mesa/MesaGLU.def b/src/glu/mesa/MesaGLU.def diff --git a/src/glu/mesa/README1 b/src/glu/mesa/README1 diff --git a/src/glu/mesa/README2 b/src/glu/mesa/README2 diff --git a/src/glu/mesa/all.h b/src/glu/mesa/all.h diff --git a/src/glu/mesa/descrip.mms b/src/glu/mesa/descrip.mms diff --git a/src/glu/mesa/glu.c b/src/glu/mesa/glu.c diff --git a/src/glu/mesa/gluP.h b/src/glu/mesa/gluP.h diff --git a/src/glu/mesa/mipmap.c b/src/glu/mesa/mipmap.c diff --git a/src/glu/mesa/mms_depend b/src/glu/mesa/mms_depend diff --git a/src/glu/mesa/nurbs.c b/src/glu/mesa/nurbs.c diff --git a/src/glu/mesa/nurbs.h b/src/glu/mesa/nurbs.h diff --git a/src/glu/mesa/nurbscrv.c b/src/glu/mesa/nurbscrv.c diff --git a/src/glu/mesa/nurbssrf.c b/src/glu/mesa/nurbssrf.c diff --git a/src/glu/mesa/nurbsutl.c b/src/glu/mesa/nurbsutl.c diff --git a/src/glu/mesa/polytest.c b/src/glu/mesa/polytest.c diff --git a/src/glu/mesa/project.c b/src/glu/mesa/project.c diff --git a/src/glu/mesa/quadric.c b/src/glu/mesa/quadric.c diff --git a/src/glu/mesa/tess.c b/src/glu/mesa/tess.c diff --git a/src/glu/mesa/tess.h b/src/glu/mesa/tess.h diff --git a/src/glu/mesa/tesselat.c b/src/glu/mesa/tesselat.c diff --git a/src/glu/mini/all.h b/src/glu/mini/all.h diff --git a/src/glu/mini/glu.c b/src/glu/mini/glu.c diff --git a/src/glu/mini/gluP.h b/src/glu/mini/gluP.h diff --git a/src/glu/mini/mipmap.c b/src/glu/mini/mipmap.c diff --git a/src/glu/mini/nurbs.c b/src/glu/mini/nurbs.c diff --git a/src/glu/mini/nurbs.h b/src/glu/mini/nurbs.h diff --git a/src/glu/mini/nurbscrv.c b/src/glu/mini/nurbscrv.c diff --git a/src/glu/mini/polytest.c b/src/glu/mini/polytest.c diff --git a/src/glu/mini/project.c b/src/glu/mini/project.c diff --git a/src/glu/mini/quadric.c b/src/glu/mini/quadric.c diff --git a/src/glu/mini/tess.c b/src/glu/mini/tess.c diff --git a/src/glu/mini/tess.h b/src/glu/mini/tess.h diff --git a/src/glu/mini/tesselat.c b/src/glu/mini/tesselat.c diff --git a/src/glu/sgi/Makefile b/src/glu/sgi/Makefile diff --git a/src/glu/sgi/Makefile.DJ b/src/glu/sgi/Makefile.DJ diff --git a/src/glu/sgi/Makefile.mgw b/src/glu/sgi/Makefile.mgw diff --git a/src/glu/sgi/Makefile.win b/src/glu/sgi/Makefile.win diff --git a/src/glu/sgi/descrip.mms b/src/glu/sgi/descrip.mms diff --git a/src/glu/sgi/dummy.cc b/src/glu/sgi/dummy.cc diff --git a/src/glu/sgi/glu.def b/src/glu/sgi/glu.def diff --git a/src/glu/sgi/include/gluos.h b/src/glu/sgi/include/gluos.h diff --git a/src/glu/sgi/libnurbs/interface/bezierEval.cc b/src/glu/sgi/libnurbs/interface/bezierEval.cc diff --git a/src/glu/sgi/libnurbs/interface/bezierEval.h b/src/glu/sgi/libnurbs/interface/bezierEval.h diff --git a/src/glu/sgi/libnurbs/interface/bezierPatch.cc b/src/glu/sgi/libnurbs/interface/bezierPatch.cc diff --git a/src/glu/sgi/libnurbs/interface/bezierPatch.h b/src/glu/sgi/libnurbs/interface/bezierPatch.h diff --git a/src/glu/sgi/libnurbs/interface/bezierPatchMesh.cc b/src/glu/sgi/libnurbs/interface/bezierPatchMesh.cc diff --git a/src/glu/sgi/libnurbs/interface/bezierPatchMesh.h b/src/glu/sgi/libnurbs/interface/bezierPatchMesh.h diff --git a/src/glu/sgi/libnurbs/interface/glcurveval.cc b/src/glu/sgi/libnurbs/interface/glcurveval.cc diff --git a/src/glu/sgi/libnurbs/interface/glcurveval.h b/src/glu/sgi/libnurbs/interface/glcurveval.h diff --git a/src/glu/sgi/libnurbs/interface/glimports.h b/src/glu/sgi/libnurbs/interface/glimports.h diff --git a/src/glu/sgi/libnurbs/interface/glinterface.cc b/src/glu/sgi/libnurbs/interface/glinterface.cc diff --git a/src/glu/sgi/libnurbs/interface/glrenderer.cc b/src/glu/sgi/libnurbs/interface/glrenderer.cc diff --git a/src/glu/sgi/libnurbs/interface/glrenderer.h b/src/glu/sgi/libnurbs/interface/glrenderer.h diff --git a/src/glu/sgi/libnurbs/interface/glsurfeval.cc b/src/glu/sgi/libnurbs/interface/glsurfeval.cc diff --git a/src/glu/sgi/libnurbs/interface/glsurfeval.h b/src/glu/sgi/libnurbs/interface/glsurfeval.h diff --git a/src/glu/sgi/libnurbs/interface/incurveeval.cc b/src/glu/sgi/libnurbs/interface/incurveeval.cc diff --git a/src/glu/sgi/libnurbs/interface/insurfeval.cc b/src/glu/sgi/libnurbs/interface/insurfeval.cc diff --git a/src/glu/sgi/libnurbs/interface/mystdio.h b/src/glu/sgi/libnurbs/interface/mystdio.h diff --git a/src/glu/sgi/libnurbs/interface/mystdlib.h b/src/glu/sgi/libnurbs/interface/mystdlib.h diff --git a/src/glu/sgi/libnurbs/internals/arc.cc b/src/glu/sgi/libnurbs/internals/arc.cc diff --git a/src/glu/sgi/libnurbs/internals/arc.h b/src/glu/sgi/libnurbs/internals/arc.h diff --git a/src/glu/sgi/libnurbs/internals/arcsorter.cc b/src/glu/sgi/libnurbs/internals/arcsorter.cc diff --git a/src/glu/sgi/libnurbs/internals/arcsorter.h b/src/glu/sgi/libnurbs/internals/arcsorter.h diff --git a/src/glu/sgi/libnurbs/internals/arctess.cc b/src/glu/sgi/libnurbs/internals/arctess.cc diff --git a/src/glu/sgi/libnurbs/internals/arctess.h b/src/glu/sgi/libnurbs/internals/arctess.h diff --git a/src/glu/sgi/libnurbs/internals/backend.cc b/src/glu/sgi/libnurbs/internals/backend.cc diff --git a/src/glu/sgi/libnurbs/internals/backend.h b/src/glu/sgi/libnurbs/internals/backend.h diff --git a/src/glu/sgi/libnurbs/internals/basiccrveval.cc b/src/glu/sgi/libnurbs/internals/basiccrveval.cc diff --git a/src/glu/sgi/libnurbs/internals/basiccrveval.h b/src/glu/sgi/libnurbs/internals/basiccrveval.h diff --git a/src/glu/sgi/libnurbs/internals/basicsurfeval.cc b/src/glu/sgi/libnurbs/internals/basicsurfeval.cc diff --git a/src/glu/sgi/libnurbs/internals/basicsurfeval.h b/src/glu/sgi/libnurbs/internals/basicsurfeval.h diff --git a/src/glu/sgi/libnurbs/internals/bezierarc.h b/src/glu/sgi/libnurbs/internals/bezierarc.h diff --git a/src/glu/sgi/libnurbs/internals/bin.cc b/src/glu/sgi/libnurbs/internals/bin.cc diff --git a/src/glu/sgi/libnurbs/internals/bin.h b/src/glu/sgi/libnurbs/internals/bin.h diff --git a/src/glu/sgi/libnurbs/internals/bufpool.cc b/src/glu/sgi/libnurbs/internals/bufpool.cc diff --git a/src/glu/sgi/libnurbs/internals/bufpool.h b/src/glu/sgi/libnurbs/internals/bufpool.h diff --git a/src/glu/sgi/libnurbs/internals/cachingeval.cc b/src/glu/sgi/libnurbs/internals/cachingeval.cc diff --git a/src/glu/sgi/libnurbs/internals/cachingeval.h b/src/glu/sgi/libnurbs/internals/cachingeval.h diff --git a/src/glu/sgi/libnurbs/internals/ccw.cc b/src/glu/sgi/libnurbs/internals/ccw.cc diff --git a/src/glu/sgi/libnurbs/internals/coveandtiler.cc b/src/glu/sgi/libnurbs/internals/coveandtiler.cc diff --git a/src/glu/sgi/libnurbs/internals/coveandtiler.h b/src/glu/sgi/libnurbs/internals/coveandtiler.h diff --git a/src/glu/sgi/libnurbs/internals/curve.cc b/src/glu/sgi/libnurbs/internals/curve.cc diff --git a/src/glu/sgi/libnurbs/internals/curve.h b/src/glu/sgi/libnurbs/internals/curve.h diff --git a/src/glu/sgi/libnurbs/internals/curvelist.cc b/src/glu/sgi/libnurbs/internals/curvelist.cc diff --git a/src/glu/sgi/libnurbs/internals/curvelist.h b/src/glu/sgi/libnurbs/internals/curvelist.h diff --git a/src/glu/sgi/libnurbs/internals/curvesub.cc b/src/glu/sgi/libnurbs/internals/curvesub.cc diff --git a/src/glu/sgi/libnurbs/internals/dataTransform.cc b/src/glu/sgi/libnurbs/internals/dataTransform.cc diff --git a/src/glu/sgi/libnurbs/internals/dataTransform.h b/src/glu/sgi/libnurbs/internals/dataTransform.h diff --git a/src/glu/sgi/libnurbs/internals/defines.h b/src/glu/sgi/libnurbs/internals/defines.h diff --git a/src/glu/sgi/libnurbs/internals/displaylist.cc b/src/glu/sgi/libnurbs/internals/displaylist.cc diff --git a/src/glu/sgi/libnurbs/internals/displaylist.h b/src/glu/sgi/libnurbs/internals/displaylist.h diff --git a/src/glu/sgi/libnurbs/internals/displaymode.h b/src/glu/sgi/libnurbs/internals/displaymode.h diff --git a/src/glu/sgi/libnurbs/internals/flist.cc b/src/glu/sgi/libnurbs/internals/flist.cc diff --git a/src/glu/sgi/libnurbs/internals/flist.h b/src/glu/sgi/libnurbs/internals/flist.h diff --git a/src/glu/sgi/libnurbs/internals/flistsorter.cc b/src/glu/sgi/libnurbs/internals/flistsorter.cc diff --git a/src/glu/sgi/libnurbs/internals/flistsorter.h b/src/glu/sgi/libnurbs/internals/flistsorter.h diff --git a/src/glu/sgi/libnurbs/internals/gridline.h b/src/glu/sgi/libnurbs/internals/gridline.h diff --git a/src/glu/sgi/libnurbs/internals/gridtrimvertex.h b/src/glu/sgi/libnurbs/internals/gridtrimvertex.h diff --git a/src/glu/sgi/libnurbs/internals/gridvertex.h b/src/glu/sgi/libnurbs/internals/gridvertex.h diff --git a/src/glu/sgi/libnurbs/internals/hull.cc b/src/glu/sgi/libnurbs/internals/hull.cc diff --git a/src/glu/sgi/libnurbs/internals/hull.h b/src/glu/sgi/libnurbs/internals/hull.h diff --git a/src/glu/sgi/libnurbs/internals/intersect.cc b/src/glu/sgi/libnurbs/internals/intersect.cc diff --git a/src/glu/sgi/libnurbs/internals/jarcloc.h b/src/glu/sgi/libnurbs/internals/jarcloc.h diff --git a/src/glu/sgi/libnurbs/internals/knotvector.cc b/src/glu/sgi/libnurbs/internals/knotvector.cc diff --git a/src/glu/sgi/libnurbs/internals/knotvector.h b/src/glu/sgi/libnurbs/internals/knotvector.h diff --git a/src/glu/sgi/libnurbs/internals/mapdesc.cc b/src/glu/sgi/libnurbs/internals/mapdesc.cc diff --git a/src/glu/sgi/libnurbs/internals/mapdesc.h b/src/glu/sgi/libnurbs/internals/mapdesc.h diff --git a/src/glu/sgi/libnurbs/internals/mapdescv.cc b/src/glu/sgi/libnurbs/internals/mapdescv.cc diff --git a/src/glu/sgi/libnurbs/internals/maplist.cc b/src/glu/sgi/libnurbs/internals/maplist.cc diff --git a/src/glu/sgi/libnurbs/internals/maplist.h b/src/glu/sgi/libnurbs/internals/maplist.h diff --git a/src/glu/sgi/libnurbs/internals/mesher.cc b/src/glu/sgi/libnurbs/internals/mesher.cc diff --git a/src/glu/sgi/libnurbs/internals/mesher.h b/src/glu/sgi/libnurbs/internals/mesher.h diff --git a/src/glu/sgi/libnurbs/internals/monoTriangulationBackend.cc b/src/glu/sgi/libnurbs/internals/monoTriangulationBackend.cc diff --git a/src/glu/sgi/libnurbs/internals/monotonizer.cc b/src/glu/sgi/libnurbs/internals/monotonizer.cc diff --git a/src/glu/sgi/libnurbs/internals/monotonizer.h b/src/glu/sgi/libnurbs/internals/monotonizer.h diff --git a/src/glu/sgi/libnurbs/internals/myassert.h b/src/glu/sgi/libnurbs/internals/myassert.h diff --git a/src/glu/sgi/libnurbs/internals/mycode.cc b/src/glu/sgi/libnurbs/internals/mycode.cc diff --git a/src/glu/sgi/libnurbs/internals/mymath.h b/src/glu/sgi/libnurbs/internals/mymath.h diff --git a/src/glu/sgi/libnurbs/internals/mysetjmp.h b/src/glu/sgi/libnurbs/internals/mysetjmp.h diff --git a/src/glu/sgi/libnurbs/internals/mystring.h b/src/glu/sgi/libnurbs/internals/mystring.h diff --git a/src/glu/sgi/libnurbs/internals/nurbsconsts.h b/src/glu/sgi/libnurbs/internals/nurbsconsts.h diff --git a/src/glu/sgi/libnurbs/internals/nurbsinterfac.cc b/src/glu/sgi/libnurbs/internals/nurbsinterfac.cc diff --git a/src/glu/sgi/libnurbs/internals/nurbstess.cc b/src/glu/sgi/libnurbs/internals/nurbstess.cc diff --git a/src/glu/sgi/libnurbs/internals/nurbstess.h b/src/glu/sgi/libnurbs/internals/nurbstess.h diff --git a/src/glu/sgi/libnurbs/internals/patch.cc b/src/glu/sgi/libnurbs/internals/patch.cc diff --git a/src/glu/sgi/libnurbs/internals/patch.h b/src/glu/sgi/libnurbs/internals/patch.h diff --git a/src/glu/sgi/libnurbs/internals/patchlist.cc b/src/glu/sgi/libnurbs/internals/patchlist.cc diff --git a/src/glu/sgi/libnurbs/internals/patchlist.h b/src/glu/sgi/libnurbs/internals/patchlist.h diff --git a/src/glu/sgi/libnurbs/internals/pwlarc.h b/src/glu/sgi/libnurbs/internals/pwlarc.h diff --git a/src/glu/sgi/libnurbs/internals/quilt.cc b/src/glu/sgi/libnurbs/internals/quilt.cc diff --git a/src/glu/sgi/libnurbs/internals/quilt.h b/src/glu/sgi/libnurbs/internals/quilt.h diff --git a/src/glu/sgi/libnurbs/internals/reader.cc b/src/glu/sgi/libnurbs/internals/reader.cc diff --git a/src/glu/sgi/libnurbs/internals/reader.h b/src/glu/sgi/libnurbs/internals/reader.h diff --git a/src/glu/sgi/libnurbs/internals/renderhints.cc b/src/glu/sgi/libnurbs/internals/renderhints.cc diff --git a/src/glu/sgi/libnurbs/internals/renderhints.h b/src/glu/sgi/libnurbs/internals/renderhints.h diff --git a/src/glu/sgi/libnurbs/internals/simplemath.h b/src/glu/sgi/libnurbs/internals/simplemath.h diff --git a/src/glu/sgi/libnurbs/internals/slicer.cc b/src/glu/sgi/libnurbs/internals/slicer.cc diff --git a/src/glu/sgi/libnurbs/internals/slicer.h b/src/glu/sgi/libnurbs/internals/slicer.h diff --git a/src/glu/sgi/libnurbs/internals/sorter.cc b/src/glu/sgi/libnurbs/internals/sorter.cc diff --git a/src/glu/sgi/libnurbs/internals/sorter.h b/src/glu/sgi/libnurbs/internals/sorter.h diff --git a/src/glu/sgi/libnurbs/internals/splitarcs.cc b/src/glu/sgi/libnurbs/internals/splitarcs.cc diff --git a/src/glu/sgi/libnurbs/internals/subdivider.cc b/src/glu/sgi/libnurbs/internals/subdivider.cc diff --git a/src/glu/sgi/libnurbs/internals/subdivider.h b/src/glu/sgi/libnurbs/internals/subdivider.h diff --git a/src/glu/sgi/libnurbs/internals/tobezier.cc b/src/glu/sgi/libnurbs/internals/tobezier.cc diff --git a/src/glu/sgi/libnurbs/internals/trimline.cc b/src/glu/sgi/libnurbs/internals/trimline.cc diff --git a/src/glu/sgi/libnurbs/internals/trimline.h b/src/glu/sgi/libnurbs/internals/trimline.h diff --git a/src/glu/sgi/libnurbs/internals/trimregion.cc b/src/glu/sgi/libnurbs/internals/trimregion.cc diff --git a/src/glu/sgi/libnurbs/internals/trimregion.h b/src/glu/sgi/libnurbs/internals/trimregion.h diff --git a/src/glu/sgi/libnurbs/internals/trimvertex.h b/src/glu/sgi/libnurbs/internals/trimvertex.h diff --git a/src/glu/sgi/libnurbs/internals/trimvertpool.cc b/src/glu/sgi/libnurbs/internals/trimvertpool.cc diff --git a/src/glu/sgi/libnurbs/internals/trimvertpool.h b/src/glu/sgi/libnurbs/internals/trimvertpool.h diff --git a/src/glu/sgi/libnurbs/internals/types.h b/src/glu/sgi/libnurbs/internals/types.h diff --git a/src/glu/sgi/libnurbs/internals/uarray.cc b/src/glu/sgi/libnurbs/internals/uarray.cc diff --git a/src/glu/sgi/libnurbs/internals/uarray.h b/src/glu/sgi/libnurbs/internals/uarray.h diff --git a/src/glu/sgi/libnurbs/internals/varray.cc b/src/glu/sgi/libnurbs/internals/varray.cc diff --git a/src/glu/sgi/libnurbs/internals/varray.h b/src/glu/sgi/libnurbs/internals/varray.h diff --git a/src/glu/sgi/libnurbs/nurbtess/definitions.h b/src/glu/sgi/libnurbs/nurbtess/definitions.h diff --git a/src/glu/sgi/libnurbs/nurbtess/directedLine.cc b/src/glu/sgi/libnurbs/nurbtess/directedLine.cc diff --git a/src/glu/sgi/libnurbs/nurbtess/directedLine.h b/src/glu/sgi/libnurbs/nurbtess/directedLine.h diff --git a/src/glu/sgi/libnurbs/nurbtess/glimports.h b/src/glu/sgi/libnurbs/nurbtess/glimports.h diff --git a/src/glu/sgi/libnurbs/nurbtess/gridWrap.cc b/src/glu/sgi/libnurbs/nurbtess/gridWrap.cc diff --git a/src/glu/sgi/libnurbs/nurbtess/gridWrap.h b/src/glu/sgi/libnurbs/nurbtess/gridWrap.h diff --git a/src/glu/sgi/libnurbs/nurbtess/monoChain.cc b/src/glu/sgi/libnurbs/nurbtess/monoChain.cc diff --git a/src/glu/sgi/libnurbs/nurbtess/monoChain.h b/src/glu/sgi/libnurbs/nurbtess/monoChain.h diff --git a/src/glu/sgi/libnurbs/nurbtess/monoPolyPart.cc b/src/glu/sgi/libnurbs/nurbtess/monoPolyPart.cc diff --git a/src/glu/sgi/libnurbs/nurbtess/monoPolyPart.h b/src/glu/sgi/libnurbs/nurbtess/monoPolyPart.h diff --git a/src/glu/sgi/libnurbs/nurbtess/monoTriangulation.cc b/src/glu/sgi/libnurbs/nurbtess/monoTriangulation.cc diff --git a/src/glu/sgi/libnurbs/nurbtess/monoTriangulation.h b/src/glu/sgi/libnurbs/nurbtess/monoTriangulation.h diff --git a/src/glu/sgi/libnurbs/nurbtess/mystdio.h b/src/glu/sgi/libnurbs/nurbtess/mystdio.h diff --git a/src/glu/sgi/libnurbs/nurbtess/mystdlib.h b/src/glu/sgi/libnurbs/nurbtess/mystdlib.h diff --git a/src/glu/sgi/libnurbs/nurbtess/partitionX.cc b/src/glu/sgi/libnurbs/nurbtess/partitionX.cc diff --git a/src/glu/sgi/libnurbs/nurbtess/partitionX.h b/src/glu/sgi/libnurbs/nurbtess/partitionX.h diff --git a/src/glu/sgi/libnurbs/nurbtess/partitionY.cc b/src/glu/sgi/libnurbs/nurbtess/partitionY.cc diff --git a/src/glu/sgi/libnurbs/nurbtess/partitionY.h b/src/glu/sgi/libnurbs/nurbtess/partitionY.h diff --git a/src/glu/sgi/libnurbs/nurbtess/polyDBG.cc b/src/glu/sgi/libnurbs/nurbtess/polyDBG.cc diff --git a/src/glu/sgi/libnurbs/nurbtess/polyDBG.h b/src/glu/sgi/libnurbs/nurbtess/polyDBG.h diff --git a/src/glu/sgi/libnurbs/nurbtess/polyUtil.cc b/src/glu/sgi/libnurbs/nurbtess/polyUtil.cc diff --git a/src/glu/sgi/libnurbs/nurbtess/polyUtil.h b/src/glu/sgi/libnurbs/nurbtess/polyUtil.h diff --git a/src/glu/sgi/libnurbs/nurbtess/primitiveStream.cc b/src/glu/sgi/libnurbs/nurbtess/primitiveStream.cc diff --git a/src/glu/sgi/libnurbs/nurbtess/primitiveStream.h b/src/glu/sgi/libnurbs/nurbtess/primitiveStream.h diff --git a/src/glu/sgi/libnurbs/nurbtess/quicksort.cc b/src/glu/sgi/libnurbs/nurbtess/quicksort.cc diff --git a/src/glu/sgi/libnurbs/nurbtess/quicksort.h b/src/glu/sgi/libnurbs/nurbtess/quicksort.h diff --git a/src/glu/sgi/libnurbs/nurbtess/rectBlock.cc b/src/glu/sgi/libnurbs/nurbtess/rectBlock.cc diff --git a/src/glu/sgi/libnurbs/nurbtess/rectBlock.h b/src/glu/sgi/libnurbs/nurbtess/rectBlock.h diff --git a/src/glu/sgi/libnurbs/nurbtess/sampleComp.cc b/src/glu/sgi/libnurbs/nurbtess/sampleComp.cc diff --git a/src/glu/sgi/libnurbs/nurbtess/sampleComp.h b/src/glu/sgi/libnurbs/nurbtess/sampleComp.h diff --git a/src/glu/sgi/libnurbs/nurbtess/sampleCompBot.cc b/src/glu/sgi/libnurbs/nurbtess/sampleCompBot.cc diff --git a/src/glu/sgi/libnurbs/nurbtess/sampleCompBot.h b/src/glu/sgi/libnurbs/nurbtess/sampleCompBot.h diff --git a/src/glu/sgi/libnurbs/nurbtess/sampleCompRight.cc b/src/glu/sgi/libnurbs/nurbtess/sampleCompRight.cc diff --git a/src/glu/sgi/libnurbs/nurbtess/sampleCompRight.h b/src/glu/sgi/libnurbs/nurbtess/sampleCompRight.h diff --git a/src/glu/sgi/libnurbs/nurbtess/sampleCompTop.cc b/src/glu/sgi/libnurbs/nurbtess/sampleCompTop.cc diff --git a/src/glu/sgi/libnurbs/nurbtess/sampleCompTop.h b/src/glu/sgi/libnurbs/nurbtess/sampleCompTop.h diff --git a/src/glu/sgi/libnurbs/nurbtess/sampleMonoPoly.cc b/src/glu/sgi/libnurbs/nurbtess/sampleMonoPoly.cc diff --git a/src/glu/sgi/libnurbs/nurbtess/sampleMonoPoly.h b/src/glu/sgi/libnurbs/nurbtess/sampleMonoPoly.h diff --git a/src/glu/sgi/libnurbs/nurbtess/sampledLine.cc b/src/glu/sgi/libnurbs/nurbtess/sampledLine.cc diff --git a/src/glu/sgi/libnurbs/nurbtess/sampledLine.h b/src/glu/sgi/libnurbs/nurbtess/sampledLine.h diff --git a/src/glu/sgi/libnurbs/nurbtess/searchTree.cc b/src/glu/sgi/libnurbs/nurbtess/searchTree.cc diff --git a/src/glu/sgi/libnurbs/nurbtess/searchTree.h b/src/glu/sgi/libnurbs/nurbtess/searchTree.h diff --git a/src/glu/sgi/libnurbs/nurbtess/zlassert.h b/src/glu/sgi/libnurbs/nurbtess/zlassert.h diff --git a/src/glu/sgi/libtess/README b/src/glu/sgi/libtess/README diff --git a/src/glu/sgi/libtess/alg-outline b/src/glu/sgi/libtess/alg-outline diff --git a/src/glu/sgi/libtess/dict-list.h b/src/glu/sgi/libtess/dict-list.h diff --git a/src/glu/sgi/libtess/dict.c b/src/glu/sgi/libtess/dict.c diff --git a/src/glu/sgi/libtess/dict.h b/src/glu/sgi/libtess/dict.h diff --git a/src/glu/sgi/libtess/geom.c b/src/glu/sgi/libtess/geom.c diff --git a/src/glu/sgi/libtess/geom.h b/src/glu/sgi/libtess/geom.h diff --git a/src/glu/sgi/libtess/memalloc.c b/src/glu/sgi/libtess/memalloc.c diff --git a/src/glu/sgi/libtess/memalloc.h b/src/glu/sgi/libtess/memalloc.h diff --git a/src/glu/sgi/libtess/mesh.c b/src/glu/sgi/libtess/mesh.c diff --git a/src/glu/sgi/libtess/mesh.h b/src/glu/sgi/libtess/mesh.h diff --git a/src/glu/sgi/libtess/normal.c b/src/glu/sgi/libtess/normal.c diff --git a/src/glu/sgi/libtess/normal.h b/src/glu/sgi/libtess/normal.h diff --git a/src/glu/sgi/libtess/priorityq-heap.c b/src/glu/sgi/libtess/priorityq-heap.c diff --git a/src/glu/sgi/libtess/priorityq-heap.h b/src/glu/sgi/libtess/priorityq-heap.h diff --git a/src/glu/sgi/libtess/priorityq-sort.h b/src/glu/sgi/libtess/priorityq-sort.h diff --git a/src/glu/sgi/libtess/priorityq.c b/src/glu/sgi/libtess/priorityq.c diff --git a/src/glu/sgi/libtess/priorityq.h b/src/glu/sgi/libtess/priorityq.h diff --git a/src/glu/sgi/libtess/render.c b/src/glu/sgi/libtess/render.c diff --git a/src/glu/sgi/libtess/render.h b/src/glu/sgi/libtess/render.h diff --git a/src/glu/sgi/libtess/sweep.c b/src/glu/sgi/libtess/sweep.c diff --git a/src/glu/sgi/libtess/sweep.h b/src/glu/sgi/libtess/sweep.h diff --git a/src/glu/sgi/libtess/tess.c b/src/glu/sgi/libtess/tess.c diff --git a/src/glu/sgi/libtess/tess.h b/src/glu/sgi/libtess/tess.h diff --git a/src/glu/sgi/libtess/tessmono.c b/src/glu/sgi/libtess/tessmono.c diff --git a/src/glu/sgi/libtess/tessmono.h b/src/glu/sgi/libtess/tessmono.h diff --git a/src/glu/sgi/libutil/error.c b/src/glu/sgi/libutil/error.c diff --git a/src/glu/sgi/libutil/glue.c b/src/glu/sgi/libutil/glue.c diff --git a/src/glu/sgi/libutil/gluint.h b/src/glu/sgi/libutil/gluint.h diff --git a/src/glu/sgi/libutil/mipmap.c b/src/glu/sgi/libutil/mipmap.c diff --git a/src/glu/sgi/libutil/project.c b/src/glu/sgi/libutil/project.c diff --git a/src/glu/sgi/libutil/quad.c b/src/glu/sgi/libutil/quad.c diff --git a/src/glu/sgi/libutil/registry.c b/src/glu/sgi/libutil/registry.c diff --git a/src/glu/sgi/mesaglu.opt b/src/glu/sgi/mesaglu.opt diff --git a/src/glut/beos/Makefile b/src/glut/beos/Makefile diff --git a/src/glut/beos/beos_x11.cpp b/src/glut/beos/beos_x11.cpp diff --git a/src/glut/beos/beos_x11.h b/src/glut/beos/beos_x11.h diff --git a/src/glut/beos/glutBlocker.cpp b/src/glut/beos/glutBlocker.cpp diff --git a/src/glut/beos/glutBlocker.h b/src/glut/beos/glutBlocker.h diff --git a/src/glut/beos/glutCallback.cpp b/src/glut/beos/glutCallback.cpp diff --git a/src/glut/beos/glutColor.cpp b/src/glut/beos/glutColor.cpp diff --git a/src/glut/beos/glutCursor.cpp b/src/glut/beos/glutCursor.cpp diff --git a/src/glut/beos/glutCursors.h b/src/glut/beos/glutCursors.h diff --git a/src/glut/beos/glutDstr.cpp b/src/glut/beos/glutDstr.cpp diff --git a/src/glut/beos/glutEvent.cpp b/src/glut/beos/glutEvent.cpp diff --git a/src/glut/beos/glutGet.cpp b/src/glut/beos/glutGet.cpp diff --git a/src/glut/beos/glutInit.cpp b/src/glut/beos/glutInit.cpp diff --git a/src/glut/beos/glutMenu.cpp b/src/glut/beos/glutMenu.cpp diff --git a/src/glut/beos/glutMenu.h b/src/glut/beos/glutMenu.h diff --git a/src/glut/beos/glutOverlay.cpp b/src/glut/beos/glutOverlay.cpp diff --git a/src/glut/beos/glutState.h b/src/glut/beos/glutState.h diff --git a/src/glut/beos/glutWindow.cpp b/src/glut/beos/glutWindow.cpp diff --git a/src/glut/beos/glutWindow.h b/src/glut/beos/glutWindow.h diff --git a/src/glut/beos/glut_8x13.c b/src/glut/beos/glut_8x13.c diff --git a/src/glut/beos/glut_9x15.c b/src/glut/beos/glut_9x15.c diff --git a/src/glut/beos/glut_bitmap.c b/src/glut/beos/glut_bitmap.c diff --git a/src/glut/beos/glut_bwidth.c b/src/glut/beos/glut_bwidth.c diff --git a/src/glut/beos/glut_ext.c b/src/glut/beos/glut_ext.c diff --git a/src/glut/beos/glut_hel10.c b/src/glut/beos/glut_hel10.c diff --git a/src/glut/beos/glut_hel12.c b/src/glut/beos/glut_hel12.c diff --git a/src/glut/beos/glut_hel18.c b/src/glut/beos/glut_hel18.c diff --git a/src/glut/beos/glut_mroman.c b/src/glut/beos/glut_mroman.c diff --git a/src/glut/beos/glut_roman.c b/src/glut/beos/glut_roman.c diff --git a/src/glut/beos/glut_shapes.c b/src/glut/beos/glut_shapes.c diff --git a/src/glut/beos/glut_stroke.c b/src/glut/beos/glut_stroke.c diff --git a/src/glut/beos/glut_swidth.c b/src/glut/beos/glut_swidth.c diff --git a/src/glut/beos/glut_teapot.c b/src/glut/beos/glut_teapot.c diff --git a/src/glut/beos/glut_tr10.c b/src/glut/beos/glut_tr10.c diff --git a/src/glut/beos/glut_tr24.c b/src/glut/beos/glut_tr24.c diff --git a/src/glut/beos/glut_util.c b/src/glut/beos/glut_util.c diff --git a/src/glut/beos/glut_vidresize.c b/src/glut/beos/glut_vidresize.c diff --git a/src/glut/beos/glutbitmap.h b/src/glut/beos/glutbitmap.h diff --git a/src/glut/beos/glutint.h b/src/glut/beos/glutint.h diff --git a/src/glut/beos/glutstroke.h b/src/glut/beos/glutstroke.h diff --git a/src/glut/directfb/Makefile b/src/glut/directfb/Makefile diff --git a/src/glut/directfb/NOTES b/src/glut/directfb/NOTES diff --git a/src/glut/directfb/callback.c b/src/glut/directfb/callback.c diff --git a/src/glut/directfb/color.c b/src/glut/directfb/color.c diff --git a/src/glut/directfb/cursor.c b/src/glut/directfb/cursor.c diff --git a/src/glut/directfb/cursors.h b/src/glut/directfb/cursors.h diff --git a/src/glut/directfb/events.c b/src/glut/directfb/events.c diff --git a/src/glut/directfb/ext.c b/src/glut/directfb/ext.c diff --git a/src/glut/directfb/font.c b/src/glut/directfb/font.c diff --git a/src/glut/directfb/font.h b/src/glut/directfb/font.h diff --git a/src/glut/directfb/game.c b/src/glut/directfb/game.c diff --git a/src/glut/directfb/globals.c b/src/glut/directfb/globals.c diff --git a/src/glut/directfb/init.c b/src/glut/directfb/init.c diff --git a/src/glut/directfb/internal.h b/src/glut/directfb/internal.h diff --git a/src/glut/directfb/menu.c b/src/glut/directfb/menu.c diff --git a/src/glut/directfb/models.c b/src/glut/directfb/models.c diff --git a/src/glut/directfb/overlay.c b/src/glut/directfb/overlay.c diff --git a/src/glut/directfb/state.c b/src/glut/directfb/state.c diff --git a/src/glut/directfb/teapot.c b/src/glut/directfb/teapot.c diff --git a/src/glut/directfb/window.c b/src/glut/directfb/window.c diff --git a/src/glut/dos/Makefile.DJ b/src/glut/dos/Makefile.DJ diff --git a/src/glut/dos/PC_HW/pc_hw.c b/src/glut/dos/PC_HW/pc_hw.c diff --git a/src/glut/dos/PC_HW/pc_hw.h b/src/glut/dos/PC_HW/pc_hw.h diff --git a/src/glut/dos/PC_HW/pc_irq.S b/src/glut/dos/PC_HW/pc_irq.S diff --git a/src/glut/dos/PC_HW/pc_keyb.c b/src/glut/dos/PC_HW/pc_keyb.c diff --git a/src/glut/dos/PC_HW/pc_mouse.c b/src/glut/dos/PC_HW/pc_mouse.c diff --git a/src/glut/dos/PC_HW/pc_timer.c b/src/glut/dos/PC_HW/pc_timer.c diff --git a/src/glut/dos/bitmap.c b/src/glut/dos/bitmap.c diff --git a/src/glut/dos/callback.c b/src/glut/dos/callback.c diff --git a/src/glut/dos/color.c b/src/glut/dos/color.c diff --git a/src/glut/dos/extens.c b/src/glut/dos/extens.c diff --git a/src/glut/dos/f8x13.c b/src/glut/dos/f8x13.c diff --git a/src/glut/dos/f9x15.c b/src/glut/dos/f9x15.c diff --git a/src/glut/dos/hel10.c b/src/glut/dos/hel10.c diff --git a/src/glut/dos/hel12.c b/src/glut/dos/hel12.c diff --git a/src/glut/dos/hel18.c b/src/glut/dos/hel18.c diff --git a/src/glut/dos/init.c b/src/glut/dos/init.c diff --git a/src/glut/dos/internal.h b/src/glut/dos/internal.h diff --git a/src/glut/dos/loop.c b/src/glut/dos/loop.c diff --git a/src/glut/dos/menu.c b/src/glut/dos/menu.c diff --git a/src/glut/dos/mouse.c b/src/glut/dos/mouse.c diff --git a/src/glut/dos/mroman.c b/src/glut/dos/mroman.c diff --git a/src/glut/dos/overlay.c b/src/glut/dos/overlay.c diff --git a/src/glut/dos/roman.c b/src/glut/dos/roman.c diff --git a/src/glut/dos/shapes.c b/src/glut/dos/shapes.c diff --git a/src/glut/dos/state.c b/src/glut/dos/state.c diff --git a/src/glut/dos/stroke.c b/src/glut/dos/stroke.c diff --git a/src/glut/dos/teapot.c b/src/glut/dos/teapot.c diff --git a/src/glut/dos/tr10.c b/src/glut/dos/tr10.c diff --git a/src/glut/dos/tr24.c b/src/glut/dos/tr24.c diff --git a/src/glut/dos/util.c b/src/glut/dos/util.c diff --git a/src/glut/dos/window.c b/src/glut/dos/window.c diff --git a/src/glut/fbdev/Makefile b/src/glut/fbdev/Makefile diff --git a/src/glut/fbdev/bitmap.c b/src/glut/fbdev/bitmap.c diff --git a/src/glut/fbdev/callback.c b/src/glut/fbdev/callback.c diff --git a/src/glut/fbdev/colormap.c b/src/glut/fbdev/colormap.c diff --git a/src/glut/fbdev/cursor.c b/src/glut/fbdev/cursor.c diff --git a/src/glut/fbdev/cursors.h b/src/glut/fbdev/cursors.h diff --git a/src/glut/fbdev/ext.c b/src/glut/fbdev/ext.c diff --git a/src/glut/fbdev/fbdev.c b/src/glut/fbdev/fbdev.c diff --git a/src/glut/fbdev/gamemode.c b/src/glut/fbdev/gamemode.c diff --git a/src/glut/fbdev/input.c b/src/glut/fbdev/input.c diff --git a/src/glut/fbdev/internal.h b/src/glut/fbdev/internal.h diff --git a/src/glut/fbdev/menu.c b/src/glut/fbdev/menu.c diff --git a/src/glut/fbdev/overlay.c b/src/glut/fbdev/overlay.c diff --git a/src/glut/fbdev/state.c b/src/glut/fbdev/state.c diff --git a/src/glut/fbdev/stroke.c b/src/glut/fbdev/stroke.c diff --git a/src/glut/fbdev/vidresize.c b/src/glut/fbdev/vidresize.c diff --git a/src/glut/ggi/Makefile b/src/glut/ggi/Makefile diff --git a/src/glut/ggi/debug.h b/src/glut/ggi/debug.h diff --git a/src/glut/ggi/ggiglut.c b/src/glut/ggi/ggiglut.c diff --git a/src/glut/glx/Makefile b/src/glut/glx/Makefile diff --git a/src/glut/glx/Makefile.cygnus b/src/glut/glx/Makefile.cygnus diff --git a/src/glut/glx/Makefile.mgw b/src/glut/glx/Makefile.mgw diff --git a/src/glut/glx/Makefile.sgi b/src/glut/glx/Makefile.sgi diff --git a/src/glut/glx/Makefile.win b/src/glut/glx/Makefile.win diff --git a/src/glut/glx/capturexfont.c b/src/glut/glx/capturexfont.c diff --git a/src/glut/glx/descrip.mms b/src/glut/glx/descrip.mms diff --git a/src/glut/glx/fxglut.def b/src/glut/glx/fxglut.def diff --git a/src/glut/glx/glut.def b/src/glut/glx/glut.def diff --git a/src/glut/glx/glut.pc.in b/src/glut/glx/glut.pc.in diff --git a/src/glut/glx/glut_8x13.c b/src/glut/glx/glut_8x13.c diff --git a/src/glut/glx/glut_9x15.c b/src/glut/glx/glut_9x15.c diff --git a/src/glut/glx/glut_bitmap.c b/src/glut/glx/glut_bitmap.c diff --git a/src/glut/glx/glut_bwidth.c b/src/glut/glx/glut_bwidth.c diff --git a/src/glut/glx/glut_cindex.c b/src/glut/glx/glut_cindex.c diff --git a/src/glut/glx/glut_cmap.c b/src/glut/glx/glut_cmap.c diff --git a/src/glut/glx/glut_cursor.c b/src/glut/glx/glut_cursor.c diff --git a/src/glut/glx/glut_dials.c b/src/glut/glx/glut_dials.c diff --git a/src/glut/glx/glut_dstr.c b/src/glut/glx/glut_dstr.c diff --git a/src/glut/glx/glut_event.c b/src/glut/glx/glut_event.c diff --git a/src/glut/glx/glut_ext.c b/src/glut/glx/glut_ext.c diff --git a/src/glut/glx/glut_fbc.c b/src/glut/glx/glut_fbc.c diff --git a/src/glut/glx/glut_fullscrn.c b/src/glut/glx/glut_fullscrn.c diff --git a/src/glut/glx/glut_gamemode.c b/src/glut/glx/glut_gamemode.c diff --git a/src/glut/glx/glut_get.c b/src/glut/glx/glut_get.c diff --git a/src/glut/glx/glut_glxext.c b/src/glut/glx/glut_glxext.c diff --git a/src/glut/glx/glut_hel10.c b/src/glut/glx/glut_hel10.c diff --git a/src/glut/glx/glut_hel12.c b/src/glut/glx/glut_hel12.c diff --git a/src/glut/glx/glut_hel18.c b/src/glut/glx/glut_hel18.c diff --git a/src/glut/glx/glut_init.c b/src/glut/glx/glut_init.c diff --git a/src/glut/glx/glut_input.c b/src/glut/glx/glut_input.c diff --git a/src/glut/glx/glut_joy.c b/src/glut/glx/glut_joy.c diff --git a/src/glut/glx/glut_key.c b/src/glut/glx/glut_key.c diff --git a/src/glut/glx/glut_keyctrl.c b/src/glut/glx/glut_keyctrl.c diff --git a/src/glut/glx/glut_keyup.c b/src/glut/glx/glut_keyup.c diff --git a/src/glut/glx/glut_menu.c b/src/glut/glx/glut_menu.c diff --git a/src/glut/glx/glut_menu2.c b/src/glut/glx/glut_menu2.c diff --git a/src/glut/glx/glut_mesa.c b/src/glut/glx/glut_mesa.c diff --git a/src/glut/glx/glut_modifier.c b/src/glut/glx/glut_modifier.c diff --git a/src/glut/glx/glut_mroman.c b/src/glut/glx/glut_mroman.c diff --git a/src/glut/glx/glut_overlay.c b/src/glut/glx/glut_overlay.c diff --git a/src/glut/glx/glut_roman.c b/src/glut/glx/glut_roman.c diff --git a/src/glut/glx/glut_shapes.c b/src/glut/glx/glut_shapes.c diff --git a/src/glut/glx/glut_space.c b/src/glut/glx/glut_space.c diff --git a/src/glut/glx/glut_stroke.c b/src/glut/glx/glut_stroke.c diff --git a/src/glut/glx/glut_swap.c b/src/glut/glx/glut_swap.c diff --git a/src/glut/glx/glut_swidth.c b/src/glut/glx/glut_swidth.c diff --git a/src/glut/glx/glut_tablet.c b/src/glut/glx/glut_tablet.c diff --git a/src/glut/glx/glut_teapot.c b/src/glut/glx/glut_teapot.c diff --git a/src/glut/glx/glut_tr10.c b/src/glut/glx/glut_tr10.c diff --git a/src/glut/glx/glut_tr24.c b/src/glut/glx/glut_tr24.c diff --git a/src/glut/glx/glut_util.c b/src/glut/glx/glut_util.c diff --git a/src/glut/glx/glut_vidresize.c b/src/glut/glx/glut_vidresize.c diff --git a/src/glut/glx/glut_warp.c b/src/glut/glx/glut_warp.c diff --git a/src/glut/glx/glut_win.c b/src/glut/glx/glut_win.c diff --git a/src/glut/glx/glut_winmisc.c b/src/glut/glx/glut_winmisc.c diff --git a/src/glut/glx/glutbitmap.h b/src/glut/glx/glutbitmap.h diff --git a/src/glut/glx/glutint.h b/src/glut/glx/glutint.h diff --git a/src/glut/glx/glutstroke.h b/src/glut/glx/glutstroke.h diff --git a/src/glut/glx/glutwin32.h b/src/glut/glx/glutwin32.h diff --git a/src/glut/glx/layerutil.c b/src/glut/glx/layerutil.c diff --git a/src/glut/glx/layerutil.h b/src/glut/glx/layerutil.h diff --git a/src/glut/glx/mms_depend b/src/glut/glx/mms_depend diff --git a/src/glut/glx/stroke.h b/src/glut/glx/stroke.h diff --git a/src/glut/glx/win32_glx.c b/src/glut/glx/win32_glx.c diff --git a/src/glut/glx/win32_glx.h b/src/glut/glx/win32_glx.h diff --git a/src/glut/glx/win32_menu.c b/src/glut/glx/win32_menu.c diff --git a/src/glut/glx/win32_util.c b/src/glut/glx/win32_util.c diff --git a/src/glut/glx/win32_winproc.c b/src/glut/glx/win32_winproc.c diff --git a/src/glut/glx/win32_x11.c b/src/glut/glx/win32_x11.c diff --git a/src/glut/glx/win32_x11.h b/src/glut/glx/win32_x11.h diff --git a/src/glut/mini/Makefile b/src/glut/mini/Makefile diff --git a/src/glut/mini/bitmap.c b/src/glut/mini/bitmap.c diff --git a/src/glut/mini/callback.c b/src/glut/mini/callback.c diff --git a/src/glut/mini/color.c b/src/glut/mini/color.c diff --git a/src/glut/mini/globals.c b/src/glut/mini/globals.c diff --git a/src/glut/mini/init.c b/src/glut/mini/init.c diff --git a/src/glut/mini/internal.h b/src/glut/mini/internal.h diff --git a/src/glut/mini/menu.c b/src/glut/mini/menu.c diff --git a/src/glut/mini/models.c b/src/glut/mini/models.c diff --git a/src/glut/mini/overlay.c b/src/glut/mini/overlay.c diff --git a/src/glut/mini/state.c b/src/glut/mini/state.c diff --git a/src/glut/mini/teapot.c b/src/glut/mini/teapot.c diff --git a/src/glut/mini/window.c b/src/glut/mini/window.c diff --git a/src/glut/os2/Makefile b/src/glut/os2/Makefile diff --git a/src/glut/os2/WarpWin.cpp b/src/glut/os2/WarpWin.cpp diff --git a/src/glut/os2/glutOverlay.cpp b/src/glut/os2/glutOverlay.cpp diff --git a/src/glut/os2/glut_8x13.cpp b/src/glut/os2/glut_8x13.cpp diff --git a/src/glut/os2/glut_9x15.cpp b/src/glut/os2/glut_9x15.cpp diff --git a/src/glut/os2/glut_bitmap.cpp b/src/glut/os2/glut_bitmap.cpp diff --git a/src/glut/os2/glut_cindex.cpp b/src/glut/os2/glut_cindex.cpp diff --git a/src/glut/os2/glut_cmap.cpp b/src/glut/os2/glut_cmap.cpp diff --git a/src/glut/os2/glut_cursor.cpp b/src/glut/os2/glut_cursor.cpp diff --git a/src/glut/os2/glut_event.cpp b/src/glut/os2/glut_event.cpp diff --git a/src/glut/os2/glut_ext.cpp b/src/glut/os2/glut_ext.cpp diff --git a/src/glut/os2/glut_fullscrn.cpp b/src/glut/os2/glut_fullscrn.cpp diff --git a/src/glut/os2/glut_gamemode.cpp b/src/glut/os2/glut_gamemode.cpp diff --git a/src/glut/os2/glut_get.cpp b/src/glut/os2/glut_get.cpp diff --git a/src/glut/os2/glut_hel10.cpp b/src/glut/os2/glut_hel10.cpp diff --git a/src/glut/os2/glut_hel12.cpp b/src/glut/os2/glut_hel12.cpp diff --git a/src/glut/os2/glut_hel18.cpp b/src/glut/os2/glut_hel18.cpp diff --git a/src/glut/os2/glut_init.cpp b/src/glut/os2/glut_init.cpp diff --git a/src/glut/os2/glut_input.cpp b/src/glut/os2/glut_input.cpp diff --git a/src/glut/os2/glut_key.cpp b/src/glut/os2/glut_key.cpp diff --git a/src/glut/os2/glut_keyctrl.cpp b/src/glut/os2/glut_keyctrl.cpp diff --git a/src/glut/os2/glut_keyup.cpp b/src/glut/os2/glut_keyup.cpp diff --git a/src/glut/os2/glut_mesa.cpp b/src/glut/os2/glut_mesa.cpp diff --git a/src/glut/os2/glut_modifier.cpp b/src/glut/os2/glut_modifier.cpp diff --git a/src/glut/os2/glut_roman.cpp b/src/glut/os2/glut_roman.cpp diff --git a/src/glut/os2/glut_shapes.cpp b/src/glut/os2/glut_shapes.cpp diff --git a/src/glut/os2/glut_stroke.cpp b/src/glut/os2/glut_stroke.cpp diff --git a/src/glut/os2/glut_swap.cpp b/src/glut/os2/glut_swap.cpp diff --git a/src/glut/os2/glut_teapot.cpp b/src/glut/os2/glut_teapot.cpp diff --git a/src/glut/os2/glut_tr24.cpp b/src/glut/os2/glut_tr24.cpp diff --git a/src/glut/os2/glut_util.cpp b/src/glut/os2/glut_util.cpp diff --git a/src/glut/os2/glut_vidresize.cpp b/src/glut/os2/glut_vidresize.cpp diff --git a/src/glut/os2/glut_warp.cpp b/src/glut/os2/glut_warp.cpp diff --git a/src/glut/os2/glut_win.cpp b/src/glut/os2/glut_win.cpp diff --git a/src/glut/os2/glut_winmisc.cpp b/src/glut/os2/glut_winmisc.cpp diff --git a/src/glut/os2/glutbitmap.h b/src/glut/os2/glutbitmap.h diff --git a/src/glut/os2/glutos2.h b/src/glut/os2/glutos2.h diff --git a/src/glut/os2/glutstroke.h b/src/glut/os2/glutstroke.h diff --git a/src/glut/os2/layerutil.h b/src/glut/os2/layerutil.h diff --git a/src/glut/os2/libGlut.DEF b/src/glut/os2/libGlut.DEF diff --git a/src/glut/os2/os2_glx.cpp b/src/glut/os2/os2_glx.cpp diff --git a/src/glut/os2/os2_menu.cpp b/src/glut/os2/os2_menu.cpp diff --git a/src/glut/os2/os2_winproc.cpp b/src/glut/os2/os2_winproc.cpp diff --git a/src/glut/os2/src-glut_os2pm.zip b/src/glut/os2/src-glut_os2pm.zip diff --git a/src/glw/GLwDrawA.c b/src/glw/GLwDrawA.c diff --git a/src/glw/GLwDrawA.h b/src/glw/GLwDrawA.h diff --git a/src/glw/GLwDrawAP.h b/src/glw/GLwDrawAP.h diff --git a/src/glw/GLwMDrawA.c b/src/glw/GLwMDrawA.c diff --git a/src/glw/GLwMDrawA.h b/src/glw/GLwMDrawA.h diff --git a/src/glw/GLwMDrawAP.h b/src/glw/GLwMDrawAP.h diff --git a/src/glw/Makefile b/src/glw/Makefile diff --git a/src/glw/README b/src/glw/README diff --git a/src/glw/glw.pc.in b/src/glw/glw.pc.in diff --git a/src/glx/Makefile b/src/glx/Makefile diff --git a/src/glx/mini/Makefile b/src/glx/mini/Makefile diff --git a/src/glx/mini/NOTES b/src/glx/mini/NOTES diff --git a/src/glx/mini/dispatch.c b/src/glx/mini/dispatch.c diff --git a/src/glx/mini/driver.h b/src/glx/mini/driver.h diff --git a/src/glx/mini/example.miniglx.conf b/src/glx/mini/example.miniglx.conf diff --git a/src/glx/mini/miniglx.c b/src/glx/mini/miniglx.c diff --git a/src/glx/mini/miniglxP.h b/src/glx/mini/miniglxP.h diff --git a/src/glx/mini/miniglx_events.c b/src/glx/mini/miniglx_events.c diff --git a/src/glx/x11/.gitignore b/src/glx/x11/.gitignore diff --git a/src/glx/x11/Makefile b/src/glx/x11/Makefile diff --git a/src/glx/x11/XF86dri.c b/src/glx/x11/XF86dri.c diff --git a/src/glx/x11/clientattrib.c b/src/glx/x11/clientattrib.c diff --git a/src/glx/x11/compsize.c b/src/glx/x11/compsize.c diff --git a/src/glx/x11/dri_glx.c b/src/glx/x11/dri_glx.c diff --git a/src/glx/x11/dri_glx.h b/src/glx/x11/dri_glx.h diff --git a/src/glx/x11/eval.c b/src/glx/x11/eval.c diff --git a/src/glx/x11/glcontextmodes.c b/src/glx/x11/glcontextmodes.c diff --git a/src/glx/x11/glcontextmodes.h b/src/glx/x11/glcontextmodes.h diff --git a/src/glx/x11/glx_pbuffer.c b/src/glx/x11/glx_pbuffer.c diff --git a/src/glx/x11/glx_query.c b/src/glx/x11/glx_query.c diff --git a/src/glx/x11/glx_texture_compression.c b/src/glx/x11/glx_texture_compression.c diff --git a/src/glx/x11/glxclient.h b/src/glx/x11/glxclient.h diff --git a/src/glx/x11/glxcmds.c b/src/glx/x11/glxcmds.c index f52b71f..27017ea 100644 --- a/src/glx/x11/glxcmds.c +++ b/src/glx/x11/glxcmds.c @@ -1889,14 +1889,33 @@ static int __glXGetVideoSyncSGI(unsigned int *count) if ( (gc != NULL) && gc->isDirect ) { __GLXscreenConfigs * const psc = GetGLXScreenConfigs( gc->currentDpy, gc->screen ); - if ( __glXExtensionBitIsEnabled( psc, SGI_video_sync_bit ) - && psc->driScreen.private && psc->driScreen.getMSC) { - int ret; - int64_t temp; - - ret = psc->driScreen.getMSC( psc->driScreen.private, & temp ); - *count = (unsigned) temp; - return (ret == 0) ? 0 : GLX_BAD_CONTEXT; + if ( __glXExtensionBitIsEnabled( psc, SGI_video_sync_bit ) + && psc->driScreen.private ) { + __DRIdrawable * const pdraw = + (*psc->driScreen.getDrawable)(gc->currentDpy, + gc->currentDrawable, + psc->driScreen.private); + + /* + * Try to use the drawable's getMSC first so we get the right + * counter + */ + if ( pdraw->getMSC != NULL ) { + int ret; + int64_t temp; + + ret = (*pdraw->getMSC)( psc->driScreen.private, pdraw->private, + & temp); + *count = (unsigned) temp; + return (ret == 0) ? 0 : GLX_BAD_CONTEXT; + } else if ( psc->driScreen.getMSC != NULL ) { /* fallback to screen */ + int ret; + int64_t temp; + + ret = psc->driScreen.getMSC( psc->driScreen.private, & temp ); + *count = (unsigned) temp; + return (ret == 0) ? 0 : GLX_BAD_CONTEXT; + } } } #else @@ -1922,7 +1941,8 @@ static int __glXWaitVideoSyncSGI(int divisor, int remainder, unsigned int *count (*psc->driScreen.getDrawable)(gc->currentDpy, gc->currentDrawable, psc->driScreen.private); - if ( (pdraw != NULL) && (pdraw->waitForMSC != NULL) ) { + + if ( pdraw->waitForMSC != NULL ) { int ret; int64_t msc; int64_t sbc; @@ -2884,8 +2904,10 @@ int __glXGetInternalVersion(void) * any DRI driver built to any previous version. * 20060314 - Added support for GLX_MESA_copy_sub_buffer. * 20070105 - Added support for damage reporting. + * 20070925 - Added support for per-drawable getMSC callbacks, which + * allows the core to support vblank events on multiple pipes. */ - return 20070105; + return 20070925; } diff --git a/src/glx/x11/glxext.c b/src/glx/x11/glxext.c diff --git a/src/glx/x11/glxextensions.c b/src/glx/x11/glxextensions.c diff --git a/src/glx/x11/glxextensions.h b/src/glx/x11/glxextensions.h diff --git a/src/glx/x11/indirect.c b/src/glx/x11/indirect.c diff --git a/src/glx/x11/indirect.h b/src/glx/x11/indirect.h diff --git a/src/glx/x11/indirect_init.c b/src/glx/x11/indirect_init.c diff --git a/src/glx/x11/indirect_init.h b/src/glx/x11/indirect_init.h diff --git a/src/glx/x11/indirect_size.c b/src/glx/x11/indirect_size.c diff --git a/src/glx/x11/indirect_size.h b/src/glx/x11/indirect_size.h diff --git a/src/glx/x11/indirect_transpose_matrix.c b/src/glx/x11/indirect_transpose_matrix.c diff --git a/src/glx/x11/indirect_va_private.h b/src/glx/x11/indirect_va_private.h diff --git a/src/glx/x11/indirect_vertex_array.c b/src/glx/x11/indirect_vertex_array.c diff --git a/src/glx/x11/indirect_vertex_array.h b/src/glx/x11/indirect_vertex_array.h diff --git a/src/glx/x11/indirect_vertex_program.c b/src/glx/x11/indirect_vertex_program.c diff --git a/src/glx/x11/indirect_window_pos.c b/src/glx/x11/indirect_window_pos.c diff --git a/src/glx/x11/packrender.h b/src/glx/x11/packrender.h diff --git a/src/glx/x11/packsingle.h b/src/glx/x11/packsingle.h diff --git a/src/glx/x11/pixel.c b/src/glx/x11/pixel.c diff --git a/src/glx/x11/pixelstore.c b/src/glx/x11/pixelstore.c diff --git a/src/glx/x11/render2.c b/src/glx/x11/render2.c diff --git a/src/glx/x11/renderpix.c b/src/glx/x11/renderpix.c diff --git a/src/glx/x11/single2.c b/src/glx/x11/single2.c diff --git a/src/glx/x11/singlepix.c b/src/glx/x11/singlepix.c diff --git a/src/glx/x11/vertarr.c b/src/glx/x11/vertarr.c diff --git a/src/glx/x11/xf86dri.h b/src/glx/x11/xf86dri.h diff --git a/src/glx/x11/xf86dristr.h b/src/glx/x11/xf86dristr.h diff --git a/src/glx/x11/xfont.c b/src/glx/x11/xfont.c diff --git a/src/mesa/.gitignore b/src/mesa/.gitignore diff --git a/src/mesa/Makefile b/src/mesa/Makefile diff --git a/src/mesa/Makefile.DJ b/src/mesa/Makefile.DJ diff --git a/src/mesa/Makefile.mgw b/src/mesa/Makefile.mgw diff --git a/src/mesa/descrip.mms b/src/mesa/descrip.mms diff --git a/src/mesa/drivers/allegro/amesa.c b/src/mesa/drivers/allegro/amesa.c diff --git a/src/mesa/drivers/allegro/direct.h b/src/mesa/drivers/allegro/direct.h diff --git a/src/mesa/drivers/allegro/generic.h b/src/mesa/drivers/allegro/generic.h diff --git a/src/mesa/drivers/beos/GLView.cpp b/src/mesa/drivers/beos/GLView.cpp diff --git a/src/mesa/drivers/beos/Makefile b/src/mesa/drivers/beos/Makefile diff --git a/src/mesa/drivers/common/descrip.mms b/src/mesa/drivers/common/descrip.mms diff --git a/src/mesa/drivers/common/driverfuncs.c b/src/mesa/drivers/common/driverfuncs.c diff --git a/src/mesa/drivers/common/driverfuncs.h b/src/mesa/drivers/common/driverfuncs.h diff --git a/src/mesa/drivers/common/sources b/src/mesa/drivers/common/sources diff --git a/src/mesa/drivers/d3d/D3DCAPS.CPP b/src/mesa/drivers/d3d/D3DCAPS.CPP diff --git a/src/mesa/drivers/d3d/D3DHAL.H b/src/mesa/drivers/d3d/D3DHAL.H diff --git a/src/mesa/drivers/d3d/D3DInit.cpp b/src/mesa/drivers/d3d/D3DInit.cpp diff --git a/src/mesa/drivers/d3d/D3DMESA.H b/src/mesa/drivers/d3d/D3DMESA.H diff --git a/src/mesa/drivers/d3d/D3DRaster.cpp b/src/mesa/drivers/d3d/D3DRaster.cpp diff --git a/src/mesa/drivers/d3d/D3DShared.h b/src/mesa/drivers/d3d/D3DShared.h diff --git a/src/mesa/drivers/d3d/D3DTEXT.CPP b/src/mesa/drivers/d3d/D3DTEXT.CPP diff --git a/src/mesa/drivers/d3d/D3DTextureMgr.cpp b/src/mesa/drivers/d3d/D3DTextureMgr.cpp diff --git a/src/mesa/drivers/d3d/D3DTextureMgr.h b/src/mesa/drivers/d3d/D3DTextureMgr.h diff --git a/src/mesa/drivers/d3d/D3DUTILS.CPP b/src/mesa/drivers/d3d/D3DUTILS.CPP diff --git a/src/mesa/drivers/d3d/D3Dvbrender.c b/src/mesa/drivers/d3d/D3Dvbrender.c diff --git a/src/mesa/drivers/d3d/DDrawPROCS.c b/src/mesa/drivers/d3d/DDrawPROCS.c diff --git a/src/mesa/drivers/d3d/DEBUG.C b/src/mesa/drivers/d3d/DEBUG.C diff --git a/src/mesa/drivers/d3d/DEBUG.H b/src/mesa/drivers/d3d/DEBUG.H diff --git a/src/mesa/drivers/d3d/DbgEnv.bat b/src/mesa/drivers/d3d/DbgEnv.bat diff --git a/src/mesa/drivers/d3d/MAKEFILE b/src/mesa/drivers/d3d/MAKEFILE diff --git a/src/mesa/drivers/d3d/NULLProcs.h b/src/mesa/drivers/d3d/NULLProcs.h diff --git a/src/mesa/drivers/d3d/NullProcs.c b/src/mesa/drivers/d3d/NullProcs.c diff --git a/src/mesa/drivers/d3d/OPENGL32.DEF b/src/mesa/drivers/d3d/OPENGL32.DEF diff --git a/src/mesa/drivers/d3d/WGL.C b/src/mesa/drivers/d3d/WGL.C diff --git a/src/mesa/drivers/d3d/d3dText.h b/src/mesa/drivers/d3d/d3dText.h diff --git a/src/mesa/drivers/directfb/Makefile b/src/mesa/drivers/directfb/Makefile diff --git a/src/mesa/drivers/directfb/idirectfbgl_mesa.c b/src/mesa/drivers/directfb/idirectfbgl_mesa.c diff --git a/src/mesa/drivers/dos/blit.S b/src/mesa/drivers/dos/blit.S diff --git a/src/mesa/drivers/dos/dmesa.c b/src/mesa/drivers/dos/dmesa.c diff --git a/src/mesa/drivers/dos/dpmi.c b/src/mesa/drivers/dos/dpmi.c diff --git a/src/mesa/drivers/dos/internal.h b/src/mesa/drivers/dos/internal.h diff --git a/src/mesa/drivers/dos/null.c b/src/mesa/drivers/dos/null.c diff --git a/src/mesa/drivers/dos/null.h b/src/mesa/drivers/dos/null.h diff --git a/src/mesa/drivers/dos/vesa.c b/src/mesa/drivers/dos/vesa.c diff --git a/src/mesa/drivers/dos/vesa.h b/src/mesa/drivers/dos/vesa.h diff --git a/src/mesa/drivers/dos/vga.c b/src/mesa/drivers/dos/vga.c diff --git a/src/mesa/drivers/dos/vga.h b/src/mesa/drivers/dos/vga.h diff --git a/src/mesa/drivers/dos/video.c b/src/mesa/drivers/dos/video.c diff --git a/src/mesa/drivers/dos/video.h b/src/mesa/drivers/dos/video.h diff --git a/src/mesa/drivers/dri/Makefile b/src/mesa/drivers/dri/Makefile diff --git a/src/mesa/drivers/dri/Makefile.template b/src/mesa/drivers/dri/Makefile.template diff --git a/src/mesa/drivers/dri/common/depthtmp.h b/src/mesa/drivers/dri/common/depthtmp.h diff --git a/src/mesa/drivers/dri/common/dri_bufmgr.c b/src/mesa/drivers/dri/common/dri_bufmgr.c diff --git a/src/mesa/drivers/dri/common/dri_bufmgr.h b/src/mesa/drivers/dri/common/dri_bufmgr.h diff --git a/src/mesa/drivers/dri/common/dri_bufpool.h b/src/mesa/drivers/dri/common/dri_bufpool.h diff --git a/src/mesa/drivers/dri/common/dri_drmpool.c b/src/mesa/drivers/dri/common/dri_drmpool.c diff --git a/src/mesa/drivers/dri/common/dri_util.c b/src/mesa/drivers/dri/common/dri_util.c index c30e66f..93333b9 100644 --- a/src/mesa/drivers/dri/common/dri_util.c +++ b/src/mesa/drivers/dri/common/dri_util.c @@ -517,6 +517,15 @@ static int driGetMSC( void *screenPrivate, int64_t *msc ) return sPriv->DriverAPI.GetMSC( sPriv, msc ); } +static int driDrawableGetMSC( void *screenPrivate, void *drawablePrivate, + int64_t *msc ) +{ + __DRIscreenPrivate *sPriv = (__DRIscreenPrivate *) screenPrivate; + __DRIdrawablePrivate *dPriv = (__DRIdrawablePrivate *) drawablePrivate; + + return sPriv->DriverAPI.GetDrawableMSC( sPriv, dPriv, msc ); +} + /** * Called directly from a number of higher-level GLX functions. */ @@ -639,6 +648,8 @@ static void *driCreateNewDrawable(__DRInativeDisplay *dpy, pdp->numBackClipRects = 0; pdp->pClipRects = NULL; pdp->pBackClipRects = NULL; + pdp->vblSeq = 0; + pdp->vblFlags = 0; pdp->display = dpy; pdp->screen = modes->screen; @@ -663,6 +674,11 @@ static void *driCreateNewDrawable(__DRInativeDisplay *dpy, pdraw->swapBuffersMSC = driSwapBuffersMSC; pdraw->frameTracking = NULL; pdraw->queryFrameTracking = driQueryFrameTracking; + if (driCompareGLXAPIVersion(20070925) >= 0) { + pdraw->getMSC = driDrawableGetMSC; + pdp->msc = 0; + pdp->base_msc = 0; + } if (driCompareGLXAPIVersion (20060314) >= 0) pdraw->copySubBuffer = driCopySubBuffer; diff --git a/src/mesa/drivers/dri/common/dri_util.h b/src/mesa/drivers/dri/common/dri_util.h index 539d28d..6174671 100644 --- a/src/mesa/drivers/dri/common/dri_util.h +++ b/src/mesa/drivers/dri/common/dri_util.h @@ -195,6 +195,14 @@ struct __DriverAPIRec { */ void (*setTexOffset)(__DRIcontext *pDRICtx, GLint texname, unsigned long long offset, GLint depth, GLuint pitch); + + /** + * New version of GetMSC so we can pass drawable data to the low level + * DRM driver (e.g. pipe info). + */ + int (*GetDrawableMSC) ( __DRIscreenPrivate * priv, + __DRIdrawablePrivate *drawablePrivate, + int64_t *count); }; @@ -308,6 +316,38 @@ struct __DRIdrawablePrivateRec { /*@}*/ /** + * \name Vertical blank tracking information + * Used for waiting on vertical blank events. + */ + /*@{*/ + unsigned int vblSeq; + unsigned int vblFlags; + /*@}*/ + + /** + * \name Monotonic MSC tracking + * + * Low level driver is responsible for updating base_msc, primary and + * secondary_vblank_base values so that higher level code can calculate + * a new msc value or msc target for a WaitMSC call. The new value will + * be: + * if (pipe == primary) + * msc += get_vblank_count(primary) - primary_vblank_base; + * else + * msc += get_vblank_count(secondary) - secondary_vblank_base; + * + * And for waiting on a value, core code will use: + * actual_target = target_msc - base_msc + + * (primary|secondary)_vblank_base; + */ + /*@{*/ + int64_t msc; + int64_t base_msc; + int64_t primary_vblank_base; + int64_t secondary_vblank_base; + /*@}*/ + + /** * Pointer to context to which this drawable is currently bound. */ __DRIcontextPrivate *driContextPriv; diff --git a/src/mesa/drivers/dri/common/drirenderbuffer.c b/src/mesa/drivers/dri/common/drirenderbuffer.c diff --git a/src/mesa/drivers/dri/common/drirenderbuffer.h b/src/mesa/drivers/dri/common/drirenderbuffer.h diff --git a/src/mesa/drivers/dri/common/extension_helper.h b/src/mesa/drivers/dri/common/extension_helper.h diff --git a/src/mesa/drivers/dri/common/memops.h b/src/mesa/drivers/dri/common/memops.h diff --git a/src/mesa/drivers/dri/common/mmio.h b/src/mesa/drivers/dri/common/mmio.h diff --git a/src/mesa/drivers/dri/common/mmx.h b/src/mesa/drivers/dri/common/mmx.h diff --git a/src/mesa/drivers/dri/common/spantmp.h b/src/mesa/drivers/dri/common/spantmp.h diff --git a/src/mesa/drivers/dri/common/spantmp2.h b/src/mesa/drivers/dri/common/spantmp2.h diff --git a/src/mesa/drivers/dri/common/spantmp_common.h b/src/mesa/drivers/dri/common/spantmp_common.h diff --git a/src/mesa/drivers/dri/common/stenciltmp.h b/src/mesa/drivers/dri/common/stenciltmp.h diff --git a/src/mesa/drivers/dri/common/texmem.c b/src/mesa/drivers/dri/common/texmem.c diff --git a/src/mesa/drivers/dri/common/texmem.h b/src/mesa/drivers/dri/common/texmem.h diff --git a/src/mesa/drivers/dri/common/utils.c b/src/mesa/drivers/dri/common/utils.c diff --git a/src/mesa/drivers/dri/common/utils.h b/src/mesa/drivers/dri/common/utils.h diff --git a/src/mesa/drivers/dri/common/vblank.c b/src/mesa/drivers/dri/common/vblank.c index e7ed545..33d3115 100644 --- a/src/mesa/drivers/dri/common/vblank.c +++ b/src/mesa/drivers/dri/common/vblank.c @@ -42,7 +42,7 @@ * * Stores the 64-bit count of vertical refreshes since some (arbitrary) * point in time in \c count. Unless the value wraps around, which it - * may, it will never decrease. + * may, it will never decrease for a given drawable. * * \warning This function is called from \c glXGetVideoSyncSGI, which expects * a \c count of type \c unsigned (32-bit), and \c glXGetSyncValuesOML, which @@ -50,11 +50,14 @@ * currently always returns a \c sequence of type \c unsigned. * * \param priv Pointer to the DRI screen private struct. + * \param dPriv Pointer to the DRI drawable private struct * \param count Storage to hold MSC counter. * \return Zero is returned on success. A negative errno value * is returned on failure. */ -int driGetMSC32( __DRIscreenPrivate * priv, int64_t * count ) +int driDrawableGetMSC32( __DRIscreenPrivate * priv, + __DRIdrawablePrivate * dPriv, + int64_t * count) { drmVBlank vbl; int ret; @@ -63,13 +66,52 @@ int driGetMSC32( __DRIscreenPrivate * priv, int64_t * count ) vbl.request.type = DRM_VBLANK_RELATIVE; vbl.request.sequence = 0; + if ( dPriv && dPriv->vblFlags & VBLANK_FLAG_SECONDARY ) + vbl.request.type |= DRM_VBLANK_SECONDARY; ret = drmWaitVBlank( priv->fd, &vbl ); - *count = (int64_t)vbl.reply.sequence; + + if ( dPriv && !(dPriv->vblFlags & VBLANK_FLAG_SECONDARY) ) { + /* Primary pipe */ + dPriv->msc += vbl.reply.sequence - dPriv->primary_vblank_base; + } else if (dPriv && (dPriv->vblFlags & VBLANK_FLAG_SECONDARY) ) { + /* Secondary pipe */ + dPriv->msc += vbl.reply.sequence - dPriv->secondary_vblank_base; + } else { + /* Old driver (no knowledge of per-drawable MSC callback) */ + dPriv->msc += vbl.reply.sequence; + } + + *count = dPriv->msc; return ret; } +/** + * Get the current MSC refresh counter. + * + * Stores the 64-bit count of vertical refreshes since some (arbitrary) + * point in time in \c count. Unless the value wraps around, which it + * may, it will never decrease. + * + * \warning This function is called from \c glXGetVideoSyncSGI, which expects + * a \c count of type \c unsigned (32-bit), and \c glXGetSyncValuesOML, which + * expects a \c count of type \c int64_t (signed 64-bit). The kernel ioctl + * currently always returns a \c sequence of type \c unsigned. + * + * Since this function doesn't take a drawable, it may end up getting the MSC + * value from a pipe not associated with the caller's context, resuling in + * undesired behavior. + * + * \param priv Pointer to the DRI screen private struct. + * \param count Storage to hold MSC counter. + * \return Zero is returned on success. A negative errno value + * is returned on failure. + */ +int driGetMSC32( __DRIscreenPrivate * priv, int64_t * count ) +{ + return driDrawableGetMSC32(priv, NULL, count); +} /****************************************************************************/ /** @@ -111,11 +153,20 @@ int driWaitForMSC32( __DRIdrawablePrivate *priv, if ( divisor != 0 ) { - unsigned int target = (unsigned int)target_msc; - unsigned int next = target; + unsigned int target; + unsigned int next; unsigned int r; int dont_wait = (target_msc == 0); + /* Convert to actual DRM counter value */ + target = target_msc - priv->base_msc; + if (!(priv->vblFlags & VBLANK_FLAG_SECONDARY)) + target += priv->primary_vblank_base; + else + target += priv->secondary_vblank_base; + + next = target; + do { /* dont_wait means we're using the glXWaitVideoSyncSGI() behavior. * The first time around, just get the current count and proceed @@ -124,6 +175,8 @@ int driWaitForMSC32( __DRIdrawablePrivate *priv, vbl.request.type = dont_wait ? DRM_VBLANK_RELATIVE : DRM_VBLANK_ABSOLUTE; vbl.request.sequence = next; + if ( priv->vblFlags & VBLANK_FLAG_SECONDARY ) + vbl.request.type |= DRM_VBLANK_SECONDARY; if ( drmWaitVBlank( priv->driScreenPriv->fd, &vbl ) != 0 ) { /* FIXME: This doesn't seem like the right thing to return here. @@ -252,16 +305,20 @@ static int do_wait( drmVBlank * vbl, GLuint * vbl_seq, int fd ) * direct rendering context. */ -void driDrawableInitVBlank( __DRIdrawablePrivate *priv, GLuint flags, - GLuint *vbl_seq ) +void driDrawableInitVBlank( __DRIdrawablePrivate *priv ) { if ( priv->pdraw->swap_interval == (unsigned)-1 ) { /* Get current vertical blank sequence */ - drmVBlank vbl = { .request={ .type = DRM_VBLANK_RELATIVE, .sequence = 0 } }; - do_wait( &vbl, vbl_seq, priv->driScreenPriv->fd ); + drmVBlank vbl; + + vbl.request.type = DRM_VBLANK_RELATIVE; + if ( priv->vblFlags & VBLANK_FLAG_SECONDARY ) + vbl.request.type |= DRM_VBLANK_SECONDARY; + vbl.request.sequence = 0; + do_wait( &vbl, &priv->vblSeq, priv->driScreenPriv->fd ); - priv->pdraw->swap_interval = (flags & (VBLANK_FLAG_THROTTLE | - VBLANK_FLAG_SYNC)) != 0 ? 1 : 0; + priv->pdraw->swap_interval = + (priv->vblFlags & (VBLANK_FLAG_THROTTLE | VBLANK_FLAG_SYNC)) ? 1 : 0; } } diff --git a/src/mesa/drivers/dri/common/vblank.h b/src/mesa/drivers/dri/common/vblank.h index ec83adc..e8550b2 100644 --- a/src/mesa/drivers/dri/common/vblank.h +++ b/src/mesa/drivers/dri/common/vblank.h @@ -46,11 +46,13 @@ */ extern int driGetMSC32( __DRIscreenPrivate * priv, int64_t * count ); +extern int driDrawableGetMSC32( __DRIscreenPrivate * priv, + __DRIdrawablePrivate * drawablePrivate, + int64_t * count); extern int driWaitForMSC32( __DRIdrawablePrivate *priv, int64_t target_msc, int64_t divisor, int64_t remainder, int64_t * msc ); extern GLuint driGetDefaultVBlankFlags( const driOptionCache *optionCache ); -extern void driDrawableInitVBlank ( __DRIdrawablePrivate *priv, GLuint flags, - GLuint *vbl_seq ); +extern void driDrawableInitVBlank ( __DRIdrawablePrivate *priv ); extern unsigned driGetVBlankInterval( const __DRIdrawablePrivate *priv, GLuint flags ); extern void driGetCurrentVBlank( const __DRIdrawablePrivate *priv, diff --git a/src/mesa/drivers/dri/common/xmlconfig.c b/src/mesa/drivers/dri/common/xmlconfig.c diff --git a/src/mesa/drivers/dri/common/xmlconfig.h b/src/mesa/drivers/dri/common/xmlconfig.h diff --git a/src/mesa/drivers/dri/common/xmlpool.h b/src/mesa/drivers/dri/common/xmlpool.h diff --git a/src/mesa/drivers/dri/common/xmlpool/.gitignore b/src/mesa/drivers/dri/common/xmlpool/.gitignore diff --git a/src/mesa/drivers/dri/common/xmlpool/Makefile b/src/mesa/drivers/dri/common/xmlpool/Makefile diff --git a/src/mesa/drivers/dri/common/xmlpool/de.po b/src/mesa/drivers/dri/common/xmlpool/de.po diff --git a/src/mesa/drivers/dri/common/xmlpool/es.po b/src/mesa/drivers/dri/common/xmlpool/es.po diff --git a/src/mesa/drivers/dri/common/xmlpool/fr.po b/src/mesa/drivers/dri/common/xmlpool/fr.po diff --git a/src/mesa/drivers/dri/common/xmlpool/gen_xmlpool.py b/src/mesa/drivers/dri/common/xmlpool/gen_xmlpool.py diff --git a/src/mesa/drivers/dri/common/xmlpool/nl.po b/src/mesa/drivers/dri/common/xmlpool/nl.po diff --git a/src/mesa/drivers/dri/common/xmlpool/options.h b/src/mesa/drivers/dri/common/xmlpool/options.h diff --git a/src/mesa/drivers/dri/common/xmlpool/sv.po b/src/mesa/drivers/dri/common/xmlpool/sv.po diff --git a/src/mesa/drivers/dri/common/xmlpool/t_options.h b/src/mesa/drivers/dri/common/xmlpool/t_options.h diff --git a/src/mesa/drivers/dri/fb/Doxyfile b/src/mesa/drivers/dri/fb/Doxyfile diff --git a/src/mesa/drivers/dri/fb/Makefile b/src/mesa/drivers/dri/fb/Makefile diff --git a/src/mesa/drivers/dri/fb/fb_dri.c b/src/mesa/drivers/dri/fb/fb_dri.c diff --git a/src/mesa/drivers/dri/fb/fb_egl.c b/src/mesa/drivers/dri/fb/fb_egl.c diff --git a/src/mesa/drivers/dri/ffb/Makefile b/src/mesa/drivers/dri/ffb/Makefile diff --git a/src/mesa/drivers/dri/ffb/ffb_bitmap.c b/src/mesa/drivers/dri/ffb/ffb_bitmap.c diff --git a/src/mesa/drivers/dri/ffb/ffb_bitmap.h b/src/mesa/drivers/dri/ffb/ffb_bitmap.h diff --git a/src/mesa/drivers/dri/ffb/ffb_clear.c b/src/mesa/drivers/dri/ffb/ffb_clear.c diff --git a/src/mesa/drivers/dri/ffb/ffb_clear.h b/src/mesa/drivers/dri/ffb/ffb_clear.h diff --git a/src/mesa/drivers/dri/ffb/ffb_context.h b/src/mesa/drivers/dri/ffb/ffb_context.h diff --git a/src/mesa/drivers/dri/ffb/ffb_dd.c b/src/mesa/drivers/dri/ffb/ffb_dd.c diff --git a/src/mesa/drivers/dri/ffb/ffb_dd.h b/src/mesa/drivers/dri/ffb/ffb_dd.h diff --git a/src/mesa/drivers/dri/ffb/ffb_depth.c b/src/mesa/drivers/dri/ffb/ffb_depth.c diff --git a/src/mesa/drivers/dri/ffb/ffb_depth.h b/src/mesa/drivers/dri/ffb/ffb_depth.h diff --git a/src/mesa/drivers/dri/ffb/ffb_fifo.h b/src/mesa/drivers/dri/ffb/ffb_fifo.h diff --git a/src/mesa/drivers/dri/ffb/ffb_fog.c b/src/mesa/drivers/dri/ffb/ffb_fog.c diff --git a/src/mesa/drivers/dri/ffb/ffb_lines.c b/src/mesa/drivers/dri/ffb/ffb_lines.c diff --git a/src/mesa/drivers/dri/ffb/ffb_lines.h b/src/mesa/drivers/dri/ffb/ffb_lines.h diff --git a/src/mesa/drivers/dri/ffb/ffb_linetmp.h b/src/mesa/drivers/dri/ffb/ffb_linetmp.h diff --git a/src/mesa/drivers/dri/ffb/ffb_lock.h b/src/mesa/drivers/dri/ffb/ffb_lock.h diff --git a/src/mesa/drivers/dri/ffb/ffb_points.c b/src/mesa/drivers/dri/ffb/ffb_points.c diff --git a/src/mesa/drivers/dri/ffb/ffb_points.h b/src/mesa/drivers/dri/ffb/ffb_points.h diff --git a/src/mesa/drivers/dri/ffb/ffb_pointtmp.h b/src/mesa/drivers/dri/ffb/ffb_pointtmp.h diff --git a/src/mesa/drivers/dri/ffb/ffb_rendertmp.h b/src/mesa/drivers/dri/ffb/ffb_rendertmp.h diff --git a/src/mesa/drivers/dri/ffb/ffb_span.c b/src/mesa/drivers/dri/ffb/ffb_span.c diff --git a/src/mesa/drivers/dri/ffb/ffb_span.h b/src/mesa/drivers/dri/ffb/ffb_span.h diff --git a/src/mesa/drivers/dri/ffb/ffb_state.c b/src/mesa/drivers/dri/ffb/ffb_state.c diff --git a/src/mesa/drivers/dri/ffb/ffb_state.h b/src/mesa/drivers/dri/ffb/ffb_state.h diff --git a/src/mesa/drivers/dri/ffb/ffb_stencil.c b/src/mesa/drivers/dri/ffb/ffb_stencil.c diff --git a/src/mesa/drivers/dri/ffb/ffb_stencil.h b/src/mesa/drivers/dri/ffb/ffb_stencil.h diff --git a/src/mesa/drivers/dri/ffb/ffb_tex.c b/src/mesa/drivers/dri/ffb/ffb_tex.c diff --git a/src/mesa/drivers/dri/ffb/ffb_tex.h b/src/mesa/drivers/dri/ffb/ffb_tex.h diff --git a/src/mesa/drivers/dri/ffb/ffb_tris.c b/src/mesa/drivers/dri/ffb/ffb_tris.c diff --git a/src/mesa/drivers/dri/ffb/ffb_tris.h b/src/mesa/drivers/dri/ffb/ffb_tris.h diff --git a/src/mesa/drivers/dri/ffb/ffb_tritmp.h b/src/mesa/drivers/dri/ffb/ffb_tritmp.h diff --git a/src/mesa/drivers/dri/ffb/ffb_vb.c b/src/mesa/drivers/dri/ffb/ffb_vb.c diff --git a/src/mesa/drivers/dri/ffb/ffb_vb.h b/src/mesa/drivers/dri/ffb/ffb_vb.h diff --git a/src/mesa/drivers/dri/ffb/ffb_vbtmp.h b/src/mesa/drivers/dri/ffb/ffb_vbtmp.h diff --git a/src/mesa/drivers/dri/ffb/ffb_vtxfmt.c b/src/mesa/drivers/dri/ffb/ffb_vtxfmt.c diff --git a/src/mesa/drivers/dri/ffb/ffb_vtxfmt.h b/src/mesa/drivers/dri/ffb/ffb_vtxfmt.h diff --git a/src/mesa/drivers/dri/ffb/ffb_xmesa.c b/src/mesa/drivers/dri/ffb/ffb_xmesa.c index 4c5323d..e6c1004 100644 --- a/src/mesa/drivers/dri/ffb/ffb_xmesa.c +++ b/src/mesa/drivers/dri/ffb/ffb_xmesa.c @@ -616,6 +616,7 @@ static const struct __DriverAPIRec ffbAPI = { .UnbindContext = ffbUnbindContext, .GetSwapInfo = NULL, .GetMSC = NULL, + .GetDrawableMSC = NULL, .WaitForMSC = NULL, .WaitForSBC = NULL, .SwapBuffersMSC = NULL diff --git a/src/mesa/drivers/dri/ffb/ffb_xmesa.h b/src/mesa/drivers/dri/ffb/ffb_xmesa.h diff --git a/src/mesa/drivers/dri/ffb/server/ffb_dac.h b/src/mesa/drivers/dri/ffb/server/ffb_dac.h diff --git a/src/mesa/drivers/dri/ffb/server/ffb_drishare.h b/src/mesa/drivers/dri/ffb/server/ffb_drishare.h diff --git a/src/mesa/drivers/dri/ffb/server/ffb_regs.h b/src/mesa/drivers/dri/ffb/server/ffb_regs.h diff --git a/src/mesa/drivers/dri/gamma/Makefile b/src/mesa/drivers/dri/gamma/Makefile diff --git a/src/mesa/drivers/dri/gamma/gamma_client.h b/src/mesa/drivers/dri/gamma/gamma_client.h diff --git a/src/mesa/drivers/dri/gamma/gamma_context.c b/src/mesa/drivers/dri/gamma/gamma_context.c diff --git a/src/mesa/drivers/dri/gamma/gamma_context.h b/src/mesa/drivers/dri/gamma/gamma_context.h diff --git a/src/mesa/drivers/dri/gamma/gamma_dd.c b/src/mesa/drivers/dri/gamma/gamma_dd.c diff --git a/src/mesa/drivers/dri/gamma/gamma_inithw.c b/src/mesa/drivers/dri/gamma/gamma_inithw.c diff --git a/src/mesa/drivers/dri/gamma/gamma_lock.c b/src/mesa/drivers/dri/gamma/gamma_lock.c diff --git a/src/mesa/drivers/dri/gamma/gamma_lock.h b/src/mesa/drivers/dri/gamma/gamma_lock.h diff --git a/src/mesa/drivers/dri/gamma/gamma_macros.h b/src/mesa/drivers/dri/gamma/gamma_macros.h diff --git a/src/mesa/drivers/dri/gamma/gamma_regs.h b/src/mesa/drivers/dri/gamma/gamma_regs.h diff --git a/src/mesa/drivers/dri/gamma/gamma_render.c b/src/mesa/drivers/dri/gamma/gamma_render.c diff --git a/src/mesa/drivers/dri/gamma/gamma_screen.c b/src/mesa/drivers/dri/gamma/gamma_screen.c diff --git a/src/mesa/drivers/dri/gamma/gamma_screen.h b/src/mesa/drivers/dri/gamma/gamma_screen.h diff --git a/src/mesa/drivers/dri/gamma/gamma_span.c b/src/mesa/drivers/dri/gamma/gamma_span.c diff --git a/src/mesa/drivers/dri/gamma/gamma_state.c b/src/mesa/drivers/dri/gamma/gamma_state.c diff --git a/src/mesa/drivers/dri/gamma/gamma_tex.c b/src/mesa/drivers/dri/gamma/gamma_tex.c diff --git a/src/mesa/drivers/dri/gamma/gamma_texmem.c b/src/mesa/drivers/dri/gamma/gamma_texmem.c diff --git a/src/mesa/drivers/dri/gamma/gamma_texstate.c b/src/mesa/drivers/dri/gamma/gamma_texstate.c diff --git a/src/mesa/drivers/dri/gamma/gamma_tris.c b/src/mesa/drivers/dri/gamma/gamma_tris.c diff --git a/src/mesa/drivers/dri/gamma/gamma_tris.h b/src/mesa/drivers/dri/gamma/gamma_tris.h diff --git a/src/mesa/drivers/dri/gamma/gamma_tritmp.h b/src/mesa/drivers/dri/gamma/gamma_tritmp.h diff --git a/src/mesa/drivers/dri/gamma/gamma_vb.c b/src/mesa/drivers/dri/gamma/gamma_vb.c diff --git a/src/mesa/drivers/dri/gamma/gamma_vb.h b/src/mesa/drivers/dri/gamma/gamma_vb.h diff --git a/src/mesa/drivers/dri/gamma/gamma_xmesa.c b/src/mesa/drivers/dri/gamma/gamma_xmesa.c diff --git a/src/mesa/drivers/dri/gamma/server/glint_common.h b/src/mesa/drivers/dri/gamma/server/glint_common.h diff --git a/src/mesa/drivers/dri/gamma/server/glint_dri.h b/src/mesa/drivers/dri/gamma/server/glint_dri.h diff --git a/src/mesa/drivers/dri/glcore/Makefile b/src/mesa/drivers/dri/glcore/Makefile diff --git a/src/mesa/drivers/dri/glcore/glcore_driver.c b/src/mesa/drivers/dri/glcore/glcore_driver.c diff --git a/src/mesa/drivers/dri/i810/Makefile b/src/mesa/drivers/dri/i810/Makefile diff --git a/src/mesa/drivers/dri/i810/i810_3d_reg.h b/src/mesa/drivers/dri/i810/i810_3d_reg.h diff --git a/src/mesa/drivers/dri/i810/i810context.c b/src/mesa/drivers/dri/i810/i810context.c diff --git a/src/mesa/drivers/dri/i810/i810context.h b/src/mesa/drivers/dri/i810/i810context.h diff --git a/src/mesa/drivers/dri/i810/i810ioctl.c b/src/mesa/drivers/dri/i810/i810ioctl.c diff --git a/src/mesa/drivers/dri/i810/i810ioctl.h b/src/mesa/drivers/dri/i810/i810ioctl.h diff --git a/src/mesa/drivers/dri/i810/i810render.c b/src/mesa/drivers/dri/i810/i810render.c diff --git a/src/mesa/drivers/dri/i810/i810screen.c b/src/mesa/drivers/dri/i810/i810screen.c index f8cf050..2f79f9e 100644 --- a/src/mesa/drivers/dri/i810/i810screen.c +++ b/src/mesa/drivers/dri/i810/i810screen.c @@ -414,6 +414,7 @@ static const struct __DriverAPIRec i810API = { .UnbindContext = i810UnbindContext, .GetSwapInfo = NULL, .GetMSC = NULL, + .GetDrawableMSC = NULL, .WaitForMSC = NULL, .WaitForSBC = NULL, .SwapBuffersMSC = NULL diff --git a/src/mesa/drivers/dri/i810/i810screen.h b/src/mesa/drivers/dri/i810/i810screen.h diff --git a/src/mesa/drivers/dri/i810/i810span.c b/src/mesa/drivers/dri/i810/i810span.c diff --git a/src/mesa/drivers/dri/i810/i810span.h b/src/mesa/drivers/dri/i810/i810span.h diff --git a/src/mesa/drivers/dri/i810/i810state.c b/src/mesa/drivers/dri/i810/i810state.c diff --git a/src/mesa/drivers/dri/i810/i810state.h b/src/mesa/drivers/dri/i810/i810state.h diff --git a/src/mesa/drivers/dri/i810/i810tex.c b/src/mesa/drivers/dri/i810/i810tex.c diff --git a/src/mesa/drivers/dri/i810/i810tex.h b/src/mesa/drivers/dri/i810/i810tex.h diff --git a/src/mesa/drivers/dri/i810/i810texmem.c b/src/mesa/drivers/dri/i810/i810texmem.c diff --git a/src/mesa/drivers/dri/i810/i810texstate.c b/src/mesa/drivers/dri/i810/i810texstate.c diff --git a/src/mesa/drivers/dri/i810/i810tris.c b/src/mesa/drivers/dri/i810/i810tris.c diff --git a/src/mesa/drivers/dri/i810/i810tris.h b/src/mesa/drivers/dri/i810/i810tris.h diff --git a/src/mesa/drivers/dri/i810/i810vb.c b/src/mesa/drivers/dri/i810/i810vb.c diff --git a/src/mesa/drivers/dri/i810/i810vb.h b/src/mesa/drivers/dri/i810/i810vb.h diff --git a/src/mesa/drivers/dri/i810/server/i810_common.h b/src/mesa/drivers/dri/i810/server/i810_common.h diff --git a/src/mesa/drivers/dri/i810/server/i810_dri.c b/src/mesa/drivers/dri/i810/server/i810_dri.c diff --git a/src/mesa/drivers/dri/i810/server/i810_dri.h b/src/mesa/drivers/dri/i810/server/i810_dri.h diff --git a/src/mesa/drivers/dri/i810/server/i810_reg.h b/src/mesa/drivers/dri/i810/server/i810_reg.h diff --git a/src/mesa/drivers/dri/i915/Makefile b/src/mesa/drivers/dri/i915/Makefile diff --git a/src/mesa/drivers/dri/i915/i830_context.c b/src/mesa/drivers/dri/i915/i830_context.c diff --git a/src/mesa/drivers/dri/i915/i830_context.h b/src/mesa/drivers/dri/i915/i830_context.h diff --git a/src/mesa/drivers/dri/i915/i830_metaops.c b/src/mesa/drivers/dri/i915/i830_metaops.c diff --git a/src/mesa/drivers/dri/i915/i830_reg.h b/src/mesa/drivers/dri/i915/i830_reg.h diff --git a/src/mesa/drivers/dri/i915/i830_state.c b/src/mesa/drivers/dri/i915/i830_state.c diff --git a/src/mesa/drivers/dri/i915/i830_tex.c b/src/mesa/drivers/dri/i915/i830_tex.c diff --git a/src/mesa/drivers/dri/i915/i830_texblend.c b/src/mesa/drivers/dri/i915/i830_texblend.c diff --git a/src/mesa/drivers/dri/i915/i830_texstate.c b/src/mesa/drivers/dri/i915/i830_texstate.c diff --git a/src/mesa/drivers/dri/i915/i830_vtbl.c b/src/mesa/drivers/dri/i915/i830_vtbl.c diff --git a/src/mesa/drivers/dri/i915/i915_context.c b/src/mesa/drivers/dri/i915/i915_context.c diff --git a/src/mesa/drivers/dri/i915/i915_context.h b/src/mesa/drivers/dri/i915/i915_context.h diff --git a/src/mesa/drivers/dri/i915/i915_debug.c b/src/mesa/drivers/dri/i915/i915_debug.c diff --git a/src/mesa/drivers/dri/i915/i915_fragprog.c b/src/mesa/drivers/dri/i915/i915_fragprog.c diff --git a/src/mesa/drivers/dri/i915/i915_metaops.c b/src/mesa/drivers/dri/i915/i915_metaops.c diff --git a/src/mesa/drivers/dri/i915/i915_program.c b/src/mesa/drivers/dri/i915/i915_program.c diff --git a/src/mesa/drivers/dri/i915/i915_program.h b/src/mesa/drivers/dri/i915/i915_program.h diff --git a/src/mesa/drivers/dri/i915/i915_reg.h b/src/mesa/drivers/dri/i915/i915_reg.h diff --git a/src/mesa/drivers/dri/i915/i915_state.c b/src/mesa/drivers/dri/i915/i915_state.c diff --git a/src/mesa/drivers/dri/i915/i915_tex.c b/src/mesa/drivers/dri/i915/i915_tex.c diff --git a/src/mesa/drivers/dri/i915/i915_texprog.c b/src/mesa/drivers/dri/i915/i915_texprog.c diff --git a/src/mesa/drivers/dri/i915/i915_texstate.c b/src/mesa/drivers/dri/i915/i915_texstate.c diff --git a/src/mesa/drivers/dri/i915/i915_vtbl.c b/src/mesa/drivers/dri/i915/i915_vtbl.c diff --git a/src/mesa/drivers/dri/i915/intel_batchbuffer.c b/src/mesa/drivers/dri/i915/intel_batchbuffer.c index 803b41b..afc5746 100644 --- a/src/mesa/drivers/dri/i915/intel_batchbuffer.c +++ b/src/mesa/drivers/dri/i915/intel_batchbuffer.c @@ -364,7 +364,7 @@ static void intelWaitForFrameCompletion( intelContextPtr intel ) /* * Copy the back buffer to the front buffer. */ -void intelCopyBuffer( const __DRIdrawablePrivate *dPriv, +void intelCopyBuffer( __DRIdrawablePrivate *dPriv, const drm_clip_rect_t *rect) { intelContextPtr intel; @@ -386,30 +386,30 @@ void intelCopyBuffer( const __DRIdrawablePrivate *dPriv, intelScreen = intel->intelScreen; if (!rect && !intel->swap_scheduled && intelScreen->drmMinor >= 6 && - !(intel->vblank_flags & VBLANK_FLAG_NO_IRQ) && + !(dPriv->vblFlags & VBLANK_FLAG_NO_IRQ) && intelScreen->current_rotation == 0) { - unsigned int interval = driGetVBlankInterval(dPriv, intel->vblank_flags); + unsigned int interval = driGetVBlankInterval(dPriv, dPriv->vblFlags); unsigned int target; drm_i915_vblank_swap_t swap; swap.drawable = dPriv->hHWDrawable; swap.seqtype = DRM_VBLANK_ABSOLUTE; - target = swap.sequence = intel->vbl_seq + interval; + target = swap.sequence = dPriv->vblSeq + interval; - if (intel->vblank_flags & VBLANK_FLAG_SYNC) { + if (dPriv->vblFlags & VBLANK_FLAG_SYNC) { swap.seqtype |= DRM_VBLANK_NEXTONMISS; } else if (interval == 0) { goto noschedule; } - if ( intel->vblank_flags & VBLANK_FLAG_SECONDARY ) { + if ( dPriv->vblFlags & VBLANK_FLAG_SECONDARY ) { swap.seqtype |= DRM_VBLANK_SECONDARY; } if (!drmCommandWriteRead(intel->driFd, DRM_I915_VBLANK_SWAP, &swap, sizeof(swap))) { intel->swap_scheduled = 1; - intel->vbl_seq = swap.sequence; + dPriv->vblSeq = swap.sequence; swap.sequence -= target; missed_target = swap.sequence > 0 && swap.sequence <= (1 << 23); } @@ -425,7 +425,7 @@ noschedule: if (!rect) { UNLOCK_HARDWARE( intel ); - driWaitForVBlank( dPriv, &intel->vbl_seq, intel->vblank_flags, & missed_target ); + driWaitForVBlank( dPriv, &dPriv->vblSeq, dPriv->vblFlags, & missed_target ); LOCK_HARDWARE( intel ); } { diff --git a/src/mesa/drivers/dri/i915/intel_batchbuffer.h b/src/mesa/drivers/dri/i915/intel_batchbuffer.h index 577d071..96e9706 100644 --- a/src/mesa/drivers/dri/i915/intel_batchbuffer.h +++ b/src/mesa/drivers/dri/i915/intel_batchbuffer.h @@ -76,7 +76,7 @@ extern void intelRestartInlinePrimitive( intelContextPtr intel ); extern GLuint *intelEmitInlinePrimitiveLocked(intelContextPtr intel, int primitive, int dwords, int vertex_size); -extern void intelCopyBuffer( const __DRIdrawablePrivate *dpriv, +extern void intelCopyBuffer( __DRIdrawablePrivate *dpriv, const drm_clip_rect_t *rect); extern void intelClearWithBlit(GLcontext *ctx, GLbitfield mask, GLboolean all, GLint cx1, GLint cy1, GLint cw, GLint ch); diff --git a/src/mesa/drivers/dri/i915/intel_context.c b/src/mesa/drivers/dri/i915/intel_context.c index 07bee4e..2056fe9 100644 --- a/src/mesa/drivers/dri/i915/intel_context.c +++ b/src/mesa/drivers/dri/i915/intel_context.c @@ -273,6 +273,7 @@ GLboolean intelInitContext( intelContextPtr intel, GLcontext *ctx = &intel->ctx; GLcontext *shareCtx = (GLcontext *) sharedContextPrivate; __DRIscreenPrivate *sPriv = driContextPriv->driScreenPriv; + __DRIdrawablePrivate *dPriv = driContextPriv->driDrawablePriv; intelScreenPrivate *intelScreen = (intelScreenPrivate *)sPriv->private; drmI830Sarea *saPriv = (drmI830Sarea *) (((GLubyte *)sPriv->pSAREA)+intelScreen->sarea_priv_offset); @@ -373,7 +374,7 @@ GLboolean intelInitContext( intelContextPtr intel, intel->do_usleeps = (fthrottle_mode == DRI_CONF_FTHROTTLE_USLEEPS); - intel->vblank_flags = (intel->intelScreen->irq_active != 0) + dPriv->vblFlags = (intel->intelScreen->irq_active != 0) ? driGetDefaultVBlankFlags(&intel->optionCache) : VBLANK_FLAG_NO_IRQ; (*dri_interface->getUST)(&intel->swap_ust); @@ -574,20 +575,20 @@ void intelWindowMoved( intelContextPtr intel ) .y2 = sarea->planeB_y + sarea->planeB_h }; GLint areaA = driIntersectArea( drw_rect, planeA_rect ); GLint areaB = driIntersectArea( drw_rect, planeB_rect ); - GLuint flags = intel->vblank_flags; + GLuint flags = dPriv->vblFlags; if (areaB > areaA || (areaA == areaB && areaB > 0)) { - flags = intel->vblank_flags | VBLANK_FLAG_SECONDARY; + flags = dPriv->vblFlags | VBLANK_FLAG_SECONDARY; } else { - flags = intel->vblank_flags & ~VBLANK_FLAG_SECONDARY; + flags = dPriv->vblFlags & ~VBLANK_FLAG_SECONDARY; } - if (flags != intel->vblank_flags) { - intel->vblank_flags = flags; - driGetCurrentVBlank(dPriv, intel->vblank_flags, &intel->vbl_seq); + if (flags != dPriv->vblFlags) { + dPriv->vblFlags = flags; + driGetCurrentVBlank(dPriv, dPriv->vblFlags, &dPriv->vblSeq); } } else { - intel->vblank_flags &= ~VBLANK_FLAG_SECONDARY; + dPriv->vblFlags &= ~VBLANK_FLAG_SECONDARY; } ctx->Driver.Scissor( ctx, ctx->Scissor.X, ctx->Scissor.Y, @@ -614,8 +615,7 @@ GLboolean intelMakeCurrent(__DRIcontextPrivate *driContextPriv, if ( intel->driDrawable != driDrawPriv ) { /* Shouldn't the readbuffer be stored also? */ - driDrawableInitVBlank( driDrawPriv, intel->vblank_flags, - &intel->vbl_seq ); + driDrawableInitVBlank( driDrawPriv ); intel->driDrawable = driDrawPriv; intelWindowMoved( intel ); diff --git a/src/mesa/drivers/dri/i915/intel_context.h b/src/mesa/drivers/dri/i915/intel_context.h index 914533d..c7bbd49 100644 --- a/src/mesa/drivers/dri/i915/intel_context.h +++ b/src/mesa/drivers/dri/i915/intel_context.h @@ -253,11 +253,6 @@ struct intel_context */ driOptionCache optionCache; - /* VBI - */ - GLuint vbl_seq; - GLuint vblank_flags; - int64_t swap_ust; int64_t swap_missed_ust; @@ -322,17 +317,18 @@ extern int prevLockLine; */ #define LOCK_HARDWARE( intel ) \ do { \ + __DRIdrawablePrivate *dPriv = intel->driDrawable; \ char __ret=0; \ DEBUG_CHECK_LOCK(); \ assert(!(intel)->locked); \ if ((intel)->swap_scheduled) { \ drmVBlank vbl; \ vbl.request.type = DRM_VBLANK_ABSOLUTE; \ - if ((intel)->vblank_flags & \ + if (dPriv->vblFlags & \ VBLANK_FLAG_SECONDARY) { \ vbl.request.type |= DRM_VBLANK_SECONDARY; \ } \ - vbl.request.sequence = (intel)->vbl_seq; \ + vbl.request.sequence = dPriv->vblSeq; \ drmWaitVBlank((intel)->driFd, &vbl); \ (intel)->swap_scheduled = 0; \ } \ diff --git a/src/mesa/drivers/dri/i915/intel_ioctl.c b/src/mesa/drivers/dri/i915/intel_ioctl.c diff --git a/src/mesa/drivers/dri/i915/intel_ioctl.h b/src/mesa/drivers/dri/i915/intel_ioctl.h diff --git a/src/mesa/drivers/dri/i915/intel_pixel.c b/src/mesa/drivers/dri/i915/intel_pixel.c diff --git a/src/mesa/drivers/dri/i915/intel_reg.h b/src/mesa/drivers/dri/i915/intel_reg.h diff --git a/src/mesa/drivers/dri/i915/intel_render.c b/src/mesa/drivers/dri/i915/intel_render.c diff --git a/src/mesa/drivers/dri/i915/intel_rotate.c b/src/mesa/drivers/dri/i915/intel_rotate.c diff --git a/src/mesa/drivers/dri/i915/intel_rotate.h b/src/mesa/drivers/dri/i915/intel_rotate.h diff --git a/src/mesa/drivers/dri/i915/intel_screen.c b/src/mesa/drivers/dri/i915/intel_screen.c index ca8610b..062fa67 100644 --- a/src/mesa/drivers/dri/i915/intel_screen.c +++ b/src/mesa/drivers/dri/i915/intel_screen.c @@ -540,6 +540,7 @@ static const struct __DriverAPIRec intelAPI = { .UnbindContext = intelUnbindContext, .GetSwapInfo = intelGetSwapInfo, .GetMSC = driGetMSC32, + .GetDrawableMSC = driDrawableGetMSC32, .WaitForMSC = driWaitForMSC32, .WaitForSBC = NULL, .SwapBuffersMSC = NULL, diff --git a/src/mesa/drivers/dri/i915/intel_screen.h b/src/mesa/drivers/dri/i915/intel_screen.h diff --git a/src/mesa/drivers/dri/i915/intel_span.c b/src/mesa/drivers/dri/i915/intel_span.c diff --git a/src/mesa/drivers/dri/i915/intel_span.h b/src/mesa/drivers/dri/i915/intel_span.h diff --git a/src/mesa/drivers/dri/i915/intel_state.c b/src/mesa/drivers/dri/i915/intel_state.c diff --git a/src/mesa/drivers/dri/i915/intel_tex.c b/src/mesa/drivers/dri/i915/intel_tex.c diff --git a/src/mesa/drivers/dri/i915/intel_tex.h b/src/mesa/drivers/dri/i915/intel_tex.h diff --git a/src/mesa/drivers/dri/i915/intel_texmem.c b/src/mesa/drivers/dri/i915/intel_texmem.c diff --git a/src/mesa/drivers/dri/i915/intel_tris.c b/src/mesa/drivers/dri/i915/intel_tris.c diff --git a/src/mesa/drivers/dri/i915/intel_tris.h b/src/mesa/drivers/dri/i915/intel_tris.h diff --git a/src/mesa/drivers/dri/i915/server/i830_common.h b/src/mesa/drivers/dri/i915/server/i830_common.h diff --git a/src/mesa/drivers/dri/i915/server/i830_dri.h b/src/mesa/drivers/dri/i915/server/i830_dri.h diff --git a/src/mesa/drivers/dri/i915/server/intel.h b/src/mesa/drivers/dri/i915/server/intel.h diff --git a/src/mesa/drivers/dri/i915/server/intel_dri.c b/src/mesa/drivers/dri/i915/server/intel_dri.c diff --git a/src/mesa/drivers/dri/i915tex/Makefile b/src/mesa/drivers/dri/i915tex/Makefile diff --git a/src/mesa/drivers/dri/i915tex/i830_context.c b/src/mesa/drivers/dri/i915tex/i830_context.c diff --git a/src/mesa/drivers/dri/i915tex/i830_context.h b/src/mesa/drivers/dri/i915tex/i830_context.h diff --git a/src/mesa/drivers/dri/i915tex/i830_metaops.c b/src/mesa/drivers/dri/i915tex/i830_metaops.c diff --git a/src/mesa/drivers/dri/i915tex/i830_reg.h b/src/mesa/drivers/dri/i915tex/i830_reg.h diff --git a/src/mesa/drivers/dri/i915tex/i830_state.c b/src/mesa/drivers/dri/i915tex/i830_state.c diff --git a/src/mesa/drivers/dri/i915tex/i830_tex.c b/src/mesa/drivers/dri/i915tex/i830_tex.c diff --git a/src/mesa/drivers/dri/i915tex/i830_texblend.c b/src/mesa/drivers/dri/i915tex/i830_texblend.c diff --git a/src/mesa/drivers/dri/i915tex/i830_texstate.c b/src/mesa/drivers/dri/i915tex/i830_texstate.c diff --git a/src/mesa/drivers/dri/i915tex/i830_vtbl.c b/src/mesa/drivers/dri/i915tex/i830_vtbl.c diff --git a/src/mesa/drivers/dri/i915tex/i915_context.c b/src/mesa/drivers/dri/i915tex/i915_context.c diff --git a/src/mesa/drivers/dri/i915tex/i915_context.h b/src/mesa/drivers/dri/i915tex/i915_context.h diff --git a/src/mesa/drivers/dri/i915tex/i915_debug.c b/src/mesa/drivers/dri/i915tex/i915_debug.c diff --git a/src/mesa/drivers/dri/i915tex/i915_debug.h b/src/mesa/drivers/dri/i915tex/i915_debug.h diff --git a/src/mesa/drivers/dri/i915tex/i915_debug_fp.c b/src/mesa/drivers/dri/i915tex/i915_debug_fp.c diff --git a/src/mesa/drivers/dri/i915tex/i915_fragprog.c b/src/mesa/drivers/dri/i915tex/i915_fragprog.c diff --git a/src/mesa/drivers/dri/i915tex/i915_metaops.c b/src/mesa/drivers/dri/i915tex/i915_metaops.c diff --git a/src/mesa/drivers/dri/i915tex/i915_program.c b/src/mesa/drivers/dri/i915tex/i915_program.c diff --git a/src/mesa/drivers/dri/i915tex/i915_program.h b/src/mesa/drivers/dri/i915tex/i915_program.h diff --git a/src/mesa/drivers/dri/i915tex/i915_reg.h b/src/mesa/drivers/dri/i915tex/i915_reg.h diff --git a/src/mesa/drivers/dri/i915tex/i915_state.c b/src/mesa/drivers/dri/i915tex/i915_state.c diff --git a/src/mesa/drivers/dri/i915tex/i915_tex.c b/src/mesa/drivers/dri/i915tex/i915_tex.c diff --git a/src/mesa/drivers/dri/i915tex/i915_tex_layout.c b/src/mesa/drivers/dri/i915tex/i915_tex_layout.c diff --git a/src/mesa/drivers/dri/i915tex/i915_texstate.c b/src/mesa/drivers/dri/i915tex/i915_texstate.c diff --git a/src/mesa/drivers/dri/i915tex/i915_vtbl.c b/src/mesa/drivers/dri/i915tex/i915_vtbl.c diff --git a/src/mesa/drivers/dri/i915tex/intel_batchbuffer.c b/src/mesa/drivers/dri/i915tex/intel_batchbuffer.c diff --git a/src/mesa/drivers/dri/i915tex/intel_batchbuffer.h b/src/mesa/drivers/dri/i915tex/intel_batchbuffer.h diff --git a/src/mesa/drivers/dri/i915tex/intel_batchpool.c b/src/mesa/drivers/dri/i915tex/intel_batchpool.c diff --git a/src/mesa/drivers/dri/i915tex/intel_blit.c b/src/mesa/drivers/dri/i915tex/intel_blit.c diff --git a/src/mesa/drivers/dri/i915tex/intel_blit.h b/src/mesa/drivers/dri/i915tex/intel_blit.h diff --git a/src/mesa/drivers/dri/i915tex/intel_buffer_objects.c b/src/mesa/drivers/dri/i915tex/intel_buffer_objects.c diff --git a/src/mesa/drivers/dri/i915tex/intel_buffer_objects.h b/src/mesa/drivers/dri/i915tex/intel_buffer_objects.h diff --git a/src/mesa/drivers/dri/i915tex/intel_buffers.c b/src/mesa/drivers/dri/i915tex/intel_buffers.c index cb151ab..eeaafbc 100644 --- a/src/mesa/drivers/dri/i915tex/intel_buffers.c +++ b/src/mesa/drivers/dri/i915tex/intel_buffers.c @@ -243,7 +243,7 @@ intelWindowMoved(struct intel_context *intel) .y2 = sarea->planeB_y + sarea->planeB_h }; GLint areaA = driIntersectArea( drw_rect, planeA_rect ); GLint areaB = driIntersectArea( drw_rect, planeB_rect ); - GLuint flags = intel_fb->vblank_flags; + GLuint flags = dPriv->vblFlags; GLboolean pf_active; GLint pf_planes; @@ -311,19 +311,19 @@ intelWindowMoved(struct intel_context *intel) /* Update vblank info */ if (areaB > areaA || (areaA == areaB && areaB > 0)) { - flags = intel_fb->vblank_flags | VBLANK_FLAG_SECONDARY; + flags = dPriv->vblFlags | VBLANK_FLAG_SECONDARY; } else { - flags = intel_fb->vblank_flags & ~VBLANK_FLAG_SECONDARY; + flags = dPriv->vblFlags & ~VBLANK_FLAG_SECONDARY; } - if (flags != intel_fb->vblank_flags && intel_fb->vblank_flags && - !(intel_fb->vblank_flags & VBLANK_FLAG_NO_IRQ)) { + if (flags != dPriv->vblFlags && dPriv->vblFlags && + !(dPriv->vblFlags & VBLANK_FLAG_NO_IRQ)) { drmVBlank vbl; int i; vbl.request.type = DRM_VBLANK_ABSOLUTE; - if ( intel_fb->vblank_flags & VBLANK_FLAG_SECONDARY ) { + if ( dPriv->vblFlags & VBLANK_FLAG_SECONDARY ) { vbl.request.type |= DRM_VBLANK_SECONDARY; } @@ -337,9 +337,9 @@ intelWindowMoved(struct intel_context *intel) drmWaitVBlank(intel->driFd, &vbl); } - intel_fb->vblank_flags = flags; - driGetCurrentVBlank(dPriv, intel_fb->vblank_flags, &intel_fb->vbl_seq); - intel_fb->vbl_waited = intel_fb->vbl_seq; + dPriv->vblFlags = flags; + driGetCurrentVBlank(dPriv, dPriv->vblFlags, &dPriv->vblSeq); + intel_fb->vbl_waited = dPriv->vblSeq; for (i = 0; i < intel_fb->pf_num_pages; i++) { if (intel_fb->color_rb[i]) @@ -347,7 +347,7 @@ intelWindowMoved(struct intel_context *intel) } } } else { - intel_fb->vblank_flags &= ~VBLANK_FLAG_SECONDARY; + dPriv->vblFlags &= ~VBLANK_FLAG_SECONDARY; } /* Update Mesa's notion of window size */ @@ -820,10 +820,10 @@ intelSwapBuffers(__DRIdrawablePrivate * dPriv) */ static GLboolean -intelScheduleSwap(const __DRIdrawablePrivate * dPriv, GLboolean *missed_target) +intelScheduleSwap(__DRIdrawablePrivate * dPriv, GLboolean *missed_target) { struct intel_framebuffer *intel_fb = dPriv->driverPrivate; - unsigned int interval = driGetVBlankInterval(dPriv, intel_fb->vblank_flags); + unsigned int interval = driGetVBlankInterval(dPriv, dPriv->vblFlags); struct intel_context *intel = intelScreenContext(dPriv->driScreenPriv->private); const intelScreenPrivate *intelScreen = intel->intelScreen; @@ -831,24 +831,24 @@ intelScheduleSwap(const __DRIdrawablePrivate * dPriv, GLboolean *missed_target) drm_i915_vblank_swap_t swap; GLboolean ret; - if (!intel_fb->vblank_flags || - (intel_fb->vblank_flags & VBLANK_FLAG_NO_IRQ) || + if (!dPriv->vblFlags || + (dPriv->vblFlags & VBLANK_FLAG_NO_IRQ) || intelScreen->current_rotation != 0 || intelScreen->drmMinor < (intel_fb->pf_active ? 9 : 6)) return GL_FALSE; swap.seqtype = DRM_VBLANK_ABSOLUTE; - if (intel_fb->vblank_flags & VBLANK_FLAG_SYNC) { + if (dPriv->vblFlags & VBLANK_FLAG_SYNC) { swap.seqtype |= DRM_VBLANK_NEXTONMISS; } else if (interval == 0) { return GL_FALSE; } swap.drawable = dPriv->hHWDrawable; - target = swap.sequence = intel_fb->vbl_seq + interval; + target = swap.sequence = dPriv->vblSeq + interval; - if ( intel_fb->vblank_flags & VBLANK_FLAG_SECONDARY ) { + if ( dPriv->vblFlags & VBLANK_FLAG_SECONDARY ) { swap.seqtype |= DRM_VBLANK_SECONDARY; } @@ -866,14 +866,14 @@ intelScheduleSwap(const __DRIdrawablePrivate * dPriv, GLboolean *missed_target) if (!drmCommandWriteRead(intel->driFd, DRM_I915_VBLANK_SWAP, &swap, sizeof(swap))) { - intel_fb->vbl_seq = swap.sequence; + dPriv->vblSeq = swap.sequence; swap.sequence -= target; *missed_target = swap.sequence > 0 && swap.sequence <= (1 << 23); intel_get_renderbuffer(&intel_fb->Base, BUFFER_BACK_LEFT)->vbl_pending = intel_get_renderbuffer(&intel_fb->Base, BUFFER_FRONT_LEFT)->vbl_pending = - intel_fb->vbl_seq; + dPriv->vblSeq; if (swap.seqtype & DRM_VBLANK_FLIP) { intel_flip_renderbuffers(intel_fb); @@ -918,7 +918,7 @@ intelSwapBuffers(__DRIdrawablePrivate * dPriv) if (screen->current_rotation != 0 || !intelScheduleSwap(dPriv, &missed_target)) { - driWaitForVBlank(dPriv, &intel_fb->vbl_seq, intel_fb->vblank_flags, + driWaitForVBlank(dPriv, &dPriv->vblSeq, dPriv->vblFlags, &missed_target); if (screen->current_rotation != 0 || !intelPageFlip(dPriv)) { diff --git a/src/mesa/drivers/dri/i915tex/intel_buffers.h b/src/mesa/drivers/dri/i915tex/intel_buffers.h diff --git a/src/mesa/drivers/dri/i915tex/intel_context.c b/src/mesa/drivers/dri/i915tex/intel_context.c index 40ea756..b101646 100644 --- a/src/mesa/drivers/dri/i915tex/intel_context.c +++ b/src/mesa/drivers/dri/i915tex/intel_context.c @@ -622,18 +622,17 @@ intelMakeCurrent(__DRIcontextPrivate * driContextPriv, if (driDrawPriv->pdraw->swap_interval == (unsigned)-1) { int i; - intel_fb->vblank_flags = (intel->intelScreen->irq_active != 0) + driDrawPriv->vblFlags = (intel->intelScreen->irq_active != 0) ? driGetDefaultVBlankFlags(&intel->optionCache) : VBLANK_FLAG_NO_IRQ; (*dri_interface->getUST) (&intel_fb->swap_ust); - driDrawableInitVBlank(driDrawPriv, intel_fb->vblank_flags, - &intel_fb->vbl_seq); - intel_fb->vbl_waited = intel_fb->vbl_seq; + driDrawableInitVBlank(driDrawPriv); + intel_fb->vbl_waited = driDrawPriv->vblSeq; for (i = 0; i < (intel->intelScreen->third.handle ? 3 : 2); i++) { if (intel_fb->color_rb[i]) - intel_fb->color_rb[i]->vbl_pending = intel_fb->vbl_seq; + intel_fb->color_rb[i]->vbl_pending = driDrawPriv->vblSeq; } } intel->driDrawable = driDrawPriv; @@ -728,6 +727,7 @@ void LOCK_HARDWARE( struct intel_context *intel ) char __ret=0; struct intel_framebuffer *intel_fb = NULL; struct intel_renderbuffer *intel_rb = NULL; + __DRIdrawablePrivate *dPriv = intel->driDrawable; _glthread_LOCK_MUTEX(lockMutex); assert(!intel->locked); @@ -742,14 +742,14 @@ void LOCK_HARDWARE( struct intel_context *intel ) BUFFER_BACK_LEFT); } - if (intel_rb && intel_fb->vblank_flags && - !(intel_fb->vblank_flags & VBLANK_FLAG_NO_IRQ) && + if (intel_rb && dPriv->vblFlags && + !(dPriv->vblFlags & VBLANK_FLAG_NO_IRQ) && (intel_fb->vbl_waited - intel_rb->vbl_pending) > (1<<23)) { drmVBlank vbl; vbl.request.type = DRM_VBLANK_ABSOLUTE; - if ( intel_fb->vblank_flags & VBLANK_FLAG_SECONDARY ) { + if ( dPriv->vblFlags & VBLANK_FLAG_SECONDARY ) { vbl.request.type |= DRM_VBLANK_SECONDARY; } diff --git a/src/mesa/drivers/dri/i915tex/intel_context.h b/src/mesa/drivers/dri/i915tex/intel_context.h diff --git a/src/mesa/drivers/dri/i915tex/intel_depthstencil.c b/src/mesa/drivers/dri/i915tex/intel_depthstencil.c diff --git a/src/mesa/drivers/dri/i915tex/intel_depthstencil.h b/src/mesa/drivers/dri/i915tex/intel_depthstencil.h diff --git a/src/mesa/drivers/dri/i915tex/intel_fbo.c b/src/mesa/drivers/dri/i915tex/intel_fbo.c diff --git a/src/mesa/drivers/dri/i915tex/intel_fbo.h b/src/mesa/drivers/dri/i915tex/intel_fbo.h index 411d634..f9a11d0 100644 --- a/src/mesa/drivers/dri/i915tex/intel_fbo.h +++ b/src/mesa/drivers/dri/i915tex/intel_fbo.h @@ -50,8 +50,6 @@ struct intel_framebuffer /* VBI */ - GLuint vbl_seq; - GLuint vblank_flags; GLuint vbl_waited; int64_t swap_ust; diff --git a/src/mesa/drivers/dri/i915tex/intel_ioctl.c b/src/mesa/drivers/dri/i915tex/intel_ioctl.c diff --git a/src/mesa/drivers/dri/i915tex/intel_ioctl.h b/src/mesa/drivers/dri/i915tex/intel_ioctl.h diff --git a/src/mesa/drivers/dri/i915tex/intel_mipmap_tree.c b/src/mesa/drivers/dri/i915tex/intel_mipmap_tree.c diff --git a/src/mesa/drivers/dri/i915tex/intel_mipmap_tree.h b/src/mesa/drivers/dri/i915tex/intel_mipmap_tree.h diff --git a/src/mesa/drivers/dri/i915tex/intel_pixel.c b/src/mesa/drivers/dri/i915tex/intel_pixel.c diff --git a/src/mesa/drivers/dri/i915tex/intel_pixel.h b/src/mesa/drivers/dri/i915tex/intel_pixel.h diff --git a/src/mesa/drivers/dri/i915tex/intel_pixel_bitmap.c b/src/mesa/drivers/dri/i915tex/intel_pixel_bitmap.c diff --git a/src/mesa/drivers/dri/i915tex/intel_pixel_copy.c b/src/mesa/drivers/dri/i915tex/intel_pixel_copy.c diff --git a/src/mesa/drivers/dri/i915tex/intel_pixel_draw.c b/src/mesa/drivers/dri/i915tex/intel_pixel_draw.c diff --git a/src/mesa/drivers/dri/i915tex/intel_pixel_read.c b/src/mesa/drivers/dri/i915tex/intel_pixel_read.c diff --git a/src/mesa/drivers/dri/i915tex/intel_reg.h b/src/mesa/drivers/dri/i915tex/intel_reg.h diff --git a/src/mesa/drivers/dri/i915tex/intel_regions.c b/src/mesa/drivers/dri/i915tex/intel_regions.c diff --git a/src/mesa/drivers/dri/i915tex/intel_regions.h b/src/mesa/drivers/dri/i915tex/intel_regions.h diff --git a/src/mesa/drivers/dri/i915tex/intel_render.c b/src/mesa/drivers/dri/i915tex/intel_render.c diff --git a/src/mesa/drivers/dri/i915tex/intel_rotate.c b/src/mesa/drivers/dri/i915tex/intel_rotate.c diff --git a/src/mesa/drivers/dri/i915tex/intel_rotate.h b/src/mesa/drivers/dri/i915tex/intel_rotate.h diff --git a/src/mesa/drivers/dri/i915tex/intel_screen.c b/src/mesa/drivers/dri/i915tex/intel_screen.c index 2acdead..f4a814c 100644 --- a/src/mesa/drivers/dri/i915tex/intel_screen.c +++ b/src/mesa/drivers/dri/i915tex/intel_screen.c @@ -777,6 +777,7 @@ static const struct __DriverAPIRec intelAPI = { .UnbindContext = intelUnbindContext, .GetSwapInfo = intelGetSwapInfo, .GetMSC = driGetMSC32, + .GetDrawableMSC = driDrawableGetMSC32, .WaitForMSC = driWaitForMSC32, .WaitForSBC = NULL, .SwapBuffersMSC = NULL, diff --git a/src/mesa/drivers/dri/i915tex/intel_screen.h b/src/mesa/drivers/dri/i915tex/intel_screen.h diff --git a/src/mesa/drivers/dri/i915tex/intel_span.c b/src/mesa/drivers/dri/i915tex/intel_span.c diff --git a/src/mesa/drivers/dri/i915tex/intel_span.h b/src/mesa/drivers/dri/i915tex/intel_span.h diff --git a/src/mesa/drivers/dri/i915tex/intel_state.c b/src/mesa/drivers/dri/i915tex/intel_state.c diff --git a/src/mesa/drivers/dri/i915tex/intel_structs.h b/src/mesa/drivers/dri/i915tex/intel_structs.h diff --git a/src/mesa/drivers/dri/i915tex/intel_tex.c b/src/mesa/drivers/dri/i915tex/intel_tex.c diff --git a/src/mesa/drivers/dri/i915tex/intel_tex.h b/src/mesa/drivers/dri/i915tex/intel_tex.h diff --git a/src/mesa/drivers/dri/i915tex/intel_tex_copy.c b/src/mesa/drivers/dri/i915tex/intel_tex_copy.c diff --git a/src/mesa/drivers/dri/i915tex/intel_tex_format.c b/src/mesa/drivers/dri/i915tex/intel_tex_format.c diff --git a/src/mesa/drivers/dri/i915tex/intel_tex_image.c b/src/mesa/drivers/dri/i915tex/intel_tex_image.c diff --git a/src/mesa/drivers/dri/i915tex/intel_tex_layout.c b/src/mesa/drivers/dri/i915tex/intel_tex_layout.c diff --git a/src/mesa/drivers/dri/i915tex/intel_tex_subimage.c b/src/mesa/drivers/dri/i915tex/intel_tex_subimage.c diff --git a/src/mesa/drivers/dri/i915tex/intel_tex_validate.c b/src/mesa/drivers/dri/i915tex/intel_tex_validate.c diff --git a/src/mesa/drivers/dri/i915tex/intel_tris.c b/src/mesa/drivers/dri/i915tex/intel_tris.c diff --git a/src/mesa/drivers/dri/i915tex/intel_tris.h b/src/mesa/drivers/dri/i915tex/intel_tris.h diff --git a/src/mesa/drivers/dri/i915tex/server/i830_common.h b/src/mesa/drivers/dri/i915tex/server/i830_common.h diff --git a/src/mesa/drivers/dri/i915tex/server/i830_dri.h b/src/mesa/drivers/dri/i915tex/server/i830_dri.h diff --git a/src/mesa/drivers/dri/i915tex/server/intel.h b/src/mesa/drivers/dri/i915tex/server/intel.h diff --git a/src/mesa/drivers/dri/i915tex/server/intel_dri.c b/src/mesa/drivers/dri/i915tex/server/intel_dri.c diff --git a/src/mesa/drivers/dri/i965/Makefile b/src/mesa/drivers/dri/i965/Makefile diff --git a/src/mesa/drivers/dri/i965/brw_aub.c b/src/mesa/drivers/dri/i965/brw_aub.c diff --git a/src/mesa/drivers/dri/i965/brw_aub.h b/src/mesa/drivers/dri/i965/brw_aub.h diff --git a/src/mesa/drivers/dri/i965/brw_aub_playback.c b/src/mesa/drivers/dri/i965/brw_aub_playback.c diff --git a/src/mesa/drivers/dri/i965/brw_cc.c b/src/mesa/drivers/dri/i965/brw_cc.c diff --git a/src/mesa/drivers/dri/i965/brw_clip.c b/src/mesa/drivers/dri/i965/brw_clip.c diff --git a/src/mesa/drivers/dri/i965/brw_clip.h b/src/mesa/drivers/dri/i965/brw_clip.h diff --git a/src/mesa/drivers/dri/i965/brw_clip_line.c b/src/mesa/drivers/dri/i965/brw_clip_line.c diff --git a/src/mesa/drivers/dri/i965/brw_clip_point.c b/src/mesa/drivers/dri/i965/brw_clip_point.c diff --git a/src/mesa/drivers/dri/i965/brw_clip_state.c b/src/mesa/drivers/dri/i965/brw_clip_state.c diff --git a/src/mesa/drivers/dri/i965/brw_clip_tri.c b/src/mesa/drivers/dri/i965/brw_clip_tri.c diff --git a/src/mesa/drivers/dri/i965/brw_clip_unfilled.c b/src/mesa/drivers/dri/i965/brw_clip_unfilled.c diff --git a/src/mesa/drivers/dri/i965/brw_clip_util.c b/src/mesa/drivers/dri/i965/brw_clip_util.c diff --git a/src/mesa/drivers/dri/i965/brw_context.c b/src/mesa/drivers/dri/i965/brw_context.c diff --git a/src/mesa/drivers/dri/i965/brw_context.h b/src/mesa/drivers/dri/i965/brw_context.h diff --git a/src/mesa/drivers/dri/i965/brw_curbe.c b/src/mesa/drivers/dri/i965/brw_curbe.c diff --git a/src/mesa/drivers/dri/i965/brw_defines.h b/src/mesa/drivers/dri/i965/brw_defines.h diff --git a/src/mesa/drivers/dri/i965/brw_draw.c b/src/mesa/drivers/dri/i965/brw_draw.c diff --git a/src/mesa/drivers/dri/i965/brw_draw.h b/src/mesa/drivers/dri/i965/brw_draw.h diff --git a/src/mesa/drivers/dri/i965/brw_draw_upload.c b/src/mesa/drivers/dri/i965/brw_draw_upload.c diff --git a/src/mesa/drivers/dri/i965/brw_eu.c b/src/mesa/drivers/dri/i965/brw_eu.c diff --git a/src/mesa/drivers/dri/i965/brw_eu.h b/src/mesa/drivers/dri/i965/brw_eu.h diff --git a/src/mesa/drivers/dri/i965/brw_eu_debug.c b/src/mesa/drivers/dri/i965/brw_eu_debug.c diff --git a/src/mesa/drivers/dri/i965/brw_eu_emit.c b/src/mesa/drivers/dri/i965/brw_eu_emit.c diff --git a/src/mesa/drivers/dri/i965/brw_eu_util.c b/src/mesa/drivers/dri/i965/brw_eu_util.c diff --git a/src/mesa/drivers/dri/i965/brw_exec_generic.c b/src/mesa/drivers/dri/i965/brw_exec_generic.c diff --git a/src/mesa/drivers/dri/i965/brw_fallback.c b/src/mesa/drivers/dri/i965/brw_fallback.c diff --git a/src/mesa/drivers/dri/i965/brw_fallback.h b/src/mesa/drivers/dri/i965/brw_fallback.h diff --git a/src/mesa/drivers/dri/i965/brw_gs.c b/src/mesa/drivers/dri/i965/brw_gs.c diff --git a/src/mesa/drivers/dri/i965/brw_gs.h b/src/mesa/drivers/dri/i965/brw_gs.h diff --git a/src/mesa/drivers/dri/i965/brw_gs_emit.c b/src/mesa/drivers/dri/i965/brw_gs_emit.c diff --git a/src/mesa/drivers/dri/i965/brw_gs_state.c b/src/mesa/drivers/dri/i965/brw_gs_state.c diff --git a/src/mesa/drivers/dri/i965/brw_hal.c b/src/mesa/drivers/dri/i965/brw_hal.c diff --git a/src/mesa/drivers/dri/i965/brw_hal.h b/src/mesa/drivers/dri/i965/brw_hal.h diff --git a/src/mesa/drivers/dri/i965/brw_metaops.c b/src/mesa/drivers/dri/i965/brw_metaops.c diff --git a/src/mesa/drivers/dri/i965/brw_misc_state.c b/src/mesa/drivers/dri/i965/brw_misc_state.c diff --git a/src/mesa/drivers/dri/i965/brw_program.c b/src/mesa/drivers/dri/i965/brw_program.c diff --git a/src/mesa/drivers/dri/i965/brw_sf.c b/src/mesa/drivers/dri/i965/brw_sf.c diff --git a/src/mesa/drivers/dri/i965/brw_sf.h b/src/mesa/drivers/dri/i965/brw_sf.h diff --git a/src/mesa/drivers/dri/i965/brw_sf_emit.c b/src/mesa/drivers/dri/i965/brw_sf_emit.c diff --git a/src/mesa/drivers/dri/i965/brw_sf_state.c b/src/mesa/drivers/dri/i965/brw_sf_state.c diff --git a/src/mesa/drivers/dri/i965/brw_state.h b/src/mesa/drivers/dri/i965/brw_state.h diff --git a/src/mesa/drivers/dri/i965/brw_state_batch.c b/src/mesa/drivers/dri/i965/brw_state_batch.c diff --git a/src/mesa/drivers/dri/i965/brw_state_cache.c b/src/mesa/drivers/dri/i965/brw_state_cache.c diff --git a/src/mesa/drivers/dri/i965/brw_state_pool.c b/src/mesa/drivers/dri/i965/brw_state_pool.c diff --git a/src/mesa/drivers/dri/i965/brw_state_upload.c b/src/mesa/drivers/dri/i965/brw_state_upload.c diff --git a/src/mesa/drivers/dri/i965/brw_structs.h b/src/mesa/drivers/dri/i965/brw_structs.h diff --git a/src/mesa/drivers/dri/i965/brw_tex.c b/src/mesa/drivers/dri/i965/brw_tex.c diff --git a/src/mesa/drivers/dri/i965/brw_tex_layout.c b/src/mesa/drivers/dri/i965/brw_tex_layout.c diff --git a/src/mesa/drivers/dri/i965/brw_urb.c b/src/mesa/drivers/dri/i965/brw_urb.c diff --git a/src/mesa/drivers/dri/i965/brw_util.c b/src/mesa/drivers/dri/i965/brw_util.c diff --git a/src/mesa/drivers/dri/i965/brw_util.h b/src/mesa/drivers/dri/i965/brw_util.h diff --git a/src/mesa/drivers/dri/i965/brw_vs.c b/src/mesa/drivers/dri/i965/brw_vs.c diff --git a/src/mesa/drivers/dri/i965/brw_vs.h b/src/mesa/drivers/dri/i965/brw_vs.h diff --git a/src/mesa/drivers/dri/i965/brw_vs_constval.c b/src/mesa/drivers/dri/i965/brw_vs_constval.c diff --git a/src/mesa/drivers/dri/i965/brw_vs_emit.c b/src/mesa/drivers/dri/i965/brw_vs_emit.c diff --git a/src/mesa/drivers/dri/i965/brw_vs_state.c b/src/mesa/drivers/dri/i965/brw_vs_state.c diff --git a/src/mesa/drivers/dri/i965/brw_vs_tnl.c b/src/mesa/drivers/dri/i965/brw_vs_tnl.c diff --git a/src/mesa/drivers/dri/i965/brw_vtbl.c b/src/mesa/drivers/dri/i965/brw_vtbl.c diff --git a/src/mesa/drivers/dri/i965/brw_wm.c b/src/mesa/drivers/dri/i965/brw_wm.c diff --git a/src/mesa/drivers/dri/i965/brw_wm.h b/src/mesa/drivers/dri/i965/brw_wm.h diff --git a/src/mesa/drivers/dri/i965/brw_wm_debug.c b/src/mesa/drivers/dri/i965/brw_wm_debug.c diff --git a/src/mesa/drivers/dri/i965/brw_wm_emit.c b/src/mesa/drivers/dri/i965/brw_wm_emit.c diff --git a/src/mesa/drivers/dri/i965/brw_wm_fp.c b/src/mesa/drivers/dri/i965/brw_wm_fp.c diff --git a/src/mesa/drivers/dri/i965/brw_wm_iz.c b/src/mesa/drivers/dri/i965/brw_wm_iz.c diff --git a/src/mesa/drivers/dri/i965/brw_wm_pass0.c b/src/mesa/drivers/dri/i965/brw_wm_pass0.c diff --git a/src/mesa/drivers/dri/i965/brw_wm_pass1.c b/src/mesa/drivers/dri/i965/brw_wm_pass1.c diff --git a/src/mesa/drivers/dri/i965/brw_wm_pass2.c b/src/mesa/drivers/dri/i965/brw_wm_pass2.c diff --git a/src/mesa/drivers/dri/i965/brw_wm_sampler_state.c b/src/mesa/drivers/dri/i965/brw_wm_sampler_state.c diff --git a/src/mesa/drivers/dri/i965/brw_wm_state.c b/src/mesa/drivers/dri/i965/brw_wm_state.c diff --git a/src/mesa/drivers/dri/i965/brw_wm_surface_state.c b/src/mesa/drivers/dri/i965/brw_wm_surface_state.c diff --git a/src/mesa/drivers/dri/i965/bufmgr.h b/src/mesa/drivers/dri/i965/bufmgr.h diff --git a/src/mesa/drivers/dri/i965/bufmgr_fake.c b/src/mesa/drivers/dri/i965/bufmgr_fake.c diff --git a/src/mesa/drivers/dri/i965/intel_batchbuffer.c b/src/mesa/drivers/dri/i965/intel_batchbuffer.c diff --git a/src/mesa/drivers/dri/i965/intel_batchbuffer.h b/src/mesa/drivers/dri/i965/intel_batchbuffer.h diff --git a/src/mesa/drivers/dri/i965/intel_blit.c b/src/mesa/drivers/dri/i965/intel_blit.c index f88cbb2..a7604b9 100644 --- a/src/mesa/drivers/dri/i965/intel_blit.c +++ b/src/mesa/drivers/dri/i965/intel_blit.c @@ -76,7 +76,8 @@ void intelCopyBuffer( const __DRIdrawablePrivate *dPriv, if (!rect) { UNLOCK_HARDWARE( intel ); - driWaitForVBlank( dPriv, &intel->vbl_seq, intel->vblank_flags, & missed_target ); + driWaitForVBlank( dPriv, &dPriv->vblSeq, dPriv->vblFlags, + &missed_target ); LOCK_HARDWARE( intel ); } diff --git a/src/mesa/drivers/dri/i965/intel_blit.h b/src/mesa/drivers/dri/i965/intel_blit.h diff --git a/src/mesa/drivers/dri/i965/intel_buffer_objects.c b/src/mesa/drivers/dri/i965/intel_buffer_objects.c diff --git a/src/mesa/drivers/dri/i965/intel_buffer_objects.h b/src/mesa/drivers/dri/i965/intel_buffer_objects.h diff --git a/src/mesa/drivers/dri/i965/intel_buffers.c b/src/mesa/drivers/dri/i965/intel_buffers.c index d155c03..54d9f65 100644 --- a/src/mesa/drivers/dri/i965/intel_buffers.c +++ b/src/mesa/drivers/dri/i965/intel_buffers.c @@ -33,6 +33,8 @@ #include "context.h" #include "framebuffer.h" #include "macros.h" +#include "utils.h" +#include "vblank.h" #include "swrast/swrast.h" GLboolean intel_intersect_cliprects( drm_clip_rect_t *dst, @@ -190,6 +192,49 @@ void intelWindowMoved( struct intel_context *intel ) } } + /* Get updated plane info so we sync against the right vblank counter */ + if (intel->intelScreen->driScrnPriv->ddxMinor >= 7) { + 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 planeA_rect = { .x1 = sarea->planeA_x, .y1 = sarea->planeA_y, + .x2 = sarea->planeA_x + sarea->planeA_w, + .y2 = sarea->planeA_y + sarea->planeA_h }; + drm_clip_rect_t planeB_rect = { .x1 = sarea->planeB_x, .y1 = sarea->planeB_y, + .x2 = sarea->planeB_x + sarea->planeB_w, + .y2 = sarea->planeB_y + sarea->planeB_h }; + GLint areaA = driIntersectArea( drw_rect, planeA_rect ); + GLint areaB = driIntersectArea( drw_rect, planeB_rect ); + GLuint flags = dPriv->vblFlags; + + /* Update vblank info + */ + if (areaB > areaA || (areaA == areaB && areaB > 0)) { + flags = dPriv->vblFlags | VBLANK_FLAG_SECONDARY; + } else { + flags = dPriv->vblFlags & ~VBLANK_FLAG_SECONDARY; + } + + /* Check to see if we changed pipes */ + if (flags != dPriv->vblFlags && dPriv->vblFlags && + !(dPriv->vblFlags & VBLANK_FLAG_NO_IRQ)) { + + dPriv->vblFlags = flags; + driGetCurrentVBlank(dPriv, dPriv->vblFlags, &dPriv->vblSeq); + + /* + * Update monotonic MSC fields + */ + dPriv->base_msc = dPriv->msc; + if ( !(dPriv->vblFlags & VBLANK_FLAG_SECONDARY) ) + dPriv->primary_vblank_base = dPriv->vblSeq; + else + dPriv->secondary_vblank_base = dPriv->vblSeq; + } + } else { + dPriv->vblFlags &= ~VBLANK_FLAG_SECONDARY; + } + _mesa_resize_framebuffer(&intel->ctx, (GLframebuffer*)dPriv->driverPrivate, dPriv->w, dPriv->h); diff --git a/src/mesa/drivers/dri/i965/intel_context.c b/src/mesa/drivers/dri/i965/intel_context.c index 1fbf571..2ca5b02 100644 --- a/src/mesa/drivers/dri/i965/intel_context.c +++ b/src/mesa/drivers/dri/i965/intel_context.c @@ -328,8 +328,8 @@ GLboolean intelInitContext( struct intel_context *intel, GLcontext *shareCtx = (GLcontext *) sharedContextPrivate; __DRIscreenPrivate *sPriv = driContextPriv->driScreenPriv; intelScreenPrivate *intelScreen = (intelScreenPrivate *)sPriv->private; - volatile drmI830Sarea *saPriv = (volatile drmI830Sarea *) - (((GLubyte *)sPriv->pSAREA)+intelScreen->sarea_priv_offset); + drmI830Sarea *saPriv = (drmI830Sarea *) + (((GLubyte *)sPriv->pSAREA)+intelScreen->sarea_priv_offset); if (!_mesa_initialize_context(&intel->ctx, mesaVis, shareCtx, @@ -347,9 +347,6 @@ GLboolean intelInitContext( struct intel_context *intel, driParseConfigFiles (&intel->optionCache, &intelScreen->optionCache, intel->driScreen->myNum, "i965"); - intel->vblank_flags = (intel->intelScreen->irq_active != 0) - ? driGetDefaultVBlankFlags(&intel->optionCache) : VBLANK_FLAG_NO_IRQ; - ctx->Const.MaxTextureMaxAnisotropy = 2.0; if (getenv("INTEL_STRICT_CONFORMANCE")) { @@ -576,17 +573,19 @@ GLboolean intelMakeCurrent(__DRIcontextPrivate *driContextPriv, if (driContextPriv) { struct intel_context *intel = (struct intel_context *) driContextPriv->driverPrivate; + driDrawPriv->vblFlags = (intel->intelScreen->irq_active != 0) + ? driGetDefaultVBlankFlags(&intel->optionCache) : VBLANK_FLAG_NO_IRQ; + + if (intel->driReadDrawable != driReadPriv) { intel->driReadDrawable = driReadPriv; } if ( intel->driDrawable != driDrawPriv ) { - /* Shouldn't the readbuffer be stored also? */ - driDrawableInitVBlank( driDrawPriv, intel->vblank_flags, - &intel->vbl_seq ); - intel->driDrawable = driDrawPriv; intelWindowMoved( intel ); + /* Shouldn't the readbuffer be stored also? */ + driDrawableInitVBlank( driDrawPriv ); } _mesa_make_current(&intel->ctx, diff --git a/src/mesa/drivers/dri/i965/intel_context.h b/src/mesa/drivers/dri/i965/intel_context.h index 053d93a..26d6923 100644 --- a/src/mesa/drivers/dri/i965/intel_context.h +++ b/src/mesa/drivers/dri/i965/intel_context.h @@ -237,7 +237,7 @@ struct intel_context __DRIdrawablePrivate *driReadDrawable; __DRIscreenPrivate *driScreen; intelScreenPrivate *intelScreen; - volatile drmI830Sarea *sarea; + drmI830Sarea *sarea; FILE *aub_file; @@ -248,11 +248,6 @@ struct intel_context */ driOptionCache optionCache; - /* VBI - */ - GLuint vbl_seq; - GLuint vblank_flags; - int64_t swap_ust; int64_t swap_missed_ust; diff --git a/src/mesa/drivers/dri/i965/intel_ioctl.c b/src/mesa/drivers/dri/i965/intel_ioctl.c diff --git a/src/mesa/drivers/dri/i965/intel_ioctl.h b/src/mesa/drivers/dri/i965/intel_ioctl.h diff --git a/src/mesa/drivers/dri/i965/intel_mipmap_tree.c b/src/mesa/drivers/dri/i965/intel_mipmap_tree.c diff --git a/src/mesa/drivers/dri/i965/intel_mipmap_tree.h b/src/mesa/drivers/dri/i965/intel_mipmap_tree.h diff --git a/src/mesa/drivers/dri/i965/intel_pixel_bitmap.c b/src/mesa/drivers/dri/i965/intel_pixel_bitmap.c diff --git a/src/mesa/drivers/dri/i965/intel_pixel_copy.c b/src/mesa/drivers/dri/i965/intel_pixel_copy.c diff --git a/src/mesa/drivers/dri/i965/intel_reg.h b/src/mesa/drivers/dri/i965/intel_reg.h diff --git a/src/mesa/drivers/dri/i965/intel_regions.c b/src/mesa/drivers/dri/i965/intel_regions.c diff --git a/src/mesa/drivers/dri/i965/intel_regions.h b/src/mesa/drivers/dri/i965/intel_regions.h diff --git a/src/mesa/drivers/dri/i965/intel_screen.c b/src/mesa/drivers/dri/i965/intel_screen.c index 5dac50d..c51339f 100644 --- a/src/mesa/drivers/dri/i965/intel_screen.c +++ b/src/mesa/drivers/dri/i965/intel_screen.c @@ -452,6 +452,11 @@ static GLboolean intelCreateBuffer( __DRIscreenPrivate *driScrnPriv, driDrawPriv->driverPrivate = (void *) fb; return (driDrawPriv->driverPrivate != NULL); + + driGetCurrentVBlank(driDrawPriv, 0, &driDrawPriv->primary_vblank_base); + driGetCurrentVBlank(driDrawPriv, VBLANK_FLAG_SECONDARY, + &driDrawPriv->secondary_vblank_base); + printf("initializing msc: primary_vblank_base = %d, secondary_vblank_base = %d\n", driDrawPriv->primary_vblank_base, driDrawPriv->secondary_vblank_base); } } @@ -552,6 +557,7 @@ static const struct __DriverAPIRec intelAPI = { .UnbindContext = intelUnbindContext, .GetSwapInfo = intelGetSwapInfo, .GetMSC = driGetMSC32, + .GetDrawableMSC = driDrawableGetMSC32, .WaitForMSC = driWaitForMSC32, .WaitForSBC = NULL, .SwapBuffersMSC = NULL, diff --git a/src/mesa/drivers/dri/i965/intel_screen.h b/src/mesa/drivers/dri/i965/intel_screen.h diff --git a/src/mesa/drivers/dri/i965/intel_span.c b/src/mesa/drivers/dri/i965/intel_span.c diff --git a/src/mesa/drivers/dri/i965/intel_span.h b/src/mesa/drivers/dri/i965/intel_span.h diff --git a/src/mesa/drivers/dri/i965/intel_state.c b/src/mesa/drivers/dri/i965/intel_state.c diff --git a/src/mesa/drivers/dri/i965/intel_structs.h b/src/mesa/drivers/dri/i965/intel_structs.h diff --git a/src/mesa/drivers/dri/i965/intel_tex.c b/src/mesa/drivers/dri/i965/intel_tex.c diff --git a/src/mesa/drivers/dri/i965/intel_tex.h b/src/mesa/drivers/dri/i965/intel_tex.h diff --git a/src/mesa/drivers/dri/i965/intel_tex_layout.c b/src/mesa/drivers/dri/i965/intel_tex_layout.c diff --git a/src/mesa/drivers/dri/i965/intel_tex_validate.c b/src/mesa/drivers/dri/i965/intel_tex_validate.c diff --git a/src/mesa/drivers/dri/i965/server/i830_common.h b/src/mesa/drivers/dri/i965/server/i830_common.h index f320378..452c400 100644 --- a/src/mesa/drivers/dri/i965/server/i830_common.h +++ b/src/mesa/drivers/dri/i965/server/i830_common.h @@ -119,6 +119,15 @@ typedef struct { unsigned int depth_tiled; unsigned int rotated_tiled; unsigned int rotated2_tiled; + + int planeA_x; + int planeA_y; + int planeA_w; + int planeA_h; + int planeB_x; + int planeB_y; + int planeB_w; + int planeB_h; } drmI830Sarea; /* Flags for perf_boxes diff --git a/src/mesa/drivers/dri/i965/server/i830_dri.h b/src/mesa/drivers/dri/i965/server/i830_dri.h diff --git a/src/mesa/drivers/dri/i965/server/intel.h b/src/mesa/drivers/dri/i965/server/intel.h diff --git a/src/mesa/drivers/dri/i965/server/intel_dri.c b/src/mesa/drivers/dri/i965/server/intel_dri.c diff --git a/src/mesa/drivers/dri/intel/intel_tex_layout.c b/src/mesa/drivers/dri/intel/intel_tex_layout.c diff --git a/src/mesa/drivers/dri/intel/intel_tex_layout.h b/src/mesa/drivers/dri/intel/intel_tex_layout.h diff --git a/src/mesa/drivers/dri/mach64/Makefile b/src/mesa/drivers/dri/mach64/Makefile diff --git a/src/mesa/drivers/dri/mach64/mach64_context.c b/src/mesa/drivers/dri/mach64/mach64_context.c index ad661e1..138e84d 100644 --- a/src/mesa/drivers/dri/mach64/mach64_context.c +++ b/src/mesa/drivers/dri/mach64/mach64_context.c @@ -100,6 +100,7 @@ GLboolean mach64CreateContext( const __GLcontextModes *glVisual, { GLcontext *ctx, *shareCtx; __DRIscreenPrivate *driScreen = driContextPriv->driScreenPriv; + __DRIdrawablePrivate *dPriv = driContextPriv->driDrawablePriv; struct dd_function_table functions; mach64ContextPtr mmesa; mach64ScreenPtr mach64Screen; @@ -253,7 +254,7 @@ GLboolean mach64CreateContext( const __GLcontextModes *glVisual, mmesa->do_irqs = (mmesa->mach64Screen->irq && !getenv("MACH64_NO_IRQS")); - mmesa->vblank_flags = (mmesa->do_irqs) + dPriv->vblFlags = (mmesa->do_irqs) ? driGetDefaultVBlankFlags(&mmesa->optionCache) : VBLANK_FLAG_NO_IRQ; driContextPriv->driverPrivate = (void *)mmesa; @@ -330,8 +331,7 @@ mach64MakeCurrent( __DRIcontextPrivate *driContextPriv, } - driDrawableInitVBlank( driDrawPriv, newMach64Ctx->vblank_flags, - &newMach64Ctx->vbl_seq ); + driDrawableInitVBlank( driDrawPriv ); if ( newMach64Ctx->driDrawable != driDrawPriv ) { newMach64Ctx->driDrawable = driDrawPriv; diff --git a/src/mesa/drivers/dri/mach64/mach64_context.h b/src/mesa/drivers/dri/mach64/mach64_context.h index 8d89452..c602333 100644 --- a/src/mesa/drivers/dri/mach64/mach64_context.h +++ b/src/mesa/drivers/dri/mach64/mach64_context.h @@ -263,8 +263,6 @@ struct mach64_context { /* VBI */ - GLuint vbl_seq; - GLuint vblank_flags; GLuint do_irqs; /* Configuration cache diff --git a/src/mesa/drivers/dri/mach64/mach64_dd.c b/src/mesa/drivers/dri/mach64/mach64_dd.c diff --git a/src/mesa/drivers/dri/mach64/mach64_dd.h b/src/mesa/drivers/dri/mach64/mach64_dd.h diff --git a/src/mesa/drivers/dri/mach64/mach64_ioctl.c b/src/mesa/drivers/dri/mach64/mach64_ioctl.c index 36e7d3c..7405a27 100644 --- a/src/mesa/drivers/dri/mach64/mach64_ioctl.c +++ b/src/mesa/drivers/dri/mach64/mach64_ioctl.c @@ -279,7 +279,7 @@ static int mach64WaitForFrameCompletion( mach64ContextPtr mmesa ) /* Copy the back color buffer to the front color buffer. */ -void mach64CopyBuffer( const __DRIdrawablePrivate *dPriv ) +void mach64CopyBuffer( __DRIdrawablePrivate *dPriv ) { mach64ContextPtr mmesa; GLint nbox, i, ret; @@ -320,7 +320,7 @@ void mach64CopyBuffer( const __DRIdrawablePrivate *dPriv ) #endif UNLOCK_HARDWARE( mmesa ); - driWaitForVBlank( dPriv, &mmesa->vbl_seq, mmesa->vblank_flags, &missed_target ); + driWaitForVBlank( dPriv, &dPriv->vblSeq, dPriv->vblFlags, &missed_target ); LOCK_HARDWARE( mmesa ); /* use front buffer cliprects */ diff --git a/src/mesa/drivers/dri/mach64/mach64_ioctl.h b/src/mesa/drivers/dri/mach64/mach64_ioctl.h index 52fe863..c28bf31 100644 --- a/src/mesa/drivers/dri/mach64/mach64_ioctl.h +++ b/src/mesa/drivers/dri/mach64/mach64_ioctl.h @@ -78,7 +78,7 @@ extern void mach64FireBlitLocked( mach64ContextPtr mmesa, void *buffer, GLint offset, GLint pitch, GLint format, GLint x, GLint y, GLint width, GLint height ); -extern void mach64CopyBuffer( const __DRIdrawablePrivate *dPriv ); +extern void mach64CopyBuffer( __DRIdrawablePrivate *dPriv ); #if ENABLE_PERF_BOXES extern void mach64PerformanceCounters( mach64ContextPtr mmesa ); extern void mach64PerformanceBoxesLocked( mach64ContextPtr mmesa ); diff --git a/src/mesa/drivers/dri/mach64/mach64_lock.c b/src/mesa/drivers/dri/mach64/mach64_lock.c diff --git a/src/mesa/drivers/dri/mach64/mach64_lock.h b/src/mesa/drivers/dri/mach64/mach64_lock.h diff --git a/src/mesa/drivers/dri/mach64/mach64_native_vb.c b/src/mesa/drivers/dri/mach64/mach64_native_vb.c diff --git a/src/mesa/drivers/dri/mach64/mach64_native_vbtmp.h b/src/mesa/drivers/dri/mach64/mach64_native_vbtmp.h diff --git a/src/mesa/drivers/dri/mach64/mach64_reg.h b/src/mesa/drivers/dri/mach64/mach64_reg.h diff --git a/src/mesa/drivers/dri/mach64/mach64_screen.c b/src/mesa/drivers/dri/mach64/mach64_screen.c index 4e9e216..a578cf7 100644 --- a/src/mesa/drivers/dri/mach64/mach64_screen.c +++ b/src/mesa/drivers/dri/mach64/mach64_screen.c @@ -488,6 +488,7 @@ static struct __DriverAPIRec mach64API = { .UnbindContext = mach64UnbindContext, .GetSwapInfo = NULL, .GetMSC = driGetMSC32, + .GetDrawableMSC = driDrawableGetMSC32, .WaitForMSC = driWaitForMSC32, .WaitForSBC = NULL, .SwapBuffersMSC = NULL diff --git a/src/mesa/drivers/dri/mach64/mach64_screen.h b/src/mesa/drivers/dri/mach64/mach64_screen.h diff --git a/src/mesa/drivers/dri/mach64/mach64_span.c b/src/mesa/drivers/dri/mach64/mach64_span.c diff --git a/src/mesa/drivers/dri/mach64/mach64_span.h b/src/mesa/drivers/dri/mach64/mach64_span.h diff --git a/src/mesa/drivers/dri/mach64/mach64_state.c b/src/mesa/drivers/dri/mach64/mach64_state.c diff --git a/src/mesa/drivers/dri/mach64/mach64_state.h b/src/mesa/drivers/dri/mach64/mach64_state.h diff --git a/src/mesa/drivers/dri/mach64/mach64_tex.c b/src/mesa/drivers/dri/mach64/mach64_tex.c diff --git a/src/mesa/drivers/dri/mach64/mach64_tex.h b/src/mesa/drivers/dri/mach64/mach64_tex.h diff --git a/src/mesa/drivers/dri/mach64/mach64_texmem.c b/src/mesa/drivers/dri/mach64/mach64_texmem.c diff --git a/src/mesa/drivers/dri/mach64/mach64_texstate.c b/src/mesa/drivers/dri/mach64/mach64_texstate.c diff --git a/src/mesa/drivers/dri/mach64/mach64_tris.c b/src/mesa/drivers/dri/mach64/mach64_tris.c diff --git a/src/mesa/drivers/dri/mach64/mach64_tris.h b/src/mesa/drivers/dri/mach64/mach64_tris.h diff --git a/src/mesa/drivers/dri/mach64/mach64_vb.c b/src/mesa/drivers/dri/mach64/mach64_vb.c diff --git a/src/mesa/drivers/dri/mach64/mach64_vb.h b/src/mesa/drivers/dri/mach64/mach64_vb.h diff --git a/src/mesa/drivers/dri/mach64/mach64_vbtmp.h b/src/mesa/drivers/dri/mach64/mach64_vbtmp.h diff --git a/src/mesa/drivers/dri/mach64/server/mach64_dri.h b/src/mesa/drivers/dri/mach64/server/mach64_dri.h diff --git a/src/mesa/drivers/dri/mga/Doxyfile b/src/mesa/drivers/dri/mga/Doxyfile diff --git a/src/mesa/drivers/dri/mga/Makefile b/src/mesa/drivers/dri/mga/Makefile diff --git a/src/mesa/drivers/dri/mga/README b/src/mesa/drivers/dri/mga/README diff --git a/src/mesa/drivers/dri/mga/mga_texcombine.c b/src/mesa/drivers/dri/mga/mga_texcombine.c diff --git a/src/mesa/drivers/dri/mga/mga_texstate.c b/src/mesa/drivers/dri/mga/mga_texstate.c diff --git a/src/mesa/drivers/dri/mga/mga_xmesa.c b/src/mesa/drivers/dri/mga/mga_xmesa.c index f4e651a..42fac11 100644 --- a/src/mesa/drivers/dri/mga/mga_xmesa.c +++ b/src/mesa/drivers/dri/mga/mga_xmesa.c @@ -449,6 +449,7 @@ mgaCreateContext( const __GLcontextModes *mesaVis, GLcontext *ctx, *shareCtx; mgaContextPtr mmesa; __DRIscreenPrivate *sPriv = driContextPriv->driScreenPriv; + __DRIdrawablePrivate *dPriv = driContextPriv->driDrawablePriv; mgaScreenPrivate *mgaScreen = (mgaScreenPrivate *)sPriv->private; drm_mga_sarea_t *saPriv = (drm_mga_sarea_t *)(((char*)sPriv->pSAREA)+ mgaScreen->sarea_priv_offset); @@ -647,7 +648,7 @@ mgaCreateContext( const __GLcontextModes *mesaVis, debug_control ); #endif - mmesa->vblank_flags = (mmesa->mgaScreen->irq == 0) + dPriv->vblFlags = (mmesa->mgaScreen->irq == 0) ? VBLANK_FLAG_NO_IRQ : driGetDefaultVBlankFlags(&mmesa->optionCache); (*dri_interface->getUST)( & mmesa->swap_ust ); @@ -879,8 +880,8 @@ mgaMakeCurrent(__DRIcontextPrivate *driContextPriv, mgaContextPtr mmesa = (mgaContextPtr) driContextPriv->driverPrivate; if (mmesa->driDrawable != driDrawPriv) { - driDrawableInitVBlank( driDrawPriv, mmesa->vblank_flags, - &mmesa->vbl_seq ); + driDrawableInitVBlank( driDrawPriv ); + mmesa->driDrawable = driDrawPriv; mmesa->dirty = ~0; mmesa->dirty_cliprects = (MGA_FRONT|MGA_BACK); @@ -946,6 +947,7 @@ static const struct __DriverAPIRec mgaAPI = { .UnbindContext = mgaUnbindContext, .GetSwapInfo = getSwapInfo, .GetMSC = driGetMSC32, + .GetDrawableMSC = driDrawableGetMSC32, .WaitForMSC = driWaitForMSC32, .WaitForSBC = NULL, .SwapBuffersMSC = NULL diff --git a/src/mesa/drivers/dri/mga/mga_xmesa.h b/src/mesa/drivers/dri/mga/mga_xmesa.h diff --git a/src/mesa/drivers/dri/mga/mgacontext.h b/src/mesa/drivers/dri/mga/mgacontext.h index 2124006..2681976 100644 --- a/src/mesa/drivers/dri/mga/mgacontext.h +++ b/src/mesa/drivers/dri/mga/mgacontext.h @@ -258,11 +258,6 @@ struct mga_context_t { drmBufPtr vertex_dma_buffer; drmBufPtr iload_buffer; - /* VBI - */ - GLuint vbl_seq; - GLuint vblank_flags; - int64_t swap_ust; int64_t swap_missed_ust; diff --git a/src/mesa/drivers/dri/mga/mgadd.c b/src/mesa/drivers/dri/mga/mgadd.c diff --git a/src/mesa/drivers/dri/mga/mgadd.h b/src/mesa/drivers/dri/mga/mgadd.h diff --git a/src/mesa/drivers/dri/mga/mgaioctl.c b/src/mesa/drivers/dri/mga/mgaioctl.c index f8587fc..f4ac129 100644 --- a/src/mesa/drivers/dri/mga/mgaioctl.c +++ b/src/mesa/drivers/dri/mga/mgaioctl.c @@ -428,8 +428,7 @@ void mgaCopyBuffer( const __DRIdrawablePrivate *dPriv ) FLUSH_BATCH( mmesa ); mgaWaitForFrameCompletion( mmesa ); - driWaitForVBlank( dPriv, & mmesa->vbl_seq, mmesa->vblank_flags, - & missed_target ); + driWaitForVBlank( dPriv, & dPriv->vblSeq, dPriv->vblFlags, & missed_target ); if ( missed_target ) { mmesa->swap_missed_count++; (void) (*dri_interface->getUST)( & mmesa->swap_missed_ust ); diff --git a/src/mesa/drivers/dri/mga/mgaioctl.h b/src/mesa/drivers/dri/mga/mgaioctl.h diff --git a/src/mesa/drivers/dri/mga/mgapixel.c b/src/mesa/drivers/dri/mga/mgapixel.c diff --git a/src/mesa/drivers/dri/mga/mgapixel.h b/src/mesa/drivers/dri/mga/mgapixel.h diff --git a/src/mesa/drivers/dri/mga/mgaregs.h b/src/mesa/drivers/dri/mga/mgaregs.h diff --git a/src/mesa/drivers/dri/mga/mgarender.c b/src/mesa/drivers/dri/mga/mgarender.c diff --git a/src/mesa/drivers/dri/mga/mgaspan.c b/src/mesa/drivers/dri/mga/mgaspan.c diff --git a/src/mesa/drivers/dri/mga/mgaspan.h b/src/mesa/drivers/dri/mga/mgaspan.h diff --git a/src/mesa/drivers/dri/mga/mgastate.c b/src/mesa/drivers/dri/mga/mgastate.c diff --git a/src/mesa/drivers/dri/mga/mgastate.h b/src/mesa/drivers/dri/mga/mgastate.h diff --git a/src/mesa/drivers/dri/mga/mgatex.c b/src/mesa/drivers/dri/mga/mgatex.c diff --git a/src/mesa/drivers/dri/mga/mgatex.h b/src/mesa/drivers/dri/mga/mgatex.h diff --git a/src/mesa/drivers/dri/mga/mgatexmem.c b/src/mesa/drivers/dri/mga/mgatexmem.c diff --git a/src/mesa/drivers/dri/mga/mgatris.c b/src/mesa/drivers/dri/mga/mgatris.c diff --git a/src/mesa/drivers/dri/mga/mgatris.h b/src/mesa/drivers/dri/mga/mgatris.h diff --git a/src/mesa/drivers/dri/mga/mgavb.c b/src/mesa/drivers/dri/mga/mgavb.c diff --git a/src/mesa/drivers/dri/mga/mgavb.h b/src/mesa/drivers/dri/mga/mgavb.h diff --git a/src/mesa/drivers/dri/mga/server/mga.h b/src/mesa/drivers/dri/mga/server/mga.h diff --git a/src/mesa/drivers/dri/mga/server/mga_bios.h b/src/mesa/drivers/dri/mga/server/mga_bios.h diff --git a/src/mesa/drivers/dri/mga/server/mga_dri.c b/src/mesa/drivers/dri/mga/server/mga_dri.c diff --git a/src/mesa/drivers/dri/mga/server/mga_dri.h b/src/mesa/drivers/dri/mga/server/mga_dri.h diff --git a/src/mesa/drivers/dri/mga/server/mga_macros.h b/src/mesa/drivers/dri/mga/server/mga_macros.h diff --git a/src/mesa/drivers/dri/mga/server/mga_reg.h b/src/mesa/drivers/dri/mga/server/mga_reg.h diff --git a/src/mesa/drivers/dri/nouveau/Makefile b/src/mesa/drivers/dri/nouveau/Makefile diff --git a/src/mesa/drivers/dri/nouveau/nouveau_bufferobj.c b/src/mesa/drivers/dri/nouveau/nouveau_bufferobj.c diff --git a/src/mesa/drivers/dri/nouveau/nouveau_bufferobj.h b/src/mesa/drivers/dri/nouveau/nouveau_bufferobj.h diff --git a/src/mesa/drivers/dri/nouveau/nouveau_card.c b/src/mesa/drivers/dri/nouveau/nouveau_card.c diff --git a/src/mesa/drivers/dri/nouveau/nouveau_card.h b/src/mesa/drivers/dri/nouveau/nouveau_card.h diff --git a/src/mesa/drivers/dri/nouveau/nouveau_card_list.h b/src/mesa/drivers/dri/nouveau/nouveau_card_list.h diff --git a/src/mesa/drivers/dri/nouveau/nouveau_context.c b/src/mesa/drivers/dri/nouveau/nouveau_context.c index f9f33ec..1b767ea 100644 --- a/src/mesa/drivers/dri/nouveau/nouveau_context.c +++ b/src/mesa/drivers/dri/nouveau/nouveau_context.c @@ -283,7 +283,7 @@ GLboolean nouveauMakeCurrent( __DRIcontextPrivate *driContextPriv, struct gl_framebuffer *read_fb = (struct gl_framebuffer*)driReadPriv->driverPrivate; - driDrawableInitVBlank(driDrawPriv, nmesa->vblank_flags, &nmesa->vblank_seq ); + driDrawableInitVBlank(driDrawPriv); nmesa->driDrawable = driDrawPriv; _mesa_resize_framebuffer(nmesa->glCtx, draw_fb, diff --git a/src/mesa/drivers/dri/nouveau/nouveau_context.h b/src/mesa/drivers/dri/nouveau/nouveau_context.h index 77fe13a..c15a229 100644 --- a/src/mesa/drivers/dri/nouveau/nouveau_context.h +++ b/src/mesa/drivers/dri/nouveau/nouveau_context.h @@ -185,10 +185,6 @@ typedef struct nouveau_context { /* Configuration cache */ driOptionCache optionCache; - /* vblank stuff */ - uint32_t vblank_flags; - uint32_t vblank_seq; - GLuint new_state; GLuint new_render_state; GLuint render_index; diff --git a/src/mesa/drivers/dri/nouveau/nouveau_ctrlreg.h b/src/mesa/drivers/dri/nouveau/nouveau_ctrlreg.h diff --git a/src/mesa/drivers/dri/nouveau/nouveau_dri.h b/src/mesa/drivers/dri/nouveau/nouveau_dri.h diff --git a/src/mesa/drivers/dri/nouveau/nouveau_driver.c b/src/mesa/drivers/dri/nouveau/nouveau_driver.c diff --git a/src/mesa/drivers/dri/nouveau/nouveau_driver.h b/src/mesa/drivers/dri/nouveau/nouveau_driver.h diff --git a/src/mesa/drivers/dri/nouveau/nouveau_fbo.c b/src/mesa/drivers/dri/nouveau/nouveau_fbo.c diff --git a/src/mesa/drivers/dri/nouveau/nouveau_fbo.h b/src/mesa/drivers/dri/nouveau/nouveau_fbo.h diff --git a/src/mesa/drivers/dri/nouveau/nouveau_fifo.c b/src/mesa/drivers/dri/nouveau/nouveau_fifo.c diff --git a/src/mesa/drivers/dri/nouveau/nouveau_fifo.h b/src/mesa/drivers/dri/nouveau/nouveau_fifo.h diff --git a/src/mesa/drivers/dri/nouveau/nouveau_lock.c b/src/mesa/drivers/dri/nouveau/nouveau_lock.c diff --git a/src/mesa/drivers/dri/nouveau/nouveau_lock.h b/src/mesa/drivers/dri/nouveau/nouveau_lock.h diff --git a/src/mesa/drivers/dri/nouveau/nouveau_mem.c b/src/mesa/drivers/dri/nouveau/nouveau_mem.c diff --git a/src/mesa/drivers/dri/nouveau/nouveau_mem.h b/src/mesa/drivers/dri/nouveau/nouveau_mem.h diff --git a/src/mesa/drivers/dri/nouveau/nouveau_msg.h b/src/mesa/drivers/dri/nouveau/nouveau_msg.h diff --git a/src/mesa/drivers/dri/nouveau/nouveau_object.c b/src/mesa/drivers/dri/nouveau/nouveau_object.c diff --git a/src/mesa/drivers/dri/nouveau/nouveau_object.h b/src/mesa/drivers/dri/nouveau/nouveau_object.h diff --git a/src/mesa/drivers/dri/nouveau/nouveau_query.c b/src/mesa/drivers/dri/nouveau/nouveau_query.c diff --git a/src/mesa/drivers/dri/nouveau/nouveau_query.h b/src/mesa/drivers/dri/nouveau/nouveau_query.h diff --git a/src/mesa/drivers/dri/nouveau/nouveau_reg.h b/src/mesa/drivers/dri/nouveau/nouveau_reg.h diff --git a/src/mesa/drivers/dri/nouveau/nouveau_screen.c b/src/mesa/drivers/dri/nouveau/nouveau_screen.c index 065aa81..ed12a5c 100644 --- a/src/mesa/drivers/dri/nouveau/nouveau_screen.c +++ b/src/mesa/drivers/dri/nouveau/nouveau_screen.c @@ -206,6 +206,7 @@ static const struct __DriverAPIRec nouveauAPI = { .UnbindContext = nouveauUnbindContext, .GetSwapInfo = nouveauGetSwapInfo, .GetMSC = driGetMSC32, + .GetDrawableMSC = driDrawableGetMSC32, .WaitForMSC = driWaitForMSC32, .WaitForSBC = NULL, .SwapBuffersMSC = NULL, diff --git a/src/mesa/drivers/dri/nouveau/nouveau_screen.h b/src/mesa/drivers/dri/nouveau/nouveau_screen.h diff --git a/src/mesa/drivers/dri/nouveau/nouveau_shader.c b/src/mesa/drivers/dri/nouveau/nouveau_shader.c diff --git a/src/mesa/drivers/dri/nouveau/nouveau_shader.h b/src/mesa/drivers/dri/nouveau/nouveau_shader.h diff --git a/src/mesa/drivers/dri/nouveau/nouveau_shader_0.c b/src/mesa/drivers/dri/nouveau/nouveau_shader_0.c diff --git a/src/mesa/drivers/dri/nouveau/nouveau_shader_1.c b/src/mesa/drivers/dri/nouveau/nouveau_shader_1.c diff --git a/src/mesa/drivers/dri/nouveau/nouveau_shader_2.c b/src/mesa/drivers/dri/nouveau/nouveau_shader_2.c diff --git a/src/mesa/drivers/dri/nouveau/nouveau_span.c b/src/mesa/drivers/dri/nouveau/nouveau_span.c diff --git a/src/mesa/drivers/dri/nouveau/nouveau_span.h b/src/mesa/drivers/dri/nouveau/nouveau_span.h diff --git a/src/mesa/drivers/dri/nouveau/nouveau_state.c b/src/mesa/drivers/dri/nouveau/nouveau_state.c diff --git a/src/mesa/drivers/dri/nouveau/nouveau_state.h b/src/mesa/drivers/dri/nouveau/nouveau_state.h diff --git a/src/mesa/drivers/dri/nouveau/nouveau_state_cache.c b/src/mesa/drivers/dri/nouveau/nouveau_state_cache.c diff --git a/src/mesa/drivers/dri/nouveau/nouveau_state_cache.h b/src/mesa/drivers/dri/nouveau/nouveau_state_cache.h diff --git a/src/mesa/drivers/dri/nouveau/nouveau_swtcl.c b/src/mesa/drivers/dri/nouveau/nouveau_swtcl.c diff --git a/src/mesa/drivers/dri/nouveau/nouveau_swtcl.h b/src/mesa/drivers/dri/nouveau/nouveau_swtcl.h diff --git a/src/mesa/drivers/dri/nouveau/nouveau_sync.c b/src/mesa/drivers/dri/nouveau/nouveau_sync.c diff --git a/src/mesa/drivers/dri/nouveau/nouveau_sync.h b/src/mesa/drivers/dri/nouveau/nouveau_sync.h diff --git a/src/mesa/drivers/dri/nouveau/nouveau_tex.c b/src/mesa/drivers/dri/nouveau/nouveau_tex.c diff --git a/src/mesa/drivers/dri/nouveau/nouveau_tex.h b/src/mesa/drivers/dri/nouveau/nouveau_tex.h diff --git a/src/mesa/drivers/dri/nouveau/nv04_state.c b/src/mesa/drivers/dri/nouveau/nv04_state.c diff --git a/src/mesa/drivers/dri/nouveau/nv04_swtcl.c b/src/mesa/drivers/dri/nouveau/nv04_swtcl.c diff --git a/src/mesa/drivers/dri/nouveau/nv04_swtcl.h b/src/mesa/drivers/dri/nouveau/nv04_swtcl.h diff --git a/src/mesa/drivers/dri/nouveau/nv10_state.c b/src/mesa/drivers/dri/nouveau/nv10_state.c diff --git a/src/mesa/drivers/dri/nouveau/nv10_swtcl.c b/src/mesa/drivers/dri/nouveau/nv10_swtcl.c diff --git a/src/mesa/drivers/dri/nouveau/nv10_swtcl.h b/src/mesa/drivers/dri/nouveau/nv10_swtcl.h diff --git a/src/mesa/drivers/dri/nouveau/nv20_shader.h b/src/mesa/drivers/dri/nouveau/nv20_shader.h diff --git a/src/mesa/drivers/dri/nouveau/nv20_state.c b/src/mesa/drivers/dri/nouveau/nv20_state.c diff --git a/src/mesa/drivers/dri/nouveau/nv20_vertprog.c b/src/mesa/drivers/dri/nouveau/nv20_vertprog.c diff --git a/src/mesa/drivers/dri/nouveau/nv30_fragprog.c b/src/mesa/drivers/dri/nouveau/nv30_fragprog.c diff --git a/src/mesa/drivers/dri/nouveau/nv30_shader.h b/src/mesa/drivers/dri/nouveau/nv30_shader.h diff --git a/src/mesa/drivers/dri/nouveau/nv30_state.c b/src/mesa/drivers/dri/nouveau/nv30_state.c diff --git a/src/mesa/drivers/dri/nouveau/nv30_vertprog.c b/src/mesa/drivers/dri/nouveau/nv30_vertprog.c diff --git a/src/mesa/drivers/dri/nouveau/nv40_fragprog.c b/src/mesa/drivers/dri/nouveau/nv40_fragprog.c diff --git a/src/mesa/drivers/dri/nouveau/nv40_shader.h b/src/mesa/drivers/dri/nouveau/nv40_shader.h diff --git a/src/mesa/drivers/dri/nouveau/nv40_vertprog.c b/src/mesa/drivers/dri/nouveau/nv40_vertprog.c diff --git a/src/mesa/drivers/dri/nouveau/nv50_state.c b/src/mesa/drivers/dri/nouveau/nv50_state.c diff --git a/src/mesa/drivers/dri/r128/Makefile b/src/mesa/drivers/dri/r128/Makefile diff --git a/src/mesa/drivers/dri/r128/r128_context.c b/src/mesa/drivers/dri/r128/r128_context.c index 95e54a6..667448a 100644 --- a/src/mesa/drivers/dri/r128/r128_context.c +++ b/src/mesa/drivers/dri/r128/r128_context.c @@ -113,6 +113,7 @@ GLboolean r128CreateContext( const __GLcontextModes *glVisual, { GLcontext *ctx, *shareCtx; __DRIscreenPrivate *sPriv = driContextPriv->driScreenPriv; + __DRIdrawablePrivate *dPriv = driContextPriv->driDrawablePriv; struct dd_function_table functions; r128ContextPtr rmesa; r128ScreenPtr r128scrn; @@ -262,7 +263,7 @@ GLboolean r128CreateContext( const __GLcontextModes *glVisual, r128DDInitSpanFuncs( ctx ); r128DDInitState( rmesa ); - rmesa->vblank_flags = (rmesa->r128Screen->irq != 0) + dPriv->vblFlags = (rmesa->r128Screen->irq != 0) ? driGetDefaultVBlankFlags(&rmesa->optionCache) : VBLANK_FLAG_NO_IRQ; driContextPriv->driverPrivate = (void *)rmesa; @@ -347,8 +348,7 @@ r128MakeCurrent( __DRIcontextPrivate *driContextPriv, newR128Ctx->dirty = R128_UPLOAD_ALL; } - driDrawableInitVBlank( driDrawPriv, newR128Ctx->vblank_flags, - &newR128Ctx->vbl_seq ); + driDrawableInitVBlank( driDrawPriv ); newR128Ctx->driDrawable = driDrawPriv; _mesa_make_current( newR128Ctx->glCtx, diff --git a/src/mesa/drivers/dri/r128/r128_context.h b/src/mesa/drivers/dri/r128/r128_context.h index c51dd7f..3f7416e 100644 --- a/src/mesa/drivers/dri/r128/r128_context.h +++ b/src/mesa/drivers/dri/r128/r128_context.h @@ -210,11 +210,6 @@ struct r128_context { GLuint c_textureBytes; GLuint c_vertexBuffers; - /* VBI - */ - GLuint vbl_seq; - GLuint vblank_flags; - /* Configuration cache */ driOptionCache optionCache; diff --git a/src/mesa/drivers/dri/r128/r128_dd.c b/src/mesa/drivers/dri/r128/r128_dd.c diff --git a/src/mesa/drivers/dri/r128/r128_dd.h b/src/mesa/drivers/dri/r128/r128_dd.h diff --git a/src/mesa/drivers/dri/r128/r128_ioctl.c b/src/mesa/drivers/dri/r128/r128_ioctl.c index b0dba7d..e04c087 100644 --- a/src/mesa/drivers/dri/r128/r128_ioctl.c +++ b/src/mesa/drivers/dri/r128/r128_ioctl.c @@ -249,7 +249,7 @@ static int r128WaitForFrameCompletion( r128ContextPtr rmesa ) /* Copy the back color buffer to the front color buffer. */ -void r128CopyBuffer( const __DRIdrawablePrivate *dPriv ) +void r128CopyBuffer( __DRIdrawablePrivate *dPriv ) { r128ContextPtr rmesa; GLint nbox, i, ret; @@ -282,7 +282,7 @@ void r128CopyBuffer( const __DRIdrawablePrivate *dPriv ) } UNLOCK_HARDWARE( rmesa ); - driWaitForVBlank( dPriv, &rmesa->vbl_seq, rmesa->vblank_flags, &missed_target ); + driWaitForVBlank( dPriv, &dPriv->vblSeq, dPriv->vblFlags, &missed_target ); LOCK_HARDWARE( rmesa ); nbox = dPriv->numClipRects; /* must be in locked region */ @@ -328,7 +328,7 @@ void r128CopyBuffer( const __DRIdrawablePrivate *dPriv ) #endif } -void r128PageFlip( const __DRIdrawablePrivate *dPriv ) +void r128PageFlip( __DRIdrawablePrivate *dPriv ) { r128ContextPtr rmesa; GLint ret; @@ -359,7 +359,7 @@ void r128PageFlip( const __DRIdrawablePrivate *dPriv ) } UNLOCK_HARDWARE( rmesa ); - driWaitForVBlank( dPriv, &rmesa->vbl_seq, rmesa->vblank_flags, &missed_target ); + driWaitForVBlank( dPriv, &dPriv->vblSeq, dPriv->vblFlags, &missed_target ); LOCK_HARDWARE( rmesa ); /* The kernel will have been initialized to perform page flipping diff --git a/src/mesa/drivers/dri/r128/r128_ioctl.h b/src/mesa/drivers/dri/r128/r128_ioctl.h index 95779f0..0f9d11f 100644 --- a/src/mesa/drivers/dri/r128/r128_ioctl.h +++ b/src/mesa/drivers/dri/r128/r128_ioctl.h @@ -86,8 +86,8 @@ extern void r128ReadDepthSpanLocked( r128ContextPtr rmesa, extern void r128ReadDepthPixelsLocked( r128ContextPtr rmesa, GLuint n, const GLint x[], const GLint y[] ); -extern void r128CopyBuffer( const __DRIdrawablePrivate *dPriv ); -extern void r128PageFlip( const __DRIdrawablePrivate *dPriv ); +extern void r128CopyBuffer( __DRIdrawablePrivate *dPriv ); +extern void r128PageFlip( __DRIdrawablePrivate *dPriv ); void r128WaitForVBlank( r128ContextPtr rmesa ); extern void r128WaitForIdleLocked( r128ContextPtr rmesa ); diff --git a/src/mesa/drivers/dri/r128/r128_lock.c b/src/mesa/drivers/dri/r128/r128_lock.c diff --git a/src/mesa/drivers/dri/r128/r128_lock.h b/src/mesa/drivers/dri/r128/r128_lock.h diff --git a/src/mesa/drivers/dri/r128/r128_screen.c b/src/mesa/drivers/dri/r128/r128_screen.c index 880dee8..fed7f4c 100644 --- a/src/mesa/drivers/dri/r128/r128_screen.c +++ b/src/mesa/drivers/dri/r128/r128_screen.c @@ -415,6 +415,7 @@ static struct __DriverAPIRec r128API = { .UnbindContext = r128UnbindContext, .GetSwapInfo = NULL, .GetMSC = driGetMSC32, + .GetDrawableMSC = driDrawableGetMSC32, .WaitForMSC = driWaitForMSC32, .WaitForSBC = NULL, .SwapBuffersMSC = NULL diff --git a/src/mesa/drivers/dri/r128/r128_screen.h b/src/mesa/drivers/dri/r128/r128_screen.h diff --git a/src/mesa/drivers/dri/r128/r128_span.c b/src/mesa/drivers/dri/r128/r128_span.c diff --git a/src/mesa/drivers/dri/r128/r128_span.h b/src/mesa/drivers/dri/r128/r128_span.h diff --git a/src/mesa/drivers/dri/r128/r128_state.c b/src/mesa/drivers/dri/r128/r128_state.c diff --git a/src/mesa/drivers/dri/r128/r128_state.h b/src/mesa/drivers/dri/r128/r128_state.h diff --git a/src/mesa/drivers/dri/r128/r128_tex.c b/src/mesa/drivers/dri/r128/r128_tex.c diff --git a/src/mesa/drivers/dri/r128/r128_tex.h b/src/mesa/drivers/dri/r128/r128_tex.h diff --git a/src/mesa/drivers/dri/r128/r128_texmem.c b/src/mesa/drivers/dri/r128/r128_texmem.c diff --git a/src/mesa/drivers/dri/r128/r128_texobj.h b/src/mesa/drivers/dri/r128/r128_texobj.h diff --git a/src/mesa/drivers/dri/r128/r128_texstate.c b/src/mesa/drivers/dri/r128/r128_texstate.c diff --git a/src/mesa/drivers/dri/r128/r128_tris.c b/src/mesa/drivers/dri/r128/r128_tris.c diff --git a/src/mesa/drivers/dri/r128/r128_tris.h b/src/mesa/drivers/dri/r128/r128_tris.h diff --git a/src/mesa/drivers/dri/r128/server/pci_ids.h b/src/mesa/drivers/dri/r128/server/pci_ids.h diff --git a/src/mesa/drivers/dri/r128/server/r128.h b/src/mesa/drivers/dri/r128/server/r128.h diff --git a/src/mesa/drivers/dri/r128/server/r128_dri.c b/src/mesa/drivers/dri/r128/server/r128_dri.c diff --git a/src/mesa/drivers/dri/r128/server/r128_dri.h b/src/mesa/drivers/dri/r128/server/r128_dri.h diff --git a/src/mesa/drivers/dri/r128/server/r128_macros.h b/src/mesa/drivers/dri/r128/server/r128_macros.h diff --git a/src/mesa/drivers/dri/r128/server/r128_reg.h b/src/mesa/drivers/dri/r128/server/r128_reg.h diff --git a/src/mesa/drivers/dri/r128/server/r128_version.h b/src/mesa/drivers/dri/r128/server/r128_version.h diff --git a/src/mesa/drivers/dri/r200/.gitignore b/src/mesa/drivers/dri/r200/.gitignore diff --git a/src/mesa/drivers/dri/r200/Doxyfile b/src/mesa/drivers/dri/r200/Doxyfile diff --git a/src/mesa/drivers/dri/r200/Makefile b/src/mesa/drivers/dri/r200/Makefile diff --git a/src/mesa/drivers/dri/r200/r200_cmdbuf.c b/src/mesa/drivers/dri/r200/r200_cmdbuf.c diff --git a/src/mesa/drivers/dri/r200/r200_context.c b/src/mesa/drivers/dri/r200/r200_context.c index 5a17844..ff9024c 100644 --- a/src/mesa/drivers/dri/r200/r200_context.c +++ b/src/mesa/drivers/dri/r200/r200_context.c @@ -248,6 +248,7 @@ GLboolean r200CreateContext( const __GLcontextModes *glVisual, void *sharedContextPrivate) { __DRIscreenPrivate *sPriv = driContextPriv->driScreenPriv; + __DRIdrawablePrivate *dPriv = driContextPriv->driDrawablePriv; radeonScreenPtr screen = (radeonScreenPtr)(sPriv->private); struct dd_function_table functions; r200ContextPtr rmesa; @@ -499,7 +500,7 @@ GLboolean r200CreateContext( const __GLcontextModes *glVisual, fthrottle_mode, rmesa->r200Screen->irq); - rmesa->vblank_flags = (rmesa->r200Screen->irq != 0) + dPriv->vblFlags = (rmesa->r200Screen->irq != 0) ? driGetDefaultVBlankFlags(&rmesa->optionCache) : VBLANK_FLAG_NO_IRQ; rmesa->prefer_gart_client_texturing = @@ -667,8 +668,7 @@ r200MakeCurrent( __DRIcontextPrivate *driContextPriv, fprintf(stderr, "%s ctx %p\n", __FUNCTION__, (void *)newCtx->glCtx); if ( newCtx->dri.drawable != driDrawPriv ) { - driDrawableInitVBlank( driDrawPriv, newCtx->vblank_flags, - &newCtx->vbl_seq ); + driDrawableInitVBlank( driDrawPriv ); } newCtx->dri.readable = driReadPriv; diff --git a/src/mesa/drivers/dri/r200/r200_context.h b/src/mesa/drivers/dri/r200/r200_context.h index bec09e8..b319795 100644 --- a/src/mesa/drivers/dri/r200/r200_context.h +++ b/src/mesa/drivers/dri/r200/r200_context.h @@ -892,11 +892,8 @@ struct r200_context { GLuint TexGenCompSel; GLmatrix tmpmat; - /* VBI / buffer swap + /* buffer swap */ - GLuint vbl_seq; - GLuint vblank_flags; - int64_t swap_ust; int64_t swap_missed_ust; diff --git a/src/mesa/drivers/dri/r200/r200_fragshader.c b/src/mesa/drivers/dri/r200/r200_fragshader.c diff --git a/src/mesa/drivers/dri/r200/r200_ioctl.c b/src/mesa/drivers/dri/r200/r200_ioctl.c index 2366bde..3c44b4b 100644 --- a/src/mesa/drivers/dri/r200/r200_ioctl.c +++ b/src/mesa/drivers/dri/r200/r200_ioctl.c @@ -419,7 +419,7 @@ static void r200WaitForFrameCompletion( r200ContextPtr rmesa ) /* Copy the back color buffer to the front color buffer. */ -void r200CopyBuffer( const __DRIdrawablePrivate *dPriv, +void r200CopyBuffer( __DRIdrawablePrivate *dPriv, const drm_clip_rect_t *rect) { r200ContextPtr rmesa; @@ -449,7 +449,7 @@ void r200CopyBuffer( const __DRIdrawablePrivate *dPriv, if (!rect) { UNLOCK_HARDWARE( rmesa ); - driWaitForVBlank( dPriv, & rmesa->vbl_seq, rmesa->vblank_flags, & missed_target ); + driWaitForVBlank( dPriv, & dPriv->vblSeq, dPriv->vblFlags, & missed_target ); LOCK_HARDWARE( rmesa ); } @@ -513,7 +513,7 @@ void r200CopyBuffer( const __DRIdrawablePrivate *dPriv, } } -void r200PageFlip( const __DRIdrawablePrivate *dPriv ) +void r200PageFlip( __DRIdrawablePrivate *dPriv ) { r200ContextPtr rmesa; GLint ret; @@ -553,7 +553,7 @@ void r200PageFlip( const __DRIdrawablePrivate *dPriv ) */ r200WaitForFrameCompletion( rmesa ); UNLOCK_HARDWARE( rmesa ); - driWaitForVBlank( dPriv, & rmesa->vbl_seq, rmesa->vblank_flags, & missed_target ); + driWaitForVBlank( dPriv, & dPriv->vblSeq, dPriv->vblFlags, & missed_target ); if ( missed_target ) { rmesa->swap_missed_count++; (void) (*dri_interface->getUST)( & rmesa->swap_missed_ust ); diff --git a/src/mesa/drivers/dri/r200/r200_ioctl.h b/src/mesa/drivers/dri/r200/r200_ioctl.h index 5ed1555..9b6d6ee 100644 --- a/src/mesa/drivers/dri/r200/r200_ioctl.h +++ b/src/mesa/drivers/dri/r200/r200_ioctl.h @@ -89,9 +89,9 @@ extern void r200ReleaseDmaRegion( r200ContextPtr rmesa, struct r200_dma_region *region, const char *caller ); -extern void r200CopyBuffer( const __DRIdrawablePrivate *drawable, +extern void r200CopyBuffer( __DRIdrawablePrivate *drawable, const drm_clip_rect_t *rect); -extern void r200PageFlip( const __DRIdrawablePrivate *drawable ); +extern void r200PageFlip( __DRIdrawablePrivate *drawable ); extern void r200Flush( GLcontext *ctx ); extern void r200Finish( GLcontext *ctx ); extern void r200WaitForIdleLocked( r200ContextPtr rmesa ); diff --git a/src/mesa/drivers/dri/r200/r200_lock.c b/src/mesa/drivers/dri/r200/r200_lock.c diff --git a/src/mesa/drivers/dri/r200/r200_lock.h b/src/mesa/drivers/dri/r200/r200_lock.h diff --git a/src/mesa/drivers/dri/r200/r200_maos.c b/src/mesa/drivers/dri/r200/r200_maos.c diff --git a/src/mesa/drivers/dri/r200/r200_maos.h b/src/mesa/drivers/dri/r200/r200_maos.h diff --git a/src/mesa/drivers/dri/r200/r200_maos_arrays.c b/src/mesa/drivers/dri/r200/r200_maos_arrays.c diff --git a/src/mesa/drivers/dri/r200/r200_pixel.c b/src/mesa/drivers/dri/r200/r200_pixel.c diff --git a/src/mesa/drivers/dri/r200/r200_pixel.h b/src/mesa/drivers/dri/r200/r200_pixel.h diff --git a/src/mesa/drivers/dri/r200/r200_reg.h b/src/mesa/drivers/dri/r200/r200_reg.h diff --git a/src/mesa/drivers/dri/r200/r200_sanity.c b/src/mesa/drivers/dri/r200/r200_sanity.c diff --git a/src/mesa/drivers/dri/r200/r200_sanity.h b/src/mesa/drivers/dri/r200/r200_sanity.h diff --git a/src/mesa/drivers/dri/r200/r200_span.c b/src/mesa/drivers/dri/r200/r200_span.c diff --git a/src/mesa/drivers/dri/r200/r200_span.h b/src/mesa/drivers/dri/r200/r200_span.h diff --git a/src/mesa/drivers/dri/r200/r200_state.c b/src/mesa/drivers/dri/r200/r200_state.c diff --git a/src/mesa/drivers/dri/r200/r200_state.h b/src/mesa/drivers/dri/r200/r200_state.h diff --git a/src/mesa/drivers/dri/r200/r200_state_init.c b/src/mesa/drivers/dri/r200/r200_state_init.c diff --git a/src/mesa/drivers/dri/r200/r200_swtcl.c b/src/mesa/drivers/dri/r200/r200_swtcl.c diff --git a/src/mesa/drivers/dri/r200/r200_swtcl.h b/src/mesa/drivers/dri/r200/r200_swtcl.h diff --git a/src/mesa/drivers/dri/r200/r200_tcl.c b/src/mesa/drivers/dri/r200/r200_tcl.c diff --git a/src/mesa/drivers/dri/r200/r200_tcl.h b/src/mesa/drivers/dri/r200/r200_tcl.h diff --git a/src/mesa/drivers/dri/r200/r200_tex.c b/src/mesa/drivers/dri/r200/r200_tex.c diff --git a/src/mesa/drivers/dri/r200/r200_tex.h b/src/mesa/drivers/dri/r200/r200_tex.h diff --git a/src/mesa/drivers/dri/r200/r200_texmem.c b/src/mesa/drivers/dri/r200/r200_texmem.c diff --git a/src/mesa/drivers/dri/r200/r200_texstate.c b/src/mesa/drivers/dri/r200/r200_texstate.c diff --git a/src/mesa/drivers/dri/r200/r200_vertprog.c b/src/mesa/drivers/dri/r200/r200_vertprog.c diff --git a/src/mesa/drivers/dri/r200/r200_vertprog.h b/src/mesa/drivers/dri/r200/r200_vertprog.h diff --git a/src/mesa/drivers/dri/r300/.gitignore b/src/mesa/drivers/dri/r300/.gitignore diff --git a/src/mesa/drivers/dri/r300/Lindent b/src/mesa/drivers/dri/r300/Lindent diff --git a/src/mesa/drivers/dri/r300/Makefile b/src/mesa/drivers/dri/r300/Makefile diff --git a/src/mesa/drivers/dri/r300/r300_cmdbuf.c b/src/mesa/drivers/dri/r300/r300_cmdbuf.c diff --git a/src/mesa/drivers/dri/r300/r300_cmdbuf.h b/src/mesa/drivers/dri/r300/r300_cmdbuf.h diff --git a/src/mesa/drivers/dri/r300/r300_context.c b/src/mesa/drivers/dri/r300/r300_context.c diff --git a/src/mesa/drivers/dri/r300/r300_context.h b/src/mesa/drivers/dri/r300/r300_context.h diff --git a/src/mesa/drivers/dri/r300/r300_emit.c b/src/mesa/drivers/dri/r300/r300_emit.c diff --git a/src/mesa/drivers/dri/r300/r300_emit.h b/src/mesa/drivers/dri/r300/r300_emit.h diff --git a/src/mesa/drivers/dri/r300/r300_fragprog.c b/src/mesa/drivers/dri/r300/r300_fragprog.c diff --git a/src/mesa/drivers/dri/r300/r300_fragprog.h b/src/mesa/drivers/dri/r300/r300_fragprog.h diff --git a/src/mesa/drivers/dri/r300/r300_ioctl.c b/src/mesa/drivers/dri/r300/r300_ioctl.c diff --git a/src/mesa/drivers/dri/r300/r300_ioctl.h b/src/mesa/drivers/dri/r300/r300_ioctl.h diff --git a/src/mesa/drivers/dri/r300/r300_mem.c b/src/mesa/drivers/dri/r300/r300_mem.c diff --git a/src/mesa/drivers/dri/r300/r300_mem.h b/src/mesa/drivers/dri/r300/r300_mem.h diff --git a/src/mesa/drivers/dri/r300/r300_program.h b/src/mesa/drivers/dri/r300/r300_program.h diff --git a/src/mesa/drivers/dri/r300/r300_reg.h b/src/mesa/drivers/dri/r300/r300_reg.h diff --git a/src/mesa/drivers/dri/r300/r300_render.c b/src/mesa/drivers/dri/r300/r300_render.c diff --git a/src/mesa/drivers/dri/r300/r300_shader.c b/src/mesa/drivers/dri/r300/r300_shader.c diff --git a/src/mesa/drivers/dri/r300/r300_state.c b/src/mesa/drivers/dri/r300/r300_state.c diff --git a/src/mesa/drivers/dri/r300/r300_state.h b/src/mesa/drivers/dri/r300/r300_state.h diff --git a/src/mesa/drivers/dri/r300/r300_swtcl.c b/src/mesa/drivers/dri/r300/r300_swtcl.c diff --git a/src/mesa/drivers/dri/r300/r300_swtcl.h b/src/mesa/drivers/dri/r300/r300_swtcl.h diff --git a/src/mesa/drivers/dri/r300/r300_tex.c b/src/mesa/drivers/dri/r300/r300_tex.c diff --git a/src/mesa/drivers/dri/r300/r300_tex.h b/src/mesa/drivers/dri/r300/r300_tex.h diff --git a/src/mesa/drivers/dri/r300/r300_texmem.c b/src/mesa/drivers/dri/r300/r300_texmem.c diff --git a/src/mesa/drivers/dri/r300/r300_texstate.c b/src/mesa/drivers/dri/r300/r300_texstate.c diff --git a/src/mesa/drivers/dri/r300/r300_vertprog.c b/src/mesa/drivers/dri/r300/r300_vertprog.c diff --git a/src/mesa/drivers/dri/r300/r300_vertprog.h b/src/mesa/drivers/dri/r300/r300_vertprog.h diff --git a/src/mesa/drivers/dri/r300/radeon_context.c b/src/mesa/drivers/dri/r300/radeon_context.c index e9634b4..8d33dd1 100644 --- a/src/mesa/drivers/dri/r300/radeon_context.c +++ b/src/mesa/drivers/dri/r300/radeon_context.c @@ -127,6 +127,7 @@ GLboolean radeonInitContext(radeonContextPtr radeon, void *sharedContextPrivate) { __DRIscreenPrivate *sPriv = driContextPriv->driScreenPriv; + __DRIdrawablePrivate *dPriv = driContextPriv->driDrawablePriv; radeonScreenPtr screen = (radeonScreenPtr) (sPriv->private); GLcontext* ctx; GLcontext* shareCtx; @@ -177,7 +178,7 @@ GLboolean radeonInitContext(radeonContextPtr radeon, radeon->do_usleeps ? "usleeps" : "busy waits", fthrottle_mode, radeon->radeonScreen->irq); - radeon->vblank_flags = (radeon->radeonScreen->irq != 0) + dPriv->vblFlags = (radeon->radeonScreen->irq != 0) ? driGetDefaultVBlankFlags(&radeon->optionCache) : VBLANK_FLAG_NO_IRQ; (*dri_interface->getUST) (&radeon->swap_ust); @@ -277,9 +278,7 @@ GLboolean radeonMakeCurrent(__DRIcontextPrivate * driContextPriv, radeon->glCtx); if (radeon->dri.drawable != driDrawPriv) { - driDrawableInitVBlank(driDrawPriv, - radeon->vblank_flags, - &radeon->vbl_seq); + driDrawableInitVBlank(driDrawPriv); } radeon->dri.readable = driReadPriv; diff --git a/src/mesa/drivers/dri/r300/radeon_context.h b/src/mesa/drivers/dri/r300/radeon_context.h index 2f23941..38d8930 100644 --- a/src/mesa/drivers/dri/r300/radeon_context.h +++ b/src/mesa/drivers/dri/r300/radeon_context.h @@ -182,10 +182,7 @@ struct radeon_context { GLuint irqsEmitted; drm_radeon_irq_wait_t iw; - /* VBI / buffer swap */ - GLuint vbl_seq; - GLuint vblank_flags; - + /* buffer swap */ int64_t swap_ust; int64_t swap_missed_ust; diff --git a/src/mesa/drivers/dri/r300/radeon_ioctl.c b/src/mesa/drivers/dri/r300/radeon_ioctl.c index 0b8656b..eeef71a 100644 --- a/src/mesa/drivers/dri/r300/radeon_ioctl.c +++ b/src/mesa/drivers/dri/r300/radeon_ioctl.c @@ -157,7 +157,7 @@ static void radeonWaitForFrameCompletion(radeonContextPtr radeon) /* Copy the back color buffer to the front color buffer. */ -void radeonCopyBuffer(const __DRIdrawablePrivate * dPriv, +void radeonCopyBuffer(__DRIdrawablePrivate * dPriv, const drm_clip_rect_t * rect) { radeonContextPtr radeon; @@ -187,7 +187,7 @@ void radeonCopyBuffer(const __DRIdrawablePrivate * dPriv, if (!rect) { UNLOCK_HARDWARE(radeon); - driWaitForVBlank(dPriv, &radeon->vbl_seq, radeon->vblank_flags, + driWaitForVBlank(dPriv, &dPriv->vblSeq, dPriv->vblFlags, &missed_target); LOCK_HARDWARE(radeon); } @@ -253,7 +253,7 @@ void radeonCopyBuffer(const __DRIdrawablePrivate * dPriv, } } -void radeonPageFlip(const __DRIdrawablePrivate * dPriv) +void radeonPageFlip(__DRIdrawablePrivate * dPriv) { radeonContextPtr radeon; GLint ret; @@ -293,7 +293,7 @@ void radeonPageFlip(const __DRIdrawablePrivate * dPriv) */ radeonWaitForFrameCompletion(radeon); UNLOCK_HARDWARE(radeon); - driWaitForVBlank(dPriv, &radeon->vbl_seq, radeon->vblank_flags, + driWaitForVBlank(dPriv, &dPriv->vblSeq, dPriv->vblFlags, &missed_target); if (missed_target) { radeon->swap_missed_count++; diff --git a/src/mesa/drivers/dri/r300/radeon_ioctl.h b/src/mesa/drivers/dri/r300/radeon_ioctl.h index 3a80d36..210001e 100644 --- a/src/mesa/drivers/dri/r300/radeon_ioctl.h +++ b/src/mesa/drivers/dri/r300/radeon_ioctl.h @@ -46,9 +46,9 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #endif #include "radeon_drm.h" -extern void radeonCopyBuffer(const __DRIdrawablePrivate * drawable, +extern void radeonCopyBuffer(__DRIdrawablePrivate * drawable, const drm_clip_rect_t * rect); -extern void radeonPageFlip(const __DRIdrawablePrivate * drawable); +extern void radeonPageFlip(__DRIdrawablePrivate * drawable); extern void radeonFlush(GLcontext * ctx); extern void radeonFinish(GLcontext * ctx); extern void radeonWaitForIdleLocked(radeonContextPtr radeon); diff --git a/src/mesa/drivers/dri/r300/radeon_lock.c b/src/mesa/drivers/dri/r300/radeon_lock.c diff --git a/src/mesa/drivers/dri/r300/radeon_lock.h b/src/mesa/drivers/dri/r300/radeon_lock.h diff --git a/src/mesa/drivers/dri/r300/radeon_span.c b/src/mesa/drivers/dri/r300/radeon_span.c diff --git a/src/mesa/drivers/dri/r300/radeon_state.c b/src/mesa/drivers/dri/r300/radeon_state.c diff --git a/src/mesa/drivers/dri/r300/radeon_state.h b/src/mesa/drivers/dri/r300/radeon_state.h diff --git a/src/mesa/drivers/dri/radeon/Makefile b/src/mesa/drivers/dri/radeon/Makefile diff --git a/src/mesa/drivers/dri/radeon/radeon_chipset.h b/src/mesa/drivers/dri/radeon/radeon_chipset.h diff --git a/src/mesa/drivers/dri/radeon/radeon_compat.c b/src/mesa/drivers/dri/radeon/radeon_compat.c diff --git a/src/mesa/drivers/dri/radeon/radeon_context.c b/src/mesa/drivers/dri/radeon/radeon_context.c index b302275..73b70c4 100644 --- a/src/mesa/drivers/dri/radeon/radeon_context.c +++ b/src/mesa/drivers/dri/radeon/radeon_context.c @@ -594,8 +594,7 @@ radeonMakeCurrent( __DRIcontextPrivate *driContextPriv, if ( newCtx->dri.drawable != driDrawPriv ) { /* XXX we may need to validate the drawable here!!! */ - driDrawableInitVBlank( driDrawPriv, newCtx->vblank_flags, - &newCtx->vbl_seq ); + driDrawableInitVBlank( driDrawPriv ); } newCtx->dri.readable = driReadPriv; diff --git a/src/mesa/drivers/dri/radeon/radeon_context.h b/src/mesa/drivers/dri/radeon/radeon_context.h diff --git a/src/mesa/drivers/dri/radeon/radeon_ioctl.c b/src/mesa/drivers/dri/radeon/radeon_ioctl.c diff --git a/src/mesa/drivers/dri/radeon/radeon_ioctl.h b/src/mesa/drivers/dri/radeon/radeon_ioctl.h diff --git a/src/mesa/drivers/dri/radeon/radeon_lighting.c b/src/mesa/drivers/dri/radeon/radeon_lighting.c diff --git a/src/mesa/drivers/dri/radeon/radeon_lock.c b/src/mesa/drivers/dri/radeon/radeon_lock.c diff --git a/src/mesa/drivers/dri/radeon/radeon_lock.h b/src/mesa/drivers/dri/radeon/radeon_lock.h diff --git a/src/mesa/drivers/dri/radeon/radeon_maos.c b/src/mesa/drivers/dri/radeon/radeon_maos.c diff --git a/src/mesa/drivers/dri/radeon/radeon_maos.h b/src/mesa/drivers/dri/radeon/radeon_maos.h diff --git a/src/mesa/drivers/dri/radeon/radeon_maos_arrays.c b/src/mesa/drivers/dri/radeon/radeon_maos_arrays.c diff --git a/src/mesa/drivers/dri/radeon/radeon_maos_vbtmp.h b/src/mesa/drivers/dri/radeon/radeon_maos_vbtmp.h diff --git a/src/mesa/drivers/dri/radeon/radeon_maos_verts.c b/src/mesa/drivers/dri/radeon/radeon_maos_verts.c diff --git a/src/mesa/drivers/dri/radeon/radeon_sanity.c b/src/mesa/drivers/dri/radeon/radeon_sanity.c diff --git a/src/mesa/drivers/dri/radeon/radeon_sanity.h b/src/mesa/drivers/dri/radeon/radeon_sanity.h diff --git a/src/mesa/drivers/dri/radeon/radeon_screen.c b/src/mesa/drivers/dri/radeon/radeon_screen.c index aa7fb63..c5362ee 100644 --- a/src/mesa/drivers/dri/radeon/radeon_screen.c +++ b/src/mesa/drivers/dri/radeon/radeon_screen.c @@ -949,6 +949,7 @@ static struct __DriverAPIRec radeonAPI = { .UnbindContext = radeonUnbindContext, .GetSwapInfo = getSwapInfo, .GetMSC = driGetMSC32, + .GetDrawableMSC = driDrawableGetMSC32, .WaitForMSC = driWaitForMSC32, .WaitForSBC = NULL, .SwapBuffersMSC = NULL, @@ -970,6 +971,7 @@ static const struct __DriverAPIRec r200API = { .UnbindContext = r200UnbindContext, .GetSwapInfo = getSwapInfo, .GetMSC = driGetMSC32, + .GetDrawableMSC = driDrawableGetMSC32, .WaitForMSC = driWaitForMSC32, .WaitForSBC = NULL, .SwapBuffersMSC = NULL, diff --git a/src/mesa/drivers/dri/radeon/radeon_screen.h b/src/mesa/drivers/dri/radeon/radeon_screen.h diff --git a/src/mesa/drivers/dri/radeon/radeon_span.c b/src/mesa/drivers/dri/radeon/radeon_span.c diff --git a/src/mesa/drivers/dri/radeon/radeon_span.h b/src/mesa/drivers/dri/radeon/radeon_span.h diff --git a/src/mesa/drivers/dri/radeon/radeon_state.c b/src/mesa/drivers/dri/radeon/radeon_state.c diff --git a/src/mesa/drivers/dri/radeon/radeon_state.h b/src/mesa/drivers/dri/radeon/radeon_state.h diff --git a/src/mesa/drivers/dri/radeon/radeon_state_init.c b/src/mesa/drivers/dri/radeon/radeon_state_init.c diff --git a/src/mesa/drivers/dri/radeon/radeon_swtcl.c b/src/mesa/drivers/dri/radeon/radeon_swtcl.c diff --git a/src/mesa/drivers/dri/radeon/radeon_swtcl.h b/src/mesa/drivers/dri/radeon/radeon_swtcl.h diff --git a/src/mesa/drivers/dri/radeon/radeon_tcl.c b/src/mesa/drivers/dri/radeon/radeon_tcl.c diff --git a/src/mesa/drivers/dri/radeon/radeon_tcl.h b/src/mesa/drivers/dri/radeon/radeon_tcl.h diff --git a/src/mesa/drivers/dri/radeon/radeon_tex.c b/src/mesa/drivers/dri/radeon/radeon_tex.c diff --git a/src/mesa/drivers/dri/radeon/radeon_tex.h b/src/mesa/drivers/dri/radeon/radeon_tex.h diff --git a/src/mesa/drivers/dri/radeon/radeon_texmem.c b/src/mesa/drivers/dri/radeon/radeon_texmem.c diff --git a/src/mesa/drivers/dri/radeon/radeon_texstate.c b/src/mesa/drivers/dri/radeon/radeon_texstate.c diff --git a/src/mesa/drivers/dri/radeon/server/radeon.h b/src/mesa/drivers/dri/radeon/server/radeon.h diff --git a/src/mesa/drivers/dri/radeon/server/radeon_dri.c b/src/mesa/drivers/dri/radeon/server/radeon_dri.c diff --git a/src/mesa/drivers/dri/radeon/server/radeon_dri.h b/src/mesa/drivers/dri/radeon/server/radeon_dri.h diff --git a/src/mesa/drivers/dri/radeon/server/radeon_egl.c b/src/mesa/drivers/dri/radeon/server/radeon_egl.c diff --git a/src/mesa/drivers/dri/radeon/server/radeon_macros.h b/src/mesa/drivers/dri/radeon/server/radeon_macros.h diff --git a/src/mesa/drivers/dri/radeon/server/radeon_reg.h b/src/mesa/drivers/dri/radeon/server/radeon_reg.h diff --git a/src/mesa/drivers/dri/s3v/Makefile b/src/mesa/drivers/dri/s3v/Makefile diff --git a/src/mesa/drivers/dri/s3v/s3v_common.h b/src/mesa/drivers/dri/s3v/s3v_common.h diff --git a/src/mesa/drivers/dri/s3v/s3v_context.c b/src/mesa/drivers/dri/s3v/s3v_context.c diff --git a/src/mesa/drivers/dri/s3v/s3v_context.h b/src/mesa/drivers/dri/s3v/s3v_context.h diff --git a/src/mesa/drivers/dri/s3v/s3v_dd.c b/src/mesa/drivers/dri/s3v/s3v_dd.c diff --git a/src/mesa/drivers/dri/s3v/s3v_dri.h b/src/mesa/drivers/dri/s3v/s3v_dri.h diff --git a/src/mesa/drivers/dri/s3v/s3v_inithw.c b/src/mesa/drivers/dri/s3v/s3v_inithw.c diff --git a/src/mesa/drivers/dri/s3v/s3v_lock.c b/src/mesa/drivers/dri/s3v/s3v_lock.c diff --git a/src/mesa/drivers/dri/s3v/s3v_lock.h b/src/mesa/drivers/dri/s3v/s3v_lock.h diff --git a/src/mesa/drivers/dri/s3v/s3v_macros.h b/src/mesa/drivers/dri/s3v/s3v_macros.h diff --git a/src/mesa/drivers/dri/s3v/s3v_regs.h b/src/mesa/drivers/dri/s3v/s3v_regs.h diff --git a/src/mesa/drivers/dri/s3v/s3v_render.c b/src/mesa/drivers/dri/s3v/s3v_render.c diff --git a/src/mesa/drivers/dri/s3v/s3v_screen.c b/src/mesa/drivers/dri/s3v/s3v_screen.c diff --git a/src/mesa/drivers/dri/s3v/s3v_screen.h b/src/mesa/drivers/dri/s3v/s3v_screen.h diff --git a/src/mesa/drivers/dri/s3v/s3v_span.c b/src/mesa/drivers/dri/s3v/s3v_span.c diff --git a/src/mesa/drivers/dri/s3v/s3v_state.c b/src/mesa/drivers/dri/s3v/s3v_state.c diff --git a/src/mesa/drivers/dri/s3v/s3v_tex.c b/src/mesa/drivers/dri/s3v/s3v_tex.c diff --git a/src/mesa/drivers/dri/s3v/s3v_tex.h b/src/mesa/drivers/dri/s3v/s3v_tex.h diff --git a/src/mesa/drivers/dri/s3v/s3v_texmem.c b/src/mesa/drivers/dri/s3v/s3v_texmem.c diff --git a/src/mesa/drivers/dri/s3v/s3v_texstate.c b/src/mesa/drivers/dri/s3v/s3v_texstate.c diff --git a/src/mesa/drivers/dri/s3v/s3v_tris.c b/src/mesa/drivers/dri/s3v/s3v_tris.c diff --git a/src/mesa/drivers/dri/s3v/s3v_tris.h b/src/mesa/drivers/dri/s3v/s3v_tris.h diff --git a/src/mesa/drivers/dri/s3v/s3v_tritmp.h b/src/mesa/drivers/dri/s3v/s3v_tritmp.h diff --git a/src/mesa/drivers/dri/s3v/s3v_vb.c b/src/mesa/drivers/dri/s3v/s3v_vb.c diff --git a/src/mesa/drivers/dri/s3v/s3v_vb.h b/src/mesa/drivers/dri/s3v/s3v_vb.h diff --git a/src/mesa/drivers/dri/s3v/s3v_xmesa.c b/src/mesa/drivers/dri/s3v/s3v_xmesa.c diff --git a/src/mesa/drivers/dri/s3v/s3virgetri.h b/src/mesa/drivers/dri/s3v/s3virgetri.h diff --git a/src/mesa/drivers/dri/savage/Makefile b/src/mesa/drivers/dri/savage/Makefile diff --git a/src/mesa/drivers/dri/savage/savage_3d_reg.h b/src/mesa/drivers/dri/savage/savage_3d_reg.h diff --git a/src/mesa/drivers/dri/savage/savage_bci.h b/src/mesa/drivers/dri/savage/savage_bci.h diff --git a/src/mesa/drivers/dri/savage/savage_init.h b/src/mesa/drivers/dri/savage/savage_init.h diff --git a/src/mesa/drivers/dri/savage/savage_xmesa.c b/src/mesa/drivers/dri/savage/savage_xmesa.c diff --git a/src/mesa/drivers/dri/savage/savagecontext.h b/src/mesa/drivers/dri/savage/savagecontext.h diff --git a/src/mesa/drivers/dri/savage/savagedd.c b/src/mesa/drivers/dri/savage/savagedd.c diff --git a/src/mesa/drivers/dri/savage/savagedd.h b/src/mesa/drivers/dri/savage/savagedd.h diff --git a/src/mesa/drivers/dri/savage/savageioctl.c b/src/mesa/drivers/dri/savage/savageioctl.c diff --git a/src/mesa/drivers/dri/savage/savageioctl.h b/src/mesa/drivers/dri/savage/savageioctl.h diff --git a/src/mesa/drivers/dri/savage/savagerender.c b/src/mesa/drivers/dri/savage/savagerender.c diff --git a/src/mesa/drivers/dri/savage/savagespan.c b/src/mesa/drivers/dri/savage/savagespan.c diff --git a/src/mesa/drivers/dri/savage/savagespan.h b/src/mesa/drivers/dri/savage/savagespan.h diff --git a/src/mesa/drivers/dri/savage/savagestate.c b/src/mesa/drivers/dri/savage/savagestate.c diff --git a/src/mesa/drivers/dri/savage/savagestate.h b/src/mesa/drivers/dri/savage/savagestate.h diff --git a/src/mesa/drivers/dri/savage/savagetex.c b/src/mesa/drivers/dri/savage/savagetex.c diff --git a/src/mesa/drivers/dri/savage/savagetex.h b/src/mesa/drivers/dri/savage/savagetex.h diff --git a/src/mesa/drivers/dri/savage/savagetris.c b/src/mesa/drivers/dri/savage/savagetris.c diff --git a/src/mesa/drivers/dri/savage/savagetris.h b/src/mesa/drivers/dri/savage/savagetris.h diff --git a/src/mesa/drivers/dri/savage/server/savage_dri.h b/src/mesa/drivers/dri/savage/server/savage_dri.h diff --git a/src/mesa/drivers/dri/sis/Makefile b/src/mesa/drivers/dri/sis/Makefile diff --git a/src/mesa/drivers/dri/sis/server/sis_common.h b/src/mesa/drivers/dri/sis/server/sis_common.h diff --git a/src/mesa/drivers/dri/sis/server/sis_dri.h b/src/mesa/drivers/dri/sis/server/sis_dri.h diff --git a/src/mesa/drivers/dri/sis/sis6326_clear.c b/src/mesa/drivers/dri/sis/sis6326_clear.c diff --git a/src/mesa/drivers/dri/sis/sis6326_reg.h b/src/mesa/drivers/dri/sis/sis6326_reg.h diff --git a/src/mesa/drivers/dri/sis/sis6326_state.c b/src/mesa/drivers/dri/sis/sis6326_state.c diff --git a/src/mesa/drivers/dri/sis/sis_alloc.c b/src/mesa/drivers/dri/sis/sis_alloc.c diff --git a/src/mesa/drivers/dri/sis/sis_alloc.h b/src/mesa/drivers/dri/sis/sis_alloc.h diff --git a/src/mesa/drivers/dri/sis/sis_clear.c b/src/mesa/drivers/dri/sis/sis_clear.c diff --git a/src/mesa/drivers/dri/sis/sis_context.c b/src/mesa/drivers/dri/sis/sis_context.c diff --git a/src/mesa/drivers/dri/sis/sis_context.h b/src/mesa/drivers/dri/sis/sis_context.h diff --git a/src/mesa/drivers/dri/sis/sis_dd.c b/src/mesa/drivers/dri/sis/sis_dd.c diff --git a/src/mesa/drivers/dri/sis/sis_dd.h b/src/mesa/drivers/dri/sis/sis_dd.h diff --git a/src/mesa/drivers/dri/sis/sis_fog.c b/src/mesa/drivers/dri/sis/sis_fog.c diff --git a/src/mesa/drivers/dri/sis/sis_lock.c b/src/mesa/drivers/dri/sis/sis_lock.c diff --git a/src/mesa/drivers/dri/sis/sis_lock.h b/src/mesa/drivers/dri/sis/sis_lock.h diff --git a/src/mesa/drivers/dri/sis/sis_reg.h b/src/mesa/drivers/dri/sis/sis_reg.h diff --git a/src/mesa/drivers/dri/sis/sis_screen.c b/src/mesa/drivers/dri/sis/sis_screen.c index 89d734b..953ee5b 100644 --- a/src/mesa/drivers/dri/sis/sis_screen.c +++ b/src/mesa/drivers/dri/sis/sis_screen.c @@ -315,6 +315,7 @@ static struct __DriverAPIRec sisAPI = { .UnbindContext = sisUnbindContext, .GetSwapInfo = NULL, .GetMSC = NULL, + .GetDrawableMSC = NULL, .WaitForMSC = NULL, .WaitForSBC = NULL, .SwapBuffersMSC = NULL diff --git a/src/mesa/drivers/dri/sis/sis_screen.h b/src/mesa/drivers/dri/sis/sis_screen.h diff --git a/src/mesa/drivers/dri/sis/sis_span.c b/src/mesa/drivers/dri/sis/sis_span.c diff --git a/src/mesa/drivers/dri/sis/sis_span.h b/src/mesa/drivers/dri/sis/sis_span.h diff --git a/src/mesa/drivers/dri/sis/sis_state.c b/src/mesa/drivers/dri/sis/sis_state.c diff --git a/src/mesa/drivers/dri/sis/sis_state.h b/src/mesa/drivers/dri/sis/sis_state.h diff --git a/src/mesa/drivers/dri/sis/sis_stencil.c b/src/mesa/drivers/dri/sis/sis_stencil.c diff --git a/src/mesa/drivers/dri/sis/sis_stencil.h b/src/mesa/drivers/dri/sis/sis_stencil.h diff --git a/src/mesa/drivers/dri/sis/sis_tex.c b/src/mesa/drivers/dri/sis/sis_tex.c diff --git a/src/mesa/drivers/dri/sis/sis_tex.h b/src/mesa/drivers/dri/sis/sis_tex.h diff --git a/src/mesa/drivers/dri/sis/sis_texstate.c b/src/mesa/drivers/dri/sis/sis_texstate.c diff --git a/src/mesa/drivers/dri/sis/sis_tris.c b/src/mesa/drivers/dri/sis/sis_tris.c diff --git a/src/mesa/drivers/dri/sis/sis_tris.h b/src/mesa/drivers/dri/sis/sis_tris.h diff --git a/src/mesa/drivers/dri/sis/sis_tritmp.h b/src/mesa/drivers/dri/sis/sis_tritmp.h diff --git a/src/mesa/drivers/dri/tdfx/BUGS b/src/mesa/drivers/dri/tdfx/BUGS diff --git a/src/mesa/drivers/dri/tdfx/Makefile b/src/mesa/drivers/dri/tdfx/Makefile diff --git a/src/mesa/drivers/dri/tdfx/X86/fx_3dnow_fastpath.S b/src/mesa/drivers/dri/tdfx/X86/fx_3dnow_fastpath.S diff --git a/src/mesa/drivers/dri/tdfx/X86/fx_3dnow_fasttmp.h b/src/mesa/drivers/dri/tdfx/X86/fx_3dnow_fasttmp.h diff --git a/src/mesa/drivers/dri/tdfx/dri_glide.h b/src/mesa/drivers/dri/tdfx/dri_glide.h diff --git a/src/mesa/drivers/dri/tdfx/server/tdfx_dri.c b/src/mesa/drivers/dri/tdfx/server/tdfx_dri.c diff --git a/src/mesa/drivers/dri/tdfx/server/tdfx_dri.h b/src/mesa/drivers/dri/tdfx/server/tdfx_dri.h diff --git a/src/mesa/drivers/dri/tdfx/tdfx_context.c b/src/mesa/drivers/dri/tdfx/tdfx_context.c diff --git a/src/mesa/drivers/dri/tdfx/tdfx_context.h b/src/mesa/drivers/dri/tdfx/tdfx_context.h diff --git a/src/mesa/drivers/dri/tdfx/tdfx_dd.c b/src/mesa/drivers/dri/tdfx/tdfx_dd.c diff --git a/src/mesa/drivers/dri/tdfx/tdfx_dd.h b/src/mesa/drivers/dri/tdfx/tdfx_dd.h diff --git a/src/mesa/drivers/dri/tdfx/tdfx_glide.h b/src/mesa/drivers/dri/tdfx/tdfx_glide.h diff --git a/src/mesa/drivers/dri/tdfx/tdfx_lock.c b/src/mesa/drivers/dri/tdfx/tdfx_lock.c diff --git a/src/mesa/drivers/dri/tdfx/tdfx_lock.h b/src/mesa/drivers/dri/tdfx/tdfx_lock.h diff --git a/src/mesa/drivers/dri/tdfx/tdfx_pixels.c b/src/mesa/drivers/dri/tdfx/tdfx_pixels.c diff --git a/src/mesa/drivers/dri/tdfx/tdfx_pixels.h b/src/mesa/drivers/dri/tdfx/tdfx_pixels.h diff --git a/src/mesa/drivers/dri/tdfx/tdfx_render.c b/src/mesa/drivers/dri/tdfx/tdfx_render.c diff --git a/src/mesa/drivers/dri/tdfx/tdfx_render.h b/src/mesa/drivers/dri/tdfx/tdfx_render.h diff --git a/src/mesa/drivers/dri/tdfx/tdfx_screen.c b/src/mesa/drivers/dri/tdfx/tdfx_screen.c index 1f9ff4e..fce9b20 100644 --- a/src/mesa/drivers/dri/tdfx/tdfx_screen.c +++ b/src/mesa/drivers/dri/tdfx/tdfx_screen.c @@ -357,6 +357,7 @@ static const struct __DriverAPIRec tdfxAPI = { .UnbindContext = tdfxUnbindContext, .GetSwapInfo = NULL, .GetMSC = NULL, + .GetDrawableMSC = NULL, .WaitForMSC = NULL, .WaitForSBC = NULL, .SwapBuffersMSC = NULL diff --git a/src/mesa/drivers/dri/tdfx/tdfx_screen.h b/src/mesa/drivers/dri/tdfx/tdfx_screen.h diff --git a/src/mesa/drivers/dri/tdfx/tdfx_span.c b/src/mesa/drivers/dri/tdfx/tdfx_span.c diff --git a/src/mesa/drivers/dri/tdfx/tdfx_span.h b/src/mesa/drivers/dri/tdfx/tdfx_span.h diff --git a/src/mesa/drivers/dri/tdfx/tdfx_state.c b/src/mesa/drivers/dri/tdfx/tdfx_state.c diff --git a/src/mesa/drivers/dri/tdfx/tdfx_state.h b/src/mesa/drivers/dri/tdfx/tdfx_state.h diff --git a/src/mesa/drivers/dri/tdfx/tdfx_tex.c b/src/mesa/drivers/dri/tdfx/tdfx_tex.c diff --git a/src/mesa/drivers/dri/tdfx/tdfx_tex.h b/src/mesa/drivers/dri/tdfx/tdfx_tex.h diff --git a/src/mesa/drivers/dri/tdfx/tdfx_texman.c b/src/mesa/drivers/dri/tdfx/tdfx_texman.c diff --git a/src/mesa/drivers/dri/tdfx/tdfx_texman.h b/src/mesa/drivers/dri/tdfx/tdfx_texman.h diff --git a/src/mesa/drivers/dri/tdfx/tdfx_texstate.c b/src/mesa/drivers/dri/tdfx/tdfx_texstate.c diff --git a/src/mesa/drivers/dri/tdfx/tdfx_texstate.h b/src/mesa/drivers/dri/tdfx/tdfx_texstate.h diff --git a/src/mesa/drivers/dri/tdfx/tdfx_tris.c b/src/mesa/drivers/dri/tdfx/tdfx_tris.c diff --git a/src/mesa/drivers/dri/tdfx/tdfx_tris.h b/src/mesa/drivers/dri/tdfx/tdfx_tris.h diff --git a/src/mesa/drivers/dri/tdfx/tdfx_vb.c b/src/mesa/drivers/dri/tdfx/tdfx_vb.c diff --git a/src/mesa/drivers/dri/tdfx/tdfx_vb.h b/src/mesa/drivers/dri/tdfx/tdfx_vb.h diff --git a/src/mesa/drivers/dri/tdfx/tdfx_vbtmp.h b/src/mesa/drivers/dri/tdfx/tdfx_vbtmp.h diff --git a/src/mesa/drivers/dri/trident/Makefile b/src/mesa/drivers/dri/trident/Makefile diff --git a/src/mesa/drivers/dri/trident/trident_context.c b/src/mesa/drivers/dri/trident/trident_context.c diff --git a/src/mesa/drivers/dri/trident/trident_context.h b/src/mesa/drivers/dri/trident/trident_context.h diff --git a/src/mesa/drivers/dri/trident/trident_dd.c b/src/mesa/drivers/dri/trident/trident_dd.c diff --git a/src/mesa/drivers/dri/trident/trident_dri.h b/src/mesa/drivers/dri/trident/trident_dri.h diff --git a/src/mesa/drivers/dri/trident/trident_lock.h b/src/mesa/drivers/dri/trident/trident_lock.h diff --git a/src/mesa/drivers/dri/trident/trident_state.c b/src/mesa/drivers/dri/trident/trident_state.c diff --git a/src/mesa/drivers/dri/trident/trident_tris.c b/src/mesa/drivers/dri/trident/trident_tris.c diff --git a/src/mesa/drivers/dri/trident/trident_vb.c b/src/mesa/drivers/dri/trident/trident_vb.c diff --git a/src/mesa/drivers/dri/unichrome/Makefile b/src/mesa/drivers/dri/unichrome/Makefile diff --git a/src/mesa/drivers/dri/unichrome/server/via.h b/src/mesa/drivers/dri/unichrome/server/via.h diff --git a/src/mesa/drivers/dri/unichrome/server/via_dri.c b/src/mesa/drivers/dri/unichrome/server/via_dri.c diff --git a/src/mesa/drivers/dri/unichrome/server/via_dri.h b/src/mesa/drivers/dri/unichrome/server/via_dri.h diff --git a/src/mesa/drivers/dri/unichrome/server/via_driver.h b/src/mesa/drivers/dri/unichrome/server/via_driver.h diff --git a/src/mesa/drivers/dri/unichrome/server/via_priv.h b/src/mesa/drivers/dri/unichrome/server/via_priv.h diff --git a/src/mesa/drivers/dri/unichrome/server/via_regs.h b/src/mesa/drivers/dri/unichrome/server/via_regs.h diff --git a/src/mesa/drivers/dri/unichrome/via_3d_reg.h b/src/mesa/drivers/dri/unichrome/via_3d_reg.h diff --git a/src/mesa/drivers/dri/unichrome/via_context.c b/src/mesa/drivers/dri/unichrome/via_context.c index 7c73877..edb9685 100644 --- a/src/mesa/drivers/dri/unichrome/via_context.c +++ b/src/mesa/drivers/dri/unichrome/via_context.c @@ -465,6 +465,7 @@ viaCreateContext(const __GLcontextModes *visual, GLcontext *ctx, *shareCtx; struct via_context *vmesa; __DRIscreenPrivate *sPriv = driContextPriv->driScreenPriv; + __DRIdrawablePrivate *dPriv = driContextPriv->driDrawablePriv; viaScreenPrivate *viaScreen = (viaScreenPrivate *)sPriv->private; drm_via_sarea_t *saPriv = (drm_via_sarea_t *) (((GLubyte *)sPriv->pSAREA) + viaScreen->sareaPrivOffset); @@ -661,7 +662,7 @@ viaCreateContext(const __GLcontextModes *visual, driQueryOptionb(&vmesa->optionCache, "no_rast")) FALLBACK(vmesa, VIA_FALLBACK_USER_DISABLE, 1); - vmesa->vblank_flags = + dPriv->vblFlags = vmesa->viaScreen->irqEnabled ? driGetDefaultVBlankFlags(&vmesa->optionCache) : VBLANK_FLAG_NO_IRQ; @@ -841,8 +842,7 @@ viaMakeCurrent(__DRIcontextPrivate *driContextPriv, readBuffer = (GLframebuffer *)driReadPriv->driverPrivate; if (vmesa->driDrawable != driDrawPriv) { - driDrawableInitVBlank(driDrawPriv, vmesa->vblank_flags, - &vmesa->vbl_seq); + driDrawableInitVBlank(driDrawPriv); } if ((vmesa->driDrawable != driDrawPriv) diff --git a/src/mesa/drivers/dri/unichrome/via_context.h b/src/mesa/drivers/dri/unichrome/via_context.h index fecd278..7ea7ac9 100644 --- a/src/mesa/drivers/dri/unichrome/via_context.h +++ b/src/mesa/drivers/dri/unichrome/via_context.h @@ -322,9 +322,6 @@ struct via_context { */ driOptionCache optionCache; - GLuint vblank_flags; - GLuint vbl_seq; - int64_t swap_ust; int64_t swap_missed_ust; diff --git a/src/mesa/drivers/dri/unichrome/via_drmclient.h b/src/mesa/drivers/dri/unichrome/via_drmclient.h diff --git a/src/mesa/drivers/dri/unichrome/via_fb.c b/src/mesa/drivers/dri/unichrome/via_fb.c diff --git a/src/mesa/drivers/dri/unichrome/via_fb.h b/src/mesa/drivers/dri/unichrome/via_fb.h diff --git a/src/mesa/drivers/dri/unichrome/via_ioctl.c b/src/mesa/drivers/dri/unichrome/via_ioctl.c index 4a733fb..3c7dafd 100644 --- a/src/mesa/drivers/dri/unichrome/via_ioctl.c +++ b/src/mesa/drivers/dri/unichrome/via_ioctl.c @@ -507,7 +507,7 @@ void viaWaitIdleLocked( struct via_context *vmesa, GLboolean light ) * except that WAIT_IDLE() will spin the CPU polling, while this is * IRQ driven. */ -static void viaWaitIdleVBlank( const __DRIdrawablePrivate *dPriv, +static void viaWaitIdleVBlank( __DRIdrawablePrivate *dPriv, struct via_context *vmesa, GLuint value ) { @@ -523,8 +523,8 @@ static void viaWaitIdleVBlank( const __DRIdrawablePrivate *dPriv, vmesa->thrashing) viaSwapOutWork(vmesa); - driWaitForVBlank( dPriv, & vmesa->vbl_seq, - vmesa->vblank_flags, & missed_target ); + driWaitForVBlank( dPriv, & dPriv->vblSeq, dPriv->vblFlags, + & missed_target ); if ( missed_target ) { vmesa->swap_missed_count++; (*dri_interface->getUST)( &vmesa->swap_missed_ust ); @@ -591,7 +591,7 @@ void viaResetPageFlippingLocked(struct via_context *vmesa) /* * Copy the back buffer to the front buffer. */ -void viaCopyBuffer(const __DRIdrawablePrivate *dPriv) +void viaCopyBuffer(__DRIdrawablePrivate *dPriv) { struct via_context *vmesa = (struct via_context *)dPriv->driContextPriv->driverPrivate; @@ -607,7 +607,7 @@ void viaCopyBuffer(const __DRIdrawablePrivate *dPriv) VIA_FLUSH_DMA(vmesa); - if (vmesa->vblank_flags == VBLANK_FLAG_SYNC && + if (dPriv->vblFlags == VBLANK_FLAG_SYNC && vmesa->lastBreadcrumbWrite > 1) viaWaitIdleVBlank(dPriv, vmesa, vmesa->lastBreadcrumbWrite-1); else @@ -634,14 +634,14 @@ void viaCopyBuffer(const __DRIdrawablePrivate *dPriv) } -void viaPageFlip(const __DRIdrawablePrivate *dPriv) +void viaPageFlip(__DRIdrawablePrivate *dPriv) { struct via_context *vmesa = (struct via_context *)dPriv->driContextPriv->driverPrivate; struct via_renderbuffer buffer_tmp; VIA_FLUSH_DMA(vmesa); - if (vmesa->vblank_flags == VBLANK_FLAG_SYNC && + if (dPriv->vblFlags == VBLANK_FLAG_SYNC && vmesa->lastBreadcrumbWrite > 1) viaWaitIdleVBlank(dPriv, vmesa, vmesa->lastBreadcrumbWrite - 1); else diff --git a/src/mesa/drivers/dri/unichrome/via_ioctl.h b/src/mesa/drivers/dri/unichrome/via_ioctl.h index a81b427..44fc439 100644 --- a/src/mesa/drivers/dri/unichrome/via_ioctl.h +++ b/src/mesa/drivers/dri/unichrome/via_ioctl.h @@ -33,8 +33,8 @@ void viaFlushDma(struct via_context *vmesa); void viaFlushDmaLocked(struct via_context *vmesa, GLuint flags); void viaInitIoctlFuncs(GLcontext *ctx); -void viaCopyBuffer(const __DRIdrawablePrivate *dpriv); -void viaPageFlip(const __DRIdrawablePrivate *dpriv); +void viaCopyBuffer(__DRIdrawablePrivate *dpriv); +void viaPageFlip(__DRIdrawablePrivate *dpriv); void viaCheckDma(struct via_context *vmesa, GLuint bytes); void viaResetPageFlippingLocked(struct via_context *vmesa); void viaWaitIdle(struct via_context *vmesa, GLboolean light); diff --git a/src/mesa/drivers/dri/unichrome/via_memcpy.c b/src/mesa/drivers/dri/unichrome/via_memcpy.c diff --git a/src/mesa/drivers/dri/unichrome/via_render.c b/src/mesa/drivers/dri/unichrome/via_render.c diff --git a/src/mesa/drivers/dri/unichrome/via_screen.c b/src/mesa/drivers/dri/unichrome/via_screen.c index 90f76be..0177280 100644 --- a/src/mesa/drivers/dri/unichrome/via_screen.c +++ b/src/mesa/drivers/dri/unichrome/via_screen.c @@ -337,6 +337,7 @@ static struct __DriverAPIRec viaAPI = { .UnbindContext = viaUnbindContext, .GetSwapInfo = getSwapInfo, .GetMSC = driGetMSC32, + .GetDrawableMSC = driDrawableGetMSC32, .WaitForMSC = driWaitForMSC32, .WaitForSBC = NULL, .SwapBuffersMSC = NULL diff --git a/src/mesa/drivers/dri/unichrome/via_screen.h b/src/mesa/drivers/dri/unichrome/via_screen.h diff --git a/src/mesa/drivers/dri/unichrome/via_span.c b/src/mesa/drivers/dri/unichrome/via_span.c diff --git a/src/mesa/drivers/dri/unichrome/via_span.h b/src/mesa/drivers/dri/unichrome/via_span.h diff --git a/src/mesa/drivers/dri/unichrome/via_state.c b/src/mesa/drivers/dri/unichrome/via_state.c diff --git a/src/mesa/drivers/dri/unichrome/via_state.h b/src/mesa/drivers/dri/unichrome/via_state.h diff --git a/src/mesa/drivers/dri/unichrome/via_tex.c b/src/mesa/drivers/dri/unichrome/via_tex.c diff --git a/src/mesa/drivers/dri/unichrome/via_tex.h b/src/mesa/drivers/dri/unichrome/via_tex.h diff --git a/src/mesa/drivers/dri/unichrome/via_texcombine.c b/src/mesa/drivers/dri/unichrome/via_texcombine.c diff --git a/src/mesa/drivers/dri/unichrome/via_tris.c b/src/mesa/drivers/dri/unichrome/via_tris.c diff --git a/src/mesa/drivers/dri/unichrome/via_tris.h b/src/mesa/drivers/dri/unichrome/via_tris.h diff --git a/src/mesa/drivers/fbdev/glfbdev.c b/src/mesa/drivers/fbdev/glfbdev.c diff --git a/src/mesa/drivers/ggi/default/.gitignore b/src/mesa/drivers/ggi/default/.gitignore diff --git a/src/mesa/drivers/ggi/default/genkgi.conf.in b/src/mesa/drivers/ggi/default/genkgi.conf.in diff --git a/src/mesa/drivers/ggi/default/genkgi.h b/src/mesa/drivers/ggi/default/genkgi.h diff --git a/src/mesa/drivers/ggi/default/genkgi_mode.c b/src/mesa/drivers/ggi/default/genkgi_mode.c diff --git a/src/mesa/drivers/ggi/default/genkgi_visual.c b/src/mesa/drivers/ggi/default/genkgi_visual.c diff --git a/src/mesa/drivers/ggi/default/linear.c b/src/mesa/drivers/ggi/default/linear.c diff --git a/src/mesa/drivers/ggi/default/linear_15.c b/src/mesa/drivers/ggi/default/linear_15.c diff --git a/src/mesa/drivers/ggi/default/linear_16.c b/src/mesa/drivers/ggi/default/linear_16.c diff --git a/src/mesa/drivers/ggi/default/linear_24.c b/src/mesa/drivers/ggi/default/linear_24.c diff --git a/src/mesa/drivers/ggi/default/linear_32.c b/src/mesa/drivers/ggi/default/linear_32.c diff --git a/src/mesa/drivers/ggi/default/linear_8.c b/src/mesa/drivers/ggi/default/linear_8.c diff --git a/src/mesa/drivers/ggi/default/stubs.c b/src/mesa/drivers/ggi/default/stubs.c diff --git a/src/mesa/drivers/ggi/display/.gitignore b/src/mesa/drivers/ggi/display/.gitignore diff --git a/src/mesa/drivers/ggi/display/fbdev.conf.in b/src/mesa/drivers/ggi/display/fbdev.conf.in diff --git a/src/mesa/drivers/ggi/display/fbdev_mode.c b/src/mesa/drivers/ggi/display/fbdev_mode.c diff --git a/src/mesa/drivers/ggi/display/fbdev_visual.c b/src/mesa/drivers/ggi/display/fbdev_visual.c diff --git a/src/mesa/drivers/ggi/ggimesa.c b/src/mesa/drivers/ggi/ggimesa.c diff --git a/src/mesa/drivers/ggi/ggimesa.conf.in b/src/mesa/drivers/ggi/ggimesa.conf.in diff --git a/src/mesa/drivers/ggi/include/ggi/mesa/debug.h b/src/mesa/drivers/ggi/include/ggi/mesa/debug.h diff --git a/src/mesa/drivers/ggi/include/ggi/mesa/display_fbdev.h b/src/mesa/drivers/ggi/include/ggi/mesa/display_fbdev.h diff --git a/src/mesa/drivers/ggi/include/ggi/mesa/ggimesa.h b/src/mesa/drivers/ggi/include/ggi/mesa/ggimesa.h diff --git a/src/mesa/drivers/ggi/include/ggi/mesa/ggimesa_int.h b/src/mesa/drivers/ggi/include/ggi/mesa/ggimesa_int.h diff --git a/src/mesa/drivers/glide/fxapi.c b/src/mesa/drivers/glide/fxapi.c diff --git a/src/mesa/drivers/glide/fxdd.c b/src/mesa/drivers/glide/fxdd.c diff --git a/src/mesa/drivers/glide/fxddspan.c b/src/mesa/drivers/glide/fxddspan.c diff --git a/src/mesa/drivers/glide/fxddtex.c b/src/mesa/drivers/glide/fxddtex.c diff --git a/src/mesa/drivers/glide/fxdrv.h b/src/mesa/drivers/glide/fxdrv.h diff --git a/src/mesa/drivers/glide/fxg.c b/src/mesa/drivers/glide/fxg.c diff --git a/src/mesa/drivers/glide/fxg.h b/src/mesa/drivers/glide/fxg.h diff --git a/src/mesa/drivers/glide/fxglidew.c b/src/mesa/drivers/glide/fxglidew.c diff --git a/src/mesa/drivers/glide/fxglidew.h b/src/mesa/drivers/glide/fxglidew.h diff --git a/src/mesa/drivers/glide/fxsetup.c b/src/mesa/drivers/glide/fxsetup.c diff --git a/src/mesa/drivers/glide/fxsetup.h b/src/mesa/drivers/glide/fxsetup.h diff --git a/src/mesa/drivers/glide/fxtexman.c b/src/mesa/drivers/glide/fxtexman.c diff --git a/src/mesa/drivers/glide/fxtris.c b/src/mesa/drivers/glide/fxtris.c diff --git a/src/mesa/drivers/glide/fxvb.c b/src/mesa/drivers/glide/fxvb.c diff --git a/src/mesa/drivers/glide/fxvbtmp.h b/src/mesa/drivers/glide/fxvbtmp.h diff --git a/src/mesa/drivers/glslcompiler/Makefile b/src/mesa/drivers/glslcompiler/Makefile diff --git a/src/mesa/drivers/glslcompiler/glslcompiler.c b/src/mesa/drivers/glslcompiler/glslcompiler.c diff --git a/src/mesa/drivers/osmesa/Makefile.win b/src/mesa/drivers/osmesa/Makefile.win diff --git a/src/mesa/drivers/osmesa/descrip.mms b/src/mesa/drivers/osmesa/descrip.mms diff --git a/src/mesa/drivers/osmesa/osmesa.c b/src/mesa/drivers/osmesa/osmesa.c diff --git a/src/mesa/drivers/osmesa/osmesa.def b/src/mesa/drivers/osmesa/osmesa.def diff --git a/src/mesa/drivers/svga/svgamesa.c b/src/mesa/drivers/svga/svgamesa.c diff --git a/src/mesa/drivers/svga/svgamesa15.c b/src/mesa/drivers/svga/svgamesa15.c diff --git a/src/mesa/drivers/svga/svgamesa15.h b/src/mesa/drivers/svga/svgamesa15.h diff --git a/src/mesa/drivers/svga/svgamesa16.c b/src/mesa/drivers/svga/svgamesa16.c diff --git a/src/mesa/drivers/svga/svgamesa16.h b/src/mesa/drivers/svga/svgamesa16.h diff --git a/src/mesa/drivers/svga/svgamesa24.c b/src/mesa/drivers/svga/svgamesa24.c diff --git a/src/mesa/drivers/svga/svgamesa24.h b/src/mesa/drivers/svga/svgamesa24.h diff --git a/src/mesa/drivers/svga/svgamesa32.c b/src/mesa/drivers/svga/svgamesa32.c diff --git a/src/mesa/drivers/svga/svgamesa32.h b/src/mesa/drivers/svga/svgamesa32.h diff --git a/src/mesa/drivers/svga/svgamesa8.c b/src/mesa/drivers/svga/svgamesa8.c diff --git a/src/mesa/drivers/svga/svgamesa8.h b/src/mesa/drivers/svga/svgamesa8.h diff --git a/src/mesa/drivers/svga/svgapix.h b/src/mesa/drivers/svga/svgapix.h diff --git a/src/mesa/drivers/windows/fx/fx.rc b/src/mesa/drivers/windows/fx/fx.rc diff --git a/src/mesa/drivers/windows/fx/fxopengl.def b/src/mesa/drivers/windows/fx/fxopengl.def diff --git a/src/mesa/drivers/windows/fx/fxwgl.c b/src/mesa/drivers/windows/fx/fxwgl.c diff --git a/src/mesa/drivers/windows/gdi/InitCritSections.cpp b/src/mesa/drivers/windows/gdi/InitCritSections.cpp diff --git a/src/mesa/drivers/windows/gdi/colors.h b/src/mesa/drivers/windows/gdi/colors.h diff --git a/src/mesa/drivers/windows/gdi/mesa.def b/src/mesa/drivers/windows/gdi/mesa.def diff --git a/src/mesa/drivers/windows/gdi/wgl.c b/src/mesa/drivers/windows/gdi/wgl.c diff --git a/src/mesa/drivers/windows/gdi/wmesa.c b/src/mesa/drivers/windows/gdi/wmesa.c diff --git a/src/mesa/drivers/windows/gdi/wmesadef.h b/src/mesa/drivers/windows/gdi/wmesadef.h diff --git a/src/mesa/drivers/windows/gldirect/ddlog.c b/src/mesa/drivers/windows/gldirect/ddlog.c diff --git a/src/mesa/drivers/windows/gldirect/ddlog.h b/src/mesa/drivers/windows/gldirect/ddlog.h diff --git a/src/mesa/drivers/windows/gldirect/dglcontext.c b/src/mesa/drivers/windows/gldirect/dglcontext.c diff --git a/src/mesa/drivers/windows/gldirect/dglcontext.h b/src/mesa/drivers/windows/gldirect/dglcontext.h diff --git a/src/mesa/drivers/windows/gldirect/dglglobals.c b/src/mesa/drivers/windows/gldirect/dglglobals.c diff --git a/src/mesa/drivers/windows/gldirect/dglglobals.h b/src/mesa/drivers/windows/gldirect/dglglobals.h diff --git a/src/mesa/drivers/windows/gldirect/dglmacros.h b/src/mesa/drivers/windows/gldirect/dglmacros.h diff --git a/src/mesa/drivers/windows/gldirect/dglpf.c b/src/mesa/drivers/windows/gldirect/dglpf.c diff --git a/src/mesa/drivers/windows/gldirect/dglpf.h b/src/mesa/drivers/windows/gldirect/dglpf.h diff --git a/src/mesa/drivers/windows/gldirect/dglwgl.c b/src/mesa/drivers/windows/gldirect/dglwgl.c diff --git a/src/mesa/drivers/windows/gldirect/dglwgl.h b/src/mesa/drivers/windows/gldirect/dglwgl.h diff --git a/src/mesa/drivers/windows/gldirect/dll_main.c b/src/mesa/drivers/windows/gldirect/dll_main.c diff --git a/src/mesa/drivers/windows/gldirect/dllmain.h b/src/mesa/drivers/windows/gldirect/dllmain.h diff --git a/src/mesa/drivers/windows/gldirect/dx7/gld_driver_dx7.c b/src/mesa/drivers/windows/gldirect/dx7/gld_driver_dx7.c diff --git a/src/mesa/drivers/windows/gldirect/dx7/gld_dx7.h b/src/mesa/drivers/windows/gldirect/dx7/gld_dx7.h diff --git a/src/mesa/drivers/windows/gldirect/dx7/gld_dxerr7.h b/src/mesa/drivers/windows/gldirect/dx7/gld_dxerr7.h diff --git a/src/mesa/drivers/windows/gldirect/dx7/gld_ext_dx7.c b/src/mesa/drivers/windows/gldirect/dx7/gld_ext_dx7.c diff --git a/src/mesa/drivers/windows/gldirect/dx7/gld_pipeline_dx7.c b/src/mesa/drivers/windows/gldirect/dx7/gld_pipeline_dx7.c diff --git a/src/mesa/drivers/windows/gldirect/dx7/gld_primitive_dx7.c b/src/mesa/drivers/windows/gldirect/dx7/gld_primitive_dx7.c diff --git a/src/mesa/drivers/windows/gldirect/dx7/gld_texture_dx7.c b/src/mesa/drivers/windows/gldirect/dx7/gld_texture_dx7.c diff --git a/src/mesa/drivers/windows/gldirect/dx7/gld_vb_d3d_render_dx7.c b/src/mesa/drivers/windows/gldirect/dx7/gld_vb_d3d_render_dx7.c diff --git a/src/mesa/drivers/windows/gldirect/dx7/gld_vb_mesa_render_dx7.c b/src/mesa/drivers/windows/gldirect/dx7/gld_vb_mesa_render_dx7.c diff --git a/src/mesa/drivers/windows/gldirect/dx7/gld_wgl_dx7.c b/src/mesa/drivers/windows/gldirect/dx7/gld_wgl_dx7.c diff --git a/src/mesa/drivers/windows/gldirect/dx8/gld_driver_dx8.c b/src/mesa/drivers/windows/gldirect/dx8/gld_driver_dx8.c diff --git a/src/mesa/drivers/windows/gldirect/dx8/gld_dx8.h b/src/mesa/drivers/windows/gldirect/dx8/gld_dx8.h diff --git a/src/mesa/drivers/windows/gldirect/dx8/gld_dxerr8.h b/src/mesa/drivers/windows/gldirect/dx8/gld_dxerr8.h diff --git a/src/mesa/drivers/windows/gldirect/dx8/gld_ext_dx8.c b/src/mesa/drivers/windows/gldirect/dx8/gld_ext_dx8.c diff --git a/src/mesa/drivers/windows/gldirect/dx8/gld_pipeline_dx8.c b/src/mesa/drivers/windows/gldirect/dx8/gld_pipeline_dx8.c diff --git a/src/mesa/drivers/windows/gldirect/dx8/gld_primitive_dx8.c b/src/mesa/drivers/windows/gldirect/dx8/gld_primitive_dx8.c diff --git a/src/mesa/drivers/windows/gldirect/dx8/gld_texture_dx8.c b/src/mesa/drivers/windows/gldirect/dx8/gld_texture_dx8.c diff --git a/src/mesa/drivers/windows/gldirect/dx8/gld_vb_d3d_render_dx8.c b/src/mesa/drivers/windows/gldirect/dx8/gld_vb_d3d_render_dx8.c diff --git a/src/mesa/drivers/windows/gldirect/dx8/gld_vb_mesa_render_dx8.c b/src/mesa/drivers/windows/gldirect/dx8/gld_vb_mesa_render_dx8.c diff --git a/src/mesa/drivers/windows/gldirect/dx8/gld_wgl_dx8.c b/src/mesa/drivers/windows/gldirect/dx8/gld_wgl_dx8.c diff --git a/src/mesa/drivers/windows/gldirect/dx9/gld_driver_dx9.c b/src/mesa/drivers/windows/gldirect/dx9/gld_driver_dx9.c diff --git a/src/mesa/drivers/windows/gldirect/dx9/gld_dx9.h b/src/mesa/drivers/windows/gldirect/dx9/gld_dx9.h diff --git a/src/mesa/drivers/windows/gldirect/dx9/gld_dxerr9.h b/src/mesa/drivers/windows/gldirect/dx9/gld_dxerr9.h diff --git a/src/mesa/drivers/windows/gldirect/dx9/gld_ext_dx9.c b/src/mesa/drivers/windows/gldirect/dx9/gld_ext_dx9.c diff --git a/src/mesa/drivers/windows/gldirect/dx9/gld_pipeline_dx9.c b/src/mesa/drivers/windows/gldirect/dx9/gld_pipeline_dx9.c diff --git a/src/mesa/drivers/windows/gldirect/dx9/gld_primitive_dx9.c b/src/mesa/drivers/windows/gldirect/dx9/gld_primitive_dx9.c diff --git a/src/mesa/drivers/windows/gldirect/dx9/gld_texture_dx9.c b/src/mesa/drivers/windows/gldirect/dx9/gld_texture_dx9.c diff --git a/src/mesa/drivers/windows/gldirect/dx9/gld_vb_d3d_render_dx9.c b/src/mesa/drivers/windows/gldirect/dx9/gld_vb_d3d_render_dx9.c diff --git a/src/mesa/drivers/windows/gldirect/dx9/gld_vb_mesa_render_dx9.c b/src/mesa/drivers/windows/gldirect/dx9/gld_vb_mesa_render_dx9.c diff --git a/src/mesa/drivers/windows/gldirect/dx9/gld_wgl_dx9.c b/src/mesa/drivers/windows/gldirect/dx9/gld_wgl_dx9.c diff --git a/src/mesa/drivers/windows/gldirect/gld_debug_clip.c b/src/mesa/drivers/windows/gldirect/gld_debug_clip.c diff --git a/src/mesa/drivers/windows/gldirect/gld_debug_norm.c b/src/mesa/drivers/windows/gldirect/gld_debug_norm.c diff --git a/src/mesa/drivers/windows/gldirect/gld_debug_xform.c b/src/mesa/drivers/windows/gldirect/gld_debug_xform.c diff --git a/src/mesa/drivers/windows/gldirect/gld_dispatch.c b/src/mesa/drivers/windows/gldirect/gld_dispatch.c diff --git a/src/mesa/drivers/windows/gldirect/gld_driver.c b/src/mesa/drivers/windows/gldirect/gld_driver.c diff --git a/src/mesa/drivers/windows/gldirect/gld_driver.h b/src/mesa/drivers/windows/gldirect/gld_driver.h diff --git a/src/mesa/drivers/windows/gldirect/gldirect.rc b/src/mesa/drivers/windows/gldirect/gldirect.rc diff --git a/src/mesa/drivers/windows/gldirect/gldlame8.c b/src/mesa/drivers/windows/gldirect/gldlame8.c diff --git a/src/mesa/drivers/windows/gldirect/mesasw/colors.h b/src/mesa/drivers/windows/gldirect/mesasw/colors.h diff --git a/src/mesa/drivers/windows/gldirect/mesasw/gld_wgl_mesasw.c b/src/mesa/drivers/windows/gldirect/mesasw/gld_wgl_mesasw.c diff --git a/src/mesa/drivers/windows/gldirect/opengl32.def b/src/mesa/drivers/windows/gldirect/opengl32.def diff --git a/src/mesa/drivers/windows/gldirect/opengl32.ref b/src/mesa/drivers/windows/gldirect/opengl32.ref diff --git a/src/mesa/drivers/windows/gldirect/pixpack.h b/src/mesa/drivers/windows/gldirect/pixpack.h diff --git a/src/mesa/drivers/windows/icd/icd.c b/src/mesa/drivers/windows/icd/icd.c diff --git a/src/mesa/drivers/windows/icd/icdlist.h b/src/mesa/drivers/windows/icd/icdlist.h diff --git a/src/mesa/drivers/windows/icd/mesa.def b/src/mesa/drivers/windows/icd/mesa.def diff --git a/src/mesa/drivers/x11/descrip.mms b/src/mesa/drivers/x11/descrip.mms diff --git a/src/mesa/drivers/x11/fakeglx.c b/src/mesa/drivers/x11/fakeglx.c diff --git a/src/mesa/drivers/x11/glxapi.c b/src/mesa/drivers/x11/glxapi.c diff --git a/src/mesa/drivers/x11/glxapi.h b/src/mesa/drivers/x11/glxapi.h diff --git a/src/mesa/drivers/x11/glxheader.h b/src/mesa/drivers/x11/glxheader.h diff --git a/src/mesa/drivers/x11/realglx.c b/src/mesa/drivers/x11/realglx.c diff --git a/src/mesa/drivers/x11/realglx.h b/src/mesa/drivers/x11/realglx.h diff --git a/src/mesa/drivers/x11/sources b/src/mesa/drivers/x11/sources diff --git a/src/mesa/drivers/x11/xfonts.c b/src/mesa/drivers/x11/xfonts.c diff --git a/src/mesa/drivers/x11/xfonts.h b/src/mesa/drivers/x11/xfonts.h diff --git a/src/mesa/drivers/x11/xm_api.c b/src/mesa/drivers/x11/xm_api.c diff --git a/src/mesa/drivers/x11/xm_buffer.c b/src/mesa/drivers/x11/xm_buffer.c diff --git a/src/mesa/drivers/x11/xm_dd.c b/src/mesa/drivers/x11/xm_dd.c diff --git a/src/mesa/drivers/x11/xm_glide.c b/src/mesa/drivers/x11/xm_glide.c diff --git a/src/mesa/drivers/x11/xm_glide.h b/src/mesa/drivers/x11/xm_glide.h diff --git a/src/mesa/drivers/x11/xm_image.c b/src/mesa/drivers/x11/xm_image.c diff --git a/src/mesa/drivers/x11/xm_image.h b/src/mesa/drivers/x11/xm_image.h diff --git a/src/mesa/drivers/x11/xm_line.c b/src/mesa/drivers/x11/xm_line.c diff --git a/src/mesa/drivers/x11/xm_span.c b/src/mesa/drivers/x11/xm_span.c diff --git a/src/mesa/drivers/x11/xm_tri.c b/src/mesa/drivers/x11/xm_tri.c diff --git a/src/mesa/drivers/x11/xmesaP.h b/src/mesa/drivers/x11/xmesaP.h diff --git a/src/mesa/gl.pc.in b/src/mesa/gl.pc.in diff --git a/src/mesa/glapi/.gitignore b/src/mesa/glapi/.gitignore diff --git a/src/mesa/glapi/APPLE_vertex_array_object.xml b/src/mesa/glapi/APPLE_vertex_array_object.xml diff --git a/src/mesa/glapi/EXT_framebuffer_object.xml b/src/mesa/glapi/EXT_framebuffer_object.xml diff --git a/src/mesa/glapi/Makefile b/src/mesa/glapi/Makefile diff --git a/src/mesa/glapi/descrip.mms b/src/mesa/glapi/descrip.mms diff --git a/src/mesa/glapi/dispatch.h b/src/mesa/glapi/dispatch.h diff --git a/src/mesa/glapi/extension_helper.py b/src/mesa/glapi/extension_helper.py diff --git a/src/mesa/glapi/glX_API.xml b/src/mesa/glapi/glX_API.xml diff --git a/src/mesa/glapi/glX_XML.py b/src/mesa/glapi/glX_XML.py diff --git a/src/mesa/glapi/glX_doc.py b/src/mesa/glapi/glX_doc.py diff --git a/src/mesa/glapi/glX_proto_common.py b/src/mesa/glapi/glX_proto_common.py diff --git a/src/mesa/glapi/glX_proto_recv.py b/src/mesa/glapi/glX_proto_recv.py diff --git a/src/mesa/glapi/glX_proto_send.py b/src/mesa/glapi/glX_proto_send.py diff --git a/src/mesa/glapi/glX_proto_size.py b/src/mesa/glapi/glX_proto_size.py diff --git a/src/mesa/glapi/glX_server_table.py b/src/mesa/glapi/glX_server_table.py diff --git a/src/mesa/glapi/gl_API.dtd b/src/mesa/glapi/gl_API.dtd diff --git a/src/mesa/glapi/gl_API.xml b/src/mesa/glapi/gl_API.xml diff --git a/src/mesa/glapi/gl_SPARC_asm.py b/src/mesa/glapi/gl_SPARC_asm.py diff --git a/src/mesa/glapi/gl_XML.py b/src/mesa/glapi/gl_XML.py diff --git a/src/mesa/glapi/gl_and_glX_API.xml b/src/mesa/glapi/gl_and_glX_API.xml diff --git a/src/mesa/glapi/gl_apitemp.py b/src/mesa/glapi/gl_apitemp.py diff --git a/src/mesa/glapi/gl_enums.py b/src/mesa/glapi/gl_enums.py diff --git a/src/mesa/glapi/gl_offsets.py b/src/mesa/glapi/gl_offsets.py diff --git a/src/mesa/glapi/gl_procs.py b/src/mesa/glapi/gl_procs.py diff --git a/src/mesa/glapi/gl_table.py b/src/mesa/glapi/gl_table.py diff --git a/src/mesa/glapi/gl_x86-64_asm.py b/src/mesa/glapi/gl_x86-64_asm.py diff --git a/src/mesa/glapi/gl_x86_asm.py b/src/mesa/glapi/gl_x86_asm.py diff --git a/src/mesa/glapi/glapi.c b/src/mesa/glapi/glapi.c diff --git a/src/mesa/glapi/glapi.h b/src/mesa/glapi/glapi.h diff --git a/src/mesa/glapi/glapioffsets.h b/src/mesa/glapi/glapioffsets.h diff --git a/src/mesa/glapi/glapitable.h b/src/mesa/glapi/glapitable.h diff --git a/src/mesa/glapi/glapitemp.h b/src/mesa/glapi/glapitemp.h diff --git a/src/mesa/glapi/glprocs.h b/src/mesa/glapi/glprocs.h diff --git a/src/mesa/glapi/glthread.c b/src/mesa/glapi/glthread.c diff --git a/src/mesa/glapi/glthread.h b/src/mesa/glapi/glthread.h diff --git a/src/mesa/glapi/license.py b/src/mesa/glapi/license.py diff --git a/src/mesa/glapi/mesadef.py b/src/mesa/glapi/mesadef.py diff --git a/src/mesa/glapi/next_available_offset.sh b/src/mesa/glapi/next_available_offset.sh diff --git a/src/mesa/glapi/sources b/src/mesa/glapi/sources diff --git a/src/mesa/glapi/typeexpr.py b/src/mesa/glapi/typeexpr.py diff --git a/src/mesa/main/Makefile.ugl b/src/mesa/main/Makefile.ugl diff --git a/src/mesa/main/Makefile.win b/src/mesa/main/Makefile.win diff --git a/src/mesa/main/accum.c b/src/mesa/main/accum.c diff --git a/src/mesa/main/accum.h b/src/mesa/main/accum.h diff --git a/src/mesa/main/api_arrayelt.c b/src/mesa/main/api_arrayelt.c diff --git a/src/mesa/main/api_arrayelt.h b/src/mesa/main/api_arrayelt.h diff --git a/src/mesa/main/api_eval.h b/src/mesa/main/api_eval.h diff --git a/src/mesa/main/api_loopback.c b/src/mesa/main/api_loopback.c diff --git a/src/mesa/main/api_loopback.h b/src/mesa/main/api_loopback.h diff --git a/src/mesa/main/api_noop.c b/src/mesa/main/api_noop.c diff --git a/src/mesa/main/api_noop.h b/src/mesa/main/api_noop.h diff --git a/src/mesa/main/api_validate.c b/src/mesa/main/api_validate.c diff --git a/src/mesa/main/api_validate.h b/src/mesa/main/api_validate.h diff --git a/src/mesa/main/arrayobj.c b/src/mesa/main/arrayobj.c diff --git a/src/mesa/main/arrayobj.h b/src/mesa/main/arrayobj.h diff --git a/src/mesa/main/attrib.c b/src/mesa/main/attrib.c diff --git a/src/mesa/main/attrib.h b/src/mesa/main/attrib.h diff --git a/src/mesa/main/bitset.h b/src/mesa/main/bitset.h diff --git a/src/mesa/main/blend.c b/src/mesa/main/blend.c diff --git a/src/mesa/main/blend.h b/src/mesa/main/blend.h diff --git a/src/mesa/main/bufferobj.c b/src/mesa/main/bufferobj.c diff --git a/src/mesa/main/bufferobj.h b/src/mesa/main/bufferobj.h diff --git a/src/mesa/main/buffers.c b/src/mesa/main/buffers.c diff --git a/src/mesa/main/buffers.h b/src/mesa/main/buffers.h diff --git a/src/mesa/main/clip.c b/src/mesa/main/clip.c diff --git a/src/mesa/main/clip.h b/src/mesa/main/clip.h diff --git a/src/mesa/main/colormac.h b/src/mesa/main/colormac.h diff --git a/src/mesa/main/colortab.c b/src/mesa/main/colortab.c diff --git a/src/mesa/main/colortab.h b/src/mesa/main/colortab.h diff --git a/src/mesa/main/config.h b/src/mesa/main/config.h diff --git a/src/mesa/main/context.c b/src/mesa/main/context.c diff --git a/src/mesa/main/context.h b/src/mesa/main/context.h diff --git a/src/mesa/main/convolve.c b/src/mesa/main/convolve.c diff --git a/src/mesa/main/convolve.h b/src/mesa/main/convolve.h diff --git a/src/mesa/main/dd.h b/src/mesa/main/dd.h diff --git a/src/mesa/main/debug.c b/src/mesa/main/debug.c diff --git a/src/mesa/main/debug.h b/src/mesa/main/debug.h diff --git a/src/mesa/main/depth.c b/src/mesa/main/depth.c diff --git a/src/mesa/main/depth.h b/src/mesa/main/depth.h diff --git a/src/mesa/main/depthstencil.c b/src/mesa/main/depthstencil.c diff --git a/src/mesa/main/depthstencil.h b/src/mesa/main/depthstencil.h diff --git a/src/mesa/main/descrip.mms b/src/mesa/main/descrip.mms diff --git a/src/mesa/main/dispatch.c b/src/mesa/main/dispatch.c diff --git a/src/mesa/main/dlist.c b/src/mesa/main/dlist.c diff --git a/src/mesa/main/dlist.h b/src/mesa/main/dlist.h diff --git a/src/mesa/main/drawpix.c b/src/mesa/main/drawpix.c diff --git a/src/mesa/main/drawpix.h b/src/mesa/main/drawpix.h diff --git a/src/mesa/main/enable.c b/src/mesa/main/enable.c diff --git a/src/mesa/main/enable.h b/src/mesa/main/enable.h diff --git a/src/mesa/main/enums.c b/src/mesa/main/enums.c diff --git a/src/mesa/main/enums.h b/src/mesa/main/enums.h diff --git a/src/mesa/main/eval.c b/src/mesa/main/eval.c diff --git a/src/mesa/main/eval.h b/src/mesa/main/eval.h diff --git a/src/mesa/main/execmem.c b/src/mesa/main/execmem.c diff --git a/src/mesa/main/extensions.c b/src/mesa/main/extensions.c diff --git a/src/mesa/main/extensions.h b/src/mesa/main/extensions.h diff --git a/src/mesa/main/fbobject.c b/src/mesa/main/fbobject.c diff --git a/src/mesa/main/fbobject.h b/src/mesa/main/fbobject.h diff --git a/src/mesa/main/feedback.c b/src/mesa/main/feedback.c diff --git a/src/mesa/main/feedback.h b/src/mesa/main/feedback.h diff --git a/src/mesa/main/fog.c b/src/mesa/main/fog.c diff --git a/src/mesa/main/fog.h b/src/mesa/main/fog.h diff --git a/src/mesa/main/framebuffer.c b/src/mesa/main/framebuffer.c diff --git a/src/mesa/main/framebuffer.h b/src/mesa/main/framebuffer.h diff --git a/src/mesa/main/get.c b/src/mesa/main/get.c diff --git a/src/mesa/main/get.h b/src/mesa/main/get.h diff --git a/src/mesa/main/get_gen.py b/src/mesa/main/get_gen.py diff --git a/src/mesa/main/getstring.c b/src/mesa/main/getstring.c diff --git a/src/mesa/main/glheader.h b/src/mesa/main/glheader.h diff --git a/src/mesa/main/hash.c b/src/mesa/main/hash.c diff --git a/src/mesa/main/hash.h b/src/mesa/main/hash.h diff --git a/src/mesa/main/hint.c b/src/mesa/main/hint.c diff --git a/src/mesa/main/hint.h b/src/mesa/main/hint.h diff --git a/src/mesa/main/histogram.c b/src/mesa/main/histogram.c diff --git a/src/mesa/main/histogram.h b/src/mesa/main/histogram.h diff --git a/src/mesa/main/image.c b/src/mesa/main/image.c diff --git a/src/mesa/main/image.h b/src/mesa/main/image.h diff --git a/src/mesa/main/imports.c b/src/mesa/main/imports.c diff --git a/src/mesa/main/imports.h b/src/mesa/main/imports.h diff --git a/src/mesa/main/light.c b/src/mesa/main/light.c diff --git a/src/mesa/main/light.h b/src/mesa/main/light.h diff --git a/src/mesa/main/lines.c b/src/mesa/main/lines.c diff --git a/src/mesa/main/lines.h b/src/mesa/main/lines.h diff --git a/src/mesa/main/macros.h b/src/mesa/main/macros.h diff --git a/src/mesa/main/matrix.c b/src/mesa/main/matrix.c diff --git a/src/mesa/main/matrix.h b/src/mesa/main/matrix.h diff --git a/src/mesa/main/mipmap.c b/src/mesa/main/mipmap.c diff --git a/src/mesa/main/mipmap.h b/src/mesa/main/mipmap.h diff --git a/src/mesa/main/mm.c b/src/mesa/main/mm.c diff --git a/src/mesa/main/mm.h b/src/mesa/main/mm.h diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h diff --git a/src/mesa/main/pixel.c b/src/mesa/main/pixel.c diff --git a/src/mesa/main/pixel.h b/src/mesa/main/pixel.h diff --git a/src/mesa/main/points.c b/src/mesa/main/points.c diff --git a/src/mesa/main/points.h b/src/mesa/main/points.h diff --git a/src/mesa/main/polygon.c b/src/mesa/main/polygon.c diff --git a/src/mesa/main/polygon.h b/src/mesa/main/polygon.h diff --git a/src/mesa/main/queryobj.c b/src/mesa/main/queryobj.c diff --git a/src/mesa/main/queryobj.h b/src/mesa/main/queryobj.h diff --git a/src/mesa/main/rastpos.c b/src/mesa/main/rastpos.c diff --git a/src/mesa/main/rastpos.h b/src/mesa/main/rastpos.h diff --git a/src/mesa/main/rbadaptors.c b/src/mesa/main/rbadaptors.c diff --git a/src/mesa/main/rbadaptors.h b/src/mesa/main/rbadaptors.h diff --git a/src/mesa/main/renderbuffer.c b/src/mesa/main/renderbuffer.c diff --git a/src/mesa/main/renderbuffer.h b/src/mesa/main/renderbuffer.h diff --git a/src/mesa/main/shaders.c b/src/mesa/main/shaders.c diff --git a/src/mesa/main/shaders.h b/src/mesa/main/shaders.h diff --git a/src/mesa/main/simple_list.h b/src/mesa/main/simple_list.h diff --git a/src/mesa/main/sources b/src/mesa/main/sources diff --git a/src/mesa/main/state.c b/src/mesa/main/state.c diff --git a/src/mesa/main/state.h b/src/mesa/main/state.h diff --git a/src/mesa/main/stencil.c b/src/mesa/main/stencil.c diff --git a/src/mesa/main/stencil.h b/src/mesa/main/stencil.h diff --git a/src/mesa/main/texcompress.c b/src/mesa/main/texcompress.c diff --git a/src/mesa/main/texcompress.h b/src/mesa/main/texcompress.h diff --git a/src/mesa/main/texcompress_fxt1.c b/src/mesa/main/texcompress_fxt1.c diff --git a/src/mesa/main/texcompress_s3tc.c b/src/mesa/main/texcompress_s3tc.c diff --git a/src/mesa/main/texenvprogram.c b/src/mesa/main/texenvprogram.c diff --git a/src/mesa/main/texenvprogram.h b/src/mesa/main/texenvprogram.h diff --git a/src/mesa/main/texformat.c b/src/mesa/main/texformat.c diff --git a/src/mesa/main/texformat.h b/src/mesa/main/texformat.h diff --git a/src/mesa/main/texformat_tmp.h b/src/mesa/main/texformat_tmp.h diff --git a/src/mesa/main/teximage.c b/src/mesa/main/teximage.c diff --git a/src/mesa/main/teximage.h b/src/mesa/main/teximage.h diff --git a/src/mesa/main/texobj.c b/src/mesa/main/texobj.c diff --git a/src/mesa/main/texobj.h b/src/mesa/main/texobj.h diff --git a/src/mesa/main/texrender.c b/src/mesa/main/texrender.c diff --git a/src/mesa/main/texrender.h b/src/mesa/main/texrender.h diff --git a/src/mesa/main/texstate.c b/src/mesa/main/texstate.c diff --git a/src/mesa/main/texstate.h b/src/mesa/main/texstate.h diff --git a/src/mesa/main/texstore.c b/src/mesa/main/texstore.c diff --git a/src/mesa/main/texstore.h b/src/mesa/main/texstore.h diff --git a/src/mesa/main/varray.c b/src/mesa/main/varray.c diff --git a/src/mesa/main/varray.h b/src/mesa/main/varray.h diff --git a/src/mesa/main/version.h b/src/mesa/main/version.h diff --git a/src/mesa/main/vsnprintf.c b/src/mesa/main/vsnprintf.c diff --git a/src/mesa/main/vtxfmt.c b/src/mesa/main/vtxfmt.c diff --git a/src/mesa/main/vtxfmt.h b/src/mesa/main/vtxfmt.h diff --git a/src/mesa/main/vtxfmt_tmp.h b/src/mesa/main/vtxfmt_tmp.h diff --git a/src/mesa/math/descrip.mms b/src/mesa/math/descrip.mms diff --git a/src/mesa/math/m_clip_tmp.h b/src/mesa/math/m_clip_tmp.h diff --git a/src/mesa/math/m_copy_tmp.h b/src/mesa/math/m_copy_tmp.h diff --git a/src/mesa/math/m_debug.h b/src/mesa/math/m_debug.h diff --git a/src/mesa/math/m_debug_clip.c b/src/mesa/math/m_debug_clip.c diff --git a/src/mesa/math/m_debug_norm.c b/src/mesa/math/m_debug_norm.c diff --git a/src/mesa/math/m_debug_util.h b/src/mesa/math/m_debug_util.h diff --git a/src/mesa/math/m_debug_xform.c b/src/mesa/math/m_debug_xform.c diff --git a/src/mesa/math/m_dotprod_tmp.h b/src/mesa/math/m_dotprod_tmp.h diff --git a/src/mesa/math/m_eval.c b/src/mesa/math/m_eval.c diff --git a/src/mesa/math/m_eval.h b/src/mesa/math/m_eval.h diff --git a/src/mesa/math/m_matrix.c b/src/mesa/math/m_matrix.c diff --git a/src/mesa/math/m_matrix.h b/src/mesa/math/m_matrix.h diff --git a/src/mesa/math/m_norm_tmp.h b/src/mesa/math/m_norm_tmp.h diff --git a/src/mesa/math/m_trans_tmp.h b/src/mesa/math/m_trans_tmp.h diff --git a/src/mesa/math/m_translate.c b/src/mesa/math/m_translate.c diff --git a/src/mesa/math/m_translate.h b/src/mesa/math/m_translate.h diff --git a/src/mesa/math/m_vector.c b/src/mesa/math/m_vector.c diff --git a/src/mesa/math/m_vector.h b/src/mesa/math/m_vector.h diff --git a/src/mesa/math/m_xform.c b/src/mesa/math/m_xform.c diff --git a/src/mesa/math/m_xform.h b/src/mesa/math/m_xform.h diff --git a/src/mesa/math/m_xform_tmp.h b/src/mesa/math/m_xform_tmp.h diff --git a/src/mesa/math/mathmod.h b/src/mesa/math/mathmod.h diff --git a/src/mesa/math/sources b/src/mesa/math/sources diff --git a/src/mesa/ppc/common_ppc.c b/src/mesa/ppc/common_ppc.c diff --git a/src/mesa/ppc/common_ppc_features.h b/src/mesa/ppc/common_ppc_features.h diff --git a/src/mesa/shader/arbprogparse.c b/src/mesa/shader/arbprogparse.c diff --git a/src/mesa/shader/arbprogparse.h b/src/mesa/shader/arbprogparse.h diff --git a/src/mesa/shader/arbprogram.c b/src/mesa/shader/arbprogram.c diff --git a/src/mesa/shader/arbprogram.h b/src/mesa/shader/arbprogram.h diff --git a/src/mesa/shader/arbprogram.syn b/src/mesa/shader/arbprogram.syn diff --git a/src/mesa/shader/arbprogram_syn.h b/src/mesa/shader/arbprogram_syn.h diff --git a/src/mesa/shader/atifragshader.c b/src/mesa/shader/atifragshader.c diff --git a/src/mesa/shader/atifragshader.h b/src/mesa/shader/atifragshader.h diff --git a/src/mesa/shader/descrip.mms b/src/mesa/shader/descrip.mms diff --git a/src/mesa/shader/grammar/descrip.mms b/src/mesa/shader/grammar/descrip.mms diff --git a/src/mesa/shader/grammar/grammar.c b/src/mesa/shader/grammar/grammar.c diff --git a/src/mesa/shader/grammar/grammar.h b/src/mesa/shader/grammar/grammar.h diff --git a/src/mesa/shader/grammar/grammar.syn b/src/mesa/shader/grammar/grammar.syn diff --git a/src/mesa/shader/grammar/grammar_crt.c b/src/mesa/shader/grammar/grammar_crt.c diff --git a/src/mesa/shader/grammar/grammar_crt.h b/src/mesa/shader/grammar/grammar_crt.h diff --git a/src/mesa/shader/grammar/grammar_mesa.c b/src/mesa/shader/grammar/grammar_mesa.c diff --git a/src/mesa/shader/grammar/grammar_mesa.h b/src/mesa/shader/grammar/grammar_mesa.h diff --git a/src/mesa/shader/grammar/grammar_syn.h b/src/mesa/shader/grammar/grammar_syn.h diff --git a/src/mesa/shader/grammar/sources b/src/mesa/shader/grammar/sources diff --git a/src/mesa/shader/nvfragparse.c b/src/mesa/shader/nvfragparse.c diff --git a/src/mesa/shader/nvfragparse.h b/src/mesa/shader/nvfragparse.h diff --git a/src/mesa/shader/nvprogram.c b/src/mesa/shader/nvprogram.c diff --git a/src/mesa/shader/nvprogram.h b/src/mesa/shader/nvprogram.h diff --git a/src/mesa/shader/nvvertparse.c b/src/mesa/shader/nvvertparse.c diff --git a/src/mesa/shader/nvvertparse.h b/src/mesa/shader/nvvertparse.h diff --git a/src/mesa/shader/prog_debug.c b/src/mesa/shader/prog_debug.c diff --git a/src/mesa/shader/prog_debug.h b/src/mesa/shader/prog_debug.h diff --git a/src/mesa/shader/prog_execute.c b/src/mesa/shader/prog_execute.c diff --git a/src/mesa/shader/prog_execute.h b/src/mesa/shader/prog_execute.h diff --git a/src/mesa/shader/prog_instruction.c b/src/mesa/shader/prog_instruction.c diff --git a/src/mesa/shader/prog_instruction.h b/src/mesa/shader/prog_instruction.h diff --git a/src/mesa/shader/prog_parameter.c b/src/mesa/shader/prog_parameter.c diff --git a/src/mesa/shader/prog_parameter.h b/src/mesa/shader/prog_parameter.h diff --git a/src/mesa/shader/prog_print.c b/src/mesa/shader/prog_print.c diff --git a/src/mesa/shader/prog_print.h b/src/mesa/shader/prog_print.h diff --git a/src/mesa/shader/prog_statevars.c b/src/mesa/shader/prog_statevars.c diff --git a/src/mesa/shader/prog_statevars.h b/src/mesa/shader/prog_statevars.h diff --git a/src/mesa/shader/program.c b/src/mesa/shader/program.c diff --git a/src/mesa/shader/program.h b/src/mesa/shader/program.h diff --git a/src/mesa/shader/programopt.c b/src/mesa/shader/programopt.c diff --git a/src/mesa/shader/programopt.h b/src/mesa/shader/programopt.h diff --git a/src/mesa/shader/shader_api.c b/src/mesa/shader/shader_api.c diff --git a/src/mesa/shader/shader_api.h b/src/mesa/shader/shader_api.h diff --git a/src/mesa/shader/slang/descrip.mms b/src/mesa/shader/slang/descrip.mms diff --git a/src/mesa/shader/slang/library/Makefile b/src/mesa/shader/slang/library/Makefile diff --git a/src/mesa/shader/slang/library/gc_to_bin.c b/src/mesa/shader/slang/library/gc_to_bin.c diff --git a/src/mesa/shader/slang/library/slang_120_core.gc b/src/mesa/shader/slang/library/slang_120_core.gc diff --git a/src/mesa/shader/slang/library/slang_120_core_gc.h b/src/mesa/shader/slang/library/slang_120_core_gc.h diff --git a/src/mesa/shader/slang/library/slang_builtin_120_common.gc b/src/mesa/shader/slang/library/slang_builtin_120_common.gc diff --git a/src/mesa/shader/slang/library/slang_builtin_120_fragment.gc b/src/mesa/shader/slang/library/slang_builtin_120_fragment.gc diff --git a/src/mesa/shader/slang/library/slang_common_builtin.gc b/src/mesa/shader/slang/library/slang_common_builtin.gc diff --git a/src/mesa/shader/slang/library/slang_common_builtin_gc.h b/src/mesa/shader/slang/library/slang_common_builtin_gc.h diff --git a/src/mesa/shader/slang/library/slang_core.gc b/src/mesa/shader/slang/library/slang_core.gc diff --git a/src/mesa/shader/slang/library/slang_core_gc.h b/src/mesa/shader/slang/library/slang_core_gc.h diff --git a/src/mesa/shader/slang/library/slang_fragment_builtin.gc b/src/mesa/shader/slang/library/slang_fragment_builtin.gc diff --git a/src/mesa/shader/slang/library/slang_fragment_builtin_gc.h b/src/mesa/shader/slang/library/slang_fragment_builtin_gc.h diff --git a/src/mesa/shader/slang/library/slang_pp_directives.syn b/src/mesa/shader/slang/library/slang_pp_directives.syn diff --git a/src/mesa/shader/slang/library/slang_pp_directives_syn.h b/src/mesa/shader/slang/library/slang_pp_directives_syn.h diff --git a/src/mesa/shader/slang/library/slang_pp_expression.syn b/src/mesa/shader/slang/library/slang_pp_expression.syn diff --git a/src/mesa/shader/slang/library/slang_pp_expression_syn.h b/src/mesa/shader/slang/library/slang_pp_expression_syn.h diff --git a/src/mesa/shader/slang/library/slang_pp_version.syn b/src/mesa/shader/slang/library/slang_pp_version.syn diff --git a/src/mesa/shader/slang/library/slang_pp_version_syn.h b/src/mesa/shader/slang/library/slang_pp_version_syn.h diff --git a/src/mesa/shader/slang/library/slang_shader.syn b/src/mesa/shader/slang/library/slang_shader.syn diff --git a/src/mesa/shader/slang/library/slang_shader_syn.h b/src/mesa/shader/slang/library/slang_shader_syn.h diff --git a/src/mesa/shader/slang/library/slang_version.syn b/src/mesa/shader/slang/library/slang_version.syn diff --git a/src/mesa/shader/slang/library/slang_version_syn.h b/src/mesa/shader/slang/library/slang_version_syn.h diff --git a/src/mesa/shader/slang/library/slang_vertex_builtin.gc b/src/mesa/shader/slang/library/slang_vertex_builtin.gc diff --git a/src/mesa/shader/slang/library/slang_vertex_builtin_gc.h b/src/mesa/shader/slang/library/slang_vertex_builtin_gc.h diff --git a/src/mesa/shader/slang/library/syn_to_c.c b/src/mesa/shader/slang/library/syn_to_c.c diff --git a/src/mesa/shader/slang/slang_builtin.c b/src/mesa/shader/slang/slang_builtin.c diff --git a/src/mesa/shader/slang/slang_builtin.h b/src/mesa/shader/slang/slang_builtin.h diff --git a/src/mesa/shader/slang/slang_codegen.c b/src/mesa/shader/slang/slang_codegen.c diff --git a/src/mesa/shader/slang/slang_codegen.h b/src/mesa/shader/slang/slang_codegen.h diff --git a/src/mesa/shader/slang/slang_compile.c b/src/mesa/shader/slang/slang_compile.c diff --git a/src/mesa/shader/slang/slang_compile.h b/src/mesa/shader/slang/slang_compile.h diff --git a/src/mesa/shader/slang/slang_compile_function.c b/src/mesa/shader/slang/slang_compile_function.c diff --git a/src/mesa/shader/slang/slang_compile_function.h b/src/mesa/shader/slang/slang_compile_function.h diff --git a/src/mesa/shader/slang/slang_compile_operation.c b/src/mesa/shader/slang/slang_compile_operation.c diff --git a/src/mesa/shader/slang/slang_compile_operation.h b/src/mesa/shader/slang/slang_compile_operation.h diff --git a/src/mesa/shader/slang/slang_compile_struct.c b/src/mesa/shader/slang/slang_compile_struct.c diff --git a/src/mesa/shader/slang/slang_compile_struct.h b/src/mesa/shader/slang/slang_compile_struct.h diff --git a/src/mesa/shader/slang/slang_compile_variable.c b/src/mesa/shader/slang/slang_compile_variable.c diff --git a/src/mesa/shader/slang/slang_compile_variable.h b/src/mesa/shader/slang/slang_compile_variable.h diff --git a/src/mesa/shader/slang/slang_emit.c b/src/mesa/shader/slang/slang_emit.c diff --git a/src/mesa/shader/slang/slang_emit.h b/src/mesa/shader/slang/slang_emit.h diff --git a/src/mesa/shader/slang/slang_ir.c b/src/mesa/shader/slang/slang_ir.c diff --git a/src/mesa/shader/slang/slang_ir.h b/src/mesa/shader/slang/slang_ir.h diff --git a/src/mesa/shader/slang/slang_label.c b/src/mesa/shader/slang/slang_label.c diff --git a/src/mesa/shader/slang/slang_label.h b/src/mesa/shader/slang/slang_label.h diff --git a/src/mesa/shader/slang/slang_library_noise.c b/src/mesa/shader/slang/slang_library_noise.c diff --git a/src/mesa/shader/slang/slang_library_noise.h b/src/mesa/shader/slang/slang_library_noise.h diff --git a/src/mesa/shader/slang/slang_link.c b/src/mesa/shader/slang/slang_link.c diff --git a/src/mesa/shader/slang/slang_link.h b/src/mesa/shader/slang/slang_link.h diff --git a/src/mesa/shader/slang/slang_log.c b/src/mesa/shader/slang/slang_log.c diff --git a/src/mesa/shader/slang/slang_log.h b/src/mesa/shader/slang/slang_log.h diff --git a/src/mesa/shader/slang/slang_mem.c b/src/mesa/shader/slang/slang_mem.c diff --git a/src/mesa/shader/slang/slang_mem.h b/src/mesa/shader/slang/slang_mem.h diff --git a/src/mesa/shader/slang/slang_preprocess.c b/src/mesa/shader/slang/slang_preprocess.c diff --git a/src/mesa/shader/slang/slang_preprocess.h b/src/mesa/shader/slang/slang_preprocess.h diff --git a/src/mesa/shader/slang/slang_print.c b/src/mesa/shader/slang/slang_print.c diff --git a/src/mesa/shader/slang/slang_print.h b/src/mesa/shader/slang/slang_print.h diff --git a/src/mesa/shader/slang/slang_simplify.c b/src/mesa/shader/slang/slang_simplify.c diff --git a/src/mesa/shader/slang/slang_simplify.h b/src/mesa/shader/slang/slang_simplify.h diff --git a/src/mesa/shader/slang/slang_storage.c b/src/mesa/shader/slang/slang_storage.c diff --git a/src/mesa/shader/slang/slang_storage.h b/src/mesa/shader/slang/slang_storage.h diff --git a/src/mesa/shader/slang/slang_typeinfo.c b/src/mesa/shader/slang/slang_typeinfo.c diff --git a/src/mesa/shader/slang/slang_typeinfo.h b/src/mesa/shader/slang/slang_typeinfo.h diff --git a/src/mesa/shader/slang/slang_utility.c b/src/mesa/shader/slang/slang_utility.c diff --git a/src/mesa/shader/slang/slang_utility.h b/src/mesa/shader/slang/slang_utility.h diff --git a/src/mesa/shader/slang/slang_vartable.c b/src/mesa/shader/slang/slang_vartable.c diff --git a/src/mesa/shader/slang/slang_vartable.h b/src/mesa/shader/slang/slang_vartable.h diff --git a/src/mesa/shader/slang/sources b/src/mesa/shader/slang/sources diff --git a/src/mesa/shader/sources b/src/mesa/shader/sources diff --git a/src/mesa/sources b/src/mesa/sources diff --git a/src/mesa/sparc/clip.S b/src/mesa/sparc/clip.S diff --git a/src/mesa/sparc/glapi_sparc.S b/src/mesa/sparc/glapi_sparc.S diff --git a/src/mesa/sparc/norm.S b/src/mesa/sparc/norm.S diff --git a/src/mesa/sparc/sparc.c b/src/mesa/sparc/sparc.c diff --git a/src/mesa/sparc/sparc.h b/src/mesa/sparc/sparc.h diff --git a/src/mesa/sparc/sparc_matrix.h b/src/mesa/sparc/sparc_matrix.h diff --git a/src/mesa/sparc/xform.S b/src/mesa/sparc/xform.S diff --git a/src/mesa/swrast/NOTES b/src/mesa/swrast/NOTES diff --git a/src/mesa/swrast/descrip.mms b/src/mesa/swrast/descrip.mms diff --git a/src/mesa/swrast/s_aaline.c b/src/mesa/swrast/s_aaline.c diff --git a/src/mesa/swrast/s_aaline.h b/src/mesa/swrast/s_aaline.h diff --git a/src/mesa/swrast/s_aalinetemp.h b/src/mesa/swrast/s_aalinetemp.h diff --git a/src/mesa/swrast/s_aatriangle.c b/src/mesa/swrast/s_aatriangle.c diff --git a/src/mesa/swrast/s_aatriangle.h b/src/mesa/swrast/s_aatriangle.h diff --git a/src/mesa/swrast/s_aatritemp.h b/src/mesa/swrast/s_aatritemp.h diff --git a/src/mesa/swrast/s_accum.c b/src/mesa/swrast/s_accum.c diff --git a/src/mesa/swrast/s_accum.h b/src/mesa/swrast/s_accum.h diff --git a/src/mesa/swrast/s_alpha.c b/src/mesa/swrast/s_alpha.c diff --git a/src/mesa/swrast/s_alpha.h b/src/mesa/swrast/s_alpha.h diff --git a/src/mesa/swrast/s_atifragshader.c b/src/mesa/swrast/s_atifragshader.c diff --git a/src/mesa/swrast/s_atifragshader.h b/src/mesa/swrast/s_atifragshader.h diff --git a/src/mesa/swrast/s_bitmap.c b/src/mesa/swrast/s_bitmap.c diff --git a/src/mesa/swrast/s_blend.c b/src/mesa/swrast/s_blend.c diff --git a/src/mesa/swrast/s_blend.h b/src/mesa/swrast/s_blend.h diff --git a/src/mesa/swrast/s_blit.c b/src/mesa/swrast/s_blit.c diff --git a/src/mesa/swrast/s_buffers.c b/src/mesa/swrast/s_buffers.c diff --git a/src/mesa/swrast/s_context.c b/src/mesa/swrast/s_context.c diff --git a/src/mesa/swrast/s_context.h b/src/mesa/swrast/s_context.h diff --git a/src/mesa/swrast/s_copypix.c b/src/mesa/swrast/s_copypix.c diff --git a/src/mesa/swrast/s_depth.c b/src/mesa/swrast/s_depth.c diff --git a/src/mesa/swrast/s_depth.h b/src/mesa/swrast/s_depth.h diff --git a/src/mesa/swrast/s_drawpix.c b/src/mesa/swrast/s_drawpix.c diff --git a/src/mesa/swrast/s_drawpix.h b/src/mesa/swrast/s_drawpix.h diff --git a/src/mesa/swrast/s_feedback.c b/src/mesa/swrast/s_feedback.c diff --git a/src/mesa/swrast/s_feedback.h b/src/mesa/swrast/s_feedback.h diff --git a/src/mesa/swrast/s_fog.c b/src/mesa/swrast/s_fog.c diff --git a/src/mesa/swrast/s_fog.h b/src/mesa/swrast/s_fog.h diff --git a/src/mesa/swrast/s_fragprog.c b/src/mesa/swrast/s_fragprog.c diff --git a/src/mesa/swrast/s_fragprog.h b/src/mesa/swrast/s_fragprog.h diff --git a/src/mesa/swrast/s_imaging.c b/src/mesa/swrast/s_imaging.c diff --git a/src/mesa/swrast/s_lines.c b/src/mesa/swrast/s_lines.c diff --git a/src/mesa/swrast/s_lines.h b/src/mesa/swrast/s_lines.h diff --git a/src/mesa/swrast/s_linetemp.h b/src/mesa/swrast/s_linetemp.h diff --git a/src/mesa/swrast/s_logic.c b/src/mesa/swrast/s_logic.c diff --git a/src/mesa/swrast/s_logic.h b/src/mesa/swrast/s_logic.h diff --git a/src/mesa/swrast/s_masking.c b/src/mesa/swrast/s_masking.c diff --git a/src/mesa/swrast/s_masking.h b/src/mesa/swrast/s_masking.h diff --git a/src/mesa/swrast/s_points.c b/src/mesa/swrast/s_points.c diff --git a/src/mesa/swrast/s_points.h b/src/mesa/swrast/s_points.h diff --git a/src/mesa/swrast/s_readpix.c b/src/mesa/swrast/s_readpix.c diff --git a/src/mesa/swrast/s_span.c b/src/mesa/swrast/s_span.c diff --git a/src/mesa/swrast/s_span.h b/src/mesa/swrast/s_span.h diff --git a/src/mesa/swrast/s_spantemp.h b/src/mesa/swrast/s_spantemp.h diff --git a/src/mesa/swrast/s_stencil.c b/src/mesa/swrast/s_stencil.c diff --git a/src/mesa/swrast/s_stencil.h b/src/mesa/swrast/s_stencil.h diff --git a/src/mesa/swrast/s_texcombine.c b/src/mesa/swrast/s_texcombine.c diff --git a/src/mesa/swrast/s_texcombine.h b/src/mesa/swrast/s_texcombine.h diff --git a/src/mesa/swrast/s_texfilter.c b/src/mesa/swrast/s_texfilter.c diff --git a/src/mesa/swrast/s_texfilter.h b/src/mesa/swrast/s_texfilter.h diff --git a/src/mesa/swrast/s_texstore.c b/src/mesa/swrast/s_texstore.c diff --git a/src/mesa/swrast/s_triangle.c b/src/mesa/swrast/s_triangle.c diff --git a/src/mesa/swrast/s_triangle.h b/src/mesa/swrast/s_triangle.h diff --git a/src/mesa/swrast/s_trispan.h b/src/mesa/swrast/s_trispan.h diff --git a/src/mesa/swrast/s_tritemp.h b/src/mesa/swrast/s_tritemp.h diff --git a/src/mesa/swrast/s_zoom.c b/src/mesa/swrast/s_zoom.c diff --git a/src/mesa/swrast/s_zoom.h b/src/mesa/swrast/s_zoom.h diff --git a/src/mesa/swrast/sources b/src/mesa/swrast/sources diff --git a/src/mesa/swrast/swrast.h b/src/mesa/swrast/swrast.h diff --git a/src/mesa/swrast_setup/NOTES b/src/mesa/swrast_setup/NOTES diff --git a/src/mesa/swrast_setup/descrip.mms b/src/mesa/swrast_setup/descrip.mms diff --git a/src/mesa/swrast_setup/sources b/src/mesa/swrast_setup/sources diff --git a/src/mesa/swrast_setup/ss_context.c b/src/mesa/swrast_setup/ss_context.c diff --git a/src/mesa/swrast_setup/ss_context.h b/src/mesa/swrast_setup/ss_context.h diff --git a/src/mesa/swrast_setup/ss_triangle.c b/src/mesa/swrast_setup/ss_triangle.c diff --git a/src/mesa/swrast_setup/ss_triangle.h b/src/mesa/swrast_setup/ss_triangle.h diff --git a/src/mesa/swrast_setup/ss_tritmp.h b/src/mesa/swrast_setup/ss_tritmp.h diff --git a/src/mesa/swrast_setup/ss_vb.h b/src/mesa/swrast_setup/ss_vb.h diff --git a/src/mesa/swrast_setup/swrast_setup.h b/src/mesa/swrast_setup/swrast_setup.h diff --git a/src/mesa/tnl/NOTES b/src/mesa/tnl/NOTES diff --git a/src/mesa/tnl/descrip.mms b/src/mesa/tnl/descrip.mms diff --git a/src/mesa/tnl/sources b/src/mesa/tnl/sources diff --git a/src/mesa/tnl/t_context.c b/src/mesa/tnl/t_context.c diff --git a/src/mesa/tnl/t_context.h b/src/mesa/tnl/t_context.h diff --git a/src/mesa/tnl/t_draw.c b/src/mesa/tnl/t_draw.c diff --git a/src/mesa/tnl/t_pipeline.c b/src/mesa/tnl/t_pipeline.c diff --git a/src/mesa/tnl/t_pipeline.h b/src/mesa/tnl/t_pipeline.h diff --git a/src/mesa/tnl/t_vb_cliptmp.h b/src/mesa/tnl/t_vb_cliptmp.h diff --git a/src/mesa/tnl/t_vb_cull.c b/src/mesa/tnl/t_vb_cull.c diff --git a/src/mesa/tnl/t_vb_fog.c b/src/mesa/tnl/t_vb_fog.c diff --git a/src/mesa/tnl/t_vb_light.c b/src/mesa/tnl/t_vb_light.c diff --git a/src/mesa/tnl/t_vb_lighttmp.h b/src/mesa/tnl/t_vb_lighttmp.h diff --git a/src/mesa/tnl/t_vb_normals.c b/src/mesa/tnl/t_vb_normals.c diff --git a/src/mesa/tnl/t_vb_points.c b/src/mesa/tnl/t_vb_points.c diff --git a/src/mesa/tnl/t_vb_program.c b/src/mesa/tnl/t_vb_program.c diff --git a/src/mesa/tnl/t_vb_render.c b/src/mesa/tnl/t_vb_render.c diff --git a/src/mesa/tnl/t_vb_rendertmp.h b/src/mesa/tnl/t_vb_rendertmp.h diff --git a/src/mesa/tnl/t_vb_texgen.c b/src/mesa/tnl/t_vb_texgen.c diff --git a/src/mesa/tnl/t_vb_texmat.c b/src/mesa/tnl/t_vb_texmat.c diff --git a/src/mesa/tnl/t_vb_vertex.c b/src/mesa/tnl/t_vb_vertex.c diff --git a/src/mesa/tnl/t_vertex.c b/src/mesa/tnl/t_vertex.c diff --git a/src/mesa/tnl/t_vertex.h b/src/mesa/tnl/t_vertex.h diff --git a/src/mesa/tnl/t_vertex_generic.c b/src/mesa/tnl/t_vertex_generic.c diff --git a/src/mesa/tnl/t_vertex_sse.c b/src/mesa/tnl/t_vertex_sse.c diff --git a/src/mesa/tnl/t_vp_build.c b/src/mesa/tnl/t_vp_build.c diff --git a/src/mesa/tnl/t_vp_build.h b/src/mesa/tnl/t_vp_build.h diff --git a/src/mesa/tnl/tnl.h b/src/mesa/tnl/tnl.h diff --git a/src/mesa/tnl_dd/imm/NOTES.imm b/src/mesa/tnl_dd/imm/NOTES.imm diff --git a/src/mesa/tnl_dd/imm/t_dd_imm_capi.h b/src/mesa/tnl_dd/imm/t_dd_imm_capi.h diff --git a/src/mesa/tnl_dd/imm/t_dd_imm_napi.h b/src/mesa/tnl_dd/imm/t_dd_imm_napi.h diff --git a/src/mesa/tnl_dd/imm/t_dd_imm_primtmp.h b/src/mesa/tnl_dd/imm/t_dd_imm_primtmp.h diff --git a/src/mesa/tnl_dd/imm/t_dd_imm_tapi.h b/src/mesa/tnl_dd/imm/t_dd_imm_tapi.h diff --git a/src/mesa/tnl_dd/imm/t_dd_imm_vapi.h b/src/mesa/tnl_dd/imm/t_dd_imm_vapi.h diff --git a/src/mesa/tnl_dd/imm/t_dd_imm_vb.c b/src/mesa/tnl_dd/imm/t_dd_imm_vb.c diff --git a/src/mesa/tnl_dd/imm/t_dd_imm_vbtmp.h b/src/mesa/tnl_dd/imm/t_dd_imm_vbtmp.h diff --git a/src/mesa/tnl_dd/t_dd.c b/src/mesa/tnl_dd/t_dd.c diff --git a/src/mesa/tnl_dd/t_dd_dmatmp.h b/src/mesa/tnl_dd/t_dd_dmatmp.h diff --git a/src/mesa/tnl_dd/t_dd_dmatmp2.h b/src/mesa/tnl_dd/t_dd_dmatmp2.h diff --git a/src/mesa/tnl_dd/t_dd_rendertmp.h b/src/mesa/tnl_dd/t_dd_rendertmp.h diff --git a/src/mesa/tnl_dd/t_dd_triemit.h b/src/mesa/tnl_dd/t_dd_triemit.h diff --git a/src/mesa/tnl_dd/t_dd_tritmp.h b/src/mesa/tnl_dd/t_dd_tritmp.h diff --git a/src/mesa/tnl_dd/t_dd_unfilled.h b/src/mesa/tnl_dd/t_dd_unfilled.h diff --git a/src/mesa/tnl_dd/t_dd_vb.c b/src/mesa/tnl_dd/t_dd_vb.c diff --git a/src/mesa/tnl_dd/t_dd_vbtmp.h b/src/mesa/tnl_dd/t_dd_vbtmp.h diff --git a/src/mesa/tnl_dd/t_dd_vertex.h b/src/mesa/tnl_dd/t_dd_vertex.h diff --git a/src/mesa/vbo/descrip.mms b/src/mesa/vbo/descrip.mms diff --git a/src/mesa/vbo/vbo.h b/src/mesa/vbo/vbo.h diff --git a/src/mesa/vbo/vbo_attrib.h b/src/mesa/vbo/vbo_attrib.h diff --git a/src/mesa/vbo/vbo_attrib_tmp.h b/src/mesa/vbo/vbo_attrib_tmp.h diff --git a/src/mesa/vbo/vbo_context.c b/src/mesa/vbo/vbo_context.c diff --git a/src/mesa/vbo/vbo_context.h b/src/mesa/vbo/vbo_context.h diff --git a/src/mesa/vbo/vbo_exec.c b/src/mesa/vbo/vbo_exec.c diff --git a/src/mesa/vbo/vbo_exec.h b/src/mesa/vbo/vbo_exec.h diff --git a/src/mesa/vbo/vbo_exec_api.c b/src/mesa/vbo/vbo_exec_api.c diff --git a/src/mesa/vbo/vbo_exec_array.c b/src/mesa/vbo/vbo_exec_array.c diff --git a/src/mesa/vbo/vbo_exec_draw.c b/src/mesa/vbo/vbo_exec_draw.c diff --git a/src/mesa/vbo/vbo_exec_eval.c b/src/mesa/vbo/vbo_exec_eval.c diff --git a/src/mesa/vbo/vbo_rebase.c b/src/mesa/vbo/vbo_rebase.c diff --git a/src/mesa/vbo/vbo_save.c b/src/mesa/vbo/vbo_save.c diff --git a/src/mesa/vbo/vbo_save.h b/src/mesa/vbo/vbo_save.h diff --git a/src/mesa/vbo/vbo_save_api.c b/src/mesa/vbo/vbo_save_api.c diff --git a/src/mesa/vbo/vbo_save_draw.c b/src/mesa/vbo/vbo_save_draw.c diff --git a/src/mesa/vbo/vbo_save_loopback.c b/src/mesa/vbo/vbo_save_loopback.c diff --git a/src/mesa/vbo/vbo_split.c b/src/mesa/vbo/vbo_split.c diff --git a/src/mesa/vbo/vbo_split.h b/src/mesa/vbo/vbo_split.h diff --git a/src/mesa/vbo/vbo_split_copy.c b/src/mesa/vbo/vbo_split_copy.c diff --git a/src/mesa/vbo/vbo_split_inplace.c b/src/mesa/vbo/vbo_split_inplace.c diff --git a/src/mesa/x86-64/Makefile b/src/mesa/x86-64/Makefile diff --git a/src/mesa/x86-64/calling_convention.txt b/src/mesa/x86-64/calling_convention.txt diff --git a/src/mesa/x86-64/glapi_x86-64.S b/src/mesa/x86-64/glapi_x86-64.S diff --git a/src/mesa/x86-64/x86-64.c b/src/mesa/x86-64/x86-64.c diff --git a/src/mesa/x86-64/x86-64.h b/src/mesa/x86-64/x86-64.h diff --git a/src/mesa/x86-64/xform4.S b/src/mesa/x86-64/xform4.S diff --git a/src/mesa/x86/3dnow.c b/src/mesa/x86/3dnow.c diff --git a/src/mesa/x86/3dnow.h b/src/mesa/x86/3dnow.h diff --git a/src/mesa/x86/3dnow_normal.S b/src/mesa/x86/3dnow_normal.S diff --git a/src/mesa/x86/3dnow_xform1.S b/src/mesa/x86/3dnow_xform1.S diff --git a/src/mesa/x86/3dnow_xform2.S b/src/mesa/x86/3dnow_xform2.S diff --git a/src/mesa/x86/3dnow_xform3.S b/src/mesa/x86/3dnow_xform3.S diff --git a/src/mesa/x86/3dnow_xform4.S b/src/mesa/x86/3dnow_xform4.S diff --git a/src/mesa/x86/Makefile b/src/mesa/x86/Makefile diff --git a/src/mesa/x86/assyntax.h b/src/mesa/x86/assyntax.h diff --git a/src/mesa/x86/clip_args.h b/src/mesa/x86/clip_args.h diff --git a/src/mesa/x86/common_x86.c b/src/mesa/x86/common_x86.c diff --git a/src/mesa/x86/common_x86_asm.S b/src/mesa/x86/common_x86_asm.S diff --git a/src/mesa/x86/common_x86_asm.h b/src/mesa/x86/common_x86_asm.h diff --git a/src/mesa/x86/common_x86_features.h b/src/mesa/x86/common_x86_features.h diff --git a/src/mesa/x86/common_x86_macros.h b/src/mesa/x86/common_x86_macros.h diff --git a/src/mesa/x86/gen_matypes.c b/src/mesa/x86/gen_matypes.c diff --git a/src/mesa/x86/glapi_x86.S b/src/mesa/x86/glapi_x86.S diff --git a/src/mesa/x86/mmx.h b/src/mesa/x86/mmx.h diff --git a/src/mesa/x86/mmx_blend.S b/src/mesa/x86/mmx_blend.S diff --git a/src/mesa/x86/mmx_blendtmp.h b/src/mesa/x86/mmx_blendtmp.h diff --git a/src/mesa/x86/norm_args.h b/src/mesa/x86/norm_args.h diff --git a/src/mesa/x86/read_rgba_span_x86.S b/src/mesa/x86/read_rgba_span_x86.S diff --git a/src/mesa/x86/read_rgba_span_x86.h b/src/mesa/x86/read_rgba_span_x86.h diff --git a/src/mesa/x86/rtasm/x86sse.c b/src/mesa/x86/rtasm/x86sse.c diff --git a/src/mesa/x86/rtasm/x86sse.h b/src/mesa/x86/rtasm/x86sse.h diff --git a/src/mesa/x86/sse.c b/src/mesa/x86/sse.c diff --git a/src/mesa/x86/sse.h b/src/mesa/x86/sse.h diff --git a/src/mesa/x86/sse_normal.S b/src/mesa/x86/sse_normal.S diff --git a/src/mesa/x86/sse_xform1.S b/src/mesa/x86/sse_xform1.S diff --git a/src/mesa/x86/sse_xform2.S b/src/mesa/x86/sse_xform2.S diff --git a/src/mesa/x86/sse_xform3.S b/src/mesa/x86/sse_xform3.S diff --git a/src/mesa/x86/sse_xform4.S b/src/mesa/x86/sse_xform4.S diff --git a/src/mesa/x86/x86.c b/src/mesa/x86/x86.c diff --git a/src/mesa/x86/x86.h b/src/mesa/x86/x86.h diff --git a/src/mesa/x86/x86_cliptest.S b/src/mesa/x86/x86_cliptest.S diff --git a/src/mesa/x86/x86_xform2.S b/src/mesa/x86/x86_xform2.S diff --git a/src/mesa/x86/x86_xform3.S b/src/mesa/x86/x86_xform3.S diff --git a/src/mesa/x86/x86_xform4.S b/src/mesa/x86/x86_xform4.S diff --git a/src/mesa/x86/xform_args.h b/src/mesa/x86/xform_args.h diff --git a/vms/analyze_map.com b/vms/analyze_map.com diff --git a/vms/xlib.opt b/vms/xlib.opt diff --git a/vms/xlib_share.opt b/vms/xlib_share.opt diff --git a/windows/VC6/mesa/gdi/gdi.dsp b/windows/VC6/mesa/gdi/gdi.dsp diff --git a/windows/VC6/mesa/glu/compileDebug.txt b/windows/VC6/mesa/glu/compileDebug.txt diff --git a/windows/VC6/mesa/glu/compileRelease.txt b/windows/VC6/mesa/glu/compileRelease.txt diff --git a/windows/VC6/mesa/glu/glu.dsp b/windows/VC6/mesa/glu/glu.dsp diff --git a/windows/VC6/mesa/glu/objectsDebug.txt b/windows/VC6/mesa/glu/objectsDebug.txt diff --git a/windows/VC6/mesa/glu/objectsRelease.txt b/windows/VC6/mesa/glu/objectsRelease.txt diff --git a/windows/VC6/mesa/mesa.dsw b/windows/VC6/mesa/mesa.dsw diff --git a/windows/VC6/mesa/mesa/mesa.dsp b/windows/VC6/mesa/mesa/mesa.dsp diff --git a/windows/VC6/mesa/osmesa/osmesa.dsp b/windows/VC6/mesa/osmesa/osmesa.dsp diff --git a/windows/VC6/progs/demos/gears.dsp b/windows/VC6/progs/demos/gears.dsp diff --git a/windows/VC6/progs/glut/glut.dsp b/windows/VC6/progs/glut/glut.dsp diff --git a/windows/VC6/progs/progs.dsw b/windows/VC6/progs/progs.dsw diff --git a/windows/VC7/mesa/gdi/gdi.vcproj b/windows/VC7/mesa/gdi/gdi.vcproj diff --git a/windows/VC7/mesa/glu/glu.vcproj b/windows/VC7/mesa/glu/glu.vcproj diff --git a/windows/VC7/mesa/mesa.sln b/windows/VC7/mesa/mesa.sln diff --git a/windows/VC7/mesa/mesa/mesa.vcproj b/windows/VC7/mesa/mesa/mesa.vcproj diff --git a/windows/VC7/mesa/osmesa/osmesa.vcproj b/windows/VC7/mesa/osmesa/osmesa.vcproj diff --git a/windows/VC7/progs/demos/gears.vcproj b/windows/VC7/progs/demos/gears.vcproj diff --git a/windows/VC7/progs/glut/glut.vcproj b/windows/VC7/progs/glut/glut.vcproj diff --git a/windows/VC7/progs/progs.sln b/windows/VC7/progs/progs.sln diff --git a/windows/VC8/mesa/gdi/gdi.vcproj b/windows/VC8/mesa/gdi/gdi.vcproj diff --git a/windows/VC8/mesa/glu/glu.vcproj b/windows/VC8/mesa/glu/glu.vcproj diff --git a/windows/VC8/mesa/mesa.sln b/windows/VC8/mesa/mesa.sln diff --git a/windows/VC8/mesa/mesa/mesa.vcproj b/windows/VC8/mesa/mesa/mesa.vcproj diff --git a/windows/VC8/mesa/osmesa/osmesa.vcproj b/windows/VC8/mesa/osmesa/osmesa.vcproj diff --git a/windows/VC8/progs/demos/gears.vcproj b/windows/VC8/progs/demos/gears.vcproj diff --git a/windows/VC8/progs/glut/glut.vcproj b/windows/VC8/progs/glut/glut.vcproj diff --git a/windows/VC8/progs/progs.sln b/windows/VC8/progs/progs.sln