Commit Graph

260 Commits

Author SHA1 Message Date
Ian Lance Taylor
e8a3ab752d 1999-09-11 Donn Terry <donn@interix.com>
* config/obj-coff.c (add_lineno): Check that the line number is
	positive.
1999-09-12 02:34:00 +00:00
Ian Lance Taylor
0561a208f8 1999-09-11 Donn Terry <donn@interix.com>
* expr.c (expr): Change first parameter to int.
	* config/obj-coff.c: Add declarations for static functions.
	(coff_frob_symbol): Use SYM_AUXENT.
	* config/tc-i386.h (flag_16bit_code): Don't declare.
1999-09-12 02:27:58 +00:00
Ian Lance Taylor
2ab9b79ef9 1999-09-11 Donn Terry <donn@interix.com>
* config/atof-ieee.c (atof_ieee): Change what_kind to int.
	* config/atof-vax.c (flonum_gen2vax): Change format_letter to
	int.
	(md_atof): Return NULL rather than 0.
	* config/tc-i386.c (md_atof): Change type to int.
1999-09-12 02:12:38 +00:00
Ian Lance Taylor
5881e4aab3 1999-09-11 Donn Terry <donn@interix.com>
* config/obj-coff.c (obj_coff_section): Default to setting
	SEC_LOAD.  Don't set SEC_DATA for 'w' modifier.
1999-09-12 02:08:55 +00:00
Ian Lance Taylor
e723ef7c5f * write.c (dump_section_relocs): Call print_symbol_value_1 to
print the symbol, rather than printing it here.

1999-09-11  Donn Terry  <donn@interix.com>

	* write.c (adjust_reloc_syms): Print adjusted fixup.
1999-09-11 14:59:14 +00:00
Ian Lance Taylor
fa16d38700 1999-09-11 Donn Terry <donn@interix.com>
* expr.c (integer_constant): Correct too_many_digits calculation
	in base 10 case.
1999-09-11 14:24:59 +00:00
Andreas Schwab
13a830b61a * doc/c-arm.texi: Fix arguments of @var to not contain
punctuation.
1999-09-09 16:09:52 +00:00
Nick Clifton
325188ecac Only support interworking and pic for ELF or COFF targets 1999-09-08 13:10:28 +00:00
Jeff Law
4964086a66 * config/tc-hppa.c (pa_ip): Support 'Z' argument. 1999-09-07 19:48:13 +00:00
Jeff Law
e7c1f43c29 * config/tc-hppa.c (pa_ip): Put strict register checks before
call to pa_parse_number.
1999-09-07 19:30:14 +00:00
Ian Lance Taylor
c4bf532f53 * config/obj-coff.c: Add ATTRIBUTE_UNUSED as needed for
BFD_ASSEMBLER code.
1999-09-07 03:26:58 +00:00
Ian Lance Taylor
a33132fd8e 1999-09-06 Donn Terry <donn@interix.com>
* as.c (perform_an_assembly_pass): Set SEC_DATA for data_section.
1999-09-07 02:23:44 +00:00
Jeff Law
0f4f8b56e7 * config/tc-hppa.c (pa_ip): Get strict/non-strict mode from the
candidate instruction.  Require registers for register arguments
        when in strict mode.  Require assemble-time constants for
        constants when in strict mode.
        (pa_get_absolute_expression): Require a constant when in strict
        mode.
1999-09-06 10:28:21 +00:00
Nick Clifton
d33886536c Fix value for -Wnuh command line option 1999-09-06 10:24:19 +00:00
Ian Lance Taylor
041dd5a9f4 1999-09-04 Steve Chamberlain <sac@pobox.com>
* config/tc-pj.c: New file, supports picoJava in ELF.
	* config/tc-pj.h: Ditto.
	* configure.in (pjl*, pj*): New targets.
	* Makefile.am: Rebuild dependencies.
	(CPU_TYPES): Add pj.
	(TARGET_CPU_CFILES): Add config/tc-pj.c.
	(TARGET_CPU_HFILES): Add config/tc-pj.h.
	* doc/c-pj.texi: New file.
	* doc/as.texinfo: Add some PJ specifics.
	* doc/all.texi: Add PJ to the list of all architectures, sort them
	all alphabetically.
	* doc/Makefile.in (CPU_DOCS): Add c-pj.texi.
	* configure, Makefile.in, doc/Makefile.in: Rebuild.
1999-09-04 17:29:22 +00:00
Alan Modra
4ca72d3829 Enable --emulation={i386coff,i386elf} for i386 gas. 1999-09-02 15:12:01 +00:00
Nick Clifton
bcef92fa23 Do not dump literal pool when a .section .line directive is encountered. 1999-09-02 10:39:18 +00:00
Nick Clifton
5856c19ac4 Do not align sectins when producing ELF format objects. 1999-09-01 10:57:19 +00:00
Nick Clifton
cdf82bcf48 Document new command line switches. 1999-09-01 09:28:07 +00:00
Alan Modra
af6bdddf8c i386 gas code cleanups: combine i386_is_reg and parse_register. 1999-08-30 13:12:54 +00:00
Alan Modra
5f47d35be1 Allow spaces in i386 FP reg names, eg. %st ( 1 ). 1999-08-29 23:44:27 +00:00
Doug Evans
1174497c8a * config/tc-m32r.c (md_parse_option): Delete unrecognized option
error message (done elsewhere).
1999-08-29 20:45:22 +00:00
Jeff Law
97e1581b3f * config/tc-hppa.c (pa_ip): Replace 'f' by 'v'. Prefix float register
args by 'f'.
1999-08-29 07:52:32 +00:00
Jeff Law
9e4f2d3a85 * config/tc-hppa.c (pa_ip): Add args q, %, and |. 1999-08-28 10:59:37 +00:00
Jeff Law
680ef6de90 * config/tc-hppa.c (pa_ip): Absorb white space in instructions
between args.
        Add new completers.  Fix bug in 64 bit condition handling.
