Commit Graph

62269 Commits

Author SHA1 Message Date
Daniel Jacobowitz
cd000bffb2 binutils/testsuite/
* binutils-all/arm/thumb2-cond.s: Use instructions instead of
	.short.

	gas/
	* config/obj-elf.c (obj_elf_ident): Notify section change to the hook.
	* config/tc-arm.c (make_mapping_symbol): New function, from
	mapping_state.  Save mapping symbols in the frag.
	(insert_data_mapping_symbol): New.
	(mapping_state): Use make_mapping_symbol, improve state transitions.
	(mapping_state_2): New.  Provide dummy definition.
	(opcode_select): Do not call mapping_state.
	(s_bss): Call md_elf_section_change_hook instead of mapping_state.
	(output_inst): Update use of tc_frag_data.
	(new_automatic_it_block): Call mapping_state before emitting the
	IT instruction.
	(md_assemble): Move mapping_state to just before outputting the
	new instruction.
	(arm_handle_align): Update use of tc_frag_data.
	Call insert_data_mapping_symbol.
	(arm_init_frag): Update use of tc_frag_data.  Call
	mapping_state_2.
	(arm_elf_change_section): Always update the mapping symbol FSM state.
	(check_mapping_symbols): New function.
	(arm_adjust_symtab): Use check_mapping_symbols.
	* config/tc-arm.h (struct arm_frag_type): New.
	(TC_FRAG_TYPE): Change to struct arm_frag_type.
	(TC_FRAG_INIT): Pass max_chars.
	(arm_init_frag): Update prototype.

	gas/testsuite/
	* gas/arm/mapdir.d, gas/arm/mapdir.s: New files.
	* gas/arm/mapping.d: Adapted to new symbols generation.
	* gas/arm/mapping2.d: New test case.
	* gas/arm/mapping2.s: New file.
	* gas/arm/mapping3.d: New test case.
	* gas/arm/mapping3.s: New file.
	* gas/arm/mapping4.d: New test case.
	* gas/arm/mapping4.s: New file.
	* gas/arm/mapshort-eabi.d: Adapted to new symbols generation.
	* gas/elf/section2.e-armeabi: Adapted to new symbols generation.
2009-07-31 18:14:07 +00:00
Ulrich Weigand
79d0a52d5d Fix previous check-in. 2009-07-31 15:39:24 +00:00
Ulrich Weigand
1ea342040c * configure.ac: Run gdb.cell tests when appropriate.
* configure: Regenerate.
	* lib/cell.exp: New file.
	* gdb.cell: New directory.
	* gdb.cell/configure.ac: New file.
	* gdb.cell/configure: New file.
	* gdb.cell/Makefile.in: New file.
	* gdb.cell/arch.exp: New file.
	* gdb.cell/break.c: New file.
	* gdb.cell/break.exp: New file.
	* gdb.cell/break-spu.c: New file.
	* gdb.cell/bt.c: New file.
	* gdb.cell/bt2-spu.c: New file.
	* gdb.cell/bt-spu.c: New file.
	* gdb.cell/bt.exp: New file.
	* gdb.cell/coremaker.c: New file.
	* gdb.cell/coremaker-spu.c: New file.
	* gdb.cell/core.exp: New file.
	* gdb.cell/gcore.exp: New file.
	* gdb.cell/data.c: New file.
	* gdb.cell/data.exp: New file.
	* gdb.cell/data-spu.c: New file.
	* gdb.cell/ea-cache.exp: New file.
	* gdb.cell/ea-cache.c: New file.
	* gdb.cell/ea-cache-spu.c: New file.
	* gdb.cell/ea-standalone.c: New file.
	* gdb.cell/ea-standalone.exp: New file.
	* gdb.cell/ea-test.c: New file.
	* gdb.cell/ea-test.exp: New file.
	* gdb.cell/f-regs.exp: New file.
	* gdb.cell/mem-access.c: New file.
	* gdb.cell/mem-access.exp: New file.
	* gdb.cell/mem-access-spu.c: New file.
	* gdb.cell/ptype.exp: New file.
	* gdb.cell/registers.exp: New file.
	* gdb.cell/size.c: New file.
	* gdb.cell/sizeof.exp: New file.
	* gdb.cell/size-spu.c: New file.
	* gdb.cell/solib.exp: New file.
	* gdb.cell/solib-symbol.exp: New file.
