Commit c7d03070 by Geoffrey Keating Committed by Geoffrey Keating

locks.h: Use 64-bit versions of primitives when __LP64__ is defined rather than...

	* sysdep/powerpc/locks.h: Use 64-bit versions of primitives when
	__LP64__ is defined rather than __powerpc64__.
	(compare_and_swap): 'ret' is an obj_addr_t not just an int.
	(compare_and_swap_release): Likewise.

From-SVN: r104746
parent 107bcc11
2005-09-28 Geoffrey Keating <geoffk@apple.com>
* sysdep/powerpc/locks.h: Use 64-bit versions of primitives when
__LP64__ is defined rather than __powerpc64__.
(compare_and_swap): 'ret' is an obj_addr_t not just an int.
(compare_and_swap_release): Likewise.
2005-09-28 David Daney <ddaney@avtrex.com> 2005-09-28 David Daney <ddaney@avtrex.com>
* HACKING: Update instructions for classpath import. * HACKING: Update instructions for classpath import.
......
...@@ -11,7 +11,7 @@ details. */ ...@@ -11,7 +11,7 @@ details. */
#ifndef __SYSDEP_LOCKS_H__ #ifndef __SYSDEP_LOCKS_H__
#define __SYSDEP_LOCKS_H__ #define __SYSDEP_LOCKS_H__
#ifdef __powerpc64__ #ifdef __LP64__
#define _LARX "ldarx " #define _LARX "ldarx "
#define _STCX "stdcx. " #define _STCX "stdcx. "
#else #else
...@@ -30,7 +30,7 @@ inline static bool ...@@ -30,7 +30,7 @@ inline static bool
compare_and_swap (volatile obj_addr_t *addr, obj_addr_t old, compare_and_swap (volatile obj_addr_t *addr, obj_addr_t old,
obj_addr_t new_val) obj_addr_t new_val)
{ {
int ret; obj_addr_t ret;
__asm__ __volatile__ ( __asm__ __volatile__ (
"0: " _LARX "%0,0,%1 \n" "0: " _LARX "%0,0,%1 \n"
...@@ -62,7 +62,7 @@ inline static bool ...@@ -62,7 +62,7 @@ inline static bool
compare_and_swap_release (volatile obj_addr_t *addr, obj_addr_t old, compare_and_swap_release (volatile obj_addr_t *addr, obj_addr_t old,
obj_addr_t new_val) obj_addr_t new_val)
{ {
int ret; obj_addr_t ret;
__asm__ __volatile__ ("sync" : : : "memory"); __asm__ __volatile__ ("sync" : : : "memory");
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment