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
This commit is contained in:
parent
107bcc1133
commit
c7d0307027
@ -1,3 +1,10 @@
|
|||||||
|
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. */
|
|||||||
#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
|
|||||||
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
|
|||||||
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");
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user