2009-07-31 15:38:16 +00:00
Ulrich Weigand
ff1a52c620 ChangeLog:
* spu-tdep.c: Include "infcall.h".
	(spu_address_class_type_flags): New function.
	(spu_address_class_type_flags_to_name): Likewise.
	(spu_address_class_name_to_type_flags): Likewise.
	(spu_pointer_to_address): Handle __ea pointers.
	(spu_auto_flush_cache_p): New static variable.
	(spu_objfile_from_frame): New function.
	(flush_ea_cache, spu_attach_normal_stop): Likewise.
	(show_spu_auto_flush_cache): Likewise.
	(spu_gdbarch_init): Install address class handlers.
	(_initialize_spu_tdep): Attach to normal_stop observer.
	Install "set spu auto-flush-cache" / "show spu auto-flush-cache"
	commands.

	* NEWS: Mention "set/show spu auto-flush-cache" commands.

doc/ChangeLog:

	* gdb.texinfo (Cell Broadband Engine SPU architecture): Document the
	"set spu auto-flush-cache" and "show spu auto-flush-cache" commands.
2009-07-31 15:35:38 +00:00
Ulrich Weigand
3285f3fe1a ChangeLog:
* spu-tdep.c: Include "block.h".
	(setspucmdlist, showspucmdlist): New static variables.
	(spu_stop_on_load_p): Likewise.
	(spu_catch_start): New function.
	(show_spu_command, set_spu_command): New functions.
	(show_spu_stop_on_load): Likewise.
	(_initialize_spu_tdep): Attach spu_catch_start to new_objfile observer.
	Install "set spu" / "show spu" prefix command handler.
	Install "set spu stop-on-load" / "show spu stop-on-load" command.

	* NEWS: Mention "set/show spu stop-on-load" commands.

doc/ChangeLog:

	* gdb.texinfo (Cell Broadband Engine SPU architecture): Document the
	"set spu stop-on-load" and "show spu stop-on-load" commands.
2009-07-31 15:33:50 +00:00
Ulrich Weigand
cc5f0d6150 * ppc-linux-tdep.c: Include "solib.h", "solist.h", "exceptions.h",
"arch-utils.h", and "spu-tdep.h".
	(spu_context_objfile, spe_context_lm_addr, spe_context_offset):
	New static variables.
	(spe_context_cache_ptid, spe_context_cache_address): Likewise.
	(ppc_linux_spe_context_lookup): New function.
	(ppc_linux_spe_context_inferior_created): Likewise.
	(ppc_linux_spe_context_solib_loaded): Likewise.
	(ppc_linux_spe_context_solib_unloaded): Likewise.
	(ppc_linux_spe_context): Likewise.
	(struct ppu2spu_cache, struct ppu2spu_data): New data types.
	(ppu2spu_prev_arch, ppu2spu_this_id, ppu2spu_prev_register,
	ppu2spu_unwind_register, ppu2spu_sniffer,
	ppu2spu_dealloc_cache): New functions.
	(ppu2spu_unwind): New static variable.
	(ppc_linux_init_abi): Install cross-architecture unwinder.
	(_initialize_ppc_linux_tdep): Attach to observers.

	* spu-tdep.c (struct spu2ppu_cache): New data type.
	(spu2ppu_prev_arch, spu2ppu_this_id, spu2ppu_prev_register,
	spu2ppu_sniffer, spu2ppu_dealloc_cache): New functions.
	(spu2ppu_unwind): New static variable.
	(spu_gdbarch_init): Install cross-architecture unwinder.