1999-08-28 10:18:12 +00:00
Jeff Law
413c94baca * config/tc-hppa.c (pa_ip): Add completer codes 'a', 'ch', 'cH',
'cS', and 'c*'.
1999-08-28 08:48:40 +00:00
Jeff Law
28252e6156 * config/tc-hppa.c (pa_ip): Place completers behind prefix 'c'. 1999-08-28 08:16:30 +00:00
Jeff Law
17d9105c0a * config/tc-hppa.c (pa_ip): Do not allow '*' in 32bit completers. 1999-08-28 07:23:42 +00:00
Jeff Law
a97685e901 * config/tc-hppa.c (pa_ip): Add cases for '.', '~'. '$'. and '!' 1999-08-28 06:42:06 +00:00
Jeff Law
9ecc05f0de * config/tc-hppa.c (pa_ip): Add case for 'I'. 1999-08-28 06:28:21 +00:00
Nick Clifton
cb30237e0f Apply Jim Wilson's patch to track current frag for line number changes. 1999-08-27 09:03:18 +00:00
Nick Clifton
09a798eacc This makes the line number info for the end of a function match what the
standard specifies.  The current code could confuse a debugger.
1999-08-26 12:13:01 +00:00
Nick Clifton
e1c05f12ca Applied patch from Jim Wilson to fix several bugs in line table generation. 1999-08-26 11:11:43 +00:00
Alan Modra
b23bac3600 *gas/config/tc-i386.c: Fix errors in displacement size when
automatically inferring an address prefex.
1999-08-20 11:59:19 +00:00
Nick Clifton
50f4163fd6 If an offset is invalid, display it. 1999-08-18 09:12:11 +00:00
Ian Lance Taylor
f589a541dc * config/tc-ppc.c (md_assemble): Trim @ha constant to 16 bits, to
handle 0xffffNNNN constants correctly.
1999-08-17 18:26:49 +00:00
Nick Clifton
114502711b Look for register conflicts on stores as well as loads. 1999-08-16 17:47:29 +00:00
Nick Clifton
276b1dc2a2 Only pass positive values to validate_offset_imm() 1999-08-13 08:38:20 +00:00
Nick Clifton
ae5ad4adf9 Tidy up formatting.
Fix Thubm weak function support.
1999-08-12 10:32:42 +00:00
Alan Modra
bf6d389561 config/tc-i386.c: Remove dead code 1999-08-11 14:10:07 +00:00
Jeff Law
b100be6695 * config/tc-hppa.c (pa_build_unwind_subspace): Use sane section
flags for the unwind subspace.
1999-08-11 09:41:28 +00:00
Jeff Law
46031ca9e4 * config/tc-hppa.c (UNWIND_SECTION_NAME): Define for ELF.
(pa_build_unwind_subspace): Remove #if 0 wrapper.  Select a
        suitable relocation based on the size of the target's pointer.
        Always Use subsegment zero for the unwinders.
        (pa_level): Handle "2.0w".
1999-08-10 19:02:30 +00:00
Joern Rennecke
0825afba5d * config/tc-d30v.c (write_2_short): Don't group repeat instructions
with the following instruction unless this was specified.
1999-08-09 19:04:27 +00:00
Ian Lance Taylor
1a1ae23e52 * config/tc-i386.h (SUB_SEGMENT_ALIGN): If TE_GO32, return 4 for
certain sections, to match BFD changes.
1999-08-09 04:42:15 +00:00
Ian Lance Taylor
81afc8460e 1999-08-08 Mumit Khan <khan@xraylith.wisc.edu>
* Makefile.am (noinst_SCRIPTS): Change .gdbinit to $(GDBINIT).
	(EXTRA_SCRIPTS): Define to keep automake happy.
1999-08-08 23:31:18 +00:00
Ian Lance Taylor
04ad15439a * Makefile.am: Rename .dep* files to DEP*.
(MKDEP): Rename from DEP.  Change all uses.  Use $${srcdir} rather
	than $(srcdir).  Rename TCDEP targets to DEPTC.  Rename OBJDEP
	targets to DEPOBJ.
	* Makefile.in: Rebuild.
1999-08-08 17:48:38 +00:00
Richard Henderson
1eb7027ca2 * config/tc-sparc.c (sparc_ip): Allow assembly of %lo()+%reg. 1999-08-08 17:27:23 +00:00
Ian Lance Taylor
46eec08e57 * Makefile.am: Change all uses of itbl-test-ops to itbl-tops to
avoid problems on DOS filesystems.
	* Makefile.in: Rebuild.
1999-08-08 17:08:00 +00:00
Ian Lance Taylor
2dcc60be2b * doc/as.texinfo (Section): Document 's' flag for COFF version.
1999-08-08  Mumit Khan  <khan@xraylith.wisc.edu>

	* config/obj-coff.c (obj_coff_section): Handle 's' (shared)
	section flag.
1999-08-08 16:53:30 +00:00
Ian Lance Taylor
76a279225c * configure.in: Define and substitute GDBINIT. Change AC_OUTPUT
line to crate ${GDBINIT} rather than .gdbinit.
	* configure, Makefile.in, doc/Makefile.in: Rebuild.
1999-08-08 15:56:55 +00:00
Jeff Law
0741736bf6 * config/tc-hppa.c (pa_ip, case '?'): Add missing break. 1999-08-06 18:13:31 +00:00
Jeff Law
9a913dfbfb * config/tc-hppa.c (pa_ip): Add 64 bit condition completers. 1999-08-06 15:48:42 +00:00
Ian Lance Taylor
a1f2d7424f 1999-08-06 Jakub Jelinek <jj@ultra.linux.cz>
* config/tc-sparc.h (tc_fix_adjustable): Fix check for PIC local
	non-adjustable symbols.
