Commit graph

67158 commits

Author SHA1 Message Date
Jan Kratochvil
e8fd65ef54 gdb/
* python/py-type.c (typy_richcompare): Initialize worklist.
2010-08-24 17:24:28 +00:00
H.J. Lu
b51176f170 Fix typos in ld-x86-64/x86-64.exp.
2010-08-24  H.J. Lu  <hongjiu.lu@intel.com>

	* ld-x86-64/x86-64.exp: Fix typos.
2010-08-24 16:36:25 +00:00
Daniel Jacobowitz
9779414d4e * arm-tdep.c: Include features/arm-with-m.c.
(arm_psr_thumb_bit): New.  Update all uses of CPSR_T to
	call this function.
	(arm_pc_is_thumb): Add a gdbarch argument.  Update all callers.
	Check is_m after force-mode.
	(arm_gdbarch_init): Check the binary before the target description.
	Add check for M profile attribute.  If we have an M-profile device,
	but no target register description, use arm-with-m.  Recognize the
	new org.gnu.gdb.arm.m-profile feature and its xpsr register.
	(_initialize_arm_tdep): Call initialize_tdesc_arm_with_m.
	* arm-tdep.h (XPSR_T): Define.
	(struct gdbarch_tdep): Add is_m member.
	* features/arm-m-profile.xml, features/arm-with-m.c,
	features/arm-with-m.xml: New files.

	doc/
	* gdb.texinfo (ARM Features): Document
	org.gnu.gdb.arm.m-profile.
2010-08-24 15:56:15 +00:00
Nick Clifton
b8fa875047 PR 11899
* layout.cc (segment_precedes): Sort segments by their physical
        addresses, if they have been set.
2010-08-24 07:24:10 +00:00
Hans-Peter Nilsson
9a1ac77684 * sim/cris/asm/nonvcv32.ms: Neutralize changed &&-in-macro gas syntax. 2010-08-24 01:14:38 +00:00
Alan Modra
8b85c8b2fe daily update 2010-08-24 00:00:06 +00:00
gdbadmin
2346564d95 *** empty log message *** 2010-08-24 00:00:03 +00:00
Doug Evans
e71ec85366 * dwarf2read.c (set_die_type): Fix typo in comment. 2010-08-23 21:49:26 +00:00
Doug Evans
9dc481d3a7 * dwarf2read.c (read_structure_type): Add comment.
(read_enumeration_type): Add comment.
	(process_enumeration_scope): Move definition of some locals
	closer to their use.
	(read_namespace_type): Add comment.
2010-08-23 21:44:39 +00:00
Tom Tromey
f9ffd4bb11 gdb
PR python/11145:
	* python/py-value.c: Include expression.h.
	(valpy_do_cast): New function.
	(valpy_cast): Use it.
	(valpy_dynamic_cast): New function.
	(valpy_reinterpret_cast): Likewise.
	(value_object_methods): Add dynamic_cast, reinterpret_cast.
gdb/doc
	PR python/11145:
	* gdb.texinfo (Values From Inferior): Document dynamic_cast and
	reinterpret_cast methods.
gdb/testsuite
	PR python/11145:
	* gdb.python/py-value.c (Base, Derived): New types.
	(base): New global.
	* gdb.python/py-value.exp (test_subscript_regression): Add
	dynamic_cast test.
2010-08-23 20:29:19 +00:00
Cary Coutant
9919d93bc7 * archive.cc (Lib_group::add_symbols): Lock object before deleting its
symbols data.
	(Lib_group::include_member): Unlock object after deleting its
	symbols data.
	* testsuite/start_lib_test_3.c: Remove all global symbols to trigger
	the bug fixed here.
2010-08-23 20:28:24 +00:00
Tom Tromey
96f73ba54f PR python/11391:
* python/py-value.c (valpy_nonzero): Don't throw error for other
	Value types.
2010-08-23 20:27:49 +00:00
Tom Tromey
d839c8a4e8 gdb
PR python/10676:
	* python/py-type.c: Include bcache.h, vec.h.
	(struct type_equality_entry): New.
	(compare_strings): New function.
	(check_types_equal): Likewise.
	(check_types_worklist): Likewise.
	(typy_richcompare): Likewise.
	(type_object_type): Set tp_richcompare field.
gdb/testsuite
	PR python/10676:
	* gdb.python/py-type.exp (test_fields): Add tests for type
	equality.