2009-07-31 15:31:08 +00:00
Ulrich Weigand
0b9ff2c0a4 * linux-ppc-low.c (INSTR_SC, NR_spu_run): Define.
(parse_spufs_run): New function.
	(ppc_get_pc, ppc_set_pc): Detect and handle SPU PC.
	(ppc_breakpoint_at): Handle SPU breakpoints.
2009-07-31 15:30:03 +00:00
Ulrich Weigand
85e747d249 ChangeLog:
* target.h (enum strata): New value arch_stratum.
	* target.c (target_require_runnable): Skip arch_stratum targets.

	* configure.tgt (powerpc-*-linux* | powerpc64-*-linux*): Add
	solib-spu.o and spu-multiarch.o to gdb_target_obs.
	* Makefile.in (ALL_TARGET_OBS): Add solib-spu.o and spu-multiarch.o.
	(ALLDEPFILES): Add solib-spu.c and spu-multiarch.c.

	* solib-spu.c: New file.
	* solib-spu.h: New file.
	* spu-multiarch.c: New file.

	* spu-tdep.h (SPUADDR, SPUADDR_SPU, SPUADDR_ADDR): New macros.

	* spu-tdep.c (struct gdbarch_tdep): New member id.
	(spu_gdbarch_id): New function.
	(spu_lslr): New function.

	(spu_address_to_pointer): New function.
	(spu_pointer_to_address): Support SPU ID address encoding.  Use
	spu_gdbarch_id and spu_lslr.
	(spu_integer_to_address): Likewise.
	(spu_frame_unwind_cache): Update for encoded addresses.
	(spu_unwind_pc, spu_unwind_sp): Likewise.
	(spu_read_pc, spu_write_pc): Likewise.
	(spu_push_dummy_call): Likewise.
	(spu_software_single_step): Likewise.
	(spu_get_longjmp_target): Likewise.
	(spu_overlay_update_osect): Likewise.

	(spu_dis_asm_print_address): New function.
	(gdb_print_insn_spu): Likewise.

	(spu_gdbarch_init): Store SPU ID in tdep structure.
	Install spu_address_to_pointer and gdb_print_insn_spu.

	* ppc-linux-tdep.c: Include "observer.h", "auxv.h", "elf/common.h"
	and "solib-spu.h".
	(ppc_linux_entry_point_addr): New static variable.
	(ppc_linux_inferior_created): New function.
	(ppc_linux_displaced_step_location): Likewise.
	(ppc_linux_init_abi): Enable Cell/B.E. support if supported
	by the target.
	(_initialize_ppc_linux_tdep): Attach to inferior_created observer.

	* NEWS: Mention multi-architecture and Cell/B.E. debugging
	capabilities.

testsuite/ChangeLog:

	* gdb.xml/tdesc-regs.exp: Skip for SPU targets.
2009-07-31 15:28:27 +00:00
Ulrich Weigand
efcbbd1428 ChangeLog:
* linux-nat.c: Include <sys/vfs.h>.
	(SPUFS_MAGIC): Define.
	(spu_enumerate_spu_ids): New function.
	(linux_proc_xfer_spu): New function.
	(linux_xfer_partial): Handle TARGET_OBJECT_SPU.

	(iterate_over_spus): New function.
	(struct linux_spu_corefile_data): New data type.
	(linux_spu_corefile_callback): New function.
	(linux_spu_make_corefile_notes): New function.
	(linux_nat_make_corefile_notes): Call it.

	* corelow.c (struct spuid_list): New data type.
	(add_to_spuid_list): New function.
	(core_xfer_partial): Handle TARGET_OBJECT_SPU.

gdbserver/ChangeLog:

	* linux-low.c: Include <sys/stat.h> and <sys/vfs.h>.
	(SPUFS_MAGIC): Define.
	(spu_enumerate_spu_ids): New function.
	(linux_qxfer_spu): New function.
	(linux_target_ops): Install linux_qxfer_spu.
