* configure.in: Add iq2000-elf target.

* configure: Regenerate.
	* config/tc-iq2000.c: New file.
	* config/tc-iq2000.h: Likewise.
This commit is contained in:
Stan Cox 2003-01-03 21:47:21 +00:00
parent a99bcdd0d5
commit 1c53c80da3
6 changed files with 1291 additions and 4 deletions

View File

@ -1,3 +1,11 @@
2003-01-02 Ben Elliston <bje@redhat.com>
* configure.in: Add iq2000-elf target.
* configure: Regenerate.
* config/tc-iq2000.c: New file.
* config/tc-iq2000.h: Likewise.
* po/gas.pot: Regenerate.
2003-01-02 Chris Demetriou <cgd@broadcom.com>
* config/tc-mips.c: Update copyright years to include 2003.

1203
gas/config/tc-iq2000.c Normal file

File diff suppressed because it is too large Load Diff

70
gas/config/tc-iq2000.h Normal file
View File

@ -0,0 +1,70 @@
/* tc-iq2000.h -- Header file for tc-iq2000.c.
Copyright (C) 2003 Free Software Foundation, Inc.
This file is part of GAS, the GNU Assembler.
GAS 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.
GAS 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 GAS; see the file COPYING. If not, write to
the Free Software Foundation, 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#define TC_IQ2000
#ifndef BFD_ASSEMBLER
/* leading space so will compile with cc */
#error IQ2000 support requires BFD_ASSEMBLER
#endif
#define LISTING_HEADER "IQ2000 GAS "
/* The target BFD architecture. */
#define TARGET_ARCH bfd_arch_iq2000
#define TARGET_FORMAT "elf32-iq2000"
#define TARGET_BYTES_BIG_ENDIAN 1
/* Permit temporary numeric labels. */
#define LOCAL_LABELS_FB 1
/* .-foo gets turned into PC relative relocs. */
#define DIFF_EXPR_OK
/* We don't need to handle .word strangely. */
#define WORKING_DOT_WORD
#define md_apply_fix3 gas_cgen_md_apply_fix3
/* Call md_pcrel_from_section(), not md_pcrel_from(). */
#define MD_PCREL_FROM_SECTION(FIXP, SEC) md_pcrel_from_section (FIXP, SEC)
extern long md_pcrel_from_section PARAMS ((struct fix *, segT));
#define tc_frob_file() iq2000_frob_file ()
extern void iq2000_frob_file PARAMS ((void));
#define obj_fix_adjustable(fixP) iq2000_fix_adjustable (fixP)
extern bfd_boolean iq2000_fix_adjustable PARAMS ((struct fix *));
/* Afrer creating a fixup for an instruction operand, we need to check
for HI16 relocs and queue them up for later sorting. */
#define md_cgen_record_fixup_exp iq2000_cgen_record_fixup_exp
/* When relaxing, we need to emit various relocs we otherwise wouldn't. */
#define TC_FORCE_RELOCATION(fix) iq2000_force_relocation (fix)
extern int iq2000_force_relocation PARAMS ((struct fix *));
/* Values passed to md_apply_fix3 don't include the symbol value. */
#define MD_APPLY_SYM_VALUE(FIX) 0
#define tc_gen_reloc gas_cgen_tc_gen_reloc

5
gas/configure vendored
View File

@ -2274,6 +2274,7 @@ for this_target in $target $canon_targets ; do
x86_64) cpu_type=i386 arch=x86_64;;
ia64) cpu_type=ia64 ;;
ip2k) cpu_type=ip2k endian=big ;;
iq2000) cpu_type=iq2000 endian=big ;;
m6811|m6812|m68hc12) cpu_type=m68hc11 ;;
m680[012346]0) cpu_type=m68k ;;
m68008) cpu_type=m68k ;;
@ -2469,6 +2470,8 @@ EOF
ip2k-*-*) fmt=elf ;;
iq2000-*-elf) fmt=elf bfd_gas=yes ;;
m32r-*-*) fmt=elf ;;
m68hc11-*-* | m6811-*-*) fmt=elf ;;
@ -2757,7 +2760,7 @@ EOF
# Any other special object files needed ?
case ${cpu_type} in
fr30 | ip2k | m32r | openrisc)
fr30 | ip2k | iq2000 | m32r | openrisc)
using_cgen=yes
;;

View File

@ -123,6 +123,7 @@ changequote(,)dnl
x86_64) cpu_type=i386 arch=x86_64;;
ia64) cpu_type=ia64 ;;
ip2k) cpu_type=ip2k endian=big ;;
iq2000) cpu_type=iq2000 endian=big ;;
m6811|m6812|m68hc12) cpu_type=m68hc11 ;;
m680[012346]0) cpu_type=m68k ;;
changequote([,])dnl
@ -315,6 +316,8 @@ changequote([,])dnl
ip2k-*-*) fmt=elf ;;
iq2000-*-elf) fmt=elf bfd_gas=yes ;;
m32r-*-*) fmt=elf ;;
m68hc11-*-* | m6811-*-*) fmt=elf ;;
@ -597,7 +600,7 @@ changequote([,])dnl
# Any other special object files needed ?
case ${cpu_type} in
fr30 | ip2k | m32r | openrisc)
fr30 | ip2k | iq2000 | m32r | openrisc)
using_cgen=yes
;;

View File

@ -1,5 +1,5 @@
/* macro.c - macro support for gas
Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
Free Software Foundation, Inc.
Written by Steve and Judy Chamberlain of Cygnus Support,
@ -93,7 +93,7 @@ static const char *macro_expand PARAMS ((int, sb *, macro_entry *, sb *));
/* The macro hash table. */
static struct hash_control *macro_hash;
struct hash_control *macro_hash;
/* Whether any macros have been defined. */