1999-08-06 14:02:34 +00:00
Jeff Law
55a914bc48 * config/tc-hppa.c (pa_ip): Change condition args to have '?' prefix. 1999-08-05 22:56:06 +00:00
Joern Rennecke
336f7c7060 Fix year. 1999-08-05 22:19:17 +00:00
Joern Rennecke
5fc44b2d43 * config/tc-sh.c (md_assemble): Call as_bad when there are excess
operands.
1999-08-05 22:09:04 +00:00
Ian Lance Taylor
9750fcc502 1999-08-05 Donn Terry <donn@interix.com>
* config/te-interix.h: New file.
	* configure.in (i386-*-interix*): New target.
	* configure: Rebuild.
1999-08-05 15:41:31 +00:00
Jeff Law
39ba556164 * config/tc-hppa.c (pa_chk_field_selector): Allow 3 byte
selectors for ELF too.
        (selector_table): Add "ltp" and "rtp" selectors.
1999-08-05 00:09:42 +00:00
Alan Modra
eecb386cd7 Support for gcc to generate 16-bit i386 code. (.code16gcc) 1999-08-04 10:07:41 +00:00
Ian Lance Taylor
a04b544b56 * config/obj-coff.c (coff_frob_symbol): Always update set_end with
next_set_end even if the end symbol is being discarded.

	* gasp.c: Add ATTRIBUTE_UNUSED as needed for non-BFD_ASSEMBLER.
	* output-file.c, symbols.c, config/tc-i386.c: Likewise.
	* config/obj-coff.c: Likewise.
	(seg_info_type): Remove.
	(seg_info_off_by_4): Change to array of segT.
	(s_get_segment): Adjust accordingly.
	(obj_pseudo_table): Fully initialize sentinel entry.
1999-08-03 15:29:04 +00:00
Ian Lance Taylor
f173e82ec8 * config/tc-mips.c (append_insn): Correct INSN_SYNC test. From
Ralf Baechle <ralf@uni-koblenz.de>.
1999-08-03 15:22:38 +00:00
Alan Modra
24eab124bd Rationalize some of the i386 intel mode code.
Indentation and white space changes.
1999-08-03 14:30:05 +00:00
Alan Modra
c3332e24e8 * config/tc-i386.c: Add INFER_ADDR_PREFIX code. Fix 16 bit mode nop. 1999-08-03 05:47:26 +00:00
Richard Henderson
6d8809aa62 Jakub Jelinek <jj@ultra.linux.cz>
* config/tc-sparc.c (md_longopts): Add --no-undeclared-regs option.
        (sparc_ip): Warn if %g2 or %g3 register is used and not covered
        by .register pseudo-op if -64 and --no-undeclared-regs.
        (s_register, sparc_adjust_symtab): New functions.
        * config/tc-sparc.h (tc_adjust_symtab, sparc_adjust_symtab):
        Declare sparc_adjust_symtab as tc_adjust_symtab.
        * doc/c-sparc.texi: Add description of #ignore special literal
        for .register pseudo-op.
1999-07-30 21:39:53 +00:00
Catherine Moore
c8d259f7df Fix up vtable entry relocs 1999-07-30 15:08:39 +00:00
Alan Modra
b77ad1d4c9 Fix an overflow checking bug uncovered when a 32 bit target is compiled
with a 64 bit bfd.
1999-07-28 23:19:26 +00:00
Jeff Law
b53fcc20b1 * config/tc-hppa.c (pa_ip): Add 'J' and 'K' code
processing.
1999-07-28 08:07:14 +00:00
Ian Lance Taylor
d2e71411fe * config/tc-sparc.h (tc_fix_adjustable): Don't adjust GOT, PLT, or
VTABLE relocations.
1999-07-27 19:26:39 +00:00
Ian Lance Taylor
e9f56b1d20 1999-07-21 Mark Elbrecht <snowball3@bigfoot.com>
* config/te-go32.h (COFF_LONG_SECTION_NAMES): Define.
1999-07-22 01:41:00 +00:00
Ian Lance Taylor
1a39f480d3 From Mark Elbrecht:
* configure.bat: Remove; obsolete.
	* config/go32.cfg: Likewise.
1999-07-22 00:59:07 +00:00
Ian Lance Taylor
29fe79d3a8 1999-07-21 Brad M. Garcia <bgarcia@fore.com>
* configure.in (i386-*-vxworks*): New target.
	* configure: Rebuild.
1999-07-22 00:46:39 +00:00
Richard Henderson
e06510e6e7 Jakub Jelinek <jj@ultra.linux.cz>
* doc/c-sparc.texi: Document .register and .nword pseudo-ops.
1999-07-16 21:32:18 +00:00
Richard Henderson
dabe3bbc57 Jakub Jelinek <jj@ultra.linux.cz>
* config/tc-sparc.c (sparc_ip): Allow OLO10 relocations
        on -64 and not pic.
        (output_insn): Put OLO10's secondary addend into tc_fix_data.
        (md_apply_fix3): Handle BFD_RELOC_SPARC_OLO10.
        (tc_gen_reloc): Return two relocs for OLO10, LO10 and SPARC13.
        * config/tc-sparc.h (RELOC_EXPANSION_POSSIBLE,
        MAX_RELOC_EXPANSION): Define.
        (TC_FIX_TYPE, TC_INIT_FIX_DATA, TC_FIX_DATA_PRINT): Likewise.
