Commit Graph

2853 Commits

Author SHA1 Message Date
J.T. Conklin dcf5d11760 parse [reg], lo(exp), and hi(exp) 1996-08-22 05:30:14 +00:00
J.T. Conklin c6aa56bca9 * config/tc-v850.c: New file.
* config/tc-v850.h: New file.
* configure (v850-*-elf): New target.
* configure.in (v850-*-elf): New target.
1996-08-21 23:37:04 +00:00
Martin Hunt 337350a309 Wed Aug 21 15:50:54 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* c-d10v.texi: New file.
	* all.texi: Added D10V stuff.
	* as.texinfo: Added D10V stuff.
1996-08-21 22:53:53 +00:00
Martin Hunt 2c2e562634 Wed Aug 21 15:50:54 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* doc/c-d10v.texi: New file.
	* doc/all.texi: Added D10V stuff.
	* doc/as.texinfo: Added D10V stuff.
1996-08-21 22:53:14 +00:00
Martin Hunt bb5638c637 Tue Aug 20 14:10:02 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* tc-d10v.c: All references to defined symbols should
 	now use the optimal instruction.  .float and .double now work.
1996-08-20 21:15:18 +00:00
Martin Hunt ab457c4c0b Tue Aug 20 14:10:02 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* config/tc-d10v.c: All references to defined symbols should
 	now use the optimal instruction.  .float and .double now work.
1996-08-20 21:15:05 +00:00
Ian Lance Taylor d4e1b0be7b * config/obj-coff.c (fixup_segment): Adjust PC relative reloc by
section address for the i960 as is done for the i386.
PR 10344.
1996-08-19 21:42:49 +00:00
Stan Shebs 9072e640c4 * mpw-config.in: Add wildcards for config matching, add mips-*-*
case, forward-include bfd/elf-bfd.h.
1996-08-15 23:40:40 +00:00
Martin Hunt b98b04eadb Thu Aug 15 13:24:30 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* config/tc-d10v.c: Add additional information to the opcode
        table to help determinine which instructions can be done
        in parallel.
1996-08-15 20:26:03 +00:00
Jackie Smith Cashion ac5a75ae11 Thu Aug 15 16:25:05 1996 James G. Smith <jsmith@cygnus.co.uk>
* gas/arm/arm.exp: Change inst.s test to check objdump.
	* gas/arm/inst.d: Added.
1996-08-15 15:27:53 +00:00
Jackie Smith Cashion 3bce65a493 Thu Aug 15 16:06:02 1996 James G. Smith <jsmith@cygnus.co.uk>
* gas/arm/thumb.s: Added.
	* gas/arm/immed.s: Added.
	* gas/arm/arch4t.s: Added.
	* gas/arm/arm.exp: Updated to run the new tests.
1996-08-15 15:07:55 +00:00
Ian Lance Taylor 126436a8ca * config/tc-i386.c (tc_i386_fix_adjustable): Don't adjust relocs
against weak symbols.
1996-08-14 17:51:49 +00:00
Ian Lance Taylor 0e94336ef5 * config/tc-ppc.h (TC_FORCE_RELOCTION): Define if OBJ_XCOFF.
(ppc_force_relocation): Declare if OBJ_XCOFF.
	* config/tc-ppc.c (ppc_force_relocation): New function if
	OBJ_XCOFF.
1996-08-14 01:02:04 +00:00
Ian Lance Taylor 817e4f757f * config/tc-mips.h (BYTE_ORDER): Don't define. No longer used. 1996-08-12 23:51:25 +00:00
Martin Hunt f494d50348 Fri Aug 9 17:48:28 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* config/tc-d10v.c: Fix problem with relocs.
1996-08-10 00:50:28 +00:00
Ian Lance Taylor 8d07d2c915 * config/tc-sh.c (sh_do_align): If not BFD_ASSEMBLER, always align
with nops if not in data_section or bss_section.
PR 10312.
1996-08-09 18:16:54 +00:00
Ian Lance Taylor f649d525ed Thu Aug 8 12:32:56 1996 Klaus Kaempf <kkaempf@progis.de>
Add support for openVMS/Alpha.
	* as.h (PRINTF_LIKE): Don't define if VMS, for now.
	* config/obj-evax.c: New file.
	* config/obj-evax.h: New file.
	* config/tc-alpha.c: Add support for EVAX format if OBJ_EVAX is
	defined.
	* config/tc-alpha.h: Add support for EVAX format if OBJ_EVAX is
	defined.  Add case for bfd_target_evax_flavour.
	* config/vms-a-conf.h: New file.
	* conf-a-gas.com: New file.
	* configure.in: Add target alpha-*-*vms*.
	* configure: Rebuild.
	* makefile.vms: New file.
	* read.c (s_lcomm): Align bss_seg on 8 byte boundary if OBJ_EVAX.
	Don't call ffs on openVMS/Alpha.
1996-08-08 16:42:41 +00:00
Ian Lance Taylor d10df990c7 * symbols.c (resolve_symbol_value): Handle addition or subtraction
by a constant before entering the main switch.  Reject attempts to
	apply an arithmetic function to non-absolute symbols, except for
	the special case of subtraction of two symbols in the same
	section.
1996-08-07 20:13:50 +00:00
Ian Lance Taylor 5cece52677 Wed Aug 7 14:19:03 1996 Philippe De Muyter <phdm@info.ucl.ac.be>
* configure.in: Make GAS_CHECK_DECL_NEEDED include <string.h> or
	<strings.h> if they exist.  Call GAS_CHECK_DECL_NEEDED on strstr
	and sbrk.
	* acconfig.h (NEED_DECLARATION_STRSTR): New macro.
	(NEED_DECLARATION_SBRK): New macro.
	* configure, conf.in: Rebuild.
	* as.h: Only include <strings.h> if HAVE_STRINGS_H.
	(strstr): Declare if NEED_DECLARATION_STRSTR.
	* as.c: If HAVE_SBRK and NEED_DECLARATION_SBRK, declare sbrk.
1996-08-07 18:23:08 +00:00
Ian Lance Taylor cf32394d07 * config/tc-mips.c (md_section_align): Do align if OBJ_ELF, but
not to more than a 16 byte boundary.
1996-08-07 17:17:33 +00:00
Ian Lance Taylor e592f0e63d * config/tc-i386.c (tc_gen_reloc): Accept all relocs; remove
#ifndef OBJ_ELF lines.  From Eric Valette <valette@crf.canon.fr>.
	(tc_gen_reloc): If out of memory call as_fatal rather than
	assert.  If no howto found, call as_bad_where rather than
	as_fatal.  Change the error message slightly.  Set howto to a
	non-NULL value in order to keep going.
1996-08-07 15:54:33 +00:00
Martin Hunt e805bff71d Tue Aug 6 12:58:03 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* tc-d10v.c: Added code to support 32-bit fixups for stabs.
1996-08-06 20:01:07 +00:00
Martin Hunt 5d9a99a79b Tue Aug 6 12:58:03 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* config/tc-d10v.c: Added code to support 32-bit fixups for stabs.
1996-08-06 20:00:50 +00:00
Jeff Law 94dba90cdf * gas/h8300/misch.s: Reenable "eepmov.w" test.
* gas/h8300/miscs.s: Likewise.
        * gas/h8300/h8300.exp: Check for correct assembly of "eepmov.w"
        on the H8/300H and H8/S.  Don't expect it to fail.
1996-08-06 17:18:10 +00:00
Jeff Law 6a8e003654 * config/tc-h8300.c (get_specific): New operand "size" derived
from ".b", ".w" and ".l" extensions.  All callers changed.  If
        the base instruction has no operands, then use the size to
        determine which specific instruction to use.
