Commit graph

2053 commits

Author SHA1 Message Date
Ian Lance Taylor
e2e4466adb * Makefile.in (CFLAGS): Subsitute from configure script. From
Jeff Makey <jeff@cts.com>.
1997-06-16 19:47:53 +00:00
Ian Lance Taylor
b0447a0e80 Mon Jun 16 13:59:18 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
* symbols.c (copy_symbol_attributes): Copy BSF_OBJECT flag.
	* config/obj-elf.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Copy size
	expression.

	* config/obj-multi.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Define instead
	of obj_copy_symbol_attributes.
1997-06-16 18:00:10 +00:00
Ian Lance Taylor
a52f90a4c8 * config/tc-i386.c (i386_operand): Use alloca rather than a fixed
buffer size to make a copy of the symbol.
1997-06-16 17:31:46 +00:00
Ian Lance Taylor
be2c18bd85 * Makefile.in (OBJS): Put @extra_objects@ on the same line as
macro.o.
1997-06-16 16:48:01 +00:00
Ian Lance Taylor
7799bb2c27 * write.c (write_object_file): In non BFD_ASSEMBLER code, as we
step through the frags calling cvt_frag_to_fill, switch to
	SEG_DATA when we reach data_frag_root.
PR 12580.
1997-06-12 16:17:53 +00:00
Jeff Law
43ee18a06d * config/tc-mn10300.c (md_assemble): Allow an empty register
list for instructions which use register lists.
1997-06-10 23:12:45 +00:00
Ian Lance Taylor
d2e5779b91 Tue Jun 10 11:18:09 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
* config/tc-arm.c (md_apply_fix3): Make temp unsigned long.
1997-06-10 15:25:05 +00:00
Ian Lance Taylor
7436e4de5a Tue Jun 10 11:18:09 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
* config/tc-arm.c (arm_adjust_symtab): Only set storage classes if
	OBJ_COFF.
1997-06-10 15:21:36 +00:00
Ian Lance Taylor
ccc30467a6 Tue Jun 10 11:18:09 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
* config/tc-arm.c: Add prototypes for many static functions.
	(struct asm_opcode ): Add prototypes for parms field.
	(struct thumb_opcode ): Likewise.
	(fp_op2): Remove unused flags parameter.
	(output_inst): Make static.
	(arm_after_pass_hook): Remove unused ignore parameter.
	* config/tc-arm.h (arm_after_pass_hook): Declare.
	(arm_start_line_hook): Declare.
	(arm_frob_label): Declare.
1997-06-10 15:20:05 +00:00
Ian Lance Taylor
4b4c1e0fb4 * config/tc-sh.c (md_apply_fix): Check for overflow.
PR 12530.
1997-06-09 18:05:46 +00:00
Ian Lance Taylor
170cdf75e7 Mon Jun 9 12:55:45 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
* depend.c (wrap_output): new prototype.
1997-06-09 16:56:41 +00:00
Ian Lance Taylor
af438bdb10 * config/tc-m68k.c (md_section_align): If a.out and BFD, force
section size to be aligned.
1997-06-09 16:53:45 +00:00
Ian Lance Taylor
7257418129 * config/tc-sh.h (md_cons_align): Define.
(sh_cons_align): Declare.
	* config/tc-sh.c (md_pseudo_table): Add .uaword and .ualong.
	(sh_no_align_cons): New static variable.
	(s_uacons): New static function.
	(sh_cons_align): New function.
	(sh_handle_align): Warn about misaligned data.
	* doc/c-sh.texi: Document .uaword and .ualong.
