--- /dev/null
+diff -ur X11-6.8.1/xc/extras/Mesa/src/mesa/sparc/clip.S X11-modified/xc/extras/Mesa/src/mesa/sparc/clip.S
+--- X11-6.8.1/xc/extras/Mesa/src/mesa/sparc/clip.S 2005-02-04 01:21:38 +0000
++++ X11-modified/xc/extras/Mesa/src/mesa/sparc/clip.S 2005-02-02 22:29:00 +0000
+@@ -25,7 +25,7 @@
+ #define VEC_SIZE_3 7
+ #define VEC_SIZE_4 15
+
+-#ifdef SVR4
++#if defined(SVR4) || defined(__sparc_v9__)
+ /* Solaris requires this for 64-bit. */
+ .register %g2, #scratch
+ .register %g3, #scratch
+diff -ur X11-6.8.1/xc/extras/Mesa/src/mesa/sparc/glapi_sparc.S X11-modified/xc/extras/Mesa/src/mesa/sparc/glapi_sparc.S
+--- X11-6.8.1/xc/extras/Mesa/src/mesa/sparc/glapi_sparc.S 2005-02-04 01:21:39 +0000
++++ X11-modified/xc/extras/Mesa/src/mesa/sparc/glapi_sparc.S 2005-02-02 22:25:31 +0000
+@@ -17,6 +17,12 @@
+ .data
+ .align 64
+
++#if defined(SVR4) || defined(__sparc_v9__)
++ /* Solaris requires this for 64-bit. */
++ .register %g2, #scratch
++ .register %g3, #scratch
++#endif
++
+ .globl _mesa_sparc_glapi_begin
+ .type _mesa_sparc_glapi_begin,#function
+ _mesa_sparc_glapi_begin:
+diff -ur X11-6.8.1/xc/extras/Mesa/src/mesa/sparc/norm.S X11-modified/xc/extras/Mesa/src/mesa/sparc/norm.S
+--- X11-6.8.1/xc/extras/Mesa/src/mesa/sparc/norm.S 2005-02-04 01:21:39 +0000
++++ X11-modified/xc/extras/Mesa/src/mesa/sparc/norm.S 2005-02-02 22:29:24 +0000
+@@ -2,7 +2,7 @@
+
+ #include "sparc_matrix.h"
+
+-#ifdef SVR4
++#if defined(SVR4) || defined(__sparc_v9__)
+ /* Solaris requires this for 64-bit. */
+ .register %g2, #scratch
+ .register %g3, #scratch
+diff -ur X11-6.8.1/xc/extras/Mesa/src/mesa/sparc/xform.S X11-modified/xc/extras/Mesa/src/mesa/sparc/xform.S
+--- X11-6.8.1/xc/extras/Mesa/src/mesa/sparc/xform.S 2004-06-16 09:19:25 +0000
++++ X11-modified/xc/extras/Mesa/src/mesa/sparc/xform.S 2005-02-02 22:27:14 +0000
+@@ -18,7 +18,7 @@
+
+ #include "sparc_matrix.h"
+
+-#ifdef SVR4
++#if defined(SVR4) || defined(__sparc_v9__)
+ /* Solaris requires this for 64-bit. */
+ .register %g2, #scratch
+ .register %g3, #scratch