Commit Graph

2711 Commits

Author SHA1 Message Date
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