1999-07-16 21:30:35 +00:00
Alan Modra
b4cac588ae * gas/config/tc-i386.c: Fix for immediates and displacements in 16-bit
mode when no insn suffix present, eg. push $0x12345678.  Fix some
compiler warnings.  Disallow immediate jump absolute.
1999-07-16 11:09:15 +00:00
Ian Lance Taylor
0ed1584392 * configure.in: Bump version number to 2.9.5.
* configure: Rebuild.
1999-07-15 11:58:23 +00:00
Ian Lance Taylor
966ed0b4d8 * dwarf2dbg.c (dwarf2_gen_line_info): Don't assume that long long
or %llx work.
1999-07-15 11:27:08 +00:00
Jeff Law
67f1cff00c * config/tc-hppa.c (md_pseudo_table): Add ".dword" pseudo-op.
(cons_fix_new_hppa): Derive size of fixup from size of the object.
1999-07-15 01:49:45 +00:00
Nick Clifton
2f992c04c2 Apply patch from Philip Blundell <pb@nexus.co.uk>
Prepend LOCAL_LABEL_PREFIX (if defined) to local symbols.
  ARM: Set F_SOFTFLOAT in the output file if -mno-fpu was given.
1999-07-15 01:33:07 +00:00
Ian Lance Taylor
14ad458a39 * write.c (cvt_frag_to_fill): Use frag file and line in rs_org
error message.
	(relax_segment): Likewise.  After giving a rs_org error, convert
	the frag to rs_align to avoid cascading errors.
1999-07-14 14:02:33 +00:00
Andreas Schwab
3682307616 * config/tc-m68k.c: Add some ATTRIBUTE_UNUSED. 1999-07-12 08:34:56 +00:00
Ian Lance Taylor
ab9da55419 * Many files: Changes to avoid gcc warnings: Add ATTRIBUTE_UNUSED
as appropriate.  Fill in structure initializations.  Add variable
	initializations.  Add casts.
	* dwarf2dbg.c (print_stats): Change i to size_t.
	* listing.c (listing_listing): Change list_line to unsigned int.
1999-07-11 20:20:04 +00:00
Ian Lance Taylor
e0accf0cb8 * config/tc-ppc.h (tc_fix_adjustable) [OBJ_ELF]: Call S_IS_LOCAL
rather than checking for \001 and \002 in symbol name.
	* config/tc-sparc.h (tc_fix_adjustable) [OBJ_ELF]: Likewise.
1999-07-09 22:56:21 +00:00
Jeff Law
7d4ce8a99b * configure.in (hppa*-linux-gnu*): New target.
* configure: Rebuilt.
1999-07-08 11:37:23 +00:00
Nick Clifton
5395a469da Document .thumb_set directive. 1999-07-08 01:49:09 +00:00
Nick Clifton
cac58fa6ef Use symbol_get_obj() rather than accessing symbolP directly. 1999-07-07 09:34:14 +00:00
Jeff Law
03b36ee109 ÿ
* config/tc-hppa.h (tc_frob_symbol): Always punt "$global$" symbol
        for ELF.
1999-07-06 09:44:56 +00:00
Nick Clifton
49a5575c32 Add support for armv5 architecture
Add ADRL pseudo op.
1999-07-05 07:39:01 +00:00
Jeff Law
09ecf0ba55 * config/tc-hppa.c (pa_ip): Convert the opcode and all completers
into lower case.
1999-07-01 14:37:28 +00:00
Ian Lance Taylor
264d6861c7 1999-06-27 H.J. Lu <hjl@gnu.org>
* subsegs.c (subseg_text_p): Use 1/0 instead of true/false for
	non BFD_ASSEMBLER case.
1999-06-27 08:29:27 +00:00
Ian Lance Taylor
827c01493e 1999-06-26 Mumit Khan <khan@xraylith.wisc.edu>
* config/obj-coff.c (obj_coff_section): Mark writable sections as
	data.
1999-06-26 19:35:44 +00:00
Richard Henderson
a340d27090 David Mosberger <davidm@hpl.hp.com>
* dwarf2dbg.c (dwarf2_gen_line_info): Don't call
        out_end_sequence() when the address decreases due to a new frag.
        (gen_dir_list): Set ls.file[i].dir to j + 1 (not j) because file
        numbering starts with 1.
1999-06-26 16:10:10 +00:00
Nick Clifton
16b93d8878 Make the mcore even more paranoid about section switching 1999-06-23 09:27:09 +00:00
Ian Lance Taylor
be2acf2756 * subsegs.c (subseg_text_p): Rewrite non BFD_ASSEMBLER case to use
a list of names, to try obj_segment_name, and to try abbreviated
	names when using COFF without long section names.
1999-06-22 19:04:42 +00:00
Ian Lance Taylor
7dcc986550 * config/tc-alpha.c: More use of symbol accessor functions.
* config/tc-arc.c: Likewise.
	* config/tc-d30v.c: Likewise.
	* config/tc-fr30.c: Likewise.
	* config/tc-i860.c: Likewise.
	* config/tc-m88k.c: Likewise.
	* config/tc-mcore.c: Likewise.
	* config/tc-ns32k.c: Likewise.
	* config/tc-sparc.c: Likewise.
	* config/tc-v850.c: Likewise.
1999-06-22 14:53:01 +00:00
Ian Lance Taylor
a77f5182c7 * config/tc-arc.c (get_arc_exp_reloc_type): Change uses of
sy_value with appropriate accessor functions.
	* config/tc-arm.c (md_apply_fix3): Likewise.
	* config/tc-d10v.c (AT_WORD_P): Likewise.
	* config/tc-v850.c (reg_name_search): Likewise.
1999-06-22 14:35:19 +00:00
Ian Lance Taylor
fed9b18aea * config/obj-ecoff.c (obj_ecoff_set_ext): Change uses of bsym to
use symbol_get_bfdsym instead.
	* config/tc-ppc.c (md_assemble): Likewise.
	* config/tc-v850.c (v850_comm): Likewise.
1999-06-22 14:17:55 +00:00
Ian Lance Taylor
310b5aa239 1999-06-22 Jonathan Larmour <jlarmour@cygnus.co.uk>
* config/tc-arc.c (tc_gen_reloc): Use symbol_get_bfdsym to get at
	the symbol, rather than accessing the bsym member.
	* config/tc-d10v.c (tc_gen_reloc): Likewise.
	* config/tc-d30v.c (tc_gen_reloc): Likewise.
	* config/tc-mcore.c (tc_gen_reloc): Likewise.
	* config/tc-mn10200.c (tc_gen_reloc): Likewise.
	* config/tc-mn10300.c (tc_gen_reloc): Likewise.
	* config/tc-ns32k.c (tc_gen_reloc): Likewise.
	* config/tc-tic30.c (tc_gen_reloc): Likewise.
	* config/tc-v850.c (tc_gen_reloc): Likewise.
