From: Catherine Moore Date: Mon, 7 Dec 1998 09:15:34 +0000 (+0000) Subject: configure.in: (arm*-*-ecos-elf): New target. X-Git-Tag: prereleases/libgcj-0.1~1754 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=e6592fffc4ca720e306362c20c595dfe540f4696;p=thirdparty%2Fgcc.git configure.in: (arm*-*-ecos-elf): New target. Mon Dec 7 09:58:26 1998 Catherine Moore * 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 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6ecc632b2527..0fb314c43677 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,12 @@ +Mon Dec 7 11:04:40 1998 Catherine Moore + + * 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 * 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 000000000000..9fdc64ae6cd9 --- /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 a8aaf76d2e78..28af933ef090 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 5d173cfd9ff5..be8da8175715 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 11d4c8204044..d2a998cf01f7 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 0a3250494f28..cbde7ebbb103 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