Commit graph

31110 commits

Author SHA1 Message Date
Jakub Jelinek
db6751f2e7 * elf-bfd.h (enum elf_reloc_type_class): New.
(struct elf_backend_data): Add elf_backend_reloc_type_class.
	(_bfd_elf_reloc_type_class): New.
	* elfxx-target.h (elf_backend_reloc_type_class): Define.
	(elfNN_bed): Add elf_backend_reloc_type_class.
	* elf.c (_bfd_elf_reloc_type_class): New.
	* elf32-i386.c (elf_i386_check_relocs): Set DF_TEXTREL if the reloc
	is against read-only section.
	(elf_i386_size_dynamic_sections): Use DF_TEXTREL flag instead of
	looking up section names for DT_TEXTREL.
	(elf_i386_reloc_type_class): New.
	(elf_backend_reloc_type_class): Define.
	* elf32-sparc.c (elf32_sparc_check_relocs): Set DF_TEXTREL if the
	reloc is against read-only section.
	(elf32_sparc_size_dynamic_sections): Use DF_TEXTREL flag instead of
	looking up section names for DT_TEXTREL.
	(elf32_sparc_reloc_type_class): New.
	(elf_backend_reloc_type_class): Define.
	* elf64-sparc.c (sparc64_elf_check_relocs): Set DF_TEXTREL if the
	reloc is against read-only section.
	(sparc64_elf_size_dynamic_sections): Use DF_TEXTREL flag instead of
	looking up section names for DT_TEXTREL.
	(sparc64_elf_reloc_type_class): New.
	(elf_backend_reloc_type_class): Define.
	* elfxx-ia64.c (struct elfNN_ia64_link_hash_table): Add reltext field.
	(elfNN_ia64_hash_table_create): Clear ia64_info.
	(get_reloc_section): Set DF_TEXTREL if the reloc is against read-only
	section.
	(elfNN_ia64_size_dynamic_sections): Use ia64_info->reltext flag
	instead of looking up section names for DT_TEXTREL.
	(elfNN_ia64_reloc_type_class): New.
	(elf_backend_reloc_type_class): Define.
	* elflink.h (size_dynamic_sections): Add spare DT_NULL tags.
	(struct elf_link_sort_rela): New.
	(elf_link_sort_cmp1, elf_link_sort_cmp2, elf_link_sort_relocs): New.
	(elf_bfd_final_link): Call elf_link_sort_relocs.
	Convert one spare DT_NULL into DT_RELCOUNT resp. DT_RELACOUNT if
	necessary.

	* bfdlink.h (struct bfd_link_info): Add combreloc and
	spare_dynamic_tags fields.

	* emultempl/elf32.em (place_orphan): Place orphan .rel* sections
	into .rel.dyn resp. .rela.dyn if combreloc.
	(get_script): If .x linker script is equal to .xn, only put it
	once into the binary.
	Add .xc and .xsc scripts.
	(parse_args): Handle -z combreloc and -z nocombreloc.
	* scripttempl/elf.sc (.rela.sbss): Fix a typo.
	For .xc and .xsc scripts put all .rel* or .rela* input sections
	but .rel*.plt and PLT-like sections into .rel.dyn resp. .rela.dyn.
	* genscripts.sh (GENERATE_COMBRELOC_SCRIPT): Set if SCRIPT_NAME
	is elf.
	Strip trailing whitespace from script.
	Generate .xc and .xsc scripts if requested.
	* ldmain.c (main): Initialize link_info.combreloc and
	link_info.spare_dynamic_tags.
	* lexsup.c (OPTION_SPARE_DYNAMIC_TAGS): Define.
	(ld_options): Add --spare-dynamic-tags option.
	(parse_args): Likewise.
	* ld.texinfo: Document -z combreloc and -z nocombreloc.
	* ldint.texinfo: Document .xc and .xsc linker scripts.
	* NEWS: Add notes about -z combreloc and SHF_MERGE.
2001-08-23 15:14:18 +00:00
DJ Delorie
da4d4077bc merge from gcc 2001-08-23 14:51:49 +00:00
Nick Clifton
7e3b3466d0 No corefile support for x86-bsdi systems 2001-08-23 14:33:50 +00:00
Andreas Jaeger
355d475e91 * opcodes/s390-opc.c: Add "low or high" and "not low or high"
branch instructions for gcc 3.0.
	* opcodes/s390-opc.txt: Likewise.