2010-08-23 20:26:10 +00:00
Tom Tromey
05d0e1e74e PR python/10953:
* python/py-type.c (typy_fields): Call check_typedef.
	(typy_template_argument): Add TRY_CATCH.
2010-08-23 20:23:55 +00:00
Tom Tromey
702c271136 gdb
PR python/11915:
	* python/py-type.c (typy_array): New function.
	(type_object_methods): Add "array".
gdb/doc
	PR python/11915:
	* gdb.texinfo (Types In Python): Document array method.
gdb/testsuite
	PR python/11915:
	* gdb.python/py-type.exp (test_fields): Add tests for array.
2010-08-23 20:21:28 +00:00
Keith Seitz
832bafd331 * gdb.dwarf2/dw2-double-set-die-type.S: DIE 0x51f does not
have any children. Create a new abbrev for it.
	Add missing terminal sequence to .debug_abbrev.
2010-08-23 19:12:53 +00:00
H.J. Lu
d0514c4914 Add --input-osabi and --output-osabi to elfedit.
binutils/

2010-08-23  H.J. Lu  <hongjiu.lu@intel.com>

	* elfedit.c (input_elf_osabi): New.
	(output_elf_osbi): Likewise.
	(osabis): Likewise.
	(elf_osabi): Likewise.
	(update_elf_header): Support updating ELF OSABI.
	(make_qualified_name): Break long line.
	(command_line_switch): Add OPTION_INPUT_OSABI and
	OPTION_OUTPUT_OSABI.
	(options): Likewise.
	(usage): Add --input-osabi and --output-osabi.
	(main): Handle OPTION_INPUT_OSABI and OPTION_OUTPUT_OSABI.

	* doc/binutils.texi: Document --input-osabi and --output-osabi
	for elfedit.

binutils/testsuite/

2010-08-23  H.J. Lu  <hongjiu.lu@intel.com>

	* binutils-all/elfedit-3.d: New.

	* binutils-all/elfedit.exp: Run elfedit-3.
2010-08-23 16:25:53 +00:00
Maciej W. Rozycki
9eeefea8dd binutils/
* readelf.c (display_mips_gnu_attribute): Replace GCC options
	with a textual description of a MIPS32r2 64-bit FPU.

	ld/testsuite/
	* ld-mips-elf/attr-gnu-4-04.d: Adjust Tag_GNU_MIPS_ABI_FP for
	the new MIPS32r2 64-bit FPU description.
	* ld-mips-elf/attr-gnu-4-40.d: Likewise.
	* ld-mips-elf/attr-gnu-4-44.d: Likewise.
2010-08-23 13:51:40 +00:00
Alan Modra
db9d528091 daily update 2010-08-23 00:00:05 +00:00
gdbadmin
06241966e8 *** empty log message *** 2010-08-23 00:00:04 +00:00
H.J. Lu
4440bb7785 Find one .eh_frame section for --eh-frame-hdr.
2010-08-22  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/11937
	* emultempl/elf32.em (_after_open): Find one .eh_frame section
	for --eh-frame-hdr.
2010-08-22 20:21:21 +00:00
H.J. Lu
39334f3a47 Don't check relocation if input ELF object ID doesn't match output.
bfd/

2010-08-22  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/11933
	* elflink.c (elf_link_add_object_symbols): Don't check relocation
	if input ELF object ID doesn't match output.

ld/testsuite/

2010-08-22  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/11933
	* ld-x86-64/mixed1a.s: New.
	* ld-x86-64/mixed1b.s: Likewise.
	* ld-x86-64/mixed2a.s: Likewise.
	* ld-x86-64/mixed2b.s: Likewise.

	* ld-x86-64/x86-64.exp: Text mixed x86_64 and i386 inputs.
2010-08-22 19:14:25 +00:00
H.J. Lu
a654efd60a Find an ELF input for --build-id and --eh-frame-hdr.
2010-08-22  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/11937
	* emultempl/elf32.em (_after_open): Find an ELF input for
	--build-id and --eh-frame-hdr.
2010-08-22 19:11:58 +00:00
gdbadmin
14d8bca30e *** empty log message *** 2010-08-22 00:00:33 +00:00
Alan Modra
5044d84737 daily update 2010-08-22 00:00:05 +00:00
Ralf Wildenhues
58bbed62f8 Fix misquoting in stdint.m4.
config/:
	PR target/45084
	* stdint.m4 (GCC_HEADER_STDINT): Use m4 quotes for arguments
	of AC_MSG_ERROR.

