Commit Graph

47746 Commits

Author SHA1 Message Date
Jakub Jelinek 40937810e1 2005-04-14 David S. Miller <davem@davemloft.net>
bfd/
	Add TLS support for 64-bit Sparc ELF.
	*  elf64-sparc.c (sparc64_elf_dyn_relocs,
	sparc64_elf_link_hash_entry, sparc64_elf_obj_tdata): New structs.
	(GOT_UNKNOWN, GOT_NORMAL, GOT_TLD_GD, GOT_TLD_IE,
	sparc64_elf_hash_entry, sparc64_elf_tdata,
	sparc64_elf_local_got_tls_type): New defines.
	(sparc64_elf_mkobject): New function.
	(sparc64_elf_link_hash_table): Add members for dynamic linker
	sections PLT, RELPLT, DYNBSS, and RELBSS.  Add tls_ldm_got
	uion to track TLS GOT references.  Add sym_sec to cache
	mappings from local sym to section.
	(link_hash_newfunc): New function.
	(sparc64_elf_bfd_link_hash_table_create): Rename to
	sparc64_elf_link_hash_table_create for consistency.
	Pass link_hash_newfunc to _bfd_elf_link_hash_table_init.
	(sparc64_elf_create_dynamic_sections): Initialize new section
	members of sparc64_elf_link_hash_table.  Only init srelbss
	if not-shared.
	(sparc64_elf_copy_indirect_symbol, sparc64_elf_tls_transition):
	New functions.
	(SPARC_NOP): Define.
	(sparc64_elf_build_plt, sparc64_elf_plt_entry_offset,
	sparc64_elf_plt_ptr_offset): Delete.
	(sparc64_plt_entry_build): New function to build PLT entries
	gradually instread of all at once at the end of linking.
	(sparc64_elf_check_relocs): Delete dynobj, sgot, and srelgot
	local vars.  Get them from sparc64_elf_hash_table instead.
	Check early on if r_symndx is in bounds.  Handle TLS transitions.
	Account for TLS GOT references and DF_STATIC_TLS, as needed.
	For TLS relocs, record the tls_type in either
	sparc64_elf_local_got_tls_type or sparc64_elf_hash_entry as
	appropriate.  For R_SPARC_TLS_{GD,LDM}_CALL, emit a reference
	to the __tls_get_addr symbol.  For PLT relocs, track references
	via h->plt.refcount.  When R_SPARC_{PC10,PC22,PC_HH22,PC_HM10,
	PC_LM22} and h not-NULL, set h->non_got_ref.  For global data
	symbol references, count the number of relocations needed for
	that symbol.  For default switch case, don't error, this lets
	the TLS relocs not explicitly handled by this function get
	accepted.
	(sparc64_elf_gc_mark_hook, sparc64_gc_sweep_hook): New functions.
	(sparc64_elf_adjust_dynamic_symbol): Remove dynobj local var, get
	it from sparc64_elf_hash_table.  Store the real PLT offset
	in h->plt.offset, and build PLT entries one at a time.  Also
	get .dynbss section pointer from htab.
	(allocate_dynrelocs, readonly_dynrelocs,
	sparc64_omit_section_dynsym): New functions.
	(sparc64_elf_omit_section_dynsym): Use these new functions as
	helpers.
	(dtpoff_base, tpoff): New functions.
	(sparc64_elf_relocate_section): Kill dynobj, sgot, and splt
	locals, get them from sparc64_elf_hash_table.  Handle TLS
	relocations and refcounting in main relocation loop.
	(sparc64_elf_finish_dynamic_symbol): Use
	sparc64_elf_link_hash_table.  Build PLT entries as we see
	them.  Handle TLS GOT relocations.
	(sparc64_elf_finish_dynamic_sections): Get sgot and dynobj
	from sparc64_elf_hash_table.  Initialize only PLT header
	not all entries since we not build PLT entries one by one.
	(elf_backend_copy_indirect_symbol, bfd_elf64_mkobject,
	elf_backend_gc_mark_hook, elf_backend_gc_sweep_hook,
	elf_backend_can_gc_sections, elf_backend_can_refcount): Define.
