Commit graph

23320 commits

Author SHA1 Message Date
Ian Lance Taylor
7617a82283 * scripttempl/pe.sc: Use SORT to sort sections appropriately.
* emultempl/pe.em (sort_by_file_name): Remove.
	(sort_by_section_name): Remove.
	(sort_sections_1, sort_sections): Remove.
	(gld_${EMULATION_NAME}_before_allocation): Don't call
	sort_sections.
	(hold_section, hold_section_name): New static variables.
	(hold_use, hold_text, hold_rdata, hold_data, hold_bss): Likewise.
	(gld_${EMULATION_NAME}_place_orphan): Rewrite.  Look for a good
	place to put the section.  Align the section.  Sort the input
	sections by name.
	(gld_${EMULATION_NAME}_place_section): New static function.
1998-07-03 21:52:58 +00:00
Ian Lance Taylor
6ccce8e82b * ldlang.c (wild_sort): When sorting by file name, sort by archive
name first.
1998-07-03 21:52:43 +00:00
Ian Lance Taylor
4d315b8660 * expr.c (op_encoding): Make const.
(expr_set_precedence): New function.
	(expr_begin): Don't set operator rankings, just call
	expr_set_precedence.
	* expr.h (expr_set_precedence): Declare.
	* read.c (s_mri): Call expr_set_precedence.
1998-07-03 19:55:44 +00:00
Ian Lance Taylor
115bb25d15 add missing word 1998-07-03 19:28:00 +00:00
Ian Lance Taylor
5b6ca067a8 * emultempl/pe.em (set_pe_subsystem): Don't call
ldlang_add_undef.
	(gld_${EMULATION_NAME}_after_parse): New static function.
	(ld_${EMULATION_NAME}_emulation): Use new after_parse function
	rather than after_parse_default.
1998-07-03 18:40:38 +00:00
Ian Lance Taylor
749c81f717 comment fixes 1998-07-03 18:40:17 +00:00
Ian Lance Taylor
b2529df1be * ldgram.y (extern_name_list): Do not require symbols to be
separated by commas.
	(ifile_p1): Add EXTERN.
	* ldlex.l: Accept EXTERN in BOTH and SCRIPT mode as well as MRI
	mode.
	* ld.texinfo (Options): Mention that EXTERN is equivalent to -u.
	(Miscellaneous Commands): Document EXTERN.
1998-07-03 18:25:46 +00:00
Ian Lance Taylor
369ee5df3e * elf.c (copy_private_bfd_data): Only set phdr_included oncde for
a PT_LOAD segment, rather than only setting it once for the entire
	file.

	* elf.c (_bfd_elf_make_section_from_shdr): When setting the LMA,
	rather than ignoring every phdr with a p_paddr of 0, ignore all
	the phdrs if they all have a p_paddr of 0.
1998-07-03 17:45:52 +00:00
Ian Lance Taylor
81db6a9e28 * stabs.c (_bfd_write_stab_strings): Check whether the .stabstr
section was discarded from the link.
1998-07-03 17:12:22 +00:00
Joern Rennecke
a83a26f74a Brought over from sh4-980527-branch:
Fix for execute/va-arg-5.c -Os -mrelax -m4-single failure:
	* coff-sh.c (sh_insn_uses_freg): Ignore lowest bit of register number.
1998-07-03 13:43:16 +00:00
Joern Rennecke
0ea9d7bc70 Brought over from sh4-980527-branch:
Fix for execute/921208-1.c -Os -mrelax -m4-single failure:
	* coff-sh.c (sh_insns_conflict): Load of fpscr conflicts with
	floating point operations.
1998-07-03 13:40:08 +00:00
Ken Raeburn
5c1c32cae5 * lib/gas-defs.exp (gas_init): Complain if target name isn't in canonical form. 1998-07-03 03:10:58 +00:00
Doug Evans
039fa2c847 * cgen-sim.h (CPU_SCACHE): Make size unsigned.
(CPU_SCACHE_HASH_MASK): New macro.
	(SCACHE_HASH_PC): Rewrite.
	* genmloop.sh (engine_resume_{full,fast}): Move some of hash
	computation out of main loop.
1998-07-03 00:14:49 +00:00
Doug Evans
1b9ec81e15 * m32r-opc.h (CGEN_MIN_INSN_SIZE): New #define. 1998-07-03 00:11:25 +00:00
Ian Lance Taylor
bf47f02283 * cofflink.c (_bfd_coff_link_input_bfd): Skip undefined global
function symbols.
1998-07-02 22:40:45 +00:00
Ian Lance Taylor
20489f152f * doc/as.texinfo (Statements): Remove paragraph discussing
continuing lines with a backslash.  This hasn't worked for years,
	if it ever did.