1999-06-22 14:07:40 +00:00
Jeff Law
9cb8e75e6c * tc-hppa.c (elf_hppa_reloc_type): Renamed from elf32_hppa_reloc_type.
(hppa_gen_reloc_type): Conditionalize on BFD64.
        (tc_gen_reloc): Re-enable ELF relocations.
        * tc-hppa.h (TARGET_FORMAT): Handle elf64-hppa format.
1999-06-21 15:48:48 +00:00
Ian Lance Taylor
3d10331912 * config/tc-arm.c (ldst_extend): Add parentheses to avoid
warning.
	(do_ldst): Move assignment out of if condition.
	(md_apply_fix3): Add casts to avoid printf format warnings.  Add
	parentheses to avoid warning.
1999-06-21 10:03:29 +00:00
Nick Clifton
155f0fe7a5 Use symbol_get_bfdsym() macro 1999-06-21 09:11:27 +00:00
Nick Clifton
776b24b437 Include struc-symbol.h so that symbol structure definition is available. 1999-06-21 08:08:52 +00:00
Ian Lance Taylor
809ffe0deb * config/tc-ppc.c: Update for symbol handling changes.
* config/obj-coff.c: Likewise.
1999-06-19 14:04:45 +00:00
Jeff Law
49863f82f0 * tc-hppa.c: General cleanups of ELF support. No more spaces
and subspaces for ELF.
        (GDB_DEBUG_SPACE_NAME): Delete definition for ELF.
        (GDB_STRINGS_SUBSPACE_NAME): Likewise.
        (GDB_SYMBOLS_SUBSPACE_NAME): Likewise
        (UNWIND_SECTION_NAME): Likewise.
        (space/subspace related structures): Conditionalize definitions
        on OBJ_SOM.
        (space/subspace directives and support routines): Conditionalize
        definitions and references/uses on OBJ_SOM.
        (label_symbol_struct): For ELF, track the symbol's segment.  For
        SOM track its space.
        (pa_define_label, pa_undefine_label, pa_get_label): Corresponding
        changes.
        (USE_ALIASES): Kill for both SOM & ELF.
        (pa_def_subspaces, pa_def_spaces): Corresponding changes.
        (pa_space, pa_subspace): Corresponding changes.
        (pa_spaces_begin): Corresponding chagnes.
        (md_begin): Do not muck around with space/subspace stuff for
        OBJ_ELF.
        (md_apply_fix): Temporarily disable argument relocation stuff
        for OBJ_ELF.
        (tc_gen_reloc): Temporarily disable relocation generation for
        OBJ_ELF
        (pa_build_unwind_subspace): Similarly.
1999-06-18 13:35:16 +00:00
Nick Clifton
fed881b14b Patches for eCos: Dump literal pool on section change. Mark thumb function
aliases as being thumb functions as well.
1999-06-18 01:38:26 +00:00
Nick Clifton
2f3519a231 Fix -Wuh and -Wnhu options so that they work. 1999-06-17 04:51:25 +00:00
Nick Clifton
0f94f4c867 Detect illegal use of hash symbols in assembler mnemonics. 1999-06-17 02:13:18 +00:00
Ian Lance Taylor
e4a86f6fb4 From K. Richard Pixley <rich@noir.com>:
* configure.in (ppc-*-vxworks*): New target.
	* configure: Rebuild.
1999-06-13 19:12:01 +00:00
Ulrich Drepper
a8aed0fb2d (tc_gen_reloc): Fix handling of GOTPC relocs. 1999-06-13 06:39:21 +00:00
Ian Lance Taylor
7565ed77a1 * write.c (adjust_reloc_syms): Rather than never reducing reloc
which refer to symbols in linkonce sections, permit reducing the
	relocs if the symbol is local.
1999-06-12 22:15:51 +00:00
Ian Lance Taylor
b9e57a387a * subsegs.c (subseg_text_p): New function.
* as.h (subseg_text_p): Declare.
	* read.c (do_align): Use subseg_text_p to set the default fill.
	* write.c (subsegs_finish): Likewise.
	* config/obj-coff.c (write_object_file): Likewise.
	* config/tc-i386.h (md_maybe_text): Don't define.
	(md_do_align): Use subseg_text_p to set the default fill.
	* config/tc-m32r.c (m32r_do_align): Likewise.
	* config/tc-sh.c (sh_do_align): Likewise.
	* config/tc-sparc.h (md_do_align): Likewise.
1999-06-12 16:49:51 +00:00
Ian Lance Taylor
008960a5a4 1999-06-12 David O'Brien <obrien@freebsd.org>
* configure.in: (i[3456]86-*-freebsd*): Now defaults to ELF.
	* configure: Rebuild.
1999-06-12 13:14:39 +00:00
Ian Lance Taylor
d9ac5a3b10 * dwarf2dbg.c: Include elf/dwarf2.h with "", not <>.
* Makefile.am: Rebuild dependencies.
	* Makefile.in: Rebuild.
1999-06-12 08:53:18 +00:00
Ian Lance Taylor
a1605869fb * struc-symbol.h: Put local_symbol code in ifdef BFD_ASSEMBLER.
* symbols.c: Likewise.
	* config/obj-aout.c (obj_crawl_symbol_chain): Refer directly to
	sy_next field when taking address, rather than symbol_next.
