gdbadmin [Sat, 19 Jul 2008 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sat, 19 Jul 2008 00:00:05 +0000 (00:00 +0000)]
daily update
DJ Delorie [Fri, 18 Jul 2008 22:25:07 +0000 (22:25 +0000)]
* config/tc-m32c.h (H_TICK_HEX): Define.
* config/tc-m32c.c (OPTION_H_TICK_HEX): Define.
(md_longopts): Add support for it.
(md_parse_option): Likewise.
* doc/as.texinfo (Overview): Add new m32c options.
* doc/c-m32c.texi (M32C-Modifiers): Likewise
* as.h: (enable_h_tick_hex): New.
* app.c (enable_h_tick_hex): New.
(LEX_IS_H): New.
(do_scrub_begin): Mark 'H' and 'h' as special if enable_h_tick_hex.
(do_scrub_chars): If enable_h_tick_hex and 'h', check for H'00
style hex constants and convert the input stream to 0x00 style.
(do_scrub_chars): If a 'X style character constant is found after
a symbol character (like you're or X'00), warn the user.
Tom Tromey [Fri, 18 Jul 2008 20:55:33 +0000 (20:55 +0000)]
gdb
PR gdb/855:
* NEWS: Add entry for macro commands.
* Makefile.in (macrocmd.o): Add gdb_string.h.
* macroscope.h (user_macro_scope): Declare.
(default_macro_scope): Update documentation.
(macro_user_macros): Declare.
* c-lang.c (c_preprocess_and_parse): Always attempt macro lookup.
Use user_macro_scope.
(null_macro_lookup): Remove.
* macrotab.h (macro_callback_fn): Declare.
(macro_for_each): Likewise.
(macro_allow_redefinitions): Likewise.
* macrotab.c (foreach_macro): New function
(macro_for_each): Likewise.
(struct macro_table) <redef_ok>: New field.
(macro_allow_redefinitions): New function.
(new_macro_table): Update.
(macro_define_function): Likewise.
(macro_define_object): Likewise.
* macroscope.c (user_macro_scope): New function.
(default_macro_scope): Use it.
(macro_user_macros): New global.
(standard_macro_lookup): Look in macro_user_macros.
(_initialize_macroscope): New function.
* macroexp.h (macro_is_whitespace, macro_is_digit,
macro_is_identifier_nondigit): Declare.
* macroexp.c (macro_is_whitespace): Rename. No longer static.
(macro_is_digit): Likewise.
(macro_is_identifier_nondigit): Likewise.
(get_identifier): Update.
(get_pp_number): Likewise.
(get_token): Likewise.
* macrocmd.c (skip_ws): New function.
(extract_identifier): Likewise.
(free_macro_definition_ptr): Likewise.
(user_macros): Remove.
(macro_define_command): Implement.
(_initialize_macrocmd): Update.
(macro_undef_command): Implement.
(print_one_macro): New function.
(macro_list_command): Implement.
gdb/doc
* gdb.texinfo (Macros): Update. Use @code rather than @command.
gdb/testsuite
* gdb.base/macscp.exp: Add macro tests.
Joseph Myers [Fri, 18 Jul 2008 20:49:12 +0000 (20:49 +0000)]
bfd:
* bfd-in.h (bfd_elf32_arm_set_target_relocs): Add new parameter.
* bfd-in2.h: Regenerate.
* elf32-arm.c (struct elf_arm_obj_tdata): Add field
no_wchar_size_warning.
(bfd_elf32_arm_set_target_relocs): Add new parameter
no_wchar_warn.
(elf32_arm_merge_eabi_attributes): Give a warning, not an error,
for conflicting wchar_t attributes. Do not warn if
--no-wchar-size-warning. Make diagnostic text more specific.
ld:
* ld.texinfo (--no-wchar-size-warning): Document new ARM option.
* emultempl/armelf.em (no_wchar_size_warning): New.
(arm_elf_create_output_section_statements): Pass
no_wchar_size_warning to arm_elf_create_output_section_statements.
(OPTION_NO_WCHAR_SIZE_WARNING): New.
(PARSE_AND_LIST_LONGOPTS): Add no-wchar-size-warning.
(PARSE_AND_LIST_OPTIONS): List --no-wchar-size-warning.
(PARSE_AND_LIST_ARGS_CASES): Handle --no-wchar-size-warning.
ld/testsuite:
* ld-arm/attr-merge-wchar-0.s,ld-arm/attr-merge-wchar-2.s,
ld-arm/attr-merge-wchar-4.s, ld-arm/attr-merge-wchar-00-nowarn.d,
ld-arm/attr-merge-wchar-00.d, ld-arm/attr-merge-wchar-02-nowarn.d,
ld-arm/attr-merge-wchar-02.d, ld-arm/attr-merge-wchar-04-nowarn.d,
ld-arm/attr-merge-wchar-04.d, ld-arm/attr-merge-wchar-20-nowarn.d,
ld-arm/attr-merge-wchar-20.d, ld-arm/attr-merge-wchar-22-nowarn.d,
ld-arm/attr-merge-wchar-22.d, ld-arm/attr-merge-wchar-24-nowarn.d,
ld-arm/attr-merge-wchar-24.d, ld-arm/attr-merge-wchar-40-nowarn.d,
ld-arm/attr-merge-wchar-40.d, ld-arm/attr-merge-wchar-42-nowarn.d,
ld-arm/attr-merge-wchar-42.d, ld-arm/attr-merge-wchar-44-nowarn.d,
ld-arm/attr-merge-wchar-44.d: New.
* ld-arm/arm-elf.exp: Run new tests.
Joseph Myers [Fri, 18 Jul 2008 13:38:14 +0000 (13:38 +0000)]
* configure.ac: Put old value of $LIBS after -lbfd -liberty $intl
in BFD ELF check.
* configure: Regenerate.
H.J. Lu [Fri, 18 Jul 2008 12:45:33 +0000 (12:45 +0000)]
2008-07-18 H.J. Lu <hongjiu.lu@intel.com>
PR ld/6748
* elf32-arm.c (elf32_arm_link_hash_table_create): Initialize
new fields added for ARM long call support.
Nick Clifton [Fri, 18 Jul 2008 11:30:22 +0000 (11:30 +0000)]
* pe-arm-wince.c (pe_print_compressed_pdata): Define new function to
print compressed pdata structure as described on MSDN. This only
applies to a limited set of architectures (ARM, SH4).
(slurp_symtab, my_symbol_for_address): Define static helper
functions for pe_print_compressed_pdata.
* coffcode.h (bfd_coff_backend_data): Add _bfd_coff_print_pdata field.
(bfd_coff_have_print_pdata, bfd_coff_print_pdata): Define.
* bfd/peXXigen.c (_bfd_XX_print_private_bfd_data_common): Add check on
bfd_coff_backend_data, call the function if non-null.
* pei-mcore.c: Add target dependent initialisation for
bfd_coff_backend_data.
* coff-sh.c: Likewise.
* coff64-rs6000.c: Likewise.
* coff-rs6000.c: Likewise.
* libcoff-in.h: Likewise.
* cf-i386lynx.c: Likewise.
* coff-alpha.c: Likewise.
* coff-apollo.c: Likewise.
* coff-arm.c: Likewise.
* coff-aux.c: Likewise.
* coff-h8300.c: Likewise.
* coff-h8500.c: Likewise.
* coff-i386.c: Likewise.
* coff-i860.c: Likewise.
* coff-i960.c: Likewise.
* coff-ia64.c: Likewise.
* coff-m68k.c: Likewise.
* coff-m88k.c: Likewise.
* coff-maxq.c: Likewise.
* coff-mips.c: Likewise.
* coff-or32.c: Likewise.
* coff-sparc.c: Likewise.
* coff-tic30.c: Likewise.
* coff-tic4x.c: Likewise.
* coff-tic54x.c: Likewise.
* coff-tic80.c: Likewise.
* coff-w65.c: Likewise.
* coff-we32k.c: Likewise.
* coff-x86_64.c: Likewise.
* coff-z80.c: Likewise.
* coff-z8k.c: Likewise.
* pe-mcore.c: Likewise.
* pe-mips.c: Likewise.
* pe-ppc.c: Likewise.
* peXXigen.c: Likewise.
* pei-ppc.c: Likewise.
* libcoff.h: Regenerate.
Ian Lance Taylor [Fri, 18 Jul 2008 07:03:27 +0000 (07:03 +0000)]
* symtab.cc (Symbol_table::add_from_object): Rewrite the case
where we see NAME/NULL and NAME/VERSION as separate symbols.
* testsuite/ver_test_main.cc (main): Call t4.
(t4, t4_2a): Define.
* testsuite/ver_test_2.cc (t4_2): Define.
* testsuite/ver_test_2.script: Put t4_2a in VER2.
* testsuite/ver_test_4.cc (t4_2a): Define.
* testsuite/ver_test_4.script: Put t4_2a in VER2.
* testsuite/ver_test.h (t4, t4_2, t4_2a): Declare.
Ian Lance Taylor [Fri, 18 Jul 2008 06:58:04 +0000 (06:58 +0000)]
* dynobj.cc (Versions::add_def): If we give an error about a
missing version, go ahead and create the version anyhow.
Alan Modra [Fri, 18 Jul 2008 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Fri, 18 Jul 2008 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Paul Pluzhnikov [Thu, 17 Jul 2008 20:57:26 +0000 (20:57 +0000)]
Fix for Linux/VDSO failure.
Paul Pluzhnikov [Thu, 17 Jul 2008 20:56:11 +0000 (20:56 +0000)]
Fix for failing gdb.base/auxv.exp on Linux
Paul Pluzhnikov [Thu, 17 Jul 2008 19:01:44 +0000 (19:01 +0000)]
Fix for gdb.base/corefile.exp failure on Linux
Alan Modra [Thu, 17 Jul 2008 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Thu, 17 Jul 2008 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Bernd Schmidt [Wed, 16 Jul 2008 15:27:05 +0000 (15:27 +0000)]
* elf32-bfin.c (bfin_check_relocs, bfin_relocate_section,
bfin_final_link_relocate, bfin_gc_mark_hook, bfin_gc_sweep_hook,
ELF_DYNAMIC_INTERPRETER, DEFAULT_STACK_SIZE,
struct _bfinfdpic_dynamic_got_info): Moved around to keep FD-PIC code
separate from non-FD-PIC.
Alan Modra [Wed, 16 Jul 2008 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Wed, 16 Jul 2008 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Daniel Jacobowitz [Tue, 15 Jul 2008 23:29:24 +0000 (23:29 +0000)]
Revert frame_unwind_caller_pc / frame_unwind_caller_id.
Andreas Schwab [Tue, 15 Jul 2008 22:13:42 +0000 (22:13 +0000)]
* valops.c (value_cast_pointers): Follow typedefs when checking
result of coercion.
Paul Pluzhnikov [Tue, 15 Jul 2008 19:15:28 +0000 (19:15 +0000)]
Fix for 'FAIL: gdb.cp/class2.exp: p acp->c2' on spu-elf
Daniel Jacobowitz [Tue, 15 Jul 2008 19:11:34 +0000 (19:11 +0000)]
* block.c (block_function): Renamed to ...
(block_linkage_function): ... this. All callers changed.
* block.h (block_function): Renamed to ...
(block_linkage_function): ... this.
Daniel Jacobowitz [Tue, 15 Jul 2008 18:58:32 +0000 (18:58 +0000)]
* frame.c (frame_unwind_id): Renamed to ...
(frame_unwind_caller_id): ... this. All callers updated.
(frame_pc_unwind): Renamed to ...
(frame_unwind_caller_pc): ... this. All callers updated.
* frame.h: Document frame_unwind_caller_WHAT functions.
(frame_unwind_id): Renamed to ...
(frame_unwind_caller_id): ... this.
(frame_pc_unwind): Renamed to ...
(frame_unwind_caller_pc): ... this.
* hppa-tdep.c (hppa_find_unwind_entry_in_block): Correct comment.
* stack.c (parse_frame_specification_1): Do not rely on
frame_unwind_id.
Daniel Jacobowitz [Tue, 15 Jul 2008 18:52:17 +0000 (18:52 +0000)]
* mn10300-tdep.c (set_reg_offsets): Use get_frame_register_unsigned.
Daniel Jacobowitz [Tue, 15 Jul 2008 18:50:15 +0000 (18:50 +0000)]
* frame.c (frame_sp_unwind): Delete.
(get_frame_sp): Do not use it.
* frame.h (frame_sp_unwind): Delete prototype.
H.J. Lu [Tue, 15 Jul 2008 18:48:34 +0000 (18:48 +0000)]
2008-07-15 H.J. Lu <hongjiu.lu@intel.com>
* objdump.c (load_debug_section): Initialize section_is_compressed
for gcc 3.4/ia64.
* readelf.c (load_debug_section): Likewise.
DJ Delorie [Tue, 15 Jul 2008 18:48:07 +0000 (18:48 +0000)]
* elf-m10300.c (mn10300_elf_final_link_relocate): Correct overflow
checks for PCREL8, PCREL16, GOTPC16, GOTOFF16, PLT16, and GOT16
relocs.
(mn10300_elf_relax_section): Correct jump offset check when target
is in a different section.
Daniel Jacobowitz [Tue, 15 Jul 2008 18:45:42 +0000 (18:45 +0000)]
* ia64-tdep.c (ia64_dummy_id): Use get_frame_pc.
H.J. Lu [Tue, 15 Jul 2008 18:44:18 +0000 (18:44 +0000)]
Add missing ChangeLog entries for
http://sourceware.org/ml/binutils-cvs/2008-05/msg00092.html
Daniel Jacobowitz [Tue, 15 Jul 2008 18:40:03 +0000 (18:40 +0000)]
* dwarf2-frame.c (dwarf2_frame_cache): Update comment.
* frame.c (frame_unwind_address_in_block): Delete.
(get_frame_address_in_block): Do not use it. Check the type
of the next frame first.
(frame_cleanup_after_sniffer): Update comment.
* frame.h (frame_unwind_address_in_block): Delete prototype.
* hppa-tdep.c (hppa_find_unwind_entry_in_block): Update comment.
Daniel Jacobowitz [Tue, 15 Jul 2008 18:32:06 +0000 (18:32 +0000)]
* frame.c (frame_func_unwind): Delete.
(get_frame_func): Do not use it.
* frame.h (frame_func_unwind): Delete prototype.
* hppa-tdep.c (hppa_frame_cache): Update comment.
* rs6000-tdep.c (rs6000_frame_cache): Update comment.
Stan Shebs [Tue, 15 Jul 2008 18:08:27 +0000 (18:08 +0000)]
* remote-sim.c (init_gdbsim_ops): Remove
TARGET_REDEFINE_DEFAULT_OPS.
Daniel Jacobowitz [Tue, 15 Jul 2008 17:53:11 +0000 (17:53 +0000)]
* findvar.c (read_var_value): Remove unused variable.
Luis Machado [Tue, 15 Jul 2008 17:25:21 +0000 (17:25 +0000)]
* infrun.c (handle_inferior_event): Tag threads as stopped
before inserting breakpoints.
Jie Zhang [Tue, 15 Jul 2008 13:09:47 +0000 (13:09 +0000)]
bfd/
* elf32-bfin.c (elf32_bfin_special_sections[]): New.
(elf_backend_special_sections): Define.
ld/
* emulparams/elf32bfinfd.sh (OTHER_SECTIONS): Define.
Hui Zhu [Tue, 15 Jul 2008 09:46:49 +0000 (09:46 +0000)]
* MAINTAINERS: Added myself to section Write After Approval.
gdbadmin [Tue, 15 Jul 2008 00:00:34 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Tue, 15 Jul 2008 00:00:05 +0000 (00:00 +0000)]
daily update
Paul Pluzhnikov [Mon, 14 Jul 2008 18:28:57 +0000 (18:28 +0000)]
Fix for PR gdb/2477
Pedro Alves [Mon, 14 Jul 2008 18:06:58 +0000 (18:06 +0000)]
* i386-dicos-tdep.c (i386_dicos_frame_align): Delete.
(i386_dicos_push_dummy_code): New.
(i386_dicos_init_abi): Don't register i386_dicos_frame_align.
Register i386_dicos_push_dummy_code.
Markus Deuling [Mon, 14 Jul 2008 11:25:12 +0000 (11:25 +0000)]
* mips-tdep.c (fp_register_arg_p): Add gdbarch as paramter.
(mips_n32n64_push_dummy_call, mips_o64_return_value)
(mips_eabi_push_dummy_call): Update call to fp_register_arg_p.
(MIPS_FPU_TYPE): Add gdbarch as parameter and replace current_gdbarch.
(fp_register_arg_p, mips_dump_tdep, show_mipsfpu_command)
(mips_n32n64_fp_arg_chunk_p): Update caller.
(mips_n32n64_fp_arg_chunk_p): Add gdbarch as paramter.
(mips_n32n64_push_dummy_call): Update caller.
(MIPS_LAST_ARG_REGNUM): Add gdbarch as parameter and replace
current_gdbarch.
(mips_eabi_push_dummy_call, mips_n32n64_push_dummy_call)
(mips_o32_push_dummy_call, mips_o64_push_dummy_call): Update caller.
(MIPS_LAST_FP_ARG_REGNUM): Add gdbarch as parameter and replace
current_gdbarch.
(mips_eabi_push_dummy_call, mips_o32_push_dummy_call)
(mips_o64_push_dummy_call): Update caller.
(MIPS_EABI): Add gdbarch as parameter and replace current_gdbarch.
(fp_register_arg_p, mips_dump_tdep): Update caller.
(set_reg_offset): Add gdbarch as parameter and replace current_gdbarch.
(mips16_scan_prologue, mips32_scan_prologue): Update caller.
(reset_saved_regs): Make static. Add gdbarch as parameter. Replace
current_gdbarch.
(mips32_scan_prologue): Update caller.
(heuristic_proc_start): Add gdbarch as parameter. Replace
current_gdbarch.
(mips_insn16_frame_cache, mips_insn32_frame_cache): Update caller.
* mipsnbsd-nat.c (mipsnbsd_fetch_inferior_registers)
(mipsnbsd_store_inferior_registers): Use get_regcache_arch to get at
the current architecture. Update call to getregs_supplies.
(getregs_supplies): Add gdbarch as parameter and replace
current_gdbarch.
* mipsnbsd-tdep.c (mipsnbsd_get_longjmp_target): Use get_frame_arch to
get at the current architecture. Update call to NBSD_MIPS_JB_OFFSET and
NBSD_MIPS_JB_ELEMENT_SIZE.
(NBSD_MIPS_JB_ELEMENT_SIZE, NBSD_MIPS_JB_OFFSET): Add gdbarch and
replace current_gdbarch.
* remote-mips.c (mips_map_regno): Add gdbarch as parameter and replace
current_gdbarch.
(mips_fetch_registers, mips_store_registers): Update call
to mips_map_regno.
(mips_load): Use get_regcache_arch to get at the current_architecture
and replace current_gdbarch.
Jie Zhang [Mon, 14 Jul 2008 03:54:27 +0000 (03:54 +0000)]
* gas/bfin/{bit2.s, cache2.s, control_code2.s, event2.s,
logical2.s, move2.s, parallel.s, parallel2.s, parallel3.s,
parallel4.s, shift2.s, stack2.s, video2.s}: Remove DOS line
endings.
H.J. Lu [Mon, 14 Jul 2008 01:22:23 +0000 (01:22 +0000)]
Mention "PR ld/6741" in ChangeLog.
H.J. Lu [Mon, 14 Jul 2008 01:20:48 +0000 (01:20 +0000)]
Mention "PR binutils/6743" in ChangeLog.
Craig Silverstein [Mon, 14 Jul 2008 00:10:09 +0000 (00:10 +0000)]
2008-07-13 Craig Silverstein <csilvers@google.com>
* dwarf2.c (struct dwarf2_debug): New variable info_ptr_memory.
(find_line): Use info_ptr_memory instead of sec_info_ptr.
(_bfd_dwarf2_cleanup_debug_info): Likewise.
gdbadmin [Mon, 14 Jul 2008 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Mon, 14 Jul 2008 00:00:04 +0000 (00:00 +0000)]
daily update
Pedro Alves [Sun, 13 Jul 2008 19:25:58 +0000 (19:25 +0000)]
* thread.c (restore_selected_frame): On fail to restore, select
the innermost frame, and don't crash when warning the user.
Joel Brobecker [Sun, 13 Jul 2008 16:58:20 +0000 (16:58 +0000)]
* symtab.c (expand_line_sal): Fix a memory leak.
Jan Kratochvil [Sun, 13 Jul 2008 14:56:02 +0000 (14:56 +0000)]
* gdb.base/randomize.exp: Catch non-Linux targets as untested.
Pedro Alves [Sun, 13 Jul 2008 11:28:31 +0000 (11:28 +0000)]
* utils.c (struct continuation): Define as inheriting struct
cleanup.
(add_continuation, do_all_continuations)
(discard_all_continuations, add_intermediate_continuation)
(do_all_intermediate_continuations)
(discard_all_intermediate_continuations): Adjust.
Vladimir Prus [Sun, 13 Jul 2008 05:31:44 +0000 (05:31 +0000)]
Skip varobj in running threads.
* mi/mi-cmd-var.c (mi_cmd_var_update): If varobj's
thread is not stopped, skip the varobj.
* Makefile.in: Update dependencies.
Vladimir Prus [Sun, 13 Jul 2008 04:13:50 +0000 (04:13 +0000)]
Enable all MI commands while inferiour is running
* mi/mi-main.c (mi_cmd_execute): Don't check if
inferiour is executing.
Vladimir Prus [Sun, 13 Jul 2008 04:09:47 +0000 (04:09 +0000)]
Allow all CLI command even if target is executing.
* gdb/top.c (execute_command_1): Don't check if the inferiour
is running.
Vladimir Prus [Sun, 13 Jul 2008 03:59:28 +0000 (03:59 +0000)]
* mi/mi-main.c (mi_cmd_execute): Remove unused variable.
Fix printing of frame, when frame is wrong.
gdbadmin [Sun, 13 Jul 2008 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sun, 13 Jul 2008 00:00:04 +0000 (00:00 +0000)]
daily update
Ulrich Weigand [Sat, 12 Jul 2008 22:42:52 +0000 (22:42 +0000)]
* spu-tdep.c (spu_frame_unwind_cache): Do not error if
backchain is unreadable.
Ulrich Weigand [Sat, 12 Jul 2008 22:22:42 +0000 (22:22 +0000)]
* linux-low.c (handle_extended_wait): Do not use "status"
variable uninitialized.
Ulrich Weigand [Sat, 12 Jul 2008 22:16:34 +0000 (22:16 +0000)]
* spu-linux-nat.c: Include "gdbthread.h".
(spu_child_post_startup_inferior): Register main thread.
(spu_child_post_attach): Likewise.
* Makefile.in (spu-linux-nat.o): Update dependencies.
Craig Silverstein [Sat, 12 Jul 2008 21:36:53 +0000 (21:36 +0000)]
2008-07-12 Craig Silverstein <csilvers@google.com>
* configure.in: Check for, and include, libz.a if it is
present.
* configure: Regenerate.
* config.in: Regenerate.
Pedro Alves [Sat, 12 Jul 2008 19:25:42 +0000 (19:25 +0000)]
2008-07-12 Pedro Alves <pedro@codesourcery.com>
Rewrite continuations internals on top of cleanups and plug
continuation arguments leaks.
* defs.h (struct continuation): Make it opaque.
(add_continuation, add_intermediate_continuation): Drop the int
argument of the continuation hook argument. Add
continuation_free_args argument.
(do_all_continuations, do_all_intermediate_continuations): Drop
the error_p argument.
* utils.c (add_continuation): Drop the int argument of the
continuation hook argument. Add continuation_free_args argument.
Reimplement on top of cleanups.
(do_all_continuations): Drop error argument. Reimplement on top
of cleanups.
(discard_all_continuations): Reimplement on top of cleanups.
(add_intermediate_continuation): Drop the int argument of the
continuation hook argument. Add continuation_free_args argument.
Reimplement on top of cleanups.
(do_all_intermediate_continuations): Drop error argument.
Reimplement on top of cleanups.
(discard_all_intermediate_continuations): Reimplement on top of
cleanups.
* breakpoint.c (until_break_command_continuation): Drop error
argument. Add xfree as continuation argument deleter.
* inf-loop.c (inferior_event_handler): On error, discard all
continuations. Adjust to new do_all_intermediate_continuations
and do_all_continuations interfaces.
* infcmd.c (step_1_continuation): Drop error_p argument. Adjust.
Pass xfree as continuation argument deleter.
(finish_command_continuation): Drop error_p argument. Adjust.
(finish_command_continuation_free_arg): New.
(finish_command): Pass finish_command_continuation_free_arg as
continuation argument deleter. Adjust to new do_all_continuations
interfaces.
(attach_command_continuation): Drop error_p argument.
(attach_command_continuation_free_args): New.
(attach_command): Pass attach_command_continuation_free_args as
continuation argument deleter.
* interps.c (interp_set): Adjust to new do_all_continuations
interfaces.
* event-top.c (stdin_event_handler): In error, also discard the
intermediate continuations.
Pedro Alves [Sat, 12 Jul 2008 19:07:38 +0000 (19:07 +0000)]
Replace struct continuation_args by void* and per command structs.
* top.c (execute_command): Remove unused arg1 and arg2 locals.
* breakpoint.c (struct until_break_command_continuation_args):
New.
(until_break_command_continuation): Take a void* instead of a
continuations_arg. Adjust.
(until_break_command): Adjust to use struct
until_break_command_continuation_args instead of struct
continuation_arg.
* infcmd.c (struct step_1_continuation_args): New.
(step_1_continuation): Take a void* instead of a
continuations_arg. Adjust to use struct step_1_continuation_args.
(step_once): Adjust to use struct step_1_continuation_args.
(struct finish_command_continuation_args): New.
(finish_command_continuation): Take a void* instead of a
continuations_arg. Adjust to use struct
finish_command_continuation_args.
(finish_command): Adjust to use struct
finish_command_continuation_args.
(struct attach_command_continuation_args): New.
(attach_command_continuation): Take a void* instead of a
continuations_arg. Adjust to use struct
attach_command_continuation_args.
(attach_command): Adjust to use struct
attach_command_continuation_args.
* defs.h (struct continuation_arg): Delete.
(struct continuation): Replace the struct continuation_arg*
parameter of continuation_hook by a void*. Replace "arg_list"
member by a new "args" member with void* type.
(add_continuation, add_intermediate_continuation): Replace struct
continuation_arg type usages by void* usages.
* utils.c (add_continuation, do_all_continuations)
(add_intermediate_continuation)
(do_all_intermediate_continuations): Replace struct
continuation_arg type usages by void* usages. Pass "args" instead
of "arg_list".
Pedro Alves [Sat, 12 Jul 2008 18:39:10 +0000 (18:39 +0000)]
2008-07-12 Pedro Alves <pedro@codesourcery.com>
* infrun.c (struct thread_stepping_state): Delete sal member.
(init_thread_stepping_state): Add local sal. Use it instead of
tss->sal.
(handle_inferior_event): New local stop_pc_sal. Use it instead of
tss->sal.
(step_into_function): Add local stop_func_sal. Use it instead of
tss->sal.
Vladimir Prus [Sat, 12 Jul 2008 17:10:59 +0000 (17:10 +0000)]
Implement -exec-continue/-exec-interrupt --all.
* infcmd.c (continue_1): New, extracted from
(continue_command): ...here.
(interrupt_target_1): New, extracted from
(interrupt_target_command): ...here.
* inferior.h (continue_1, interrupt_target_1): New.
* mi/mi-main.c (mi_cmd_exec_continue)
(mi_cmd_exec_interrupt): Handle --all.
Vladimir Prus [Sat, 12 Jul 2008 16:37:57 +0000 (16:37 +0000)]
Implement --thread and --frame.
* gdbthread.h (find_thread_id): Declare.
* thread.c (find_thread_id): Make non-static.
* mi/mi-main.c (mi_cmd_execute): Switch to the right
thread and frame, if necessary.
* mi/mi-parse.c (mi_parse): Handle --thread and --frame.
* mi/mi-parse.h (strcut mi_parse): New fields thread and frame.
Vladimir Prus [Sat, 12 Jul 2008 13:42:54 +0000 (13:42 +0000)]
* infrun.c (resume): Discard cleanups on early exit path.
Vladimir Prus [Sat, 12 Jul 2008 12:41:56 +0000 (12:41 +0000)]
* infrun.c (normal_stop): For MI, report which threads
were stopped.
Vladimir Prus [Sat, 12 Jul 2008 12:34:19 +0000 (12:34 +0000)]
Report thread state in -thread-info output.
* thread.c (print_thread_info): Add new field "state".
Jie Zhang [Sat, 12 Jul 2008 08:54:13 +0000 (08:54 +0000)]
Revert my last change since it has not been approved.
gdbadmin [Sat, 12 Jul 2008 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sat, 12 Jul 2008 00:00:04 +0000 (00:00 +0000)]
daily update
Kevin Buettner [Fri, 11 Jul 2008 21:57:24 +0000 (21:57 +0000)]
* gdb.arch/e500-regs.exp (decimal_vector): Adjust "v8_int8" portion
of regexp to account for changes made to GDB in the printing of
byte vectors.
Jie Zhang [Fri, 11 Jul 2008 19:24:39 +0000 (19:24 +0000)]
bfd/
* elf.c (_bfd_elf_map_sections_to_segments): Don't put
executable sections into the same segment with other
read only sections if --sep-code.
* elf32-bfin.c (elf32_bfin_code_in_l1): New variable.
(elf32_bfin_data_in_l1): New variable.
(elf32_bfin_final_write_processing): New.
(elf32_bfin_special_sections[]): New.
(elf_backend_final_write_processing): Define.
(elf_backend_special_sections): Define.
binutils/
* readelf.c (get_machine_flags): Deal with Blackfin specific
flags.
include/
* bfdlink.h (struct bfd_link_info): Add sep_code member
variable.
* elf/bfin.h (EF_BFIN_CODE_IN_L1): Define.
(EF_BFIN_DATA_IN_L1): Define.
ld/
* Makefile.am (eelf32bfin.c): Depend on bfin.em.
(eelf32bfinfd.c): Likewise.
* Makefile.in: Regenerate.
* gen-doc.texi: Set Blackfin.
* ld.texinfo: Document --sep-code and Blackfin specific
options.
* ldmain.c (main): Initialize link_info.sep_code.
* lexsup.c (enum option_values): Add OPTION_SEP_CODE.
(ld_options[]): Add --sep-code.
(parse_args): Deal with --sep-code.
* emulparams/bfin.sh (EXTRA_EM_FILE): Define.
* emulparams/elf32bfinfd.sh (OTHER_SECTIONS): Define.
* emultempl/bfin.em: New file.
Pedro Alves [Fri, 11 Jul 2008 17:46:40 +0000 (17:46 +0000)]
* infrun.c (handle_inferior_event): Also ignore a
TARGET_SIGNAL_TRAP on a STOP_QUIETLY_NO_SIGSTOP.
H.J. Lu [Fri, 11 Jul 2008 17:19:00 +0000 (17:19 +0000)]
2008-07-11 H.J. Lu <hongjiu.lu@intel.com>
* ld-m68k/got-12.s: Removed.
* ld-m68k/got-13.s: Likewise.
* ld-m68k/got-14.s: Likewise.
* ld-m68k/got-15.s: Likewise.
* ld-m68k/got-34.s: Likewise.
* ld-m68k/got-35.s: Likewise.
* ld-m68k/xgot-15.s: Likewise.
* ld-m68k/got-multigot-12-13-14-34-35-ok.d: Remove #source
and expected relocations.
* ld-m68k/got-multigot-14-ok.d: Likewise.
* ld-m68k/got-negative-12-13-14-34-ok.d: Likewise.
* ld-m68k/got-negative-14-ok.d: Likewise.
* ld-m68k/got-single-12-ok.d: Likewise.
* ld-m68k/got-xgot-12-13-14-15-34-35-ok.d: Likewise.
* ld-m68k/got-xgot-15-ok.d: Likewise.
* ld-m68k/got-multigot-15-er.d: Remove #source.
* ld-m68k/got-negative-12-13-14-35-er.d: Likewise.
* ld-m68k/got-negative-15-er.d: Likewise.
* ld-m68k/got-single-13-er.d: Likewise.
* ld-m68k/m68k.exp: Move GOT tests to ...
* ld-m68k/m68k-got.exp: This. New.
Tom Tromey [Fri, 11 Jul 2008 15:07:52 +0000 (15:07 +0000)]
gdb
* completer.c (complete_line_internal): New function, from
complete_line. Add 'for_help' parameter.
(complete_line): Use it.
(command_completer): Move later. Rewrite.
gdb/testsuite
* gdb.base/completion.exp: Add 'help' completion test.
Pedro Alves [Fri, 11 Jul 2008 11:26:39 +0000 (11:26 +0000)]
* thread.c (thread_apply_command): Move making the cleanup out of
the loop.
Joseph Myers [Fri, 11 Jul 2008 11:15:59 +0000 (11:15 +0000)]
* mh-mingw (LDFLAGS): Append to rather than replacing previous
value.
Pedro Alves [Fri, 11 Jul 2008 11:07:39 +0000 (11:07 +0000)]
Exited threads.
* thread.c (enum thread_state): New.
(thread_state main_thread_running): Delete, in favor of...
(thread_state main_thread_state): ... this. Update throughout.
(clear_thread_inferior_resources): New, split from free_thread.
(free_thread): Call clear_thread_inferior_resources.
(init_thread_list): Set main thread to stopped state.
(add_thread_silent): Take care of PTID reuses.
(delete_thread): If deleting inferior_ptid or a thread with
refcount > 0, mark it as exited, but still keep it in the list.
Only notify of thread exits, if we haven't done so yet.
(iterate_over_threads): Make it safe to delete threads while
iterating over them.
(do_captured_list_thread_ids): Don't account for exited threads.
(thread_alive): Check for the THREAD_EXITED state, and don't set
ptid to -1 on exited threads.
(set_running): Update to account for extra possible states.
(is_thread_state): New.
(is_stopped, is_exited): New.
(is_running): Implement in terms of is_thread_state.
(any_running): Update.
(print_thread_info): Update. Account for exited threads. Don't
warn about missed frame restoring here, its done in the cleanup.
(switch_to_thread): Don't read from a thread that has gone.
(restore_current_thread): In non-stop mode, do a full context
switch.
(restore_selected_frame): Add a frame_level argument. Rewrite.
(struct current_thread_cleanup): Add selected_frame_level and
was_stopped members.
(do_restore_current_thread_cleanup): Check if thread was stopped
and still is, and if the target has registers, stack and memory
before restoring the selected frame. Don't delete the cleanup
argument here.
(restore_current_thread_cleanup_dtor): New.
(make_cleanup_restore_current_thread): Remove all arguments.
Rewrite.
(thread_apply_all_command): Update. Prune threads.
(thread_apply_command): Update.
(thread_command): Account for currently selected exited thread.
(do_captured_thread_select): Check for a running thread. Prune
threads.
(_initialize_thread): Make "info threads", "thread", "thread
apply", and "thread apply all" appliable without a selected thread.
* gdbthread.h (struct thread_info): Replace running_ by state_.
Add refcount.
(is_exited, is_stopped): Declare.
(make_cleanup_restore_current_thread): Remove all arguments.
* infrun.c: Include "event-top.h".
(fetch_inferior_event): In non-stop mode, restore selected thread
and frame after handling the event and running breakpoint
commands. Display GDB prompt if needed.
(normal_stop): In non-stop mode, don't print thread switching
notice.
* cli/cli-decode.c (set_cmd_no_selected_thread_ok)
(get_cmd_no_selected_thread_ok): New.
* cli/cli-decode.h (CMD_NO_SELECTED_THREAD_OK): New.
(set_cmd_no_selected_thread_ok, get_cmd_no_selected_thread_ok):
Declare.
* cli/cli-cmds.c: Set "pwd", "help", "info", "show" as
no-selected-thread ok.
* top.c (execute_command): Check for non no-selected-thread-ok
commands.
* linux-nat.c (struct saved_ptids, threads_to_delete)
(record_dead_thread, prune_lwps): Delete.
(exit_lwp): Unconditionally delete thread.
(linux_nat_resume): Remove prune_lwps call.
* infcmd.c (proceed_thread_callback): Check if !is_stopped instead
of is_running. Adjust to make_cleanup_restore_current_thread
interface change.
* mi/mi-main.c (mi_cmd_execute): Only allow a few commands if the
selected thread has exited.
* inf-loop.c (inferior_event_handler): Don't display the prompt
here.
* varobj.c (c_value_of_root): Update.
* defs.h (make_cleanup_dtor): Declare.
* utils.c (make_cleanup_dtor): New.
* Makefile.in (infrun.o): Depend on $(event_top_h).
Pedro Alves [Fri, 11 Jul 2008 10:59:21 +0000 (10:59 +0000)]
Add "continue -a" and "interrupt -a" options for non-stop mode.
* infcmd.c (proceed_thread_callback, do_context_switch_to): New.
(continue_command): Add "-a" option.
(interrupt_target_command): Add "-a" option.
(_initialize_infcmd): Add extend help of continue and interrupt
command to mention the new "-a" option. Mark "continue" async ok.
Hans-Peter Nilsson [Fri, 11 Jul 2008 10:47:29 +0000 (10:47 +0000)]
* binutils-all/objdump.W: Generalize to adjust for targets with
non-byte-size instructions.
Andreas Schwab [Fri, 11 Jul 2008 09:18:19 +0000 (09:18 +0000)]
(read_section): Take pointer to bfd_size_type instead
of unsigned long as last parameter.
(struct dwarf2_debug): Define dwarf_abbrev_size, dwarf_line_size,
dwarf_str_size and dwarf_ranges_size as bfd_size_type instead of
unsigned long.
Hans-Peter Nilsson [Fri, 11 Jul 2008 02:42:35 +0000 (02:42 +0000)]
* common.m4: Add test for libz and zlib.h.
Hans-Peter Nilsson [Fri, 11 Jul 2008 02:41:22 +0000 (02:41 +0000)]
* configure: Regenerate to track ../common/common.m4 changes.
* config.in: Ditto.
Hans-Peter Nilsson [Fri, 11 Jul 2008 02:39:11 +0000 (02:39 +0000)]
* configure.ac: Add test for libz and zlib.h.
* Makefile.in (LIBS): Set from @LIBS@.
* configure: Regenerate.
* config.in: Ditto.
Hans-Peter Nilsson [Fri, 11 Jul 2008 02:32:33 +0000 (02:32 +0000)]
* cris/configure: Regenerate to track ../common/common.m4 changes.
* cris/config.in: Ditto.
Hans-Peter Nilsson [Fri, 11 Jul 2008 02:31:04 +0000 (02:31 +0000)]
* common.m4: Add test for libz and zlib.h.
* configure: Regenerate to track ../common/common.m4 changes.
* config.in: Ditto.
Hans-Peter Nilsson [Fri, 11 Jul 2008 01:32:00 +0000 (01:32 +0000)]
* interp.c (hash): Remove incorrect prototype.
gdbadmin [Fri, 11 Jul 2008 00:00:34 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Fri, 11 Jul 2008 00:00:05 +0000 (00:00 +0000)]
daily update
Doug Evans [Thu, 10 Jul 2008 23:08:21 +0000 (23:08 +0000)]
Add "set print symbol-loading on|off".
* NEWS: Document new option.
* symfile.h (print_symbol_loading): Declare.
* symfile.c (print_symbol_loading): New global.
(symbol_file_add_with_addrs_or_offsets): Only print "Reading symbols
from ..." if print_symbol_loading.
(_initialize_symfile): Add set/show print symbol-loading.
* solib.c (solib_read_symbols): Only print "Loaded symbols for ..."
if print_symbol_loading.
* doc/gdb.texinfo: Document "set print symbol-loading on|off".
Ian Lance Taylor [Thu, 10 Jul 2008 23:01:20 +0000 (23:01 +0000)]
Handle output sections with more than 0x7fffffff bytes.
* object.h (class Relobj): Change map_to_output_ to
output_sections_, and just keep a section pointer. Change all
uses. Move comdat group support to Sized_relobj.
(Relobj::is_section_specially_mapped): Remove.
(Relobj::output_section): Remove poff parameter. Change all
callers.
(Relobj::output_section_offset): New function.
(Relobj::set_section_offset): Rewrite.
(Relobj::map_to_output): Remove.
(Relobj::output_sections): New function.
(Relobj::do_output_section_offset): New pure virtual function.
(Relobj::do_set_section_offset): Likewise.
(class Sized_relobj): Add section_offsets_ field. Add comdat
group support from Relobj. Update declarations.
(Sized_relobj::get_output_section_offset): New function.
(Sized_relobj::do_output_section_offset): New function.
(Sized_relobj::do_set_section_offset): New function.
* object.cc (Relobj::output_section_address): Remove.
(Sized_relobj::Sized_relobj): Initialize new fields.
(Sized_relobj::include_section_group): Cast find_kept_object to
Sized_relobj.
(Sized_relobj::include_linkonce_section): Likewise.
(Sized_relobj::do_layout): Use separate arrays for output section
and output offset.
(Sized_relobj::do_count_local_symbols): Change map_to_output to
output_sections.
(Sized_relobj::do_finalize_local_symbols): Change map_to_output to
output_sections and section_offsets.
(Sized_relobj::write_local_symbols): Likewise.
(map_to_kept_section): Compute output address directly.
* reloc.cc (Sized_relobj::do_read_relocs): Change map_to_output to
output_sections and section_offsets.
(Sized_relobj::write_sections): Likewise.
(Sized_relobj::relocate_sections): Likewise.
* symtab.cc (sized_finalize_symbol): Use output_section_offset.
* output.h (class Output_reloc): Update declarations. Change
u2_.relobj to Sized_relobj*.
(class Output_data_reloc): Change add functions to use
Sized_relobj*.
* output.cc (Output_reloc::Output_reloc): Change relobj to
Sized_relobj*.
(Output_reloc::local_section_offset): Change return type to
Elf_Addr. Use get_output_section_offset.
(Output_reloc::get_address): Likewise.
(Output_section::is_input_address_mapped): Don't call
is_section_specially_mapped.
(Output_section::output_offset): Likewise.
(Output_section::output_address): Likewise.
(Output_section::starting_output_address): Likewise.
* copy-relocs.cc (Copy_relocs::copy_reloc): Change object
parameter to Sized_relobj*.
(Copy_relocs::need_copy_reloc): Likewise.
(Copy_relocs::save): Likewise.
* copy-relocs.h (class Copy_relocs): Update declarations.
(class Copy_relocs::Copy_reloc_entry): Change constructor to use
Sized_relobj*. Change relobj_ field to Sized_relobj*.
* target-reloc.h (relocate_for_relocatable): Change
offset_in_output_section type to Elf_Addr. Change code that uses
it as well.
* layout.cc (Layout::layout): Always set *off.
* mapfile.cc (Mapfile::print_input_section): Use
output_section_offset.
* i386.cc (Target_i386::copy_reloc): Change object parameter to
Sized_relobj*.
* powerpc.cc (Target_powerpc::copy_reloc): Likewise.
* sparc.cc (Target_sparc::copy_reloc): Likewise.
* x86_64.cc (Target_x86_64::copy_reloc): Likewise.
Pedro Alves [Thu, 10 Jul 2008 22:58:37 +0000 (22:58 +0000)]
Non-stop linux native.
* linux-nat.c (linux_test_for_tracefork): Block events while we're
here.
(get_pending_status): Implement non-stop mode.
(linux_nat_detach): Stop threads before detaching.
(linux_nat_resume): In non-stop mode, always resume only a single
PTID.
(linux_handle_extended_wait): On a clone event, in non-stop mode,
add new lwp to GDB's thread table, and mark as running, executing
and stopped appropriately.
(linux_nat_filter_event): Don't assume there are other running
threads when a thread exits.
(linux_nat_wait): Mark the main thread as running and executing.
In non-stop mode, don't stop all lwps.
(linux_nat_kill): Stop lwps before killing them.
(linux_nat_thread_alive): Use signal 0 to detect if a thread is
alive.
(send_sigint_callback): New.
(linux_nat_stop): New.
(linux_nat_add_target): Set to_stop to linux_nat_stop.
* linux-nat.h (thread_db_attach_lwp): Declare.
* linux-thread-db.c (thread_get_info_callback): Check for new
threads if we have none.
(thread_from_lwp, enable_thread_event): Set proc_handle.pid to the
stopped lwp. Check for new threads if we have none.
(thread_db_attach_lwp): New.
(thread_db_init): Set proc_handle.pid to inferior_ptid.
(check_event): Set proc_handle.pid to the stopped lwp.
(thread_db_find_new_threads): Set proc_handle.pid to any stopped
lwp available, bail out if there is none.
* linux-fork.c (linux_fork_killall): Use SIGKILL instead of
PTRACE_KILL.
Jan Kratochvil [Thu, 10 Jul 2008 20:16:27 +0000 (20:16 +0000)]
* gdb.base/randomize.exp: Remove dependency on tcl-8.4+.
Kevin Buettner [Thu, 10 Jul 2008 19:40:43 +0000 (19:40 +0000)]
* rs6000-tdep.c (ppc_displaced_step_fixup): Change type of
`current_pc' from CORE_ADDR to ULONGEST.
Kevin Buettner [Thu, 10 Jul 2008 19:34:00 +0000 (19:34 +0000)]
* remote-sim.c (gdbsim_cntrl_c): Pass remote_sim_ptid to
gdbsim_stop().
Richard Sandiford [Thu, 10 Jul 2008 19:06:54 +0000 (19:06 +0000)]
bfd/
* elfxx-mips.c (mips_elf_calculate_relocation): Calculate GP and GP0
for all relocation types. Allow any type of relocation to refer to
__gnu_local_gp.
ld/testsuite/
* ld-mips-elf/no-shared-1-o32.s,
ld-mips-elf/no-shared-1-o32.d,
ld-mips-elf/no-shared-1-n32.d,
ld-mips-elf/no-shared-1-n64.s,
ld-mips-elf/no-shared-1-n64.d,
ld-mips-elf/no-shared-1.ld: New tests.
* ld-mips-elf/mips-elf.exp: Run them.