PR 12528.
1997-06-06 21:17:46 +00:00
Nick Clifton
48e509bf2c Merged in changes made in armT-970328-branch 1997-06-04 00:07:07 +00:00
Nick Clifton
f8a2144336 Merged in the changes from the armT-970328-branch. 1997-06-03 23:25:43 +00:00
Nick Clifton
d0badeab7c Added support for Thumb architecture from armT-970328-branch. 1997-06-03 23:15:49 +00:00
Nick Clifton
3357a5ab61 Added an enable of the ARM documentation. 1997-06-02 23:43:17 +00:00
Nick Clifton
2903fb6e85 Added ARM documentation from armT-970328-branch 1997-06-02 23:28:16 +00:00
Gavin Romig-Koch
5c6f5923c7 Add r3900 support. 1997-06-02 15:56:00 +00:00
Ian Lance Taylor
dccd4d2cf1 Thu May 29 12:58:26 1997 Ben Pfaff <pfaffben@pilot.msu.edu>
* as.c: (parse_args) `-t' option requires an argument.
1997-05-29 16:59:46 +00:00
Ian Lance Taylor
1d6f438f49 * Makefile.in: Rebuild dependencies. 1997-05-28 21:58:27 +00:00
Ian Lance Taylor
5ac3db53bb * config/tc-i386.c (tc_gen_reloc): Don't try to convert the type
of a BFD_RELOC_RVA reloc.
1997-05-28 20:17:55 +00:00
Jeff Law
f22950b920 * config/tc-hppa.c (tc_fix_adjustable): Reject absolute calls/jumps.
(hppa_force_relocation): Force a relocation for an absolute
        call/jump.
part of gcc/12343.
1997-05-28 16:48:32 +00:00
Ian Lance Taylor
1079e76c45 * doc/as.texinfo: Don't use @value in section names or index
entries; it confuses texinfo.tex.
1997-05-26 17:25:22 +00:00
Tom Tromey
8a51eeafee * doc/as.texinfo: Updated for -MD option.
* Makefile.in (CFILES): Added depend.c.
        (OBJS): Added depend.o.
        * as.h (start_dependencies, register_dependency,
        print_dependencies): New declarations.
        * depend.c: New file.
        * as.c (parse_args): Added -MD option.
        (main): Call print_dependencies.
        (show_usage): Added help for -MD.
        * read.c (s_app_file): Call register_dependency.
        (s_include): Call register_dependency when file is found.
        (read_a_source_file): Call register_dependency.
1997-05-23 19:30:41 +00:00
Ian Lance Taylor
1a7a427ef1 * config/obj-coff.c (symbol_to_chars): If TE_PE, don't add the
section address to the symbol value.
1997-05-21 21:40:14 +00:00
Gavin Romig-Koch
e17449bcfd Move mips INSN_ISA subfield into new membership field. 1997-05-20 15:29:25 +00:00
Nick Clifton
de046e7c42 Fixed bug in previous delta. If no cpu type was specified on the command
line then the code used to default to setting an architecture of ARMv4T
rather than ARMv3M in the BFD library.  This has now been corrected.
1997-05-15 17:05:24 +00:00
Nick Clifton
46686c7839 Added support for storing ARM Procedure Calling Standard variant, and ARM
architecture variant in the BFD and COFF structures.  This goes towards
fixing PRs 11709 and 11326 and will integrate with future updates to LD and
GCC.
1997-05-14 17:00:43 +00:00
Jeff Law
2393a96689 * config/tc-mn10200.c (md_convert_frag): Prefix temporary
label name with ".".
        * config/tc-mn10300.c (md_convert_frag): Likewise.
1997-05-14 04:29:05 +00:00
Ian Lance Taylor
cd05cc5e45 * config/tc-mips.c (set_at): Check for bignum.
(check_absolute_expr, macro, mips16_macro): Likewise.
PR 12296.
1997-05-13 18:46:47 +00:00
Fred Fish
7b02bacd3d * config/tc-tic80.c (md_apply_fix): Check PC relative relocations
for overflow/underflow, only insert lower 15 bits into instruction.
1997-05-13 17:55:41 +00:00
Ian Lance Taylor
98b4161aee Mon May 12 13:33:08 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
* config/tc-i386.c (pi): Check for RegMMX.
1997-05-12 20:23:57 +00:00
Ian Lance Taylor
ee42e25b0c * expr.c (expr): When subtracting values in the same frag,
subtract X_add_number rather than adding it.
1997-05-08 15:10:55 +00:00
Ian Lance Taylor
662a6d9e11 * config/obj-coff.c (write_object_file): Just pass NULL to
md_do_align, not the address of a char holding NOP_OPCODE.
Fixes a problem with the m88k SVR3 .init section as used by gcc.
1997-05-07 19:46:25 +00:00
Ian Lance Taylor
a5586bdc2f * config/tc-mips.c (macro): Handle constants for M_LI_D and
M_LI_DD.
	(mips_ip): For 'F', 'L', 'f', and 'l', generate a constant rather
	than an address if the floating point value looks sufficiently
	simple.
PR 12237.
1997-05-07 19:41:17 +00:00
Ian Lance Taylor
91951af61f * config/tc-i386.c (md_section_align): If a.out and BFD, force
section size to be aligned.
1997-05-06 16:19:04 +00:00
Ian Lance Taylor
0239838be4 * cond.c: Include "macro.h".
(struct conditional_frame): Add macro_nest field.
	(initialize_cframe): Initialize macro_nest.
	(cond_finish_check): Add nest parameter.  Change all callers.
	(cond_exit_macro): New function.
	* as.h (cond_finish_check): Update declaration.
	(cond_exit_macro): Declare.
	* input-scrub.c (macro_nest): Make globally visible.
	(input_scrub_next_buffer): Call cond_finish_check.
	* macro.h (macro_nest): Declare.
	* read.c (s_mexit): Call cond_exit_macro.
1997-05-06 00:54:37 +00:00
Ian Lance Taylor
454b0ccda0 * config/tc-i386.h (RegMMX): Define.
* config/tc-i386.c (pi): Check for all register types.
	(type_names): Add RegMMX.
	(md_assemble): Handle RegMMX.
1997-05-05 21:18:17 +00:00
Ian Lance Taylor
24d4b4e167 Tue Apr 29 19:54:36 1997 Richard Henderson <rth@tamu.edu>
* config/obj-elf.c (elf_pseudo_table): Add "subsection".
 	(obj_elf_subsection): New static function.
1997-04-29 23:55:42 +00:00
Ian Lance Taylor
4a38edaab7 * config/obj-coff.c (coff_header_append): Don't reset string_size
each time through the loop.
1997-04-29 23:53:26 +00:00
Ian Lance Taylor
1416631f2f * Makefile.in (DISTSTUFF): Add itbl-parse.h. 1997-04-25 18:19:53 +00:00
Ian Lance Taylor
8f9b2cea7f * doc/internals.texi (Porting GAS): Correct documentation for
current configure handling of targ-cpu.h, et. al.
	(CPU backend): Document listing macros.
1997-04-25 16:15:33 +00:00
Ian Lance Taylor
49f5a035dd * listing.c (data_buffer): Set size based on other listing macros,
rather than always using 100.
	(data_buffer_size): Remove static variable.
	(calc_hex): Make data_buffer_size a local variable.  Don't leave
	any slop when filling data_buffer.
1997-04-25 16:04:44 +00:00
Ian Lance Taylor
a21dd1e090 * doc/c-mips.texi: Document .set autoextend. 1997-04-21 19:33:57 +00:00
Ian Lance Taylor
49f90a3443 Sat Apr 19 23:09:25 1997 Niklas Hallqvist <niklas@petra.appli.se>
* configure.in (i386-*-openbsd*, m68k-*-openbsd*,
	mips-dec-openbsd*, ppc-*-*bsd*, ns32k-pc532-openbsd*,
	sparc-*-openbsd*): New targets.
	* configure: Rebuild.
1997-04-20 03:15:48 +00:00
Ian Lance Taylor
aff65ed99d Sat Apr 19 22:52:03 1997 Jim Wilson <wilson@cygnus.com>
* config/obj-elf.c (elf_frob_symbol): If TC_MIPS, set BSF_OBJECT
	for all undefined symbols.
1997-04-20 02:53:22 +00:00
Ian Lance Taylor
fec391b1b5 * config/tc-ppc.c (ppc_fix_adjustable): Handle zero length csects
correctly.
1997-04-18 17:39:33 +00:00
Ian Lance Taylor
894cca2569 Fri Apr 18 11:51:35 1997 Niklas Hallqvist <niklas@appli.se>
* configure.in (alpha*-*-openbsd*): New target.
	* configure: Rebuild.
1997-04-18 15:52:33 +00:00
Ian Lance Taylor
fc984eb0a3 Thu Apr 17 13:59:47 1997 Per Fogelstrom <pefo@openbsd.org>
* configure.in (mips-*-openbsd*): New target.
	* configure: Rebuild.
1997-04-17 18:04:34 +00:00
Martin Hunt
4bdb83fcb9 Wed Apr 16 12:31:24 1997 Martin Hunt <hunt@cygnus.com>
* config/tc-d30v.c (parallel_ok): Fix parallel checking
	for instructions using conditional execution.
1997-04-16 19:35:54 +00:00
Gavin Romig-Koch
68952421e6 Correct test for fpr pairs. 1997-04-15 22:46:58 +00:00
Ian Lance Taylor
ec2f730d86 sanitize out references to v850 1997-04-15 22:34:57 +00:00
Ian Lance Taylor
e366a2d6e8 * Makefile.in (srcroot): Remove.
(INSTALL): Set to @INSTALL@.
	(INSTALL_XFORM, INSTALL_XFORM1): Remove.
	(all, dvi): Don't set srcroot.
	(install): Depend upon as.new, gasp.new, and installdirs.  Use
	$(program_transform_name) directly, rather than using
	$(INSTALL_XFORM) and $(INSTALL_XFORM1).
	(installdirs): New target.
	* doc/Makefile.in (INSTALL_XFORM1): Remove.
	(install): Depend upon installdirs.  Use $(program_transform_name)
	directly, rather than using $(INSTALL_XFORM) and
	$(INSTALL_XFORM1).
	(installdirs): New target.
	(install-info-as): Run mkinstalldirs.
	(install-info-gasp): Likewise.
1997-04-15 17:11:08 +00:00
Ian Lance Taylor
dca6429fad From Thomas Graichen <graichen@rzpd.de>:
* Makefile.in: Always use $(SHELL) when running move-if-change.
	* configure.in: Use ${CONFIG_SHELL} when running $ac_config_sub.
	* configure: Rebuild.
1997-04-14 16:05:50 +00:00
David Edelsohn
f3f00e9486 * cgen.c (cgen_parse_operand): Renamed from cgen_asm_parse_operand.
New argument `want'.  Update enum cgen_parse_operand_result values.
	Initialize if CGEN_PARSE_OPERAND_INIT.
	* config/tc-m32r.c (md_begin): Set cgen_parse_operand_fn.
	(md_assemble): Call cgen_asm_init_parse.
	Update call to m32r_cgen_assemble_insn, call as_bad if assembly failed.
