Commit graph

793 commits

Author SHA1 Message Date
Ian Lance Taylor
23f61eaae8 * config/tc-mips.c (mips_4650): New static variable.
(md_begin): Handle a cpu string of "4650".  If mips_4650 was not
	initialized, set it to 0.
	(append_insn): Don't insert nops around HI and LO on a 4650.
	(mips_emit_delays): Likewise.
	(mips_ip): Use INSN_ISA mask to check ISA of instruction.  Check
	for INSN_4650.
	(md_longopts): Add m4650 and no-m4650.
	(md_parse_option): Handle mips-cpu=4650.  Handle -m4650 and
	-no-m4650.
	* doc/as.texinfo: Document new MIPS options.
1995-01-17 16:13:44 +00:00
Steve Chamberlain
a11a8d55ee * config/tc-w65.c, config/tc-w65.h, config/w65.mt: Newfiles.
* config/obj-coff.h: Cope with w65.
	* configure, configure.in: Recognize w65.
1995-01-16 00:40:48 +00:00
Ken Raeburn
203235652d * app.c (do_scrub_next_char) [__GNUC__ && __OPTIMIZE__]: If `get' function is
scrub_from_file, call scrub_from_file directly, and get gcc's inlining
capability into the act.
1995-01-13 01:05:42 +00:00
Ken Raeburn
3a762a0bfd Use new hex-value code in libiberty:
* Makefile.in (VMS_OTHER_OBJS): Add ../libiberty/hex.o.
(OBJS): Delete hex-value.o.
(REAL_SOURCES): Delete hex-value.c.
(hex-value.o): Delete dependencies.
* hex-value.c: Deleted.
* as.c (main): Call hex_init.
* expr.c, config/tc-mips.c: Include libiberty.h.  Replace hex_value array
references with hex_* macros.
1995-01-12 23:00:26 +00:00
Ken Raeburn
c01ebe2a5e Don't generate 68020 addressing modes for a 68000 cpu. 1995-01-12 00:34:50 +00:00
Ken Raeburn
7a55f46268 * config/obj-coff.c (write_object_file): Don't treat h8300 and z8k specially
with regard to fixups.
1995-01-10 18:42:28 +00:00
Ken Raeburn
483971bdbf * config/tc-mips.c (RELAX_RELOC1, RELAX_RELOC2): Cast values to bfd_vma before
subtracting.
1995-01-10 01:45:53 +00:00
Ken Raeburn
aac4d5a77f * config/obj-coff.c (size_section): Handle rs_space like rs_fill, but make sure
fr_symbol is null.
(fill_section): Ditto.
1995-01-10 01:41:54 +00:00
Ian Lance Taylor
1113140a24 * config/tc-mips.c (mips_ip): Fix handling of floating point
values when GPOPT is not defined.
1995-01-08 21:17:56 +00:00
Ken Raeburn
71f9b3c097 * config/tc-alpha.c (alpha_ip): Delay calls to emit_add64 until after any
remaining operands are also known to match.
1995-01-06 22:02:27 +00:00
Ken Raeburn
2a6978af8d * gasp.c: Include string.h. Put config.h before other includes. 1995-01-06 22:00:50 +00:00
Ken Raeburn
cd3b81bd4c Handle .space directive with non-constant operand:
* read.c (s_space): Rewrite to handle general expressions.  Generate rs_space
frags for non-constant values.
* write.c (cvt_frag_to_fill): Treat rs_align_code and rs_space like rs_align
and rs_org.  Verify that fr_offset is non-negative, and force frag type to
rs_fill only after assertion checks.
(relax_segment): Treat rs_align_code like rs_align.  Treat rs_space like rs_org
in the first switch; in the second, force the operand to a constant, and use it
for the growth size.
1994-12-31 00:08:40 +00:00
Ken Raeburn
849515449b * Makefile.in (dependencies): Make $(OBJS) depend on as.h and everything it
includes.  Delete those files from per-file dependencies.
1994-12-30 23:56:14 +00:00
Ken Raeburn
f949f7b8c5 * listing.c (list_symbol_table): Build a format string based on the size of the
value to be printed, as long as "unsigned long" is at least as wide, after
handling the special case of 4-byte values.
1994-12-30 23:54:59 +00:00
Jeff Law
582d2a4d37 * config/tc-hppa.c (pa_subspace): For sections with the ZERO
attribute, set the "bss" field in the appropriate seginfo structure.
1994-12-29 03:59:28 +00:00
Ken Raeburn
4a9c666ec2 * subsegs.h: Include obstack.h.
* as.h (struct frag): Enable align* components now.
1994-12-28 20:02:03 +00:00
Ken Raeburn
87e4849501 * frags.c (frag_init): Call obstack_begin on `frags'.
* subsegs.c (subsegs_begin): Don't do it here.
* as.c (main): Call frag_init before subsegs_begin.