libdecnumber/:
	* configure: Regenerate.

bfd/:
	* configure: Regenerate.
2010-08-21 12:34:06 +00:00
Alan Modra
8e375156eb daily update 2010-08-21 00:00:05 +00:00
gdbadmin
cdc45e8720 *** empty log message *** 2010-08-21 00:00:02 +00:00
DJ Delorie
23701f2e4d merge from gcc 2010-08-20 23:58:16 +00:00
H.J. Lu
3409e291c1 Revert the last checkin on sec_merge_emit.
2010-08-20  H.J. Lu  <hongjiu.lu@intel.com>

	* merge.c (sec_merge_emit): Revert the last checkin.
2010-08-20 22:29:28 +00:00
Maciej W. Rozycki
d820eaae5f * Makefile.am (eshlelf_fd.c): Correct the name of the tool
directory.
	* Makefile.in: Regenerate.
2010-08-20 21:18:39 +00:00
Maciej W. Rozycki
e0af1f531c * elf32-sh.c (sh_elf_relocate_section): Handle non-ELF output
BFD.
2010-08-20 21:15:03 +00:00
Maciej W. Rozycki
d898aefbfa * ld-sh/sh.exp: Add missing newline. 2010-08-20 21:13:03 +00:00
Maciej W. Rozycki
b1345da313 * elf32-m68k.c (bfd_elf_m68k_set_target_options): Don't set GOT
options unless an m68k hash table has been found.
2010-08-20 21:06:30 +00:00
Maciej W. Rozycki
0982e15774 binutils/
* ChangeLog: Add a missing entry for 2010-04-20's commit.

	ld/testsuite/
	* ld-mips-elf/attr-gnu-4-01.d: Correct Tag_GNU_MIPS_ABI_FP.
	* ld-mips-elf/attr-gnu-4-02.d: Likewise.
	* ld-mips-elf/attr-gnu-4-10.d: Likewise.
	* ld-mips-elf/attr-gnu-4-11.d: Likewise.
	* ld-mips-elf/attr-gnu-4-15.d: Likewise.
	* ld-mips-elf/attr-gnu-4-20.d: Likewise.
	* ld-mips-elf/attr-gnu-4-22.d: Likewise.
	* ld-mips-elf/attr-gnu-4-25.d: Likewise.