Fixing eepmov instructions.
1996-08-06 17:17:34 +00:00
Ian Lance Taylor 3d7b0c499b * config/tc-i960.c (mem_fmt): Call parse_expr before emit.
PR 10274.
1996-08-05 18:21:50 +00:00
Ian Lance Taylor 10a14e3639 * config/tc-mips.c (md_section_align): Don't change addr if
OBJ_ELF.
PR 10181.
1996-08-02 15:30:09 +00:00
Jeff Law 470a679caf * config/tc-hppa.c: Revert yesterday's changes.
Trying another approach to the EH problem.
1996-08-02 05:52:41 +00:00
Martin Hunt 9971ae5941 Wed Jul 31 14:46:11 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* tc-d10v.c: Disable range checking on 16-bit values.
1996-07-31 22:00:36 +00:00
Martin Hunt b5cf677932 Wed Jul 31 14:46:11 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* config/tc-d10v.c: Disable range checking on 16-bit values.
1996-07-31 22:00:21 +00:00
Ian Lance Taylor 159eb3c0df * config/tc-m68k.c (m68k_ip): Set ok_arch for every instruction,
not just the ones that don't match.
1996-07-31 20:29:00 +00:00
Martin Hunt f8508db7d6 Wed Jul 31 11:45:15 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* tc-d10v.c: Fixed bugs in short relocs and range checking.
1996-07-31 18:50:12 +00:00
Martin Hunt 37e05f6443 Wed Jul 31 11:45:15 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* config/tc-d10v.c: Fixed bugs in short relocs and range checking.
1996-07-31 18:49:56 +00:00
David Edelsohn 1804c6a042 * gas/sparc/asi.s: Update ASI_AS_IF_USER_{PRIMARY,SECONDARY}_LITTLE. 1996-07-31 17:58:42 +00:00
Ian Lance Taylor 972636ce89 mention ColdFire support 1996-07-31 17:54:04 +00:00
Jackie Smith Cashion 338946263a "testsuite/gas/arm/arm7t.s" and "testsuite/gas/arm/arm7t.d" added. 1996-07-31 15:00:18 +00:00
Jackie Smith Cashion c479fc62f4 oWed Jul 31 15:41:42 1996 James G. Smith <jsmith@cygnus.co.uk>
* config/tc-arm.c: Changed INSN_SIZE to variable insn_size, as
 	pre-cursor to adding Thumb support. Also added cpu_variant flag
 	information to each of the asm_flg structures.
	(md_parse_option): Updated ARM7 parsing to allow 't' for
 	thumb/halfword support, aswell as 'm' for long multiply.
	(md_show_usage): Updated help message.
	(md_assemble): Check that instruction flags are applicated to the
 	current cpu variant.
	(md_apply_fix3, tc_gen_reloc): Add BFD_RELOC_ARM_OFFSET_IMM8 and
 	BFD_RELOC_ARM_HWLITERAL relocation support for new halfword and
 	signextension instructions.
	(do_ldst): Generate halfword and signextension variants if
 	mnemonic flags match.
	(ldst_extend): Do not allow shifts in the offset field of halfword
 	or signextension instructions.
	(validate_offset_imm): Provide check on halfword and signextension
 	immediate range.
	(add_to_lit_pool): Merge identical literal pool values.

Wed Jul 31 15:55:12 1996  James G. Smith  <jsmith@cygnus.co.uk>

	* gas/arm/arm7t.s: Added.
	* gas/arm/arm7t.d: Added.
	* gas/arm/arm.exp: Updated to run the new test.
1996-07-31 14:57:57 +00:00
Jeff Law 448b5aadbb * config/tc-hppa.c (selector_table): Add 'E' selector.
(cons_fix_new_hppa): Don't coke on e_esel.
        (tc_gen_reloc, SOM version): Handle R_COMP2 when used
        to help generate exception handling tables.
        (md_apply_fix): Don't try to apply fixups with an e_esel
        selector.
        (hppa_fix_adjustable): Fixups with e_esel selectors
        are not adjustable.
Another stab at EH on the PA.
1996-07-30 20:30:49 +00:00
Ian Lance Taylor 8dfb05cc95 * config/tc-sparc.c (md_pseudo_table): Add 2byte, 4byte, and 8byte
pseudo-ops.
1996-07-30 20:02:02 +00:00
Martin Hunt a40d35898a Fri Jul 26 11:43:03 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* tc-d10v.c: Added lots of error checking.  Added hacks
	to support accumulator shifts.
1996-07-26 18:53:03 +00:00
Martin Hunt 8544dc0329 Fri Jul 26 11:43:03 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* config/tc-d10v.c: Added lots of error checking.  Added hacks
	to support accumulator shifts.
1996-07-26 18:52:01 +00:00
Ian Lance Taylor 5ca547dc23 * symbols.c (S_SET_EXTERNAL): Let .weak override.
(S_CLEAR_EXTERNAL): Likewise.
	(S_SET_WEAK): Remove error; just let .weak override.
1996-07-26 15:58:57 +00:00
Martin Hunt ef5a4085ce Thu Jul 25 15:22:51 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* tc-d10v.c (md_assemble): Now handles multiline
	instructions.
1996-07-25 22:27:37 +00:00
Martin Hunt 35ad20a1a5 Thu Jul 25 15:22:51 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* config/tc-d10v.c (md_assemble): Now handles multiline
	instructions.
1996-07-25 22:27:17 +00:00
Martin Hunt ab48956f99 Thu Jul 25 12:03:33 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* tc-d10v.c: Fix packaging bug. Added range checking.
	Added kludge for divs instruction.  Fixed minor problem with
	multiple text sections.
	* tc-d10v.h (d10v_cleanup): Change prototype.
1996-07-25 19:15:14 +00:00
Martin Hunt 7c09665202 Thu Jul 25 12:03:33 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
* config/tc-d10v.c: Fix packaging bug. Added range checking.
	Added kludge for divs instruction.  Fixed minor problem with
	multiple text sections.
	* config/tc-d10v.h (d10v_cleanup): Change prototype.
1996-07-25 19:14:27 +00:00
Martin Hunt 9305039104 start-sanitize-d10v
Tue Jul 23 10:49:36 1996  Martin M. Hunt  <hunt@pizza.cygnus.com>

	* config/tc-d10v.c (md_apply_fix3): Fix all instruction
	addresses to be right-shifted by 2.

end-sanitize-d10v
1996-07-23 17:59:22 +00:00
Martin Hunt 0ef325594a start-sanitize-d10v
Mon Jul 22 11:32:36 1996  Martin M. Hunt  <hunt@pizza.cygnus.com>

	* config/tc-d10v.c: Many changes to get relocs working.
 	(register_name): No longer creates a symbol for register names.
 	(pre_defined_registers): moved to opcodes/d10v-opc.c.
	(d10v_insert_operand): Now works correctly for either container.
	* config/tc-d10v.h (d10v_cleanup): Declare.

end-sanitize-d10v
1996-07-22 18:55:27 +00:00
Ian Lance Taylor 97aca1bcdf * config/tc-mips.c (tc_gen_reloc): BFD_RELOC_PCREL_HI16_S and
BFD_RELOC_PCREL_LO16 are expected to be PC relative.
1996-07-22 18:03:41 +00:00
Ian Lance Taylor 6543a7fb68 Mon Jul 22 12:46:55 1996 Richard Henderson <rth@tamu.edu>
* tc-alpha.c: Patches to track current minimum alignment to reduce
	the number of fragments created with frag_align.
	(alpha_current_align): New static variable.
	(s_alpha_text): Reset alignment to 0.
	(s_alpha_data, s_alpha_rdata, s_alpha_sdata): Likewise.
	(s_alpha_stringer, s_alpha_space): New functions.
	(s_alpha_cons, alpha_flush_pending_output): Remove functions.
	(alpha_cons_align): New function to replace both of them.
	(emit_insn): Only align if alpha_current_align is less than 2;
	reset alpha_current_align to 2.
	(s_alpha_gprel32): Likewise.
	(s_alpha_section): New function.  Basically duplicate the other
	alpha section change hooks.  Only define for ELF.
	(s_alpha_float_cons): Simplify alignment handling.
	(md_pseudo_table): Only define "rdata" and "sdata" if OBJ_ECOFF.
	If OBJ_ELF, define "section", "section.s", "sect", and "sect.s".
	Don't define the s_alpha_cons pseudo-ops.  Do define
	s_alpha_stringer and s_alpha_space pseudo-ops.
	(alpha_align): Skip if less than current default alignment.  Set
	default alignment.
	* tc-alpha.h (md_flush_pending_output): Remove.
	(md_cons_align): Add.

	* tc-alpha.c: Add oodles of function description comments.
	(md_bignum_to_chars): Remove; there are no callers.
	(md_show_usage): Mention some more variants.
1996-07-22 17:04:04 +00:00
Ian Lance Taylor 0b27ea396a From Andrew Gierth <ANDREWG@microlise.co.uk>:
* configure.in (sparc-*-sysv4*): New target.
	* configure: Rebuild.
1996-07-18 21:38:39 +00:00
Ian Lance Taylor 8dd07a847c * config/tc-sparc.c (md_pseudo_table): Change uahalf, uaword, and
uaxword to use s_uacons.
	(sparc_no_align_cons): New static variable.
	(s_uacons): New static function.
	(sparc_cons_align): If sparc_no_align_cons is set, just clear it
	and return.
1996-07-18 20:53:32 +00:00
Ian Lance Taylor cbe7dccbd9 * configure.in: Add mips-*-irix6* target. Handle Irix 6 like Irix
5 with regard to shared libraries.
	* configure: Rebuild.
1996-07-18 20:34:52 +00:00
Ian Lance Taylor 091221ceea * config/tc-m68k.c (m68k_ip): Use the correct length when
allocating space for the unsupported architecture error message.
1996-07-18 19:56:40 +00:00
Michael Meissner 05a8bf3325 Minor tweaks to d10v configuration 1996-07-18 16:59:15 +00:00
Martin Hunt 7be9a3121d start-sanitize-d10v
Wed Jul 17 14:25:13 1996  Martin M. Hunt  <hunt@pizza.cygnus.com>
        * config/tc-d10v.c: New file.
        * config/tc-d10v.h: New file.
        * configure (d10v-*-elf): New target.
        * configure.in (d10v-*-elf): New target.
end-sanitize-d10v
1996-07-18 00:39:03 +00:00
Michael Meissner 10c9620d4e Recognize and handle -K PIC 1996-07-13 00:54:55 +00:00
Ian Lance Taylor 0ee09671a8 Wed Jul 10 12:39:08 1996 Richard Henderson <rth@tamu.edu>
* config/tc-alpha.c (alpha_align): Change fill parameter
	to a pointer.  Take NULL as 0 or nop depending on section.  Change
	all callers.
	(s_alpha_align): Rename local variables.

	* doc/as.texinfo (.align): Document action of omitted
	fill parameter.