1997-04-10 23:40:30 +00:00
David Edelsohn
4e9d8deacb * config/tc-m32r.c (md_begin): Set cgen_asm_parse_operand_fn.
(md_assemble): Call cgen_asm_init_parse.
	Update call to m32r_cgen_assemble_insn, call as_bad if assembly failed.
1997-04-10 21:54:15 +00:00
Ian Lance Taylor
902a77ac80 * config/tc-m68k.c (m68k_ip): Handle #j. 1997-04-09 15:50:13 +00:00
Jeff Law
967429536d * config/tc-mn10300.c (md_convert_frag): Create fixup at the
right address for call label:32,regs,imm.
Fixes bug exposed by gdb testsuite.
1997-04-08 22:47:42 +00:00
Jeff Law
e41369a45f * config/tc-hppa.c (pa_subspace_start): If OBJ_ELF, then always return
zero.
        * config/tc-hppa.h (tc_frob_symbol): Don't reset the value of the
        symbol for OBJ_ELF anymore.
Fixes testsuite problem for hppa1.1-hp-*elf*.
1997-04-07 21:01:43 +00:00
David Edelsohn
39ffbb4dcc * Makefile.in: Regenerate dependencies.
(TARG_CPU): New variable.
	(cgen.o): Depend on cgen.h, $(TARG_CPU)-opc.h.
	(.dep1): Delete creating of cgen-opc.h.
	(.tcdep): Put proper contents in cgen-opc.h.
	* configure.in (m32r): Delete setting of extra_files, extra_links.
	(AC_OUTPUT): Create cgen-opc.h.
	* configure: Regenerated.
