Tom Tromey [Mon, 20 May 2013 20:21:55 +0000 (20:21 +0000)]
* python/py-cmd.c (cmdpy_completer): Use iterator protocol.
Correctly decref.
Tom Tromey [Mon, 20 May 2013 20:20:48 +0000 (20:20 +0000)]
* python/py-cmd.c (cmdpy_init): Decref 'ds_obj'.
Tom Tromey [Mon, 20 May 2013 20:19:54 +0000 (20:19 +0000)]
* python/py-event.h (gdbpy_initialize_event_generic): Use
CPYCHECKER_NEGATIVE_RESULT_SETS_EXCEPTION.
* python/py-evts.c (add_new_registry): Use
CPYCHECKER_NEGATIVE_RESULT_SETS_EXCEPTION.
* python/python-internal.h
(CPYCHECKER_NEGATIVE_RESULT_SETS_EXCEPTION): New macro.
Tom Tromey [Mon, 20 May 2013 20:19:03 +0000 (20:19 +0000)]
* python/py-arch.c (archpy_disassemble): Update.
* python/py-type.c (typy_get_composite, typy_lookup_typename)
(typy_lookup_type): Use GDB_PY_HANDLE_EXCEPTION.
* python/py-utils.c (gdbpy_convert_exception): Return 'void'.
* python/python-internal.h (CPYCHECKER_SETS_EXCEPTION): New
macro.
(GDB_PY_HANDLE_EXCEPTION): Update.
(gdbpy_convert_exception): Update. Use CPYCHECKER_SETS_EXCEPTION.
Tom Tromey [Mon, 20 May 2013 20:18:22 +0000 (20:18 +0000)]
* python/python-internal.h (events_object_type): Remove.
Tom Tromey [Mon, 20 May 2013 20:16:57 +0000 (20:16 +0000)]
* python/py-event.h (evpy_emit_event): Use
CPYCHECKER_STEALS_REFERENCE_TO_ARG.
* python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
New macro.
Tom Tromey [Mon, 20 May 2013 20:16:24 +0000 (20:16 +0000)]
* py-evtregistry.c (create_event_object): Decref
eventregistry_object if PyList_New fails.
Tom Tromey [Mon, 20 May 2013 20:14:51 +0000 (20:14 +0000)]
* py-cmd.c (gdbpy_string_to_argv): Check result of
PyList_New.
Tom Tromey [Mon, 20 May 2013 20:13:28 +0000 (20:13 +0000)]
* python/python.c (before_prompt_hook): Add cleanup to
decref 'hook'.
Tom Tromey [Mon, 20 May 2013 20:12:04 +0000 (20:12 +0000)]
* python/py-function.c (fnpy_init): Decref result of
PyObject_GetAttrString.
Tom Tromey [Mon, 20 May 2013 20:10:03 +0000 (20:10 +0000)]
* python/py-threadevent.c (get_event_thread): Use
CPYCHECKER_RETURNS_BORROWED_REF.
* python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
New define.
(pspace_to_pspace_object, objfile_to_objfile_object)
(find_thread_object): Use it.
Tom Tromey [Mon, 20 May 2013 20:09:01 +0000 (20:09 +0000)]
* python/py-arch.c (arch_object_type): Use
CPYCHECKER_TYPE_OBJECT_FOR_TYPEDEF.
* python/py-block.c (block_syms_iterator_object_type):
Use CPYCHECKER_TYPE_OBJECT_FOR_TYPEDEF.
* python/py-bpevent.c (breakpoint_event_object_type):
Use CPYCHECKER_TYPE_OBJECT_FOR_TYPEDEF.
* python/py-cmd.c (cmdpy_object_type): Use
CPYCHECKER_TYPE_OBJECT_FOR_TYPEDEF.
* python/py-continueevent.c (continue_event_object_type):
Use CPYCHECKER_TYPE_OBJECT_FOR_TYPEDEF.
* python/py-event.h (GDBPY_NEW_EVENT_TYPE):
Use CPYCHECKER_TYPE_OBJECT_FOR_TYPEDEF.
* python/py-events.h (thread_event_object_type):
Use CPYCHECKER_TYPE_OBJECT_FOR_TYPEDEF.
* python/py-evtregistry.c (eventregistry_object_type): Use
CPYCHECKER_TYPE_OBJECT_FOR_TYPEDEF.
* python/py-exitedevent.c (exited_event_object_type):
Use CPYCHECKER_TYPE_OBJECT_FOR_TYPEDEF.
* python/py-finishbreakpoint.c (finish_breakpoint_object_type):
Use CPYCHECKER_TYPE_OBJECT_FOR_TYPEDEF.
* python/py-function.c (fnpy_object_type): Use
CPYCHECKER_TYPE_OBJECT_FOR_TYPEDEF.
* python/py-inferior.c (inferior_object_type, membuf_object_type):
Use CPYCHECKER_TYPE_OBJECT_FOR_TYPEDEF.
* python/py-infthread.c (thread_object_type): Use
CPYCHECKER_TYPE_OBJECT_FOR_TYPEDEF.
* python/py-lazy-string.c (lazy_string_object_type):
Use CPYCHECKER_TYPE_OBJECT_FOR_TYPEDEF.
* python/py-newobjfileevent.c (new_objfile_event_object_type):
Use CPYCHECKER_TYPE_OBJECT_FOR_TYPEDEF.
* python/py-objfile.c (objfile_object_type): Use
CPYCHECKER_TYPE_OBJECT_FOR_TYPEDEF.
* python/py-param.c (parmpy_object_type):
Use CPYCHECKER_TYPE_OBJECT_FOR_TYPEDEF.
* python/py-progspace.c (pspace_object_type):
Use CPYCHECKER_TYPE_OBJECT_FOR_TYPEDEF.
* python/py-signalevent.c (signal_event_object_type):
Use CPYCHECKER_TYPE_OBJECT_FOR_TYPEDEF.
* python/py-symtab.c (symtab_object_type, sal_object_type): Use
CPYCHECKER_TYPE_OBJECT_FOR_TYPEDEF.
* python/py-type.c (type_object_type, field_object_type)
(type_iterator_object_type): Use CPYCHECKER_TYPE_OBJECT_FOR_TYPEDEF.
* python/py-internal.h (CPYCHECKER_TYPE_OBJECT_FOR_TYPEDEF): New
define.
(value_object_type, block_object_type, symbol_object_type)
(event_object_type, stop_event_object_type, breakpoint_object_type)
(frame_object_type): Use CPYCHECKER_TYPE_OBJECT_FOR_TYPEDEF.
Andreas Tobler [Mon, 20 May 2013 18:00:36 +0000 (18:00 +0000)]
2013-05-20 Andreas Tobler <andreas@fgznet.ch>
* Makefile.in (ALL_TARGET_OBS): Add ppcfbsd-tdep.o.
(ALLDEPFILES): Add ppcfbsd-nat.c and ppcfbsd-tdep.c.
Doug Evans [Mon, 20 May 2013 17:24:21 +0000 (17:24 +0000)]
When reading CU, stay in DWO. Be more tolerent of bad debug info.
For Fission.
* dwarf2read.c (struct dwarf2_per_cu_data): New member
reading_dwo_directly.
(struct signatured_type): New member dwo_unit.
(struct die_reader_specs): New member comp_dir.
(create_signatured_type_table_from_index): Use malloc for
all_type_units instead of objfile's obstack.
(create_all_type_units): Ditto.
(fill_in_sig_entry_from_dwo_entry): New function.
(add_type_unit): New function.
(lookup_dwo_signatured_type): New function.
(lookup_dwp_signatured_type): New function.
(lookup_signatured_type): New arg cu. All callers updated.
(init_cu_die_reader): Initialize comp_dir.
(read_cutu_die_from_dwo): New arg stub_comp_dir. All callers updated.
Change assert of matching type signatures to call error on mismatch.
(lookup_dwo_unit): Add assert.
(init_tu_and_read_dwo_dies): New function.
(init_cutu_and_read_dies): Call it.
(build_type_unit_groups): Handle case of no type unit groups created.
(hash_dwo_file, eq_dwo_file): Handle missing comp_dir.
(lookup_dwo_cutu): Tweak complaint.
(dwarf2_free_abbrev_table): Check for NULL abbrev_table.
(dwarf2_per_objfile_free): Free all_type_units.
Will Newton [Mon, 20 May 2013 13:26:40 +0000 (13:26 +0000)]
bfd/elf64-aarch64.c: Remove dead code.
The relocs_copied member is never assigned a non-NULL value, so
this code does not appear to be used.
bfd/ChangeLog:
2013-05-20 Will Newton <will.newton@linaro.org>
* elf64-aarch64.c (elf64_aarch64_link_hash_entry): Remove
relocs_copied member.
(elf64_aarch64_link_hash_newfunc): Remove initialization of
relocs_copied member.
(elf64_aarch64_copy_indirect_symbol): Remove code to copy
relocs_copied member.
Joel Brobecker [Mon, 20 May 2013 10:27:26 +0000 (10:27 +0000)]
Add missing empty line after var declarations in handle_unload_dll
gdb/ChangeLog:
* windows-nat.c (handle_unload_dll): Add missing empty line.
Alan Modra [Mon, 20 May 2013 10:16:31 +0000 (10:16 +0000)]
* config/tc-ppc.c (md_apply_fix): Hoist code common to insn
and data fixups performing shift/high adjust/sign extension on
fieldval. Sink fx_pcrel handling and checks. Use fixP->fx_size
when writing data fixups rather than recalculating size.
Joel Brobecker [Mon, 20 May 2013 09:45:13 +0000 (09:45 +0000)]
[dwarf] Mark all functions as prototyped except C functions.
This makes sure that the types of the arguments are taken into account
when performing an inferior function call to a non-C (or C-like)
function. In particular, this makes sure that the arguments are
appropriatly converted to the correct type.
For instance, on x86_64-linux, with the following Ada code:
procedure Set_Float (F : Float) is
begin
Global_Float := F;
end Set_Float;
The following sequence shows that Float arguments are incorrectly
passed (Ada's Float type is the equivalent of type "float" in C):
(gdb) call set_float (2.0)
(gdb) print global_float
$1 = 0.0
Putting a breakpoint inside set_float to inspect the value of
register xmm0 gives the first hint of the problem:
(gdb) p $xmm0
$2 = (v4_float => (0 => 0.0, 2.0, 0.0, 0.0),
v2_double => (0 => 2.0, 0.0),
[...]
It shows that the argument was passed as a double.
The code responsible for doing appropriate type conversions
for the arguments (value_arg_coerce) found that our function
was not prototyped, and thus could not use typing information
for the arguments. Instead, it defaulted to the value of "set
coerce-float-to-double", which by default is true, to determine
the argument type.
This patch fixes the problem by setting the PROTOTYPE flag
for all functions of any language except C and Objective C.
gdb/ChangeLog:
* dwarf2read.c (prototyped_function_p): New function.
(read_subroutine_type): Use it.
gdb/testsuite/ChangeLog:
* gdb.ada/float_param: New testcase.
Joel Brobecker [Mon, 20 May 2013 09:14:24 +0000 (09:14 +0000)]
De-indent example code in rs6000-aix-tdep.c (ARI fix)
This patch de-indents the code provided as a comment explaining
how the code declaring the ld_info32_desc and ld_info64_desc globals
was generated. The intent is to avoid an ARI warning about a macro
not starting at column zero of the line.
gdb/ChangeLog:
* rs6000-aix-tdep.c: De-indent some example code provided
as a comment.
Alan Modra [Mon, 20 May 2013 00:00:04 +0000 (00:00 +0000)]
daily update
gdbadmin [Mon, 20 May 2013 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
Maciej W. Rozycki [Sun, 19 May 2013 21:40:00 +0000 (21:40 +0000)]
* elf32-vax.c (elf_vax_adjust_dynamic_symbol): Convert K&R
function definition.
gdbadmin [Sun, 19 May 2013 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sun, 19 May 2013 00:00:07 +0000 (00:00 +0000)]
daily update
Alan Modra [Sat, 18 May 2013 00:00:06 +0000 (00:00 +0000)]
daily update
gdbadmin [Sat, 18 May 2013 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
Edjunior Barbosa Machado [Fri, 17 May 2013 23:05:00 +0000 (23:05 +0000)]
2013-05-17 Edjunior Machado <emachado@linux.vnet.ibm.com>
* ppc-linux-nat.c (ppc_linux_region_ok_for_hw_watchpoint): Check if the
region is ok for a hardware watchpoint using the new ptrace interface
on Power servers.
Doug Evans [Fri, 17 May 2013 18:09:06 +0000 (18:09 +0000)]
* NEWS: Mention new maintenance commands check-symtabs, and
expand-symtabs, and renamed check-psymtabs.
* psymtab.c (maintenance_check_psymtabs): Renamed from
maintenance_check_symtabs. Only process already-expanded symbol
tables.
(_initialize_psymtab): Update.
* symmisc.c (maintenance_check_symtabs): New function.
(maintenance_expand_name_matcher): New function
(maintenance_expand_file_matcher): New function
(maintenance_expand_symtabs): New function.
(_initialize_symmisc): Add "mt check-symtabs" and "mt expand-symtabs"
commands.
doc/
* gdb.texinfo (Maintenance Commands): Update doc for
"maint check-psymtabs". Add doc for "maint check-symtabs",
"maint expand-symtabs".
testsuite/
* gdb.base/maint.exp: Update test for "maint check-psymtabs".
Add tests for "maint check-symtabs", "maint expand-symtabs".
Doug Evans [Fri, 17 May 2013 18:05:19 +0000 (18:05 +0000)]
* gdb.base/maint.exp: Remove testing of individual maint command
help output.
Tom Tromey [Fri, 17 May 2013 16:52:34 +0000 (16:52 +0000)]
* python/py-inferior.c (infpy_read_memory): Don't call
PyErr_SetString if PyObject_New fails.
* python/py-frame.c (frame_info_to_frame_object): Don't call
PyErr_SetString if PyObject_New fails.
H.J. Lu [Fri, 17 May 2013 16:24:21 +0000 (16:24 +0000)]
Replace hardcoded -ldl with check for availability
2013-05-17 Pavel Chupin <pavel.v.chupin@intel.com>
* acinclude.m4: Add check for dlopen in libdl.
* configure.ac: Ditto.
* configure: Regenerate.
Alan Modra [Fri, 17 May 2013 12:57:16 +0000 (12:57 +0000)]
* ia64-raw.tbl: Replace non-ASCII char.
* ia64-waw.tbl: Likewise.
* ia64-asmtab.c: Regenerate.
Phil Muldoon [Fri, 17 May 2013 08:34:18 +0000 (08:34 +0000)]
2013-05-17 Phil Muldoon <pmuldoon@redhat.com>
* frame.c (frame_stash): Convert to htab.
(frame_addr_hash): New function.
(frame_addr_hash_eq): New function.
(frame_stash_create): Convert function to create
a hash table.
(frame_stash_add): Convert function to add an entry to a hash
table.
(frame_stash_find): Convert function to search the hash table.
(frame_stash_invalidate): Convert function to empty the hash
table.
(get_frame_id): Only add to stash if a frame_id is created.
(_initialize_frame): Call frame_stash_create.
Thomas Schwinge [Fri, 17 May 2013 06:58:33 +0000 (06:58 +0000)]
Mark the following commit as tiny change:
gdb/
2013-05-16 Yue Lu <hacklu.newborn@gmail.com>
* configure.ac: Ensure MIG is available when building for GNU Hurd
hosts.
* configure: Regenerate.
Joel Brobecker [Fri, 17 May 2013 06:53:53 +0000 (06:53 +0000)]
[gdbserver/lynx178]: Fix null_ptid -vs- minus_one_ptid confusion in comment
gdb/gdbserver/ChangeLog:
* lynx-low.c (lynx_resume): Fix null_ptid/minus_one_ptid
confusion in comment.
Joel Brobecker [Fri, 17 May 2013 06:47:44 +0000 (06:47 +0000)]
gdbserver/lynx178: spurious SIG61 signal when resuming inferior.
On ppc-lynx178, resuming the execution of a program after hitting
a breakpoint sometimes triggers a spurious SIG61 event:
(gdb) cont
Continuing.
Program received signal SIG61, Real-time event 61.
[Switching to Thread 39]
0x10002324 in a_test.task1 (<_task>=0x3ffff774) at a_test.adb:30
30 select -- Task 1
From this point on, continuing again lets the signal kill the program.
Using "signal 0" or configuring GDB to discard the signal does not
help either, as the program immediately reports the same signal again.
What happens is the following:
- GDB sends a single-step order to gdbserver: $vCont;s:31
This tells GDBserver to do a step using thread 0x31=49.
GDBserver does the step, and thread 49 receives the SIGTRAP
indicating that the step has finished.
- GDB then sends a "continue", but this time does not specify
which thread to continue: $vCont;c
GDBserver uses an arbitrary thread's ptid to resume the program's
execution (the current_inferior's ptid was chosen for that).
See lynx-low.c:lynx_resume:
if (ptid_equal (ptid, minus_one_ptid))
ptid = thread_to_gdb_id (current_inferior);
So far on all LynxOS platforms, this has been good enough. But
not so on LynxOS 178. If the ptid used to resume the execution
is not the same as the thread that did the step, we get the weird
signal.
This patch fixes the problem by saving the ptid of the thread
that last caused an event, received during a call to waitpid.
The ptid is saved in per-process private data.
gdb/gdbserver/ChangeLog:
* lynx-low.c (struct process_info_private): New type.
(lynx_add_process): New function.
(lynx_create_inferior, lynx_attach): Replace calls to
add_process by calls to lynx_add_process.
(lynx_resume): If PTID is null, then try using
current_process()->private->last_wait_event_ptid.
Add comments.
(lynx_clear_inferiors): Delete. The contents of that function
has been inlined in lynx_mourn;
(lynx_wait_1): Save the ptid in the process's private data.
(lynx_mourn): Free the process' private data. Replace call
to lynx_clear_inferiors by call to clear_inferiors.
Yao Qi [Fri, 17 May 2013 02:22:52 +0000 (02:22 +0000)]
gdb/gdbserver
* i386-low.c (i386_length_and_rw_bits): Move the comment to
the right place.
gdbadmin [Fri, 17 May 2013 00:00:32 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Fri, 17 May 2013 00:00:06 +0000 (00:00 +0000)]
daily update
Thomas Schwinge [Thu, 16 May 2013 21:54:34 +0000 (21:54 +0000)]
gdb/
2013-05-16 Yue Lu <hacklu.newborn@gmail.com>
* configure.ac: Ensure MIG is available when building for GNU Hurd
hosts.
* configure: Regenerate.
Jan-Benedict Glaw [Thu, 16 May 2013 16:47:14 +0000 (16:47 +0000)]
* doc/c-msp430.texi: Fix typo.
also: * ChangeLog: Fix entry.
Cary Coutant [Thu, 16 May 2013 16:34:51 +0000 (16:34 +0000)]
bfd/
* ecoff.c (ecoff_link_check_archive_element): Add initializers for
external_ext_size and esize.
Tristan Gingold [Thu, 16 May 2013 15:41:40 +0000 (15:41 +0000)]
bfd/
2013-05-16 Tristan Gingold <gingold@adacore.com>
* coff-rs6000.c (_bfd_xcoff_reloc_type_lookup): Handle BFD_RELOC_16.
* coff64-rs6000.c (xcoff64_reloc_type_lookup): Likewise.
gas/
2013-05-16 Tristan Gingold <gingold@adacore.com>
* config/tc-ppc.c (ppc_is_toc_sym): Symbols of class XMC_TC
are also TOC symbols.
Tristan Gingold [Thu, 16 May 2013 15:37:50 +0000 (15:37 +0000)]
2013-05-16 Tristan Gingold <gingold@adacore.com>
* gas/ppc/ppc.exp: Do not run simpshft on aix.
Nick Clifton [Thu, 16 May 2013 13:19:40 +0000 (13:19 +0000)]
* config/tc-msp430.c: Make -mmcu recognise more part numbers.
Add -mcpu command to specify core type.
* doc/c-msp430.c: Update documentation.
* gas/msp430/opcodes.s: Use correct value for .arch pseudo.
* gas/msp430/msp430x.d: Use correct value for -mcpu option.
Luis Machado [Thu, 16 May 2013 10:31:49 +0000 (10:31 +0000)]
* linux-low.c: Move definition checks upwards for PT_TEXT_ADDR,
PT_DATA_ADDR and PT_TEXT_END_ADDR. Update comments.
(linux_read_offsets): Remove PT_TEXT_ADDR, PT_DATA_ADDR and
PT_TEXT_END_ADDR guards. Update comments.
(linux_target_op) <read_offsets>: Conditionally define to
linux_read_offsets if the target is UCLIBC and if it defines
PT_TEXT_ADDR, PT_DATA_ADDR and PT_TEXT_END_ADDR.
Pedro Alves [Thu, 16 May 2013 10:13:33 +0000 (10:13 +0000)]
gdb.ada/complete.exp: Fix FIXME.
2013-05-16 Pedro Alves <palves@redhat.com>
* gdb.ada/complete.exp (test_gdb_no_completion): Fix typo in
comment. Use gdb_test_no_output.
Joel Brobecker [Thu, 16 May 2013 07:39:43 +0000 (07:39 +0000)]
[dwarf]: Add DW_LANG_UPC support in set_cu_language.
gdb/ChangeLog:
* dwarf2read.c (set_cu_language): Add DW_LANG_UPC handling.
Joel Brobecker [Thu, 16 May 2013 07:02:43 +0000 (07:02 +0000)]
Missing do_cleanups in ada_make_symbol_completion_list.
This results in an internal-warning when trying the completion
when in Ada mode:
(gdb) b simple<TAB>
/[...]/cleanups.c:265: internal-warning: restore_my_cleanups has found a stale cleanup
A problem internal to GDB has been detected,
further debugging may prove unreliable.
Quit this debugging session? (y or n)
gdb/ChangeLog:
* ada-lang.c (ada_make_symbol_completion_list): Make sure
all cleanups are done before returning from this function.
gdb/testsuite/ChangeLog:
* gdb.ada/complete.exp: Add test verifying completion using
the "tab" key.
Alan Modra [Thu, 16 May 2013 00:00:06 +0000 (00:00 +0000)]
daily update
gdbadmin [Thu, 16 May 2013 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
Keith Seitz [Wed, 15 May 2013 21:21:05 +0000 (21:21 +0000)]
* gdb.base/filesym.exp: New completer test.
* gdb.base/filesym.c: New file.
Mike Frysinger [Wed, 15 May 2013 17:49:44 +0000 (17:49 +0000)]
sim: arm: add support for MOVW and MOVT instructions
From: Jayant R. Sonar <Jayant.Sonar@kpitcummins.com>
This patch adds simulator support for handling the armv7 instructions
'movw (immediate)' and 'movt'.
Compiler frequently use these instructions to load the 32bit addresses of
global variables, string pointers etc. into the general registers.
In absence of support of these instructions:
1. GDB run simulator fails to print even simple "hello world" string
on console.
2. Loading of global variable addresses into the registers fail causing
arithmetic operation failures.
Patch has been regression tested for arm-none-eabi (-march=armv7-a).
Pedro Alves [Wed, 15 May 2013 17:33:04 +0000 (17:33 +0000)]
Remove my name from a couple tests.
Tested on x86_64 Fedora 17.
gdb/testsuite/
2013-05-15 Pedro Alves <palves@redhat.com>
* gdb.base/fixsection.c: Remove attribution.
* gdb.base/watch-read.exp: Ditto.
Cary Coutant [Wed, 15 May 2013 16:36:38 +0000 (16:36 +0000)]
binutils/
* dwarf.c (SAFE_BYTE_GET64): Correct end-of-buffer check;
don't increment PTR.
(decode_location_expression): DW_OP_const2u should read 2 bytes.
(display_debug_lines_decoded): Adjust formatting.
* elfcomm.c (byte_get_little_endian): Add cases for 5-, 6-, and
7-byte reads.
(byte_get_big_endian): Likewise.
(byte_get_signed): Likewise.
Joel Brobecker [Wed, 15 May 2013 12:49:05 +0000 (12:49 +0000)]
Remove forward enum declaration in utils.h.
These forward declarations are a GNU extension, and they trigger
a build warning when the compiler does not support it.
gdb/ChangeLog:
* utils.h: #include "exceptions.h".
(enum errors): Remove partial declaration.
Joel Brobecker [Wed, 15 May 2013 12:26:14 +0000 (12:26 +0000)]
ppc-aix core file relocation.
The current code attempts to provide relocation support when debugging
core files via the rs6000_xfer_partial method of the rs6000-nat
target_ops vector. However, this target_ops vector does not get pushed
on the target stack at all when debugging core files, thus bypassing
completely that part of the code.
This patch fixes the problem by extending corelow's core_xfer_partial
into handling the TARGET_OBJECT_LIBRARIES_AIX object.
gdb/ChangeLog:
* gdbarch.sh (core_xfer_shared_libraries_aix): New method.
* gdbarch.h, gdbarch.c: Regenerate.
* corelow.c (core_xfer_partial): Add TARGET_OBJECT_LIBRARIES_AIX
handling.
* rs6000-aix-tdep.h: New file.
* Makefile.in (HFILES_NO_SRCDIR): Add rs6000-aix-tdep.h.
* rs6000-aix-tdep.c: Include "rs6000-aix-tdep.h" and
"xml-utils.h".
(struct field_info, struct ld_info_desc): New types.
(ld_info32_desc, ld_info64_desc): New static constants.
(struct ld_info): New type.
(rs6000_aix_extract_ld_info): New function.
(rs6000_aix_shared_library_to_xml): Likewise.
(rs6000_aix_ld_info_to_xml): Likewise.
(rs6000_aix_core_xfer_shared_libraries_aix): Likewise.
(rs6000_aix_init_osabi): Add call to
set_gdbarch_core_xfer_shared_libraries_aix.
* rs6000-nat.c: Add "rs6000-aix-tdep.h" include.
Remove "xml-utils.h" include.
(LdInfo): Delete typedef.
(ARCH64_DECL, LDI_FIELD, LDI_NEXT, LDI_FD, LDI_FILENAME):
Delete macros.
(rs6000_ptrace_ldinfo): Change return type to gdb_byte *.
Adjust code accordingly.
(rs6000_core_ldinfo): Delete, folded into
rs6000_aix_core_xfer_shared_libraries_aix.
(rs6000_xfer_shared_library): Delete.
(rs6000_xfer_shared_libraries): Reimplement.
Markus Metzger [Wed, 15 May 2013 07:04:12 +0000 (07:04 +0000)]
The "record goto" command scans its arguments for "begin", "start", or "end".
Turn those into sub-commands.
Document the "record goto" command.
Andreas Schwab [Wed, 15 May 2013 06:51:19 +0000 (06:51 +0000)]
* elf64-aarch64.c (elf_backend_default_execstack): Define to 0.
Saravanan Ekanathan [Wed, 15 May 2013 05:06:23 +0000 (05:06 +0000)]
gas/
* i386-gen.c (cpu_flag_init): Add CpuFSGSBase in CPU_BDVER3_FLAGS.
* i386-init.h: Regenerated.
gdbadmin [Wed, 15 May 2013 00:00:32 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Wed, 15 May 2013 00:00:06 +0000 (00:00 +0000)]
daily update
Jan Kratochvil [Tue, 14 May 2013 20:41:45 +0000 (20:41 +0000)]
gdb/
* linespec.c (convert_linespec_to_sals): New comment for
SOURCE_FILENAME assignment.
Jan Kratochvil [Tue, 14 May 2013 20:39:12 +0000 (20:39 +0000)]
gdb/
* cleanups.c (restore_my_cleanups): Replace gdb_assert by
internal_warning.
Tom Tromey [Tue, 14 May 2013 20:37:57 +0000 (20:37 +0000)]
* eval.c (parse_and_eval_long): Make 'exp' const.
* value.h (parse_and_eval_long): Update.
Tom Tromey [Tue, 14 May 2013 20:35:24 +0000 (20:35 +0000)]
* ui-file.c (gdb_fopen): Make arguments const.
* ui-file.h (gdb_fopen): Make arguments const.
Tom Tromey [Tue, 14 May 2013 20:33:36 +0000 (20:33 +0000)]
* remote.c (remote_set_trace_notes): Make arguments const.
* target.c (update_current_target): Update cast.
* target.h (to_set_trace_notes): Make arguments const.
Tom Tromey [Tue, 14 May 2013 20:32:15 +0000 (20:32 +0000)]
* go32-nat.c (go32_terminal_info): Make 'args' const.
* inferior.h (child_terminal_info): Update.
* inflow.c (child_terminal_info): Make 'args' const.
* target.c (default_terminal_info): Make 'args' const.
(debug_to_terminal_save_ours): Likewise.
* target.h (struct target_ops) <to_terminal_info>: Make argument
const.
Tom Tromey [Tue, 14 May 2013 20:30:48 +0000 (20:30 +0000)]
* gcore.c (create_gcore_bfd): Make 'filename' const.
* gcore.h (create_gcore_bfd): Make 'filename' const.
* record-full.c (record_full_save): Make 'recfilename' const.
* target.c (target_save_record): Make 'filename' const.
* target.h (struct target_ops) <to_save_record>: Make 'filename'
const.
(target_save_record): Likewise.
Alan Modra [Tue, 14 May 2013 00:00:06 +0000 (00:00 +0000)]
daily update
gdbadmin [Tue, 14 May 2013 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
Yufeng Zhang [Mon, 13 May 2013 22:33:54 +0000 (22:33 +0000)]
Corrected the changelog entry in the previous commit.
Yufeng Zhang [Mon, 13 May 2013 22:28:27 +0000 (22:28 +0000)]
gas/
* testsuite/gas/aarch64/diagnostic.s: Update.
* testsuite/gas/aarch64/diagnostic.l: Ditto.
* testsuite/gas/aarch64/movi.s: Add new tests.
* testsuite/gas/aarch64/movi.d: Update.
opcodes/
* aarch64-asm.c (aarch64_ins_advsimd_imm_modified): Remove assertion.
* aarch64-opc.c (operand_general_constraint_met_p): Relax the range
check from [0, 255] to [-128, 255].
Tom Tromey [Mon, 13 May 2013 19:32:17 +0000 (19:32 +0000)]
* gdb.dwarf2/implptrconst.exp: Create a CU with 4 byte address
size and change type sizes to 4 bytes.
Cary Coutant [Mon, 13 May 2013 17:35:22 +0000 (17:35 +0000)]
gold/
* configure.ac: Export DEFAULT_TARGET.
* configure: Regenerate.
* Makefile.in: Regenerate.
* testsuite/Makefile.am: Add .EXPORT_ALL_VARIABLES.
* testsuite/Makefile.in: Regenerate.
* testsuite/debug_msg.sh: Delete duplicate tests.
Don't check undef_int error message match for powerpc where the
source file and line number aren't available.
Tom Tromey [Mon, 13 May 2013 16:57:20 +0000 (16:57 +0000)]
fix PR number in ChangeLog
Tom Tromey [Mon, 13 May 2013 16:56:09 +0000 (16:56 +0000)]
PR gdb/15538:
* dwarf2read.c (dwarf2_record_block_ranges): Ensure that the
ranges section has been read.
Tom Tromey [Mon, 13 May 2013 16:51:52 +0000 (16:51 +0000)]
PR exp/15364:
* eval.c (evaluate_subexp_standard) <STRUCTOP_STRUCT,
STRUCTOP_PTR>: Return a not_lval value for
EVAL_AVOID_SIDE_EFFECTS.
* opencl-lang.c (evaluate_subexp_opencl): Return a not_lval value
for EVAL_AVOID_SIDE_EFFECTS.
gdb/testsuite
* gdb.base/exprs.exp (test_expr): Add regression test.
* gdb.base/exprs.c (null_t_struct): New global.
Nick Clifton [Mon, 13 May 2013 10:52:52 +0000 (10:52 +0000)]
* v850.igen (LDSR): Accept but ignore a selID parameter.
Joel Brobecker [Mon, 13 May 2013 10:27:35 +0000 (10:27 +0000)]
Float parameter passing in funcall on ppc-aix & ppc-lynx178.
Given the following code:
float global_float = 0.0;
void
set_float (float f)
{
global_float = f;
}
GDB incorrectly calls set_float if the set_float function is marked
as prototyped:
(gdb) call set_float (5.0)
(gdb) print global_float
$1 = 2048
What happens, when the function is marked as prototyped, is that
GDB finds that the argument is a float, casts the value given in
the expression to a float, and then gives that float to ppc-aix/
ppc-lynx178's push_dummy_call gdbarch routine. The latter then blindly
copies it as is in the first floating-point register, instead of
making sure that it has the proper format first.
gdb/ChangeLog:
* rs6000-aix-tdep.c (rs6000_push_dummy_call): Convert
floating point registers to register type before storing
value.
* rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call):
Likewise.
Muhammad Bilal [Mon, 13 May 2013 08:49:23 +0000 (08:49 +0000)]
* History saving should stay disabled for test cases *
I saw some test cases in gdb.base/default.exp and gdb.base/setshow.exp
are enabling the history saving.
Hence .gdb_history file is modified with history information even
though, by default, we have History saving disabled.
So we should modify GDB test cases so that history saving should stay
off for all test cases.
ChangeLog:
2013-05-13 Muhammad Bilal <mbilal@codesourcery.com>
* gdb.base/default.exp: Disable history saving.
* gdb.base/setshow.exp: Likewise.
gdbadmin [Mon, 13 May 2013 00:00:32 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Mon, 13 May 2013 00:00:06 +0000 (00:00 +0000)]
daily update
Alan Modra [Sun, 12 May 2013 00:00:06 +0000 (00:00 +0000)]
daily update
gdbadmin [Sun, 12 May 2013 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sat, 11 May 2013 00:00:06 +0000 (00:00 +0000)]
daily update
gdbadmin [Sat, 11 May 2013 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
Roland McGrath [Fri, 10 May 2013 22:33:35 +0000 (22:33 +0000)]
gold/
* options.h (General_options): Add --rosegment-gap option.
* options.cc (finalize): --rosegment-gap implies --rosegment.
* layout.cc (set_segment_offsets): Let user option override
target->rosegment_gap().
Roland McGrath [Fri, 10 May 2013 20:35:47 +0000 (20:35 +0000)]
gold/
* options.h (General_options): Remove leading space from help
messages for -nostdlib and --rosegment.
Tom Tromey [Fri, 10 May 2013 17:01:00 +0000 (17:01 +0000)]
2013-05-10 Joel Brobecker <brobecker@adacore.com>
Tom Tromey <tromey@redhat.com>
* common/filestuff.c (mark_fd_no_cloexec, unmark_fd_no_cloexec):
New functions.
* common/filestuff.c (mark_fd_no_cloexec, unmark_fd_no_cloexec):
Declare.
* darwin-nat.c (darwin_pre_ptrace): Use mark_fd_no_cloexec.
(darwin_ptrace_him): Use unmark_fd_no_cloexec.
* inf-ttrace.c (do_cleanup_pfds): Use unmark_fd_no_cloexec.
(inf_ttrace_prepare): Use mark_fd_no_cloexec.
Tom Tromey [Fri, 10 May 2013 16:10:40 +0000 (16:10 +0000)]
gdb
Freddie Chopin <freddie_chopin@op.pl>
PR build/15414:
* configure: Rebuild.
* configure.ac (build_warnings): Do not use -Wformat-nonliteral
with -Wno-format.
sim/common
* acinclude.m4 (SIM_AC_OPTION_WARNINGS): Do not use
-Wformat-nonliteral with -Wno-format.
sim/bfin
* configure: Rebuild.
sim/cr16
* configure: Rebuild.
sim/cris
* configure: Rebuild.
sim/d10v
* configure: Rebuild.
sim/igen
* configure: Rebuild.
sim/m68hc11
* configure: Rebuild.
sim/mips
* configure: Rebuild.
sim/mn10300
* configure: Rebuild.
sim/v850
* configure: Rebuild.
Pedro Alves [Fri, 10 May 2013 14:31:05 +0000 (14:31 +0000)]
Fix typo in "show remote traceframe-info-packet"
I noticed:
(gdb) show remote traceframe-info-packet
Support for the `qXfer:trace-frame-info:read' packet is auto-detected, currently unknown.
^^^^^^^^^^^
The packet is actually qXfer:traceframe-info:read.
gdb/
2013-05-10 Pedro Alves <palves@redhat.com>
* remote.c (_initialize_remote): Fix spelling of
qXfer:traceframe-info:read packet in packet config command.
Pedro Alves [Fri, 10 May 2013 13:59:45 +0000 (13:59 +0000)]
PR remote/15455 - QTro remote packet broken
In the function remote_trace_set_readonly_regions in gdb/remote.c, the
local variable 'offset' does not account for "QTro" at the start of
the packet with the result that if there are any read-only regions,
the packet is sent -- but without the "QTro" -- causing the remote
stub to report that the packet is unsupported:
Sending packet: $:
0000000000400200,(...),
00000000004560a4#ab...Packet received:
vs the expected:
Sending packet: $QTro:
0000000000400200,(...),
00000000004560a4#31...Packet received: OK
We don't see the problem when testing with GDBserver, as that supports
qXfer:trace-frame-info:read, meaning GDBserver never needs to read
from the read-only sections directly itself. This commit adds a test
that explicitly disables qXfer:trace-frame-info:read.
gdb/
2013-05-10 David Taylor <dtaylor@emc.com>
PR remote/15455
* remote.c (remote_trace_set_readonly_regions): Do not overwrite
"QTro" at start of packet.
gdb/testsuite/
2013-05-10 Pedro Alves <palves@redhat.com>
PR remote/15455
* gdb.trace/qtro.c: New file.
* gdb.trace/qtro.exp: New file.
Joel Brobecker [Fri, 10 May 2013 13:25:28 +0000 (13:25 +0000)]
Remove FIXME in solib-aix.c:solib_aix_relocate_section_addresses
This issue should now be fixed thanks to a change in bfd removing
the SEC_ALLOC flag from all sections that do not get mapped to
memory.
gdb/ChangeLog:
* solib-aix.c (solib_aix_relocate_section_addresses):
Remove FIXME comment.
Joel Brobecker [Fri, 10 May 2013 13:08:24 +0000 (13:08 +0000)]
XCOFF/AIX: Remove SEC_ALLOC flags for unmapped sections.
The .except, .loader and .typchk are not mapped to memory,
so do not set their SEC_ALLOC flag.
bfd/ChangeLog:
* coffcode.h (styp_to_sec_flags) [RS6000COFF_C]: Add handling
of STYP_EXCEPT, STYP_LOADER and STYP_TYPCHK sections.
ld/testsuite/ChangeLog:
* ld-powerpc/aix-core-sec-1.hd, ld-powerpc/aix-core-sec-2.hd,
ld-powerpc/aix-core-sec-3.hd: Adjust expected section flags
for section .loader.
Joel Brobecker [Fri, 10 May 2013 12:55:13 +0000 (12:55 +0000)]
AIX: wrong address for shared object's .bss section
gdb/ChangeLog:
* solib-aix.c (solib_aix_relocate_section_addresses):
For the .bss section action, apply the same offset as
the .data section.
Joel Brobecker [Fri, 10 May 2013 12:10:20 +0000 (12:10 +0000)]
move sparc-sol-thread.c back into sol-thread.c.
The routines in sparc-sol-thread used to be SPARC-specific (and
documented as such in the ptrace man page), and therefore hosting them
in a sparc-specific file made sense. However, newer versions of
Solaris now use those callbacks (Solaris 10 Update 10, apparently),
and thus the note about these callbacks being specific to SPARC
was removed.
So this patch deletes sparc-sol-thread.c and moves the code back
inside sol-thread.c.
gdb/ChangeLog:
PR tdep/15420:
* sol-thread.c (ps_lgetxregsize, ps_lgetxregs, ps_lsetxregs):
New functions, directly copied from sparc-sol-thread.c.
* sparc-sol-thread.c: Delete.
* configure.ac: Remove code handling sparc-solaris-thread.c.
* configure: Regenerate.
Phil Muldoon [Fri, 10 May 2013 10:26:03 +0000 (10:26 +0000)]
2013-05-10 Phil Muldoon <pmuldoon@redhat.com>
* stack.c (backtrace_command_1): Add "no-filters", and Python frame
filter logic.
(backtrace_command): Add "no-filters" option parsing.
(_initialize_stack): Alter help to reflect "no-filters" option.
* Makefile.in (SUBDIR_PYTHON_OBS): Add py-framefilter.o
(SUBDIR_PYTHON_SRCS): Add py-framefilter.c
(py-frame.o): Add target
* data-directory/Makefile.in (PYTHON_DIR): Add Python frame
filter files.
* python/python.h: Add new frame filter constants, and flag enum.
(apply_frame_filter): Add definition.
* python/python.c (apply_frame_filter): New non-Python
enabled function.
* python/py-utils.c (py_xdecref): New function.
(make_cleanup_py_xdecref): Ditto.
* python/py-objfile.c: Declare frame_filters dictionary.
(objfpy_dealloc): Add frame_filters dealloc.
(objfpy_new): Initialize frame_filters attribute.
(objfile_to_objfile_object): Ditto.
(objfpy_get_frame_filters): New function.
(objfpy_set_frame_filters): New function.
* python/py-progspace.c: Declare frame_filters dictionary.
(pspy_dealloc): Add frame_filters dealloc.
(pspy_new): Initialize frame_filters attribute.
(pspacee_to_pspace_object): Ditto.
(pspy_get_frame_filters): New function.
(pspy_set_frame_filters): New function.
* python/py-framefilter.c: New file.
* python/lib/gdb/command/frame_filters.py: New file.
* python/lib/gdb/frames.py: New file.
* python/lib/gdb/__init__.py: Initialize global frame_filters
dictionary
* python/lib/gdb/FrameDecorator.py: New file.
* python/lib/gdb/FrameIterator.py: New file.
* mi/mi-cmds.c (mi_cmds): Add frame filters command.
* mi/mi-cmds.h: Declare.
* mi/mi-cmd-stack.c (mi_cmd_stack_list_frames): Add
--no-frame-filter logic, and Python frame filter logic.
(stack_enable_frame_filters): New function.
(parse_no_frame_option): Ditto.
(mi_cmd_stack_list_frames): Add --no-frame-filter and Python frame
filter logic.
(mi_cmd_stack_list_locals): Ditto.
(mi_cmd_stack_list_args): Ditto.
(mi_cmd_stack_list_variables): Ditto.
* NEWS: Add frame filter note.
2013-05-10 Phil Muldoon <pmuldoon@redhat.com>
* gdb.python/py-framefilter.py: New File.
* gdb.python/py-framefilter-mi.exp: Ditto.
* gdb.python/py-framefilter.c: Ditto.
* gdb.python/py-framefilter-mi.exp: Ditto.
* gdb.python/py-framefilter-mi.c: Ditto,
* gdb.python/py-framefilter-gdb.py.in: Ditto.
2013-05-10 Phil Muldoon <pmuldoon@redhat.com>
* gdb.texinfo (Backtrace): Add "no-filter" argument.
(Python API): Add Frame Filters API, Frame Wrapper API,
Writing a Frame Filter/Wrapper, Managing Management of Frame
Filters chapter entries.
(Frame Filters API): New Node.
(Frame Wrapper API): New Node.
(Writing a Frame Filter): New Node.
(Managing Frame Filters): New Node.
(Progspaces In Python): Add note about frame_filters attribute.
(Objfiles in Python): Ditto.
(GDB/MI Stack Manipulation): Add -enable-frame-filters command,
@anchors and --no-frame-filters option to -stack-list-variables,
-stack-list-frames, -stack-list-locals and -stack-list-arguments
commands.
DJ Delorie [Fri, 10 May 2013 03:03:04 +0000 (03:03 +0000)]
merge from gcc
Andrew Pinski [Fri, 10 May 2013 01:08:48 +0000 (01:08 +0000)]
binutils/ChangeLog:
* doc/binutils.texi: Document -Mvirt disassembler option.
gas/ChangeLog:
* config/tc-mips.c (struct mips_set_options): New ase_virt field.
(mips_opts): Update for the new field.
(file_ase_virt): New variable.
(ISA_SUPPORTS_VIRT_ASE): New macro.
(ISA_SUPPORTS_VIRT64_ASE): New macro.
(MIPS_CPU_ASE_VIRT): New define.
(is_opcode_valid): Handle ase_virt.
(macro_build): Handle "+J".
(validate_mips_insn): Likewise.
(mips_ip): Likewise.
(enum options): Add OPTION_VIRT and OPTION_NO_VIRT.
(md_longopts): Add mvirt and mnovirt
(md_parse_option): Handle OPTION_VIRT and OPTION_NO_VIRT.
(mips_after_parse_args): Handle ase_virt field.
(s_mipsset): Handle "virt" and "novirt".
(mips_elf_final_processing): Add a comment about virt ASE might need a new flag.
(md_show_usage): Print out the usage of -mvirt and mno-virt options.
* doc/c-mips.texi: Document -mvirt and -mno-virt.
Document ".set virt" and ".set novirt".
gas/testsuite/ChangeLog:
* gas/mips/mips.exp: Run virt and virt64 testcases.
* gas/mips/virt.d: New file.
* gas/mips/virt.s: New file.
* gas/mips/virt64.d: New file.
* gas/mips/virt64.s: New file.
include/opcode/ChangeLog:
* mips.h (OP_MASK_CODE10): Correct definition.
(OP_SH_CODE10): Likewise.
Add a comment that "+J" is used now for OP_*CODE10.
(INSN_ASE_MASK): Update.
(INSN_VIRT): New macro.
(INSN_VIRT64): New macro
opcodes/ChangeLog:
* mips-dis.c (mips_arch_choices): Add INSN_VIRT to mips32r2 .
Add INSN_VIRT and INSN_VIRT64 to mips64r2.
(parse_mips_dis_option): Handle the virt option.
(print_insn_args): Handle "+J".
(print_mips_disassembler_options): Print out message about virt64.
* mips-opc.c (IVIRT): New define.
(IVIRT64): New define.
(mips_builtin_opcodes): Add dmfgc0, dmtgc0, hypcall, mfgc0, mtgc0,
tlbgr, tlbgwi, tlbginv, tlbginvf, tlbgwr, tlbgp VIRT instructions.
Move rfe to the bottom as it conflicts with tlbgp.
This page took 0.04494 seconds and 4 git commands to generate.