ld/testsuite/
	* ld-selective/sel-dump.exp: Do not exclude sparc64-*.
	* ld-selective/selective.exp: Likewise.
	* ld-sparc/sparc.exp: Add {32,64}-bit prefix to test
	names so we know which one is failing.  Run sparc64 TLS
	tests on multi-arch sparc platforms.
	* ld-sparc/tls64.sd, ld-sparc/tlssunbin64.dd,
	ld-sparc/tlssunbin64.rd, ld/testsuite/ld-sparc/tlssunbin64.sd,
	ld-sparc/tlssunbin64.td, ld-sparc/tlssunnopic64.dd,
	ld-sparc/tlssunnopic64.rd, ld-sparc/tlssunnopic64.sd,
	ld-sparc/tlssunpic64.dd, ld-sparc/tlssunpic64.rd,
	ld-sparc/tlssunpic64.sd, ld-sparc/tlssunpic64.td): Update now
	that sparc64 ELF does support TLS.
2005-04-13 22:29:36 +00:00
Maciej W. Rozycki 2051e8c45f gas/:
* config/tc-mips.c (IS_ZEXT_32BIT_NUM): New macro.
(normalize_address_expr): New function to sign-extend address
offsets that fit into 32 bits in 32-bit mode.
(macro_build_ldst_constoffset): Use normalize_address_expr()
instead of a handcoded sequence.
(load_register): Likewise.  Report oversized numbers in a useful
way.
(macro) [ld_st, ldd_std]: Reject all oversized offsets, not only
for constant addresses.  Report oversized numbers in a useful way.
(mips_ip): Use normalize_address_expr() for addresses.

gas/testsuite/:
* gas/mips/ldstla-32.s: Exclude offsets that are now meant to fail
and include more instructions/offsets that are meant to succeed.
Use $4 instead $3 to avoid register dependencies.
* gas/mips/ldstla-32.d: Update accordingly.
* gas/mips/ldstla-32-shared.d: Likewise.
* gas/mips/ldstla-32-mips3.d: New test based on the above, except
for mips3.
* gas/mips/ldstla-32-mips3-shared.d: Similarly, for PIC.
* gas/mips/ldstla-32-mips3.s: Source for the new tests.
* gas/mips/ldstla-32-1.s: New test for offsets that are meant to
fail.
* gas/mips/ldstla-32-mips3-1.s: Likewise, for mips3.
* gas/mips/ldstla-32-1.l: Stderr output for the new test.
* gas/mips/ldstla-32-mips3-1.l: Likewise.
* gas/mips/mips.exp: Run the new tests.
2005-04-13 18:17:10 +00:00
H.J. Lu a63027e547 Move entries in ChangeLog-9103 to appropriate */ChangeLog-9103. 2005-04-13 17:33:48 +00:00
H.J. Lu faa7ef872d Move entries to appropriate ChangeLog files. 2005-04-13 16:53:25 +00:00
H.J. Lu e75a280b02 bfd/
2005-04-13  Daniel Jacobowitz  <dan@codesourcery.com>

	* elflink.c (elf_link_input_bfd): Update check for removed
	sections.

ld/testsuite/

2005-04-13  H.J. Lu  <hongjiu.lu@intel.com>

	* ld-elf/empty.d: New file.
	* ld-elf/empty.s: Likewise.
2005-04-13 16:44:08 +00:00
DJ Delorie 776dbd277f merge from gcc 2005-04-13 01:06:55 +00:00
DJ Delorie ea7143ac88 merge from gcc 2005-04-13 01:05:22 +00:00
gdbadmin 18d89c4cd1 *** empty log message *** 2005-04-13 00:00:35 +00:00
Alan Modra 85f347f77d daily update 2005-04-13 00:00:07 +00:00
Paul Gilliam 9b59379032 2005-04-12 Paul Gilliam <pgilliam@us.ibm.com>
* lib/gdb.exp (test_compiler_info): Give argument a default value.
2005-04-12 20:14:35 +00:00
Paul Brook 338fbd7b1d 2005-04-12 Paul Brook <paul@codesourcery.com>
* opcode/m88k.h: Rename psr macros to avoid conflicts.
2005-04-12 19:35:53 +00:00
Mark Kettenis bc4bd9abb2 include/opcode/ChangeLog:
* i386.h (i386_optab): Mark VIA PadLock instructions as ImmExt and
adjust them accordingly.
gas/ChangeLog:
* config/tc-i386.c (output_insn): Handle VIA PadLock instructions
similar to other instructions now that they're marked as ImmExt.
2005-04-12 17:12:33 +00:00
DJ Delorie 41c953f989 merge from gcc 2005-04-12 15:04:41 +00:00
Nick Clifton 4bdd3565f1 * hash.c (DEFAULT_SIZE): Delete. Replace with:
(gas_hash_table_size): New static variable.
  (set_gas_hash_table_size): New function:  Records a requested size for the hash tables.
  (get_gas_hash_table_size): New function: Return a prime number near the requested size of the hash table.
  (hash_new): Use get_gas_hash_table_size.
