diff options
author | Catherine Moore <clm@cygnus.com> | 1998-12-07 09:15:34 +0000 |
---|---|---|
committer | Catherine Moore <clm@gcc.gnu.org> | 1998-12-07 04:15:34 -0500 |
commit | e6592fffc4ca720e306362c20c595dfe540f4696 (patch) | |
tree | 647a3224da3c3ff837edeb41b4a36aebefb53a67 /gcc | |
parent | 1a953d0f164569382e9f6704aa0a7f6f2bdc5579 (diff) | |
download | gcc-e6592fffc4ca720e306362c20c595dfe540f4696.zip gcc-e6592fffc4ca720e306362c20c595dfe540f4696.tar.gz gcc-e6592fffc4ca720e306362c20c595dfe540f4696.tar.bz2 |
configure.in: (arm*-*-ecos-elf): New target.
Mon Dec 7 09:58:26 1998 Catherine Moore <clm@cygnus.com>
* configure.in: (arm*-*-ecos-elf): New target.
* configure: Regenerated.
* config/arm/elf.h (ASM_WEAKEN_LABEL): Define.
* config/arm/ecos-elf.h: New file.
* config/arm/unknown-elf.h (TARGET_VERSION): Check
for redefinition.
From-SVN: r24145
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 9 | ||||
-rw-r--r-- | gcc/config/arm/ecos-elf.h | 29 | ||||
-rw-r--r-- | gcc/config/arm/elf.h | 6 | ||||
-rw-r--r-- | gcc/config/arm/unknown-elf.h | 2 | ||||
-rwxr-xr-x | gcc/configure | 4 | ||||
-rw-r--r-- | gcc/configure.in | 4 |
6 files changed, 54 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6ecc632..0fb314c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,12 @@ +Mon Dec 7 11:04:40 1998 Catherine Moore <clm@cygnus.com> + + * configure.in: (arm*-*-ecos-elf): New target. + * configure: Regenerated. + * config/arm/elf.h (ASM_WEAKEN_LABEL): Define. + * config/arm/ecos-elf.h: New file. + * config/arm/unknown-elf.h (TARGET_VERSION): Check + for redefinition. + Mon Dec 7 16:15:51 1998 J"orn Rennecke <amylaar@cygnus.co.uk> * sh.c (output_far_jump): Emit braf only for TARGET_SH2. diff --git a/gcc/config/arm/ecos-elf.h b/gcc/config/arm/ecos-elf.h new file mode 100644 index 0000000..9fdc64a --- /dev/null +++ b/gcc/config/arm/ecos-elf.h @@ -0,0 +1,29 @@ +/* Definitions for ecos based ARM systems using ELF + Copyright (C) 1998 Free Software Foundation, Inc. + +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. */ +#define TARGET_VERSION fputs (" (ARM/ELF Ecos)", stderr); + +#define HAS_INIT_SECTION + +#include "unknown-elf.h" + +#undef INVOKE_main + diff --git a/gcc/config/arm/elf.h b/gcc/config/arm/elf.h index a8aaf76..28af933 100644 --- a/gcc/config/arm/elf.h +++ b/gcc/config/arm/elf.h @@ -325,6 +325,12 @@ do { \ } while (0) #endif +/* This is how we tell the assembler that a symbol is weak. */ + +#define ASM_WEAKEN_LABEL(FILE,NAME) \ + do { fputs ("\t.weak\t", FILE); assemble_name (FILE, NAME); \ + fputc ('\n', FILE); } while (0) + #include "arm/aout.h" diff --git a/gcc/config/arm/unknown-elf.h b/gcc/config/arm/unknown-elf.h index 5d173cf..be8da81 100644 --- a/gcc/config/arm/unknown-elf.h +++ b/gcc/config/arm/unknown-elf.h @@ -20,7 +20,9 @@ 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)", stderr); +#endif /* If you don't define HAVE_ATEXIT, and the object file format/OS/whatever does not support constructors/destructors, then gcc implements destructors diff --git a/gcc/configure b/gcc/configure index 11d4c82..d2a998c 100755 --- a/gcc/configure +++ b/gcc/configure @@ -3001,6 +3001,10 @@ for machine in $build $host $target; do tm_file=arm/aout.h tmake_file=arm/t-bare ;; + arm*-*-ecos-elf) + tm_file=arm/ecos-elf.h + tmake_file=arm/t-elf + ;; arm*-*-elf) tm_file=arm/unknown-elf.h tmake_file=arm/t-arm-elf diff --git a/gcc/configure.in b/gcc/configure.in index 0a32504..cbde7eb 100644 --- a/gcc/configure.in +++ b/gcc/configure.in @@ -714,6 +714,10 @@ changequote([,])dnl tm_file=arm/aout.h tmake_file=arm/t-bare ;; + arm*-*-ecos-elf) + tm_file=arm/ecos-elf.h + tmake_file=arm/t-elf + ;; arm*-*-elf) tm_file=arm/unknown-elf.h tmake_file=arm/t-arm-elf |