atomicity.h: New file.
* config/os/irix/bits/atomicity.h: New file. * config/os/irix/bits/os_defines.h (_POSIX_SOURCE): Undefine. (__off_t): Define. (__off64_t): Likewise. (__ssize_t): Likewise. (_G_USING_THUNKS): Define to zero. From-SVN: r37128
This commit is contained in:
parent
526aba2811
commit
2f974bd2f9
@ -1,3 +1,12 @@
|
||||
2000-10-29 Mark Mitchell <mark@codesourcery.com>
|
||||
|
||||
* config/os/irix/bits/atomicity.h: New file.
|
||||
* config/os/irix/bits/os_defines.h (_POSIX_SOURCE): Undefine.
|
||||
(__off_t): Define.
|
||||
(__off64_t): Likewise.
|
||||
(__ssize_t): Likewise.
|
||||
(_G_USING_THUNKS): Define to zero.
|
||||
|
||||
2000-10-28 Mark Mitchell <mark@codesourcery.com>
|
||||
|
||||
* src/string-inst.cc (basic_string<C>::npos): Explicitly
|
||||
|
42
libstdc++-v3/config/os/irix/bits/atomicity.h
Normal file
42
libstdc++-v3/config/os/irix/bits/atomicity.h
Normal file
@ -0,0 +1,42 @@
|
||||
/* Low-level functions for atomic operations. IRIX version.
|
||||
Copyright (C) 1997 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
|
||||
modify it under the terms of the GNU Library General Public License as
|
||||
published by the Free Software Foundation; either version 2 of the
|
||||
License, or (at your option) any later version.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Library General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Library General Public
|
||||
License along with the GNU C Library; see the file COPYING.LIB. If not,
|
||||
write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
Boston, MA 02111-1307, USA. */
|
||||
|
||||
#ifndef _BITS_ATOMICITY_H
|
||||
#define _BITS_ATOMICITY_H 1
|
||||
|
||||
#include <mutex.h>
|
||||
|
||||
typedef unsigned long _Atomic_word;
|
||||
|
||||
static inline _Atomic_word
|
||||
__attribute__ ((__unused__))
|
||||
__exchange_and_add (_Atomic_word* __mem, int __val)
|
||||
{
|
||||
return test_then_add (__mem, __val);
|
||||
}
|
||||
|
||||
|
||||
static inline void
|
||||
__attribute__ ((unused))
|
||||
__atomic_add (_Atomic_word* __mem, int __val)
|
||||
{
|
||||
test_then_add (__mem, __val);
|
||||
}
|
||||
|
||||
#endif /* atomicity.h */
|
@ -29,12 +29,28 @@
|
||||
|
||||
|
||||
#ifndef _GLIBCPP_OS_DEFINES
|
||||
# define _GLIBCPP_OS_DEFINES
|
||||
|
||||
#define _GLIBCPP_OS_DEFINES
|
||||
|
||||
/* System-specific #define, typedefs, corrections, etc, go here. This
|
||||
file will come before all others. */
|
||||
|
||||
/* We need large file support. There are two ways to turn it on:
|
||||
by defining either _LARGEFILE64_SOURCE or _SGI_SOURCE. However,
|
||||
it does not actually work to define only the former, as then
|
||||
<sys/stat.h> is invalid: `st_blocks' is defined to be a macro,
|
||||
but then used as a field name. So, we have to turn on
|
||||
_SGI_SOURCE. That only works if _POSIX_SOURCE is turned off,
|
||||
so we have to explicitly turn it off. (Some of the libio C files
|
||||
explicitly try to turn it on.) _SGI_SOURCE is actually turned on
|
||||
implicitly via the command-line. */
|
||||
#undef _POSIX_SOURCE
|
||||
|
||||
#define __off_t off_t
|
||||
#define __off64_t off64_t
|
||||
#define __ssize_t ssize_t
|
||||
|
||||
/* GCC does not use thunks on IRIX. */
|
||||
#define _G_USING_THUNKS 0
|
||||
|
||||
#endif
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user