1998-07-02 20:25:45 +00:00
James Lemke
0a3ec14442 Add a test case for PR16213. 1998-07-02 20:20:32 +00:00
Ian Lance Taylor
57e66bdb83 Thu Jul 2 13:57:36 1998 Klaus Kaempf <kkaempf@rmi.de>
* makefile.vms: Update to build binutils/makefile.vms.  Add install
	target.
1998-07-02 19:03:37 +00:00
Ian Lance Taylor
66d4501431 Thu Jul 2 14:01:34 1998 Klaus Kaempf <kkaempf@rmi.de>
* configure.com: Add vax/vms support.
	* makefile.vms-in: Renamed from makefile.vms.  Add substitutions
	now done by configure.com.
1998-07-02 19:02:27 +00:00
Ian Lance Taylor
8e6950e33b Thu Jul 2 14:06:22 1998 Klaus Kaempf <kkaempf@rmi.de>
* obj-vms.c: Add C++ support with ctors/dtors sections.  Add weak
	symbol definitions.
	(Ctors_Symbols, Dtors_Symbols): New symbol chains.
	(ps_CTORS, ps_DTORS): New section types.
	(vms_fixup_xtors_section): New function
	(Ctors_Psect, Dtors_Psect): Define.
	(IS_GXX_XTOR): Define
	(global_symbol_directory): Change check of gxx_bug_fixed to 0.
	Filter static constructors/destructors and add to
	Ctors_Symbols/Dtors_Symbols chain.
	(vms_write_object_file): Write Ctors_Symbols/Dtors_Symbols to
	appropriate section.

        * tc-alpha.h (TARGET_FORMAT): Rename "evax-alpha" to "vms-alpha".
	* makefile.vms: Merge vax/vms support.
1998-07-02 18:55:33 +00:00
Ian Lance Taylor
cf6e014de7 rebuild 1998-07-02 18:55:13 +00:00
Ian Lance Taylor
0dc4c667ac Thu Jul 2 14:59:42 1998 Klaus Kaempf <kkaempf@rmi.de>
Merge of vax/vms (read-only) support
	* configure.com: Support Vax target.
	* makefile.vms: Support Vax target.
        * vms.h: Renamed from evax.h, merged vax/vms (read-only) support.
	* vms.c: Renamed from evax-alpha.c, merged vax/vms (read-only)
	support.
	* vms-hdr.c: Renamed from evax-emh.c, merged vax/vms (read-only)
	support.
	* vms-gsd.c: Renamed from evax-egsd.c, merged vax/vms (read-only)
	support.
	* vms-tir.c: Renamed from evax-etir.c, merged vax/vms (read-only)
	support.
	* vms-misc.c: Renamed from evax-misc.c, merged vax/vms (read-only)
	support.
	* libbfd.c (real_read): Use unbuffered read on VMS/Vax.
	* targets.c (bfd_target_ovax_flavour): New flavour.
	(vms_alpha_vec): Renamed from evax_alpha_vec.
	(vms_vax_vec): New.
	(target_vector): Update accordingly.
	* config.bfd (alpha*-*-*vms*): Use vms_alpha_vec, not
	evax_alpha_vec.
	(vax*-*-*vms*): New target.
	* Makefile.am: Update for renamed files.  Rebuild dependencies.
	* bfd-in2.h: Rebuild.
	* configure.in, Makefile.in, aclocal.m4: Rebuild.
1998-07-02 18:41:08 +00:00
Frank Ch. Eigler
8d3c21b3d4 * Belatedly bringing over PR 15850 patch from d30v branch.
Thu Jul  2 15:57:58 1998  Frank Ch. Eigler  <fche@cygnus.com>
	* breakpoint.c (resolve_sal_pc): Accept absence of innermost
	Lexical block for breakpoint resolution.
1998-07-02 17:30:21 +00:00
Dawn Perchik
3acd0db516 * mdebugread.c (parse_partial_symbols): Go ahead and read the .mdebug
section, but just don't add a 2nd minimal symbol if this is an .mdebug
        section in an ELF file.
