OSDN Git Service
Jan Kratochvil [Thu, 30 Jul 2009 13:12:53 +0000 (13:12 +0000)]
gdb/
Replace public function varobj_list by all_root_varobjs iterator.
* mi/mi-cmd-var.c (struct mi_cmd_var_update, mi_cmd_var_update_iter):
New.
(mi_cmd_var_update): Replace the varobj_list call by all_root_varobjs.
Remove the variables rootlist, cr. New variable data.
* varobj.c (rootcount, varobj_list): Remove.
(install_variable, uninstall_variable): Remove the rootcount updates.
(all_root_varobjs): New function.
(varobj_invalidate): Use the all_root_varobjs call. Move the code to...
(varobj_invalidate_iter): ... a new function.
* varobj.h (varobj_list): Remove the prototype.
(all_root_varobjs): New prototype.
gdbadmin [Thu, 30 Jul 2009 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Thu, 30 Jul 2009 00:00:09 +0000 (00:00 +0000)]
daily update
Paul Pluzhnikov [Wed, 29 Jul 2009 23:10:04 +0000 (23:10 +0000)]
2009-07-29 Paul Pluzhnikov <ppluzhnikov@google.com>
PR gdb/6817
* dbxread.c (read_dbx_symtab): Reduce stack use.
DJ Delorie [Wed, 29 Jul 2009 20:01:28 +0000 (20:01 +0000)]
merge from gcc
Jan Kratochvil [Wed, 29 Jul 2009 18:44:27 +0000 (18:44 +0000)]
gdb/
Fix gcc-4.5 HEAD warnings.
* cp-name-parser.y (%union <typed_val_int>, %token GLOBAL)
(GLOBAL_CONSTRUCTORS, GLOBAL_DESTRUCTORS, demangler_special <GLOBAL>):
Remove.
(yylex <"global constructors keyed to ">)
(yylex <"global destructors keyed to ">): Base it on DEMANGLER_SPECIAL.
(cp_comp_to_string): Remove variables str, prefix and buf. Remove the
GLOBAL_DESTRUCTORS and GLOBAL_CONSTRUCTORS handling.
(cp_print): Remove the GLOBAL_DESTRUCTORS and GLOBAL_CONSTRUCTORS
handling.
Alan Modra [Wed, 29 Jul 2009 14:56:36 +0000 (14:56 +0000)]
* elf32-ppc.c (ppc_elf_check_relocs): Always set up sections
used by indirect function support. Count dynamic relocs for
ifunc syms.
(ppc_elf_adjust_dynamic_symbol): Tweak for ifunc.
(allocate_dynrelocs): Allocate all non-dynamic ifunc plt entries
in iplt and their relocs in reliplt. Don't make ifunc syms
dynamic. Allocate got entry relocs for non-dynamic ifunc in
reliplt. Handle other dynamic relocs for ifunc.
(ppc_elf_size_dynamic_sections): Alloc dyn relocs for static
ifunc in reliplt, likewise relocs for got against local ifunc.
Typo fix on reliplt size adjust.
(ppc_elf_relocate_section): Don't use plt scheme of allocating
relocs 1-1 with entries for iplt, instead just add using
reloc_count. Write got relocs and dyn relocs for ifunc to reliplt.
Error on invalid ifunc dyn relocs.
(ppc_elf_finish_dynamic_symbol): Adjust for non-dynamic ifunc plt
in iplt/reliplt.
* elf64-ppc.c (ppc64_elf_howto_raw): Add R_PPC64_JMP_IREL,
R_PPC64_REL16, R_PPC64_REL16_LO, R_PPC64_REL16_HI, R_PPC64_REL16_HA.
(ppc64_elf_reloc_type_lookup): Handle new relocs.
(ppc64_elf_check_relocs): Likewise. Count dyn relocs for ifunc.
(allocate_dynrelocs): As for elf32-ppc.c above.
(ppc64_elf_size_dynamic_sections): Likewise.
(ppc_build_one_stub): Put non-dynamic ifunc plt call stubs in iplt,
and their relocs in reliplt. Use R_PPC64_JMP_IREL.
(ppc_size_one_stub): Similarly.
(ppc64_elf_relocate_section): As for elf32-ppc.c above. Handle new
relocs too.
(ppc64_elf_finish_dynamic_symbol): As for elf32-ppc.c above.
Alan Modra [Wed, 29 Jul 2009 14:55:20 +0000 (14:55 +0000)]
* ppc64.h: Add R_PPC64_JMP_IREL, R_PPC64_REL16, R_PPC64_REL16_LO,
R_PPC64_REL16_HI, R_PPC64_REL16_HA.
gdbadmin [Wed, 29 Jul 2009 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Wed, 29 Jul 2009 00:00:05 +0000 (00:00 +0000)]
daily update
Hans-Peter Nilsson [Tue, 28 Jul 2009 23:45:22 +0000 (23:45 +0000)]
* elf64-mmix.c (mmix_elf_relax_section): Revert 2009-05-27
change. Add note to head comment.
Daniel Jacobowitz [Tue, 28 Jul 2009 18:26:49 +0000 (18:26 +0000)]
* NEWS: Mention ARM VFP support.
* target-descriptions.c (tdesc_register_type): Make public.
(tdesc_unnumbered_register): New function.
(tdesc_register_reggroup_p): Allow missing
pseudo_register_reggroup_p.
* target-descriptions.h (tdesc_register_type): Declare.
(tdesc_unnumbered_register): Declare.
* arm-tdep.c (arm_neon_quad_read, arm_neon_quad_write): New functions.
(arm_push_dummy_call): Use arm_neon_quad_write.
(arm_neon_double_type, arm_neon_quad_type): New functions.
(arm_register_type): Handle VFP and NEON registers. Override the
types of double-precision registers for NEON. Disable FPA registers
if they are not present.
(arm_dwarf_reg_to_regnum): Add current VFP and NEON register numbers.
(arm_return_value): Use arm_neon_quad_write and arm_neon_quad_read.
(arm_register_name): Handle VFP single and NEON quad registers.
(arm_pseudo_read, arm_pseudo_write): New functions.
(arm_gdbarch_init): Check for VFP and NEON in the target description.
Assign numbers to double-precision registers. Register VFP and NEON
pseudo registers. Remove a shadowed "i" variable.
* arm-tdep.h (enum gdb_regnum): Add ARM_D0_REGNUM and
ARM_D31_REGNUM.
(struct gdbarch_tdep): Add have_neon_pseudos, have_neon,
have_vfp_registers, have_vfp_pseudos, neon_double_type,
and neon_quad_type.
* features/Makefile: Make expedite settings only architecture
specific.
(WHICH): Add new ARM descriptions.
* features/arm-with-neon.xml, features/arm-with-vfpv2.c,
features/arm-with-vfpv3.c, features/arm-vfpv2.xml,
features/arm-vfpv3.xml, features/arm-with-vfpv2.xml,
features/arm-with-vfpv3.xml, features/arm-with-neon.c: New files.
* regformats/arm-with-neon.dat, regformats/arm-with-vfpv2.dat,
regformats/arm-with-vfpv3.dat: Generate.
doc/
* gdb.texinfo (ARM Features): Document org.gnu.gdb.arm.vfp and
org.gnu.gdb.arm.neon.
gdbserver/
* linux-low.c (linux_write_memory): Update debugging output.
* Makefile.in (clean): Add new descriptions.
(arm-with-vfpv2.o, arm-with-vfpv2.c, arm-with-vfpv3.o)
(arm-with-vfpv3.c, arm-with-neon.o, arm-with-neon.c): New rules.
* configure.srv: Add new files for arm*-*-linux*.
* linux-arm-low.c: Add new declarations.
(PTRACE_GETVFPREGS, PTRACE_SETVFPREGS): Define if undefined.
(arm_hwcap, HWCAP_VFP, HWCAP_IWMMXT, HWCAP_NEON, HWCAP_VFPv3)
(HWCAP_VFPv3D16): New.
(arm_fill_wmmxregset, arm_store_wmmxregset): Check HWCAP_IWMMXT
instead of __IWMMXT__.
(arm_fill_vfpregset, arm_store_vfpregset, arm_get_hwcap)
(arm_arch_setup): New.
(target_regsets): Remove #ifdef. Add VFP regset.
(the_low_target): Use arm_arch_setup.
testsuite/
* gdb.base/float.exp: Handle VFP registers.
Daniel Jacobowitz [Tue, 28 Jul 2009 17:44:29 +0000 (17:44 +0000)]
* linux-low.c (linux_kill_one_lwp): Adjust kernel workaround to skip
the main thread again.
Daniel Jacobowitz [Tue, 28 Jul 2009 17:43:58 +0000 (17:43 +0000)]
* infrun.c (handle_inferior_event): Clear trap_expected after
stepping past a single-step breakpoint.
Daniel Jacobowitz [Tue, 28 Jul 2009 17:30:46 +0000 (17:30 +0000)]
* arm-tdep.c (enum arm_vfp_cprc_base_type,
arm_vfp_cprc_unit_length, arm_vfp_cprc_reg_char,
arm_vfp_cprc_sub_candidate, arm_vfp_call_candidate,
arm_vfp_abi_for_function): New.
(arm_push_dummy_call): Handle VFP ABI.
(arm_extract_return_value, arm_store_return_value): Handle
ARM_FLOAT_VFP case.
(arm_return_value): Handle VFP ABI.
(arm_gdbarch_init): Default fp_model based on Tag_ABI_VFP_args for
EABI binaries.
Daniel Jacobowitz [Tue, 28 Jul 2009 16:38:46 +0000 (16:38 +0000)]
* arch-utils.c (displaced_step_at_entry_point): Do not call
gdbarch_convert_from_func_ptr_addr.
* cris-tdep.c: Remove outdated comment.
* infcall.c (call_function_by_hand): Do not call
gdbarch_convert_from_func_ptr_addr after entry_point_address.
* objfiles.c (entry_point_address): Call both
gdbarch_convert_from_func_ptr_addr and
gdbarch_addr_bits_remove.
Pedro Alves [Tue, 28 Jul 2009 15:22:20 +0000 (15:22 +0000)]
Revert previous commit.
Pedro Alves [Tue, 28 Jul 2009 15:05:01 +0000 (15:05 +0000)]
* bfd-target.c (target_bfd_xclose): Only close the bfd if the
section tarble is not empty.
(target_bfd_reopen): If the section table ends up empty, close the
bfd here.
Aleksandar Ristovski [Tue, 28 Jul 2009 13:20:25 +0000 (13:20 +0000)]
* nto-tdep.c (nto_thread_state_str): New array.
(nto_extra_thread_info): New function definition.
* nto-tdep.h (gdbthread.h): New include.
(private_thread_info): New struct.
(nto_extra_thread_info): New declaration.
* nto-procfs.c (procfs_thread_alive): Properly check if
thread is still alive.
(update_thread_private_data_name, update_thread_private_data): New
function definition.
(procfs_find_new_threads): Fetch thread private data.
(init_procfs_ops): Register to_extra_thread_info.
Jan Beulich [Tue, 28 Jul 2009 06:22:01 +0000 (06:22 +0000)]
bfd/
2009-07-28 Jan Beulich <jbeulich@novell.com>
* archive.c (get_extended_arelt_filename): Remove redundant
range check on index.
Alan Modra [Tue, 28 Jul 2009 00:00:04 +0000 (00:00 +0000)]
daily update
gdbadmin [Tue, 28 Jul 2009 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
dougkwan [Mon, 27 Jul 2009 23:04:05 +0000 (23:04 +0000)]
2009-07-27 Doug Kwan <dougkwan@google.com>
* elf32-arm.c (stub_hash_newfunc): Initialize field output_name.
DJ Delorie [Mon, 27 Jul 2009 19:01:17 +0000 (19:01 +0000)]
merge from gcc
H.J. Lu [Mon, 27 Jul 2009 14:06:33 +0000 (14:06 +0000)]
2009-07-27 H.J. Lu <hongjiu.lu@intel.com>
* archures.c bfd_*_arch): Sorted.
(bfd_archures_list): Likewise.
M R Swami Reddy [Mon, 27 Jul 2009 06:52:33 +0000 (06:52 +0000)]
2009-07-26 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
* elf32-cr16.c (elf_cr16_final_link_relocate): Add code to handle
to R_cr16_NUM32 relocation.
Michael Snyder [Mon, 27 Jul 2009 02:32:48 +0000 (02:32 +0000)]
2009-07-26 Michael Eager <eager@eagercon.com>
* archures.c: Add bfd_mach_ppc_405
* bfd-in2.h: Same.
gdbadmin [Mon, 27 Jul 2009 00:00:34 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Mon, 27 Jul 2009 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Sun, 26 Jul 2009 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sun, 26 Jul 2009 00:00:05 +0000 (00:00 +0000)]
daily update
Pedro Alves [Sat, 25 Jul 2009 16:03:53 +0000 (16:03 +0000)]
* stack.c (backtrace_command_1): Remove dead check of NULL current
frame.
H.J. Lu [Sat, 25 Jul 2009 15:50:19 +0000 (15:50 +0000)]
2009-07-25 H.J. Lu <hongjiu.lu@intel.com>
* cpu-i386.c (bfd_x86_64_arch): Fix comment typos.
* cpu-l1om.c (bfd_l1om_arch): Likewise.
H.J. Lu [Sat, 25 Jul 2009 14:58:51 +0000 (14:58 +0000)]
bfd/
2009-07-25 H.J. Lu <hongjiu.lu@intel.com>
* archures.c (bfd_architecture): Add bfd_arch_l1om.
(bfd_l1om_arch): New.
(bfd_archures_list): Add &bfd_l1om_arch.
* bfd-in2.h: Regenerated.
* config.bfd (targ64_selvecs): Add bfd_elf64_l1om_vec if
bfd_elf64_x86_64_vec is supported. Add bfd_elf64_l1om_freebsd_vec
if bfd_elf64_x86_64_freebsd_vec is supported.
(targ_selvecs): Likewise.
* configure.in: Support bfd_elf64_l1om_vec and
bfd_elf64_l1om_freebsd_vec.
* configure: Regenerated.
* cpu-l1om.c: New.
* elf64-x86-64.c (elf64_l1om_elf_object_p): New.
(bfd_elf64_l1om_vec): Likewise.
(bfd_elf64_l1om_freebsd_vec): Likewise.
* Makefile.am (ALL_MACHINES): Add cpu-l1om.lo.
(ALL_MACHINES_CFILES): Add cpu-l1om.c.
* Makefile.in: Regenerated.
* targets.c (bfd_elf64_l1om_vec): New.
(bfd_elf64_l1om_freebsd_vec): Likewise.
(_bfd_target_vector): Add bfd_elf64_l1om_vec and
bfd_elf64_l1om_freebsd_vec.
binutils/
2009-07-25 H.J. Lu <hongjiu.lu@intel.com>
* readelf.c (guess_is_rela): Handle EM_L1OM.
(dump_relocations): Likewise.
(get_machine_name): Likewise.
(get_section_type_name): Likewise.
(get_elf_section_flags): Likewise.
(get_symbol_index_type): Likewise.
(is_32bit_abs_reloc): Likewise.
(is_32bit_pcrel_reloc): Likewise.
(is_64bit_abs_reloc): Likewise.
(is_64bit_pcrel_reloc): Likewise.
(is_none_reloc): Likewise.
gas/
2009-07-25 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (cpu_arch): Add l1om.
(check_cpu_arch_compatible): New.
(set_cpu_arch): Use it.
(i386_arch): New.
(i386_mach): Return bfd_mach_l1om for Intel L1OM.
(md_show_usage): Display l1om.
(i386_target_format): Return ELF_TARGET_L1OM_FORMAT if
cpu_arch_isa_flags.bitfield.cpul1om is set.
* config/tc-i386.h (TARGET_ARCH): Use (i386_arch ()).
(i386_arch): New.
(ELF_TARGET_L1OM_FORMAT): Likewise.
* doc/c-i386.texi: Document l1om.
gas/testsuite/
2009-07-25 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/l1om.d: New.
* gas/i386/l1om-inval.l: Likewise.
* gas/i386/l1om-inval.s: Likewise.
* gas/i386/i386.exp: Run l1om-inval and l1om.
include/elf/
2009-07-25 H.J. Lu <hongjiu.lu@intel.com>
* common.h (EM_L1OM): New.
ld/
2009-07-25 H.J. Lu <hongjiu.lu@intel.com>
* configure.tgt (targ64_extra_emuls): Add elf_l1om if elf_x86_64
is supported. Add elf_l1om_fbsd if elf_x86_64_fbsd is supported.
(targ_extra_emuls): Likewise.
* Makefile.am (ALL_64_EMULATIONS): Add eelf_l1om.o and
eelf_l1om_fbsd.o
(eelf_l1om.c): New.
(eelf_l1om_fbsd.c): Likewise.
* Makefile.in: Regenerated.
* emulparams/elf_l1om.sh: New.
* emulparams/elf_l1om_fbsd.sh: Likewise.
ld/testsuite/
2009-07-25 H.J. Lu <hongjiu.lu@intel.com>
* ld-x86-64/abs-l1om.d: New.
* ld-x86-64/protected2-l1om.d: Likewise.
* ld-x86-64/protected3-l1om.d: Likewise.
* ld-x86-64/x86-64.exp: Run abs-l1om, protected2-l1om and
protected3-l1om.
opcodes/
2009-07-25 H.J. Lu <hongjiu.lu@intel.com>
* configure.in: Handle bfd_l1om_arch.
* disassemble.c (disassembler): Likewise.
* configure: Regenerated.
* i386-dis.c (print_insn): Handle bfd_mach_l1om and
bfd_mach_l1om_intel_syntax. Use 8 bytes per line for Intel L1OM.
* i386-gen.c (cpu_flag_init): Set CPU_UNKNOWN_FLAGS to ~CpuL1OM.
Add CPU_L1OM_FLAGS.
(cpu_flags): Add CpuL1OM.
(set_bitfield): Take an argument to set the value field.
(process_i386_cpu_flag): Support ~CpuXXX and ~(CpuXXX|CpuYYY).
(process_i386_opcode_modifier): Updated.
(process_i386_operand_type): Likewise.
* i386-init.h: Regenerated.
* i386-tbl.h: Likewise.
* i386-opc.h (CpuL1OM): New.
(CpuXsave): Updated.
(i386_cpu_flags): Add cpul1om.
DJ Delorie [Sat, 25 Jul 2009 11:28:15 +0000 (11:28 +0000)]
merge from gcc
DJ Delorie [Sat, 25 Jul 2009 00:01:48 +0000 (00:01 +0000)]
merge from gcc
gdbadmin [Sat, 25 Jul 2009 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sat, 25 Jul 2009 00:00:09 +0000 (00:00 +0000)]
daily update
tsmigiel [Fri, 24 Jul 2009 19:51:26 +0000 (19:51 +0000)]
include/elf/
* spu.h (R_SPU_ADD_PIC): New.
bfd/
* reloc.c (BFD_RELOC_SPU_ADD_PIC): Define.
* bfd-in2.h: Regenerate.
* libbfd.h: Regenerate.
* elf32-spu.c (elf_howto_table): Add entries SPU_ADD_PIC.
(spu_elf_bfd_to_reloc_type): Handle SPU_ADD_PIC.
(spu_elf_relocate_section): Patch instructions marked by SPU_ADD_PIC.
gas/
* config/tc-spu.c (md_apply_fix): Handle SPU_ADD_PIC.
* config/tc-spu.h (tc_fix_adjustable): Don't adjust for SPU_ADD_PIC.
(TC_FORCE_RELOCATION): Emit relocs for SPU_ADD_PIC.
ld/testsuite/
* ld-spu/pic.d: New.
* ld-spu/pic.s: New.
* ld-spu/picdef.s: New.
Jan Beulich [Fri, 24 Jul 2009 15:41:20 +0000 (15:41 +0000)]
gas/
2009-07-24 Jan Beulich <jbeulich@novell.com>
* tc-i386.c (cpu_arch): Add .8087, .287, .387, .no87, .nommx,
.nosse, and .noavx.
(cpu_flags_and_not): New.
(set_cpu_arch): Check whether sub-architecture specified is a
feature disable.
(md_parse_option): Likewise.
(parse_real_register): Don't return floating point register
when x87 functionality is disabled.
(md_show_usage): Add new sub-options.
* doc/c-i386.texi: Update with new command line sub-options.
gas/testsuite/
2009-07-24 Jan Beulich <jbeulich@novell.com>
* gas/i386/8087.[ds]: New.
* gas/i386/287.[ds]: New.
* gas/i386/387.[ds]: New.
* gas/i386/no87.[ls]: New.
* gas/i386/no87-2.[ls]: New.
* gas/i386/i386.exp: Run new tests.
* gas/i386/att-regs.s: Also check FPU register access.
* gas/i386/intel-regs.s: Likewise.
* gas/i386/att-regs.d: Adjust expectations.
* gas/i386/intel-regs.d: Likewise.
opcodes/
2009-07-24 Jan Beulich <jbeulich@novell.com>
* i386-dis.c (fgrps): Correct annotation for feni/fdisi. Add
frstpm.
* i386-gen.c (cpu_flag_init): Add FP enabling flags where needed.
(cpu_flags): Add Cpu8087, Cpu287, Cpu387, Cpu687, and CpuFISTTP.
(set_bitfield): Expand CpuFP to Cpu8087|Cpu287|Cpu387.
* i386-opc.h (Cpu8087, Cpu287, Cpu387, Cpu687, CpuFISTTP):
Define.
(union i386_cpu_flags): Add cpu8087, cpu287, cpu387, cpu687,
and cpufisttp.
* i386-opc.tbl: Qualify floating point instructions by their
respective CpuXXX flag. Fix fucom{,p,pp}, fprem1, fsin, fcos,
and fsincos to be avilable only on 387. Fix fstsw ax to be
available only on 287+. Add f{,n}eni, f{,n}disi, f{,n}setpm,
and frstpm.
* i386-init.h, i386-tbl.h: Regenerate.
gdbadmin [Fri, 24 Jul 2009 00:00:35 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Fri, 24 Jul 2009 00:00:08 +0000 (00:00 +0000)]
daily update
Keith Seitz [Thu, 23 Jul 2009 23:20:00 +0000 (23:20 +0000)]
* source.c (forward_search_command): Don't fclose the stream,
just run the cleanups.
(reverse_search_command): Likewise.
H.J. Lu [Thu, 23 Jul 2009 21:22:17 +0000 (21:22 +0000)]
bfd/
2009-07-23 H.J. Lu <hongjiu.lu@intel.com>
PR ld/10434
* elf64-x86-64.c (elf64_x86_64_check_relocs): Check executable
instead of shared for R_X86_64_TPOFF32.
(elf64_x86_64_relocate_section): Likewise.
ld/testsuite/
2009-07-23 H.J. Lu <hongjiu.lu@intel.com>
PR ld/10434
* ld-x86-64/tlsle1.d: New.
* ld-x86-64/tlsle1.s: Likewise.
* ld-x86-64/x86-64.exp: Run tlsle1.
Paul Pluzhnikov [Thu, 23 Jul 2009 16:03:06 +0000 (16:03 +0000)]
2009-07-23 Paul Pluzhnikov <ppluzhnikov@google.com>
* symtab.c (search_symbols): Add QUIT.
Nick Clifton [Thu, 23 Jul 2009 13:00:20 +0000 (13:00 +0000)]
* config/obj-elf.c (obj_elf_type): Add code to support a type of
gnu_unique_object.
* doc/as.texinfo: Document new feature of .type directive.
* NEWS: Mention support for gnu_unique_object symbol type.
* common.h (STB_GNU_UNIQUE): Define.
* NEWS: Mention the linker's support for symbols with a binding of
STB_GNU_UNIQUE.
* gas/elf/type.s: Add unique global symbol definition.
* gas/elf/type.e: Add expected readelf output for global unique
symbol.
* elfcpp.h (enum STB): Add STB_GNU_UNIQUE.
* readelf.c (get_symbol_binding): For Linux targeted files return
UNIQUE for symbols with the STB_GNU_UNIQUE binding.
* doc/binutils.texi: Document the meaning of the 'u' symbol
binding in the output of nm and objdump --syms.
* elf-bfd.h (struct elf_link_hash_entry): Add unique_global field.
* elf.c (swap_out_syms): Set binding to STB_GNU_UNIQUE for symbols
with the BSF_GNU_UNIQUE flag bit set.
* elfcode.h (elf_slurp_symbol_table): Set the BSF_GNU_UNIQUE flag
for symbols with STB_GNU_UNIQUE binding.
* elflink.c (_bfd_elf_merge_symbol): Set unique_global for symbols
with the STB_GNU_UNIQUE binding.
(elf_link_add_object_symbols): Set the BSF_GNU_UNIQUE flag for
symbols with STB_GNU_UNIQUE binding. Set STB_GNU_UNIQUE for
symbols with the unique_global field set.
(elf_link_output_extsym): Set unique_global field for symbols with
the STB_GNU_UNIQUE binding.
* syms.c (struct bfd_symbol): Define BSF_GNU_UNIQUE flag bit.
(bfd_print_symbol_vandf): Print a 'u' character for BSF_GNU_UNIQUE
symbols.
(bfd_decode_symclass): Return a 'u' character for BSF_GNU_UNIQUE
symbols.
* bfd-in2.h: Regenerate.
Alan Modra [Thu, 23 Jul 2009 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Thu, 23 Jul 2009 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
H.J. Lu [Wed, 22 Jul 2009 23:55:53 +0000 (23:55 +0000)]
2009-07-22 H.J. Lu <hongjiu.lu@intel.com>
* elflink.c (elf_link_output_extsym): Revert the last change.
H.J. Lu [Wed, 22 Jul 2009 21:30:30 +0000 (21:30 +0000)]
2009-07-22 H.J. Lu <hongjiu.lu@intel.com>
PR ld/10433
* elflink.c (elf_link_output_extsym): Special case ifunc syms
when ref_regular, not def_regular.
Paul Pluzhnikov [Wed, 22 Jul 2009 20:00:33 +0000 (20:00 +0000)]
2009-07-22 Paul Pluzhnikov <ppluzhnikov@google.com>
* symfile.c (symbol_file_add_with_addrs_or_offsets): Call observer.
Paul Pluzhnikov [Wed, 22 Jul 2009 19:21:30 +0000 (19:21 +0000)]
2009-07-22 Paul Pluzhnikov <ppluzhnikov@google.com>
* objfiles.h (objfiles_changed): New prototype.
* objfiles.c (objfiles_updated_p): Rename to objfiles_changed_p.
(allocate_objfile, free_objfile): Must rebuild section map.
(objfile_relocate): Likewise.
(update_section_map, find_pc_section): Adjust.
(set_objfiles_updated_on_exe_change): Remove.
(set_objfiles_updated_on_solib_activity): Remove.
(_initialize_objfiles): Remove.
(objfiles_changed): New function.
* symfile.c (reread_symbols): Call objfiles_changed.
Hui Zhu [Wed, 22 Jul 2009 05:31:20 +0000 (05:31 +0000)]
2009-07-22 Hui Zhu <teawater@gmail.com>
* record.c (record_xfer_partial): Call error When nquery
return "n".
Alan Modra [Wed, 22 Jul 2009 00:00:04 +0000 (00:00 +0000)]
daily update
gdbadmin [Wed, 22 Jul 2009 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
H.J. Lu [Tue, 21 Jul 2009 21:37:25 +0000 (21:37 +0000)]
bfd/
2009-07-21 H.J. Lu <hongjiu.lu@intel.com>
PR ld/10426
* elflink.c (elf_link_add_object_symbols): Turn an IFUNC symbol
from a DSO into a normal FUNC symbol.
(elf_link_output_extsym): Turn an undefined IFUNC symbol into
a normal FUNC symbol.
ld/testsuite/
2009-07-21 H.J. Lu <hongjiu.lu@intel.com>
PR ld/10426
* ld-ifunc/ifunc.exp: Check test-1 and libtest-2.so. Updated.
* ld-ifunc/test-1.c: New.
* ld-ifunc/test-2.c: Likewise.
Paul Pluzhnikov [Tue, 21 Jul 2009 20:57:20 +0000 (20:57 +0000)]
Corrected date on '2009-06-26 Michael Eager <eager@eagercon.com>' entry
Paul Pluzhnikov [Tue, 21 Jul 2009 20:54:30 +0000 (20:54 +0000)]
2009-07-21 Paul Pluzhnikov <ppluzhnikov@google.com>
* objfiles.c (objfiles_updated_p): New variable.
(qsort_cmp, bsearch_cmp, update_section_map): New function.
(find_pc_section): Use bsearch.
(set_objfiles_updated_on_exe_change): New function.
(set_objfiles_updated_on_solib_activity): New function.
(_initialize_objfiles): New function.
Michael Snyder [Tue, 21 Jul 2009 20:21:19 +0000 (20:21 +0000)]
2009-06-26 Michael Eager <eager@eagercon.com>
* features/rs6000/powerpc-405.xml: New.
* rs6000-tdep.c: Add include & initialize for
powerpc-405.c, add 405 to variants.
* features/rs6000/powerpc-405.c: Generate.
Doug Evans [Tue, 21 Jul 2009 19:06:39 +0000 (19:06 +0000)]
Add ccoutant to previous dwarf4 entry.
Paul Pluzhnikov [Tue, 21 Jul 2009 18:23:28 +0000 (18:23 +0000)]
Oops. s/util.c/utils.c/
Paul Pluzhnikov [Tue, 21 Jul 2009 18:21:01 +0000 (18:21 +0000)]
2009-07-21 Paul Pluzhnikov <ppluzhnikov@google.com>
* util.c (internal_vproblem): Always print failure message.
Daniel Jacobowitz [Tue, 21 Jul 2009 18:15:32 +0000 (18:15 +0000)]
gdb/
* valops.c (value_fetch_lazy): Handle bitfields explicitly.
(value_assign): Remove unnecessary FIXME. Honor the container
type of bitfields if possible.
* value.c (struct value): Add parent field.
(value_parent): New function.
(value_free): Free the parent also.
(value_copy): Copy the parent also.
(value_primitive_field): Do not read the contents of a lazy
value to create a child bitfield value. Set bitpos and offset
according to the container type if possible.
(unpack_bits_as_long): Rename from unpack_field_as_long. Take
field_type, bitpos, and bitsize instead of type and fieldno.
(unpack_field_as_long): Use unpack_bits_as_long.
* value.h (value_parent, unpack_bits_as_long): New prototypes.
Daniel Jacobowitz [Tue, 21 Jul 2009 18:12:39 +0000 (18:12 +0000)]
gdb/
* value.c (struct value): Add reference_count field.
(allocate_value_lazy): Initialize reference_count.
(value_incref): New function.
(value_free): Check the reference count.
* value.h (value_incref): New prototype.
Marc Khouzam [Tue, 21 Jul 2009 03:31:18 +0000 (03:31 +0000)]
2009-07-20 Marc Khouzam <marc.khouzam@ericsson.com>
* utils.c (defaulted_query): Update comment and remove dead code.
Alan Modra [Tue, 21 Jul 2009 00:00:08 +0000 (00:00 +0000)]
daily update
gdbadmin [Tue, 21 Jul 2009 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Doug Evans [Mon, 20 Jul 2009 21:21:17 +0000 (21:21 +0000)]
Add support for "comdat types" from DWARF4.
* dwarf2read.c (dwarf2_per_objfile): New member types,
signatured_types.
(TYPES_SECTION): New macro.
(dwarf2_per_cu_data): Change size of length field from 30 bits
to 29 bits. New member from_debug_types.
(signatured_type): New struct.
(struct attribute): New union member signatured_type.
(DW_SIGNATURED_TYPE): New macro.
(dwarf2_attr_no_follow): New function.
(read_type_unit_scope): New function.
(follow_die_ref_or_sig, follow_die_sig): New functions.
(dwarf2_locate_sectoins): Handle .debug_types.
(dwarf2_build_psymtabs): Read .debug_types.
(read_type_comp_unit_head): New function.
(hash_type_signature, eq_type_signature): New functions.
(create_debug_types_hash_table): New function.
(lookup_signatured_type): New function.
(process_psymtab_comp_unit): Handle type units too.
(process_type_comp_unit, build_type_psymtabs): New functions.
(dwarf2_build_psymtabs_hard): Call build_type_psymtabs.
(load_partial_comp_unit): Assert not called for a type unit.
(skip_one_die): Handle DW_FORM_sig8.
(queue_comp_unit): Don't call load_full_comp_unit here, or
update read_in_chain.
(psymtab_to_symtab_1): Call read_signatured_type_at_offset for
type units, or load_full_comp_unit for comp units after
queue_comp_unit returns.
(load_full_comp_unit): Assert not called for type units.
(load_full_comp_unit): Update read_in_chain here.
(process_die): Handle DW_TAG_type_unit.
(read_structure_type): Look for signatured types.
(read_enumeration_type): Ditto.
(init_cu_die_reader): Handle .debug_types.
(read_comp_unit): Assert hash not computed yet.
(read_die_and_children): Expand debugging printf to handle .debug_types.
(read_partial_die): Handle DW_TAG_type_unit:
(find_patial_die): Handle .debug_types.
(read_attribute_value): Handle DW_FORM_sig8.
(die_type): Call follow_die_ref_or_sig instead of follow_die_ref.
(die_containing_type): Ditto.
(dwarf_tag_name): Handle DW_TAG_type_unit.
(dwarf_attr_name): Handle DW_AT_signature.
(dwarf_form_name): Handle DW_FORM_sec_offset, DW_FORM_exprloc,
DW_FORM_flag_present, DW_FORM_sig8.
(dump_die_shallow): Handlel DW_FORM_sig8.
(maybe_queue_comp_unit): Change return type to int from void.
All callers updated.
(follow_die_ref): Handle .debug_types.
(lookup_signatured_type_at_offset): New function.
(read_signatured_type_at_offset): New function.
(read_signatured_type): New function.
Doug Evans [Mon, 20 Jul 2009 20:57:39 +0000 (20:57 +0000)]
Add some dwarf4 values.
* dwarf2.h (enum dwarf_tag): Add DW_TAG_type_unit.
(enum dwarf_form): Add DW_FORM_sec_offset, DW_FORM_exprloc,
DW_FORM_flag_present, DW_FORM_sig8.
(enum dwarf_attribute): Add DW_AT_signature.
Ulrich Weigand [Mon, 20 Jul 2009 19:41:29 +0000 (19:41 +0000)]
* arch-utils.c (gdbarch_info_fill): Only reference GDB_OSABI_DEFAULT
if the macro is defined.
Pedro Alves [Mon, 20 Jul 2009 18:51:40 +0000 (18:51 +0000)]
2009-07-20 Pedro Alves <pedro@codesourcery.com>
* features/gdb-target.dtd (target): Accept an optional 'osabi'
element.
(osabi): Define element.
* features/mips-linux.xml (target): Add an osabi subelement set to
GNU/Linux.
* regformats/regdat.sh (xmlarch, xmlosabi): New variables. Don't
write the architecture into $xmltarget. Store it in $xmlarch.
Handle the 'osabi' type. Handle outputting the osabi element of
the target description.
* regformats/reg-x86-64-linux.dat (osabi): Set to GNU/Linux.
* regformats/reg-i386-linux.dat (osabi): Set to GNU/Linux.
* target-descriptions.h (tdesc_osabi, set_tdesc_osabi): Declare.
* target-descriptions.c (struct target_desc) <osabi>: New field.
(tdesc_osabi): New function.
(set_tdesc_osabi): New function.
* xml-tdesc.c: Include osabi.h.
(tdesc_end_osabi): New.
(target_children): Parse "osabi" elements.
* arch-utils.c (gdbarch_info_fill): Try to get the osabi from the
target description if the user didn't override it or it is not
extractable from the bfd. If that still fails, fallback to the
configured in default.
* osabi.h (osabi_from_tdesc_string): Declare.
* osabi.c (osabi_from_tdesc_string): New.
(gdbarch_lookup_osabi): Return GDB_OSABI_UNKNOWN instead of
GDB_OSABI_DEFAULT.
* NEWS: Mention that target descriptions can now describe the
target OS ABI.
2009-07-20 Pedro Alves <pedro@codesourcery.com>
* gdb.texinfo (Target Description Format): Mention the new <osabi>
optional element.
(subsection OS ABI): New subsection.
Mike Frysinger [Mon, 20 Jul 2009 15:24:50 +0000 (15:24 +0000)]
fix gdbtui build errors when pipe() is not available (e.g. mingw targets)
* configure.ac (AC_CHECK_FUNCS): Check for pipe.
* config.in, configure: Regenerate.
* tui/tui-io.c (TUI_USE_PIPE_FOR_READLINE): Define if HAVE_PIPE.
Pedro Alves [Mon, 20 Jul 2009 15:18:22 +0000 (15:18 +0000)]
* gnu-nat.c: Include "inf-child.h".
(gnu_mourn_inferior): Use the passed in target_ops
instead of the gnu_ops global.
(gnu_create_inferior): Inline `attach_to_child', use the passed in
target_ops instead of the gnu_ops global.
(gnu_can_run): Delete.
(gnu_attach): Use the passed in target_ops instead of the gnu_ops
global.
(gnu_detach): Ditto.
(gnu_prepare_to_store, gnu_open): Delete.
(gnu_store_registers, gnu_fetch_registers): Delete declarations.
(gnu_ops): Delete.
(init_gnu_ops): Delete.
(gnu_target): New.
(_initialize_gnu_nat): Don't call init_gnu_ops or add_target here.
* gnu-nat.h (gnu_target): Declare.
* i386gnu-nat.c (gnu_fetch_registers, gnu_store_registers): Make
static.
(_initialize_i386gnu_nat): New.
Ulrich Weigand [Mon, 20 Jul 2009 15:06:13 +0000 (15:06 +0000)]
* dwarf2loc.c (find_location_expression): Retrieve beginning and
ending address offsets in location list entries as integers,
not as addresses.
Ulrich Weigand [Mon, 20 Jul 2009 15:05:10 +0000 (15:05 +0000)]
* infrun.c (wait_for_inferior): Invalidate registers and overlay
cache every time before calling target_wait.
(handle_inferior_event): Make static. Always reset waiton_ptid.
Never call registers_changed.
(prepare_to_wait): Do not invaliate registers or overlay cache
(moved to wait_for_inferior). Do not reset waiton_ptid (moved
to handle_inferior_event).
(fetch_inferior_event): Remove check for always-true condition.
Nick Clifton [Mon, 20 Jul 2009 12:11:18 +0000 (12:11 +0000)]
PR 10288
* arm-dis.c (arm_opcodes): Catch non-zero bits 8-11 in register
offset or indexed based addressing mode 3.
tschwinge [Mon, 20 Jul 2009 09:50:59 +0000 (09:50 +0000)]
2009-07-20 Thomas Schwinge <tschwinge@gnu.org>
* i386gnu-nat.c (gnu_fetch_registers, gnu_store_registers): Adjust to
2009-02-23 target_ops changes.
gdbadmin [Mon, 20 Jul 2009 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Mon, 20 Jul 2009 00:00:07 +0000 (00:00 +0000)]
daily update
Alan Modra [Sun, 19 Jul 2009 00:00:04 +0000 (00:00 +0000)]
daily update
gdbadmin [Sun, 19 Jul 2009 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Michael Snyder [Sat, 18 Jul 2009 23:35:30 +0000 (23:35 +0000)]
2009-07-18 Michael Snyder <msnyder@vmware.com>
* infrun.c (handle_inferior_event): Remove an execution_direction
check in the "check for subroutine calls" test, and add some
additional handling for reverse-stepping through shared libraries.
Anthony Green [Sat, 18 Jul 2009 13:52:02 +0000 (13:52 +0000)]
Fix prologue analysis for moxie.
gdbadmin [Sat, 18 Jul 2009 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sat, 18 Jul 2009 00:00:05 +0000 (00:00 +0000)]
daily update
DJ Delorie [Fri, 17 Jul 2009 20:20:39 +0000 (20:20 +0000)]
merge from gcc
Ulrich Weigand [Fri, 17 Jul 2009 17:08:22 +0000 (17:08 +0000)]
* solib.c (solib_bfd_open): Do not call ops->bfd_open.
(solib_map_sections): Call ops->bfd_open instead of solib_bfd_open.
* solib-frv.c (_initialize_frv_solib): Initialize bfd_open member.
* solib-irix.c (_initialize_irix_solib): Likewise.
* solib-null.c (_initialize_null_solib): Likewise.
* solib-osf.c (_initialize_osf_solib): Likewise.
* solib-pa64.c (_initialize_pa64_solib): Likewise.
* solib-som.c (_initialize_som_solib): Likewise.
* solib-sunos.c (_initialize_sunos_solib): Likewise.
* solib-svr4.c (_initialize_svr4_solib): Likewise.
* solib-target.c (_initialize_solib_target): Likewise.
Ulrich Weigand [Fri, 17 Jul 2009 15:55:53 +0000 (15:55 +0000)]
* mi/mi-cmd-disas.c (mi_cmd_disassemble): Respect mixed_mode flag.
Joseph Myers [Fri, 17 Jul 2009 15:11:33 +0000 (15:11 +0000)]
PR other/40784
* tls.m4 (GCC_CHECK_TLS): Add extra quoting around argument to
AC_LINK_IFELSE.
Nick Clifton [Fri, 17 Jul 2009 09:45:59 +0000 (09:45 +0000)]
* elfxx-mips.c (LOAD_INTERLOCKS_P): New define.
(_bfd_mips_elf_size_dynamic_sections): For CPUs without load
interlocking, the last PLT entry needs a nop in the branch delay slot.
(_bfd_mips_elf_finish_dynamic_symbol): For CPUs with load itnerlocking,
output the last two PLT entries in reverse order.
* ld-mips-elf/pic-and-nonpic-3b.dd,
ld-mips-elf/pic-and-nonpic-5b.dd,
ld-mips-elf/pic-and-nonpic-6-o32.dd: Updated to use new PLT entries.
Alan Modra [Fri, 17 Jul 2009 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Fri, 17 Jul 2009 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Joseph Myers [Thu, 16 Jul 2009 23:21:15 +0000 (23:21 +0000)]
* tls.m4 (GCC_CHECK_TLS): Also test TLS in a shared library when
cross-compiling.
Doug Evans [Thu, 16 Jul 2009 20:45:16 +0000 (20:45 +0000)]
* linux-thread.db.c (try_thread_db_load_1): Tweak comment.
Paul Pluzhnikov [Thu, 16 Jul 2009 19:47:43 +0000 (19:47 +0000)]
2007-07-16 Paul Pluzhnikov <ppluzhnikov@google.com>
* linux-thread-db.c (thread_db_find_new_threads_silently):
New function.
(try_thread_db_load_1): Call it.
H.J. Lu [Thu, 16 Jul 2009 14:23:09 +0000 (14:23 +0000)]
bfd/
2009-07-16 H.J. Lu <hongjiu.lu@intel.com>
* elf32-i386.c (elf_i386_relocate_section): Don't get local
STT_GNU_IFUNC symbol for relocatable link.
* elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
ld/testsuite/
2009-07-16 H.J. Lu <hongjiu.lu@intel.com>
* ld-ifunc/ifunc-5r-local-i386.d: New.
* ld-ifunc/ifunc-5r-local-x86-64.d: Likewise.
gdbadmin [Thu, 16 Jul 2009 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Thu, 16 Jul 2009 00:00:05 +0000 (00:00 +0000)]
daily update
Doug Evans [Wed, 15 Jul 2009 22:17:07 +0000 (22:17 +0000)]
Code reorg in preparation for adding comdat types support.
* dwarf2read.c (struct die_reader_specs): New struct.
(locate_pdi_sibling): New arg buffer. All callers updated.
(load_partial_dies, read_partial_die): Ditto.
(read_8_bytes): Change return type to ULONGEST.
(read_comp_unit): Delete arg abfd. All callers updated.
(read_die_and_children_1): Delete args abfd, cu. New arg reader.
All callers updated.
(read_die_and_children, read_die_and_siblings): Ditto.
(read_full_die): Ditto. Move closer to callers.
(skip_one_die): New arg buffer. All callers updated.
(load_full_comp_unit): Change return type to void. All callers
updated.
(partial_read_comp_unit_head): New args buffer, buffer_size.
All callers updated.
(process_psymtab_comp_unit): New function, split out from
dwarf2_build_psymtabs_hard.
(dwarf2_build_psymtabs_hard): Call it.
(load_partial_comp_unit): Renamed from load_comp_unit.
All callers updated.
(skip_children): New arg buffer. All callers updated.
(init_cu_die_reader): New function.
(is_ref_attr): New function.
(dwarf2_get_ref_die_offset): Call it.
(alloc_one_comp_unit): New function.
Michael Snyder [Wed, 15 Jul 2009 01:18:58 +0000 (01:18 +0000)]
2009-07-14 Michael Snyder <msnyder@vmware.com>
* gdb.reverse/finish-reverse.exp: Do not expect reverse-finish
to bring gdb to the beginning of the calling line.