2009-07-31 15:25:22 +00:00
Ulrich Weigand
f4d9badee6 ChangeLog:
* features/Makefile: Allow sub-platform specific expedite settings.
	(WHICH): Add rs6000/powerpc-cell32l and rs6000/powerpc-cell64l.
	(rs6000/powerpc-cell32l-expedite): Define.
	(rs6000/powerpc-cell64l-expedite): Likewise.
	* features/rs6000/powerpc-cell32l.xml: New file.
	* features/rs6000/powerpc-cell64l.xml: New file.
	* features/rs6000/powerpc-cell32l.c: New generated file.
	* features/rs6000/powerpc-cell64l.c: New generated file.

	* regformats/rs6000/powerpc-cell32l.dat: New generated file.
	* regformats/rs6000/powerpc-cell64l.dat: New generated file.

	* config/djgpp/fnchange.lst: Add mappings for new files.

	* ppc-linux-tdep.h (tdesc_powerpc_cell32l): Add prototype.
	(tdesc_powerpc_cell64l): Likewise.
	* ppc-linux-tdep.c: Include "features/rs6000/powerpc-cell32l.c"
	and "features/rs6000/powerpc-cell64l.c".
	(_initialize_ppc_linux_tdep): Initialize target descriptions.
	(ppc_linux_spu_section): New function.
	(ppc_linux_core_read_description): Detect Cell/B.E. core files.
	* ppc-linux-nat.c (PPC_FEATURE_CELL): Define.
	(ppc_linux_read_description): Detect Cell/B.E. architecture.

	* rs6000-tdep.c (rs6000_gdbarch_init): Do not trust BFD wordsize
	if exec file is not PowerPC architecture.

gdbserver/ChangeLog:

	* configure.srv (powerpc*-*-linux*): Add powerpc-cell32l.o
	and powerpc-cell64l.o to srv_regobj.  Add rs6000/powerpc-cell32l.xml
	and rs6000/powerpc-cell64l.xml to srv_xmlfiles.
	* Makefile.in (powerpc-cell32l.o, powerpc-cell32l.c): New rules.
	(powerpc-cell64l.o, powerpc-cell64l.c): Likewise.
	(clean): Handle powerpc-cell32l.c and powerpc-cell64l.c.
	* linux-ppc-low.c (PPC_FEATURE_CELL): Define.
	(init_registers_powerpc_cell32l): Add prototype.
	(init_registers_powerpc_cell64l): Likewise.
	(ppc_arch_setup): Detect Cell/B.E. architecture.
2009-07-31 15:23:21 +00:00
Ulrich Weigand
e35359c551 ChangeLog:
* features/gdb-target.dtd (target): Accept optional
	<compatible> elements.
	(compatible): Define element.

	* target-descriptions.h (tdesc_compatible_p): New.
	(tdesc_add_compatible): New.
	* target-descriptions.c (arch_p): New VEC_P type.
	(struct target_desc): New member compatible.
	(free_target_description): Handle it.
	(maint_print_c_tdesc_cmd): Likewise.
	(tdesc_compatible_p): New function.
	(tdesc_add_compatible): New function.

	* xml-tdesc.c (tdesc_end_compatible): New function.
	(target_children): Handle <compatible> element.

	* arch-utils.c (choose_architecture_for_target): Accept target
	description instead of BFD architecture as input.  Query target
	description for compatible architectures.
	(gdbarch_info_fill): Update call.

	* NEWS: Mention <compatible> element of target descriptions.

doc/ChangeLog:

	* gdb.texinfo (Target Descriptions): Document <compatible> element.
2009-07-31 14:39:12 +00:00
Ulrich Weigand
3a1bae8e7f * breakpoint.c (remove_breakpoints): If removing one breakpoint
location fails, still continue to remove other locations.
	(remove_hw_watchpoints): Likewise.
	(detach_breakpoints): Likewise.
2009-07-31 14:33:45 +00:00
Ulrich Weigand
8bea4e01db * breakpoint.h (enum enable_state): Add bp_startup_disabled.
(disable_breakpoints_before_startup): Add prototype.
	(enable_breakpoints_after_startup): Likewise.

	* breakpoint.c (executing_startup): New static variable.
	(describe_other_breakpoints): Handle bp_startup_disabled.
	(check_duplicates_for): Likewise.
	(disable_breakpoints_before_startup): New function.
	(enable_breakpoints_after_startup): New function.
	(create_breakpoint): Mark new breakpoints as bp_startup_disabled
	if executing_startup flag is true.
	(break_command_really): Likewise.
	(breakpoint_re_set_one): Skip bp_startup_disabled breakpoints.
