diff options
author | Nick Clifton <nickc@redhat.com> | 2003-04-13 16:59:45 +0000 |
---|---|---|
committer | Nick Clifton <nickc@gcc.gnu.org> | 2003-04-13 16:59:45 +0000 |
commit | 50d440bc05a1da6908672ac75fde55a13c491744 (patch) | |
tree | 54f559a3bce434f7377dc74058b680e7235fbb46 /gcc/config | |
parent | 62b9c42c443c31cd6b3480e8a7216777f9291447 (diff) | |
download | gcc-50d440bc05a1da6908672ac75fde55a13c491744.zip gcc-50d440bc05a1da6908672ac75fde55a13c491744.tar.gz gcc-50d440bc05a1da6908672ac75fde55a13c491744.tar.bz2 |
config-ml.in: Remove support for --disable-aix removing call-aix multilibs.
config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Delete support for
-mcall-aix switch.
config/rs6000/eabiaix.h: Delete.
config/rs6000/rs6000.h (rs6000_abi): Remove ABI_AIX_NODESC.
(RS6000_REG_SAVE, RS6000_SAVE_AREA, FP_ARGS_MAX_REG, RETURN_ADDRESS_OFFSET):
Remove use of ABI_AIX_NODESC.
config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Likewise.
config/rs6000/rs6000.c (print_operand, rs6000_stack_info, debug_stack_info,
output_function_profiler, rs6000_trampoline_size,
rs6000_initialise_trampoline): Likewise.
config/rs6000/rs6000.md (call, call_value, call_nonlocal_sysv,
call_indirect_nonlocal_sysv, call_value_indirect_nonlocal_sysv,
call_value_nonlocal_sysv, sibcall_value_nonlocal_sysv, sibcall_nonlocal_sysv,
sibcall_value_local64): Likewise.
config/rs6000/t-ppcgas (MULTILIB_OPTIONS): Remove mcall-aix multilibs.
(MULTILIB_DIRNAMES): Remove mcall-aix directories.
(MULTILIB_EXCEPTIONS): Delete.
(MULTILIB_MATCHES): Remove mcall-aix matches.
doc/fragments.texi: Replace -mcall-aix example with an ARM one.
doc/install.texi: Delete powerpc-*-eabiaix target.
doc/invoke.texi: Remove documentation of mcall-aix switch.
doc/tm.texi: Remove mcall-aix from example CPP_SPEC.
config.gcc: Delete powerpc-*-eabiaix target.
From-SVN: r65546
Diffstat (limited to 'gcc/config')
-rw-r--r-- | gcc/config/rs6000/eabiaix.h | 36 | ||||
-rw-r--r-- | gcc/config/rs6000/rs6000-c.c | 3 | ||||
-rw-r--r-- | gcc/config/rs6000/rs6000.c | 28 | ||||
-rw-r--r-- | gcc/config/rs6000/rs6000.h | 9 | ||||
-rw-r--r-- | gcc/config/rs6000/rs6000.md | 20 | ||||
-rw-r--r-- | gcc/config/rs6000/sysv4.h | 5 | ||||
-rw-r--r-- | gcc/config/rs6000/t-ppcgas | 7 |
7 files changed, 13 insertions, 95 deletions
diff --git a/gcc/config/rs6000/eabiaix.h b/gcc/config/rs6000/eabiaix.h index 4e18067..e69de29 100644 --- a/gcc/config/rs6000/eabiaix.h +++ b/gcc/config/rs6000/eabiaix.h @@ -1,36 +0,0 @@ -/* Embedded ELF system support, using old AIX based calling sequence. - Copyright (C) 1995, 1996, 2000 Free Software Foundation, Inc. - Contributed by Cygnus Support. - -This file is part of GNU CC. - -GNU CC is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GNU CC 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 General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GNU CC; see the file COPYING. If not, write to -the Free Software Foundation, 59 Temple Place - Suite 330, -Boston, MA 02111-1307, USA. */ - -/* Default ABI to use */ -#undef RS6000_ABI_NAME -#define RS6000_ABI_NAME "aix" - -/* Define this macro as a C expression for the initializer of an - array of string to tell the driver program which options are - defaults for this target and thus do not need to be handled - specially when using `MULTILIB_OPTIONS'. - - Do not define this macro if `MULTILIB_OPTIONS' is not defined in - the target makefile fragment or if none of the options listed in - `MULTILIB_OPTIONS' are set by default. *Note Target Fragment::. */ - -#undef MULTILIB_DEFAULTS -#define MULTILIB_DEFAULTS { "mbig", "mcall-aix" } diff --git a/gcc/config/rs6000/rs6000-c.c b/gcc/config/rs6000/rs6000-c.c index a9ea94f..01048dc 100644 --- a/gcc/config/rs6000/rs6000-c.c +++ b/gcc/config/rs6000/rs6000-c.c @@ -114,9 +114,6 @@ rs6000_cpu_cpp_builtins (pfile) case ABI_V4: builtin_define ("_CALL_SYSV"); break; - case ABI_AIX_NODESC: - builtin_define ("_CALL_AIX"); - break; case ABI_AIX: builtin_define ("_CALL_AIXDESC"); builtin_define ("_CALL_AIX"); diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index 929804b..8e9870a 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -8185,7 +8185,6 @@ print_operand (file, x, code) break; case ABI_V4: - case ABI_AIX_NODESC: case ABI_DARWIN: break; } @@ -9293,8 +9292,7 @@ is_altivec_return_reg (reg, xyes) align the stack at program startup. A happy side-effect is that -mno-eabi libraries can be used with -meabi programs.) - The EABI configuration defaults to the V.4 layout, unless - -mcall-aix is used, in which case the AIX layout is used. However, + The EABI configuration defaults to the V.4 layout. However, the stack alignment requirements may differ. If -mno-eabi is not given, the required stack alignment is 8 bytes; if -mno-eabi is given, the required alignment is 16 bytes. (But see V.4 comment @@ -9447,7 +9445,6 @@ rs6000_stack_info () abort (); case ABI_AIX: - case ABI_AIX_NODESC: case ABI_DARWIN: info_ptr->fp_save_offset = - info_ptr->fp_size; info_ptr->gp_save_offset = info_ptr->fp_save_offset - info_ptr->gp_size; @@ -9663,8 +9660,7 @@ debug_stack_info (info) { default: abi_string = "Unknown"; break; case ABI_NONE: abi_string = "NONE"; break; - case ABI_AIX: - case ABI_AIX_NODESC: abi_string = "AIX"; break; + case ABI_AIX: abi_string = "AIX"; break; case ABI_DARWIN: abi_string = "Darwin"; break; case ABI_V4: abi_string = "V.4"; break; } @@ -12447,9 +12443,6 @@ output_function_profiler (file, labelno) case ABI_V4: save_lr = 4; - /* Fall through. */ - - case ABI_AIX_NODESC: if (!TARGET_32BIT) { warning ("no profiling of 64-bit code for this ABI"); @@ -12493,19 +12486,8 @@ output_function_profiler (file, labelno) asm_fprintf (file, "@l(%s)\n", reg_names[12]); } - if (current_function_needs_context && DEFAULT_ABI == ABI_AIX_NODESC) - { - asm_fprintf (file, "\t{st|stw} %s,%d(%s)\n", - reg_names[STATIC_CHAIN_REGNUM], - 12, reg_names[1]); - fprintf (file, "\tbl %s\n", RS6000_MCOUNT); - asm_fprintf (file, "\t{l|lwz} %s,%d(%s)\n", - reg_names[STATIC_CHAIN_REGNUM], - 12, reg_names[1]); - } - else - /* ABI_V4 saves the static chain reg with ASM_OUTPUT_REG_PUSH. */ - fprintf (file, "\tbl %s\n", RS6000_MCOUNT); + /* ABI_V4 saves the static chain reg with ASM_OUTPUT_REG_PUSH. */ + fprintf (file, "\tbl %s\n", RS6000_MCOUNT); break; case ABI_AIX: @@ -12748,7 +12730,6 @@ rs6000_trampoline_size () case ABI_DARWIN: case ABI_V4: - case ABI_AIX_NODESC: ret = (TARGET_32BIT) ? 40 : 48; break; } @@ -12796,7 +12777,6 @@ rs6000_initialize_trampoline (addr, fnaddr, cxt) /* Under V.4/eabi/darwin, __trampoline_setup does the real work. */ case ABI_DARWIN: case ABI_V4: - case ABI_AIX_NODESC: emit_library_call (gen_rtx_SYMBOL_REF (SImode, "__trampoline_setup"), FALSE, VOIDmode, 4, addr, pmode, diff --git a/gcc/config/rs6000/rs6000.h b/gcc/config/rs6000/rs6000.h index b326292..6bb65d8 100644 --- a/gcc/config/rs6000/rs6000.h +++ b/gcc/config/rs6000/rs6000.h @@ -1386,8 +1386,6 @@ enum reg_class enum rs6000_abi { ABI_NONE, ABI_AIX, /* IBM's AIX */ - ABI_AIX_NODESC, /* AIX calling sequence minus - function descriptors */ ABI_V4, /* System V.4/eabi */ ABI_DARWIN /* Apple's Darwin (OS X kernel) */ }; @@ -1452,14 +1450,13 @@ typedef struct rs6000_stack { /* Size of the outgoing register save area */ #define RS6000_REG_SAVE ((DEFAULT_ABI == ABI_AIX \ - || DEFAULT_ABI == ABI_AIX_NODESC \ || DEFAULT_ABI == ABI_DARWIN) \ ? (TARGET_64BIT ? 64 : 32) \ : 0) /* Size of the fixed area on the stack */ #define RS6000_SAVE_AREA \ - (((DEFAULT_ABI == ABI_AIX || DEFAULT_ABI == ABI_AIX_NODESC || DEFAULT_ABI == ABI_DARWIN) ? 24 : 8) \ + (((DEFAULT_ABI == ABI_AIX || DEFAULT_ABI == ABI_DARWIN) ? 24 : 8) \ << (TARGET_64BIT ? 1 : 0)) /* MEM representing address to save the TOC register */ @@ -1625,7 +1622,6 @@ typedef struct rs6000_stack { #define FP_ARG_AIX_MAX_REG 45 #define FP_ARG_V4_MAX_REG 40 #define FP_ARG_MAX_REG ((DEFAULT_ABI == ABI_AIX \ - || DEFAULT_ABI == ABI_AIX_NODESC \ || DEFAULT_ABI == ABI_DARWIN) \ ? FP_ARG_AIX_MAX_REG : FP_ARG_V4_MAX_REG) #define FP_ARG_NUM_REG (FP_ARG_MAX_REG - FP_ARG_MIN_REG + 1) @@ -1900,8 +1896,7 @@ typedef struct rs6000_args abi's store the return address. */ #define RETURN_ADDRESS_OFFSET \ ((DEFAULT_ABI == ABI_AIX \ - || DEFAULT_ABI == ABI_DARWIN \ - || DEFAULT_ABI == ABI_AIX_NODESC) ? (TARGET_32BIT ? 8 : 16) : \ + || DEFAULT_ABI == ABI_DARWIN) ? (TARGET_32BIT ? 8 : 16) : \ (DEFAULT_ABI == ABI_V4) ? 4 : \ (internal_error ("RETURN_ADDRESS_OFFSET not supported"), 0)) diff --git a/gcc/config/rs6000/rs6000.md b/gcc/config/rs6000/rs6000.md index eb65422..a51c81c 100644 --- a/gcc/config/rs6000/rs6000.md +++ b/gcc/config/rs6000/rs6000.md @@ -10064,7 +10064,6 @@ operands[0] = rs6000_longcall_ref (operands[0]); if (DEFAULT_ABI == ABI_V4 - || DEFAULT_ABI == ABI_AIX_NODESC || DEFAULT_ABI == ABI_DARWIN) operands[0] = force_reg (Pmode, operands[0]); @@ -10112,7 +10111,6 @@ operands[1] = rs6000_longcall_ref (operands[1]); if (DEFAULT_ABI == ABI_V4 - || DEFAULT_ABI == ABI_AIX_NODESC || DEFAULT_ABI == ABI_DARWIN) operands[0] = force_reg (Pmode, operands[0]); @@ -10343,8 +10341,7 @@ (match_operand 1 "" "g,g")) (use (match_operand:SI 2 "immediate_operand" "O,n")) (clobber (match_scratch:SI 3 "=l,l"))] - "DEFAULT_ABI == ABI_AIX_NODESC - || DEFAULT_ABI == ABI_V4 + "DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_DARWIN" { if (INTVAL (operands[2]) & CALL_V4_SET_FP_ARGS) @@ -10363,8 +10360,7 @@ (match_operand 1 "" "g,g")) (use (match_operand:SI 2 "immediate_operand" "O,n")) (clobber (match_scratch:SI 3 "=l,l"))] - "(DEFAULT_ABI == ABI_AIX_NODESC - || DEFAULT_ABI == ABI_V4 + "(DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_DARWIN) && (INTVAL (operands[2]) & CALL_LONG) == 0" { @@ -10385,8 +10381,7 @@ (match_operand 2 "" "g,g"))) (use (match_operand:SI 3 "immediate_operand" "O,n")) (clobber (match_scratch:SI 4 "=l,l"))] - "DEFAULT_ABI == ABI_AIX_NODESC - || DEFAULT_ABI == ABI_V4 + "DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_DARWIN" { if (INTVAL (operands[3]) & CALL_V4_SET_FP_ARGS) @@ -10406,8 +10401,7 @@ (match_operand 2 "" "g,g"))) (use (match_operand:SI 3 "immediate_operand" "O,n")) (clobber (match_scratch:SI 4 "=l,l"))] - "(DEFAULT_ABI == ABI_AIX_NODESC - || DEFAULT_ABI == ABI_V4 + "(DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_DARWIN) && (INTVAL (operands[3]) & CALL_LONG) == 0" { @@ -10621,8 +10615,7 @@ (use (match_operand:SI 3 "register_operand" "l,l")) (return)] "(DEFAULT_ABI == ABI_DARWIN - || DEFAULT_ABI == ABI_V4 - || DEFAULT_ABI == ABI_AIX_NODESC) + || DEFAULT_ABI == ABI_V4) && (INTVAL (operands[2]) & CALL_LONG) == 0" "* { @@ -10668,8 +10661,7 @@ (use (match_operand:SI 4 "register_operand" "l,l")) (return)] "(DEFAULT_ABI == ABI_DARWIN - || DEFAULT_ABI == ABI_V4 - || DEFAULT_ABI == ABI_AIX_NODESC) + || DEFAULT_ABI == ABI_V4) && (INTVAL (operands[3]) & CALL_LONG) == 0" "* { diff --git a/gcc/config/rs6000/sysv4.h b/gcc/config/rs6000/sysv4.h index cdc15ac..0a072a7 100644 --- a/gcc/config/rs6000/sysv4.h +++ b/gcc/config/rs6000/sysv4.h @@ -185,11 +185,6 @@ do { \ rs6000_current_abi = ABI_V4; \ target_flags |= MASK_EABI; \ } \ - else if (!strcmp (rs6000_abi_name, "aix")) \ - { \ - rs6000_current_abi = ABI_AIX_NODESC; \ - target_flags |= MASK_EABI; \ - } \ else if (!strcmp (rs6000_abi_name, "aixdesc")) \ rs6000_current_abi = ABI_AIX; \ else if (!strcmp (rs6000_abi_name, "freebsd")) \ diff --git a/gcc/config/rs6000/t-ppcgas b/gcc/config/rs6000/t-ppcgas index 9b82b9f..120aef4 100644 --- a/gcc/config/rs6000/t-ppcgas +++ b/gcc/config/rs6000/t-ppcgas @@ -2,18 +2,13 @@ MULTILIB_OPTIONS = msoft-float \ mlittle/mbig \ - mcall-sysv/mcall-aix \ fleading-underscore MULTILIB_DIRNAMES = nof \ le be \ - cs ca \ und MULTILIB_EXTRA_OPTS = mrelocatable-lib mno-eabi mstrict-align -MULTILIB_EXCEPTIONS = *mcall-aix/*fleading-underscore* \ - *mlittle/*mcall-aix* MULTILIB_MATCHES = ${MULTILIB_MATCHES_FLOAT} \ - ${MULTILIB_MATCHES_ENDIAN} \ - ${MULTILIB_MATCHES_SYSV} + ${MULTILIB_MATCHES_ENDIAN} |