Commit graph

2287 commits

Author SHA1 Message Date
Ian Lance Taylor
aa8a6656ee * config/m68k-parse.y (yylex): In MRI mode, '@' can start an octal
number.
	* expr.c (operand): Handle MRI suffixes after unadorned 0.
1995-11-16 17:51:35 +00:00
Ken Raeburn
da9b55af46 version 2.6 1995-11-16 09:58:27 +00:00
Ken Raeburn
7b889f5eed * config/obj-coff.c (write_object_file): Change use of md_do_align to pass a
pointer rather than a fill value, to match other uses.

* config/tc-ns32k.h (TC_FIX_TYPE): Add missing semicolon.
1995-11-16 05:38:58 +00:00
Ken Raeburn
46618ae6e7 move md_end use, and make use of it in cpu back ends. clean up empty, unused
md_end functions.

i386 changes from Alan Modra for using multi-byte sequences instead of
single nops for code alignment.
1995-11-15 10:56:07 +00:00
Stan Shebs
75d1d87aa1 Keep te-macos.h. 1995-11-14 04:46:32 +00:00
Stan Shebs
51bc513e4e * configure.in (ppc-*-macos*, ppc-*-mpw*): New configurations.
* configure: Update.
	* mpw-make.sed: Reorder commands to make sed happier.
	* config/te-macos.h: New file.
	* config/tc-ppc.h (TARGET_FORMAT): Set correctly for PowerMac.
1995-11-14 04:45:54 +00:00
Jeff Law
863fe9d059 * gas/hppa/unsorted/brlenbug.s: New test.
* gas/hppa/unsorted/unsorted.exp: Run it.
1995-11-13 04:31:25 +00:00
Jeff Law
8b39c5df0e * config/tc-hppa.c (pa_ip): Fix off-by-2 bug in length check for
conditional branches.
        (md_apply_fix): Likewise.
1995-11-13 04:17:57 +00:00
Victoria Mixon
0e68864241 references to pesch@cygnus.com changed to doc@cygnus.com 1995-11-10 19:28:36 +00:00
Ian Lance Taylor
a9a675966b * config/tc-a29k.c (md_apply_fix): Warn if an attempt is made to
generate a reloc which the linker will not handle correctly.  Fix
	overflow checking--R_IREL is 18 bits, not 17.
1995-11-09 21:15:10 +00:00
Ian Lance Taylor
a071b8e9b3 * config/obj-coff.c (fixup_segment): Don't subtract md_pcrel_from
from a PC relative reloc if TC_A29K.
1995-11-09 02:28:57 +00:00
Ian Lance Taylor
1f264bd5a5 * config/tc-a29k.c (line_separator_chars): Restore '@'. Existing
code depends upon it.
1995-11-09 02:26:59 +00:00
Ian Lance Taylor
6a649eda40 * config/tc-a29k.c (md_operand): Handle $float, $double, and
$extend.  Based on code from Eric Freudenthal
	<freudenthal@nyu.edu>.
	* config/tc-a29k.h (LEX_DOLLAR): Define.
	* read.c (LEX_DOLLAR): Define if not defined.
	(lex_type): Use LEX_DOLLAR.
1995-11-09 01:01:44 +00:00
Ian Lance Taylor
6364a18837 Wed Nov 8 16:38:14 1995 Eric Freudenthal <freudenthal@nyu.edu>
* configure.in (a29k-nyu-sym1): New target, just like other a29k
	targets.
1995-11-08 21:39:38 +00:00
Ian Lance Taylor
0fa6f8f66a * config/obj-coff.c (c_dot_file_symbol): Cast xmalloc return. 1995-11-08 16:39:28 +00:00
Ian Lance Taylor
eec2cfefb2 * config/tc-alpha.c: Undefine inline if not __GNUC__.
(md_pseudo_table): Don't define "extern".
1995-11-06 23:52:27 +00:00
Ian Lance Taylor
a3d1c56107 * config/tc-ppc.c (ppc_biei): Force symbol into text_section. 1995-11-05 04:54:52 +00:00
Ian Lance Taylor
df7504dc52 * config/tc-ppc.c (md_show_usage): Put backslash at end of line. 1995-11-04 05:52:15 +00:00
Ian Lance Taylor
36e80ac6ee * macro.c (macro_expand_body): Don't warn about == with a
nonexistent parameter, in case it is in a comment field.
1995-11-03 20:53:44 +00:00
Ian Lance Taylor
07d012f66c * as.c (main): On TC_A29K, call macro_init with macro_alternate
set to 1.
	* macro.c (get_any_string): Don't keep quotes if macro_strip_at is
	set, even if macro_alternate is set.
	(get_apost_token): If macro_strip_at, only skip kind if it is '@'.
	(sub_actual): If macro_strip_at, and kind is '@', don't look up
	the token unless it ended in '@'.
	* config/tc-a29k.c (line_separator_chars): Remove '@'.
	* doc/c-a29k.texi: Document macro usage on A29K.