1998-07-02 17:30:20 +00:00
Richard Henderson
5cc30c0a87 gc note 1998-07-02 06:23:44 +00:00
Richard Henderson
7e6566495b * config/obj-elf.c (obj_elf_vtable_inherit, obj_elf_vtable_entry): New.
(elf_pseudo_table): Add them.
        * config/tc-mips.c (mips_force_relocation): Force vtable relocs.
        (md_apply_fix): Accept them.
        (mips_fix_adjustable): Don't adjust them.
        (tc_gen_reloc): Mung BFD_RELOC_VTABLE_ENTRY for Rel.
        * config/tc-ppc.c (md_apply_fix3): Accept vtable relocs.
        * config/tc-ppc.h (TC_FORCE_RELOCATION_SECTION): Force vtable relocs.
        (tc_fix_adjustable): Don't adjust them.
1998-07-02 05:34:36 +00:00
Richard Henderson
71b012a810 * ld.h (args_type): Add gc_sections.
* ldgram.y (ldgram_had_keep, KEEP): New.
        (input_section_spec_no_keep): Rename from old input_section_spec.
        (input_section_spec): New.  Recognize KEEP.
        * ldlang.c (wild_section): Handle keep sections.
        (lang_gc_wild_section, lang_gc_wild_file, lang_gc_wild): New.
        (lang_gc_sections_1, lang_gc_sections): New.
        (lang_process): Invoke lang_gc_sections.
        (lang_add_wild): Add keep argument.  Update all callers.
        * ldlang.h (lang_wild_statement_struct): Add keep_sections.
        * ldlex.l (KEEP): Match it.
        * ldmain.c (main): Error on -r and --gc-sections.
        * lexsup.c: Add --gc-sections.

        * scripttempl/elf.sc: Merge .text.* etc sections appropriately.
        Mark startup sections with KEEP.
        * scripttempl/elfppc.sc: Likewise.

        * ld.texinfo: Update for --gc-sections and KEEP.
1998-07-02 02:52:31 +00:00
Doug Evans
5ea0771f4c * configure.in: configure cgen if --enable-cgen-maint.
* Makefile.in (ALL_MODULES,CLEAN_MODULES): Add all-cgen.
	(all-cgen): New rule.
	(all-opcodes,all-sim): Depend on all-cgen.
1998-07-02 02:10:29 +00:00
Doug Evans
1148b104ae * Makefile.in: cgen_maint -> CGEN_MAINT.
* configure.in: AC_SUBST cgen,cgendir.  No longer look for guile.
	* configure: Regenerate.
	* arch.c,arch.h,cpuall.h: Regenerate.
	* cpu.c,cpu.h,decode.c,decode.h,extract.c,model.c: Regenerate.
	* sem-switch.c,sem.c: Regenerate.
	* cpux.c,cpux.h,decodex.c,decodex.h,modelx.c,readx.c: Regenerate.
	* semx.c: Regenerate.
	* mloopx.in (icount): Moved here from genmloop.sh.
1998-07-02 01:42:38 +00:00
Ian Lance Taylor
7fc0b65fa2 * stabs.c (parse_stab_range_type): Handle 4 and 8 byte signed
integers with real upper bounds.  Handle a lower bound one larger
 	than the upper bound as a signed integer.  Handle 8 byte signed
	integers.
	(stab_demangle_template): Optionally return the demangled name of
	the template.
	(stab_demangle_qualified): Treat a template name as a tagged
	type.
	(stab_demangle_fund_type): Likewise.
1998-07-02 00:46:49 +00:00
Nick Clifton
9e7e5d5e5b Add support for changing LMA and VMA of sections/ 1998-07-02 00:06:49 +00:00
Doug Evans
6de2add29f * Make-common.in (SCHEME,SCHEMEFLAGS): Delete.
(CGENDIR,CGEN): New variables.
	(CGEN_VERBOSE): Renamed to CGENFLAGS.
	(cgen-arch,cgen-cpu,cgen-decode): Update.
	(CGEN_CPU_WRITE): New variable.
	(CGEN_CPU_SEMSW): -W -> -X.
	(CGEN_FLAGS_TO_PASS): Delete SCHEME.  Add CGEN,CGENFLAGS.
	* cgen.sh: Delete args scheme,schemeflags.  New arg cgen.

	* cgen-sim.h (RECORD_IADDR): Delete.
	* cgen-types.h (HOSTINT,HOSTUINT,HOSTPTR): New types.
	* genmloop.sh (engine_resume_{full,fast}): Delete icount.
