diff options
author | Richard Henderson <rth@cygnus.com> | 1997-12-22 20:42:30 -0800 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 1997-12-22 20:42:30 -0800 |
commit | b0435cf4cfaac64f49fc2b118b002ea1d32eb004 (patch) | |
tree | 122a5e519d9c21ab9b64c7bad5e16a9d9cf6f819 /gcc/config/alpha/linux-ecoff.h | |
parent | 5768f2112cf69725d22a4c1deb2bdefdb9db62fd (diff) | |
download | gcc-b0435cf4cfaac64f49fc2b118b002ea1d32eb004.zip gcc-b0435cf4cfaac64f49fc2b118b002ea1d32eb004.tar.gz gcc-b0435cf4cfaac64f49fc2b118b002ea1d32eb004.tar.bz2 |
alpha.h (CPP_PREDEFINES, [...]): Move OSF/1 specific defines out.
* alpha.h (CPP_PREDEFINES, LIB_SPEC, LINK_SPEC, STARTFILE_SPEC,
MD_STARTFILE_PREFIX, ASM_FILE_START, ASM_SPEC, ASM_FINAL_SPEC):
Move OSF/1 specific defines out.
* alpha/elf.h (TARGET_VERSION, CPP_PREDEFINES, DEFAULT_VTABLE_THUNKS):
Move Linux specific defines out.
(LINK_SPEC): Genericize.
(ASM_FILE_START): Emit .arch if using more than the base insn set.
(ASM_OUTPUT_SOURCE_LINE): Remove; identical to alpha.h version.
(SDB_DEBUGGING_INFO): Remove; gas can't handle it.
(HANDLE_SYSV_PRAGMA): Define.
* alpha/osf.h: New file.
* alpha/linux.h: Split. Retain file-format independant defines.
Import Linux bits from elf.h.
(CPP_PREDEFINES): Take a file-format specific SUB_CPP_PREDEFINES
(FUNCTION_PROFILER): _mcount takes its address in $28.
(MD_EXEC_PREFIX, MD_STARTFILE_PREFIX): Remove undef.
* alpha/linux-ecoff.h: New file.
* alpha/linux-elf.h: New file.
* alpha/vms.h (LIB_SPEC, LINK_SPEC): Copy from osf.h.
* alpha/win-nt.h (TARGET_DEFAULT): Define.
* configure.in (alpha*-*-osf*, alpha*-*-linux*) [tm_file]:
Add new headers as appropriate.
* configure.in (alpha*): Enable Haifa by default.
(*-*-winnt3*): Change to winnt*, since we're not v3 specific.
* configure: Rebuild.
From-SVN: r17211
Diffstat (limited to 'gcc/config/alpha/linux-ecoff.h')
-rw-r--r-- | gcc/config/alpha/linux-ecoff.h | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/gcc/config/alpha/linux-ecoff.h b/gcc/config/alpha/linux-ecoff.h new file mode 100644 index 0000000..a6cd5b2 --- /dev/null +++ b/gcc/config/alpha/linux-ecoff.h @@ -0,0 +1,36 @@ +/* Definitions of target machine for GNU compiler + for Alpha Linux-based GNU systems using ECOFF. + Copyright (C) 1996, 1997 Free Software Foundation, Inc. + Contributed by Bob Manson. + +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, 675 Mass Ave, Cambridge, MA 02139, USA. */ + +#undef TARGET_VERSION +#define TARGET_VERSION fprintf (stderr, " (Alpha GNU/Linux for ECOFF)"); + +#undef SUB_CPP_PREDEFINES +#define SUB_CPP_PREDEFINES "-D__ECOFF__" + +#undef LINK_SPEC +#define LINK_SPEC "-G 8 %{O*:-O3} %{!O*:-O1}" + +/* stabs get slurped by the assembler into a queer ecoff format. */ +#undef PREFERRED_DEBUGGING_TYPE +#define PREFERRED_DEBUGGING_TYPE DBX_DEBUG + +/* We support #pragma. */ +#define HANDLE_SYSV_PRAGMA |