2001-08-23 06:38:56 +00:00
Andrew Cagney
701c159d91 Add TYPE_FLOATFORMAT(). 2001-08-23 01:09:38 +00:00
gdbadmin
dcf762a12e *** empty log message *** 2001-08-23 00:00:02 +00:00
DJ Delorie
f080c76dc0 merge from gcc 2001-08-22 22:55:38 +00:00
Thiemo Seufer
d1bdd336d4 * readelf.c (get_machine_flags): Add detection of EF_MIPS_UCODE. 2001-08-22 18:42:07 +00:00
H.J. Lu
63d069c06f 2001-08-22 H.J. Lu <hjl@gnu.org>
* emulparams/elf32fr30.sh: Add a newline.
2001-08-22 16:00:25 +00:00
Nick Clifton
26cd54bf89 Add missing comma 2001-08-22 08:43:00 +00:00
DJ Delorie
f01b59ed06 merge from gcc 2001-08-22 02:12:15 +00:00
gdbadmin
2bf63d0283 *** empty log message *** 2001-08-22 00:00:04 +00:00
DJ Delorie
4f6fbb1acd * coff-go32.c: Set the alignment of dwarf2 linkonce sections to 0.
* coff-stgo32.c: Likewise.
2001-08-21 22:39:47 +00:00
DJ Delorie
a7bda527f6 * coff-go32.c: Make DWARF2 sections use an alignment of 0.
* coff-sto32.c: Likewise.
2001-08-21 20:23:38 +00:00
Keith Seitz
99a6d8ba22 * printcmd.c (print_insn): Use the given stream for
output.
2001-08-21 19:25:40 +00:00
Nick Clifton
453abe3171 Return if target is `vax-*-ultrix*'.
Continue with other tests when there is a compilation error.
2001-08-21 16:04:37 +00:00
H.J. Lu
0d38c7701d 2001-08-21 H.J. Lu <hjl@gnu.org>
* binutils-all/readelf.r: Updated for the readelf change.

	* binutils-all/readelf.r-64: New for the readelf change.
2001-08-21 15:54:16 +00:00
DJ Delorie
8e777d6aa9 merge from gcc 2001-08-21 15:19:19 +00:00
H.J. Lu
410f7a1290 2001-08-21 H.J. Lu <hjl@gnu.org>
* readelf.c (dump_relocations): Support ELF64 on 32bit hosts.
	(display_debug_info): Cast for 64bit hosts.
	(display_debug_frames): Likewise.
	(process_mips_specific): Likewise.
2001-08-21 15:08:38 +00:00
Andreas Jaeger
948f9114c9 * deffilep.y: Add missing prototypes.
* pe-dll.c: Likewise.
2001-08-21 11:42:57 +00:00
Andreas Jaeger
c32144ff6b * coffgrok.h: Add missing parameter for prototype of coff_grok.
* sysdump.c: Add missing prototypes.
	* srconv.c: Likewise.
	* unwind-ia64.c: Likewise.
	* coffdump.c: Likewise.

	* sysinfo.y: Print prototypes, include <ansidecl.h>.

	* coffgrok.c: Add missing prototypes, include libiberty.h instead
	of declaring xcalloc.
2001-08-21 10:02:27 +00:00
Andreas Jaeger
279a96ca39 * mips-dis.c: Add missing prototypes.
* a29k-dis.c: Likewise.
	* arc-dis.c: Likewise.
	* ia64-opc.c: Likewise.
2001-08-21 08:51:12 +00:00
Andreas Jaeger
7fa108a4d5 * i960-dis.c: Add parameters for prototypes
(ctrl): Add unused attributes.
	(cobr): Likewise.
	(put_abs): Likewise.

	* mips-dis.c: Add missing prototypes.
	* a29k-dis.c: Likewise.
	* arc-dis.c: Likewise.
	* ia64-opc.c: Likewise.

	* s390-dis.c: Add missing prototypes.
	(init_disasm): Remove unused attribute since the parameter is
	used.
2001-08-21 08:42:28 +00:00
Andreas Jaeger
5a65713f64 * coff-sparc.c: Add missing prototypes.
* elf32-s390.c: Likewise.
	* elf32-i960.c: Likewise.
	* aout-target.h: Likewise.
2001-08-21 08:40:23 +00:00
Andrew Cagney
a37b3cc06e * arm-tdep.c (convert_from_extended, convert_to_extended): Delete
assembler version of function.
(convert_from_extended, convert_to_extended): Rewrite. Use
floatformat_to_doublest, floatformat_from_doublest,
floatformat_arm_ext_big, floatformat_arm_ext_littlebyte_bigword.
(arm_push_arguments): Use extract_floating and store_floating to
perform floating point conversions.
(SWAP_TARGET_AND_HOST): Delete macro.
* arm-linux-tdep.c (arm_linux_push_arguments): Use
extract_floating and store_floating to perform floating point
conversions.
2001-08-21 04:31:32 +00:00
Thiemo Seufer
1ff54a84b4 * tc_mips.c (md_begin): Warn about incompatibility between -march=FOO
and -mipsN option, continue with default ISA.
2001-08-21 01:13:05 +00:00
H.J. Lu
4e89ac30f3 2001-08-20 H.J. Lu <hjl@gnu.org>
* elf-bfd.h (elf_obj_tdata): Add num_section_syms.
	(elf_num_section_syms): New for num_section_syms.

	* elf.c (elf_map_symbols): Set num_section_syms.
	(_bfd_elf_symbol_from_bfd_symbol): Check num_section_syms for
	the section symbol index.
2001-08-21 01:02:41 +00:00
Thiemo Seufer
a6bacc8047 * config/tc-mips.c (md_parse_option): #ifdef the
traditional/non-traditional names as it is done in mips_target_format.
2001-08-21 00:59:48 +00:00
Andrew Cagney
1c72f9b0c4 * gdbtypes.h (struct type): Clarify meaning of field ``length''. 2001-08-21 00:24:58 +00:00
Richard Henderson
ca3f769514 * config/tc-alpha.h (MD_APPLY_FIX3): Define.
* config/tc-alpha.c (md_apply_fix3): Rename from md_apply_fix;
        use seg parameter instead of now_seg.
2001-08-21 00:22:23 +00:00
Andrew Cagney
eb82859947 * floatformat.h (floatformat_arm_ext): Document as deprecated.
(floatformat_arm_ext_big, floatformat_arm_ext_littlebyte_bigword)
(floatformat_ia64_spill_little, floatformat_ia64_quad_little)
(floatformat_ia64_spill_big, floatformat_ia64_quad_big)
(floatformat_m88110_harris_ext): Declare.
2001-08-21 00:20:07 +00:00
gdbadmin
7823178d24 *** empty log message *** 2001-08-21 00:00:05 +00:00
Nick Clifton
28db233b6c Never select the generic has table creator. All elf backends need elf specific
fields in the hash table.
2001-08-20 14:28:46 +00:00
Alan Modra
82208dc522 * config.sub, config.guess: Import latest from subversions. 2001-08-20 03:29:21 +00:00
Alan Modra
2af022575a * ldlang.c (insert_pad): Fix typos in last patch. 2001-08-20 03:09:07 +00:00
Alan Modra
bba1a0c062 * ldlang.c: When traversing lang_statement_union_type lists,
consistently use "header.next" rather than "next".
	* mpw-eppcmac.c: Likewise.
	* emultempl/beos.em: Likewise.
	* emultempl/hppaelf.em: Likewise.
	* emultempl/pe.em: Likewise.
	* ldlang.h (union lang_statement_union): Remove "next" field.
2001-08-20 02:14:50 +00:00
Alan Modra
c0c330a70f * ldlang.c (insert_pad): Use offsetof macro.
(lang_size_sections): Always neuter padding statements.
	* emultempl/hppaelf.em (hppaelf_delete_padding_statements): Delete.
2001-08-20 01:21:08 +00:00
Alan Modra
ae7fb08f1a * pe-dll.c (pe_dll_fill_sections): Correct type of "relax" param
passed to lang_size_sections.
	(pe_exe_fill_sections): Likewise.
	* emultempl/pe.em (output_prev_sec_find): Copied from elf32.em.
	(gld_${EMULATION_NAME}_place_orphan): Merge from elf32.em.
2001-08-20 00:22:41 +00:00
gdbadmin
415b1b1387 *** empty log message *** 2001-08-20 00:00:02 +00:00
Alan Modra
ba3ef70e78 * archive.c (offsetof): Remove define.
* elf.c: Likewise.
	* oasys.c: Likewise
	* sysdep.h (offsetof): Define.
2001-08-19 23:42:47 +00:00
Andrew Cagney
fe766f112c * mi0-var-block.exp, mi0-stack.exp, mi0-simplerun.exp,
mi0-regs.exp, mi0-watch.exp, mi0-stepi.exp, mi0-until.exp,
mi0-return.exp, mi0-read-memory.exp, mi0-eval.exp,
mi0-disassemble.exp, mi0-console.exp, mi-watch.exp,
mi-var-display.exp, mi-var-cmd.exp, mi-var-child.exp,
mi-until.exp, mi-var-block.exp, mi-stepi.exp, mi-stack.exp,
mi-simplerun.exp, mi-return.exp, mi-regs.exp, mi-read-memory.exp,
mi-disassemble.exp, mi-eval.exp, mi-console.exp: Replace pattern
matching thread=0 with one to also match thread=1.
Fix PR gdb/190.
2001-08-19 01:23:43 +00:00
Andrew Cagney
6a90e1d0a6 * lib/mi-support.exp (mi_gdb_start): If a remote target, use the
CLI jump command to start it.
(mi_run_to_main): Fail immediatly when unexpected output.
2001-08-19 01:02:58 +00:00
Andrew Cagney
e866d0e845 * mi0-until.exp, mi-until.exp, mi0-stepi.exp, mi-stepi.exp,
mi-simplerun.exp, mi0-simplerun.exp, mi0-return.exp,
mi-return.exp, mi0-console.exp, mi-console.exp: Recognize an
unexpected run-to-main response. Report as a fail.
2001-08-19 00:37:28 +00:00
gdbadmin
992ddc6b09 *** empty log message *** 2001-08-19 00:00:04 +00:00
DJ Delorie
562c4c36aa merge from gcc 2001-08-18 23:47:14 +00:00
Andrew Cagney
1759b3c3d8 * lib/mi-support.exp (mi_gdb_start): Move call to sid_start to
beginning of function.  Fix PR gdb/191.
2001-08-18 21:34:28 +00:00
H.J. Lu
e87a02842a 2001-08-18 H.J. Lu <hjl@gnu.org>
* config/tc-mips.c (show): Add the missing prototype.
2001-08-18 18:03:24 +00:00
Thiemo Seufer
fb1b323293 * config/tc-mips.c (S_EX_*): New enum for my_getSmallExpression()
return values.
	(mips_ip): Use the new return values instead of characters. Add
	support for %higher and %highest.
	(LP): Remove.
	(RP): Remove.
	(my_getSmallExpression): Make parsing case insensitive and more
	reliable. Add support for %higher and %highest. Further support	to
	parse %gprel and %neg is implemented but currently deactivated.
2001-08-18 17:24:52 +00:00
Alan Modra
fab80407fe * emultempl/aix.em: Formatting fixes. 2001-08-18 15:42:26 +00:00
Alan Modra
b3327aadfd * ldlang.c (insert_pad): Make use of an existing pad statement if
available.  Move code calculating alignment, adjusting section
	alignment power, and adjusting dot to ..
	(size_input_section): .. here.  Remove unused relax param.
	(lang_size_sections): Change boolean `relax' param to boolean *.
	Adjust call to size_input_section.  Make use of insert_pad to
	place pad after the assignment statement.  If relaxing, zap
	padding statements.
	(reset_memory_regions): Reset output_bfd section sizes too.
	(relax_again): Move to..
	(lang_process): ..here.  Adjust call to lang_size_sections, and
	remove duplicated code.
	* ldlang.h (lang_size_sections): Change `relax' param to boolean *.
2001-08-18 14:54:26 +00:00