diff --git a/ChangeLog b/ChangeLog index dcd6a51..0e3033b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2007-11-28 Richard B. Kreckel + + * include/cln/object.h: Don't redefine cl_word_alignment on sparc64. + * src/base/digitseq/cl_asm_sparc64_.cc: Declare use of global + register %g2 as scratch register within this file. + Reported by Paul Irofti and Sven Verdoolaege + . + 2007-11-03 Richard B. Kreckel * src/base/digitseq/cl_asm_i386_.cc (compare_loop_up, diff --git a/include/cln/object.h b/include/cln/object.h index bb5a242..8ac0aed 100644 --- a/include/cln/object.h +++ b/include/cln/object.h @@ -22,7 +22,7 @@ namespace cln { #if defined(__m68k__) #define cl_word_alignment 2 #endif -#if defined(__i386__) || defined(__mips__) || defined(__mipsel__) || defined(__sparc__) || defined(__hppa__) || defined(__arm__) || defined(__rs6000__) || defined(__m88k__) || defined(__convex__) || defined(__s390__) +#if defined(__i386__) || defined(__mips__) || defined(__mipsel__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__hppa__) || defined(__arm__) || defined(__rs6000__) || defined(__m88k__) || defined(__convex__) || defined(__s390__) #define cl_word_alignment 4 #endif #if defined(__alpha__) || defined(__ia64__) || defined(__mips64__) || defined(__powerpc64__) || defined(__sparc64__) || defined(__x86_64__) diff --git a/src/base/digitseq/cl_asm_sparc64_.cc b/src/base/digitseq/cl_asm_sparc64_.cc index 22f3db7..8ac56c8 100644 --- a/src/base/digitseq/cl_asm_sparc64_.cc +++ b/src/base/digitseq/cl_asm_sparc64_.cc @@ -42,6 +42,8 @@ .seg "text" + .register %g2,#scratch + .global C(mulu16_),C(mulu32_),C(mulu32_unchecked),C(mulu64_) .global C(divu_6432_3232_),C(divu_3216_1616_) .global C(copy_loop_up),C(copy_loop_down),C(fill_loop_up),C(fill_loop_down)