Commit Graph

1164 Commits

Author SHA1 Message Date
Ian Lance Taylor
f062ec459f * config/obj-coff.h (DO_STRIP): Don't define.
* config/tc-h8300.h (DO_STRIP): Don't define.
	* config/tc-h8500.h (DO_STRIP): Don't define.
	* config/tc-w65.h (DO_STRIP): Don't define.
	* config/tc-z8k.h (DO_STRIP): Don't define.
1997-03-21 23:13:26 +00:00
Ian Lance Taylor
a71dc20461 * symbols.c (colon): Call obj_frob_label if it is defined.
* config/obj-vms.h (obj_frob_label): Rename from tc_frob_label.
1997-03-21 23:06:08 +00:00
Ian Lance Taylor
f59fb6cac7 Thu Mar 20 13:42:01 1997 H.J. Lu <hjl@lucon.org>
* frags.c (frag_var): Change offset parameter to offsetT.
	(frag_variant): Likewise.
	* frags.h (frag_variant, frag_var): Update declarations.
	* config/tc-m68k.c (struct m68k_it): Change foff field to
	offsetT.
	(add_frag): Change off parameter to offsetT.
	* Several files: Add casts to calls to frag_var.
1997-03-20 19:08:35 +00:00
Ian Lance Taylor
9afc66310f Thu Mar 20 12:48:45 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
* config/te-delta.h (COFF_COMMON_ADDEND): Define.
	* config/obj-coff.c (fixup_segment): Check COFF_COMMON_ADDEND when
	storing the value of a common symbol.
1997-03-20 17:50:41 +00:00
Ian Lance Taylor
7cd06f4400 Tue Mar 18 15:50:13 1997 H.J. Lu <hjl@lucon.org>
* Many files: Add function prototypes.
	* as.c (show_usage, parse_args): Make static.
	* frags.h (frag_alloc): Declare.
	* subsegs.c (subseg_set_rest): Don't declare frag_alloc.
	* symbols.c (dollar_label_instance): Change return type to long.
	* symbols.h (print_symbol_value): Declare.
	(print_expr, print_expr_1, print_symbol_value_1): Declare.
	* write.c (fix_new_exp): Don't declare make_expr_symbol.
	(remove_subsegs, relax_frag): Make static.
	* config/atof-vax.c (atof_vax_sizeof): Change letter to int.
	(what_kind_of_float): Likewise.
	(atof_vax): Make static.  Change what_kind to int.
	(md_atof): Change what_statement_type to int.
	* config/obj-ecoff.h (obj_ecoff_set_ext): Declare.
	* config/tc-alpha.c (vax_md_atof): Declare.
	(md_atof): Don't declare atof_ieee and vax_md_atof.
	* config/tc-i386.c (set_16bit_code_flag): Make static.
	* config/tc-i386.h (tc_i386_fix_adjustable): Declare.
	* config/tc-m68k.c (add_fix): Change width to int.
	(insert_reg): Change regname to const.
	(md_atof): Don't declare atof_ieee.
	(demand_empty_rest_of_line): Don't declare.
	* config/tc-m88k.c (md_atof): Don't declare atof_ieee.
	* config/tc-sparc.c (cmp_reg_entry): Change args to const PTR.
	(parse_keyword_arg): Change lookup_fn to take const arg.
	(md_atof): Don't declare atof_ieee.
	* config/tc-sparc.h: Add ifdef for multiple inclusion.
	(tc_aout_pre_write_hook): Don't declare.
1997-03-18 21:04:18 +00:00
Ian Lance Taylor
590c50d82c * as.h (bfd_alloc_by_size_t): Don't declare.
* Many files: Use xmalloc rather than bfd_alloc_by_size_t.
1997-03-17 16:29:29 +00:00
Ian Lance Taylor
18f7e3dc7f * config/tc-mips.c (md_apply_fix): Improve error message for out
of range branch.
1997-03-16 00:16:52 +00:00
Ian Lance Taylor
46a92fde53 * config/tc-mips.c (md_estimate_size_before_relax): Handle the
case of a symbol equated to another symbol when using SVR4_PIC.
1997-03-15 02:14:44 +00:00
Ian Lance Taylor
2e9974a450 * config/obj-elf.c (obj_elf_data): Call md_flush_pending_output
and md_elf_section_change_hook if they are defined.
	(obj_elf_text, obj_elf_previous): Likewise.
1997-03-13 16:21:34 +00:00
Ian Lance Taylor
e053e8c1e5 * config/tc-m88k.c (m88k_do_align): Don't use a special nop
alignment if a zero fill pattern was explicitly specified.
	* config/tc-sh.c (sh_do_align): Likewise.