2009-07-31 14:31:16 +00:00
Anthony Green
7a321525ff Increase simulated memory size. Support new system call ABI. Support exception processing for Linux system calls. 2009-07-31 11:40:16 +00:00
Anthony Green
5d8d4872fe Add moxie-uclinux support. 2009-07-31 11:25:14 +00:00
Hans-Peter Nilsson
dd52c6dee2 * ld-mmix/x.s, ld-mmix/y.s, ld-mmix/zeroeh.ld,
ld-mmix/zeroehelf.d, ld-mmix/zeroehmmo.d: Use .gcc_except_table,
	not .eh_frame.
2009-07-31 04:55:48 +00:00
Hans-Peter Nilsson
080a1b9fb5 * linker.c (fix_syms): Consider SEC_LOAD when choosing section. 2009-07-31 02:25:56 +00:00
gdbadmin
463bde6807 *** empty log message *** 2009-07-31 00:00:33 +00:00
Alan Modra
f00b9c4d31 daily update 2009-07-31 00:00:05 +00:00
Julian Brown
cca44b1b87 * arm-linux-tdep.c (arch-utils.h, inferior.h, gdbthread.h, symfile.h):
Include files.
	(arm_linux_cleanup_svc, arm_linux_copy_svc): New.
	(cleanup_kernel_helper_return, arm_catch_kernel_helper_return): New.
	(arm_linux_displaced_step_copy_insn): New.
	(arm_linux_init_abi): Initialise displaced stepping callbacks.
	* arm-tdep.c (DISPLACED_STEPPING_ARCH_VERSION): New macro.
	(ARM_NOP): New.
	(displaced_read_reg, displaced_in_arm_mode, branch_write_pc)
	(bx_write_pc, load_write_pc, alu_write_pc, displaced_write_reg)
	(insn_references_pc, copy_unmodified, cleanup_preload, copy_preload)
	(copy_preload_reg, cleanup_copro_load_store, copy_copro_load_store)
	(cleanup_branch, copy_b_bl_blx, copy_bx_blx_reg, cleanup_alu_imm)
	(copy_alu_imm, cleanup_alu_reg, copy_alu_reg)
	(cleanup_alu_shifted_reg, copy_alu_shifted_reg, cleanup_load)
	(cleanup_store, copy_extra_ld_st, copy_ldr_str_ldrb_strb)
	(cleanup_block_load_all, cleanup_block_store_pc)
	(cleanup_block_load_pc, copy_block_xfer, cleanup_svc, copy_svc)
	(copy_undef, copy_unpred): New.
	(decode_misc_memhint_neon, decode_unconditional)
	(decode_miscellaneous, decode_dp_misc, decode_ld_st_word_ubyte)
	(decode_media, decode_b_bl_ldmstm, decode_ext_reg_ld_st)
	(decode_svc_copro, arm_process_displaced_insn)
	(arm_displaced_init_closure, arm_displaced_step_copy_insn)
	(arm_displaced_step_fixup): New.
	(arm_gdbarch_init): Initialise max insn length field.
	* arm-tdep.h (DISPLACED_TEMPS, DISPLACED_MODIFIED_INSNS): New
	macros.
	(displaced_step_closure, pc_write_style): New.
	(arm_displaced_init_closure, displaced_read_reg)
	(arm_process_displaced_insn, arm_displaced_init_closure)
	(displaced_read_reg, displaced_write_reg, arm_displaced_step_copy_insn)
	(arm_displaced_step_fixup): Add prototypes.