1999-06-11 21:07:46 +00:00
Ian Lance Taylor
a7cd1c2299 * dwarf2dbg.h: Use PARAMS in function declarations. 1999-06-11 20:29:31 +00:00
Ian Lance Taylor
76171f81c7 1999-06-11 Martin Dorey <mdorey@madge.com>
* write.c (fixup_segment): Don't add symbol value for i960 ELF.
	* config/tc-i960.c (s_leafproc): Don't call tc_set_bal_of_cal if
	OBJ_ELF.
	(md_apply_fix): Simplify BFD_ASSEMBLER handling.
1999-06-11 19:03:06 +00:00
Ian Lance Taylor
5865bb778d * config/tc-i386.c (md_apply_fix3): Add default case to switch. 1999-06-10 21:47:35 +00:00
Ian Lance Taylor
9e7c96d9d0 * config/tc-sparc.c (md_pseudo_table): Remove pushsection and
popsection.
1999-06-10 21:45:36 +00:00
Ian Lance Taylor
1b50c71893 * config/tc-sparc.c (sparc_ip): Add default case to reloc switch. 1999-06-10 21:43:24 +00:00
Ian Lance Taylor
1bf67e0db8 * read.c (read_a_source_file): Only declare inescape if
QUOTES_IN_INSN.
1999-06-10 21:36:37 +00:00
Ian Lance Taylor
9b4d630bb9 * symbols.c (resolve_symbol_value): Don't permit subtraction of
undefined symbols.
1999-06-10 21:26:10 +00:00
Richard Henderson
a22b281cd7 Jakub Jelinek <jj@ultra.linux.cz>
* config/tc-sparc.c (sparc_ip): Don't use side-effect expression
        with isoctal.
        * config/tc-sparc.c (synthetize_setuw, synthetize_setsw,
        synthetize_setx): New functions.
        (md_assemble): Broken the special cases into the above
        functions. Make compiler happy if sizeof(bfd_vma)==4.
        Fix sethi generated from set/setuw. If instructions have a relloc,
        always clear the fields to be relocated in the opcode.
        (sparc_ip): Remove special_case global variable.
1999-06-10 21:11:39 +00:00
Ian Lance Taylor
d7ba4a779e Based on patches from John W. Woznack <jwoznack@concentric.net>:
* itbl-ops.c (itbl_get_reg_val): Add pval parameter.  Return
	indication of success rather than a value.
	(itbl_get_val): Likewise.
	(itbl_get_field): Use strcspn.  Change delimiters to include
	parens.
	* itbl-ops.h (itbl_get_reg_val): Update declaration.
	(itbl_get_val): Likewise.
	* config/tc-mips.c (mips_ip): Update call to itbl_get_reg_val.
1999-06-10 20:35:50 +00:00
Ian Lance Taylor
7f2f689c83 * symbols.c (copy_symbol_attributes): Convert local symbols to
regular symbols.
1999-06-10 14:45:58 +00:00
Nick Clifton
c1d3c45e14 Add support for ARM920 and ARM920t 1999-06-10 01:59:33 +00:00
Richard Henderson
eb858bb431 Typo. 1999-06-07 12:54:17 +00:00
Richard Henderson
63fab58c7d Jakub Jelinek <jj@ultra.linux.cz>
* config/tc-sparc.c (md_assemble): Fix up setx, support setsw.
        Optimize set if sizeof(bfd_vma) == 64.
        (sparc_ip): Fix sethi - without %hi() it should generate
        R_SPARC_32 reloc, not R_SPARC_HI22.
        (tc_gen_reloc): Handle BFD_RELOC_SPARC22.
1999-06-07 12:53:56 +00:00
Richard Henderson
cf9a13018b Jakub Jelinek <jj@ultra.linux.cz>
* config/tc-sparc.c (md_begin): Handle native wordsize aliases.
        (s_ncons): New function.
        (native_op_table): New table.
        (sparc_ip): Be more strict on %hi() etc.; prepare assembler for
        R_SPARC_OLO10 handling.
1999-06-07 12:40:36 +00:00
Richard Henderson
bf29b23178 * expr.h (struct expressionS): Revert last change; widen X_op.
* config/tc-alpha.c (md_begin): Check the field is wide enough.
1999-06-07 10:23:47 +00:00
Andreas Schwab
a4835b426a * Makefile.am (TARGET_CPU_CFILES): Add config/tc-fr30.c.
(TARGET_CPU_HFILES): Add config/tc-fr30.h.
	(TARG_ENV_HFILES): Add config/te-epoc-pe.h.
	* Makefile.in: Regenerated.
1999-06-07 02:58:53 +00:00
Andreas Schwab
9be1cda6a5 * config/obj-elf.c (obj_elf_common): In MRI mode if called as
`common' pass on to s_mri_common.
	(elf_pseudo_table): Pass 1 to obj_elf_common for `common'.
1999-06-07 02:28:54 +00:00
Richard Henderson
623356292c * config/obj-elf.c (obj_elf_section): Don't free the return
value of demand_copy_C_string.
1999-06-06 00:09:50 +00:00
Richard Henderson
9de8d8f184 * dwarf2dbg.c (dwarf2_gen_line_info): Mirror the section symbol
creation logic from obj_elf_create_section.
        * config/obj-elf.c (elf_pseudo_tab): Add pushsection/popsection.
        (section_stack): New.
        (special_sections): Make const.
        (obj_elf_section): Gut and rewrite parsing.
        (obj_elf_change_section): New function broken out of obj_elf_section.
        (obj_elf_parse_section_letters): Likewise.
        (obj_elf_section_word): Likewise.
        (obj_elf_section_type): Likewise.
        (obj_elf_previous): Treat as a toggle.
        (obj_elf_popsection): New.
        * config/tc-ppc.c (ppc_section_word): Take str+len not ptr_str.
        (ppc_section_type): Likewise.
        * config/tc-ppc.h: Likewise.
        * expr.h (struct expressionS): Don't make X_op a bitfield.
        * config/tc-alpha.c: Update for symbol handling changes.
        (md_apply_fix) [case GPREL]: Use now_seg instead of absolute_section.
        (load_expression, emit_ir_load, emit_loadstore, emit_jsrjmp): Likewise.