1996-07-10 16:51:06 +00:00
Ian Lance Taylor 3128726ccd * app.c (do_scrub_chars): Remove not_cpp_line local variable.
Instead, check state when '#' comment is seen.
PR 10073.
1996-07-10 04:30:27 +00:00
Ian Lance Taylor 996e146fd6 * config/tc-ppc.c (md_apply_fix3): Give a useful error message
when an unsupported PC relative reloc is seen, rather than calling
	abort.
PR 10073.
1996-07-10 04:26:38 +00:00
Ian Lance Taylor a8aed9ddfb * config/tc-mips.c (mips_regmask_frag): Only define if OBJ_ELF or
OBJ_MAYBE_ELF.
	(tc_gen_reloc): If fixup was changed to be PC relative, change
 	reloc type accordingly.  Use name of reloc in error message.
1996-07-08 23:16:00 +00:00
Ian Lance Taylor a5a781751a * as.h: Don't define const or volatile.
* flonum.h: Don't define const.
1996-07-08 21:57:07 +00:00
Ian Lance Taylor e675c634dd Improve SCO ELF comment 1996-07-08 21:43:26 +00:00
Ian Lance Taylor f93e43a114 At the request of Andreas Schwab:
* gas/m68k/pcrel.d: Rename from schwab.d.
	* gas/m68k/pcrel.s: Rename from schwab.s.
1996-07-08 18:37:30 +00:00
Ian Lance Taylor d1db6a9de2 Mon Jul 8 14:23:26 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* gas/m68k/schwab.d: Correct for ELF format.
	* gas/m68k/all.exp: Run "schwab" test for all targets.
1996-07-08 18:25:53 +00:00
Ian Lance Taylor 7f003b7fee * config/tc-m68k.c (tc_gen_reloc): Change the code appropriately
if fx_pcrel is set.  Correct setting the addend case in the
	OBJ_ELF case (from Andreas Schwab
	<schwab@issan.informatik.uni-dortmund.de>).
	(md_show_usage): Correct -mfc5200 to -m5200.
1996-07-08 18:15:15 +00:00
Jeff Law cf4c2392ef No longer need to sanitize away h8s stuff. 1996-07-05 19:05:26 +00:00
Jeff Law d78f416f84 No longer sanitize away h8s stuff 1996-07-05 18:39:32 +00:00
J.T. Conklin 910d7df246 * doc/c-m68k.texi: Document -m5200 flag.
* doc/as.texinfo: Likewise.
1996-07-05 17:47:22 +00:00
J.T. Conklin 8d20a0a883 * config/tc-m68k.c (m68k_ip): The coldfire does not support 8x
scale factor.
1996-07-05 17:35:32 +00:00
Ian Lance Taylor c0b3470207 * symbols.c (S_SET_EXTERNAL): Change as_warn to as_bad.
(S_CLEAR_EXTERNAL, S_SET_WEAK): Likewise.
1996-07-05 15:23:59 +00:00
Ian Lance Taylor 3f5d2072fb fix screwed up sanitization 1996-07-05 15:19:30 +00:00
Ian Lance Taylor 4ff09a4980 fix screwed up sanitization 1996-07-05 14:50:28 +00:00
Ian Lance Taylor 6624477c48 * Makefile.in (VERSION): Set to cygnus-2.7.1. 1996-07-04 19:38:41 +00:00
Ian Lance Taylor b19c462304 keep sh3e tests 1996-07-04 19:14:54 +00:00
Ian Lance Taylor 5c7bebdba4 Avoid DOS file naming problems:
* gas/h8300/branch.s: Rename from branches.s.
	* gas/h8300/branchh.s: Rename from branchesh.s.
start-sanitize-h8s
	* gas/h8300/branchs.s: Rename from branchess.s.
end-sanitize-h8s
	* gas/h8300/rotsh.s: Rename from rotshift.s.
	* gas/h8300/rotshh.s: Rename from rotshifth.s.
start-sanitize-h8s
	* gas/h8300/rotshs.s: Rename from rotshifts.s.
end-sanitize-h8s
	* gas/h8300/h8300.exp: Corresponding changes.
1996-07-04 18:26:59 +00:00
Ian Lance Taylor fb81503c90 sanitize binutils 2.7 branch 1996-07-04 17:57:28 +00:00
Ian Lance Taylor 41c3da51ee tipo 1996-07-04 16:34:53 +00:00
Ian Lance Taylor 45c85bcb34 x 1996-07-04 16:03:09 +00:00
Jackie Smith Cashion 36e5ed4cd4 Added "keep" entries for div-ilocks.d and mul-ilocks.d 1996-07-04 15:23:57 +00:00
Jackie Smith Cashion fc636a52d7 Thu Jul 4 10:11:33 1996 James G. Smith <jsmith@cygnus.co.uk>
* config/tc-mips.c (mips_ip): Only perform range check when
 	dealing with O_constant expressions.

Problem noticed by QMS, where "%lo(SYM + LARGEOFFSET)" would complain
about the OFFSET being greater than 16bits or not absolute, when it
should really just be taking the lo-16bits of the final address value.
1996-07-04 09:14:55 +00:00
Ian Lance Taylor c5d8f96eff * read.h (is_it_end_of_statement): Declare.
* read.c (is_it_end_of_statement): Remove declaration.
1996-07-04 01:37:00 +00:00
J.T. Conklin d41d2ccc63 * m68k-parse.h (m68k_register): Add new coldfile control
registers.

* config/tc-m68k.c (mcf5200_control_regs): New variable,
array of control registers for the coldfire.
(cpu_of_arch): Added mcf5200.
(archs): Added mcf5200.
(init_table): Add new control registers.
(m68k_ip): Added support for new control registers.
(m68k_init_after_args): Likewise.

* config/tc-m68k.c (md_show_usage): Add -m5200 to usage text.
1996-07-03 22:20:42 +00:00
Ian Lance Taylor ac76c7e98c * config/tc-i386.h (AOUT_MACHTYPE): Define as 0 if TE_386BSD. 1996-07-03 21:01:25 +00:00
Ian Lance Taylor 5af96dce32 Based on patches from Tom Quiggle <quiggle@sgi.com>:
* ecoff.c (last_lineno): New static variable.
	(add_procedure): Set last_lineno.
	(ecoff_directive_loc): Likewise.
	(ecoff_generate_asm_lineno): Likewise.
	(ecoff_fix_loc): New function.
	* ecoff.h (ecoff_fix_loc): Declare.
	* config/tc-mips.c (append_insn): When inserting nops, and using
	ECOFF debugging, call ecoff_fix_loc.
1996-07-03 20:15:38 +00:00
Ian Lance Taylor 98c72b6dd7 * gas/all/gas.exp: Remove setup_xfail for h8300*-*-* for two tests
which now pass.
	* gas/h8300/h8300.exp: Fix regexp of mov32bug test to work on a 64
	bit host.
1996-07-03 18:23:06 +00:00
Jeff Law b9bddc84e2 * config/tc-h8300.c (build_bytes): If an operand type is
marked as SRC_IN_DST retrieve it from the "destination" op.
Disgusting hack for shal #2,er0.  HMSE
1996-07-03 05:03:54 +00:00
Ian Lance Taylor 5cd26e22ac * gas/all/gas.exp: Add setup_xfail for vax*-*-vms* for 930509a
test.
	* gas/vax/quad.exp: Expect a nop after the movq.
1996-06-29 22:22:37 +00:00
Ian Lance Taylor 69c1de907f * configure.in (arm-*-riscix*): Set emulation to riscix.
* configure: Rebuild.
	* config/te-riscix.h: New file to define TE_RISCIX.
1996-06-29 22:20:57 +00:00
Ian Lance Taylor 379c2fb4d7 * config/tc-sh.h (SUB_SEGMENT_ALIGN): Define. 1996-06-29 17:39:19 +00:00
Ian Lance Taylor be4931bae0 sanitize out reference to MACREG 1996-06-29 16:48:44 +00:00
Stan Shebs c611cd82fc * mpw-config.in (TARGET_OS): Add definition to conf. 1996-06-28 18:13:47 +00:00
Ian Lance Taylor 77dea5447d various trivial cleanups 1996-06-28 16:38:05 +00:00
Ian Lance Taylor fbf011f249 * listing.c (listing_print): Close the listing file if it is not
stdout.  Close the other files opened for the listing.
1996-06-27 22:24:37 +00:00
Ian Lance Taylor 681dbbc0aa * config/tc-sparc.h (md_cons_align): Define.
(sparc_cons_align): Declare.
	(HANDLE_ALIGN): Define.
	(sparc_handle_align): Declare.
	* config/tc-sparc.c (sparc_cons_align): New function.
	(sparc_handle_align): New function.
	* read.c (cons_worker): Call md_cons_align if it is defined.
1996-06-27 22:03:33 +00:00
Jackie Smith Cashion 5e596034ab Thu Jun 27 20:39:40 1996 James G. Smith <jsmith@cygnus.co.uk>
* config/tc-mips.c (append_insn): Parenthesize
	cop_interlocks expressions.