2009-07-30 23:05:05 +00:00
Julian Brown
929dfd4f59 * infrun.c (displaced_step_fixup): If this is a software
single-stepping arch, don't tell the target to single-step.
	(maybe_software_singlestep): Return 0 if we're using displaced
	stepping.
	(resume): If this is a software single-stepping arch, and
	displaced-stepping is enabled, use it for all single-step
	requests.
2009-07-30 23:01:27 +00:00
Ralf Wildenhues
96e946ca9a sim/
* Makefile.in (datarootdir): New variable.

sim/common/
	* Makefile.in (datarootdir): New variable.

sim/igen/
	* Makefile.in (datarootdir): New variable.

sim/ppc/
	* Makefile.in (datarootdir): New variable.

readline/
	* Makefile.in (datarootdir): New variable.
	* doc/Makefile.in (datarootdir): New variable.
	* shlib/Makefile.in (datarootdir): New variable.

gdb/gdbserver/
	* Makefile.in (datarootdir): New variable.
2009-07-30 22:53:18 +00:00
Ralf Wildenhues
1983cb9a62 intl/
* Makefile.in (aclocal_deps): New variable.
	($(srcdir)/aclocal.m4): Use it, for portable makefile syntax.

libdecnumber/
	* Makefile.in (aclocal_deps): New variable.
	($(srcdir)/aclocal.m4): Use it, for portable makefile syntax.

etc/
	* Makefile.in (AUTOCONF, configure_deps): New variables.
	($(srcdir)/configure, config.status): New rules.
	(Makefile): Depend on config.status.
	* configure.in: Accept --enable-maintainer-mode, set and
	substitute MAINT accordingly.

gdb/
	* Makefile.in (ACLOCAL, ACLOCAL_AMFLAGS, aclocal_m4_deps)
	(AUTOCONF, configure_deps, AUTOHEADER): New variables.
	($(srcdir)/aclocal.m4, $(srcdir)/configure, $(srcdir)/config.in)
	(am--refresh): New rules.
	(stamp-h, config.status): List config.in and configure including
	$(srcdir)/ prefix.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
2009-07-30 22:44:50 +00:00
Ralf Wildenhues
5bb4d8dedf config/
* extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Do not expand
	for Autoconf 2.62 or newer.
	* tls.m4 (GCC_CHECK_TLS): Fix m4 quotation.
	* no-executables.m4 (_AC_COMPILER_EXEEXT): Fix m4 quotation.
	* override.m4 (m4_copy_force, m4_rename_force): Provide
	macros if not defined.
	(AC_PREREQ): Use m4_copy_force.

readline/examples/rlfe/
	* configure.in: Correctly quote AC_PROGRAM_SOURCE definition.
2009-07-30 19:43:16 +00:00
Thomas Schwinge
fe79276ff1 2009-07-30 Thomas Schwinge <tschwinge@gnu.org>
* gnu-nat.c (add_task_commands) <stopped>: Register the correct
	callback function.
2009-07-30 17:42:24 +00:00
H.J. Lu
2edfe795a3 2009-07-30 H.J. Lu <hongjiu.lu@intel.com>
* ia64-tdep.c (ia64_access_reg): Correct paddress.
2009-07-30 16:29:53 +00:00
H.J. Lu
b37470e428 2009-07-30 H.J. Lu <hongjiu.lu@intel.com>
* ld-elf/shared.exp: Comment out dl3b.
2009-07-30 15:55:59 +00:00
Jan Kratochvil
54333c3bf8 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.
2009-07-30 13:12:54 +00:00
Nick Clifton
cab7e4d9d5 * doc/c-arm.texi (ARM-Instruction-Set): New node. Documents the
different syntaxes support by the ARM port.
        (ARM Directives): Add entry for .syntax.
2009-07-30 08:54:49 +00:00
Nick Clifton
f746e6b904 * doc/c-mips.texi (MIPS insn): Fix typo. 2009-07-30 08:45:41 +00:00
Hans-Peter Nilsson
cfdf6d77ef * ld-scripts/empty-address-3a.d, ld-scripts/empty-address-3b.d:
Skip for mmix-knuth-mmixware.
2009-07-30 00:13:55 +00:00
gdbadmin
8bcef88754 *** empty log message *** 2009-07-30 00:00:33 +00:00
Alan Modra
383b05fbab daily update 2009-07-30 00:00:09 +00:00
Paul Pluzhnikov
60f25dfd8c 2009-07-29 Paul Pluzhnikov <ppluzhnikov@google.com>
PR gdb/6817
	* dbxread.c (read_dbx_symtab): Reduce stack use.