1998-07-01 23:47:50 +00:00
Doug Evans
7c269afbb6 * Makefile.am (CGEN_CPU_PREFIX): New variable.
(cgen.o): Use it.
	* Makefile.in: Regenerate.
	* configure.in: AC_SUBST cgen_cpu_prefix.
	* configure: Regenerate.
1998-07-01 23:39:37 +00:00
Doug Evans
0499462e76 * Makefile.am (CGENDIR): Set via configure.
(CGEN): New variable.
	(CGENFILES): object.scm renamed to cos.scm.
	(run-cgen): Renamed from cgen.  stamp file renamed to stamp-$prefix.
	(stamp-m32r): Pass prefix to run-cgen.
	* Makefile.in: Regenerate.
	* cgen-asm.in: @arch@-opc.h renamed to @prefix@-opc.h.
	* cgen-dis.in: Ditto.
	* cgen-opc.in: Ditto.
	* cgen.sh: New args cgen,prefix.  Delete args scheme,schemeflags.
	* configure.in: AC_SUBST cgen,cgendir.  No longer look for guile.
	* configure: Regenerate.
	* m32r-asm.c,m32r-dis.c,m32r-opc.c,m32r-opc.h: Regenerate.
1998-07-01 23:31:27 +00:00
Nick Clifton
9eaac302dc Minor formatting improvements. 1998-07-01 23:30:34 +00:00
Jeff Law
ee61616c43 Tweak. 1998-07-01 23:15:55 +00:00
Jeff Law
0f7d73858c * am33.igen: New file with some am33 support.
Checking in work-to-date.
1998-07-01 23:13:14 +00:00
Jeff Law
de2adf7070 * mn10300_sim.h (FETCH24): Define.
* mn10300_sim.h: Add defines for some registers found on the AM33.
1998-07-01 23:11:59 +00:00
Doug Evans
8686807e30 * sim/m32r/hw-trap.ms: New testcase. 1998-07-01 22:57:07 +00:00
Nick Clifton
54760676b2 xfail ARM and Thumb coifftag test 1998-07-01 22:36:33 +00:00
Ian Lance Taylor
3b83ab769a fix indentation 1998-07-01 22:05:41 +00:00
Richard Henderson
1ff137652b "propogate" -> "propagate" 1998-07-01 21:53:34 +00:00
Doug Evans
9ae0ae657f * sim/sky/vureloc{.brn,-main.c,.dvpasm}: New files. 1998-07-01 21:37:10 +00:00
Ian Lance Taylor
9d68c1e137 * gas/ppc/simpshft.s: Add alignment so that it works on AIX.
* gas/ppc/simpshft.d: Change accordingly.  Only dump the .text
	section.
1998-07-01 21:32:44 +00:00
Ian Lance Taylor
70f549105f * coff-sh.c (sh_relax_delete_bytes): Correct address comparisons
when handling 32 bit immediate relocs.
	* elf32-sh.c (sh_elf_relax_delete_bytes): Likewise.
1998-07-01 21:03:27 +00:00
Jim Blandy
40d8aa2c1b *** empty log message *** 1998-07-01 20:51:19 +00:00
Doug Evans
6e6770c11c * gas/dvp/lower-2.[sd]: New testcase.
* gas/dvp/dvp.exp: Run it.
1998-07-01 20:50:44 +00:00
Ian Lance Taylor
c0dea852d9 * ltconfig: Update to correct AIX handling. 1998-07-01 20:45:45 +00:00
Joern Rennecke
d1a7caf901 I found that the relax failure for execute/930628-1.c is due to gas
incorrectly relaxing an out-of-range conditional branch with delay slot.
It turned:
                        bf.s    L6              (slot mov.l   r12,@(44,r0))
into:

   2c:  8f 01 a0 8b     bf.s    32 <_main+32>   (slot bra       L6)
   30:  00 09           nop
   32:  10 cb           mov.l   r12,@(44,r0)

	* config/tc-sh (COND_JUMP_DELAY, COND12_DELAY_LENGTH): Define.
	Changed all users of COND12_DELAY.
1998-07-01 20:42:42 +00:00
Jim Ingham
f3b86a30f9 Wed Jul 1 13:10:58 1998 Jim Ingham <jingham@cygnus.com>
* Moved gdbtk_hooks.c & gdbtk_cmds.c to gdbtk-hooks.c &
	gdbtk-cmds.c to comply with the gdb conventions.  Changed the
	configure & makefile to reflect the change...
1998-07-01 20:17:31 +00:00