diff --git a/gas/ChangeLog b/gas/ChangeLog index 3e2cb644426..98e17ac711f 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,18 @@ +2006-06-01 Alan Modra + + * config/obj-ieee.c: Delete. + * config/obj-ieee.h: Delete. + * Makefile.am (OBJ_FORMATS): Remove ieee. + (OBJ_FORMAT_CFILES, OBJ_FORMAT_HFILES): Similarly. + (obj-ieee.o): Remove rule. + * Makefile.in: Regenerate. + * configure.in (atof): Remove tahoe. + (OBJ_MAYBE_IEEE): Don't define. + * configure: Regenerate. + * config.in: Regenerate. + * doc/Makefile.in: Regenerate. + * po/POTFILES.in: Regenerate. + 2006-05-31 Daniel Jacobowitz * Makefile.am: Replace INTLLIBS and INTLDEPS with LIBINTL diff --git a/gas/Makefile.am b/gas/Makefile.am index de0ae37f02d..a58ec425a8c 100644 --- a/gas/Makefile.am +++ b/gas/Makefile.am @@ -30,7 +30,7 @@ ATOF_TARG_C = $(srcdir)/config/atof-@atof@.c ATOF_TARG_O = atof-@atof@.o # use @target_cpu_type@ for refering to configured target name -IT_HDRS=itbl-parse.h $(srcdir)/itbl-ops.h +IT_HDRS=itbl-parse.h $(srcdir)/itbl-ops.h IT_SRCS=itbl-parse.c itbl-lex.c $(srcdir)/itbl-ops.c IT_DEPS=$(srcdir)/itbl-parse.y $(srcdir)/itbl-lex.l $(srcdir)/config/itbl-@target_cpu_type@.h IT_OBJS=itbl-parse.o itbl-lex.o itbl-ops.o @@ -99,8 +99,7 @@ OBJ_FORMATS = \ coff \ ecoff \ elf \ - evax \ - ieee + evax # This is an sh case which sets valid according to whether the CPU # type in the shell variable c and the OS type in the shell variable o @@ -337,7 +336,6 @@ OBJ_FORMAT_CFILES = \ config/obj-ecoff.c \ config/obj-elf.c \ config/obj-evax.c \ - config/obj-ieee.c \ config/obj-som.c OBJ_FORMAT_HFILES = \ @@ -346,7 +344,6 @@ OBJ_FORMAT_HFILES = \ config/obj-ecoff.h \ config/obj-elf.h \ config/obj-evax.h \ - config/obj-ieee.h \ config/obj-som.h # Emulation header files in config @@ -553,8 +550,6 @@ obj-elf.o : $(srcdir)/config/obj-elf.c $(COMPILE) -c $(srcdir)/config/obj-elf.c obj-evax.o : $(srcdir)/config/obj-evax.c $(COMPILE) -c $(srcdir)/config/obj-evax.c -obj-ieee.o : $(srcdir)/config/obj-ieee.c - $(COMPILE) -c $(srcdir)/config/obj-ieee.c obj-multi.o : $(srcdir)/config/obj-multi.c $(COMPILE) -c $(srcdir)/config/obj-multi.c obj-som.o : $(srcdir)/config/obj-som.c @@ -605,7 +600,7 @@ m68k-parse.c: $(srcdir)/config/m68k-parse.y rm -f m68k-parse.y; \ else true; fi # Disable -Werror, if it has been enabled, since old versions of bison/ -# yacc will produce working code which contain compile time warnings. +# yacc will produce working code which contain compile time warnings. m68k-parse.o: m68k-parse.c $(srcdir)/config/m68k-parse.h $(COMPILE) -c $< $(NO_WERROR) @@ -632,12 +627,12 @@ bfin-lex.o: bfin-lex.c bfin-parse.h $(srcdir)/config/bfin-defs.h itbl-lex.c: $(srcdir)/itbl-lex.l # Disable -Werror, if it has been enabled, since old versions of bison/ -# yacc will produce working code which contain compile time warnings. +# yacc will produce working code which contain compile time warnings. itbl-lex.o: itbl-lex.c itbl-parse.h $(srcdir)/itbl-lex.h $(COMPILE) -c $< $(NO_WERROR) # Disable -Werror, if it has been enabled, since old versions of bison/ -# yacc will produce working code which contain compile time warnings. +# yacc will produce working code which contain compile time warnings. itbl-parse.o: itbl-parse.c itbl-parse.h $(srcdir)/itbl-ops.h $(srcdir)/itbl-lex.h $(COMPILE) -c $< $(NO_WERROR) diff --git a/gas/Makefile.in b/gas/Makefile.in index ba68841b9f1..35bde638a2e 100644 --- a/gas/Makefile.in +++ b/gas/Makefile.in @@ -263,7 +263,7 @@ ATOF_TARG_C = $(srcdir)/config/atof-@atof@.c ATOF_TARG_O = atof-@atof@.o # use @target_cpu_type@ for refering to configured target name -IT_HDRS = itbl-parse.h $(srcdir)/itbl-ops.h +IT_HDRS = itbl-parse.h $(srcdir)/itbl-ops.h IT_SRCS = itbl-parse.c itbl-lex.c $(srcdir)/itbl-ops.c IT_DEPS = $(srcdir)/itbl-parse.y $(srcdir)/itbl-lex.l $(srcdir)/config/itbl-@target_cpu_type@.h IT_OBJS = itbl-parse.o itbl-lex.o itbl-ops.o @@ -331,8 +331,7 @@ OBJ_FORMATS = \ coff \ ecoff \ elf \ - evax \ - ieee + evax # This is an sh case which sets valid according to whether the CPU @@ -567,7 +566,6 @@ OBJ_FORMAT_CFILES = \ config/obj-ecoff.c \ config/obj-elf.c \ config/obj-evax.c \ - config/obj-ieee.c \ config/obj-som.c OBJ_FORMAT_HFILES = \ @@ -576,7 +574,6 @@ OBJ_FORMAT_HFILES = \ config/obj-ecoff.h \ config/obj-elf.h \ config/obj-evax.h \ - config/obj-ieee.h \ config/obj-som.h @@ -2454,8 +2451,6 @@ obj-elf.o : $(srcdir)/config/obj-elf.c $(COMPILE) -c $(srcdir)/config/obj-elf.c obj-evax.o : $(srcdir)/config/obj-evax.c $(COMPILE) -c $(srcdir)/config/obj-evax.c -obj-ieee.o : $(srcdir)/config/obj-ieee.c - $(COMPILE) -c $(srcdir)/config/obj-ieee.c obj-multi.o : $(srcdir)/config/obj-multi.c $(COMPILE) -c $(srcdir)/config/obj-multi.c obj-som.o : $(srcdir)/config/obj-som.c @@ -2502,7 +2497,7 @@ m68k-parse.c: $(srcdir)/config/m68k-parse.y rm -f m68k-parse.y; \ else true; fi # Disable -Werror, if it has been enabled, since old versions of bison/ -# yacc will produce working code which contain compile time warnings. +# yacc will produce working code which contain compile time warnings. m68k-parse.o: m68k-parse.c $(srcdir)/config/m68k-parse.h $(COMPILE) -c $< $(NO_WERROR) @@ -2529,12 +2524,12 @@ bfin-lex.o: bfin-lex.c bfin-parse.h $(srcdir)/config/bfin-defs.h itbl-lex.c: $(srcdir)/itbl-lex.l # Disable -Werror, if it has been enabled, since old versions of bison/ -# yacc will produce working code which contain compile time warnings. +# yacc will produce working code which contain compile time warnings. itbl-lex.o: itbl-lex.c itbl-parse.h $(srcdir)/itbl-lex.h $(COMPILE) -c $< $(NO_WERROR) # Disable -Werror, if it has been enabled, since old versions of bison/ -# yacc will produce working code which contain compile time warnings. +# yacc will produce working code which contain compile time warnings. itbl-parse.o: itbl-parse.c itbl-parse.h $(srcdir)/itbl-ops.h $(srcdir)/itbl-lex.h $(COMPILE) -c $< $(NO_WERROR) diff --git a/gas/config.in b/gas/config.in index b15d8024aba..a4b62292689 100644 --- a/gas/config.in +++ b/gas/config.in @@ -29,7 +29,8 @@ /* Supported emulations. */ #undef EMULATIONS -/* Define to 1 if NLS is requested */ +/* Define to 1 if translation of program messages to the user's native + language is requested. */ #undef ENABLE_NLS /* Define to 1 if you have `alloca', as a function or macro. */ @@ -39,12 +40,6 @@ */ #undef HAVE_ALLOCA_H -/* Define to 1 if you have the header file. */ -#undef HAVE_ARGZ_H - -/* Define to 1 if you have the `dcgettext' function. */ -#undef HAVE_DCGETTEXT - /* Is the prototype for getopt in in the expected format? */ #undef HAVE_DECL_GETOPT @@ -55,57 +50,18 @@ /* Define to 1 if you have the header file. */ #undef HAVE_ERRNO_H -/* Define to 1 if you have the `getcwd' function. */ -#undef HAVE_GETCWD - -/* Define to 1 if you have the `getpagesize' function. */ -#undef HAVE_GETPAGESIZE - -/* Define as 1 if you have gettext and don't want to use GNU gettext. */ -#undef HAVE_GETTEXT - /* Define to 1 if you have the header file. */ #undef HAVE_INTTYPES_H -/* Define if your locale.h file contains LC_MESSAGES. */ -#undef HAVE_LC_MESSAGES - -/* Define to 1 if you have the header file. */ -#undef HAVE_LIMITS_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_LOCALE_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_MALLOC_H - /* Define to 1 if you have the header file. */ #undef HAVE_MEMORY_H -/* Define to 1 if you have a working `mmap' system call. */ -#undef HAVE_MMAP - -/* Define to 1 if you have the `munmap' function. */ -#undef HAVE_MUNMAP - -/* Define to 1 if you have the header file. */ -#undef HAVE_NL_TYPES_H - -/* Define to 1 if you have the `putenv' function. */ -#undef HAVE_PUTENV - /* Define to 1 if you have the `remove' function. */ #undef HAVE_REMOVE /* Define to 1 if you have the `sbrk' function. */ #undef HAVE_SBRK -/* Define to 1 if you have the `setenv' function. */ -#undef HAVE_SETENV - -/* Define to 1 if you have the `setlocale' function. */ -#undef HAVE_SETLOCALE - /* Define to 1 if you have the header file. */ #undef HAVE_STDARG_H @@ -115,24 +71,12 @@ /* Define to 1 if you have the header file. */ #undef HAVE_STDLIB_H -/* Define if you have the stpcpy function */ -#undef HAVE_STPCPY - -/* Define to 1 if you have the `strcasecmp' function. */ -#undef HAVE_STRCASECMP - -/* Define to 1 if you have the `strchr' function. */ -#undef HAVE_STRCHR - /* Define to 1 if you have the header file. */ #undef HAVE_STRINGS_H /* Define to 1 if you have the header file. */ #undef HAVE_STRING_H -/* Define to 1 if you have the header file. */ -#undef HAVE_SYS_PARAM_H - /* Define to 1 if you have the header file. */ #undef HAVE_SYS_STAT_H @@ -145,21 +89,9 @@ /* Define to 1 if you have the `unlink' function. */ #undef HAVE_UNLINK -/* Define to 1 if you have the header file. */ -#undef HAVE_VALUES_H - /* Define to 1 if you have the header file. */ #undef HAVE_VARARGS_H -/* Define to 1 if you have the `__argz_count' function. */ -#undef HAVE___ARGZ_COUNT - -/* Define to 1 if you have the `__argz_next' function. */ -#undef HAVE___ARGZ_NEXT - -/* Define to 1 if you have the `__argz_stringify' function. */ -#undef HAVE___ARGZ_STRINGIFY - /* Using i386 COFF? */ #undef I386COFF @@ -217,9 +149,6 @@ /* generic support? */ #undef OBJ_MAYBE_GENERIC -/* IEEE support? */ -#undef OBJ_MAYBE_IEEE - /* SOM support? */ #undef OBJ_MAYBE_SOM @@ -302,17 +231,8 @@ `char[]'. */ #undef YYTEXT_POINTER -/* Define to empty if `const' does not conform to ANSI C. */ -#undef const - /* Define to `__inline__' or `__inline' if that's what the C compiler calls it, or to nothing if 'inline' is not supported under any name. */ #ifndef __cplusplus #undef inline #endif - -/* Define to `long' if does not define. */ -#undef off_t - -/* Define to `unsigned' if does not define. */ -#undef size_t diff --git a/gas/config/obj-ieee.c b/gas/config/obj-ieee.c deleted file mode 100644 index bac46757c13..00000000000 --- a/gas/config/obj-ieee.c +++ /dev/null @@ -1,613 +0,0 @@ -/* obj-format for ieee-695 records. - Copyright 1991, 1992, 1993, 1994, 1997, 2000, 2001, 2002, 2003, 2005 - 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, 51 Franklin Street - Fifth Floor, Boston, MA - 02110-1301, USA. */ - -/* Created by Steve Chamberlain . */ - -/* This will hopefully become the port through which bfd and gas talk, - for the moment, only ieee is known to work well. */ - -#include "bfd.h" -#include "as.h" -#include "subsegs.h" -#include "output-file.h" -#include "frags.h" - -bfd *abfd; - -/* How many addresses does the .align take? */ - -static relax_addressT -relax_align (address, alignment) - /* Address now. */ - register relax_addressT address; - - /* Alignment (binary). */ - register long alignment; -{ - relax_addressT mask; - relax_addressT new_address; - - mask = ~((~0) << alignment); - new_address = (address + mask) & (~mask); - return (new_address - address); -} - -/* Calculate the size of the frag chain - and create a bfd section to contain all of it. */ - -static void -size_section (abfd, idx) - bfd *abfd; - unsigned int idx; -{ - asection *sec; - unsigned int size = 0; - fragS *frag = segment_info[idx].frag_root; - - while (frag) - { - if (frag->fr_address != size) - { - printf (_("Out of step\n")); - size = frag->fr_address; - } - size += frag->fr_fix; - switch (frag->fr_type) - { - case rs_fill: - case rs_org: - size += frag->fr_offset * frag->fr_var; - break; - case rs_align: - case rs_align_code: - { - addressT off; - - off = relax_align (size, frag->fr_offset); - if (frag->fr_subtype != 0 && off > frag->fr_subtype) - off = 0; - size += off; - } - } - frag = frag->fr_next; - } - if (size) - { - char *name = segment_info[idx].name; - - if (name == (char *) NULL) - name = ".data"; - - segment_info[idx].user_stuff = - (char *) (sec = bfd_make_section (abfd, name)); - /* Make it output through itself. */ - sec->output_section = sec; - sec->flags |= SEC_HAS_CONTENTS; - bfd_set_section_size (abfd, sec, size); - } -} - -/* Run through a frag chain and write out the data to go with it. */ - -static void -fill_section (abfd, idx) - bfd *abfd; - unsigned int idx; -{ - asection *sec = segment_info[idx].user_stuff; - - if (sec) - { - fragS *frag = segment_info[idx].frag_root; - unsigned int offset = 0; - while (frag) - { - unsigned int fill_size; - unsigned int count; - switch (frag->fr_type) - { - case rs_fill: - case rs_align: - case rs_org: - if (frag->fr_fix) - { - bfd_set_section_contents (abfd, - sec, - frag->fr_literal, - frag->fr_address, - frag->fr_fix); - } - offset += frag->fr_fix; - fill_size = frag->fr_var; - if (fill_size) - { - unsigned int off = frag->fr_fix; - for (count = frag->fr_offset; count; count--) - { - bfd_set_section_contents (abfd, sec, - frag->fr_literal + - frag->fr_fix, - frag->fr_address + off, - fill_size); - off += fill_size; - } - } - break; - default: - abort (); - } - frag = frag->fr_next; - } - } -} - -/* Count the relocations in a chain. */ - -static unsigned int -count_entries_in_chain (idx) - unsigned int idx; -{ - unsigned int nrelocs; - fixS *fixup_ptr; - - /* Count the relocations. */ - fixup_ptr = segment_info[idx].fix_root; - nrelocs = 0; - while (fixup_ptr != (fixS *) NULL) - { - fixup_ptr = fixup_ptr->fx_next; - nrelocs++; - } - return nrelocs; -} - -/* Output all the relocations for a section. */ - -void -do_relocs_for (idx) - unsigned int idx; -{ - unsigned int nrelocs; - arelent **reloc_ptr_vector; - arelent *reloc_vector; - asymbol **ptrs; - asection *section = (asection *) (segment_info[idx].user_stuff); - unsigned int i; - fixS *from; - - if (section) - { - nrelocs = count_entries_in_chain (idx); - - reloc_ptr_vector = - (arelent **) malloc ((nrelocs + 1) * sizeof (arelent *)); - reloc_vector = (arelent *) malloc (nrelocs * sizeof (arelent)); - ptrs = (asymbol **) malloc (nrelocs * sizeof (asymbol *)); - from = segment_info[idx].fix_root; - for (i = 0; i < nrelocs; i++) - { - arelent *to = reloc_vector + i; - asymbol *s; - reloc_ptr_vector[i] = to; - to->howto = (reloc_howto_type *) (from->fx_r_type); - - s = &(from->fx_addsy->sy_symbol.sy); - to->address = ((char *) (from->fx_frag->fr_address + - from->fx_where)) - - ((char *) (&(from->fx_frag->fr_literal))); - to->addend = from->fx_offset; - /* If we know the symbol which we want to relocate to, turn - this reloaction into a section relative. - - If this relocation is pcrelative, and we know the - destination, we still want to keep the relocation - since - the linker might relax some of the bytes, but it stops - being pc relative and turns into an absolute relocation. */ - if (s) - { - if ((s->flags & BSF_UNDEFINED) == 0) - { - to->section = s->section; - - /* We can refer directly to the value field here, - rather than using S_GET_VALUE, because this is - only called after do_symbols, which sets up the - value field. */ - to->addend += s->value; - - to->sym_ptr_ptr = 0; - if (to->howto->pcrel_offset) - /* This is a pcrel relocation, the addend should - be adjusted. */ - to->addend -= to->address + 1; - } - else - { - to->section = 0; - *ptrs = &(from->fx_addsy->sy_symbol.sy); - to->sym_ptr_ptr = ptrs; - - if (to->howto->pcrel_offset) - /* This is a pcrel relocation, the addend should - be adjusted. */ - to->addend -= to->address - 1; - } - } - else - to->section = 0; - - ptrs++; - from = from->fx_next; - } - - /* Attach to the section. */ - section->orelocation = reloc_ptr_vector; - section->reloc_count = nrelocs; - section->flags |= SEC_LOAD; - } -} - -/* Do the symbols. */ - -static void -do_symbols (abfd) - bfd *abfd; -{ - extern symbolS *symbol_rootP; - symbolS *ptr; - asymbol **symbol_ptr_vec; - asymbol *symbol_vec; - unsigned int count = 0; - unsigned int index; - - for (ptr = symbol_rootP; - ptr != (symbolS *) NULL; - ptr = ptr->sy_next) - { - if (SEG_NORMAL (ptr->sy_symbol.seg)) - { - ptr->sy_symbol.sy.section = - (asection *) (segment_info[ptr->sy_symbol.seg].user_stuff); - S_SET_VALUE (ptr, S_GET_VALUE (ptr)); - if (ptr->sy_symbol.sy.flags == 0) - ptr->sy_symbol.sy.flags = BSF_LOCAL; - } - else - { - switch (ptr->sy_symbol.seg) - { - case SEG_ABSOLUTE: - ptr->sy_symbol.sy.flags |= BSF_ABSOLUTE; - ptr->sy_symbol.sy.section = 0; - break; - case SEG_UNKNOWN: - ptr->sy_symbol.sy.flags = BSF_UNDEFINED; - ptr->sy_symbol.sy.section = 0; - break; - default: - abort (); - } - } - ptr->sy_symbol.sy.value = S_GET_VALUE (ptr); - count++; - } - symbol_ptr_vec = (asymbol **) malloc ((count + 1) * sizeof (asymbol *)); - - index = 0; - for (ptr = symbol_rootP; - ptr != (symbolS *) NULL; - ptr = ptr->sy_next) - { - symbol_ptr_vec[index] = &(ptr->sy_symbol.sy); - index++; - } - symbol_ptr_vec[index] = 0; - abfd->outsymbols = symbol_ptr_vec; - abfd->symcount = count; -} - -/* The generic as->bfd converter. Other backends may have special case - code. */ - -void -bfd_as_write_hook () -{ - int i; - - for (i = SEG_E0; i < SEG_UNKNOWN; i++) - size_section (abfd, i); - - for (i = SEG_E0; i < SEG_UNKNOWN; i++) - fill_section (abfd, i); - - do_symbols (abfd); - - for (i = SEG_E0; i < SEG_UNKNOWN; i++) - do_relocs_for (i); -} - -S_SET_SEGMENT (x, y) - symbolS *x; - int y; -{ - x->sy_symbol.seg = y; -} - -S_IS_DEFINED (x) - symbolS *x; -{ - if (SEG_NORMAL (x->sy_symbol.seg)) - { - return 1; - } - switch (x->sy_symbol.seg) - { - case SEG_UNKNOWN: - return 0; - default: - abort (); - } -} - -S_IS_EXTERNAL (x) -{ - abort (); -} - -S_GET_DESC (x) -{ - abort (); -} - -S_GET_SEGMENT (x) - symbolS *x; -{ - return x->sy_symbol.seg; -} - -S_SET_EXTERNAL (x) - symbolS *x; -{ - x->sy_symbol.sy.flags |= BSF_GLOBAL | BSF_EXPORT; -} - -S_SET_NAME (x, y) - symbolS *x; - char *y; -{ - x->sy_symbol.sy.name = y; -} - -S_GET_OTHER (x) -{ - abort (); -} - -S_IS_DEBUG (x) -{ - abort (); -} - -#ifndef segment_name -char * -segment_name () -{ - abort (); -} -#endif - -void -obj_read_begin_hook () -{ -} - -static void -obj_ieee_section (ignore) - int ignore; -{ - extern char *input_line_pointer; - extern char is_end_of_line[]; - char *p = input_line_pointer; - char *s = p; - int i; - - /* Look up the name, if it doesn't exist, make it. */ - while (*p && *p != ' ' && *p != ',' && !is_end_of_line[*p]) - { - p++; - } - for (i = SEG_E0; i < SEG_UNKNOWN; i++) - { - if (segment_info[i].hadone) - { - if (strncmp (segment_info[i].name, s, p - s) == 0) - goto ok; - } - else - break; - } - if (i == SEG_UNKNOWN) - { - as_bad (_("too many sections")); - return; - } - - segment_info[i].hadone = 1; - segment_info[i].name = malloc (p - s + 1); - memcpy (segment_info[i].name, s, p - s); - segment_info[i].name[p - s] = 0; -ok: - subseg_set (i, 0); - while (!is_end_of_line[*p]) - p++; - input_line_pointer = p; -} - -const pseudo_typeS obj_pseudo_table[] = -{ - {"section", obj_ieee_section, 0}, - {"data.b" , cons , 1}, - {"data.w" , cons , 2}, - {"data.l" , cons , 4}, - {"export" , s_globl , 0}, - {"option" , s_ignore , 0}, - {"end" , s_ignore , 0}, - {"import" , s_ignore , 0}, - {"sdata" , stringer , 0}, - 0, -}; - -void -obj_symbol_new_hook (symbolP) - symbolS *symbolP; -{ - symbolP->sy_symbol.sy.the_bfd = abfd; -} - -#if 1 - -#ifndef SUB_SEGMENT_ALIGN -#ifdef HANDLE_ALIGN -/* The last subsegment gets an alignment corresponding to the alignment - of the section. This allows proper nop-filling at the end of - code-bearing sections. */ -#define SUB_SEGMENT_ALIGN(SEG, FRCHAIN) \ - (!(FRCHAIN)->frch_next || (FRCHAIN)->frch_next->frch_seg != (SEG) \ - ? get_recorded_alignment (SEG) : 0) -#else -#define SUB_SEGMENT_ALIGN(SEG, FRCHAIN) 2 -#endif -#endif - -extern void -write_object_file () -{ - int i; - struct frchain *frchain_ptr; - struct frag *frag_ptr; - - abfd = bfd_openw (out_file_name, "ieee"); - - if (abfd == 0) - { - as_perror (_("FATAL: Can't create %s"), out_file_name); - exit (EXIT_FAILURE); - } - bfd_set_format (abfd, bfd_object); - bfd_set_arch_mach (abfd, bfd_arch_h8300, 0); - subseg_set (1, 0); - subseg_set (2, 0); - subseg_set (3, 0); - - /* Run through all the sub-segments and align them up. Also - close any open frags. We tack a .fill onto the end of the - frag chain so that any .align's size can be worked by looking - at the next frag. */ - for (frchain_ptr = frchain_root; - frchain_ptr != (struct frchain *) NULL; - frchain_ptr = frchain_ptr->frch_next) - { - int alignment; - - subseg_set (frchain_ptr->frch_seg, frchain_ptr->frch_subseg); - - alignment = SUB_SEGMENT_ALIGN (now_seg, frchain_ptr) - -#ifdef md_do_align - md_do_align (alignment, (char *) NULL, 0, 0, alignment_done); -#endif - if (subseg_text_p (now_seg)) - frag_align_code (alignment, 0); - else - frag_align (alignment, 0, 0); - -#ifdef md_do_align - alignment_done: -#endif - - frag_wane (frag_now); - frag_now->fr_fix = 0; - know (frag_now->fr_next == NULL); - } - - /* Now build one big frag chain for each segment, linked through - fr_next. */ - for (i = SEG_E0; i < SEG_UNKNOWN; i++) - { - fragS **prev_frag_ptr_ptr; - struct frchain *next_frchain_ptr; - - segment_info[i].frag_root = segment_info[i].frchainP->frch_root; - } - - for (i = SEG_E0; i < SEG_UNKNOWN; i++) - relax_segment (segment_info[i].frag_root, i); - - /* Relaxation has completed. Freeze all syms. */ - finalize_syms = 1; - - /* Now the addresses of the frags are correct within the segment. */ - - bfd_as_write_hook (); - bfd_close (abfd); -} - -#endif - -H_SET_TEXT_SIZE (a, b) -{ - abort (); -} - -H_GET_TEXT_SIZE () -{ - abort (); -} - -H_SET_BSS_SIZE () -{ - abort (); -} - -H_SET_STRING_SIZE () -{ - abort (); -} - -H_SET_RELOCATION_SIZE () -{ - abort (); -} - -H_SET_MAGIC_NUMBER () -{ - abort (); -} - -H_GET_FILE_SIZE () -{ - abort (); -} - -H_GET_TEXT_RELOCATION_SIZE () -{ - abort (); -} diff --git a/gas/config/obj-ieee.h b/gas/config/obj-ieee.h deleted file mode 100644 index 29654296e83..00000000000 --- a/gas/config/obj-ieee.h +++ /dev/null @@ -1,46 +0,0 @@ -/* This file is obj-ieee.h - Copyright 1987, 1988, 1989, 1990, 1991, 1992, 2000, 2002, 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, 51 Franklin Street - Fifth Floor, Boston, MA - 02110-1301, USA. */ - -#include "bfd.h" - -typedef struct -{ - asymbol sy; - int seg; -} -obj_symbol_type; - -#define S_GET_NAME(s) (((s)->sy_symbol.sy.name)) - -/* Return true for symbols that should not be reduced to section - symbols or eliminated from expressions, because they may be - overridden by the linker. */ -#define S_FORCE_RELOC(s, strict) (!SEG_NORMAL (x->sy_symbol.seg)) - -typedef struct - { - int x; - } -object_headers; - -int lineno_rootP; - -#define IEEE_STYLE diff --git a/gas/configure b/gas/configure index 5036c8e2c94..11eacda4c66 100755 --- a/gas/configure +++ b/gas/configure @@ -4902,8 +4902,7 @@ fi # IEEE FP. On those that don't support FP at all, usually IEEE # is emulated. case ${target_cpu} in - vax | tahoe ) atof=${target_cpu} ;; - pdp11) atof=vax ;; + vax | pdp11 ) atof=vax ;; *) atof=ieee ;; esac @@ -5068,11 +5067,6 @@ cat >>confdefs.h <<\_ACEOF #define OBJ_MAYBE_GENERIC 1 _ACEOF ;; - ieee) -cat >>confdefs.h <<\_ACEOF -#define OBJ_MAYBE_IEEE 1 -_ACEOF - ;; som) cat >>confdefs.h <<\_ACEOF #define OBJ_MAYBE_SOM 1 diff --git a/gas/configure.in b/gas/configure.in index a4982a44292..ad1ab113fe8 100644 --- a/gas/configure.in +++ b/gas/configure.in @@ -305,17 +305,17 @@ changequote([,])dnl ;; mips) - echo ${extra_objects} | grep -s "itbl-parse.o" + echo ${extra_objects} | grep -s "itbl-parse.o" if test $? -ne 0 ; then extra_objects="$extra_objects itbl-parse.o" fi - echo ${extra_objects} | grep -s "itbl-lex.o" + echo ${extra_objects} | grep -s "itbl-lex.o" if test $? -ne 0 ; then extra_objects="$extra_objects itbl-lex.o" fi - echo ${extra_objects} | grep -s "itbl-ops.o" + echo ${extra_objects} | grep -s "itbl-ops.o" if test $? -ne 0 ; then extra_objects="$extra_objects itbl-ops.o" fi @@ -424,8 +424,7 @@ fi # IEEE FP. On those that don't support FP at all, usually IEEE # is emulated. case ${target_cpu} in - vax | tahoe ) atof=${target_cpu} ;; - pdp11) atof=vax ;; + vax | pdp11 ) atof=vax ;; *) atof=ieee ;; esac @@ -511,7 +510,6 @@ if test `set . $formats ; shift ; echo $#` -gt 1 ; then ecoff) AC_DEFINE(OBJ_MAYBE_ECOFF, 1, [ECOFF support?]) ;; elf) AC_DEFINE(OBJ_MAYBE_ELF, 1, [ELF support?]) ;; generic) AC_DEFINE(OBJ_MAYBE_GENERIC, 1, [generic support?]) ;; - ieee) AC_DEFINE(OBJ_MAYBE_IEEE, 1, [IEEE support?]) ;; som) AC_DEFINE(OBJ_MAYBE_SOM, 1, [SOM support?]) ;; esac extra_objects="$extra_objects obj-$fmt.o" @@ -610,7 +608,7 @@ AC_CHECK_FUNCS(sbrk) # do we need the math library? case "${need_libm}" in -yes) +yes) AC_CHECK_LIBM AC_SUBST(LIBM) ;; diff --git a/gas/doc/Makefile.in b/gas/doc/Makefile.in index 345559f0e87..2987873413f 100644 --- a/gas/doc/Makefile.in +++ b/gas/doc/Makefile.in @@ -386,13 +386,10 @@ dist-info: $(INFO_DEPS) $(srcdir)/*) base=`echo "$$base" | sed "s|^$$srcdirstrip/||"`;; \ esac; \ if test -f $$base; then d=.; else d=$(srcdir); fi; \ - base_i=`echo "$$base" | sed 's|\.info$$||;s|$$|.i|'`; \ - for file in $$d/$$base $$d/$$base-[0-9] $$d/$$base-[0-9][0-9] $$d/$$base_i[0-9] $$d/$$base_i[0-9][0-9]; do \ - if test -f $$file; then \ - relfile=`expr "$$file" : "$$d/\(.*\)"`; \ - test -f $(distdir)/$$relfile || \ - cp -p $$file $(distdir)/$$relfile; \ - else :; fi; \ + for file in $$d/$$base*; do \ + relfile=`expr "$$file" : "$$d/\(.*\)"`; \ + test -f $(distdir)/$$relfile || \ + cp -p $$file $(distdir)/$$relfile; \ done; \ done diff --git a/gas/po/POTFILES.in b/gas/po/POTFILES.in index 3a173a536ff..12c1932a504 100644 --- a/gas/po/POTFILES.in +++ b/gas/po/POTFILES.in @@ -24,8 +24,6 @@ config/obj-elf.c config/obj-elf.h config/obj-evax.c config/obj-evax.h -config/obj-ieee.c -config/obj-ieee.h config/obj-som.c config/obj-som.h config/tc-alpha.c