* hash.h: Add a prototype for set_gas_hash_table_size.
* as.c (show_usage): Add description of new switches: --hash-size and --reduce-memory-overheads.
  (option_values): Add OPTION_HASH_TABLE_SIZE and OPTION_REDUCE_MEMORY_OVERHEADS.
  (std_longpopts): Add entries for the new options.
  (parse_args): Handle the new options.
* Makefile.am: Add a dependency of as.c on hash.h.
* Makefile.in: Regenerate.
* doc/as.texinfo: Document the new switches.
* NEWS: Mention the new switches.
2005-04-12 08:42:41 +00:00
Nick Clifton f394e3dd2e PR gas/818
* config/tc-hppa.c (pre_defined_registers): Fix %farg[0-3] synonyms.
2005-04-12 08:39:34 +00:00
Alan Modra ceae3e339f bfd/
* Makefile.am: Run "make dep-am".
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* libcoff.h: Regenerate.
bfd/doc/
	* Makefile.in: Regenerate.
binutils/
	* Makefile.am: Run "make dep-am".
	(syslex.o, sysinfo.o, arparse.o, arlex.o): Add -Wno-error to command.
	(sysroff.o, defparse.o, deflex.o): Likewise.
	(nlmheader.o, rcparse.o, rclex.o): Likewise.
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* config.in: Regenerate.
	* configure: Regenerate.
gas/
	* Makefile.am: Run "make dep-am".
	* Makefile.in: Regenerate.
ld/
	* Makefile.am: Run "make dep-am".
	(ldgram.o, ldlex.o, deffilep.o): Add -Wno-error to command.
	* Makefile.in: Regenerate.
	* config.in: Regenerate.
2005-04-12 02:50:28 +00:00
gdbadmin c3af963cda *** empty log message *** 2005-04-12 00:00:33 +00:00
Alan Modra 8e29614e7e daily update 2005-04-12 00:00:05 +00:00
Bob Wilson 2eccd1b415 * config/tc-xtensa.c (check_t1_t2_reads_and_writes): Fix typo. 2005-04-11 22:45:37 +00:00
Mark Kettenis 01ed09aa8a * gas/all/gas.exp: Don't run fastcall labels test on
i*86-*-openbsd*.
2005-04-11 22:32:22 +00:00
Mark Kettenis 333f7af7b2 * configure.tgt (generic_target): Add support for OpenBSD/i386 ELF. 2005-04-11 22:31:37 +00:00
H.J. Lu ab82c5b97f 2005-04-11 H.J. Lu <hongjiu.lu@intel.com>
* linker.c (_bfd_generic_link_output_symbols): Also check if
	the output section of an input section has been removed from
	the output file.

	* section.c (bfd_section_list_remove): Clear the next field
	of the removed section.
	(bfd_section_removed_from_list): New.
	* bfd-in2.h: Regenerated.
2005-04-11 22:21:23 +00:00
Jakub Jelinek bd695bcc90 2005-04-11 David S. Miller <davem@davemloft.net>
* elf32-sparc.c (elf32_sparc_relocate_section,
	R_SPARC_TLS_LDO_{HIX22,LOX10}): When not shared, transition to
	R_SPARC_TLS_LE_{HIX22,LOX10}.
	(elf32_sparc_relocate_section, R_SPARC_TLS_{LDO,LE}_HIX22): Only
	xor relocation with 0xffffffff if R_SPARC_TLS_LE_HIX22.
	(elf32_sparc_relocate_section, R_SPARC_TLS_{LDO,LE}_LOX10): Only
	or 0x1c00 into relocation if R_SPARC_TLS_LE_HIX22.

	* ld-sparc/tlssunbin32.dd: Update for TLS relocation fixes.
	* ld-sparc/tlssunbin32.rd: Likewise.
	* ld-sparc/tlssunbin32.sd: Likewise.
	* ld-sparc/tlssunpic32.dd: Likewise.
2005-04-11 22:13:28 +00:00
DJ Delorie ac119ae83b merge from gcc 2005-04-11 19:32:04 +00:00
H.J. Lu b5b2699cd6 2005-04-11 H.J. Lu <hongjiu.lu@intel.com>
* coffcode.h (STRING_SIZE_SIZE): Updated to match libcoff-in.h.
2005-04-11 16:55:48 +00:00
Jan Beulich 53260797e5 binutils/
2005-04-11  Jan Beulich  <jbeulich@novell.com>

	* MAINTAINERS: Add myself as ix86 Intel mode maintainer.