1997-04-07 18:38:33 +00:00
Ian Lance Taylor
596c5b74fc Sat Apr 5 13:19:12 1997 Klaus Kaempf <kkaempf@progis.de>
* makefile.vms: Update to build gasp.exe.
1997-04-05 18:20:59 +00:00
David Edelsohn
c8cf7e1737 * write.c (relax_frag): Make non-static.
* write.h (relax_frag): Add prototype for.
	* config/tc-m32r.h (md_do_align): New arg `max'.
	* config/tc-m32r.c (m32r_do_align): Likewise.
	Update calls to frag_align, frag_align_pattern.
	(fill_insn): Update call to m32r_do_align.
	(m32r_scomm): Update call to frag_align.
1997-04-05 02:34:40 +00:00
David Edelsohn
403c708e0a * frags.c (frag_var): fr_pcrel_adjust renamed to
fr_targ.ns32k.pcrel_adjust.  fr_bsr renamed to fr_targ.ns32k.bsr.
	(frag_variant): Likewise.
	* Makefile.in: Tweak last entry, cgen.o is in extra_objects!
1997-04-05 00:35:29 +00:00
David Edelsohn
374bdac737 * config/tc-m32r.[ch]: New files.
* cgen.c: New file.
	* Makefile.in (CPU_TYPES): Add m32r.
	(CFILES): Add cgen.c.
	(TARGET_CPU_CFILES): Add tc-m32r.c.
	(TARGET_CPU_HFILES): Add tc-m32r.h.
	(OBJS): Add cgen.o.
	(DISTCLEAN_HERE): Add cgen-opc.h.
	(.dep1,.tcdep): Create empty cgen-opc.h.
	(cgen.o): Add dependencies.
	(dependencies): Regenerate.
	* as.h (struct frag): New member fr_targ.
	(fr_pcrel_adjust,fr_bsr): Move into union fr_targ.ns32k.
	* conf.in (USING_CGEN): New macro.
	* configure.in (m32r-*-*): Add entry for.
	* configure: Regenerate.
	* write.c (relax_frag): fr_pcrel_adjust renamed to
	fr_targ.ns32k.pcrel_adjust.
	* config/tc-ns32k.c (*): Likewise.
	fr_bsr renamed to fr_targ.ns32k.bsr.
1997-04-05 00:21:26 +00:00
Ian Lance Taylor
dc966dadf7 * config/tc-hppa.h (TC_EOL_IN_INSN): Check explicitly for '!',
rather than for any end of line character.
1997-04-04 22:49:21 +00:00
Ian Lance Taylor
5c11dba28a * config/tc-hppa.c (tc_gen_reloc): If hppa_ren_reloc_type fails,
call abort (i.e., as_abort) rather than crashing.
1997-04-04 22:48:24 +00:00
Ian Lance Taylor
457a20b54a * config/tc-mips.c: Protect uses of STO_MIPS16 with an ifdef of
OBJ_ELF, rather than of S_GET_OTHER.
1997-04-04 21:12:50 +00:00
Ian Lance Taylor
e819d858c9 * Makefile.in (DISTCLEAN_HERE): Add site.exp and site.bak. 1997-04-04 18:26:33 +00:00
Ian Lance Taylor
3884d17b45 * Makefile.in (VERSION): Set to 2.8.1. 1997-04-03 18:19:26 +00:00
Ian Lance Taylor
64d2004922 * COPYING: Update FSF address. 1997-04-02 19:51:31 +00:00
Ian Lance Taylor
08438bef4a * config/tc-mips.c (mips16_macro): Handle M_DMUL and M_MUL.
PR 11982.
1997-04-02 17:24:44 +00:00
Jim Wilson
3c83da8ac4 * config/tc-mips.c (md_begin): Don't set interlocks for 4100. 1997-04-02 02:33:47 +00:00
Ian Lance Taylor
396e8d7ff0 Tue Apr 1 16:24:28 1997 Klaus Kaempf <kkaempf@progis.de>
* config-gas.com: Update to handle both vax and alpha.
	* makefile.vms: Update to use config-gas.
	* conf-a-gas.com: Remove file.
1997-04-01 21:26:16 +00:00
Ian Lance Taylor
db2377831a * Makefile.in: Remove unnecessary itbl-parse.h, ibtl-parse.c, and
itbl-lex.c dependencies.  Remove rules for itbl-lex.o,
	itbl-parse.o, and itbl-ops.o; just use the normal .c.o rule.
1997-04-01 21:09:44 +00:00
Michael Meissner
64251de516 Make # a line comment character 1997-04-01 16:29:10 +00:00
Ian Lance Taylor
3c6adeaf93 Mon Mar 31 23:53:44 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
* config/tc-ppc.c (register_name): Declare.
1997-04-01 04:54:41 +00:00
Ian Lance Taylor
332d5c4952 Mon Mar 31 16:31:04 1997 Joel Sherrill <joel@oarcorp.com>
* configure.in (hppa*-*-rtems*): New target, like hppa-*-*elf*.
	* configure: Rebuild.
1997-03-31 21:34:52 +00:00
Ian Lance Taylor
2f2bcadb7d * config/tc-mips.c (mips_pseudo_table): Add "stabn".
(mips16_mark_labels): New static function.
	(append_insn): Call mips16_mark_labels.
	(mips_emit_delays): Likewise.
	(s_insn): Likewise.  Don't call mips_clear_insn_labels.
	(s_mips_stab): New static function.
1997-03-31 19:45:23 +00:00
Ian Lance Taylor
6d65a06574 * configure.in: Use ELF for mips-*-gnu*.
* configure: Rebuild.
1997-03-31 19:16:11 +00:00
Ian Lance Taylor
ca37421ec4 Mon Mar 31 14:01:40 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
* config/tc-m68k.h (TARGET_FORMAT): Set to "coff-m68k-sysv" if
	TE_DELTA.
1997-03-31 19:11:03 +00:00
Ian Lance Taylor
2e013bb766 Fri Mar 28 18:03:19 1997 Alan Modra <alan@spri.levels.unisa.edu.au>
* configure.in: Add AC_ARG_ENABLE for commonbfdlib.  If it is set,
	set OPCODES_LIB to empty.
	* configure: Rebuild.
1997-03-28 23:16:18 +00:00
Ian Lance Taylor
04b8ad8bb2 Fri Mar 28 15:25:24 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
* configure.in (sparc-*-linux*aout*, sparc-*-linux*): New
	targets.
	* configure: Rebuild.
1997-03-28 20:26:26 +00:00
Ian Lance Taylor
ab91e1ef72 * itbl-parse.y (yyerror): Make static. Declare. 1997-03-28 19:40:00 +00:00
Ian Lance Taylor
515c71428d From Ralf Baechle <ralf@gnu.ai.mit.edu>:
* configure.in: Set emulations for mips-*-linux*-*.
	* configure: Rebuild.
1997-03-28 19:25:01 +00:00
Ian Lance Taylor
1347404a58 * config/tc-mips.c (struct mips_set_options): Define.
(mips_opts): New static variable.
	(mips_isa): Remove.  Now a field in mips_opts.  Change all
	references.
	(mips16, mips16_autoextend, mips_warn_about_macros): Likewise.
	(mips_noreorder, mips_nomove, mips_noat, mips_nobopt): Likewise.
	(struct mips_option_stack): Define.
	(mips_opts_stack): New static variable.
	(s_mipsset): Add support for .set push and .set pop.
	* doc/c-mips.texi: Document .set push and .set pop.
1997-03-28 19:18:11 +00:00
Ian Lance Taylor
acdc7ce30e * config/obj-elf.c (obj_elf_section_change_hook): New function.
* config/obj-elf.h (obj_elf_section_change_hook): Declare it.
	* config/tc-mips.c (s_change_sec): Call it if OBJ_ELF.
1997-03-28 18:10:09 +00:00
Ian Lance Taylor
e22e79dc43 * as.c (parse_args): Update copyright date in version message. 1997-03-27 22:13:23 +00:00
Ian Lance Taylor
9b8b7e970e * Makefile.in (clean-here): Remove dependency files. 1997-03-27 18:52:00 +00:00
Ian Lance Taylor
23ac3ca1f0 * read.c (s_comm): Check S_IS_COMMON as well as S_IS_DEFINED.
(s_mri_common): Check S_IS_COMMON unconditionally.
	* symbols.c (colon): Check S_IS_COMMON as well as S_IS_DEFINED.
	* config/tc-alpha.c (s_alpha_comm): Likewise.
	* config/tc-mips.c (nopic_need_relax): Likewise.
	* config/tc-ppc.c (ppc_elf_lcomm): Likewise.
	(ppc_pe_comm): Likewise.
	* config/obj-elf.c (obj_elf_common): Likewise.  Set segment of
	common symbol to bfd_com_section_ptr.
	* config/tc-sparc.c (s_common): Likewise.
	(tc_gen_reloc): Likewise.
1997-03-27 17:31:06 +00:00
Martin Hunt
80834add01 Thu Mar 27 00:29:46 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
* config/tc-d30v.c (md_apply_fix3): Get the relocs right.
1997-03-27 08:41:18 +00:00
Ian Lance Taylor
8cd0c287b0 * listing.c (print_lines): Add lineno parameter. Change all
callers.
	(listing_listing): Only call calc_hex for the right line.
	(listing_list): Set the new edict based on the current edict, in
	order to handle listing commands in macros correctly.
1997-03-26 22:26:14 +00:00
Ian Lance Taylor
734a9064b6 Wed Mar 26 13:35:15 1997 H.J. Lu <hjl@lucon.org>
* config/tc-i386.c (tc_i386_fix_adjustable): Only define if
	BFD_ASSEMBLER.
1997-03-26 18:36:17 +00:00
Ian Lance Taylor
e807a57e6f * config/tc-mips.c (insn_uses_reg): Map register numbers in mips16
instructions.
1997-03-26 17:23:34 +00:00
Ian Lance Taylor
efda47f9ff * cond.c (cond_finish_check): New function.
* as.h (cond_finish_check): Declare.
	* as.c (main): Call cond_finish_check.
1997-03-26 16:38:42 +00:00
Martin Hunt
710fdf4735 Tue Mar 25 14:45:54 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
* config/tc-d30v.c (md_assemble): If two instructions
	are supposed to be assembled in parallel and the first one is
	long, print an error and stop.
	(md_apply_fix3): Don't calculate absolute relocs.  Just write
	them out.
1997-03-25 22:49:26 +00:00
Ian Lance Taylor
2fb44892b1 * config/tc-i386.h (iclrKludge): Define.
* config/tc-i386.c (md_assemble): Handle iclrKludge.
1997-03-24 19:37:05 +00:00
Ian Lance Taylor
1361ba7757 * config/tc-alpha.h (tc_frob_file_before_adjust): Define if
OBJ_ECOFF.
	(alpha_frob_file_before_adjust): Declare if OBJ_ECOFF.
	* config/tc-alpha.c (alpha_debug): New static variable.
	(md_parse_option): Set alpha_debug if -g is seen.
 	(alpha_frob_file_before_adjust): New function if OBJ_ECOFF.
1997-03-24 17:14:06 +00:00
Martin Hunt
9c9e75bf03 Sun Mar 23 18:03:31 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
* config/tc-d30v.c (build_insn): Enable range-checking code.
	(postfix): Stop at space or comma. Fixes PR 11862.
	(md_assemble): Change error message.
1997-03-24 02:26:54 +00:00
Ian Lance Taylor
65d7de4fc2 * Makefile.in: Added automatic dependency building.
* dep-in.sed: New file.
1997-03-22 18:53:01 +00:00
Ian Lance Taylor
7cad1a894b * config/obj-ieee.c (segment_name): Don't define function if this
is a macro.
1997-03-21 23:52:29 +00:00
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
949f1310de * configure.in: Don't set files and links. Don't call
AC_LINK_FILES.  Substitute te_file.  Create targ-cpu.h,
	obj-format.h, targ-env.h, and itbl-cpu.h in AC_OUTPUT.
	* configure: Rebuild.
	* Makefile.in (TARG_CPU_C): New variable.
	(TARG_CPU_O, TARG_CPU_H): New variables.
	(OBJ_FORMAT_C, OBJ_FORMAT_O, OBJ_FORMAT_H): New variables.
	(TARG_ENV_H, ATOF_TARG_C, ATOF_TARG_O): New variables.
	(SOURCES): Rename from REAL_SOURCES.  Delete old definition.
	(LINKED_SOURCES): Remove.
	(HEADERS): Rename from REAL_HEADERS.  Delete old definition.
	(LINKED_HEADERS): Remove.
	(OBJS): Use $(TARG_CPU_O), etc., rather than targ-cpu.o, etc.
	($(OBJS)): Depend upon $(TARG_ENV_H), etc., rather than
	targ-cpu.h, etc.
	($(TARG_CPU_O), $(OBJ_FORMAT_O) $(ATOF_TARG_O)): New targets.
	(targ-cpu.o, obj-format.o, atof-targ.o): Remove targets.
	(itbl-cpu.h): Remove target.
	(DISTCLEAN_HERE): Remove targ-cpu.c, obj-format.c, atof-targ.c,
	atof-targ.h.
1997-03-21 20:48:27 +00:00
Ian Lance Taylor
35cfacf0da * doc/as.texinfo (Symbol Names): Don't use obsolete @ctrl macro. 1997-03-21 00:19:44 +00:00
Ian Lance Taylor
39ab5d3a82 * config/m68k-parse.y (motorola_operand): Allow (zdireg,EXPR). 1997-03-20 22:00:37 +00:00
Ian Lance Taylor
0dfeb41faa Thu Mar 20 16:49:14 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* config/tc-m68k.c (mri_chip): Replace calls to get_symbol_end by
	open coded loop that does not require the name to start with a
	name beginner.
1997-03-20 21:51:00 +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
29bc322d8d Thu Mar 20 13:42:01 1997 H.J. Lu <hjl@lucon.org>
* Makefile.in (m68k-parse.c): Depend upon itbl-parse.c, to
	serialize a parallel make.
	(itbl-parse.h): Split target out from itbl-parse.c.
1997-03-20 18:43:10 +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
7dd2696140 Wed Mar 19 11:37:57 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
* config/obj-coff.c (glue_symbols): Unused variable symbolP
	removed.
	(crawl_symbols): Do not modify symbol_rootP and symbol_lastP here;
	that is done by symbol_remove and symbol_insert.

	* config/obj-coff.h (S_IS_LOCAL): Return 0 for a debugging
	symbol.
1997-03-19 17:07:23 +00:00
Ian Lance Taylor
ac766f7080 * config/tc-mips.c (load_register): In 32 bit mode, when not
dealing with a 64 bit number, permit the upper 32 bits to be set
	even if bit 31 is not set.
This lets `and $2,~0x80000000' succeed.
1997-03-19 16:28:19 +00:00
Ian Lance Taylor
58cfdde3e4 * read.c (potable): Add "equiv".
(s_set): Handle .equiv based on argument.
	* doc/as.texinfo (Equiv): New node to document .equiv.
	(Err): New node to document .err.