2010-08-20 21:04:07 +00:00
Maciej W. Rozycki
f0cd06677b * doc/c-arm.texi (ARM Options): Document -mfpu=fp4-sp-d16. 2010-08-20 20:53:28 +00:00
Pedro Alves
4a5321319d * python/python.c: Include "serial.h".
(gdbpy_event_fds): Change type to `struct serial *' a array from
	int array.
	(gdbpy_run_events): Change parameters.  Use serial_readchar in
	place of read.
	(gdbpy_post_event): Use serial_write in place of write.
	(gdbpy_initialize_events): Use serial_pipe instead of pipe, and
	serial_async in place of add_file_handler.
2010-08-20 18:52:11 +00:00
Pedro Alves
58f07bae95 * serial.h (gdb_pipe, serial_pipe): Declare.
* serial.c (serial_interface_lookup): Take a const char pointer.
	(serial_fdopen): Rename to ...
	(serial_fdopen_ops): ... this.  Add an OPS parameter and use it.
	Call the OPS' fdopen function if there is one.
	(serial_fdopen): Rewrite as wrapper to serial_fdopen_ops.
	(serial_pipe): New.
	(struct serial_ops) <fdopen>: New field.

	* ser-mingw.c (free_pipe_state):
	(free_pipe_state): Close output on non-pex pipes.
	(pipe_windows_fdopen): New.
	(gdb_pipe): New.
	(_initialize_ser_windows): Register pipe_windows_fdopen.
	* ser-go32.c (gdb_pipe): New.
	* ser-pipe.c (pipe_close): Close file descriptor even if there's
	no state pointer.
	(pipe_ops): Delete.
	(gdb_pipe): New.
2010-08-20 18:49:20 +00:00
Keith Seitz
3da10d80f8 PR symtab/11465:
* dwarf2read.c (struct delayed_method_info): New struct.
	(struct dwarf2_cu): Add vector method_list.
	(scan_partial_symbols): Count methods for union, class, structure,
	and interface types.
	(add_to_method_list): New function.
	(free_delayed_list): New function.
	(compute_delayed_physnames): New function.
	(process_full_comp_unit): Make a cleanup for the CU's delayed
	physname list, compute the delayed physnames, and free the
	the list.
	(dwarf2_add_member_fn): For C++ and Java, delay the computation
	of the physname until after the CU is read.

	* dwarf2read.c (read_structure_type): Check if the current
	DIE's type was already completed after dwarf2_full_name
	was called.
2010-08-20 17:16:44 +00:00
Keith Seitz
c37bf52837 PR symtab/11465:
* gdb.dwarf2/pr11465.exp: New test.
	* gdb.dwarf2/pr11465.S: New file.
	* gdb.dwarf2/dw2-double-set-die-type.S: New file.
	* gdb.dwarf2/dw2-double-set-die-type.exp: New test.
2010-08-20 17:16:15 +00:00
Nick Clifton
c13526cafc * emultempl/elf32.em (_after_open): Check for get_elf_backend_data
returning NULL.
2010-08-20 15:01:45 +00:00
Nick Clifton
736cba80b3 * merge.c (sec_merge_emit): Do not zero pad sections that do not
have an alignment.
2010-08-20 14:41:48 +00:00
Cary Coutant
97b4be1cc0 * gold/archive.h (Add_lib_group_symbols): Add readsyms_blocker_, adjust
constructor, and set_blocker.
	* gold/archive.cc (Add_lib_group_symbols::is_runnable): Also check
	readsyms_blocker_.
	* gold/readsyms.cc (Read_symbols::do_lib_group): Also pass
	this->this_blocker_ to Add_lib_group_symbols::set_blocker.
	* testsuite/Makefile.am (start_lib_test): New test case.
	* testsuite/Makefile.in: Regenerate.
	* testsuite/start_lib_test_main.c: New file.
	* testsuite/start_lib_test_1.c: New file.
	* testsuite/start_lib_test_2.c: New file.
	* testsuite/start_lib_test_3.c: New file.
2010-08-20 00:35:13 +00:00
Alan Modra
02bfaba5be daily update 2010-08-20 00:00:05 +00:00
gdbadmin
bcf8e47894 *** empty log message *** 2010-08-20 00:00:03 +00:00
Stan Shebs
ca11e89981 * NEWS: Mention some additional changes. 2010-08-19 23:43:31 +00:00
Ian Lance Taylor
dd0b1884ce * Makefile.in: Rebuild with automake 1.11.1.
* aclocal.m4: Likewise.
	* testsuite/Makefile.in: Likewise.
2010-08-19 23:42:03 +00:00
Ian Lance Taylor
7223e9ca5a PR 10893
* i386.cc (class Output_data_plt_i386): Update declarations.
	Define Global_ifunc and Local_ifunc types.  Add global_ifuncs_ and
	local_ifuncs_ fields.
	(Target_i386::do_plt_section_for_global): New function.
	(Target_i386::do_plt_section_for_local): New function.
	(Output_data_plt_i386::Output_data_plt_i386): Add symtab
	parameter; change all callers.  Initialize global_ifuncs_ and
	local_ifuncs_.  If doing a static link define __rel_iplt_start and
	__rel_iplt_end.
	(Output_data_plt_i386::add_entry): Handle IFUNC symbols.
	(Output_data_plt_i386::add_local_ifunc_entry): New function.
	(Output_data_plt_i386::do_write): Fix GOT entries for IFUNC
	symbols.
	(Target_i386::make_plt_section): New function, broken out of
	make_plt_entry.  Set sh_info field of .rel.plt to point to .plt.
	(Target_i386::make_plt_entry): Call make_plt_section.
	(Target_i386::make_local_ifunc_plt_entry): New function.
	(Target_i386::Scan::reloc_needs_iplt_for_ifunc): New function.
	(Target_i386::Scan::local): Handle IFUNC symbols.  Add
	R_386_IRELATIVE to switch.
	(Target_i386::Scan::global): Likewise.
	(Target_i386::Relocate::relocate): Likewise.
	(Target_i386::Relocatable_size_for_reloc): Add R_386_IRELATIVE to
	switch.
	* x86_64.cc (class Output_data_plt_x86_64): Update declarations.
	(Target_x86_64::do_plt_section_for_global): New function.
	(Target_x86_64::do_plt_section_for_local): New function.
	(Output_data_plt_x86_64::Output_data_plt_x86_64): Add symtab
	parameter; change all callers.  If doing a static link define
	__rela_iplt_start and __rela_iplt_end.
	(Output_data_plt_x86_64::add_entry): Handle IFUNC symbols.
	(Output_data_plt_x86_64::add_local_ifunc_entry): New function.
	(Target_x86_64::make_plt_section): Set sh_info field of .rel.plt
	to point to .plt.
	(Target_x86_64::make_local_ifunc_plt_entry): New function.
	(Target_x86_64::Scan::check_non_pic): Add R_X86_64_IRELATIVE to
	switch.
	(Target_x86_64::Scan::reloc_needs_iplt_for_ifunc): New function.
	(Target_x86_64::Scan::local): Handle IFUNC symbols.  Add
	R_X86_64_IRELATIVE to switch.
	(Target_x86_64::Scan::global): Likewise.
	(Target_x86_64::Relocate::relocate): Likewise.
	(Target_x86_64::Relocatable_size_for_reloc): Add R_X86_64_IRELATIVE to
	switch.
	* target.h (class Target): Add plt_section_for_global and
	plt_section_for_local functions.  Add do_plt_section_for_global
	and do_plt_section_for_local virtual functions.
	* symtab.h (Symbol::needs_plt_entry): Handle IFUNC symbol.  Add
	clarifying comments.
	(Symbol::use_plt_offset): Handle IFUNC symbol.
	* object.cc (Sized_relobj::Sized_relobj): Initialize
	local_plt_offsets_.
	(Sized_relobj::local_has_plt_offset): New function.
	(Sized_relobj::local_plt_offset): New function.
	(Sized_relobj::set_local_plt_offset): New function.
	(Sized_relobj::do_count): Handle IFUNC symbol.
	* object.h (class Symbol_value): Add is_ifunc_symbol_ field.  Take
	a bit away from input_shndx_ field.  Add set_is_func_symbol and
	is_ifunc_symbol functions.
	(class Sized_relobj): Update declarations.  Remove Tls_got_entry
	and Local_tls_got_offsets.  Define Local_plt_offsets.  Add
	local_plt_offsets_ field.
	(Sized_relobj::clear_local_symbols): Clear local_plt_offsets_.
	* output.h (class Output_section_data): Add non-const
	output_section function.
	(class Output_data_got): Update declarations.
	(class Output_data_got::Got_entry): Add use_plt_offset_ field.
	Add use_plt_offset parameter to global and local constructors.
	Change all callers.  Change local_sym_index_ field to 31 bits.
	Change GSYM_CODE and CONSTANT_CODE accordingly.
	* output.cc (Output_data_reloc_base::do_adjust_output_section): If
	doing a static link don't set sh_link field.
	(Output_data_got::Got_entry::write): Use PLT offset if
	appropriate.
	(Output_data_got::add_global_plt): New function.
	(Output_data_got::add_local_plt): New function.
	* target-reloc.h (relocate_section): Handle IFUNC symbol.
	* defstd.cc (in_section): Remove entries for __rel_iplt_start,
	__rel_iplt_end, __rela_iplt_start, and __rela_iplt_end.
	* configure.ac: Set IFUNC automake conditional for glibc >= 2.11.
	* testsuite/Makefile.am: Add a bunch of IFUNC tests, all within
	IFUNC conditional.
	* testsuite/ifunc-sel.h: New file.
	* testsuite/ifuncmain1.c: New file.
	* testsuite/ifuncmain1vis.c: New file.
	* testsuite/ifuncmod1.c: New file.
	* testsuite/ifuncdep2.c: New file.
	* testsuite/ifuncmain2.c: New file.
	* testsuite/ifuncmain3.c: New file.
	* testsuite/ifuncmod3.c: New file.
	* testsuite/ifuncmain4.c: New file.
	* testsuite/ifuncmain5.c: New file.
	* testsuite/ifuncmod5.c: New file.
	* testsuite/ifuncmain6pie.c: New file.
	* testsuite/ifuncmod6.c: New file.
	* testsuite/ifuncmain7.c: New file.
	* configure, testsuite/Makefile.in: Rebuild.
2010-08-19 22:50:16 +00:00
H.J. Lu
43f3e2ee94 Fix a typo in comments.
2010-08-19  H.J. Lu  <hongjiu.lu@intel.com>

	* config/tc-i386.c (VEX_check_operands): Fix a typo in comments.
2010-08-19 21:04:36 +00:00
Tom Tromey
4d2dc20ae3 * Makefile.in (install-python): Add DESTDIR. 2010-08-19 18:40:46 +00:00