1996-06-27 19:45:41 +00:00
Ian Lance Taylor 7e027ce6c2 * as.h (struct frag): Remove unused align_mask and align_offset
fields.
1996-06-27 18:57:21 +00:00
Ian Lance Taylor f9b990cd5d * listing.c (calc_hex): Offset by fr_fix when examining fr_var.
From <uddeborg@carmen.se>.
1996-06-27 16:39:46 +00:00
Ian Lance Taylor 0b916ef7a6 remove debugging code 1996-06-27 16:12:22 +00:00
Ian Lance Taylor 67b48b58c7 * configure.in (mips-*-osf*): New target.
* configure: Rebuild.
1996-06-26 19:54:48 +00:00
Ian Lance Taylor 9b4b98bd0f * config/tc-m68k.c: Add 68ec060 as a synonym for 68060. 1996-06-26 17:36:05 +00:00
Jackie Smith Cashion 344a8d61a1 Wed Jun 26 16:23:08 1996 James G. Smith <jsmith@cygnus.co.uk>
* config/tc-mips.c: Added cop_interlocks, to avoid NOP insertion
 	between co-processor comparisons and branches for the VR4300.

The preliminary documentation was slightly unclear on this issue, but
NEC have confirmed that there is an interlock within the CPU.
1996-06-26 15:28:00 +00:00
Jason Molenda 1c94de4d74 * Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir,
INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set values.
        (docdir): Removed.
        * configure.in (AC_PREREQ): autoconf 2.5 or higher.
        * doc/Makefile.in (bindir, libdir, datadir, mandir, infodir,
        includedir): Use autoconf set values.
        (docdir): Removed.
1996-06-25 12:40:48 +00:00
Ian Lance Taylor b290fd252e * configure.in: On alpha*-*-osf*, link against libbfd.a if not
using shared libraries.
	* configure: Rebuild.
1996-06-24 15:59:41 +00:00
Ian Lance Taylor 644edcedb0 Fri Jun 21 17:40:16 1996 Joel Sherrill <joel@merlin.gcs.redstone.army.mil>
* configure.in: Add support for *-*-rtems* configurations.
	* configure: Rebuild.
1996-06-21 22:04:02 +00:00
Ian Lance Taylor df586de217 Fri Jun 21 16:01:18 1996 Richard Henderson <rth@tamu.edu>
* configure.in: Add alpha-*-linuxecoff* target.  Use elf for
	alpha-*-linux* target.  Force bfd_gas for alpha-*.  Require
	opcodes library for alpha.
	* configure: Rebuild with autoconf 2.10.
	* config/tc-alpha.c: Substantial rewrite to add ELF support and
	use new opcode table.
	* config/tc-alpha.h (md_undefined_symbol): Don't define.
	(LOCAL_LABEL): Define differently if OBJ_ELF.
	(FAKE_LABEL_NAME): Define if OBJ_ELF.
	* config/alpha-opcode.h: Remove.
	* config/obj-elf.h: If TC_ALPHA, define ECOFF_DEBUGGING.
	* Makefile.in (TARG_CPU_DEP_alpha): Depend upon
	include/opcode/alpha.h rather than config/alpha-opcode.h.
1996-06-21 20:10:12 +00:00
Ian Lance Taylor edec3111a2 * config/obj-aout.c (obj_emit_relocations): Give an error if the
relocation symbol was not resolved.
	* config/obj-coff.c (do_relocs_for): Likewise.
1996-06-20 23:42:18 +00:00
Ian Lance Taylor 7ca8e36e61 * expr.c (struct expr_symbol_line): Define.
(expr_symbol_lines): New static variable.
	(make_expr_symbol): Add entry to expr_symbol_lines.
	(expr_symbol_where): New function.
	* expr.h: Use extern on function declarations.
	(expr_symbol_where): Declare.
	* symbols.c (resolve_symbol_value): Try to use expr_symbol_where
	rather than printing the meaningless name of an expression
	symbol.
1996-06-20 23:14:13 +00:00
Ken Raeburn 214f540d12 * config/tc-i386.c (md_number_to_chars): Deleted.
* config/tc-i386.h (md_number_to_chars): New macro.

* config/tc-alpha.c (build_operate_n, build_mem): Moved earlier in the file.
(load_symbol_address, load_expression): Use build_mem.
(build_operate): New function.
(emit_addq_r): Use it.

Wed Mar 13 22:14:14 1996  Pat Rankin  <rankin@eql.caltech.edu>

* symbols.c (colon):  #if VMS, use S_SET_OTHER to store `const_flag'.

Tue Mar  5 14:31:45 1996  Pat Rankin  <rankin@eql.caltech.edu>

* config/tc-vax.h (NOP_OPCODE): Define.

Sun Feb  4 21:01:03 1996  Pat Rankin  <rankin@eql.caltech.edu>

* config/obj-vms.h (S_IS_COMMON): Define.
(S_IS_LOCAL): Check for \002 as well as \001.
(LONGWORD_ALIGNMENT): New macro.
(SUB_SEGMENT_ALIGN): Use it.

Fri Jan 26 17:44:09 1996  Pat Rankin  <rankin@eql.caltech.edu>

* config/vms-conf.h: Reconcile with conf.in.
1996-06-20 20:06:44 +00:00
Ian Lance Taylor 793f9558f8 * write.c (is_dnrange): Only define if TC_GENERIC_RELAX_TABLE is
defined.
1996-06-20 01:45:14 +00:00
Ian Lance Taylor 84577ddeeb * doc/as.texinfo: Document that any number of hex digits can
follow \x.
1996-06-20 01:34:19 +00:00
Ian Lance Taylor 0d6cae1e69 * as.c (struct defsym_list): Define.
(defsyms): New static variable.
	(parse_args): Just put --defsym arguments on defsyms list, rather
	than defining them.
	(main): Define defsyms after output file is created.
1996-06-19 21:08:03 +00:00
Ian Lance Taylor 6e3f7f1bf9 * config/tc-m68k.c (m68k_ip): Reject PRE and POST indexing mode on
cpu32.  From Eric Norum <Eric.Norum@usask.ca>.
1996-06-19 20:33:30 +00:00
Ian Lance Taylor 8095b665cb * as.c (emulation_name): Remove unused static variable.
(default_emul_bfd_name): Add return NULL to avoid warning.
	* ecoff.c (ecoff_stab): Remove unused variables name and
	name_end.
	* frags.c (frag_new): Remove unused variable tmp.
	* hash.c (hash_grow): Parenthesize + within <<.
	(hash_print_statistics): Use %lu, not %d, to print unsigned
	long variables.
	* messages.c: Include "libiberty.h".
	(fprint_value): Add cast to avoid printf warning.
	(sprint_value): Likewise.
	* read.c: Include "ecoff.h".
	(emit_expr): Add casts to avoid printf warnings.
	* read.h: Use extern for function declarations.
	(pop_insert): Declare.
	* stabs.c: Include "ecoff.h".
	* subsegs.c (subseg_set_rest): Remove unused variables tmp,
	former_last_fragP, and new_fragP.
	* subsegs.h (subsegs_print_statistics): Declare.
	* symbols.c (debug_verify_symchain): Change macro to discard
	arguments.
	* write.c (dump_section_relocs): Likewise.
	* write.h: Use extern for function declarations.
	(write_print_statistics): Declare.
	* config/e-mipsecoff.c (mipsecoff_bfd_name): Return NULL to avoid
	warning.
	* config/e-mipself.c (mipself_bfd_name): Likewise.
	* config/obj-elf.h (elf_ecoff_set_ext): Declare.
1996-06-19 18:42:42 +00:00
Ian Lance Taylor 9753202d00 * config/tc-mips.c (mips_ip): In cases 'I', 'i', and 'j', set
insn_error rather than calling check_absolute_expr.
1996-06-19 18:34:30 +00:00
Ian Lance Taylor 9ee759fc91 * config/tc-sparc.h (TC_RELOC_RTSYM_LOC_FIXUP): If OBJ_ELF, always
emit relocations against external symbols.
1996-06-19 17:06:41 +00:00
Ian Lance Taylor faa3f5397d * config/tc-alpha.c (tc_gen_reloc): Output a sensible error
message if bfd_reloc_type_lookup fails, rather than calling
 	assert.
1996-06-19 17:01:22 +00:00
Ian Lance Taylor 7b9b1eb22e * config/tc-alpha.c (alpha_force_relocation): Add
BFD_RELOC_12_PCREL to switch.
1996-06-19 15:33:44 +00:00
Ian Lance Taylor 24b018ee72 * read.c (s_fill): Don't warn about a zero repeat count. 1996-06-18 22:17:40 +00:00
Ian Lance Taylor c674dcaa71 * config/tc-mips.c (mips_ip): Don't warn about using AT as a
coprocessor register.
1996-06-18 21:57:56 +00:00
Ian Lance Taylor d945323396 * config/tc-i386.c (md_assemble): When checking the size of a
register to set the size of an instruction, do a bitwise and with
	Reg8 and Reg16 rather than requiring the type to be exactly Reg8
	or Reg16.
1996-06-18 21:15:35 +00:00
Jeff Law 3d0afe12c5 * config/tc-h8300.c (parse_reg): Tweak error messages.
(build_bytes): Likewise.
        (skip_colonthing): Handle :32 suffix.
        (get_specific): Promote L_24 to L_32 if it makes a match.
        Don't always promote L_8 to L_16.
        (do_a_fix_imm): Clean up L_32 and L_24 handling.