1997-03-11 20:10:20 +00:00
Ian Lance Taylor
d88cc85dbb From Eric Youngdale <eric@andante.jic.com>:
* config/obj-elf.h (struct elf_obj_sy): Define.
	(OBJ_SYMFIELD_TYPE): Define to elf_obj_sy struct.  Change all
	users.
	* config/obj-elf.c (obj_elf_symver): Just record the name.
	(obj_symbol_new_hook): Initialized versioned_name field.
	(elf_frob_symbol): If there is a versioned_name, either rename the
	symbol, or add an alias with that name.
1997-03-10 04:53:55 +00:00
Jeff Law
a405bb3eb0 * config/tc-mn10300.c (md_assemble): Don't use any MN10300 specific
relocs anymore.  Tweak fx_offset for pc-relative relocs.
Cleanup/simplification of mn10300 port.  Bring over changes from mn10200 port.
1997-03-06 20:58:22 +00:00
Fred Fish
1ea5264653 * config/tc-tic80.c (md_pseudo_table): Add "sect" and "section"
pseudo-ops.
1997-03-05 06:18:28 +00:00
Fred Fish
e74539b876 * config/tc-tic80.c (md_begin): Declare external variable
coff_flags and insert an F_AR32WR bit into it.
1997-03-05 02:35:36 +00:00
Ian Lance Taylor
a941619c0b * config/tc-mips.c (mips16_extended_frag): Don't assume that we
can rely on the frag address to determine whether a frag is
	earlier or later.
1997-03-01 06:10:58 +00:00
Ian Lance Taylor
2360492176 * write.h (LOCAL_LABEL): Only define if not BFD_ASSEMBLER.
(S_LOCAL_NAME): Likewise.
	(FAKE_LABEL_NAME): Define unconditionally.
	* symbols.c (colon): Call bfd_is_local_label, not LOCAL_LABEL, if
	BFD_ASSEMBLER.
	(S_IS_LOCAL): Call bfd_is_local_label_name, not LOCAL_LABEL.
	* config/tc-*.h: Only define LOCAL_LABEL if not BFD_ASSEMBLER.
	Don't define FAKE_LABEL_NAME.
	* config/te-ic960.h: Likewise.
	* config/tc-mips.h (tc_frob_file_before_adjust): Define.
	(mips_frob_file_before_adjust): Declare.
	* config/tc-mips.c (mips_frob_file_before_adjust): New function.
	(mips_local_label): Remove.
1997-02-28 20:04:39 +00:00
Ian Lance Taylor
e691320ea4 * config/te-sco386.h: Remove; not used. 1997-02-28 19:42:04 +00:00
Ian Lance Taylor
8a683c6720 remove d10v sanitization 1997-02-27 23:34:14 +00:00
Fred Fish
a88ce21e33 * config/tc-tic80 (md_pseudo_table): Add align pseudo op to do
byte alignment rather than power-of-two alignment that is the
	GAS default.
1997-02-27 22:55:12 +00:00
Angela Marie Thomas
54d5e0fb22 fix random missing Sanitize bits 1997-02-27 18:59:07 +00:00
Fred Fish
1e12595d64 * config/tc-tic80.c (FLT_CHARS): Change from "dD" to "fF".
(find_opcode): Match operands that can be floats.
	(build_insn): Handle O_big (float) expressions and build
	correct opcode.
1997-02-27 04:05:18 +00:00
Stan Shebs
d3ecee3912 always keep te-lnews.h 1997-02-27 02:42:38 +00:00
Stan Shebs
af942793a8 * configure.in (mips*-*-lnews*): New target, also make empty
emulation list for this target.
	* configure: Update.
	* tc-mips.c (ECOFF_LITTLE_FORMAT): Define.
	(mips_target_format): Use.
	* te-lnews.h: New file.
1997-02-27 02:40:44 +00:00
Fred Fish
f92f247b2d * config/tc-tic80.c (find_opcode, build_insn): Changes to match
operands with :m or :s modifiers and generate the right opcodes
	for them.
