From 27d54b2a6c18ef1ae50f1a5b432d590438445b90 Mon Sep 17 00:00:00 2001 From: Rainer Orth Date: Mon, 20 Oct 2003 18:37:22 +0000 Subject: [PATCH] ffi.c: Use _ABIN32, _ABIO32 instead of external _MIPS_SIM_NABI32, _MIPS_SIM_ABI32. libffi: * src/mips/ffi.c: Use _ABIN32, _ABIO32 instead of external _MIPS_SIM_NABI32, _MIPS_SIM_ABI32. libstdc++-v3: * config/cpu/mips/atomicity.h (__atomic_add): Use _ABIO32 instead of external _MIPS_SIM_ABI32. boehm-gc: * mips_sgi_mach_dep.s: Use _ABIO32 instead of external _MIPS_SIM_ABI32. gcc: * config/mips/linux.h (TARGET_OS_CPP_BUILTINS): Define _ABIO32. Use it in _MIPS_SIM definition. * config/mips/mips.h (CRT_CALL_STATIC_FUNCTION): Likewise. From-SVN: r72713 --- boehm-gc/ChangeLog | 5 +++++ boehm-gc/mips_sgi_mach_dep.s | 2 +- gcc/ChangeLog | 6 ++++++ gcc/config/mips/linux.h | 3 ++- gcc/config/mips/mips.h | 2 +- libffi/ChangeLog | 5 +++++ libffi/src/mips/ffi.c | 20 ++++++++++---------- libstdc++-v3/ChangeLog | 5 +++++ libstdc++-v3/config/cpu/mips/atomicity.h | 4 ++-- 9 files changed, 37 insertions(+), 15 deletions(-) diff --git a/boehm-gc/ChangeLog b/boehm-gc/ChangeLog index 60e4cfac10a3..5f5c2c0a2c42 100644 --- a/boehm-gc/ChangeLog +++ b/boehm-gc/ChangeLog @@ -1,3 +1,8 @@ +2003-10-20 Rainer Orth + + * mips_sgi_mach_dep.s: Use _ABIO32 instead of external + _MIPS_SIM_ABI32. + 2003-10-18 Alan Modra * include/private/gcconfig.h (ALIGNMENT ): Remove diff --git a/boehm-gc/mips_sgi_mach_dep.s b/boehm-gc/mips_sgi_mach_dep.s index 56390280a718..cadacf5ed4d8 100644 --- a/boehm-gc/mips_sgi_mach_dep.s +++ b/boehm-gc/mips_sgi_mach_dep.s @@ -24,7 +24,7 @@ # endif SAVE_GP(GPOFF) REG_S ra,RAOFF(sp) -# if (_MIPS_SIM == _MIPS_SIM_ABI32) +# if (_MIPS_SIM == _ABIO32) call_push($2) call_push($3) # endif diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5abaefd2e218..6219b2897472 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2003-10-20 Rainer Orth + + * config/mips/linux.h (TARGET_OS_CPP_BUILTINS): Define _ABIO32. + Use it in _MIPS_SIM definition. + * config/mips/mips.h (CRT_CALL_STATIC_FUNCTION): Likewise. + 2003-10-20 Zack Weinberg * config/i386/i386.c (print_reg): Abort if REGNO (x) is a diff --git a/gcc/config/mips/linux.h b/gcc/config/mips/linux.h index de7286d04f9e..1785a147036d 100644 --- a/gcc/config/mips/linux.h +++ b/gcc/config/mips/linux.h @@ -81,7 +81,8 @@ Boston, MA 02111-1307, USA. */ } \ else \ { \ - builtin_define ("_MIPS_SIM=_MIPS_SIM_ABI32"); \ + builtin_define ("_ABIO32=1"); \ + builtin_define ("_MIPS_SIM=_ABIO32"); \ builtin_define ("_MIPS_SZLONG=32"); \ builtin_define ("_MIPS_SZPTR=32"); \ } \ diff --git a/gcc/config/mips/mips.h b/gcc/config/mips/mips.h index 7af1026c828c..1b51913a0221 100644 --- a/gcc/config/mips/mips.h +++ b/gcc/config/mips/mips.h @@ -3465,7 +3465,7 @@ while (0) we need to load our GP. We don't preserve $gp or $ra, since each init/fini chunk is supposed to initialize $gp, and crti/crtn already take care of preserving $ra and, when appropriate, $gp. */ -#if _MIPS_SIM == _MIPS_SIM_ABI32 +#if (defined _ABIO32 && _MIPS_SIM == _ABIO32) #define CRT_CALL_STATIC_FUNCTION(SECTION_OP, FUNC) \ asm (SECTION_OP "\n\ .set noreorder\n\ diff --git a/libffi/ChangeLog b/libffi/ChangeLog index 627a5f817110..7d553b7fede1 100644 --- a/libffi/ChangeLog +++ b/libffi/ChangeLog @@ -1,3 +1,8 @@ +2003-10-20 Rainer Orth + + * src/mips/ffi.c: Use _ABIN32, _ABIO32 instead of external + _MIPS_SIM_NABI32, _MIPS_SIM_ABI32. + 2003-10-19 Andreas Tobler * src/powerpc/ffi_darwin.c (ffi_prep_args): Declare bytes again. diff --git a/libffi/src/mips/ffi.c b/libffi/src/mips/ffi.c index 93f79239dfc0..01ad20e4c0dd 100644 --- a/libffi/src/mips/ffi.c +++ b/libffi/src/mips/ffi.c @@ -29,7 +29,7 @@ #include -#if _MIPS_SIM == _MIPS_SIM_NABI32 +#if _MIPS_SIM == _ABIN32 #define FIX_ARGP \ FFI_ASSERT(argp <= &stack[bytes]); \ if (argp == &stack[bytes]) \ @@ -55,7 +55,7 @@ static void ffi_prep_args(char *stack, register char *argp; register ffi_type **p_arg; -#if _MIPS_SIM == _MIPS_SIM_NABI32 +#if _MIPS_SIM == _ABIN32 /* If more than 8 double words are used, the remainder go on the stack. We reorder stuff on the stack here to support this easily. */ @@ -69,7 +69,7 @@ static void ffi_prep_args(char *stack, memset(stack, 0, bytes); -#if _MIPS_SIM == _MIPS_SIM_NABI32 +#if _MIPS_SIM == _ABIN32 if ( ecif->cif->rstruct_flag != 0 ) #else if ( ecif->cif->rtype->type == FFI_TYPE_STRUCT ) @@ -92,7 +92,7 @@ static void ffi_prep_args(char *stack, FIX_ARGP; } -#if _MIPS_SIM == _MIPS_SIM_ABI32 +#if _MIPS_SIM == _ABIO32 #define OFFSET 0 #else #define OFFSET sizeof(int) @@ -146,7 +146,7 @@ static void ffi_prep_args(char *stack, } else { -#if _MIPS_SIM == _MIPS_SIM_ABI32 +#if _MIPS_SIM == _ABIO32 memcpy(argp, *p_argv, z); #else { @@ -178,7 +178,7 @@ static void ffi_prep_args(char *stack, return; } -#if _MIPS_SIM == _MIPS_SIM_NABI32 +#if _MIPS_SIM == _ABIN32 /* The n32 spec says that if "a chunk consists solely of a double float field (but not a double, which is part of a union), it @@ -267,7 +267,7 @@ ffi_status ffi_prep_cif_machdep(ffi_cif *cif) { cif->flags = 0; -#if _MIPS_SIM == _MIPS_SIM_ABI32 +#if _MIPS_SIM == _ABIO32 /* Set the flags necessary for O32 processing */ if (cif->rtype->type != FFI_TYPE_STRUCT) @@ -322,7 +322,7 @@ ffi_status ffi_prep_cif_machdep(ffi_cif *cif) } #endif -#if _MIPS_SIM == _MIPS_SIM_NABI32 +#if _MIPS_SIM == _ABIN32 /* Set the flags necessary for N32 processing */ { unsigned shift = 0; @@ -441,14 +441,14 @@ void ffi_call(ffi_cif *cif, void (*fn)(), void *rvalue, void **avalue) switch (cif->abi) { -#if _MIPS_SIM == _MIPS_SIM_ABI32 +#if _MIPS_SIM == _ABIO32 case FFI_O32: ffi_call_O32(ffi_prep_args, &ecif, cif->bytes, cif->flags, ecif.rvalue, fn); break; #endif -#if _MIPS_SIM == _MIPS_SIM_NABI32 +#if _MIPS_SIM == _ABIN32 case FFI_N32: ffi_call_N32(ffi_prep_args, &ecif, cif->bytes, cif->flags, ecif.rvalue, fn); diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 6706b0f4ea3d..b93dac9bb370 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,8 @@ +2003-10-20 Rainer Orth + + * config/cpu/mips/atomicity.h (__atomic_add): Use _ABIO32 instead + of external _MIPS_SIM_ABI32. + 2003-10-20 Phil Edwards * configure.ac: Fix comment typo. diff --git a/libstdc++-v3/config/cpu/mips/atomicity.h b/libstdc++-v3/config/cpu/mips/atomicity.h index 51f3e8644625..f24b059b8e9d 100644 --- a/libstdc++-v3/config/cpu/mips/atomicity.h +++ b/libstdc++-v3/config/cpu/mips/atomicity.h @@ -42,7 +42,7 @@ __exchange_and_add (volatile _Atomic_word *__mem, int __val) ("/* Inline exchange & add */\n\t" "1:\n\t" ".set push\n\t" -#if _MIPS_SIM == _MIPS_SIM_ABI32 +#if _MIPS_SIM == _ABIO32 ".set mips2\n\t" #endif "ll %0,%3\n\t" @@ -68,7 +68,7 @@ __atomic_add (volatile _Atomic_word *__mem, int __val) ("/* Inline atomic add */\n\t" "1:\n\t" ".set push\n\t" -#if _MIPS_SIM == _MIPS_SIM_ABI32 +#if _MIPS_SIM == _ABIO32 ".set mips2\n\t" #endif "ll %0,%2\n\t"