2005-04-11 15:16:22 +00:00
Alan Modra 7cedef86d8 * emultempl/elf32.em (gld${EMULATION_NAME}_stat_needed): Ignore
as_needed libs that were not needed.
	(gld${EMULATION_NAME}_check_needed): Likewise.
2005-04-11 14:26:46 +00:00
Daniel Jacobowitz 9494c6a5dc gdb/
* config/djgpp/fnchange.lst: Remove entries for gdb.gdbserver.
gdb/testsuite/
	* Makefile.in (ALL_SUBDIRS): Replace gdb.gdbserver with
	gdb.server.
	* configure.ac: Likewise.
	* configure: Regenerated.
	* gdb.gdbserver/Makefile.in: Moved to...
	* gdb.server/Makefile.in: ... here.
	* gdb.gdbserver/server.c: Moved to...
	* gdb.server/server.c: ... here.
	* gdb.gdbserver/server-run.exp: Moved to...
	* gdb.server/server-run.exp: ... here.
2005-04-11 14:13:14 +00:00
Jan Beulich 5e75c3ab6e gas/
2005-04-11  Jan Beulich  <jbeulich@novell.com>

	* NEWS: Mention these changes and their effects.
	* macro.c (get_token): Use is_name_beginner/is_part_of_name/
	is_name_ender.
	(check_macro): Likewise.
	(buffer_and_nest): Likewise. Permit multiple labels. Don't discard
	labels together with the closing pseudo-op.
	(macro_expand_body): Adjust comment. Range-check input before use.
	Adjust mis-spelled diagnostic. Use is_name_beginner.
	* read.c (try_macro): New.
	(read_a_source_file): New static variable last_eol. Don't list
	macro expansion lines more than once. Call try_macro.
	(s_macro): Set section of line_label to absolute instead of undefined.
	* doc/as.texinfo: Add information on the caveats of these changes.

gas/testsuite/
2005-04-11  Jan Beulich  <jbeulich@novell.com>

	* gas/macros/dot.[ls]: New.
	* gas/macros/macros.exp: Run new test.
2005-04-11 12:46:38 +00:00
Nick Clifton 116c20d240 Convert to ISO C90 formatting 2005-04-11 08:23:05 +00:00
Alan Modra 514d955ded * symbols.c (symbol_X_add_number): Change return type to "offsetT *".
* symbols.h (symbol_X_add_number): Update prototype.
2005-04-11 00:08:08 +00:00
gdbadmin 218755fe84 *** empty log message *** 2005-04-11 00:00:32 +00:00
Alan Modra c84d9728ba daily update 2005-04-11 00:00:10 +00:00
Eric Christopher a9fcb2a986 2005-04-10 Eric Christopher <echristo@redhat.com>
* symbols.c (symbol_X_add_number): Fix warning.
2005-04-10 23:41:32 +00:00
Eli Zaretskii 21655b0344 Update copyright years. 2005-04-10 21:20:27 +00:00
Mark Kettenis bdbcb8b4b7 * rs6000-tdep.c (ppc_supply_fpregset): Increment offset by 8 for
floating-point registers.
(ppc_collect_fpregset): Likewise.  Fix collection of registers.
2005-04-10 21:14:37 +00:00
H.J. Lu 045b540e8e 2005-04-10 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-m68k.c (md_begin): Support 64bit host.
	(get_num): Support 64bit BFD on 32bit host.
