Age | Commit message (Collapse) | Author | Files | Lines |
|
number.
* expr.c (operand): Handle MRI suffixes after unadorned 0.
|
|
|
|
pointer rather than a fill value, to match other uses.
* config/tc-ns32k.h (TC_FIX_TYPE): Add missing semicolon.
|
|
md_end functions.
i386 changes from Alan Modra for using multi-byte sequences instead of
single nops for code alignment.
|
|
|
|
* 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.
|
|
* gas/hppa/unsorted/unsorted.exp: Run it.
|
|
conditional branches.
(md_apply_fix): Likewise.
|
|
|
|
generate a reloc which the linker will not handle correctly. Fix
overflow checking--R_IREL is 18 bits, not 17.
|
|
from a PC relative reloc if TC_A29K.
|
|
code depends upon it.
|
|
$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.
|
|
* configure.in (a29k-nyu-sym1): New target, just like other a29k
targets.
|
|
|
|
(md_pseudo_table): Don't define "extern".
|
|
|
|
|
|
nonexistent parameter, in case it is in a comment field.
|
|
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.
|
|
* gas/m68k/fmoveml.s, gas/m68k/fmoveml.d: New test.
* gas/m68k/all.exp: Run it.
|
|
|
|
* gas/m68k/all.exp: Run it.
|
|
<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.
|
|
target, require 7 available bytes in the current frag, not 6.
|
|
|
|
bfd/libelf.h.
|
|
* ecoff.c (ecoff_frob_symbol): Warn about weak common symbols.
|
|
(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.
|
|
* 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.
|
|
symbols with csect aux entries.
|
|
(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.
|
|
|
|
section.
|
|
(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.
|
|
* symbols.h (symbol_find_or_make): Update declaration.
|
|
|
|
instruction.
|
|
(maintainer-clean realclean): Also make clean-info.
|
|
|
|
(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.
|
|
|
|
* gas/hppa/basic/system.s: Corresponding changes.
|
|
|
|
don't try to print one.
|
|
4100-specific instructions.
|
|
stabs.c caching changes
obstack chunksize changes
|
|
* 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.
|
|
|
|
|