1999-06-05 23:15:34 +00:00
Richard Henderson
58b5739a4e * dwarf2dbg.c (*): Convert to K&R + prototypes.
(dwarf2_gen_line_info): Kill unused variables.
        (dwarf2_finish): Likewise.
        (dwarf2_where): Likewise.
        (dwarf2_directive_file): If we've only got a string,
        hand off to s_app_file.
        * ecoff.c: Move the include of ecoff.h.
        * symbols.h (S_IS_FUNCTION): Prototype.
        * read.c (LEX_HASH): Supply a default.
        (lex_type): Use it.
        (s_globl): Update `c' after skipping whitespace.
        * read.h (LEX_END_NAME, is_name_ender): New.
        * expr.c (get_symbol_end): Respect it.
1999-06-05 18:19:09 +00:00
Ian Lance Taylor
993142d5a4 1999-06-04 Mark Klein <mklein@dis.com>
* config/tc-hppa.c (md_begin): Convert local symbol dummy_symbol
	to real if OBJ_SOM
	(tc_gen_reloc): Still need bfd_abs_symbol in some relocs.
1999-06-04 21:08:54 +00:00
Ian Lance Taylor
398e8c258a 1999-06-04 Mark Klein <mklein@dis.com>
* config/tc-hppa.c: Update for symbol handling changes.
1999-06-04 10:46:25 +00:00
Ian Lance Taylor
080e41e66b * cgen.c: Update for symbol handling changes. 1999-06-03 12:51:21 +00:00
Ian Lance Taylor
f412ead8f6 * config/tc-m32r.c: Update for symbol handling changes. 1999-06-03 12:46:26 +00:00
Ian Lance Taylor
a0f75b47e9 * config/tc-hppa.h: Update for symbol handling changes.
* config/tc-hppa.c: Likewise.
1999-06-03 12:42:36 +00:00
Ian Lance Taylor
174419c123 * config/tc-arm.h: Update for symbol handling changes.
* config/tc-arm.c: Likewise.
	(symbol_make_empty): Remove.  Just use symbol_create.
1999-06-03 09:50:01 +00:00
Ian Lance Taylor
6104f0a06c * Makefile.am: Rebuild dependencies.
($(OBJS)): Don't depend upon struc-symbol.h.
	(.dep1, .tcdep, .objdep): Create itbl-parse.h.
	* dep-in.sed: Don't remove struc-symbol.h.
	* Makefile.in: Rebuild.
1999-06-03 09:06:24 +00:00
Ian Lance Taylor
b401371382 * doc/internals.texi (Symbols): Describe changes in symbol
handling.
1999-06-03 08:44:04 +00:00
Richard Henderson
6576f0b52a * dwarf2dbg.c (dwarf2_gen_line_info): Use section_symbol
instead of doing the work by hand.
1999-06-03 03:20:21 +00:00
Richard Henderson
fac0d250c7 * as.c (parse_args): Add option -gdwarf2 to allow requesting
DWARF2 debug info (line information only, at this point).
        * as.h: Update comment about supported debug formats.
        * dwarf2dbg.c, dwarf2dbg.h: New files.
        * Makefile.am (GAS_CFILES, HFILES, GENERIC_OBJS): Add them.
1999-06-03 02:51:53 +00:00
Ian Lance Taylor
49309057b4 Add support for storing local symbols in a small structure to save
memory when assembling large files.
	* as.h: Don't include struc-symbol.h.
	(symbolS): Add typedef.
	* symbols.c: Include struc-symbol.h.
	(local_hash): New static variable.
	(save_symbol_name): New static function, from symbol_create.
	(symbol_create): Call save_symbol_name.
	(local_symbol_count): New static variable.
	(local_symbol_conversion_count): Likewise.
	(LOCAL_SYMBOL_CHECK): Define.
	(local_symbol_make): New static function.
	(local_symbol_convert): New static function.
	(colon): Handle local symbols.  Create local symbol for local
	label name.
	(symbol_table_insert): Handle local symbols.
	(symbol_find_or_make): Create local symbol for local label name.
	(symbol_find_base): Check for local symbol.
	(symbol_append, symbol_insert): Check for local symbols.
	(symbol_clear_list_pointers, symbol_remove): Likewise.
	(verify_symbol_chain): Likewise.
	(copy_symbol_attributes): Likewise.
	(resolve_symbol_value): Handle local symbols.
	(resolve_local_symbol): New static function.
	(resolve_local_symbol_values): New function.
	(S_GET_VALUE, S_SET_VALUE): Handle local symbols.
	(S_IS_FUNCTION, S_IS_EXTERNAL, S_IS_WEAK, S_IS_COMMON): Likewise.
	(S_IS_DEFINED, S_IS_DEBUG, S_IS_LOCAL, S_GET_NAME): Likewise.
	(S_GET_SEGMENT, S_SET_SEGMENT, S_SET_EXTERNAL): Likewise.
	(S_CLEAR_EXTERNAL, S_SET_WEAK, S_SET_NAME): Likewise.
	(symbol_previous, symbol_next): New functions.
	(symbol_get_value_expression): Likewise.
	(symbol_set_value_expression): Likewise.
	(symbol_set_frag, symbol_get_frag): Likewise.
	(symbol_mark_used, symbol_clear_used, symbol_used_p): Likewise.
	(symbol_mark_used_in_reloc): Likewise.
	(symbol_clear_used_in_reloc, symbol_used_in_reloc_p): Likewise.
	(symbol_mark_mri_common, symbol_clear_mri_common): Likewise.
	(symbol_mri_common_p): Likewise.
	(symbol_mark_written, symbol_clear_written): Likewise.
	(symbol_written_p): Likewise.
	(symbol_mark_resolved, symbol_resolved_p): Likewise.
	(symbol_section_p, symbol_equated_p): Likewise.
	(symbol_constant_p): Likewise.
	(symbol_get_bfdsym, symbol_set_bfdsym): Likewise.
	(symbol_get_obj, symbol_set_obj): Likewise.
	(symbol_get_tc, symbol_set_tc): Likewise.
	(symbol_begin): Initialize local_hash.
	(print_symbol_value_1): Handle local symbols.
	(symbol_print_statistics): Print local symbol statistics.
	* symbols.h: Include "struc-symbol.h" if not BFD_ASSEMBLER.
	Declare new symbols.c functions.  Move many declarations here from
	struc-symbol.h.
	(SYMBOLS_NEED_BACKPOINTERS): Define if needed.
	* struc-symbol.h (SYMBOLS_NEED_BACKPOINTERS): Don't set.
	(struct symbol): Move bsym to make it clearly the first field.
	Remove TARGET_SYMBOL_FIELDS.
	(symbolS): Don't typedef.
	(struct broken_word): Remove.
	(N_TYPE_seg, seg_N_TYPE): Move to symbol.h.
	(SEGMENT_TO_SYMBOL_TYPE, N_REGISTER): Likewise.
	(symbol_clear_list_pointers): Likewise.
	(symbol_insert, symbol_remove): Likewise.
	(symbol_previous, symbol_append): Likewise.
	(verify_symbol_chain, verify_symbol_chain_2): Likewise.
	(struct local_symbol): Define.
	(local_symbol_converted_p, local_symbol_mark_converted): Define.
	(local_symbol_resolved_p, local_symbol_mark_resolved): Define.
	(local_symbol_get_frag, local_symbol_set_frag): Define.
	(local_symbol_get_real_symbol): Define.
	(local_symbol_set_real_symbol): Define.
	Define.
	* write.c (write_object_file): Call resolve_local_symbol_values.
	* config/obj-ecoff.h (OBJ_SYMFIELD_TYPE): Define.
	(TARGET_SYMBOL_FIELDS): Don't define.
	* config/obj-elf.h (OBJ_SYMFIELD_TYPE): Add local field.  If
	ECOFF_DEBUGGING, add ECOFF fields.
	(ELF_TARGET_SYMBOL_FIELDS, TARGET_SYMBOL_FIELDS): Don't define.
	* config/obj-multi.h (struct elf_obj_sy): Add local field.  If
	ECOFF_DEBUGGING, add ECOFF fields.
	(ELF_TARGET_SYMBOL_FIELDS, TARGET_SYMBOL_FIELDS): Don't define.
	(ECOFF_DEBUG_TARGET_SYMBOL_FIELDS): Don't define.
	* config/tc-mcore.h: Don't include struc-symbol.h.
	(TARGET_SYMBOL_FIELDS): Don't define.
	(struct mcore_tc_sy): Define.
	(TC_SYMFIELD_TYPE): Define.
	* Many files: Use symbolS instead of struct symbol.  Use new
	accessor functions rather than referring to symbolS fields
	directly.
	* read.c (s_mri_common): Don't add in value of line_label.
	* config/tc-mips.c (md_apply_fix): Correct parenthesization when
	checking for SEC_LINK_ONCE.
	* config/tc-sh.h (sh_fix_adjustable): Declare.
1999-06-03 00:29:48 +00:00
Nick Clifton
661e4995b2 Include pipeline offset in addend unless dealing with an old ABI. 1999-05-29 10:47:20 +00:00
Doug Evans
d9a622197d -Wchar-subscripts cleanup
* listing.c (listing_newline): Use unsigned char variable, so
 	calls to isascii,iscntrl are correct.
	* atof-generic.c (atof_generic): Cast arg to isdigit, et. al. with
	(unsigned char).
	* ecoff.c (ecoff_directive_ent,ecoff_stab): Ditto.
	* config/obj-elf.c (obj_elf_vtable_inherit): Ditto.
	* config/tc-mips.c (mips_ip,mips16_ip): Ditto.
	(my_getSmallExpression,get_number,s_mips_ent): Ditto.
1999-05-28 15:28:56 +00:00
Ian Lance Taylor
6da466c730 1999-05-28 Torbjorn Granlund <tege@matematik.su.se>
* config/tc-m68k.c (m68k_ip): Check for disallowed index register
	width for Coldfire.
	(arch_coldfire_p): New #define.
	(m68k_ip, m68k_init_after_args): Use arch_coldfire_p.
1999-05-28  Linus Nordberg  <linus.nordberg@canit.se>
	* config/tc-m68k.c (install_operand): Add places `n', `o'.
	* config/tc-m68k.c (m68k_ip): Add formats `E', `G', `H'.
	(install_operand): Add place `N'.
	(init_table): Add registers ACC, MACSR, MASK.
	* config/m68k-parse.h (m68k_register): Add ACC, MACSR, MASK.
	* config/tc-m68k.c: Change mcf5200 --> mcf.
	(archs): Add mcf5206e, mcf5307.
	(m68k_ip): Add format `u'.
	(install_operand): Add place `m', `M', `h'.
	(init_table): Add upper/lower registers.
	* config/m68k-parse.h (m68k_register): Add upper/lower registers.
1999-05-27 22:36:51 +00:00
Ian Lance Taylor
bedf545c12 1999-05-28 Martin Dorey <mdorey@madge.com>
* config/tc-i960.c: Several minor changes to add ELF and
	BFD_ASSEMBLER support.
	* config/tc-i960.h: Likewise.
	* configure.in (i960-*-elf*): New target.
	* aclocal.m4, configure: Rebuild.
1999-05-27 21:57:48 +00:00
Alan Modra
40c62b2548 è
Fiz i386-iaout breakage introduced by last patch.
1999-05-24 18:25:25 +00:00
Nick Clifton
b8a40f5379 Accept 'sp' as a valid register name. 1999-05-22 14:49:51 +00:00