2005-04-10 16:28:08 +00:00
H.J. Lu b215186bfd 2005-04-10 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-mips.c (md_apply_fix3): Fix typos in BFD_RELOC_64.
2005-04-10 16:25:51 +00:00
Alan Modra f65a6fe0b4 daily update 2005-04-10 00:00:04 +00:00
gdbadmin d6119f0755 *** empty log message *** 2005-04-10 00:00:02 +00:00
Eli Zaretskii 9c16f35ad5 * gdb.texinfo (Print Settings): Document "set/show print
pascal_static-members", "set print repeats", "show print
	null-stop".  Improve indexing.  Fix documentation of "set print
	union".
	(Pascal): New section.
	(Supported languages): Rename from "Support"; all references
	updated.  Add a menu item for Pascal.
	(Numbers): Document "set radix.
	(Screen Size): Document "set/show pagination".
	(MIPS Embedded): Remove "set processor" documentation.
	(Remote configuration): Document "set/show X/P/Z-packet",
	"set/show read-aux-vector-packet", "set/show remote
	symbol-lookup-packet", "set/show remote verbose-resume-packet",
	"set/show remoteaddresssize", "set/show remotebaud", "set/show
	remotedebug", "set/show remotebreak", "set/show remotedevice",
	"set/show remotelogfile".
	(Auxiliary Vector): Add reference to the description of the
	read-aux-vector-packet setting.
	(Set Watchpoints): Add a cross-reference to "set remote
	hardware-breakpoint-limit".
	(General Query Packets): Add indexing of requests and
	cross-references to related commands in "Remote configuration".
	(File-I/O Overview, The system call): Fix wording and typos.
	(Thread Stops): Add index entries.
	(Continuing and Stepping): Document "show step-mode".
	(i386): New node.  Document "set/show struct-convention".
	(Files): Document "show trust-readonly-sections".
	(Calling): Document "set/show unwindonsignal".
	(Messages/Warnings): Add index entries.
	(Maintenance Commands): Document "set/show watchdog".
	(Annotations Overview): Document "show annotate".
	(Set Watchpoints): Add index entries.
	(Symbols): Fix doc of case-sensitive.
	(ABI): Document "show coerce-float-to-double".
	(Convenience Vars, Help): Improve indexing.
	(Machine Code): Document "show disassembly-flavor".
	(Debugging C plus plus): Document "show overload-resolution".
	(Value History, Signaling): Add index entries.

	* gdb.texinfo (Show): Move @kindex entries to their proper places.
	(Processes): Fix wording.
	(History, List, Logging output, Define, Symbols, Print Settings):
	Improve indexing.
2005-04-09 15:37:20 +00:00
Mark Kettenis 18b2ae85c4 * ppcobsd-tdep.c: Update copyright year. Include "trad-frame.h"
and "tramp-frame.h".
(ppcobsd_sigtramp_cache_init): New function.
(ppcobsd_sigtramp): New variable.
(ppcobsd_init_abi): Prepend signal trampoline unwinder.
* Makefile.in (ppcobsd-tdep.o): Update dependencies.
2005-04-09 11:39:38 +00:00
Alan Modra 31d20a2167 * read.c (assign_symbol): Remove const from parm. Fix xcalloc
call.  Don't do the COFF hacks for multi-emulation gas.  Move
	demand_empty_rest_of_line back to caller.
	(s_set, equals): demand_empty_rest_of_line here.
2005-04-09 06:21:19 +00:00
Alan Modra be95a9c15d PR gas/827
* as.h (rs_dummy): Define.
	* symbols.c (symbol_X_add_number): New function.
	* symbols.h (symbol_X_add_number): Declare.
	* stabs.c (aout_process_stab): Tidy symbol frag setting.
	* read.c (assign_symbol): New function, split out from s_set.
	Use symbol_find_or_make.  Leave fr_type of dummy frag as rs_dummy.
	Fix COFF hacks for multi-emulation gas.
	(s_set): Call assign_symbol.  Remove "register" keyword.
	(set_zero_frag): New function.
	(pseudo_set): Always check for assignment to section syms.
	Always set segment and frag of symbol, and likewise extern for
	aout/bout.  Handle assignment of sym=sym+/-const specially.  Don't
	special case exp.X_add_number non-zero for O_symbol expressions.
	(equals): Use assign_symbol.
2005-04-09 03:48:09 +00:00
Andrew Cagney f0885a038a Dropping mi. 2005-04-09 02:36:06 +00:00
Andrew Cagney 06e819e3ca 2005-04-08 Andrew Cagney <cagney@gnu.org>
* MAINTAINERS (GDB/MI): Andrew Cagney, Elena Zannoni, and Fernando
	Nasser have decided to step back from GDB/MI.
2005-04-09 00:29:37 +00:00
Alan Modra a5fb67e34a daily update 2005-04-09 00:00:09 +00:00
gdbadmin ae70735a18 *** empty log message *** 2005-04-09 00:00:07 +00:00
Bob Wilson 6624cbdeed * config/tc-xtensa.c (xtensa_create_xproperty_segments): Skip
SEC_MERGE sections.
2005-04-08 17:26:42 +00:00
Daniel Jacobowitz 6f8eac0e51 gdb/testsuite/
* Makefile.in (ALL_SUBDIRS): Add gdb.gdbserver.
	* configure.ac: Create gdb.gdbserver/Makefile.
	* configure: Regenerated.
	* lib/gdbserver-support.exp: New file, derived from
	config/gdbserver.exp.
	* config/gdbserver.exp: Use gdbserver-support.exp.
	* gdb.gdbserver/Makefile.in: New file.
	* gdb.gdbserver/server.c: New file.
	* gdb.gdbserver/server-run.exp: New file.
gdb/
	* config/fnchange.lst: Add testsuite/gdb.gdbserver entries.
2005-04-08 12:57:00 +00:00