diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2003-10-13 15:55:51 +0000 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2003-10-13 15:55:51 +0000 |
commit | 3f7deb8a34ed3d6ad3e4b5194a9c0b697452ec6b (patch) | |
tree | 91d6131e2ad26a9cb399b9f93dff529b082e7aa9 /ld/emultempl/ia64elf.em | |
parent | 618ec112719ab55280f2933593e279faf5561bc5 (diff) | |
download | gdb-3f7deb8a34ed3d6ad3e4b5194a9c0b697452ec6b.zip gdb-3f7deb8a34ed3d6ad3e4b5194a9c0b697452ec6b.tar.gz gdb-3f7deb8a34ed3d6ad3e4b5194a9c0b697452ec6b.tar.bz2 |
bfd/
2003-10-10 H.J. Lu <hongjiu.lu@intel.com>
* bfd-in.h (bfd_elf32_ia64_after_parse): New prototype.
(bfd_elf64_ia64_after_parse): Likewise.
* bfd-in2.h: Regenerated.
* elfxx-ia64.c (oor_ip): New.
(oor_branch_size): Likewise.
(bfd_elfNN_ia64_after_parse): Likewise.
(elfNN_ia64_relax_section): Use oor_ip if oor_branch_size
equals sizeof (oor_ip).
ld/
2003-10-10 H.J. Lu <hongjiu.lu@intel.com>
* Makefile.am (eelf64_ia64.c): Also depend on
$(srcdir)/emultempl/ia64elf.em.
* Makefile.in: Regenerated.
* emulparams/elf64_ia64.sh (EXTRA_EM_FILE): Set to ia64elf.
* emultempl/ia64elf.em: New.
Diffstat (limited to 'ld/emultempl/ia64elf.em')
-rw-r--r-- | ld/emultempl/ia64elf.em | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/ld/emultempl/ia64elf.em b/ld/emultempl/ia64elf.em new file mode 100644 index 0000000..5517725 --- /dev/null +++ b/ld/emultempl/ia64elf.em @@ -0,0 +1,61 @@ +# This shell script emits a C file. -*- C -*- +# Copyright 2003 Free Software Foundation, Inc. +# +# This file is part of GLD, the Gnu Linker. +# +# This program 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 of the License, or +# (at your option) any later version. +# +# This program 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; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# + +# This file is sourced from elf32.em, and defines extra ia64-elf +# specific routines. +# +# Define some shell vars to insert bits of code into the standard elf +# parse_args and list_options functions. +# +cat >>e${EMULATION_NAME}.c <<EOF + +/* None zero if generating binary for Intel Itanium processor. */ +static int itanium = 0; + +static void +gld${EMULATION_NAME}_after_parse (void) +{ + bfd_${EMULATION_NAME}_after_parse (itanium); +} + +EOF + +PARSE_AND_LIST_PROLOGUE=' +#define OPTION_ITANIUM 300 +' + +PARSE_AND_LIST_LONGOPTS=' + { "itanium", no_argument, NULL, OPTION_ITANIUM}, +' + +PARSE_AND_LIST_OPTIONS=' + fprintf (file, _("\ + --itanium Generate code for Intel Itanium processor\n" + )); +' + +PARSE_AND_LIST_ARGS_CASES=' + case OPTION_ITANIUM: + itanium = 1; + break; +' + +LDEMUL_AFTER_PARSE=gld${EMULATION_NAME}_after_parse +. ${srcdir}/emultempl/needrelax.em |