PR 11787.
1997-03-19 04:32:56 +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
4b0895cf56 x 1997-03-16 18:52:01 +00:00
Ian Lance Taylor
e95ef7c1b1 * symbols.c (symbol_new): Don't call debug_verify_symchain.
(symbol_append): Set sy_next and sy_previous when adding a single
	symbol to an empty list.  Call debug_verify_symchain.
	(verify_symbol_chain): Use assert, not know.
1997-03-16 18:50:27 +00:00
Fred Fish
5cf4e55e7b * NEWS: Note BeOS support.
* configure.in: (ppc-*-beos): New target, use coff as object format.
	* configure: Regenerate with autoconf.
1997-03-16 03:28:53 +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
9591ad402a * Makefile.in: Add dependencies on obstack.h where needed. 1997-03-16 00:15:01 +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
ef014e090f * Makefile.in (TARG_CPU_DEP_sparc): Add opcode/sparc.h. 1997-03-14 20:34:08 +00:00
Ian Lance Taylor
d428c89fdf * read.c (read_a_source_file): Call LISTING_NEWLINE before
HANDLE_CONDITIONAL_ASSEMBLY when handling an MRI line label.
PR 11746.
1997-03-13 20:19:43 +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
80633e8e2a * doc/as.texinfo (bss): Improve description of .bss section. In
ELF or COFF, you are permitted to switch into the section.
	(Comm): Rewrite description of common symbols.
	(Lcomm): Mention that some targets permit a third argument.
