This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
arm-oabi support committed
- To: egcs-patches at cygnus dot com
- Subject: arm-oabi support committed
- From: "Catherine L. Moore" <clm at cygnus dot com>
- Date: Tue, 02 Feb 1999 20:59:43 -0600
- cc: clm at cygnus dot com, nickc at cygnus dot com
I committed the following patches to egcs this evening. They were
approved by Nick Clifton. The patches are required to support
the beta version of the armelf specification. The final version
changed the relocation numbers thus the need to differentiate at
configure time between the two implementations. --target=arm-oabi
will produce object files which are compatible with the original
implementation. --target=arm-elf will cause the tools to conform
to the standard.
Catherine
Tue Feb 2 20:05:05 1999 Catherine Moore <clm@cygnus.com>
* config.sub (oabi): Recognize.
* configure.in (arm-*-oabi): Handle.
Index: config.sub
===================================================================
RCS file: /egcs/carton/cvsfiles/egcs/config.sub,v
retrieving revision 1.23
diff -p -r1.23 config.sub
*** config.sub 1999/01/30 07:07:40 1.23
--- config.sub 1999/02/03 02:24:55
*************** case $os in
*** 928,934 ****
| -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
| -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
| -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \
! | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* \
| -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
| -cygwin32* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
--- 928,934 ----
| -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
| -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
| -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \
! | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
| -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
| -cygwin32* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
Index: configure.in
===================================================================
RCS file: /egcs/carton/cvsfiles/egcs/configure.in,v
retrieving revision 1.31
diff -p -r1.31 configure.in
*** configure.in 1999/01/30 07:07:41 1.31
--- configure.in 1999/02/03 02:25:07
*************** case "${target}" in
*** 578,583 ****
--- 578,595 ----
arm-*-coff*)
noconfigdirs="$noconfigdirs target-libgloss"
;;
+ arm-*-elf*)
+ noconfigdirs="$noconfigdirs target-libgloss"
+ if [ x${is_cross_compiler} != xno ] ; then
+ target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon"
+ fi
+ ;;
+ arm-*-oabi*)
+ noconfigdirs="$noconfigdirs target-libgloss"
+ if [ x${is_cross_compiler} != xno ] ; then
+ target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon"
+ fi
+ ;;
c4x-*-*)
noconfigdirs="$noconfigdirs target-libg++ target-libstdc++ target-libio target-librx target-libgloss"
;;
gcc/ChangeLog
Tue Feb 2 20:29:34 1999 Catherine Moore <clm@cygnus.com>
* configure.in (arm-*-oabi): Support.
* configure: Regenerate.
* config/arm/unknown-elf-oabi.h: New file.
Index: configure.in
===================================================================
RCS file: /egcs/carton/cvsfiles/egcs/gcc/configure.in,v
retrieving revision 1.203
diff -p -r1.203 configure.in
*** configure.in 1999/01/31 13:51:06 1.203
--- configure.in 1999/02/03 02:48:36
*************** changequote([,])dnl
*** 728,733 ****
--- 728,737 ----
tm_file=arm/unknown-elf.h
tmake_file=arm/t-arm-elf
;;
+ arm*-*-oabi)
+ tm_file=arm/unknown-elf-oabi.h
+ tmake_file=arm/t-arm-elf
+ ;;
c1-convex-*) # Convex C1
target_cpu_default=1
use_collect2=yes
Index: config/arm/unknown-elf-oabi.h
===================================================================
RCS file: unknown-elf-oabi.h
diff -N unknown-elf-oabi.h
*** /dev/null Sat Dec 5 20:30:03 1998
--- unknown-elf-oabi.h Tue Feb 2 18:49:44 1999
***************
*** 0 ****
--- 1,36 ----
+ /* Definitions for non-Linux based ARM systems using ELF old abi
+ Copyright (C) 1998, 1999 Free Software Foundation, Inc.
+ Contributed by Catherine Moore <clm@cygnus.com>
+
+ 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 this program; see the file COPYING. If not, write to
+ the Free Software Foundation, 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA. */
+
+ /* Run-time Target Specification. */
+ #ifndef TARGET_VERSION
+ #define TARGET_VERSION fputs (" (ARM/ELF non-Linux old abi)", stderr);
+ #endif
+
+ #define CPP_PREDEFINES "-Darm_oabi -Darm -Darm_elf -Acpu(arm) -Amachine(arm) -D__ELF__"
+
+ #ifndef ASM_SPEC
+ #define ASM_SPEC "-moabi %{mbig-endian:-EB} %{mcpu=*:-m%*} %{march=*:-m%*} \
+ %{mapcs-*:-mapcs-%*} %{mthumb-interwork:-mthumb-interwork}"
+ #endif
+
+ /* Now get the routine arm-elf definitions. */
+ #include "arm/unknown-elf.h"
+ #include "arm/elf.h"