* frags.c (frag_append_1_char): New function.
* frags.h (frag_append_1_char): Declare it.
(FRAG_APPEND_1_CHAR): Call it.  Old definition is commented out for now.

* as.h (struct frag): Added (but commented out) new fields for tracking current
alignment.
(frag_now_fix): Changed macro to function declaration.
* frags.c (frag_now_fix): Define function here.
(frag_new): Use it instead of accessing `frags' directly.
* frags.h (frags): Change comment to indicate it shouldn't be accessed directly.
* subsegs.h (struct frchain): New field frch_obstack, intended to eventually
replace global `frags' obstack.
* subsegs.c (subseg_set_rest): Use frag_now_fix instead of accessing `frags'
directly.  Initialize fields of new frchainS explicitly instead of with memset.
* config/obj-coff.c (obj_coff_ln) [!BFD_ASSEMBLER]: Use frag_now_fix.
* config/tc-mips.c (s_loc), config/obj-vms.c (vms_resolve_symbol_redef),
symbols.c (colon): Likewise.
1994-12-20 22:42:03 +00:00
Ken Raeburn
9ad5755f7b * config/tc-m68k.c (md_apply_fix_2): Use offsetT and addressT instead of long
and unsigned long.
(md_apply_fix): Cast value before passing it.
1994-12-20 20:23:41 +00:00
Ken Raeburn
d675782a06 * config/obj-aout.h, config/obj-coff.c, config/obj-elf.h, config/obj-som.h,
config/tc-h8500.c, config/tc-hppa.c, config/tc-hppa.h, config/tc-sh.c,
config/tc-z8k.c: Don't rely on use of ".." when including header files.
* config/tc-rce.c: Ditto.

* config/obj-coff.c (fixup_segment): Reformat condition in an `if' statement.
1994-12-20 20:07:41 +00:00
Ken Raeburn
7e2283d46c * Makefile.in (SUBDIR_INCLUDES): Deleted. 1994-12-20 19:59:57 +00:00
Ian Lance Taylor
972b240176 * config/obj-coff.h: Include bfd/libcoff.h, not libcoff.h. 1994-12-20 18:44:46 +00:00
Jeff Law
b8f7596cbe * config/tc-hppa.c (pa_subspace): Make sure SEC_HAS_CONTENTS is
clear for a section with the "ZERO" attribute.
1994-12-19 22:33:35 +00:00
Ian Lance Taylor
847a01cd4c * config/tc-mips.c (load_register): Rewrite to handle O_big 64 bit
constants.
	(mips_ip): Accept O_big constants in case 'I'.  Change case
	'i'/'j' to treat an O_big constant as an out of range value.
1994-12-19 22:02:01 +00:00
Jeff Law
60937ce7c2 * Reduce useless symbols for ELF in an attempt to make smaller
objects and speed up the linker.
	* config/tc-hppa.c (struct call_info): Replace end_symbol field
	with a size field.
	(hppa_elf_mark_end_function): Delete unneeded function.
	(pa_build_unwind_subspace): For the 2nd unwind relocation, use
	the function symbol + function size instead of a special symbol
	for the end of the function.
	(process_exit): Compute the function size here.  Don't call
	hppa_elf_mark_end_of_function anymore.
	(pa_procend): Likewise.
	(hppa_fix_adjustable): Only reject 32bit relocations for SOM.
	(elf_hppa_final_processing): Simplify.
1994-12-19 21:23:20 +00:00
David Edelsohn
88cc1324ff Various arc stuff. 1994-12-19 21:07:43 +00:00
Ken Raeburn
5cda0c7a7f * configure.in: Recognize mips-sony-bsd and mips-dec-bsd, but reject other
vendors until we can be sure we're consistent with bfd.
1994-12-19 20:06:12 +00:00
Ken Raeburn
703139a83b some cleanup of vms code -- sizeof usage &c 1994-12-19 19:18:23 +00:00
Ken Raeburn
091f3a62a8 * config/tc-h8300.c (parse_exp, get_operands, clever_message, md_assemble,
tc_crawl_symbol_chain, md_undefined_symbol, tc_headers_hook, md_operand,
md_number_to_chars): Don't use DEFUN.
1994-12-17 01:11:20 +00:00
Ken Raeburn
d690577632 * config/tc-sh.c (md_begin): Don't fill in md_relax_table here.
(md_relax_table): Use static initialization.
1994-12-17 01:05:10 +00:00
Ken Raeburn
b63defaa3c * Makefile.in (CHECKFLAGS): Don't pass AS_FOR_TARGET, CC_FOR_TARGET,
OBJDUMP_FOR_TARGET, NM_FOR_TARGET; they're not used.
(AS_FOR_TARGET, CC_FOR_TARGET, OBJDUMP, OBJDUMP_FOR_TARGET, NM, NM_FOR_TARGET):
Don't define.
(VMS_OTHER_OBJS): Add xmalloc.o and xexit.o from libiberty.
(tooldir): Use exec_prefix, not libdir.
1994-12-17 01:03:15 +00:00
Stan Shebs
254603ca33 * config/obj-coff.h: Include libcoff.h, not ../bfd/libcoff.h. 1994-12-16 20:06:38 +00:00
Stan Shebs
719153bfe7 * as.h: Include progress.h.
* as.c (main): Call START_PROGRESS and END_PROGRESS.
	(main, perform_an_assembly_pass): Call PROGRESS.
