Commit Graph

1725 Commits

Author SHA1 Message Date
Ian Lance Taylor
842b6b062d * read.c (equals): Always permit register names to be redefined.
PR 11787.
1997-03-11 18:30:11 +00:00
Ian Lance Taylor
ee2c03edf3 * config/tc-mips.c (mips_fix_adjustable): Permit a reloc against a
mips16 symbol to be adjusted if a symbol is being subtracted from
	it.
1997-03-11 18:16:59 +00:00
Ian Lance Taylor
6d8dfa04d4 From Eric Youngdale <eric@andante.jic.com>:
* config/obj-elf.c (obj_elf_symver): Check for duplicate or
	illegal symbol version names.
	(elf_frob_symbol): Check for external default versions.
1997-03-11 06:14:44 +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
ef03fee0e0 * config/tc-mn10300.c (md_relax_table): Define.
(md_convert_frag): Implement.
        (md_assemble): Handle relaxable operands/instructions correctly.
        (md_estimate_size_before_relax): Implement.
        * config/tc-mn10300.h (TC_GENERIC_RELAX_TABLE): Define.
Branch relaxing for the mn10300.  Reduces the code size of our libraries by
about 11%.
1997-03-07 01:16:33 +00:00
Jeff Law
27103699a9 * config/tc-mn10200.c (md_relax_table): Fix typos.
Somthing I noticed while working on mn10300 relaxing code.
1997-03-07 00:04:57 +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
Ian Lance Taylor
d6545e3fc3 * cond.c (s_ifc): Call mri_comment_field and mri_comment_end when
in MRI mode.
PR 11788
1997-03-05 23:48:08 +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
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
Ian Lance Taylor
f396c4ef4c * config/tc-m68k.c (md_assemble): Handle a reloc width of 'W'.n 1997-02-27 19:57:10 +00:00
Ian Lance Taylor
0f68bf0a91 * gasp.c (hash_add_to_string_table): Correct misspelling in error
message, and add newline.
	(process_file): Don't process assignments in the label if this is
	a equ or assign pseudo-op.
	(process_pseudo_op): Swap first argument to do_assign for K_ASSIGN
	and K_EQU, to match documentation.
1997-02-27 18:30:47 +00:00
Michael Meissner
0fe302aced Add "r" section attribute to denote read-only sections 1997-02-27 17:01:21 +00:00
Ian Lance Taylor
35c64f24d1 * config/obj-elf.c (obj_elf_common): Set BSF_OBJECT in flags.
* config/tc-sparc.c (s_common): Likewise, if BFD_ASSEMBLER.
1997-02-27 06:31:12 +00:00
Ian Lance Taylor
30d0557caa * expr.c (operand): Simplify 0b handling. Don't treat 0b as a
binary number if the next character is '+' or '-'.
1997-02-27 05:28:17 +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
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
7a5157080c * Makefile.in (itbl-parse.c itbl-parse.h): Use $(BISON) and
$(BISONFLAGS), not $(YACC) and $(YACCFLAGS).
1997-02-26 16:57:38 +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
Ian Lance Taylor
55be99d643 Tue Feb 25 22:02:23 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
* config/tc-m68k.c (instring): Useless local declaration of
	crack_operand removed.
	* expr.h (expressionS): Changed type of X_op field to operatorT if
	__GNUC__.
1997-02-26 03:04:05 +00:00
Ian Lance Taylor
a0c4a2413e From Stephen Williams <steve@icarus.icarus.com>:
* config/tc-i960.h (TC_SYMFIELD_TYPE): Define if OBJ_COFF.
	(_tc_get_bal_of_call): Don't declare.
	(tc_get_bal_of_call): Declare as function, don't define as macro.
	* config/tc-i960.c (tc_set_bal_of_call): If OBJ_COFF, store balP
	in sy_tc field, not x_balntry field.
	(tc_get_bal_of_call): Rename from _tc_get_bal_of_call.  Change
	return type to symbolS *.  If OBJ_COFF, retrieve value from sy_tc
	field, not x_balntry field.
