Commit graph

1418 commits

Author SHA1 Message Date
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
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
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
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
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
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
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
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
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
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
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
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
6624477c48 * Makefile.in (VERSION): Set to cygnus-2.7.1. 1996-07-04 19:38:41 +00:00
Ian Lance Taylor
45c85bcb34 x 1996-07-04 16:03:09 +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
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
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
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