[kaffe] CVS kaffe (robilad): fixed build on ia64 with gcc 4.1

Kaffe CVS cvs-commits at kaffe.org
Sat Jul 15 08:12:14 PDT 2006


PatchSet 7344 
Date: 2006/07/15 15:01:01
Author: robilad
Branch: HEAD
Tag: (none) 
Log:
fixed build on ia64 with gcc 4.1
2006-07-15  Dalibor Topic  <robilad at kaffe.org>

        Fix for #47.

        * config/ia64/atomic.h: Updated to the
        version from glibc 2.4.0.

Members: 
	ChangeLog:1.4847->1.4848 
	config/ia64/atomic.h:1.3->1.4 

Index: kaffe/ChangeLog
diff -u kaffe/ChangeLog:1.4847 kaffe/ChangeLog:1.4848
--- kaffe/ChangeLog:1.4847	Sat Jul 15 13:37:21 2006
+++ kaffe/ChangeLog	Sat Jul 15 15:01:01 2006
@@ -1,5 +1,12 @@
 2006-07-15  Dalibor Topic  <robilad at kaffe.org>
 
+	Fix for #47.
+
+	* config/ia64/atomic.h: Updated to the 
+	version from glibc 2.4.0.
+
+2006-07-15  Dalibor Topic  <robilad at kaffe.org>
+
 	* configure.ac: Improved the error message when both
 	jikes and ecj are selected in configure options.
 
Index: kaffe/config/ia64/atomic.h
diff -u kaffe/config/ia64/atomic.h:1.3 kaffe/config/ia64/atomic.h:1.4
--- kaffe/config/ia64/atomic.h:1.3	Wed Dec 28 01:49:47 2005
+++ kaffe/config/ia64/atomic.h	Sat Jul 15 15:01:06 2006
@@ -13,8 +13,8 @@
 
    You should have received a copy of the GNU Lesser General Public
    License along with the GNU C Library; if not, write to the Free
-   Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-   02110-1301 USA.  */
+   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+   02111-1307 USA.  */
 
 #include "config-int.h"
 #include <ia64intrin.h>
@@ -52,12 +52,12 @@
   (abort (), 0)
 
 #define __arch_compare_and_exchange_bool_32_acq(mem, newval, oldval) \
-  (!__sync_bool_compare_and_swap_si ((void *) (mem), (int) (long) (oldval), \
-				     (int) (long) (newval)))
+  (!__sync_bool_compare_and_swap ((mem), (int) (long) (oldval), \
+				  (int) (long) (newval)))
 
 #define __arch_compare_and_exchange_bool_64_acq(mem, newval, oldval) \
-  (!__sync_bool_compare_and_swap_di ((void *) (mem), (long) (oldval), \
-				     (long) (newval)))
+  (!__sync_bool_compare_and_swap ((mem), (long) (oldval), \
+				  (long) (newval)))
 
 #define __arch_compare_and_exchange_val_8_acq(mem, newval, oldval) \
   (abort (), (__typeof (*mem)) 0)
@@ -66,12 +66,11 @@
   (abort (), (__typeof (*mem)) 0)
 
 #define __arch_compare_and_exchange_val_32_acq(mem, newval, oldval) \
-  __sync_val_compare_and_swap_si ((void *) (mem), (int) (long) (oldval), \
-				  (int) (long) (newval))
+  __sync_val_compare_and_swap ((mem), (int) (long) (oldval), \
+			       (int) (long) (newval))
 
 #define __arch_compare_and_exchange_val_64_acq(mem, newval, oldval) \
-  __sync_val_compare_and_swap_di ((void *) (mem), (long) (oldval), \
-				  (long) (newval))
+  __sync_val_compare_and_swap ((mem), (long) (oldval), (long) (newval))
 
 /* Atomically store newval and return the old value.  */
 #define atomic_exchange_acq(mem, value) \
@@ -80,15 +79,9 @@
 #define atomic_exchange_rel(mem, value) \
   (__sync_synchronize (), __sync_lock_test_and_set (mem, value))
 
-
 #define atomic_exchange_and_add(mem, value) \
   ({ __typeof (*mem) __result;						      \
-     if (sizeof (*mem) == 4)						      \
-       __result = __sync_fetch_and_add_si ((void *) (mem), (int) (value));    \
-     else if (sizeof (*mem) == 8)					      \
-       __result = __sync_fetch_and_add_di ((void *) (mem), (long) (value));   \
-     else								      \
-       abort ();							      \
+     __result = __sync_fetch_and_add ((mem), (int) (value));		      \
      __result; })
 
 #define atomic_decrement_if_positive(mem) \




More information about the kaffe mailing list