Commit graph

811 commits

Author SHA1 Message Date
Ken Raeburn
a18a0f225d * config/tc-h8300.c (get_specific): Add parens around | inside &.
(skip_colonthing): Set L_8 if ":8" is specified.
1995-01-27 00:05:09 +00:00
Ian Lance Taylor
76e30835ad * config/tc-ppc.c (md_begin): Permit mfdec to be duplicated on the
601.  Check that the error return from hash_insert is "exists".
1995-01-26 23:41:12 +00:00
Michael Meissner
da8fa3ba29 Allow configuration of PowerPC embedded ABI. 1995-01-26 16:39:26 +00:00
Jim Wilson
8d9a1cce3f * tc-sh.c (little): Add argument IGNORE to avoid compiler warnings.
(md_pseudo_table): Add space for consistent formatting.
	(COND8_RANGE, COND12_RANGE): Delete unused macros.
	(COND8_F, COND8_M, COND12_F, COND12_M, UNCOND12_F, UNCOND12_M):
	Correct minimum and maximum branch offsets.  Add comments explaining
	why these numbers are correct.
1995-01-26 00:26:11 +00:00
Ian Lance Taylor
1eeb357e6a Wed Jan 25 15:32:09 1995 David Edelsohn <edelsohn@mhpcc.edu>
* config/tc-ppc.c (md_parse_option): Accept mpwr2 as a synonym for
	mpwrx; mppc32, m603, and m604 as synonyms for mppc; and mppc64 and
	m620 for PowerPC64 mode.
	(ppc_symbol_new_hook): Add T0 as synonym for TC0 suffix.
1995-01-25 20:43:50 +00:00
Ken Raeburn
f2224fe249 "gcc -fno-builtin -Wall -Wwrite-strings -Wshadow" can be your friend.
Well, sometimes.
Bunch of patches from Pat Rankin for cleaning up some warnings in vax-vms gas.
1995-01-24 21:56:29 +00:00
Jeff Law
359bb9a364 * config/tc-hppa.c (pa_ip, case 'D'): Fix typo which caused
miscompilation of "diag" instructions.

	* gas/hppa/basic/basic.exp (do_system): Update.
1995-01-24 04:50:43 +00:00
Ken Raeburn
7343338436 configure regen, tc-mips.c libiberty.h include 1995-01-23 21:57:32 +00:00
Ian Lance Taylor
9cc7c60b40 * config/tc-sh.h (tc_init_after_args): Don't define.
* config/tc-sh.c (md_begin): Remove unused variable table.
	(md_assemble): Remove unused variable p.
	(md_convert_frag): Cast fr_address to unsigned long for printf.
	(md_apply_fix): Use as_warn_where rather than as_warn.
	(sh_init_after_args): Remove empty function.
1995-01-23 19:22:52 +00:00
Ian Lance Taylor
eb10ff23af * configure.in (i386-*-gnu*elf*): New target. 1995-01-23 19:09:02 +00:00
Ian Lance Taylor
be7571b69a * hash.c (hash_ask): If we find the slot after wrapping around,
break out of the loop.  Fixes bug in Jan 18 change.
1995-01-22 00:04:01 +00:00
Ken Raeburn
b2683e0914 back out new hash routine 1995-01-20 22:14:27 +00:00
Ken Raeburn
11618ce8f2 gcc lint 1995-01-19 21:04:08 +00:00
Ken Raeburn
8e86815b1c Cleanup of VAX and VMS code, from Pat Rankin:
* config/obj-vms.c: Changed exported function names to lower case.  (Changed
call sites in write.c.)  Declare VMS system function names used, conditional on
actually being on VMS.  Changed many functions that returned no useful value to
now be declared to return void.  Removed many unused variables.  Supply missing
return statements or values.  Supply `default' case in switch statements.
Ensure local variables get initialized.
* config/tc-vax.c: Minor changes to silence "gcc -Wall".
* config/obj-vms.h, config/tc-vax.h: Added some missing declarations.
1995-01-19 20:01:07 +00:00
Ian Lance Taylor
6ece68f0b3 * write.c (fix_new_internal): Clear fx_bsr on those targets which
use it.
1995-01-19 00:17:57 +00:00
Ken Raeburn
fca2796aec some improvements to fp code 1995-01-19 00:13:30 +00:00
Ken Raeburn
29c8d82c45 sparc, coff, hash changes 1995-01-18 18:53:49 +00:00
Ian Lance Taylor
96d1566d78 gcc -Wall lint.
* expr.c (operand): Parenthesize && within ||.
	* listing.c (listing_newline): Likewise.
	(list_symbol_table): Use %lu to print sizeof.
	* symbols.c: Comment out unused function indent.
	(print_symbol_value_1): Cast pointer to unsigned long for printf.
	* config/obj-coff.c (do_relocs_for): Only declare symbol_ptr if it
	will be used.
	* config/tc-h8300.c (md_begin): Remove unused variable reg.
	(get_operand): Declare type of parameter direction.  Remove unused
	variable size.
	(get_specific): Fix comment to avoid nested comments.
	(check_operand): Cast X_add_number to unsigned long for printf.
	(build_bytes): Remove unused local variables output_ptr, part, and
	high.
	(build_bytes): Cast X_add_number to unsigned long for printf.
	(clever_message): Remove unused variable scan.
	(md_assemble): Remove unused variable i.
	(tc_coff_sizemachdep): Remove unused function.
	* tc-h8300.h (tc_reloc_mangle): Declare.
1995-01-18 17:24:48 +00:00
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