H8/S related stuff that doesn't need to be sanitized.

start-sanitize-h8s
        * config/tc-h8300.c (Smode): New variable.
        (h8300hmode): Turn off Hmode.
        (h8300smode): New function.  Turn on Smode and Hmode.
        (md_pseudo_table): New ".h8300s" pseudo-op.
        (parse_reg): Handle "exr" register.
        (get_operand): Handle bizarre syntax for "stm.l" and "ldm.l".
        Handle "mach" and "machl" operands for ldmac.
        (get_specific): Handle "stm.l" and "ldm.l".
        (build_bytes): Handle "stm.l" and "ldm.l"; handle MACREG operands.
        * config/tc-h8300.h (COFF_MAGIC): Handle H8/S magic number.
        (Smode): Declare.
end-sanitize-h8s
Sanitized H8/S stuff until we know its status.
1996-06-18 20:28:20 +00:00
Jeff Law 0ed3f0f7cc Tweak. 1996-06-18 20:02:10 +00:00
Jeff Law e34c4939b5 * gas/h8300/cbranchh.s: Switch into h8300h mode.
* gas/h8300/h8300.exp (H8/300H misc tests): Fix test names.
Just something I noticed.

        * gas/h8300/{addsubs.s,bitops1s.s,bitops2s.s}: New tests for the
        H8/S.
        * gas/h8300/{bitops3.s,bitops4.s,cbranchs.s,logicals.s}: Likewise.
        * gas/h8300/{branchess.s,compares.s,macs.s,decimals.s}: Likewise.
        * gas/h8300/{incdecs.s,divmuls.s,miscs.s,multiples.s}: Likewise.
        * gas/h8300/{movbs.s,movws.s,movls.s,pushpops.s}: Likewise.
        * gas/h8300/{rotshifts.s,extends.s}: Likewise.
        * gas/h8300/h8300.exp: Run them.
Sanitized away until status is clarified.
1996-06-18 19:50:54 +00:00
Jeff Law e4012892a3 * gas/h8300/cbranchh.s: Switch into h8300h mode.
Just something I noticed.
1996-06-18 19:40:18 +00:00
J.T. Conklin 370181a2ae * doc/as.texinfo: Reorder chapter of machine dependent options so
that it is sorted by chip name.

* doc/as.texinfo: Use consistant spelling of Vax.
* doc/c-vax.texi: Likewise.
1996-06-17 22:55:02 +00:00
Jeff Law 02d4dd87df * config/tc-hppa.c (md_pseudo_table): Add ".begin_try" and ".end_try"
pseudo ops.
        (tc_gen_reloc, SOM version): Handle R_BEGIN_TRY and R_END_TRY.
        (md_apply_fix): Likewise.
        (pa_try): New function.
        (hppa_force_relocation): Force relocs for BEGIN_TRY and END_TRY.