1997-02-26 22:42:51 +00:00
Ian Lance Taylor
034988c662 Based on patches from Robert Lipe <robertl@dgii.com>:
* configure.in: Add i386coff and i386elf to emulation list.
	* configure: Rebuild.
	* as.c (i386coff, i386elf): Declare.
	* obj.h (coff_format_ops): Declare.
	* config/obj-coff.c (OBJ_HEADER): Define.
	(coff_obj_symbol_new_hook): Rename from obj_symbol_new_hook.
	(coff_obj_read_begin_hook): Rename from obj_read_begin_hook.
	(obj_pseudo_table): Add "version".
	(coff_pop_insert): New static function.
	(coff_sec_sym_ok_for_reloc): New static function.
	(no_func): New static function.
	(coff_format_ops): New variable.
	* config/obj-coff.h (coff_obj_symbol_new_hook): Declare.
	(obj_symbol_new_hook): Define.
	(coff_obj_read_begin_hook): Declare.
	(obj_read_begin_hook): Define.
	* config/tc-i386.h (i386_target_format): Declare.
	* config/tc-i386.c: Check OBJ_MAYBE_ELF as well as OBJ_ELF; check
	OUTPUT_FLAVOR when appropriate.
	(i386_target_format): New function.
	* Makefile.in (obj-coff.o): New target.
	(e-i386coff.o, e-i386elf.o): New targets.
1997-02-26 04:33:08 +00:00
Fred Fish
b16a8c8e09 * config/tc-tic80.c (md_apply_fix): Handle R_ABS type fixups.
(fixes several failures in generic part of GAS testsuite)
1997-02-25 06:37:51 +00:00
Fred Fish
ec72a26633 * config/obj-coff.c: Fix typo in comment section.
start-sanitize-tic80
	* config/tc-tic80.c (md_pseudo_table): Add entry for bss, which takes
 	an additional alignment argument.
	(find_opcode): Allow O_symbol relocs for any 32 bit field, not just
 	base relative ones.
	(build_insn): Handle O_symbol relocs for any 32 bit field, not just
 	base relative ones.
end-sanitize-tic80
1997-02-24 20:21:13 +00:00
Dawn Perchik
8d8a790b81 * itbl-ops.c: Add test for itbl_have_entries.
* config/tc-mips.c: Remove test for itbl_have_entries.
	* config/tc-mips.h: Define tc_init_after_args to mips_init_after_args.
1997-02-23 23:46:12 +00:00
Ian Lance Taylor
1857d1e67d fix minor formatting problem 1997-02-23 23:14:39 +00:00
Ian Lance Taylor
9218cee06b minor formatting fixes 1997-02-23 22:47:20 +00:00
Dawn Perchik
efec4a282c * itbl-parse.y: Fix indentation mistakes from indent program.
* itbl-lex.l: Fix indentation mistakes from indent program.
	* itbl-ops.h: Add include for ansidecl.h.
	Add PARAMS around function arguments.
	Add declaration for itbl_have_entries.
	* itbl-ops.c: Add PARAMS around function arguments.
	* Makefile.in: Add itbl build rules.
	Add dependancies for itbl files to mips target.
	* as.c: Add itbl support.
	Add new option "--insttbl" for dynamically extending instruction set.
	* as.h: Declare insttbl_file_name;
	the name of file defining extensions to the basic instruction set
	* configure.in, configure: Add itbl-parse.o, itbl-lex.o, and
	itbl-ops.o to extra_objects for mips configuration.
	Add include file link from itbl-cpu.h to
	config/itbl-${target_cpu_type}.h.
	* config/tc-mips.c: Allow copz instructions.
	Add notes for future additions to the itbl support.
	Add debug macros.
	(macro): Call itbl_assemble to assemble itbl instructions.
	See if an unknown register is specified in an itbl entry.
1997-02-23 22:23:12 +00:00
Fred Fish
d160b69e74 * doc/internals.texi (CPU backend): Fix typo in md_section_align
description.
start-sanitize-tic80
	* config/tc-tic80.h (NEED_FX_R_TYPE): Define.
	* config/tc-tic80.c (find_opcode): Add code to support O_symbol
	operands.
	(build_insn): Grab a frag early so we can use the address in
 	fixups.  Take one's complement of BITNUM values before insertion
 	in opcode.  Add code to support O_symbol operands.
	(md_apply_fix): Replace unimplemented warning with implementation.
	(md_pcrel_from): Ditto.
	(tc_coff_fix2rtype): Ditto.
end-sanitize-tic80
1997-02-23 04:01:39 +00:00
Martin Hunt
1b52469766 Fri Feb 21 14:34:31 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
* config/tc-d30v.c (parallel_ok): New function.
	* config/tc-d30v.h: Define TARGET_BYTES_BIG_ENDIAN.
1997-02-22 00:29:55 +00:00
Martin Hunt
09d9ef26c9 Fri Feb 21 14:34:31 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
* config/tc-d10v.c (md_pcrel_from_section): Return 0 if
        relocation is in different section. Fixes PR11574.