1997-03-12 16:41:26 +00:00
Ian Lance Taylor
9be8c0f160 * config/tc-ppc.c (ppc_elf_lcomm): Don't call S_CLEAR_EXTERNAL.
PR 11847.
1997-03-12 01:39:00 +00:00
Ian Lance Taylor
92b7bfb7b6 * symbols.c (colon): Change type of local to int. From Alan Modra
<alan@spri.levels.unisa.edu.au>.
1997-03-11 20:12:37 +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
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
Ian Lance Taylor
dd7feeb5ce Based on patches from Eric Youngdale <eric@andante.jic.com>:
* config/obj-elf.c (elf_pseudo_table): Add "symver".
	(obj_elf_symver): New static function.
	* config/obj-elf.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Copy the st_other
	field.
1997-02-19 21:33:00 +00:00
Ian Lance Taylor
78673fc661 * read.c (get_line_sb): Don't end the line on a semicolon inside a
string.
PR 11715.
1997-02-19 05:54:00 +00:00
Martin Hunt
14f23c288c Tue Feb 18 18:42:51 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
* config/tc-d30v.c, config/tc-d30v.h: New files.

 	* configure: Rebuilt.

	* configure.in: Add case for d30v.
1997-02-19 02:53:39 +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
b253dcffc8 Fri Feb 14 18:09:59 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
* config/tc-m68k.c (LOCAL_LABEL): Macro redefined if TE_DELTA.
	(tc_canonicalize_symbol_name): Macro defined if TE_DELTA.
 	* config/obj-coff.c (obj_coff_def): Use
	tc_canonicalize_symbol_name if defined.
	(obj_coff_tag, obj_coff_val): Likewise.
	* expr.c (operand): Reject '~' as operator if is_name_beginner.
1997-02-14 23:12:29 +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
Ian Lance Taylor
3de9d78cef * config/tc-sparc.c (md_show_usage): Add missing backslash at end
of continued line.
1997-02-14 03:09:46 +00:00
Ian Lance Taylor
9f13ead922 Thu Feb 13 21:44:18 1997 Klaus Kaempf <kkaempf@progis.de>
* as.h: GNU c provides unlink() function.

	Unify section handling on openVMS/Alpha:
	* config/tc-alpha.c(s_alpha_link): Remove.
	(s_alpha_section): New function.
	Remove case-hacking of symbols
	Add .code_address pseudo-op.
	(BFD_RELOC_ALPHA_CODEADDR): New relocation.
	(s_alpha_code_address): New function.
	(alpha_ctors_section, alpha_dtors_section): New sections for C++
	static constructors/destructors.
	Add debug code for crash debugs, to be removed when traceback code
	is added to object code.
	(s_alpha_name): New function for .name pseudo-op.
	(alpha_print_token): New function to print token expressions with
	alpha specific extensions.

	* makefile.vms: Allow compilation with current gcc snapshot.
1997-02-14 02:55:29 +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
89b41978ab * write.c (write_relocs): Correct text in as_fatal error message,
bfd_perform_relocation -> bfd_install_relocation.
1997-02-13 23:08:52 +00:00
Ian Lance Taylor
151c3ec043 Thu Feb 13 14:48:03 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
* config/tc-m68k.c (LEX_TILDE): Define if TE_DELTA.
	* read.c (LEX_TILDE): Define if not defined.
	(lex_type): Use LEX_TILDE.
	* expr.c (get_symbol_end): Check first char with is_name_beginner,
	not is_part_of_name.