1997-02-26 02:55:31 +00:00
Ian Lance Taylor
a90512ade8 * Makefile.in ($(OBJS)): Don't depend upon $(IT_HDRS).
(TARG_CPU_DEP_mips): Depend upon $(srcdir)/itbl-ops.h.
	(itbl-lex.o): Depend upon itbl-parse.h.

	* itbl-parse.y (yyerror): Change return type to int.  Change to
	use old style function declaration.
1997-02-25 19:36:18 +00:00
Ian Lance Taylor
ee5cb7fe02 * Makefile.in (itbl-lex.o): Remove -Wall.
(itbl-parse.o): Likewise.
1997-02-25 19:28:05 +00:00
Ian Lance Taylor
28d8c67124 * cond.c (s_ifdef): If we should omit conditionals from listings,
call listing_list.
	(s_if, s_ifc, s_endif, s_else, s_ifeqs): Likewise.
	* listing.c (list_info_struct): Add EDICT_NOLIST_NEXT.
	(listing_listing): Handle EDICT_NOLIST_NEXT.
	(listing_list): An argument of 2 means EDICT_NOLIST_NEXT.
	* listing.h (LISTING_NOCOND): Define.
	(LISTING_SKIP_COND): Define.
	* as.c (show_usage): Mention c as a suboption of -a.
	(parse_args): Handle c as a suboption of -a.
	* doc/as.texinfo: Document -alc.
1997-02-25 18:45:17 +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
Martin Hunt
4d3410fd99 Mon Feb 24 15:19:57 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
* config/tc-d10v.c: Change pre_defined_registers to
	d10v_predefined_registers and reg_name_cnt to d10v_reg_name_cnt.
1997-02-24 23:22:13 +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
16aef5b049 * Makefile.in: Remove dependancies on itbl-cpu.h.
* as.c: Define stubs for itbl_parse and itbl_init if HAVE_ITBL_CPU
	is not defined.
1997-02-24 10:42:50 +00:00
Dawn Perchik
ac6c6bdb34 * itbl-ops.h: Include as.h. 1997-02-24 10:01:19 +00:00
Dawn Perchik
72797ffaa0 * as.c: Remove -t option.
* configure, configure.in: Move itbl-cpu.h to mips specific configure.
	* itbl-ops.h: Include itbl-cpu.h only if HAVE_ITBL_CPU is defined.
	* config/tc-mips.h: Define HAVE_ITBL_CPU.
1997-02-24 09:21:31 +00:00
Dawn Perchik
2f671f8415 * itbl-ops.c: Don't define DEBUG. 1997-02-24 01:57:55 +00:00
Dawn Perchik
f9f0539f36 * Makefile.in: Update itbl-test.c to reflect its new location. 1997-02-24 01:44:47 +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
7b9f3d46c6 * Makefile.in (DISTSTUFF): Remove itbl-parse.y, itbl-lex.l, and
itbl-ops.c.  Add itbl-parse.c and itbl-lex.c.
	(LEX, LEXFLAGS): Define.
	* itbl-ops.c (append_insns_as_macros): Remove bogus ASSERT.
1997-02-23 23:15:09 +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
Ian Lance Taylor
b2f7cdd005 * config/tc-m68k.c (line_comment_chars): Add '*'. 1997-02-21 19:54:34 +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
830ce6319a * app.c (LEX_IS_TWOCHAR_COMMENT_2ND): Don't define.
(do_scrub_begin): Don't set lex['*'].
	(do_scrub_chars): When handling LEX_IS_TWOCHAR_COMMENT_1ST, don't
 	check for LEX_IS_TWOCHAR_COMMENT_2ND.  Instead, just check for
	a literal '*'.
1997-02-21 17:21:09 +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
Jeff Law
48242b28d6 * config/tc-mn10200.c (md_convert_frag): Create a fixup for the
short conditional branch around a long unconditional branch.
Showing the reloc will allow the linker to shorten the long unconditional
branch or remove the long unconditional branch entirely when relaxing.
1997-02-21 05:27:10 +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
Ian Lance Taylor
1af411e17e * symbols.c (resolve_symbol_value): If both left and right
operands are undefined, warn about both of them.
PR 11724.
1997-02-20 18:58:40 +00:00
Michael Meissner
c6c7035cfb Since d10v is public now, remove all sanitization statements 1997-02-20 16:05:18 +00:00