2009-07-29 23:10:05 +00:00
DJ Delorie
b0832eea40 merge from gcc 2009-07-29 20:01:28 +00:00
Jan Kratochvil
e23cce4514 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.
2009-07-29 18:44:28 +00:00
Alan Modra
8dfab6dd9a * emulparams/elf32ppc.sh (PLT): Don't include ".iplt".
* emulparams/elf_i386.sh (IREL_IN_PLT): Define.
	* emulparams/elf_x86_64.sh (IREL_IN_PLT): Define.
	* scripttempl/elf.sc: Create separate .iplt and .rela.iplt sections
	when !IREL_IN_PLT.
2009-07-29 14:59:23 +00:00
Alan Modra
25f231068e * 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.
2009-07-29 14:56:38 +00:00
Alan Modra
28ec585fea * ppc64.h: Add R_PPC64_JMP_IREL, R_PPC64_REL16, R_PPC64_REL16_LO,
R_PPC64_REL16_HI, R_PPC64_REL16_HA.
2009-07-29 14:55:20 +00:00
Hans-Peter Nilsson
2a1314ce69 * ld-scripts/default-script.s (text): Globalize.
* ld-scripts/default-script1.d, ld-scripts/default-script2.d,
	ld-scripts/default-script3.d, ld-scripts/default-script4.d: Adjust
	accordingly.
2009-07-29 06:47:48 +00:00
Alan Modra
af65af87c0 PR ld/10269
* symbols.c (S_FORCE_RELOC): True for BSF_GNU_INDIRECT_FUNCTION.
	* config/tc-i386.c: Revert 2009-06-13 change.
	* config/tc-i386.h: Likewise.
2009-07-29 06:22:13 +00:00
Alan Modra
9384511500 * binutils-all/testranges.s: Replace .value with .short. 2009-07-29 06:10:18 +00:00
Hans-Peter Nilsson
18c32df5b4 * scripttempl/mmo.sc: For relocateable links, set $OUTPUT_FORMAT to
the new $RELOCATEABLE_OUTPUT_FORMAT, if set.
	(OUTPUT_FORMAT): Use the variable $OUTPUT_FORMAT.
	(ENTRY): Don't emit for relocateable links.
	(/DISCARD/): Don't discard .gnu.warning.* for relocateable links.
	* emulparams/mmo.sh (RELOCATEABLE_OUTPUT_FORMAT): Set, to
	elf64-mmix.
	* emulparams/elf64mmix.sh (OTHER_TEXT_SECTIONS): Empty, don't
	provide "Main" or set "_start.", for relocateable links.
2009-07-29 00:25:22 +00:00
gdbadmin
45de461e3b *** empty log message *** 2009-07-29 00:00:33 +00:00
Alan Modra
d1f17c3309 daily update 2009-07-29 00:00:05 +00:00
Hans-Peter Nilsson
80f540b775 * elf64-mmix.c (mmix_elf_relax_section): Revert 2009-05-27
change.  Add note to head comment.
2009-07-28 23:45:22 +00:00
Daniel Jacobowitz
58d6951de5 * 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.
2009-07-28 18:26:51 +00:00
Daniel Jacobowitz
12b42a1250 * linux-low.c (linux_kill_one_lwp): Adjust kernel workaround to skip
the main thread again.
2009-07-28 17:44:29 +00:00
Daniel Jacobowitz
79626f8a5f * infrun.c (handle_inferior_event): Clear trap_expected after
stepping past a single-step breakpoint.
2009-07-28 17:43:58 +00:00
Daniel Jacobowitz
90445bd31f * 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.
2009-07-28 17:30:52 +00:00