1994-12-16 19:41:56 +00:00
Ian Lance Taylor
0141b6c276 * write.c (adjust_reloc_syms): Use bfd_is_und_section and
bfd_is_abs_section rather than comparing against &bfd_und_section
	and &bfd_abs_section.
1994-12-16 05:49:05 +00:00
Jim Wilson
8b1f3552cf * config/tc-sh.c (md_begin): Use a local variable when
initializing md_relax_table to avoid errors about modifying a
	const data structure.
1994-12-15 23:30:01 +00:00
Ian Lance Taylor
7ac36f6470 * config/tc-ppc.c (tc_gen_reloc): Remove OBJ_ELF hack which
appears to no longer be needed.
1994-12-13 20:43:28 +00:00
Ian Lance Taylor
6baef6d24a * config/tc-mips.c (macro_build): Accept BFD_RELOC_PCREL* without
requiring that the X_op_symbol be in the text_section.
	(macro): Change the test for a legel expression difference to
	correspond to changes in pseudo_set in read.c.
1994-12-13 16:07:02 +00:00
Ken Raeburn
a55774a124 * write.c (write_relocs) [RELOC_EXPANSION_POSSIBLE]: Use bfd_install_relocation. 1994-12-10 02:10:44 +00:00
Ken Raeburn
3504635adc * ecoff.c (ecoff_set_gp_prolog_size): If there is no current routine, just
return.
1994-12-10 02:09:12 +00:00
Ken Raeburn
bd8696524a * config/tc-alpha.c (alpha_ip, case 'B', subcase 'c'): Use opcode value from
pattern instead of assuming jsr.
* config/alpha-opcode.h (jmp): Add a "1,Bc" form.
1994-12-10 02:06:26 +00:00
Ken Raeburn
b8f5275075 * Makefile.in (NM_FOR_TARGET): Use ../binutils/nm.new, not just plain nm. 1994-12-09 01:19:22 +00:00
Ken Raeburn
c574599626 added mips-gnu target for roland 1994-12-08 23:36:37 +00:00
Ken Raeburn
4181c9853b configure.in: fix ns32k-pc532-mach* and mips-sony-bsd* configs 1994-12-08 22:54:22 +00:00
David Edelsohn
6ea93cc98c Initial ARC support. 1994-11-30 02:16:54 +00:00
Ken Raeburn
23c17feaa7 delete signal handler code (which has been disabled since March 93) 1994-11-30 01:01:13 +00:00
Ken Raeburn
d2a0c9f960 switch to libiberty version of xmalloc 1994-11-30 00:56:43 +00:00
Ken Raeburn
75af551fc4 log for alpha, sanitize, m68k, rce (sanitized) changes 1994-11-29 22:30:53 +00:00
David Edelsohn
326fe1a335 (do_scrub_next_char): Insert missing newline at end of file
like warning says we do.
1994-11-28 19:38:39 +00:00
Jeff Law
e07f892633 * config/tc-hppa.h (pa_check_eof): Declare new extern function.
(tc_frob_file): Define to call pa_check_eof.

	* config/tc-hppa.c (pa_check_current_space_and_subspace): New
	function to verify the current space and subspace are reasonable.
	Call for the appropriate pseudo-ops and before instruction parsing.
	(pa_check_eof): New function to verify enter/exit and proc/procend
	pairs match at EOF.
	(pa_code): Simplify.

	* config/obj-som.c: Delete #if 0 code.
1994-11-28 07:54:07 +00:00
Steve Chamberlain
3f67e00028 * config/obj-coff.h (TARGET_FORMAT): Select between coff-shl and coff-sh.
* config/sh.mh (TARG_CPU_DEPENDENTS): Get it right.
	* config/tc-sh.c  (little): New function.
	(md_parse_option): Notice new option.
	(build_relax, build_Mytes, md_atof, md_convert_frag, md_apply_fix):
        Cope with little endian data.
	* config/tc-sh.h (COFF_MAGIC, LISTING_HEADER): Endian dependent.
1994-11-24 03:42:15 +00:00
Jeff Law
32c7d5d864 * config/tc-hppa.c (tc_gen_reloc, ELF variant): Revert last
change.  The real bug was in bfd/elfcode.h and has been fixed.
1994-11-23 17:57:00 +00:00