This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: PATCH: V3 configury, again


>>>>> "Benjamin" == Benjamin Kosnik <bkoz@redhat.com> writes:

    >> Good.  Thanks for working it through.

    Benjamin> Mark now that this is all approved, can you check-in
    Benjamin> this patch?

OK, it looks like you didn't back out the Makefile.am change after
all.

Alexandre is reviewing other alternatives to my libtool patch, so you
can just suck it out of my mail if you need it, or wait until
Alexandre's had a chance to comment further.

All that remains is the AIX atomicity.h patch; that's attached below
for reference, and now checked in.

--
Mark Mitchell                   mark@codesourcery.com
CodeSourcery, LLC               http://www.codesourcery.com

2001-01-24  Mark Mitchell  <mark@codesourcery.com>

	* config/os/aix/bits/atomicity.h (__compare_and_swap): Remove.
	(__always_swap): Likewise.

Index: libstdc++-v3/config/os/aix/bits/atomicity.h
===================================================================
RCS file: /cvs/gcc/egcs/libstdc++-v3/config/os/aix/bits/atomicity.h,v
retrieving revision 1.1
diff -c -p -r1.1 atomicity.h
*** atomicity.h	2000/10/07 18:39:05	1.1
--- atomicity.h	2001/01/24 18:36:34
***************
*** 1,5 ****
  /* Low-level functions for atomic operations.  AIX version.
!    Copyright (C) 2000 Free Software Foundation, Inc.
     This file is part of the GNU C Library.
  
     The GNU C Library is free software; you can redistribute it and/or
--- 1,5 ----
  /* Low-level functions for atomic operations.  AIX version.
!    Copyright (C) 2000, 2001 Free Software Foundation, Inc.
     This file is part of the GNU C Library.
  
     The GNU C Library is free software; you can redistribute it and/or
***************
*** 20,26 ****
  #ifndef _BITS_ATOMICITY_H
  #define _BITS_ATOMICITY_H       1
  
! /* Should this be type long so 64-bit word in 64-bit mode?  */
  typedef int _Atomic_word;
  
  #include <sys/atomic_op.h>
--- 20,33 ----
  #ifndef _BITS_ATOMICITY_H
  #define _BITS_ATOMICITY_H       1
  
! /* We cannot use the cpu/powerpc/bits/atomicity.h inline assembly
!    definitions for these operations since they depend on operations
!    that are not available on the original POWER architecture.  AIX
!    still runs on the POWER architecture, so it would be incorrect to
!    assume the existence of these instructions.  */
! 
! /* This should match the type pointed to by atomic_p in
!    <sys/atomic_op.h>.  */
  typedef int _Atomic_word;
  
  #include <sys/atomic_op.h>
*************** __attribute__ ((unused))
*** 37,72 ****
  __atomic_add (atomic_p __mem, int __val)
  {
    (void) fetch_and_add (__mem, __val);
- }
- 
- static inline int
- __attribute__ ((unused))
- __compare_and_swap (atomic_l __p, long int __oldval, long int __newval)
- {
-   return compare_and_swaplp (__p, &__oldval, __newval);
- }
- 
- static inline long
- __attribute__ ((unused))
- __always_swap (atomic_l __p, long int __newval)
- {
-   long __val = *__p;
- 
-   while (! compare_and_swaplp (__p, &__val, __newval))
-     /* EMPTY */;
- 
-   return __val;
- }
- 
- static inline int
- __attribute__ ((unused))
- __test_and_set (atomic_l __p, long int __newval)
- {
-   long __val = 0;
- 
-   (void) compare_and_swaplp (__p, &__val, __newval);
- 
-   return __val;
  }
  
  #endif /* atomicity.h */
--- 44,49 ----

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]