summaryrefslogtreecommitdiffstats
path: root/src/mesa/sparc/sparc.c
diff options
context:
space:
mode:
authorIan Romanick <idr@us.ibm.com>2005-07-28 00:11:10 +0000
committerIan Romanick <idr@us.ibm.com>2005-07-28 00:11:10 +0000
commit9f23a3a1bff6c8af93e651273c9887bbf119f555 (patch)
tree0bdc6e08b24ee9f855aa7132944d5a26e1edf37c /src/mesa/sparc/sparc.c
parent3e36986e5a59c734b7bd198a16fb9af3314860de (diff)
downloadexternal_mesa3d-9f23a3a1bff6c8af93e651273c9887bbf119f555.zip
external_mesa3d-9f23a3a1bff6c8af93e651273c9887bbf119f555.tar.gz
external_mesa3d-9f23a3a1bff6c8af93e651273c9887bbf119f555.tar.bz2
Fix SPARC assembly for 64-bit
- The test for whether or not we're building for 64-bit is '#ifdef __arch64__'. This appears to be correct on both Linux and Solaris. - The test for Solaris is now '#if defined(SVR4) || defined(__SVR4) || defined(__svr4__)'. GCC 3.4.0 has all three defined on Solaris 9. - Enables assembly language clip routines. - Fixes to make GLSL code build on Solaris. - Update gl_SPARC_asm.py.
Diffstat (limited to 'src/mesa/sparc/sparc.c')
-rw-r--r--src/mesa/sparc/sparc.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/src/mesa/sparc/sparc.c b/src/mesa/sparc/sparc.c
index 2a07374..b7fe360 100644
--- a/src/mesa/sparc/sparc.c
+++ b/src/mesa/sparc/sparc.c
@@ -110,13 +110,9 @@ void _mesa_init_all_sparc_transform_asm(void)
ASSIGN_XFORM_GROUP(sparc, 3)
ASSIGN_XFORM_GROUP(sparc, 4)
-#if 0
- /* Disabled for now. See Mesa bug report # 544665. Evidently these
- * functions are using SPARC registers that shouldn't be touched.
- */
_mesa_clip_tab[4] = _mesa_sparc_cliptest_points4;
_mesa_clip_np_tab[4] = _mesa_sparc_cliptest_points4_np;
-#endif
+
#if 0
/* disable these too. See bug 673938 */
_mesa_normal_tab[NORM_TRANSFORM | NORM_NORMALIZE] =
@@ -162,7 +158,7 @@ void _mesa_init_sparc_glapi_relocs(void)
disp_addr = (unsigned long) &_glapi_Dispatch;
while (insn_ptr < end_ptr) {
-#if (defined(__sparc_v9__) && (!defined(__linux__) || defined(__linux_sparc_64__)))
+#ifdef __arch64__
insn_ptr[0] |= (disp_addr >> (32 + 10));
insn_ptr[1] |= ((disp_addr & 0xffffffff) >> 10);
__glapi_sparc_icache_flush(&insn_ptr[0]);