1995-11-03 18:31:25 +00:00
Ian Lance Taylor
a132c404b6 * gas/m68k/link.s: Use "&" instead of "#" for immediate values.
* gas/m68k/fmoveml.s, gas/m68k/fmoveml.d: New test.
	* gas/m68k/all.exp: Run it.
1995-11-03 18:10:38 +00:00
Ian Lance Taylor
01f108bc4a x 1995-11-03 04:13:58 +00:00
Ian Lance Taylor
dae9b93010 * gas/m68k/link.s, gas/m68k/link.d: New test.
* gas/m68k/all.exp: Run it.
1995-11-03 04:12:45 +00:00
Ian Lance Taylor
a75f31ce1b Wed Nov 1 15:17:02 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
* configure.in (m88k-motorola-sysv*): New target.
	* configure: Rebuild.
	* config/te-delta88.h: New file.
	* config/obj-coff.c (write_object_file): Use md_do_align if it is
	defined.
	* config/tc-m88k.h (SUB_SEGMENT_ALIGN): Define.
	(md_do_align): Define.
	* config/tc-m88k.c: Include "subsegs.h".
	(m88k_do_align): New function.

	* config/te-delta.h (STRIP_UNDERSCORE): Don't define.
	(COFF_NOLOAD_PROBLEM): Define.
	(LOCAL_LABELS_DOLLAR, LOCAL_LABELS_FB): Define.
1995-11-03 03:58:09 +00:00
Ken Raeburn
7954cc14d9 * config/tc-i386.c (md_assemble): For a jump instruction with non-constant
target, require 7 available bytes in the current frag, not 6.
1995-11-01 21:14:44 +00:00
Ian Lance Taylor
b629f62767 * config/tc-ppc.c (ppc_lglobl): Do the right thing. 1995-11-01 00:00:47 +00:00
Fred Fish
d033806fda * config/obj-elf.h: Include bfd/elf-bfd.h rather than
bfd/libelf.h.
1995-10-31 23:40:03 +00:00
Ian Lance Taylor
59c80ca243 Tue Oct 31 16:34:28 1995 David Mosberger-Tang <davidm@azstarnet.com>
* ecoff.c (ecoff_frob_symbol): Warn about weak common symbols.
1995-10-31 23:30:21 +00:00
Ian Lance Taylor
7ab1edc8f0 * config/tc-ppc.c (ppc_bb): Call SF_SET_PROCESS.
(ppc_eb): Likewise.  Set the storage class to C_BLOCK, not C_FCN.
	(ppc_frob_symbol): Don't change C_BLOCK symbols to C_HIDEXT.
	* config/obj-coff.c (coff_frob_symbol): Don't call
	SA_SET_SYM_ENDNDX with the current symbol; call it with the next
	one.  If OBJ_XCOFF, try to figure out whether the symbol is going
	to be dropped.
1995-10-31 22:55:22 +00:00
Ian Lance Taylor
d7b2038fac Tue Oct 31 16:34:28 1995 David Mosberger-Tang <davidm@azstarnet.com>
* configure.in (alpha-*-linux*): Use ecoff.
	* configure: Rebuild.
	* ecoff.c (ecoff_directive_extern): New function.
	(ecoff_directive_weakext): New function.
	(ecoff_build_symbols): Handle weak symbols.
	(ecoff_setup_ext): Likewise.
	* ecoff.h (ecoff_directive_extern): Declare.
	(ecoff_directive_weakext): Declare.
	* symbols.c (S_IS_WEAK): New function.
	* symbols.h (S_IS_WEAK): Declare.
	* config/obj-ecoff.c (obj_pseudo_table): Add "extern" and
	"weakext".
	* config/tc-mips.c (mips_pseudo_table): Remove "extern".
	(s_extern): Remove.
1995-10-31 21:41:59 +00:00
Ian Lance Taylor
0e3dd9a071 * config/tc-ppc.c (ppc_frob_symbol): Set BSF_NOT_AT_END for
symbols with csect aux entries.
1995-10-31 20:22:04 +00:00
Ian Lance Taylor
31751d9d3e * config/tc-ppc.c (md_pseudo_table): Add "bc" and "ec".
(ppc_stab_symbol): New static variable.
	(ppc_change_csect): Check that ppc_toc_csect is not NULL.
	(ppc_stabx): Set ppc_stab_symbol around call to symbol_make.  Set
	sy_tc.real_name to the stab string.
	(ppc_bc, ppc_ec): New static functions.
	(ppc_canonicalize_symbol_name): If ppc_stab_symbol is set, don't
	do anything.
	(ppc_symbol_new_hook): If ppc_stab_symbol is set, don't look for a
	suffix.