1997-02-13 19:50:01 +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
Ian Lance Taylor
56bb6eeef7 * config/tc-mips.c (mips16_ip): Handle an extend operand. 1997-02-12 20:43:15 +00:00
Ian Lance Taylor
eb17f56cf5 * config/tc-mips.c (my_getExpression): In mips16 mode, if it looks
like the expression was based on `.', adjust the value of the
	symbol.
1997-02-12 20:38:20 +00:00
Ian Lance Taylor
035936da05 * config/tc-mips.c (append_insn): Warn about an attempt to put an
extended instruction in a delay slot when not reordering.  Set
 	prev_insn_valid even if not reordering.
	(md_convert_frag): Warn if an extended instruction appears in a
	delay slot.
1997-02-12 20:20:11 +00:00
Ian Lance Taylor
ed3eb78691 * config/tc-mips.c (mips_pseudo_table): Add "insn".
(s_insn): New static function.
	* doc/c-mips.texi: Document .insn.
1997-02-12 20:00:15 +00:00
Ian Lance Taylor
ebf2837264 * config/tc-mips.c (md_begin): Add the general registers to the
symbol table.
	(mips16_ip): First parse the expression, and then see whether it
	came up with a register, rather than trying to first see whether
	we are looking at a register.
1997-02-12 19:37:58 +00:00
Fred Fish
11e081968e * config/tc-tic80.c: Numerous changes and additions to flesh
out functions that were previously just stubs, and fix some
	problems found using the new TIc80 testsuite cases.
1997-02-11 22:44:10 +00:00
Ian Lance Taylor
16262668ac * config/tc-mips.c (mips16_ip): Handle %gprel modifier.
(md_apply_fix): Handle BFD_RELOC_MIPS16_GPREL.

	* config/tc-mips.c (append_insn): Output jump instruction as a
	pair of 2 byte instructions, rather than as a single 4 byte
	instruction.

start-sanitize-r5900
	* config/tc-mips.c (md_begin): Correct test of mips_5900.
	(mips_ip): Don't check INSN_ISA for a macro.

end-sanitize-r5900
1997-02-11 20:56:00 +00:00
Gavin Romig-Koch
276c2d7dc8 Add r5900 1997-02-11 13:26:34 +00:00
Dawn Perchik
c674507349 * itbl-ops.c, itbl-lex.l, itbl-parse.y, itbl-ops.h,
config/itbl-mips.h: Add copyright message and fix indentation.
1997-02-11 08:11:03 +00:00
Dawn Perchik
8e5c905e99 * itbl-ops.c: New file. Add support for dynamically read
instruction registers, opcodes and formats.  Build internal table
	for new instructions and provide callbacks for assembler and
	disassembler.
	* itbl-lex.l, itbl-parse.y: Lex and yacc parsers for instruction
	spec table.
	* itbl-ops.h: New file.  Header file for itbl support.
	* config/itbl-mips.h: New file.  Mips specific definitions for
	itbl support.
1997-02-11 02:07:57 +00:00
Jeff Law
a7355c4d87 * config/tc-mn10200.c (md_assemble): If a constant operand won't
fit into the constant field of a relaxable operand, then it does
        not match.
Fixes mn10200/other.s failures due to new relaxing code.
1997-02-07 16:54:05 +00:00
Jeff Law
e58035e374 * config/tc-mn10200.c (md_estimate_size_before_relax): Treat
a jsr target in a different section just like a jsr to
        an undefined target.
Bug triggerd by c++ tests.
1997-02-07 03:09:52 +00:00
Ian Lance Taylor
6927c24d3c * config/tc-mips.c (mips_fix_adjustable): Don't adjust relocations
against any mips16 symbols, not just externally visible ones.
	(md_apply_fix): Corresponding change.
1997-02-06 21:54:07 +00:00
Ian Lance Taylor
c916764078 * config/tc-mips.c (mips16_ip): Accept floating point registers in
the operand of the exit instruction.
1997-02-05 16:12:04 +00:00
Ian Lance Taylor
76801700d7 * symbols.c (resolve_symbol_value): If we leave an equated symbol
as O_symbol, copy over the segment.
1997-02-04 19:13:11 +00:00
Ian Lance Taylor
1748b9d8f0 * config/tc-mips.c (md_apply_fix): If we aren't adjusting this
fixup to be against the section symbol, adjust the value
	accordingly.
1997-02-03 17:56:00 +00:00
Ian Lance Taylor
3569064fb5 * symbols.c (resolve_symbol_value): Don't change X_add_number for
an equated symbol.
	* write.c (write_relocs): Avoid looping on equated symbols.
	Adjust fx_offset by X_add_number for each symbol.
	* config/obj-coff.c (do_relocs_for): Avoid looping on equated
	symbols.
	(fixup_segment): Add a loop to track down equated symbols and
	adjust fx_offset appropriately.
1997-02-03 17:38:41 +00:00
Jeff Law
f5d7f6fb53 * config/tc-mn10200.c (md_relax_table): Add entries to allow
jmp -> bra relaxing.
        (md_convert_frag): Handle jmp->bra relaxing.
        (md_assemble): Handle jmp->bra relaxing.
        (md_estimate_size_before_relax): Likewise.
1997-01-31 22:23:10 +00:00
Ian Lance Taylor
2b063e6d64 * config/tc-sparc.c (enforce_aligned_data): New static variable.
(sparc_cons_align): Don't do anything unless enforce_aligned_data
	is set.
	(md_longopts): Add "enforce-aligned-data".
	(md_show_usage): Mention --enforce-aligned-data.
	* doc/c-sparc.texi (Sparc-Aligned-Data): New node; document
	enforce-aligned-data.
1997-01-31 20:34:22 +00:00
Ian Lance Taylor
fbd929fd05 * config/tc-ppc.c (md_pseudo_table): If OBJ_XCOFF, add "long",
"word", and "short".
	(ppc_xcoff_cons): New static function.
1997-01-31 19:57:31 +00:00
Ian Lance Taylor
fb50cd4ef2 Fri Jan 31 13:15:05 1997 Alan Modra <alan@spri.levels.unisa.edu.au>
* config/tc-i386.c (i386_align_code): Add comments explaining the
	nop instructions.
1997-01-31 18:16:15 +00:00
Ian Lance Taylor
a75abb6f0a * write.c (relax_segment): Give an error if a .space symbol is
common or undefined.

	* read.c (read_a_source_file): Don't handle mri_pending_align if
	the handler is s_globl or s_ignore.
1997-01-31 15:47:41 +00:00
Ian Lance Taylor
0d7f9025b9 * config/tc-mips.c (mips_fix_adjustable): New function.
* config/tc-mips.h (tc_fix_adjustable): Call mips_fix_adjustable.
	(mips_fix_adjustable): Declare.
1997-01-30 21:19:36 +00:00
Fred Fish
f1ce6af4fe * config/tc-d10v.c (find_opcode): Remove unused variable "numops".
* config/tc-tic80.c: Many additions to previous placeholder file.
      * config/tc-tic80.h: Ditto.
1997-01-30 20:35:02 +00:00
Ian Lance Taylor
0b476c533b Thu Jan 30 12:28:18 1997 Alan Modra <alan@spri.levels.unisa.edu.au>
* config/tc-i386.c (i386_align_code): Improve the nop patterns.
1997-01-30 17:29:28 +00:00
Ian Lance Taylor
a6b200da04 Ideas from Srinivas Addagarla <srinivas@cdotd.ernet.in>:
* read.c (read_a_source_file): After doing an mri_pending_align,
	adjust the line_label if there is one.
	(s_space): Set mri_pending_align if an odd number of bytes were
	output.
1997-01-30 17:10:28 +00:00
Martin Hunt
9073144e40 Wed Jan 29 15:31:12 1997 Martin M. Hunt <hunt@pizza.cygnus.com>
* tc-d10v.h (md_do_align): Add this hook to call
	d10v_cleanup() when a ".align" is detected.  Fixes PR11487.

	* tc-d10v.c (find_opcode): Correctly calculate
	branch displacement when .aligns are present.
1997-01-29 23:36:25 +00:00
Jeff Law
33a4c28dc0 * config/tc-mn10200.c (md_relax_table): Define.
(md_convert_frag): Implement.
        (md_assemble): Handle relaxable operands/instructions correctly.
        (md_estimate_size_before_relax): Implement.
        * config/tc-mn10200.h (TC_GENERIC_RELAX_TABLE): Define.
Some simple branch relaxing.
1997-01-29 16:46:31 +00:00
Ian Lance Taylor
39bb58e0ad * config/tc-mips.c (append_insn): Give an error for jumps to a
misaligned address.
1997-01-28 21:14:37 +00:00
Ian Lance Taylor
3b320c48cf * config/tc-mips.c (md_apply_fix): Make a branch to an odd address
an error rather than a warning.
1997-01-28 21:09:52 +00:00
Ian Lance Taylor
31a2c6ffd7 * config/tc-mips.c (md_convert_frag): If the user explicitly
requested an extended opcode, pass warn as true to mips16_immed.
1997-01-28 20:37:27 +00:00
Ian Lance Taylor
645cb4dc28 * config/tc-mips.c (mips16_ip): Handle a missing expression like
an explicit 0, so that explicitly extended instructions work
	correctly.
1997-01-28 20:28:18 +00:00
Ian Lance Taylor
0192b099bd * ecoff.c (ecoff_build_symbols): Don't generate a local ECOFF
symbol for a common symbol.
1997-01-27 22:41:43 +00:00
David Edelsohn
f7ab94418c Patch presumed to have been checked in awhile ago but wasn't.
Mon Nov 25 10:45:14 1996  Doug Evans  <dje@seba.cygnus.com>
	* write.c: Delete "ifndef md_relax_frag" around is_dnrange.
	(relax_segment, case rs_org): Move code inside braces.  Move locals
	target,after inside too.
	(relax_segment, case rs_machine_dependent): Guts moved to ...
	(relax_frag): New function.
	Call md_prepare_relax_scan if defined.
1997-01-22 18:41:50 +00:00
Ian Lance Taylor
b3a64736a1 * config/tc-mips.c (md_begin): Don't set SEC_ALLOC or SEC_LOAD for
the .reginfo or .MIPS.options section if configured for an
	embedded target.
1997-01-20 19:27:11 +00:00
J.T. Conklin
0ce48081b2 * config/tc-m68k.c (m68k_ip): Reject pc-relative addresses for the
'p' operand specifier.
1997-01-20 19:00:03 +00:00
J.T. Conklin
ffecfc8b60 * config/tc-m68k.c (HAVE_LONG_BRANCH): New macro, returns true for
m68k family cpus which support long branch addressing modes.
(m68k_ip, md_convert_frag_1, md_estimate_size_before_relax,
md_create_long_jump): Use it.
1997-01-20 18:47:48 +00:00
Ian Lance Taylor
c36a90ef65 * config/tc-mips.c (md_begin): Don't set interlocks for
mips_4650.
PR 11507.
1997-01-20 17:43:43 +00:00
Ian Lance Taylor
ad423373db * read.c (read_a_source_file): Make sure the symbol ends with
whitespace before checking whether the next character is '='.
PR 11461.
1997-01-15 18:52:53 +00:00
Ian Lance Taylor
03b240371f * config/tc-i386.c (sco_id): Moved from here...
* config/obj-elf.c (sco_id): ...to here.  Adding the identifier
	really is an SCO ELF specific thing, not just a SCO x86 specific
	thing.
1997-01-14 20:08:43 +00:00
Michael Meissner
4af93ad0dc Allow tic80-*-*, not just tic80-*-coff 1997-01-14 03:45:03 +00:00
Ian Lance Taylor
6468dabdec * read.c (emit_expr): Check for overflow of a negative value
correctly.
	* write.c (fixup_segment): Likewise.
	* config/obj-coff.c (fixup_segment): Likewise.
PR 11411.
1997-01-09 19:13:42 +00:00
Ian Lance Taylor
d703b5a783 * config/tc-m68k.c (struct label_line): Define.
(labels, current_label): New static variables.
	(md_assemble): Mark current_label as text, and clear it.
	(m68k_frob_label): New function.
	(m68k_flush_pending_output): New function.
	(m68k_frob_symbol): New function.
	* config/tc-m68k.h (tc_frob_label): Define.
	(md_flush_pending_output): Define.
	(tc_frob_symbol): Don't warn, just call m68k_frob_symbol.
	(tc_frob_coff_symbol): Likewise.
PR 11417.
1997-01-09 18:18:01 +00:00
Ian Lance Taylor
8ff750011b * read.c (read_a_source_file): When defining a macro in MRI mode,
don't add the symbol to the symbol table.
PR 11423.
1997-01-09 17:10:09 +00:00
Jeff Law
7899862954 * config/tc-mn10300.c (tc_gen_reloc): Handle sym1-sym2 fixups
here since fixup_segment doesn't (linkrelax is set).
        * config/tc-mn10200.c (tc_gen_reloc): Likewise.
Should fix line # stabs & block scope stabs.
1997-01-07 18:27:20 +00:00
Jeff Law
62b2acbabf * config/tc-mn10200.c (md_assemble): Tweak fx_offset for pc-relative
relocs.
Relocs for the mn10200.
1997-01-06 22:25:05 +00:00
Jeff Law
ac866582d9 * config/tc-hppa.c (struct hppa_fix_struct): Steak fx_r_field's type
to avoid warnings with the native HP compiler.
        (fix_new_hppa): Similarly for the r_type argument.
        (pa_build_unwind_subspace, hppa_elf_mark_end_of_function): Enclose
        in an #if OBJ_ELF to keep gcc -Wall quiet.
        (md_apply_fix): Always initialize "result".
Minor maintenance.

        * config/tc-mn10200.c (md_assemble): Generate relocations.
mn10200 has relocs now!
1997-01-03 23:55:22 +00:00
Ian Lance Taylor
79811f6f41 Fri Jan 3 18:17:23 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* config/tc-m68k.c (s_even): Adjust the alignment of the current
	section.
1997-01-03 23:20:21 +00:00
Ian Lance Taylor
3df036e9d2 tipo 1997-01-03 23:15:44 +00:00
Ian Lance Taylor
9f94df3847 * config/obj-coff.c (yank_symbols): If tc_frob_coff_symbol is
defined, call it.
	* config/tc-m68k.c (tc_frob_symbol): Check whether text label is
	aligned to odd boundary.
	(tc_frob_coff_symbol): Define.
1997-01-03 22:41:26 +00:00
Ian Lance Taylor
8185fc28bd revert last patch 1997-01-03 22:27:24 +00:00
Ian Lance Taylor
ba8f9c0955 Fri Jan 3 17:10:33 1997 Richard Henderson <rth@tamu.edu>
* config/obj-elf.c (elf_file_symbol): When using ECOFF debugging,
	pass on the new file hook.

	* config/tc-alpha.c (alpha_fix_adjustable): Not quite the same as
	!alpha_force_relocation, as local LITERALs can be adjusted to be
	relative to the section.
1997-01-03 22:13:05 +00:00
Ian Lance Taylor
039d5a6040 * doc/as.texinfo (Set): Change parenthesized @xref to @pxref. 1997-01-03 18:02:55 +00:00
Ian Lance Taylor
de9df5fa1d * config/tc-m68k.h (tc_frob_label): Define to warn about a
misaligned text label.  Based on patch from Ronald F. Guilmette
 	<rfg@monkeys.com>.
1997-01-03 17:50:06 +00:00
Ian Lance Taylor
7b0688dff7 * macro.c (macro_expand_body): In MRI mode, just copy a single &. 1997-01-03 17:40:43 +00:00