Kevin Pouget [Mon, 19 Sep 2011 10:50:53 +0000 (10:50 +0000)]
[OBV] fix typos in ChangeLog
Tristan Gingold [Mon, 19 Sep 2011 08:24:23 +0000 (08:24 +0000)]
2011-09-19 Tristan Gingold <gingold@adacore.com>
* config/tc-alpha.c (insert_operand): Call as_bad_value_out_of_range
instead of as_warn_out_of_range.
gdbadmin [Mon, 19 Sep 2011 00:00:32 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Mon, 19 Sep 2011 00:00:05 +0000 (00:00 +0000)]
daily update
H.J. Lu [Sun, 18 Sep 2011 16:50:17 +0000 (16:50 +0000)]
Check zero address size.
2011-09-18 H.J. Lu <hongjiu.lu@intel.com>
PR binutils/13196
* dwarf.c (display_debug_aranges): Check zero address size.
Cary Coutant [Sun, 18 Sep 2011 15:06:28 +0000 (15:06 +0000)]
* incremental.cc (can_incremental_update): New function.
* incremental.h (can_incremental_update): New function.
* layout.cc (Layout::init_fixed_output_section): Call it.
(Layout::make_output_section): Don't allow patch space in .eh_frame.
* object.cc (Sized_relobj_file::do_layout): Call
can_incremental_update.
Yao Qi [Sun, 18 Sep 2011 14:34:55 +0000 (14:34 +0000)]
Support displaced stepping for Thumb 16-bit insns.
gdb/
* arm-tdep.c (THUMB_NOP) Define.
(thumb_copy_unmodified_16bit): New.
(thumb_copy_b, thumb_copy_bx_blx_reg): New.
(thumb_copy_alu_reg): New.
(arm_copy_svc): Move some common code to ...
(install_svc): ... here. New.
(thumb_copy_svc): New.
(install_pc_relative): New.
(thumb_copy_pc_relative_16bit): New.
(thumb_decode_pc_relative_16bit): New.
(thumb_copy_16bit_ldr_literal): New.
(thumb_copy_cbnz_cbz): New.
(cleanup_pop_pc_16bit_all): New.
(thumb_copy_pop_pc_16bit): New.
(thumb_process_displaced_16bit_insn): New.
(thumb_process_displaced_32bit_insn): New.
(thumb_process_displaced_insn): process thumb instruction.
Support displaced stepping for Thumb 32-bit insns.
gdb/
* arm-tdep.c (thumb_copy_unmodified_32bit): New.
(thumb2_copy_preload): New.
(thumb2_copy_copro_load_store): New.
(thumb2_copy_b_bl_blx): New.
(thumb2_copy_alu_imm): New.
(thumb2_copy_load_reg_imm): New.
(thumb2_copy_load_literal): New
(thumb2_copy_block_xfer): New.
(thumb_32bit_copy_undef): New.
(thumb_32bit_copy_unpred): New.
(thumb2_decode_ext_reg_ld_st): New.
(thumb2_decode_svc_copro): New.
(decode_thumb_32bit_store_single_data_item): New.
(thumb_copy_pc_relative_32bit): New.
(thumb_decode_pc_relative_32bit): New.
(decode_thumb_32bit_ld_mem_hints): New.
(thumb2_copy_table_branch): New
(thumb_process_displaced_32bit_insn): Process Thumb 32-bit
instructions.
gdb/testsuite/
* gdb.arch/arm-disp-step.S (test_ldr_literal): Test for Thumb
instructions.
(test_adr_32bit, test_pop_pc): Likewise.
(test_ldr_literal_16, test_cbz_cbnz, test_adr): New test for
Thumb instructions.
* gdb.arch/arm-disp-step.exp (test_ldm_stm_pc): Match $gdb_prompt
in gdb_test_multiple.
(test_ldr_literal_16, test_cbz_cbnz, test_adr): New.
Yao Qi [Sun, 18 Sep 2011 14:18:07 +0000 (14:18 +0000)]
gdb/
* arm-tdep.c (install_copro_load_store): PC is set 4-byte aligned.
(install_b_bl_blx): Likewise.
Yao Qi [Sun, 18 Sep 2011 02:36:27 +0000 (02:36 +0000)]
gdb/testsuite/
* lib/gdb.exp (can_single_step_to_signal_handler): New.
* gdb.base/kill-after-signal.exp: Call it. Skip if target doesn't
support single step to signal handler.
gdbadmin [Sun, 18 Sep 2011 00:00:32 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sun, 18 Sep 2011 00:00:06 +0000 (00:00 +0000)]
daily update
Yao Qi [Sat, 17 Sep 2011 14:37:59 +0000 (14:37 +0000)]
gdb/
* arm-tdep.c (install_ldr_str_ldrb_strb): Renamed to ...
(install_load_store): ... this. New.
Change parameter BYTE to SIZE.
(arm_copy_ldr_str_ldrb_strb): Update caller.
(arm_decode_ld_st_word_ubyte): Update caller.
Yao Qi [Sat, 17 Sep 2011 13:34:01 +0000 (13:34 +0000)]
gdb/testsuite/
* gdb.base/disp-step-fork.c: New.
* gdb.base/disp-step-syscall.exp: New.
* gdb.base/disp-step-vfork.c: New.
Yao Qi [Sat, 17 Sep 2011 13:29:32 +0000 (13:29 +0000)]
gdb/
* infrun.c (displaced_step_fixup): Move some code ...
(displaced_step_restore): ... here. New function.
(handle_inferior_event): Cleanup displaced stepping state for both
child and parent when get forked or vforked event.
* regcache.c (get_thread_arch_aspace_regcache): New function.
get_thread_arch_regcache (): Call it.
Alan Modra [Sat, 17 Sep 2011 00:00:06 +0000 (00:00 +0000)]
daily update
gdbadmin [Sat, 17 Sep 2011 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Joel Brobecker [Fri, 16 Sep 2011 19:09:57 +0000 (19:09 +0000)]
[Ada] Re-implement `info tasks' command using ui-out
This is in preparation for providing a GDB/MI equivalent of
the `info tasks' command. The previous implementation was using
various printf commands to generate the command output, which
does not work at all if we want to use that same code to generate
the result for that new GDB/MI command.
This patch thus re-implements the `info tasks' command (with no
arguments) in a way that makes it GDB/MI friendly.
There is an additional hicup, which is the fact that the `info tasks'
command displays a completely different type of output when a task
ID is given. For instance:
(gdb) info task 2
Ada Task: 0x644d20
Name: my_callee
Thread: 0
LWP: 0x5809
Parent: 1 (main_task)
Base Priority: 48
State: Blocked in accept or select with terminate
The above output is better when in CLI mode, but really not
what we want when in GDB/MI mode. In GDB/MI mode, we want to
follow what the `-thread-info' command does when a task-id
is given as an argument, which is to produce the same table,
but with only one element/task in it.
For compatibility as well as practical reasons, we do not want
to change the output of the `info task TASKNO' command when in
CLI mode. But it's easy to preserve this behavior while providing
the desirable output when in GDB/MI mode. For this, the function
used to generated the `info tasks' output has been enhanced to take
an argument interpreted as a string. The CLI command knows to never
provide that argument, while the GDB/MI command will pass one if
provided by the user.
gdb/ChangeLog:
* ada-tasks.c (print_ada_task_info): New function, merging
short_task_info and info_tasks together. Reimplement using
ui-out instead of printing to stdout directly. Move the code
building and checking the task list here, instead of leaving it
in info_tasks_command.
(info_task): Move the code building and checking the task
list here, instead of leaving it in info_tasks_command.
(info_tasks_command): Delete code building and checking
the task list - moved elsewhere. Update calls to info_tasks
and info_task.
One of the minor changes the switch caused is the introduction
of a space between the "current" column, and the task "ID"
column, which wasn't there before. This matches what we do
in the "info threads" command, so I kept that change. This
required an adjustment in the testsuite, however...
gdb/testsuite/ChangeLog:
* gdb.ada/tasks.exp: Make the expected output for
the `info tasks' tests more resilient to spacing
changes.
Joel Brobecker [Fri, 16 Sep 2011 19:09:43 +0000 (19:09 +0000)]
[Ada] Remove `from_tty' parameter from ada-tasks.c:info_task
This parameter is unused, and probably will never be useful.
gdb/ChangeLog:
* ada-tasks.c (info_task): Delete parameter `from_tty'.
Joel Brobecker [Fri, 16 Sep 2011 19:09:34 +0000 (19:09 +0000)]
[Ada] Remove `from_tty' parameter from ada-tasks.c:info_tasks
This parameter is unused, and probably will never be useful.
gdb/ChangeLog:
* ada-tasks.c (info_tasks): Delete parameter `from_tty'.
Joel Brobecker [Fri, 16 Sep 2011 19:09:26 +0000 (19:09 +0000)]
[Ada] Adjust ada-tasks.c:ada_build_task_list
Originally, this function had a parameter called `warn_if_null'
which would trigger a message to be printed on stdout if the
program was found to not use Ada tasking. It used one of the printf_
functions for that, which is wrong when considering the context of
GDB/MI interpreters.
So, this patch changes this function to stop printing the message,
and leaves that part to the callers instead. It also changes the
semantics slightly to return the number of tasks found, rather than
a yes/no answer. Not strictly needed, but simple enough to do, and
potentially useful later.
gdb/ChangeLog:
* ada-lang.h (ada_build_task_list): Remove parameter
`warn_if_null'.
* ada-tasks.c (ada_build_task_list): Remove parameter
`warn_if_null'. Adjust implementation and documentation.
(valid_task_id, ada_get_environment_task)
iterate_over_live_ada_tasks): Adjust call to ada_build_task_list.
(info_tasks_command): Adjust implementation.
(task_command): Likewise.
* ravenscar-thread.c (ravenscar_find_new_threads): Fix call
to ada_build_task_list.
Joel Brobecker [Fri, 16 Sep 2011 19:09:17 +0000 (19:09 +0000)]
[Ada] Store the Ada task list in per-inferior data
Instead of storing "the" Ada task list using a static global
in ada-tasks, this patch stores that information inside
per-inferior data.
We also add in the per-inferior data the location and type of
data used in the runtime to store that task list. Previously,
this information was saved as a static variable in one of the
functions, but this approach has the major flaw that it does
not handle multi-inferior debugging.
gdb/ChangeLog:
* ada-tasks.c (ada_tasks_check_symbol_table, task_list): Delete.
(enum ada_known_tasks_kind, struct ada_tasks_inferior_data): New.
(ada_tasks_inferior_data_handle): New static global.
(get_ada_tasks_inferior_data): New function.
(ada_get_task_number, get_task_number_from_id, valid_task_id)
(ada_get_environment_task, iterate_over_live_ada_tasks)
(add_ada_task, read_known_tasks_array, read_known_tasks_list):
Adjust.
(ada_set_current_inferior_known_tasks_addr): New function.
(read_known_tasks, ada_build_task_list, short_task_info)
(info_tasks, info_task, info_tasks_command, task_command_1)
(task_command, ada_task_list_changed): Adjust.
(ada_tasks_invalidate_inferior_data): New function.
(ada_normal_stop_observer, ada_new_objfile_observer): Adjust.
(_initialize_tasks): Set ada_tasks_inferior_data_handle.
* ada-lang.h (struct inferior): Add declaration.
(ada_task_list_changed): Update profile.
* remote-wtx-pd.c: #include "inferior.h".
(switch_to_pd_internal): Update call to ada_task_list_changed.
Joel Brobecker [Fri, 16 Sep 2011 19:09:07 +0000 (19:09 +0000)]
[Ada] Make the ATCB type info program-space-specific
This module caches the type description of various elements of
the Ada Task Control Block (ATCB). This cache was implemented
as static globals, which is wrong in the case where we have
multiple inferiors. This change cleans things up a bit by moving
some of these static globals to a per-program-space area.
gdb/ChangeLog:
* ada-tasks.c: #include "progspace.h" and "objfiles.h".
(atcb_type, atcb_common_type, atcb_ll_type, atcb_call_type)
(atcb_fieldno): Delete these static globals.
(struct ada_tasks_pspace_data): New struct.
(ada_tasks_pspace_data_handle): New static global.
(get_ada_tasks_pspace_data): New function.
(ada_tasks_invalidate_pspace_data): New function.
(get_tcb_types_info, ptid_from_atcb_common, read_atcb)
(read_known_tasks_list, ada_new_objfile_observer): Adjust.
(_initialize_tasks): Create this module's per-progspace
data handle.
Joel Brobecker [Fri, 16 Sep 2011 19:08:50 +0000 (19:08 +0000)]
[Ada] Rename struct tcb_fieldnos into atcb_fieldnos.
`atcb' is clearer than `tcb', as it stands for Ada Task Control
Block. This is also consistent with the rest of the code, which
uses atcb...
gdb/ChangeLog:
* ada-tasks.c (struct atcb_fieldnos): Renames struct tcb_fieldnos.
H.J. Lu [Fri, 16 Sep 2011 16:07:16 +0000 (16:07 +0000)]
Only run pr12975/pr13177 for *-*-linux* and *-*-gnu* targets.
2011-09-16 H.J. Lu <hongjiu.lu@intel.com>
* ld-elf/pr12975.d: Only run for *-*-linux* and *-*-gnu*
targets.
* ld-elf/pr13177.d: Likewise.
* ld-elf/pr13177.s: Avoid relocations in text sections.
Tristan Gingold [Fri, 16 Sep 2011 15:41:09 +0000 (15:41 +0000)]
2011-09-16 Tristan Gingold <gingold@adacore.com>
* fork-child.c (fork_inferior): Update comment. Use alloca
instead of xmalloc for argv. Move len and shell_command
declarations in the block where they are used.
Only call execvp. Factorize failure code.
Jan Kratochvil [Fri, 16 Sep 2011 14:36:55 +0000 (14:36 +0000)]
gdb/
Code cleanup.
* parse.c (write_exp_elt): Change argument to pass a pointer of union
`exp_element' instead of an element of the same and make the function
static.
(write_exp_elt_opcode, write_exp_elt_sym, write_exp_elt_block)
(write_exp_elt_objfile, write_exp_elt_longcst, write_exp_elt_dblcst)
(write_exp_elt_decfloatcst, write_exp_elt_type, write_exp_elt_intern):
Change argument of `write_exp_elt' function call.
Remove extra spaces from comments.
* parser-defs.h (write_exp_elt): Remove prototype.
Hui Zhu [Fri, 16 Sep 2011 09:07:01 +0000 (09:07 +0000)]
2011-09-16 Hui Zhu <teawater@gmail.com>
* gdb.texinfo (Tracepoint Restrictions): Change *$esp@300
to *(unsigned char *)$esp@300.
Jan Kratochvil [Fri, 16 Sep 2011 07:34:27 +0000 (07:34 +0000)]
gdb/testsuite/
* gdb.python/py-evthreads.exp (Run to breakpoint 1)
(reached breakpoint 2, reached breakpoint 3): Update expected output.
H.J. Lu [Fri, 16 Sep 2011 04:23:19 +0000 (04:23 +0000)]
Remove the group section if all members are removed.
binutils/
2011-09-15 H.J. Lu <hongjiu.lu@intel.com>
PR binutils/13180
* objcopy.c (is_strip_section_1): New.
(is_strip_section): Use it. Remove the group section if all
members are removed.
binutils/testsuite/
2011-09-15 H.J. Lu <hongjiu.lu@intel.com>
PR binutils/13180
* binutils-all/group-6.d: New.
* binutils-all/group-6.s: Likewise.
* binutils-all/objcopy.exp: Run group-6 for ELF targrts.
H.J. Lu [Fri, 16 Sep 2011 01:17:16 +0000 (01:17 +0000)]
Also hide symbols without PLT nor GOT references.
bfd/
2011-09-15 H.J. Lu <hongjiu.lu@intel.com>
PR ld/13177
* elflink.c (elf_gc_sweep_symbol): Also hide symbols without PLT
nor GOT references.
ld/testsuite/
2011-09-15 H.J. Lu <hongjiu.lu@intel.com>
PR ld/13177
* ld-elf/pr13177.d: New.
* ld-elf/pr13177.s: Likewise.
H.J. Lu [Fri, 16 Sep 2011 01:15:20 +0000 (01:15 +0000)]
Check if a symbol is hidden by linker script.
bfd/
2011-09-15 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12975
* bfd-in.h (bfd_elf_size_dynamic_sections): Remove pointer
to struct bfd_elf_version_tree.
* elflink.c (elf_info_failed): Remove verdefs.
(_bfd_elf_export_symbol): Updated.
_bfd_elf_link_assign_sym_version): Likewise.
(bfd_elf_size_dynamic_sections): Remove pointer to struct
bfd_elf_version_tree. Updated.
(bfd_elf_gc_mark_dynamic_ref_symbol): Check if a symbol is hidden
by linker script.
* linker.c (bfd_hide_sym_by_version): New.
* bfd-in2.h: Regenerated.
include/
2011-09-15 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12975
* bfdlink.h (bfd_link_info): Add version_info.
ld/
2011-09-15 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12975
* ldlang.c (lang_elf_version_info): Removed.
(lang_register_vers_node): Replace lang_elf_version_info with
link_info.version_info.
(lang_add_vers_depend): Likewise.
* pe-dll.c (process_def_file_and_drectve): Likewise.
* emultempl/solaris2.em (elf_solaris2_before_allocation): Likewise.
* ldlang.h (lang_elf_version_info): Removed.
* plugin.c (is_visible_from_outside): Check if symbol is hidden
by version script.
* emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
Remove lang_elf_version_info.
ld/testsuite/
2011-09-15 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12975
* ld-elf/pr12975.d: New.
* ld-elf/pr12975.s: Likewise.
* ld-elf/pr12975.t: Likewise.
gdbadmin [Fri, 16 Sep 2011 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Fri, 16 Sep 2011 00:00:06 +0000 (00:00 +0000)]
daily update
Stan Shebs [Thu, 15 Sep 2011 22:54:13 +0000 (22:54 +0000)]
* server.h (struct emit_ops): Add compare-goto fields.
* tracepoint.c (gdb_agent_op_sizes): New table.
(emit_eq_goto): New function.
(emit_ne_goto): New function.
(emit_lt_goto): New function.
(emit_le_goto): New function.
(emit_gt_goto): New function.
(emit_ge_goto): New function.
(is_goto_target): New function.
(compile_bytecodes): Recognize special cases of compare-goto
combinations and call specialized emitters for them.
* linux-x86-low.c (amd64_emit_eq_goto): New function.
(amd64_emit_ne_goto): New function.
(amd64_emit_lt_goto): New function.
(amd64_emit_le_goto): New function.
(amd64_emit_gt_goto): New function.
(amd64_emit_ge_goto): New function.
(amd64_emit_ops): Add the new functions.
(i386_emit_eq_goto): New function.
(i386_emit_ne_goto): New function.
(i386_emit_lt_goto): New function.
(i386_emit_le_goto): New function.
(i386_emit_gt_goto): New function.
(i386_emit_ge_goto): New function.
(i386_emit_ops): Add the new functions.
Paul Koning [Thu, 15 Sep 2011 18:33:15 +0000 (18:33 +0000)]
* python/py-cmd.c (gdbpy_string_to_argv): Decrement reference
count of item appended to list.
* python/py-type.c (typy_fields): Likewise.
Paul Koning [Thu, 15 Sep 2011 17:20:56 +0000 (17:20 +0000)]
Fix ChangeLog typo
Paul Koning [Thu, 15 Sep 2011 16:09:42 +0000 (16:09 +0000)]
* gdb.texinfo: Make style of Python functions and methods match
the syntax of Python. Also put class and module names explicitly
on function, member, and variable names, matching Python
documentation conventions.
H.J. Lu [Thu, 15 Sep 2011 16:03:03 +0000 (16:03 +0000)]
Support thin archive member for LTO.
2011-09-15 Dmitry Gorbachev <d.g.gorbachev@gmail.com>
PR ld/13183
* ldmain.c (add_archive_element): Support thin archive member
for LTO.
Joel Brobecker [Thu, 15 Sep 2011 15:49:53 +0000 (15:49 +0000)]
Add period at end of sentence in top entry.
Paul Koning [Thu, 15 Sep 2011 15:40:22 +0000 (15:40 +0000)]
MAINTAINERS (Right After Approval): Add myself to the list
Kevin Pouget [Thu, 15 Sep 2011 12:47:07 +0000 (12:47 +0000)]
2011-09-15 Kevin Pouget <kevin.pouget@st.com>
PR threads/12628
* linux-fork.c (checkpoint_command): Disallow checkpointing of
processes with multiple threads.
(inf_has_multiple_thread_cb): New function.
(inf_has_multiple_threads): New function.
Kevin Pouget [Thu, 15 Sep 2011 12:42:30 +0000 (12:42 +0000)]
2011-09-15 Kevin Pouget <kevin.pouget@st.com>
PR Python/12692 Add gdb.selected_inferior() to Python interface.
* python/py-inferior.c (GdbMethods): New Python method definition.
doc:
PR Python/12692 Add gdb.selected_inferior() to Python interface.
* gdb.texinfo (Inferiors In Python): Describe new
gdb.selected_inferior() function.
testsuite:
PR Python/12692 Add gdb.selected_inferior() to Python interface.
* gdb.python/py-inferior.exp: Add testcase for gdb.selected_inferior().
Kevin Pouget [Thu, 15 Sep 2011 12:27:20 +0000 (12:27 +0000)]
2011-09-15 Kevin Pouget <kevin.pouget@st.com>
Handle multiple breakpoint hits in Python interface:
* python/py-bpevent.c (create_breakpoint_event_object): Rename C/Python
variable to breakpoints.
* python/py-stopevent.c (emit_stop_event): Return a Python tuple of
bps instead of single breakpoint. Fix some space typos.
* python/py-stopevent.c (create_breakpoint_event_object): Rename
variable to breakpoints.
testsuite:
* gdb.python/py-events.exp: Set a duplicate breakpoint and check its
presence.
* gdb.python/py-events.py (breakpoint_stop_handler): Browse all the
breakpoint hits.
doc:
* gdb.texinfo (Events In Python): New function documentation:
gdb.BreakpointEvent.breakpoints. Indicate that
gdb.BreakpointEvent.breakpoint is now deprecated.
Kevin Pouget [Thu, 15 Sep 2011 12:18:29 +0000 (12:18 +0000)]
2011-09-15 Kevin Pouget <kevin.pouget@st.com>
* breakpoint.c (describe_other_breakpoints): Do not write 'duplicate'
note if the breakpoint is internal.
Kevin Pouget [Thu, 15 Sep 2011 11:53:03 +0000 (11:53 +0000)]
2011-09-15 Kevin Pouget <kevin.pouget@st.com>
* MAINTAINERS (Right After Approval): Add myself to the list
Alan Modra [Thu, 15 Sep 2011 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Thu, 15 Sep 2011 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
Pedro Alves [Wed, 14 Sep 2011 12:26:29 +0000 (12:26 +0000)]
2011-09-14 Pedro Alves <pedro@codesourcery.com>
* infrun.c (prepare_for_detach, wait_for_inferior)
(fetch_inferior_event): Don't flush the register cache.
* remote.c (struct stop_reply) <regcache>: Add comment.
Cary Coutant [Wed, 14 Sep 2011 01:29:01 +0000 (01:29 +0000)]
* configure.ac: Check for glibc support for gnu_indirect_function
support with static linking, setting automake conditional
IFUNC_STATIC.
* Makefile.in: Regenerate.
* configure: Regenerate.
* testsuite/Makefile.am (ifuncmain1static, ifuncmain2static)
(ifuncmain4static, ifuncmain5static, ifuncmain7static): Add check
for IFUNC_STATIC.
* testsuite/Makefile.in: Regenerate.
Cary Coutant [Wed, 14 Sep 2011 01:10:43 +0000 (01:10 +0000)]
* incremental.cc (Sized_relobj_incr::do_layout): Call
report_comdat_group for kept comdat sections.
* testsuite/Makefile.am (incremental_comdat_test_1): New test.
* testsuite/Makefile.in: Regenerate.
* testsuite/incr_comdat_test_1.cc: New source file.
* testsuite/incr_comdat_test_2_v1.cc: New source file.
* testsuite/incr_comdat_test_2_v2.cc: New source file.
* testsuite/incr_comdat_test_2_v3.cc: New source file.
gdbadmin [Wed, 14 Sep 2011 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Wed, 14 Sep 2011 00:00:06 +0000 (00:00 +0000)]
daily update
Jan Kratochvil [Tue, 13 Sep 2011 21:44:27 +0000 (21:44 +0000)]
gdb/
Remove excessive DWARF expressions memory duplication.
* dwarf2loc.c (per_cu_dwarf_call): Remove variable back_to and its use
for block.data.
(indirect_pieced_value): Remove variable result. Remove variable
back_to and its use for baton.data.
(dwarf2_compile_expr_to_ax): Remove variable back_to and its use for
block.data.
* dwarf2read.c (dwarf2_fetch_die_location_block): Remove xmemdup.
Update the function comment.
Jan Kratochvil [Tue, 13 Sep 2011 21:39:59 +0000 (21:39 +0000)]
gdb/testsuite/
* gdb.python/py-events.exp: Remove pretty printing comment.
* gdb.python/py-evsignal.exp: New file.
* gdb.python/py-evthreads.c: Include signal.h.
(thread3): Remove variable count3. Remove variable bad and use raise
instead.
(thread2): Remove variable count2. Move thread3 pthread_create here,
merge pthread_join to a single line.
(main): Remove variable count1. Merge pthread_join with pthread_create
to a single line.
* gdb.python/py-evthreads.exp: Remove pretty printing comment. New
KFAIL python/12966 for gdbserver. Test return value of
gdb_compile_pthreads. Use gdb_run_cmd. Replace send_gdb and
gdb_expect by gdb_test and gdb_test_multiple.
(thread 2, thread 3): New tests.
Pedro Alves [Tue, 13 Sep 2011 19:27:01 +0000 (19:27 +0000)]
2011-09-13 Pedro Alves <pedro@codesourcery.com>
* inferior.h (ALL_INFERIORS): New.
* linux-thread-db.c (thread_db_find_new_threads_2): Remove check
for a stopped thread.
(thread_db_find_new_threads): Look for threads in all inferiors.
Pedro Alves [Tue, 13 Sep 2011 16:37:13 +0000 (16:37 +0000)]
2011-09-13 Pedro Alves <pedro@codesourcery.com>
* breakpoint.c (update_watchpoint): Handle the case of the
watchpoint to update not being in the breakpoint list yet.
(hw_watchpoint_use_count): New, factored out from
hw_watchpoint_used_count.
(hw_watchpoint_used_count): Rename to ...
(hw_watchpoint_used_count_others): ... this. Add `except'
parameter. Don't count resources of `except'. Use
hw_watchpoint_use_count.
Ian Lance Taylor [Tue, 13 Sep 2011 16:16:51 +0000 (16:16 +0000)]
* object.cc (Sized_relobj_file::do_layout): Remove unused local
variable external_symbols_offset.
Pedro Alves [Tue, 13 Sep 2011 14:48:55 +0000 (14:48 +0000)]
2011-09-13 Pedro Alves <pedro@codesourcery.com>
* gdbthread.h (enum thread_state): Moved here.
(struct thread_info): Rename `executing_' field to `executing' and
`state_' to `state'.
* thread.c (enum thread_state): Moved to gdbthread.h.
(new_thread, add_thread_silent, delete_thread_1)
(any_live_thread_of_process, thread_alive, set_running)
(set_running, is_thread_state, any_running, is_executing)
(set_executing, finish_thread_state, print_thread_info)
(do_captured_thread_select): Adjust.
Jan Kratochvil [Tue, 13 Sep 2011 08:26:11 +0000 (08:26 +0000)]
gdb/
Fix compatibility with gcc < 4.3 and non-gcc compilers.
* amd64-tdep.c (amd64_skip_xmm_prologue): Convert 0b constants.
Alan Modra [Tue, 13 Sep 2011 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Tue, 13 Sep 2011 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
Pedro Alves [Mon, 12 Sep 2011 21:25:22 +0000 (21:25 +0000)]
gdb/
2011-09-12 Pedro Alves <pedro@codesourcery.com>
Matt Rice <ratmice@gmail.com>
PR gdb/13175
* interps.c (struct interp) <interpreter_out>: Delete field.
(interp_new): Remove the data and uiout parameters and adjust.
(interp_set): Only set the current_uiout from the interpreter's
uiout after initializing the interpreter. Adjust call to
init_proc.
(interp_ui_out): Adjust to call procs->ui_out_proc.
(interp_data, interp_name): New.
* interps.h (interp_init_ftype): Add `self' parameter.
(interp_ui_out_ftype): New typedef.
(struct interp_procs) <ui_out_proc>: New method pointer.
(interp_new): Remove the data and uiout parameters.
(interp_data, interp_name): Declare.
* tui/tui-interp.c (tui_init): Adjust prototype.
(tui_ui_out): New.
(_initialize_tui_interp): Install tui_ui_out. Don't instanciate
tui_out here. Adjust call to interp_new.
* tui/tui-io.c (tui_initialize_io): Don't set current_uiout here.
* cli/cli-interp.c (cli_interpreter_init): Adjust prototype.
(cli_ui_out): New.
(_initialize_cli_interp): Install it. Adjust call to interp_new.
* mi/mi-common.h (struct mi_interp) <uiout>: New field.
* mi/mi-interp.c (mi_interpreter_init): Adjust prototype.
Initialize mi->uiout depending on the mi_version as extracted from
the interpreter's name.
(mi_ui_out): New.
(_initialize_mi_interp): Install mi_ui_out. Adjust calls to
interp_new. Don't allocate the ui_out's of the interpreters here.
gdb/testsuite/
2011-09-12 Matt Rice <ratmice@gmail.com>
Pedro Alves <pedro@codesourcery.com>
PR gdb/13175
* gdb.base/interp.exp: New tests.
* gdb.base/interp.c: New file.
Aleksandar Ristovski [Mon, 12 Sep 2011 19:02:01 +0000 (19:02 +0000)]
* ChangeLog: Fix comment and date.
Aleksandar Ristovski [Mon, 12 Sep 2011 19:00:22 +0000 (19:00 +0000)]
* solib.c (solib_used): New function.
(update_solib_list, reload_shared_libraries_1): Check if objfile is used
by another so_list object before freeing it.
H.J. Lu [Mon, 12 Sep 2011 18:17:36 +0000 (18:17 +0000)]
Use .got.plt for IFUNC symbols if there are no GOT relocations.
bfd/
2011-09-12 H.J. Lu <hongjiu.lu@intel.com>
PR ld/13178
* elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Use .got.plt
if there are no GOT relocations.
ld/testsuite/
2011-09-12 H.J. Lu <hongjiu.lu@intel.com>
PR ld/13178
* ld-ifunc/ifunc-13-i386.d: Updated.
* ld-ifunc/ifunc-13-x86-64.d: Likewise.
* ld-ifunc/ifunc-3a-x86.d: Likewise.
* ld-x86-64/pr13082-5a.d: Likewise.
* ld-ifunc/ifunc-15-i386.d: New.
* ld-ifunc/ifunc-15-i386.s: Likewise.
* ld-ifunc/ifunc-15-x86-64.d: Likewise.
* ld-ifunc/ifunc-15-x86-64.s: Likewise.
Doug Evans [Mon, 12 Sep 2011 18:07:22 +0000 (18:07 +0000)]
* gdb.dwarf2/clztest.exp: Fix initialization of tests array.
* gdb.dwarf2/typeddwarf.exp: Ditto.
Ian Lance Taylor [Mon, 12 Sep 2011 17:34:26 +0000 (17:34 +0000)]
* object.cc (Sized_relobj_file::do_layout): Remove assertion which
triggered if object has no symbols.
gdbadmin [Mon, 12 Sep 2011 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Mon, 12 Sep 2011 00:00:05 +0000 (00:00 +0000)]
daily update
Jan Kratochvil [Sun, 11 Sep 2011 09:54:18 +0000 (09:54 +0000)]
gdb/
Code cleanup.
* mi/mi-cmd-stack.c (list_args_or_locals): Use enum for the parameter
values.
Alan Modra [Sun, 11 Sep 2011 00:00:06 +0000 (00:00 +0000)]
daily update
gdbadmin [Sun, 11 Sep 2011 00:00:05 +0000 (00:00 +0000)]
*** empty log message ***
Andreas Schwab [Sat, 10 Sep 2011 08:13:45 +0000 (08:13 +0000)]
Add PR markers
David S. Miller [Sat, 10 Sep 2011 05:15:43 +0000 (05:15 +0000)]
* output.cc (Output_fill_debug_info::do_write): Use Swap_unaligned.
(Output_fill_debug_line::do_write): Likewise.
Alan Modra [Sat, 10 Sep 2011 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Sat, 10 Sep 2011 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Jan Kratochvil [Fri, 9 Sep 2011 19:41:14 +0000 (19:41 +0000)]
gdb/
Code cleanup.
* amd64-tdep.c (amd64_skip_prologue): Move the XMM code to ...
(amd64_skip_xmm_prologue): ... this new function. Describe its
parameters. No longer use amd64_prologue_line_bug.
* defs.h (producer_is_gcc_ge_4): New declaration.
* dwarf2read.c (producer_is_gcc_ge_4): Move to utils.c.
(process_full_comp_unit): Update its caller. Remove
amd64_prologue_line_bug initialization.
* symtab.h (struct symtab): Remove field amd64_prologue_line_bug.
* utils.c (producer_is_gcc_ge_4): Moved here from dwarf2read.c.
Pedro Alves [Fri, 9 Sep 2011 19:29:51 +0000 (19:29 +0000)]
Fixup last entry.
2011-09-09 Pedro Alves <pedro@codesourcery.com>
* linux-nat.h (enum resume_kind): New.
(struct lwp_info) <last_resume_kind>: New field.
* linux-nat.c (linux_child_follow_fork): Set last_resume_kind to
resume_stop on the new lwp.
(add_lwp): Set last_resume_kind as resume_continue by default.
(lin_lwp_attach_lwp): Set last_resume_kind as resume_stop.
(resume_lwp): New, factored out from resume_callback. Also check
for pending status in lp->waitstatus.
(resume_callback): Reimplement.
(resume_clear_callback): Set last_resume_kind as resume_stop.
(resume_set_callback): Set last_resume_kind as resume_continue.
(linux_nat_resume, linux_handle_extended_wait): Set
last_resume_kind.
(running_callback): Also check lp->waitstatus for pending events.
(select_singlestep_lwp_callback): Check that lp->last_resume_kind
is resume_step.
(stop_and_resume_callback): Don't re-resume if the core wanted the
lwp stopped. Use resume_lwp instead of resume_callback. Avoid
using an invalidated pointer.
(linux_nat_filter_event): Don't discard SIGSTOPs as delayed
SIGSTOPs if the core wanted the LWP to stop.
(linux_nat_wait_1) Don't consume a pending SIGSTOP if the core
wanted the lwp to stop. If the core wanted the lwp to stop, and
the lwp stopped with a SIGSTOP, report a TARGET_SIGNAL_0 instead
of TARGET_SIGNAL_STOP.
(linux_nat_stop_lwp): Don't synchronously wait for the lwp to stop
here. Instead, signal the lwp, and set the last_resume_kind to
resume_stop.
Pedro Alves [Fri, 9 Sep 2011 19:27:50 +0000 (19:27 +0000)]
2011-09-09 Pedro Alves <pedro@codesourcery.com>
* linux-nat.h (enum resume_kind): New.
(struct lwp_info) <last_resume_kind>: New field.
(linux_child_follow_fork): Set last_resume_kind to resume_stop on
the new lwp.
(add_lwp): Set last_resume_kind as resume_continue by default.
(lin_lwp_attach_lwp): Set last_resume_kind as resume_stop.
(resume_lwp): New, factored out from resume_callback. Also check
for pending status in lp->waitstatus.
(resume_callback): Reimplement.
(resume_clear_callback): Set last_resume_kind as resume_stop.
(resume_set_callback): Set last_resume_kind as resume_continue.
(linux_nat_resume, linux_handle_extended_wait): Set
last_resume_kind.
(running_callback): Also check lp->waitstatus for pending events.
(select_singlestep_lwp_callback): Check that lp->last_resume_kind
is resume_step.
(stop_and_resume_callback): Don't re-resume if the core wanted the
lwp stopped. Use resume_lwp instead of resume_callback. Avoid
using an invalidated pointer.
(linux_nat_filter_event): Don't discard SIGSTOPs as delayed
SIGSTOPs if the core wanted the LWP to stop.
(linux_nat_wait_1) Don't consume a pending SIGSTOP if the core
wanted the lwp to stop. If the core wanted the lwp to stop, and
the lwp stopped with a SIGSTOP, report a TARGET_SIGNAL_0 instead
of TARGET_SIGNAL_STOP.
(linux_nat_stop_lwp): Don't synchronously wait for the lwp to stop
here. Instead, signal the lwp, and set the last_resume_kind to
resume_stop.
Pedro Alves [Fri, 9 Sep 2011 19:20:24 +0000 (19:20 +0000)]
2011-09-09 Pedro Alves <pedro@codesourcery.com>
* linux-nat.c (lin_lwp_attach_lwp): Return 1 (ignore) instead of
-1 (error), if the lwp exits right after attaching.
Kai Tietz [Fri, 9 Sep 2011 16:28:12 +0000 (16:28 +0000)]
2011-09-09 Kai Tietz <ktietz@redhat.com>
* peicode.h (pe_ILF_build_a_bfd): Don't remove leading underscore
for targets without symbol_leading_char.
Alan Modra [Fri, 9 Sep 2011 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Fri, 9 Sep 2011 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
Stan Shebs [Thu, 8 Sep 2011 22:38:29 +0000 (22:38 +0000)]
* linux-x86-low.c (i386_emit_prologue): Save %ebx.
(i386_emit_epilogue): Restore %ebx.
Doug Evans [Thu, 8 Sep 2011 19:51:27 +0000 (19:51 +0000)]
* py-cmd.c: Some minor formatting fixes.
(gdbpy_parse_command_name): Rename text arg to name, make const.
All callers updated.
* python-internal.h (gdbpy_parse_command_name): Update.
David S. Miller [Thu, 8 Sep 2011 19:03:17 +0000 (19:03 +0000)]
opcodes/
* sparc-opc.c (sparc_opcodes): Add entry for 'save simm13,regrs1,regrd'
This has been reported as being accepted by the Sun assmebler.
gas/testsuite/
* gas/sparc/save-args.[sd]: New test.
* gas/sparc/sparc.exp: Run new test.
David S. Miller [Thu, 8 Sep 2011 19:01:11 +0000 (19:01 +0000)]
opcodes/
The changes below bring 'mov' and 'ticc' instructions into line
with the V8 SPARC Architecture Manual.
* sparc-opc.c (sparc_opcodes): Add entry for 'ticc imm + regrs1'.
* sparc-opc.c (sparc_opcodes): Add alias entries for
'mov regrs2,%asrX'; 'mov regrs2,%y'; 'mov regrs2,%prs';
'mov regrs2,%wim' and 'mov regrs2,%tbr'.
* sparc-opc.c (sparc_opcodes): Move/Change entries for
'mov imm,%asrX'; 'mov imm,%y'; 'mov imm,%prs'; 'mov imm,%wim'
and 'mov imm,%tbr'.
* sparc-opc.c (sparc_opcodes): Add wr alias entries to match above
mov aliases.
gas/testsuite/
* gas/sparc/ticc-imm-reg.[sd]: New test.
* gas/sparc/v8-movwr-imm.[sd]: New test.
* gas/sparc/sparc.exp: Run new tests.
Jan Kratochvil [Thu, 8 Sep 2011 17:40:54 +0000 (17:40 +0000)]
gdb/testsuite/
Fix compatibility with x32 arch.
* testsuite/gdb.dwarf2/typeddwarf.exp: Check also is_lp64_target.
* testsuite/gdb.trace/backtrace.exp: Use is_amd64_regs_target and
is_x86_like_target.
* testsuite/gdb.trace/collection.exp: Likewise.
* testsuite/gdb.trace/report.exp: Likewise.
* testsuite/gdb.trace/unavailable.exp: Likewise.
* testsuite/gdb.trace/while-dyn.exp: Likewise.
* testsuite/lib/gdb.exp (is_amd64_regs_target): New function.
(is_x86_like_target): Check also is_amd64_regs_target.
Doug Evans [Thu, 8 Sep 2011 17:20:43 +0000 (17:20 +0000)]
* cli/cli-decode.c (add_cmd): Add comment.
David S. Miller [Thu, 8 Sep 2011 16:56:10 +0000 (16:56 +0000)]
gas/
* config/tc-sparc.c (sparc_ip): Handle 'i' + r<0..31>
in addition to 'i' + [goli]<0..7>.
gas/testsuite/
* gas/sparc/imm-plus-rreg.[sd]: New test.
* gas/sparc/sparc.exp: Run new test.
David S. Miller [Thu, 8 Sep 2011 16:40:47 +0000 (16:40 +0000)]
opcodes/
* sparc-opc.c (pdistn): Destination is integer not float register.
gas/testsuite/
* gas/sparc/hpcvis3.s: Correct pdistn test.
* gas/sparc/hpcvis3.d: Likewise.
Nick Clifton [Thu, 8 Sep 2011 16:09:57 +0000 (16:09 +0000)]
* po/ja.po: Updated Japanese translation.
Nick Clifton [Thu, 8 Sep 2011 16:07:11 +0000 (16:07 +0000)]
* cgen.c (gas_cgen_pcrel_r_type): New function.
(gas_cgen_tc_gen_reloc): Check for GAS_CGEN_PCREL_R_TYPE.
* cgen.h (gas_cgen_pcrel_r_type): Declare.
Nick Clifton [Thu, 8 Sep 2011 16:06:11 +0000 (16:06 +0000)]
* bfdwin.c (bfd_get_file_window): Fix memory leak.
Jan Kratochvil [Thu, 8 Sep 2011 15:38:16 +0000 (15:38 +0000)]
gdb/
PR breakpoints/12435
* amd64-tdep.c (amd64_skip_prologue): New variables start_pc_sal,
next_sal, buf, offset and xmmreg. Advance PC if it sees the PR.
* dwarf2read.c (process_full_comp_unit): Initialize
amd64_prologue_line_bug.
* symtab.h (struct symtab): New field amd64_prologue_line_bug.
gdb/testsuite/
PR breakpoints/12435
* gdb.arch/amd64-prologue-xmm.c: New file.
* gdb.arch/amd64-prologue-xmm.exp: New file.
* gdb.arch/amd64-prologue-xmm.s: New file.
Jan Kratochvil [Thu, 8 Sep 2011 15:27:46 +0000 (15:27 +0000)]
gdb/
Fix TUI screen corruption.
* utils.c (fputs_maybe_filtered): Replace !input_from_terminal_p by
batch_flag.
Jan Kratochvil [Thu, 8 Sep 2011 15:26:08 +0000 (15:26 +0000)]
gdb/
* findvar.c (read_var_value): Never return NULL, throw an error
instead. Update the function comment. State symbol name in the error
messages.
* python/py-frame.c (frapy_read_var): Remove handling of NULL from
read_var_value.
* stack.c (print_frame_args): Likewise.
* valops.c (value_of_variable): Likewise.
Jan Kratochvil [Thu, 8 Sep 2011 15:24:25 +0000 (15:24 +0000)]
gdb/
* stack.c (print_frame_args): New variable except. Wrap
read_var_value and common_val_print into TRY_CATCH.
gdb/testsuite/
* gdb.dwarf2/dw2-param-error-main.c: New file.
* gdb.dwarf2/dw2-param-error.S: New file.
* gdb.dwarf2/dw2-param-error.exp: New file.
Pedro Alves [Thu, 8 Sep 2011 14:56:34 +0000 (14:56 +0000)]
2011-09-08 Pedro Alves <pedro@codesourcery.com>
* gdb.base/annota1.exp, gdb.base/annota3.exp: Extract the
inferior's pid and look for a core dump named core.$pid. Use
`remote_file' commands on the host instead of hand coding shell
commands on the build.
* gdb.base/valgrind-db-attach.exp: Kill the program before
finishing the test.
Jan Kratochvil [Thu, 8 Sep 2011 14:54:20 +0000 (14:54 +0000)]
gdb/
* eval.c (evaluate_subexp_standard) <OP_THIS>: Update the value_of_this
caller to value_of_this.
* p-exp.y: Update the value_of_this caller to value_of_this_silent.
Twice.
* valops.c (value_of_this): Remove parameter complain and variable ret.
Update function comment. Never return NULL by this code.
(value_of_this_silent): New function.
* value.h (value_of_this): Remove parameter complain.
(value_of_this_silent): New declaration.