1997-02-21 22:36:21 +00:00
Jim Wilson
e2e5acfa75 Fix linker relocation overflow errors for the NEC vr4300/ddb toolchain.
These changes are related to Ian's gas/libgloss changes of Dec 13/Dec 18.
	* tc-mips.c (mips_ip): If configured for an embedded ELF system,
	don't set the section alignment to 2**4.
	* mips/ddb.ld: Align the location counter before setting _gp, and
	before setting edata.  Remove ALIGN from _gp computation.
	* mips/idt.ld, mips/pmon.ld: Before setting _gp, use ALIGN(8) instead
	of ALIGN(16).  Remove ALIGN from _gp computation.
1997-02-21 18:28:36 +00:00
Ian Lance Taylor
fee3e248a6 * configure.in: Set em=svr4 for m68k-*-sysv4*.
* configure: Rebuild.
	* config/te-svr4.h: New file.
	* config/tc-m68k.c (m68k_comment_chars): Only include `#' if
	TE_SVR4 or TE_DELTA.
1997-02-21 17:00:45 +00:00
Ian Lance Taylor
64c5df8d21 * config/obj-coff.c (obj_coff_ln [both versions]): Call
new_logical_line.
PR 11725.
1997-02-20 19:12:05 +00:00
Martin Hunt
9b1168d6e7 Tue Feb 18 18:42:51 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
* config/tc-d30v.c, config/tc-d30v.h: New files.
1997-02-19 02:47:03 +00:00
Fred Fish
e0706ea899 * config/tc-alpha.h (md_operand): Define with a null expansion,
like all the other targets.
	* doc/internals.texi (CPU backend): Add missing word in
	md_flush_pending_output description.  Fix typo in md_convert_frag
	description.
start-sanitize-tic80
	* config/tc-tic80: Minor comment additions/changes.
end-sanitize-tic80
1997-02-17 01:01:00 +00:00
Ian Lance Taylor
f5ed78de1f Based on notes from Peter Eriksson <peter@ifm.liu.se>. The target
does not actually work, though:
	* configure.in (i386-sequent-bsd*): New target.
	* configure: Rebuild.
	* config/tc-dynix.h: New file.
	* config/tc-i386.h: Define TARGET_FORMAT if TE_DYNIX.
1997-02-14 23:40:49 +00:00
Ian Lance Taylor
414a1069b7 random copyright and formatting fixes 1997-02-14 23:05:36 +00:00
Ian Lance Taylor
d7bf6158eb * read.c (do_align): Add max parameter. Change all callers.
Remove useless static variables.
	(s_align): New static function.  Do common portion of
	s_align_bytes and s_align_ptwo.
	(s_align_bytes, s_align_ptwo): Just call s_align.
	* frags.c (frag_align): Add max parameter.  Change all callers.
	(frag_align_pattern): Likewise.
	* frags.h (frag_align, frag_align_pattern): Update declarations.
	* write.c (relax_segment): Limit alignment change to fr_subtype.
	Fix some types to be addressT.
	* config/obj-coff.c (size_section): Likewise.
	* config/obj-ieee.c (size_section): Likewise.
	* config/tc-d10v.h (md_do_align): Add max parameter.
	* config/tc-i386.h (md_do_align): Likewise.
	* config/tc-m88k.h (md_do_align): Likewise.
	* config/tc-m88k.c (m88k_do_align): Likewise.
	* config/tc-sh.h (md_do_align): Likewise.
	* config/tc-sh.c (sh_do_align): Likewise.
	* as.h: Improve comments on rs_align and rs_align_code.
	* doc/as.texinfo: Document new alignment arguments.
	* doc/internals.texi (Frags): Document use of fr_subtype field for
	rs_align and rs_align_code.
1997-02-14 22:49:25 +00:00
Fred Fish
16171d7127 * config/{tc-alpha.h, tc-arc.h, tc-d10v.h, tc-generic.h, tc-i960.h,
tc-mn10200.h, tc-mn10300.h, tc-sh.h, tc-v850.h, tc-vax.h, tc-w65.h}:
	Add default definition of zero for TARGET_BYTES_BIG_ENDIAN.
	* config/{tc-arm.h, tc-hppa.h, tc-i386.h, tc-mips.h, tc-ns32k.h,
 	tc-ppc.h, tc-sparc.h}: Move definition of TARGET_BYTES_BIG_ENDIAN
	to a location consistent with the rest of the target include files.
	* config/tc-i386.c: Remove misleading comment.
	* doc/internals.texi (CPU backend): Add description of function
	md_undefined_symbol.
start-sanitize-tic80
	* config/tc-tic80.c: Add code to insert predefined symbols into the
	symbol table so they can be parsed by the standard expression parser.
	Remove custom code that use to parse them.
	* config/tc-tic80.h: Move definition of TARGET_BYTES_BIG_ENDIAN
	to a location consistent with the rest of the target include files.
end-sanitize-tic80
1997-02-14 07:53:14 +00:00
Fred Fish
af16e4115d * doc/Makefile.in (TEXI2DVI): Set to just name of program.
(DVIPS): Set to dvips.
	(ps, as.ps, gasp.ps): New targets.
	(internals.info, gasp.dvi, internals.dvi): Set both TEXINPUTS
 	and MAKEINFO env variables.
	(internals.ps): Use DVIPS macro.
	(clean): Remove core and backup files.
	(distclean): Remove temporary files from building internals.
	(clean-dvi): Ditto.
	* doc/internals.texi (Frags): Fix typo.
	(GAS processing): Ditto.
	(CPU backend): Ditto.
	* ecoff.c (init_file): Use TARGET_BYTES_BIG_ENDIAN value directly.
	* mpw-config.in: Define TARGET_BYTES_BIG_ENDIAN as 1.
	* read.c: Remove ugly hack that dealt with config files not
	correctly defining TARGET_BYTES_BIG_ENDIAN.
	(target_big_endian): Use TARGET_BYTES_BIG_ENDIAN directly.
	* config/arm-big.mt: Define TARGET_BYTES_BIG_ENDIAN to 1.
	* config/arm-lit.mt: Define TARGET_BYTES_BIG_ENDIAN to 0.
	* config/mips-big.mt: Define TARGET_BYTES_BIG_ENDIAN to 1.
	* config/mips-lit.mt: Define TARGET_BYTES_BIG_ENDIAN to 0.
	* config/ppc-lit.mt: Define TARGET_BYTES_BIG_ENDIAN to 1.
	* config/ppc-sol.mt: Replace TARGET_BYTES_LITTLE_ENDIAN
	with TARGET_BYTES_BIG_ENDIAN defined to 0.
	* config/tc-arm.h: Remove use of TARGET_BYTES_LITTLE_ENDIAN
	and simplify.  Test value of TARGET_BYTES_BIG_ENDIAN, not just
	whether it is defined or not.
	* config/tc-mips.h: Remove use of TARGET_BYTES_LITTLE_ENDIAN.
	* config/tc-ppc.h: Remove use of TARGET_BYTES_LITTLE_ENDIAN
	and simplify. Test value of TARGET_BYTES_BIG_ENDIAN, not just
	whether it is defined or not.
start-sanitize-tic80
	* config/tic80.h (TARGET_FORMAT): Define to coff-tic80.
	(TARGET_BYTES_BIG_ENDIAN): Define to 0.
end-sanitize-tic80
1997-02-14 01:04:19 +00:00
David Edelsohn
9e6f4c6b9d Correct errors in some comments (bfd_perform_relocation was refered to
instead of bfd_install_relocation).
1997-02-13 23:12:14 +00:00
Ian Lance Taylor
319305a75f * config/tc-mips.c (mips16_extended_frag): Correct base address
for an extended PC relative instruction.
	(md_convert_frag): Likewise.
1997-02-13 18:33:26 +00:00
Ian Lance Taylor
4a1cb5078b * config/tc-mips.c (prev_nop_frag): New static variable.
(prev_nop_frag_holds): New static variable.
	(prev_nop_frag_required): New static variable.
	(prev_nop_frag_since): New static variable.
	(append_insn): If we aren't reordering, and prev_nop_frag is not
	NULL, and we don't need any nops, then decrease the size of
	prev_nop_frag.  Don't insert nops because of instructions in
	noreorder sections.  Remember whether the previous instructions
	where in noreorder sections even when not reordering.
	(mips_no_prev_insn): Add preserver parameter.  Change all
	callers.  Refer prev_nop_frag variables when appropriate.
	(mips_emit_delays): Set up prev_nop_frag.
	(s_mipsset): Clear prev_nop_frag if reordering.
1997-02-13 17:25:10 +00:00
Ian Lance Taylor
9cd4e6cc51 * config/tc-mips.c (append_insn): Remove useless code which
handled swapping a mips16 jump with a mips16 instruction with a
	reloc.
1997-02-13 01:29:39 +00:00
Ian Lance Taylor
c0df26bb95 revert earlier patch to set prev_insn_valid when not reordering 1997-02-12 21:36:17 +00:00
Ian Lance Taylor
05874c2e35 * config/tc-mips.c (md_parse_option): When debugging, set
mips_optimize to 1, not 0.
1997-02-12 21:30:02 +00:00