1995-10-31 19:16:02 +00:00
Ian Lance Taylor
cbdf59ad43 * input-scrub.c (input_scrub_push): Reset sb_index. 1995-10-31 18:30:02 +00:00
Ian Lance Taylor
91123dbe02 * listing.c (listing_newline): Don't create a frag in the absolute
section.
1995-10-30 23:30:24 +00:00
Ian Lance Taylor
df72d2a576 * config/tc-ppc.c (md_pseudo_table): Add "data" and "text".
(ppc_csect): Move most of the code to ppc_change_csect, and call
	it.
	(ppc_change_csect): New static function, taken from ppc_csect.
	(ppc_section): New static function.
	(ppc_saw_abs): New static varable.
	(ppc_frob_symbol): Create aux entry for absolute symbols.  Warn if
	a symbol has no csect.
	(ppc_adjust_symtab): New function.
	* config/tc-ppc.h (tc_adjust_symtab): Define if OBJ_XCOFF.
	(ppc_adjust_symtab): Declare if OBJ_XCOFF.
1995-10-28 05:50:14 +00:00
Ian Lance Taylor
73255941ff * symbols.c (symbol_find_or_make): Change name to be const.
* symbols.h (symbol_find_or_make): Update declaration.
1995-10-28 05:05:46 +00:00
Ken Raeburn
9bfaf1b952 doc fixes from Roland 1995-10-26 23:48:41 +00:00
David Edelsohn
ae143278fc * tc-arm.c (do_ldst): Assemble ldr/str r0, [r1] as a pre-increment
instruction.
1995-10-26 18:46:28 +00:00
Per Bothner
270433ccae * Makefile.in (diststuff): Also make info.
(maintainer-clean realclean):  Also make clean-info.
1995-10-25 18:59:59 +00:00
Jeff Law
da533085e5 Document .nsubspa. 1995-10-24 21:27:44 +00:00
Jeff Law
18a1140191 * config/tc-hppa.c (md_pseudo_table): Add new ".nsubspa" opcode.
(pa_subspace): For ".nsubspa", always create a new subspace
        with the given attributes, even if one already exists with the
        same name.

So we can put every function into its own $CODE$ subspace.
1995-10-24 21:26:51 +00:00
Michael Meissner
96fe71e1d5 Fix PR 8255 1995-10-24 18:59:05 +00:00
Jeff Law
97a010ff42 * gas/hppa/basic/basic.exp: Test lci and syncdma instructions.
* gas/hppa/basic/system.s: Corresponding changes.
1995-10-24 17:00:11 +00:00
Ken Raeburn
1d75481b33 changes for input file open error, not printing filename when not available 1995-10-23 20:40:09 +00:00
Ken Raeburn
2000c64319 If no filename is available (because we haven't opened the input file yet),
don't try to print one.
1995-10-23 20:39:44 +00:00
Jackie Smith Cashion
c625fc23ba Added command-line support for NEC VR4100, to allow support for
4100-specific instructions.
1995-10-23 11:20:02 +00:00
Ken Raeburn
3366a224eb obstack-per-frchain changes
stabs.c caching changes
obstack chunksize changes
1995-10-18 21:23:09 +00:00
Ken Raeburn
d19dcb6715 Use one active frag and one obstack per frag chain:
* frags.c (frags): Variable deleted.
(frag_alloc): New function.
(frag_grow, frag_more, frag_variant, frag_now_fix, frag_append_1_char): Refer
to frchain_now->frch_obstack instead of frags variable.
(frag_new): Ditto.  Verify that frch_last and frag_now match on entry and exit,
and that old frag_now has non-zero type.  Replace "know" uses with "assert".
Use frag_alloc instead of mucking with obstack alignment.
* frags.h (frags): Declaration deleted.
* subsegs.h (struct frchain): Add new field frch_frag_now.
* subsegs.c (frchains, dummy_frag, absolute_frchain): New static variables.
(subsegs_begin): Initialize frchains obstack.  Under gcc, don't give it any
stricter alignment than frchainS structures need.  Do not initialize frags
obstack.  Set frag_now to point to dummy_obstack.  Initialize absolute_frchain.
(subseg_set_rest): Save and restore frag_now in frch_frag_now field of
frchainS.  Don't create new frags on section switch, and use frag_alloc when
creating a new frag chain.  For absolute section, set frchain_now to
absolute_frchain.  Verify that frch_last and frag_now match on entry and exit.
Initialize per-chain obstack, and under gcc, set required alignment to that
needed by fragS structure.
* write.c (chain_frchains_together_1): Verify fr_type is nonzero.

In one test case of Mike's (i386-linux, over 300K lines of .s code with lots
of stabs records), run time and memory use are reduced by about 1/3.

Might introduce some problems in cases that use the frag obstacks in unusual
ways.  Test suite does pass for i386-linux and sparc-solaris targets though.
1995-10-18 21:21:38 +00:00
Ken Raeburn
de5ebe2eba frag/obstack handling in tc-*.c; ignore -g for Alpha 1995-10-18 17:33:24 +00:00
Ken Raeburn
dd1a53167c keep testsuite when doing "make distclean" 1995-10-18 17:25:31 +00:00