More PA exception handling crud.
1996-06-17 18:31:51 +00:00
Jeff Law b81231b786 * config/tc-hppa.c (md_pseudo_table): Add ".level" pseudo op.
(pa_level): New function.
hpux10 gunk.
1996-06-17 05:59:01 +00:00
Ian Lance Taylor fe8d0ff3f1 * listing.c (listing_newline): Don't do anything if listing is 0. 1996-06-15 03:07:16 +00:00
Ian Lance Taylor 9bec2a42de * write.c (adjust_reloc_syms): Don't set sy_used_in_reloc for an
absolute symbol unless TC_FORCE_RELOCATION returns true.
1996-06-13 01:10:46 +00:00
Ian Lance Taylor 92e61d3111 * config/tc-m68k.c (m68k_ip): Accept ABSL for 'O', so that `bfextu
d0{24:1},d0' works without an immediate prefix on the bit numbers.
	(md_begin): Add digits to alt_notend_table.
	(md_parse_option): Make s a const pointer.
1996-06-10 23:32:34 +00:00
Ian Lance Taylor b91e85c27d * config/tc-sparc.c (md_pseudo_table): Add "empty".
(s_empty): New static function.
1996-06-10 21:07:57 +00:00
Ian Lance Taylor a57e71e6e0 * gas/all/cofftag.s, gas/all/cofftag.d: New test for COFF enum tag
with the same name as a global variable.
	* gas/all/gas.exp: Run cofftag test for any COFF target.
1996-06-10 19:29:51 +00:00
Ian Lance Taylor e789e620dd * config/obj-coff.c (struct filename_list): Only define if not
BFD_ASSEMBLER.
	(filename_list_head, filename_list_tail): Likewise.
	(c_section_symbol): Remove unused BFD_ASSEMBLER version.
	(obj_coff_endef, BFD_ASSEMBLER version): Don't set the debugging
	flag for C_MOS, C_MOE, C_MOU, or C_EOS symbols, since they should
	have a section of N_ABS rather than N_DEBUG.  If we do a merge,
	remove the new symbol from the list.
 	(obj_coff_endef, both versions): Call tag_insert even if there is
	an old symbol with the same name, if the old symbol does not
	happen to be a tag.
	(coff_frob_symbol): Check SF_GET_TAG, C_EOF, and C_FILE outside of
	the SF_GET_DEBUG condition.  Don't call SA_SET_SYM_ENDNDX with a
	symbol that will be moved to the end of the symbol list.
	(coff_adjust_section_syms): Always call section_symbol for .text,
	.data, and .bss.
	(coff_frob_section): Likewise.  Also, remove unused variable
	strname.
1996-06-10 19:29:25 +00:00
Michael Meissner c992cf9b28 Add .lcomm directive 1996-06-10 18:54:38 +00:00
Ian Lance Taylor 0670452eae * config/tc-ns32k.c (convert_iif): Call frag_grow rather than
manipulating frags directly.
	(md_number_to_field): Adjust mem_ptr correctly if ENDIAN is
	defined.
1996-06-10 16:29:54 +00:00
Ian Lance Taylor 41822c41ed * app.c (do_scrub_chars): If '/' is LINE_COMMENT_START, check
whether the next character is '*' before checking whether we are
	at the start of a line.  Permit LINE_COMMENT_START to start a
	comment in state 1 (seen some whitespace) as well, to match the
	documentation.
1996-06-10 16:15:05 +00:00
Ian Lance Taylor 1ba7661587 * gasp.c (do_align): Permit a fill value for .align. 1996-06-10 15:51:26 +00:00
Jim Wilson ed381b6719 Kill r16/rce/acp stuff. 1996-06-08 03:18:15 +00:00
Ian Lance Taylor 3f3accf86a * gas/m68k/all.exp: Pass -m68020 when assembling the disperr.s
test.
1996-06-06 16:31:03 +00:00
Tom Tromey 2c7aeec634 * Makefile.in (install): Don't check to see if tooldir exists.
Make $(tooldir) and $(tooldir)/bin.
1996-06-04 22:16:01 +00:00
Michael Meissner 527b83247e Do not turn on -mregnames by default 1996-06-04 15:02:47 +00:00
Ian Lance Taylor 3b426f5a60 * config/tc-mips.c (mips_ip): Don't call as_warn if we are setting
insn_error.  Don't put the string "ERROR" in insn_error.  Set
	insn_error rather than calling as_warn for an unsupported opcode.
1996-06-03 15:36:04 +00:00
Ian Lance Taylor 9c44af609b * config/tc-mips.c (md_parse_option): Check for a 64 bit format
before permitting -64.
	* output-file.c (output_file_create): Remove duplicate
	bfd_perror.
1996-06-02 01:55:28 +00:00
Ian Lance Taylor 871781804f * config/tc-mips.c (md_begin): If -64, create a .MIPS.options
section rather than a .reginfo section.
	(mips_elf_final_processing): If -64, write out 64 bit RegInfo
	information.
1996-05-31 21:46:14 +00:00
Ian Lance Taylor 98bfd087ca * config/tc-mips.c (load_register): If mips_isa < 3, permit a 32
bit value with the high bit set.
1996-05-31 05:10:20 +00:00
Michael Meissner 76bda7a424 Make ! a comment only under Solaris; Add .rdata/.rodata pseduo ops 1996-05-31 01:16:10 +00:00
Ian Lance Taylor 7f9880e5de * config/tc-mips.c (mips_64): New static variable.
(mips_target_format): If mips_64, return elf64 targets rather than
	elf32 ones.
	(md_longopts): Add "32" and "64".
	(md_parse_option): Handle -32 and -64.
	(md_show_usage): Mention -32 and -64.
	(cons_fix_new_mips): If mips_64, don't convert an 8 byte reloc to
	a 4 byte one.
1996-05-30 23:08:47 +00:00
Ian Lance Taylor b95bee134d * read.c (s_lcomm): Set section flags for .sbss section. 1996-05-30 23:04:52 +00:00
Michael Meissner d0e1c80348 Make ! a comment character 1996-05-30 19:22:16 +00:00
Michael Meissner 1facd5f05c Make 4 argument .stabd into .stabn on PowerPC Solaris 1996-05-30 14:40:22 +00:00
Ian Lance Taylor a40aee3822 * config/tc-mips.c (macro): When passing X_add_number to
macro_build, cast it to int first.
1996-05-29 20:46:07 +00:00
Ian Lance Taylor 2183da6aa8 * gas/mips/jal-xgot.d: Correct for 64 bit output. 1996-05-29 20:36:05 +00:00
Ian Lance Taylor 54388b8527 * config/tc-z8k.c (md_apply_fix): Handle fx_r_type of 0, as
created by emit_expr.
1996-05-28 19:08:40 +00:00
Ian Lance Taylor 943bdfdcce * symbols.c (symbol_create): If bfd_make_empty_symbol fails, call
as_perror rather than assert.
1996-05-28 17:33:23 +00:00
Ian Lance Taylor 9b61d62b9f * config/tc-mips.c (mips_ip): Mark sections created to hold
floating point information as read only.
1996-05-25 01:25:27 +00:00
Michael Meissner e30c00760c Add better defaults for AIX3, AIX4 1996-05-24 22:10:52 +00:00
Michael Meissner adeab39b20 Add .skip as a synonym for .space 1996-05-23 21:58:22 +00:00
Michael Meissner 63cafcefea Allow bogus .stabd with 4 arguments for PowerPC Solaris 1996-05-23 21:49:18 +00:00
Ian Lance Taylor bccbc0aa84 * config/tc-sh.h (struct sh_segment_info_type): Define.
(TC_SEGMENT_INFO_TYPE): Define.
	(sh_frob_label): Declare.
	(tc_frob_label): Define.
	(sh_flush_pending_output): Declare.
	(md_flush_pending_output): Define.
	* config/tc-sh.c (md_assemble): If relaxing, emit a R_SH_CODE
 	reloc before the instruction if necessary.
	(sh_frob_label): New function.
	(sh_flush_pending_output): New function.
	(sh_coff_frob_file): Ignore ALIGN, CODE, DATA, and LABEL relocs
	when looking for the reloc for the target of .uses.
	(md_convert_frag): Fix printf format (%0xlx to 0x%lx).
	(sh_force_relocation): Force CODE, DATA, and LABEL relocs to be
	emitted.
	(md_apply_fix): Ignore CODE, DATA, and LABEL relocs.
	(sh_coff_reloc_mangle): Force CODE, DATA, and LABEL relocs to use
	the absolute symbol.
1996-05-16 19:57:12 +00:00
Ian Lance Taylor 3ea36b5319 * config/tc-i386.c (md_assemble): Make sure the opcode suffix
matches the register size.
PR 9700.
1996-05-15 16:26:20 +00:00
Jeff Law ecb9b1cadb * config/obj-coff.c (count_entries_in_chain): Ignore Fixups with
fx_done set.
        (do_relocs_for): Likewise.
        (fixup_segment): Don't just quit if linkrelax is set.  Try to
        apply non pc-relative sym1-sym2 fixups, even if linkrelax is
        nonzero.
So function-relative stabs will work on the H8/300.  HMSE.
1996-05-15 14:40:31 +00:00
Michael Meissner f122568e72 Allow GOT, section relative relocations all the time with -mrelocatable 1996-05-10 18:32:01 +00:00
Ian Lance Taylor 6648d3ae63 * config/obj-coff.c (yank_symbols): Check that FNAME_OFFSET is
non-zero before assuming this is a long file name.
	(w_strings): Likewise.
	(c_dot_file_symbol): Set FNAME_OFFSET to 1 for a long file name.

	* config/obj-coff.c (w_strings): Move declaration of i inside
	#ifdef block which uses it.
1996-05-07 15:34:25 +00:00
Jeff Law c47fc40136 * config/tc-h8300.c (do_a_fix_imm): Rename last argument to
"relaxmode".  Output relocs which identify various relaxing
        possibilities for mov.[bwl] instructions.
        (build_bytes): Pass in a relaxing mode to do_a_fix_imm.
So the linker can identify more potential relaxations.  HMSE.
1996-05-07 06:47:56 +00:00
David Edelsohn 9ea827436f * config/tc-arm.h (TC_HANDLES_FX_DONE): Define.
(MD_APPLY_FIX3): Define.
	* config/tc-arm.c (my_get_expression): Only watch for bad segments
	if OBJ_AOUT.
	(md_apply_fix3): Renamed from md_apply_fix.
	If pcrel reloc and symbol is in different section, undo effects
	of md_pcrel_from.
1996-05-06 22:30:52 +00:00
Jeff Law ab7db73b24 * config/tc-hppa.c (hppa_fix_adjustable): Don't adjust
any reloc with an LR% or RR% field selector for SOM.
Fixes net bug.
1996-05-04 18:46:43 +00:00
Ian Lance Taylor c9324fcd24 * Makefile.in: Add subsegs.h to appropriate TARG_CPU_DEP_*
variables.
1996-05-04 18:27:15 +00:00
Ian Lance Taylor d4d7d98cbf * config/obj-coff.c (coff_frob_symbol): Don't merge a symbol with
SF_GET_STATICS set.
	(yank_symbols): Likewise.
1996-05-04 01:00:04 +00:00
Ian Lance Taylor ba97ba7e35 tweak last change 1996-05-02 03:11:26 +00:00
Ian Lance Taylor 7681eb9df7 * subsegs.h (segment_info_type): If MANY_SEGMENTS and not
BFD_ASSEMBLER, add name field.
	* config/obj-coff.c (coff_header_append): Handle long section
	names.
	(crawl_symbols): Just use the name field for the symbol name,
	without worrying about null byte termination.
	(w_strings): Handle long section names.
	(write_object_file): Likewise.  Also, use the name field, rather
	than scnhdr.s_name.
	(obj_coff_add_segment): Permit long section names.
	(obj_coff_init_stab_section): Use the name field, rather than
	scnhdr.s_name.
	(adjust_stab_section): Likewise.
	* config/te-pe.h (COFF_LONG_SECTION_NAMES): Define.
1996-05-02 02:32:52 +00:00
Ian Lance Taylor 8fe2ec52ee * config/tc-i960.c (brtab_emit): Don't set fx_im_disp field.
(mem_fmt): Likewise.
	(md_apply_fix): Don't check fx_im_disp field.
Fixes problem introduced by September 5, 1995 change to fx_im_disp
definition.
1996-05-01 20:40:16 +00:00
Ian Lance Taylor f9e36fc627 * configure.in: Add * after sparc*-*-vxworks.
* configure: Rebuild.
1996-04-25 21:16:58 +00:00
Ian Lance Taylor 556829bcb9 * app.c (do_scrub_begin): If tc_comment_chars is not defined,
define it to comment_chars.  Use tc_comment_chars rather than
	comment_chars.
	(do_scrub_chars): Use tc_comment_chars rather than comment_chars.
	* config/tc-m68k.h (tc_comment_chars): Define.
	(m68k_comment_chars): Declare.
	* config/tc-m68k.c (m68k_comment_chars): Rename from
	comment_chars.  Change into a pointer rather than an array.
	(md_longopts): Add "bitwise-or".
	(md_parse_option): Handle OPTION_BITWISE_OR.
	(md_show_usage): Mention --bitwise-or.
	* doc/c-m68k.texi: Document --bitwise-or.
PR 9518.
1996-04-25 15:43:13 +00:00
Ian Lance Taylor 5adc603b6c * gas/m68k/op68000.d: Add statements now caught by gas. 1996-04-24 21:06:57 +00:00
Ian Lance Taylor 912e424518 * config/tc-m68k.c (m68k_ip): Prevent attempts to use long offsets
in 68000 mode.
1996-04-24 21:05:20 +00:00
Ian Lance Taylor 116bf30f41 * config/obj-coff.c (obj_coff_section): BFD_ASSEMBLER version:
call demand_empty_rest_of_line.  Non BFD_ASSEMBLER version:
	correct handling of input line pointer, and call
	demand_empty_rest_of_line.
PR 9525.
1996-04-24 15:30:56 +00:00
David Edelsohn 58c9a12bb8 * config/tc-sparc.c (in_bitfield_range): New static function.
(sparc_ip): New cases X,Y.  Use SPARC_OPCODE_ARCH_V9_P.
	(md_apply_fix, cases BFD_RELOC_32_PCREL_S2,
	BFD_RELOC_SPARC_{WDISP16,WDISP19}): Fix undefined code.
	(md_apply_fix): New cases BFD_RELOC_SPARC_[56].
	(tc_gen_reloc): New cases BFD_RELOC_SPARC_[56].
1996-04-23 01:25:42 +00:00
David Edelsohn ef15dfc7b7 * gas/sparc/sparc.exp: Run them. 1996-04-22 23:50:07 +00:00
David Edelsohn 4430e4ad5b Run splet tests. 1996-04-22 23:49:42 +00:00
David Edelsohn a5cb47d815 * gas/sparc/splet.[ds]: New tests for sparclet extensions. 1996-04-22 23:46:24 +00:00
David Edelsohn bee69a3283 New testcase for sparclet extensions. 1996-04-22 23:44:44 +00:00
Ian Lance Taylor ff406bd3bf * config/obj-coff.c: BFD_ASSEMBLER:
(coff_last_bf): New static variable.
	(coff_frob_symbol): Set endndx of a .bf symbol.
	Non BFD_ASSEMBLER:
	(obj_coff_endef): Call SF_SET_PROCESS on a .bf symbol.
	(last_bfP): New static variable.
	(yank_symbols): Set endndx of a .bf symbol.
PR 9467.
1996-04-18 23:00:29 +00:00
Michael Meissner 47d12b2ce0 Add -le/-be/-s from Solaris. 1996-04-18 15:56:03 +00:00
Ian Lance Taylor 3ce7f41ac4 * read.c (s_space): Support non-constant fill value. Handle fill
value correctly for a size other than 1.
PR 9474.
1996-04-17 16:33:21 +00:00
David Edelsohn 865447db04 * config/tc-arm.c (my_get_float_expression): Update call to
gen_to_words, X_PRECISION changed from 6 to 5.
1996-04-16 22:18:20 +00:00
Michael Meissner 159e6ef88f Add -m{,no-}regnames support; Add Solaris/linux support 1996-04-16 14:41:45 +00:00
Ian Lance Taylor aa9e2dbe32 * config/tc-mips.c (mips_frob_file): Permit multiple %hi relocs to
be associated with a single %lo reloc.
1996-04-15 23:01:50 +00:00
Ian Lance Taylor 4dd7e66b82 * gas/mips/la.d: Updated for April 5 MIPS assembler changes.
* gas/mips/lb.d, gas/mips/ld.d, gas/mips/sb.d: Likewise.
	* gas/mips/uld.d, gas/mips/ulh.d, gas/mips/ulw.d: Likewise.
	* gas/mips/usd.d, gas/mips/ush.d, gas/mips/usw.d: Likewise.
1996-04-15 21:29:27 +00:00
Ian Lance Taylor 7a15a226ad * config/tc-mips.c (load_address): Cast X_add_number to valueT
before comparing against MAX_GPREL_OFFSET, so that negative
	numbers are handled correctly.
	(macro): Likewise.
1996-04-15 16:28:19 +00:00
Ian Lance Taylor ed94c2b89d * config/tc-sparc.c (last_insn): New static variable.
(md_assemble): Warn about putting floating point branches in a
	delay slot.  If architecture is less than v9, insert NOP
	instructions between floating point instructions and floating
	point branches.  (The SunOS assembler does both these operations.)
	Save the last instruction opcode.
	(sparc_ip): Add pinsn parameter.  Change caller.
PR 355.
1996-04-11 21:35:01 +00:00
Ian Lance Taylor 024e177923 fix typo in comment 1996-04-11 16:44:19 +00:00
Ian Lance Taylor 65feb78d13 * config/tc-m68k.c (md_estimate_size_before_relax): Correct check
for byte jump to next instruction to skip empty frags.
PR 7044.
1996-04-11 16:41:48 +00:00
Ian Lance Taylor 456c301f6e * config/tc-alpha.c (alpha_ip): If we are going to call emit_add64
for addq with a 16 bit signed value, just emit a lda instruction
	instead.
PR 6982.
1996-04-10 20:50:02 +00:00
Jeff Law b3ed89e865 * config/tc-h8300.c (do_a_fix_imm): Don't cut off high bits
of a 32bit operand.
Fix for mov32bug.s.
1996-04-10 20:33:58 +00:00
Jeff Law 6af55660ef * gas/h8300/mov32bug.s: New test.
* gas/h8300/h8300.exp: Run it.
Testcase for c-torture failure caused by a gas bug.
1996-04-10 20:26:19 +00:00
Ian Lance Taylor b4cb4ea2ac * configure.in: Permit --enable-shared to specify a list of
directories.
	* configure: Rebuild.
1996-04-08 18:45:08 +00:00
Jeff Law dcb195f8fa * config/tc-h8300.c (get_specific): Remove some #if 0 code.
(build_bytes): Remove all ABSMOV related code; it's unnecessary.
ABSMOV is gone... Cleaning up.  hmse.
1996-04-06 00:06:10 +00:00
Jeff Law 638c6a9ca4 * gas/h8300/{addsubh.s,bitops1h.s,bitops2h.s}: New h8300h tests.
* gas/h8300/{bitops3h.s,bitops4h.s,branchesh.s}: New h8300h tests.
        * gas/h8300/{cbranchh.s,compareh.s,decimalh.s}: New h8300h tests.
        * gas/h8300/{divmulh.s,incdech.s,logicalh.s}: New h8300h tests.
        * gas/h8300/{misch.s,movbh.s,movwh.s}: New h8300h tests.
        * gas/h8300/{pushpoph.s,rotshifth.s}: New h8300h tests.
        * gas/h8300/h8300.exp: Run them.
More tests.
1996-04-05 23:50:28 +00:00
Ian Lance Taylor 13e4a17e76 Fri Apr 5 15:13:10 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* config/atof-ieee.c: Fix handling of denormalized extended
	precision numbers and overflow/underflow detection.
	(MAX_PRECISION, X_PRECISION, P_PRECISION): Changed from 6 to 5, to
	not include the 16 bit gap in the m68k extended precision format.
1996-04-05 20:14:43 +00:00
Ian Lance Taylor 2ae5f50bf2 * configure.in: Add i386-*-freebsdelf* target; from John Polstra
<jdp@polstra.com>.
	* configure: Rebuild.
1996-04-05 19:30:22 +00:00
Jeff Law d981c0aa7a * gas/h8300/{movb.s,movw.s}: Correct predecrement syntax.
* gas/h8300/h8300.exp: Fix typos in bitops4 and movb tests.
Fixes remaining unexpected failures.
1996-04-05 17:57:01 +00:00
Jackie Smith Cashion 54ea771f6a Fri Apr 5 18:39:28 1996 James G. Smith <jsmith@cygnus.co.uk>
* config/tc-mips.c: Allow non-zero offsets from .sdata symbols to
 	be accessed using the $gp register.
	* config/tc-mips.h (MAX_GPREL_OFFSET): Added.

This ensures that the $gp addressing will continued to be used if the
"combine_statics" optimisation is enabled within GCC.
1996-04-05 17:43:05 +00:00
Jeff Law 01ae5e9996 Fix typo in last change. 1996-04-05 17:40:10 +00:00
Jeff Law 0066efbab5 * gas/h8300/{addsub.s,bitops1.s,bitops2.s}: New h8300 tests.
* gas/h8300/{bitops3.s,bitops4.s,branches.s}: New h8300 tests.
        * gas/h8300/{cbranch.s,compare.s,decimal.s}: New h8300 tests.
        * gas/h8300/{divmul.s,incdec.s,logical.s}: New h8300 tests.
        * gas/h8300/{misc.s,movb.s,movw.s}: New h8300 tests.
        * gas/h8300/{pushpop.s,rotshift.s}: New h8300 tests.
        * gas/h8300/h8300.exp: Run them.
To keep me from screwing up the assembler...
1996-04-05 17:13:28 +00:00
David Edelsohn 65b12103ff * config/tc-sparc.c (sparc_md_end): Set bfd machine number to
bfd_mach_sparc_sparclet if current_architecture is sparclet.
1996-04-03 18:59:08 +00:00
Ian Lance Taylor 2271578d4e * read.c (get_line_sb): Bump line counters based on
input_line_pointer[-1], not *input_line_pointer.  Don't bother to
	call LISTING_NEWLINE.
	(s_macro): Don't call demand_empty_rest_of_line.
	* app.c (do_scrub_chars): When handling C style comments, unget
	ch2 rather than ch.
1996-04-01 22:03:07 +00:00
Ian Lance Taylor 7d3741edcb * read.h (enum linkonce_type): Define.
(s_linkonce): Declare.
	* read.c (potable): Add "linkonce".
	(s_linkonce): New function.
	* subsegs.h (segment_info_type): Add linkonce field to
	MANY_SEGMENTS && ! BFD_ASSEMBLER section.
	* config/obj-coff.h (obj_handle_link_once): Define if TE_PE.
	(obj_coff_pe_handle_link_once): Declare if TE_PE.
	* config/obj-coff.c: If TE_PE and not BFD_ASSEMBLER, #include
	"coff/pe.h".
	(obj_coff_pe_handle_link_once): New function, defined if TE_PE.
	(c_section_symbol): If TE_PE, set the x_comdat field in the aux
	entry based on the linkonce field in segment_info.
	* doc/as.texinfo: Document .linkonce.
1996-03-29 21:35:44 +00:00
J.T. Conklin 0c20334015 * doc/as.1: Changed to be recognized by catman -w on Solaris. 1996-03-29 19:33:43 +00:00
Ian Lance Taylor 3197da91f9 * stabs.c (s_stab_generic): Call the listing functions before
doing the rest of the processing, which may involve freeing the
	string.  Pass string, not string + stroff, to OBJ_PROCESS_STAB in
	SEPARATE_STAB_SECTIONS case.
1996-03-28 23:13:30 +00:00
Ian Lance Taylor 3c071b9f4e * config/tc-hppa.c: Remove nested comment.
(tc_gen_reloc): Move label done inside the ifdef in which it is
	used.
	(md_apply_fix): Pass pointers to correct types to libhppa.h
	functions.  Always return a value.
1996-03-28 22:49:45 +00:00
Ian Lance Taylor 867a58b368 * config/tc-mips.h (tc_frob_file): Define.
(mips_frob_file): Declare.
	* config/tc-mips.c (struct mips_hi_fixup): Define.
	(mips_hi_fixup_list): New static variable.
	(imm_unmatched_hi): New static variable.
	(md_assemble): Clear imm_reloc, imm_unmatched_hi, and
	offset_reloc.  Pass imm_unmatched_hi to append_insn.
	(append_insn): Add unmatched_hi parameter.  If it is set, add the
	new fixup to mips_hi_fixup_list.  Change all callers.
	(mips_ip): Set imm_unmatched_hi when appropriate.
	(mips_frob_file): New function.
1996-03-28 20:37:02 +00:00
David Edelsohn d0352cbbe8 * configure.in (sparc-*-solaris2*): Renamed from sparc*-*-solaris2*.
* configure: Regenerated.
1996-03-28 19:49:54 +00:00
Ian Lance Taylor 4f74c0421b * as.c (main): Call bfd_set_error_program_name. 1996-03-26 23:20:22 +00:00
Ian Lance Taylor c7a89bde9b * as.h (strdup): Don't declare.
* stabs.c: Include libiberty.h
	(get_stab_string_offset): Use xstrdup rather than strdup.
	(s_stab_generic): Likewise.
	* as.c (parse_args): Likewise.
	* read.c (s_mri_sect): Likewise.
1996-03-22 16:44:21 +00:00
Ian Lance Taylor 5ba7c0bee1 * gasp.c (change_base): Recognize \(...) construct documented to
pass through enclosed characters literally through to the output.
	(process_assigns): Likewise.  Also, be more careful to avoid
	looking past the end of the buffer.
PR 9268.
1996-03-22 16:14:07 +00:00
Ian Lance Taylor d1f38e137a Wed Mar 20 18:13:32 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* doc/as.texinfo, doc/c-i960.texi: Fix typos.
1996-03-20 23:14:38 +00:00
Ian Lance Taylor 649d87fe30 Wed Mar 20 17:05:16 1996 David Mosberger-Tang <davidm@azstarnet.com>
* config/alpha-opcode.h: Added cvtst instruction.
1996-03-20 22:10:07 +00:00
Ian Lance Taylor 975def01a5 * ecoff.c (ecoff_stab): Don't try to make a symbol out of the stab
string.  Extract the addend from the result of expression.
1996-03-18 18:13:59 +00:00
Ian Lance Taylor fde6018a93 * app.c (do_scrub_chars): If whitespace is seen in state 11, and
LABELS_WITHOUT_COLONS is not defined, and we are not in m68k MRI
	mode, change the state to 3 rather than 1.
1996-03-15 22:12:10 +00:00
Ian Lance Taylor ee0f488d03 * config/obj-coff.h (C_REGISTER_SECTION): Change from 20 to 50, to
correspond to 11 March change.
1996-03-14 23:19:08 +00:00
Jeff Law 9da28504b8 * config/tc-h8300.c (build_bytes, MEMIND case): Generate
an R_MEM_INDIRECT reloc rather than R_RELBYTE.
hmse
1996-03-14 22:55:12 +00:00
Ian Lance Taylor ea2488ad2e * configure: Rebuild with autoconf 2.8. 1996-03-12 17:22:07 +00:00
Ian Lance Taylor 8fee8bf38e * config/atof-ieee.c (gen_to_words): Improve handling of
X_PRECISION numbers.  Based on patches from Andreas Schwab
	<schwab@issan.informatik.uni-dortmund.de>.
1996-03-11 23:58:15 +00:00
Steve Chamberlain a31c2bc74c * as.h (SEG_NORMAL, SEG_LIST): Bump segment limit from 10 to 40.
(SEG_LAST): New.
	* subsegs.c (MANY_SEGMENTS): Increase segment limit.
	* obj-coff.c (seg_N_TYPE, seg_info_off_by_4): Likewise.
	(do_relocs_for, w_symbols, obj_coff_add_segment, do_linenos_for,
	crawl_symbols, coff_header_append): Loop to SEG_LAST rather than
	SEG_E9.

Until BFD backend works with i386-pe.
1996-03-11 18:05:58 +00:00
David Edelsohn d633cb253e Test common synthetic insns (applicable to v8 or v9). 1996-03-07 22:50:09 +00:00
David Edelsohn a600cd3f38 Add missing arc sanitization (oops). 1996-03-07 22:48:51 +00:00
Jeff Law 73578b1e49 * config/tc-hppa.c (SUBSEG_MILLI): Define.
(pa_def_subspaces): Add $MILLICODE$.
        (pa_spaces_begin): Set section flags for $MILLICODE$.
1996-03-07 16:19:23 +00:00
Ian Lance Taylor 6b8ed20d4a * config/obj-elf.c (obj_elf_section): Only SEC_LOAD if the type is
not SHT_NOBITS.  Don't tamper with flags based on type if a
	special section was found (revert Feb 29 change).
1996-03-06 22:19:22 +00:00
Ian Lance Taylor 0c27542fad * config/tc-sh.c (sh_do_align): Only align using the nop pattern
if aligning to a longword boundary or greater.
1996-03-06 19:16:17 +00:00
Jim Wilson 6a413d6f3e * tc-sh.c (sh_do_align): Pass 1 not 2 to frag_align. 1996-03-06 18:50:20 +00:00
Steve Chamberlain 4b29551786 * configure.in (i386-*-cygwin32): Don't use bfd_gas.
* configure: Regenerated.
1996-03-05 05:04:56 +00:00
Jeff Law 421e2c270e * config/tc-hppa.c: Add default definitions for R_N0SEL and
R_N1SEL since they're not defined for old versions of hpux.
1996-03-04 19:42:03 +00:00
Jeff Law eff5fcda23 * config/tc-hppa.c (tc_gen_reloc): Fix typo in R_COMP2 code.
Set "sym_ptr_ptr" and "addend" fields to dummy values for
        R_N0SEL and R_N1SEL.
Net buglet, and something I just noticed was wrong.
1996-03-04 17:15:23 +00:00
Ian Lance Taylor d197a7abbc Fri Mar 1 10:20:52 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* flonum-konst.c: Add two more constants for 1e+-2048 and
	1e+-4096, and correct the other constants.
1996-03-01 15:34:47 +00:00
Ian Lance Taylor bb1013d939 Fri Mar 1 10:20:52 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* symbols.c (resolve_symbol_value): Handle O_logical_not.
1996-03-01 15:24:19 +00:00
Michael Meissner 0d8405e80d fix typo 1996-02-29 23:16:24 +00:00
Michael Meissner 30510276e6 All predefined sections to be of NOBITS type 1996-02-29 19:04:49 +00:00
Jeff Law 24b216e1dd * config/tc-hppa.c (hppa_fix_adjustable): For SOM, don't
reduce relocs using e_nlrsel field selectors.
1996-02-29 00:51:00 +00:00
Jeff Law 75c90d612e * write.c (fix_new_exp): Don't use #elif. Some compilers
don't handle it.
Fixes build problem with certain versions of the hpux compiler.
1996-02-28 22:39:09 +00:00
Jeff Law 83b59013fb * config/tc-hppa.c (selector_table): Add "n", "nl", and "nlr" to
the selector table.
        (pa_chk_field_selector): Handle new field selectors for SOM.
More new stuff for hpux10.
1996-02-28 18:34:32 +00:00
Ian Lance Taylor 535cfd0fd9 Tue Feb 27 14:42:27 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* configure.in (m68k-*-linux*aout*, m68k-*-linux*): New targets.
	* configure: Rebuild.
	* config/te-linux.h (LOCAL_LABELS_FB): Define.
	* config/tc-m68k.h (TARGET_FORMAT) [TE_LINUX]: Define to
	"a.out-m68k-linux".
	* config/tc-m68k.c (comment_chars): Don't include '#' if TE_LINUX
	is defined.
1996-02-27 20:01:48 +00:00
Stan Shebs d214421eee * mpw-make.sed: Update to handle shared library support. 1996-02-27 03:03:21 +00:00
David Edelsohn 110b814dba * config/tc-sparc.c (sparc_ip): Print all architectures that support
the insn on mismatch.
1996-02-26 18:38:33 +00:00
Rob Savoye 805e36ab5d * configure.in: Add support for a29-coff.
* configure: Rebuild.
1996-02-24 04:46:41 +00:00
Ian Lance Taylor 101a23469f * config/tc-sh.c (sh_coff_frob_file): Don't consider the address
of the section when looking for the R_SH_USES fixup, because the
	frag addresses have not yet been adjusted.
PR 9072.
1996-02-23 01:15:39 +00:00
Ian Lance Taylor 940c413f96 * gdbinit.in: Set a breakpoint on as_warn_where. 1996-02-23 01:09:38 +00:00
Ian Lance Taylor a9645755cd * gas/mips/lb-xgot.d: Correct. 1996-02-23 00:47:32 +00:00
Ian Lance Taylor e41ab2a6a4 * config/tc-mips.c (macro): Add missing arguments to macro_build
omitted in last change.  From Jim Wilson <wilson@cygnus.com>.
1996-02-23 00:41:09 +00:00
Ian Lance Taylor c6016ce293 * config/tc-h8300.c (tc_reloc_mangle): Change reloc based on size
if it is TC_CONS_RELOC.  Set a size of 4 to R_RELLONG.
PR 5166.
1996-02-21 22:02:54 +00:00