external/binutils.git
11 years agoopcodes/
Richard Sandiford [Fri, 24 May 2013 17:13:49 +0000 (17:13 +0000)]
opcodes/
* s390-opc.txt (flogr): Require a register pair destination.

gas/testsuite/
* gas/s390/zarch-z9-109-err.s, gas/s390/zarch-z9-109-err.l: New test.
* gas/s390/s390.exp: Run it.

11 years agogdb/testsuite/
Jan Kratochvil [Fri, 24 May 2013 15:37:25 +0000 (15:37 +0000)]
gdb/testsuite/
PR testsuite/12649
* gdb.mi/mi-dprintf.exp (mi_continue_dprintf) (mi 2nd dprintf): Replace
$mi_gdb_prompt expectation by mi_expect_stop.
(mi 1st dprintf, agent, mi 2nd dprintf, agent)
(mi info dprintf second time): Replace them by mi_send_resuming_command
and mi_expect_stop.

11 years ago2013-05-24 Gary Benson <gbenson@redhat.com>
Gary Benson [Fri, 24 May 2013 14:02:35 +0000 (14:02 +0000)]
2013-05-24  Gary Benson  <gbenson@redhat.com>

* gdb.base/solib-disc.exp (exec_opts): Remove unnecesary
backslash.
* gdb.base/unload.exp (exec_opts): Remove two unnecessary
backslashes.
* gdb.base/watchpoint-solib.exp (exec_opts): Remove unnecesary
backslash.

11 years agogdb/
Yao Qi [Fri, 24 May 2013 12:27:39 +0000 (12:27 +0000)]
gdb/

* tracepoint.c (TFILE_PID): Remove.
(tfile_open): Don't add thread and inferior.
(tfile_close): Don't set 'inferior_ptid'.  Don't call
exit_inferior_silent.
(tfile_thread_alive): Remove.
(init_tfile_ops): Don't set field 'to_thread_alive' of
tfile_ops.

gdb/testsuite/

* gdb.trace/tfile.exp: Test inferior and thread.

11 years ago[gdbserver] Don't assume vCont;r ADDR1,ADDR2 comes with a ptid attached.
Pedro Alves [Fri, 24 May 2013 11:28:06 +0000 (11:28 +0000)]
[gdbserver] Don't assume vCont;r ADDR1,ADDR2 comes with a ptid attached.

This bit:

+   p1 = strchr (p, ':');
+   decode_address (&resume_info[i].step_range_end, p, p1 - p);

should not expect the ':' to be there.  An action without a ptid is
valid:

 "If an action is specified with no thread-id, then it is applied to any
 threads that don't have a specific action specified"

This is handled further below:

      if (p[0] == 0)
{
  resume_info[i].thread = minus_one_ptid;
  default_action = resume_info[i];

  /* Note: we don't increment i here, we'll overwrite this entry
     the next time through.  */
}
      else if (p[0] == ':')

A stub that doesn't support and report to gdb thread ids at all (like
metal metal targets) only will always only see a single default action
with no ptid.

Use unpack_varlen_hex instead of decode_address.  The former doesn't
need to be told where the hex number ends, and it actually returns
that info instead, which we can use for validation.

Tested on x86_64 Fedora 17.

gdb/gdbserver/
2013-05-24  Pedro Alves  <palves@redhat.com>

* server.c (handle_v_cont) <vCont;r>: Use unpack_varlen_hex
instead of strchr/decode_address.  Error if the range isn't split
with a ','.  Don't assume there's be a ':' in the action.

11 years agogdb/testsuite/
Yao Qi [Fri, 24 May 2013 09:57:12 +0000 (09:57 +0000)]
gdb/testsuite/

* gdb.base/range-stepping.exp: Skip the rest of tests if the
test fails.
* lib/range-stepping-support.exp (exec_cmd_expect_vCont_count):
Return 0 if the test passes, otherwise return 1.

11 years agoFix gdb.info build failure
Joel Brobecker [Fri, 24 May 2013 04:50:26 +0000 (04:50 +0000)]
Fix gdb.info build failure

    gdb.texinfo:36367: `Installed System-wide Configuration Scripts' has no Up field (perhaps incorrect sectioning?).
    gdb.texinfo:36367: warning: unreferenced node `Installed System-wide Configuration Scripts'.

gdb/doc/ChangeLog:

        * gdb.texinfo (System-wide Configuration Scripts): Renames
        "Installed System-wide Configuration Scripts". Add associated
        @menu block.

11 years agoUpdate to load fission.exp.
Doug Evans [Fri, 24 May 2013 01:33:50 +0000 (01:33 +0000)]
Update to load fission.exp.

11 years ago * boards/fission-dwp.exp: New file.
Doug Evans [Fri, 24 May 2013 01:30:05 +0000 (01:30 +0000)]
* boards/fission-dwp.exp: New file.

11 years ago * contrib/cc-with-tweaks.sh (-p): Handle no dwo files.
Doug Evans [Fri, 24 May 2013 00:30:24 +0000 (00:30 +0000)]
* contrib/cc-with-tweaks.sh (-p): Handle no dwo files.

11 years ago * aarch64.c (aarch64_find_call): Promote to bfd_vma before sign
Alan Modra [Fri, 24 May 2013 00:28:06 +0000 (00:28 +0000)]
* aarch64.c (aarch64_find_call): Promote to bfd_vma before sign
extending.

11 years agodaily update
Alan Modra [Fri, 24 May 2013 00:00:05 +0000 (00:00 +0000)]
daily update

11 years ago*** empty log message ***
gdbadmin [Fri, 24 May 2013 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***

11 years agocommon/filestuff.c: No sockets on DJGPP.
Pedro Alves [Thu, 23 May 2013 18:37:00 +0000 (18:37 +0000)]
common/filestuff.c: No sockets on DJGPP.

Building gdb with --host=i586-pc-msdosdjgpp ends up with:

 i586-pc-msdosdjgpp-gcc -g -O2 -I../../src/gdb/config/djgpp  -I. -I../../src/gdb -I../../src/gdb/common -I../../src/gdb/config -DLOCALEDIR="\"/usr/local/share/locale\"" -DHAVE_CONFIG_H -I../../src/gdb/../include/opcode -I../../src/gdb/../opcodes/.. -I../../src/gdb/../readline/.. -I../bfd -I../../src/gdb/../bfd -I../../src/gdb/../include -I../libdecnumber -I../../src/gdb/../libdecnumber -I./../intl -I../../src/gdb/gnulib/import -Ibuild-gnulib/import    -Wall -Wdeclaration-after-statement -Wpointer-arith -Wformat-nonliteral -Wpointer-sign -Wno-unused -Wunused-value -Wunused-function -Wno-switch -Wno-char-subscripts -Wmissing-prototypes -Wdeclaration-after-statement -Wempty-body -Werror -c -o filestuff.o -MT filestuff.o -MMD -MP -MF .deps/filestuff.Tpo ../../src/gdb/common/filestuff.c
 ../../src/gdb/common/filestuff.c:38:24: fatal error: sys/socket.h: No such file or directory

There are no sockets on djgpp.  This #ifdef's out the bits in the file
that use sockets, depending on whether winsock or sys/socket.h is
available.

As alternative approach, given ser-tcp.c, ser-pipe.c, etc. are split
into separate files, and which to use is selected by configure.ac:

 dnl Figure out which of the many generic ser-*.c files the _host_ supports.
 SER_HARDWIRE="ser-base.o ser-unix.o ser-pipe.o ser-tcp.o"
 case ${host} in
  *go32* ) SER_HARDWIRE=ser-go32.o ;;
  *djgpp* ) SER_HARDWIRE=ser-go32.o ;;
  *mingw32*) SER_HARDWIRE="ser-base.o ser-tcp.o ser-mingw.o" ;;
 esac
 AC_SUBST(SER_HARDWIRE)

... I considered splitting filestuff.c similarly.  But I quickly gave
up on the idea, as it looked like a lot more complication over this
approach, for no real gain.  Plus, there are uses of these functions
outside the ser*.c framework.

gdbserver's configure.ac is already checking for sys/socket.h.

gdb/
2013-05-23  Pedro Alves  <palves@redhat.com>

* common/filestuff.c [USE_WIN32API]: Define HAVE_SOCKETS.
[HAVE_SYS_SOCKET_H]: Define HAVE_SOCKETS.
(socket_mark_cloexec, gdb_socketpair_cloexec, gdb_socket_cloexec):
Only define if HAVE_SOCKETS is defined.
* configure.ac: Check for sys/socket.h.
* config.in, configure: Regenerate.

11 years agodwarf2read.c: Don't assume uint32_t is unsigned int on all hosts.
Pedro Alves [Thu, 23 May 2013 18:31:29 +0000 (18:31 +0000)]
dwarf2read.c: Don't assume uint32_t is unsigned int on all hosts.

Building gdb on GNU/Linux, for --host=i586-pc-msdosdjgpp, I get:

 ../../src/gdb/dwarf2read.c: In function 'create_dwp_hash_table':
 ../../src/gdb/dwarf2read.c:8626:7: error: format '%u' expects argument of type 'unsigned int', but argument 2 has type 'uint32_t' [-Werror=format]
 ../../src/gdb/dwarf2read.c:8632:7: error: format '%u' expects argument of type 'unsigned int', but argument 2 has type 'uint32_t' [-Werror=format]
 ../../src/gdb/dwarf2read.c: In function 'create_dwo_in_dwp':
 ../../src/gdb/dwarf2read.c:8754:6: error: format '%u' expects argument of type 'unsigned int', but argument 4 has type 'uint32_t' [-Werror=format]
 ../../src/gdb/dwarf2read.c: In function 'open_and_init_dwp_file':
 ../../src/gdb/dwarf2read.c:9248:6: error: format '%u' expects argument of type 'unsigned int', but argument 3 has type 'long unsigned int' [-Werror=format]
 ../../src/gdb/dwarf2read.c:9248:6: error: format '%u' expects argument of type 'unsigned int', but argument 4 has type 'long unsigned int' [-Werror=format]

And:

 $ grep uint32_t /usr/i586-pc-msdosdjgpp/sys-include/*
 /usr/i586-pc-msdosdjgpp/sys-include/stdint.h:typedef unsigned long uint32_t;

As decided on the discussion at
<http://sourceware.org/ml/gdb-patches/2013-05/msg00788.html>, use
pulongest rather than PRIu32.

Tested on F17.  Also confirmed GDB still builds OK with
--host=i686-w64-mingw32.

gdb/
2013-05-23  Pedro Alves  <palves@redhat.com>

* dwarf2read.c (create_dwp_hash_table, create_dwo_in_dwp)
(open_and_init_dwp_file): Use %s/pulongest instead of %u for
printing uint32_t variables.

11 years agorange stepping: tests
Pedro Alves [Thu, 23 May 2013 17:19:05 +0000 (17:19 +0000)]
range stepping: tests

This adds tests to verify range stepping is used as expected, by
inspecting the RSP traffic, looking for vCont;s and vCont;r packets.

gdb/testsuite/
2013-05-23  Yao Qi  <yao@codesourcery.com>
    Pedro Alves  <palves@redhat.com>

* gdb.base/range-stepping.c: New file.
* gdb.base/range-stepping.exp: New file.
* gdb.trace/range-stepping.c: New file.
* gdb.trace/range-stepping.exp: New file.
* lib/range-stepping-support.exp: New file.

11 years agorange stepping: gdbserver (x86 GNU/Linux)
Pedro Alves [Thu, 23 May 2013 17:17:50 +0000 (17:17 +0000)]
range stepping: gdbserver (x86 GNU/Linux)

This patch adds support for range stepping to GDBserver, teaching it
about vCont;r.

It'd be easy to enable this for all hardware single-step targets
without needing the linux_target_ops hook, however, at least PPC needs
special care, due to the fact that PPC atomic sequences can't be
hardware single-stepped through, a thing which GDBserver doesn't know
about.  So this leaves the support limited to x86/x86_64.

gdb/
2013-05-23  Pedro Alves  <palves@redhat.com>

* NEWS: Mention GDBserver range stepping support.

gdb/gdbserver/
2013-05-23  Yao Qi  <yao@codesourcery.com>
    Pedro Alves  <palves@redhat.com>

* linux-low.c (lwp_in_step_range): New function.
(linux_wait_1): If the thread was range stepping and stopped
outside the stepping range, report the stop to GDB.  Otherwise,
continue stepping.  Add range stepping debug output.
(linux_set_resume_request): Copy the step range from the resume
request to the lwp.
(linux_supports_range_stepping): New.
(linux_target_ops) <supports_range_stepping>: Set to
linux_supports_range_stepping.
* linux-low.h (struct linux_target_ops)
<supports_range_stepping>: New field.
(struct lwp_info) <step_range_start, step_range_end>: New fields.
* linux-x86-low.c (x86_supports_range_stepping): New.
(the_low_target) <supports_range_stepping>: Set to
x86_supports_range_stepping.
* server.c (handle_v_cont): Handle 'r' action.
(handle_v_requests): Append ";r" if the target supports range
stepping.
* target.h (struct thread_resume) <step_range_start,
step_range_end>: New fields.
(struct target_ops) <supports_range_stepping>:
New field.
(target_supports_range_stepping): New macro.

11 years agorange stepping: gdb
Pedro Alves [Thu, 23 May 2013 17:15:35 +0000 (17:15 +0000)]
range stepping: gdb

This patch teaches GDB to take advantage of target-assisted range
stepping.  It adds a new 'r ADDR1,ADDR2' action to vCont (vCont;r),
meaning, "step once, and keep stepping as long as the thread is in the
[ADDR1,ADDR2) range".

Rationale:

When user issues the "step" command on the following line of source,

   a = b + c + d * e - a;

GDB single-steps every single instruction until the program reaches a
new different line.  E.g., on x86_64, that line compiles to:

   0x08048434 <+65>:    mov    0x1c(%esp),%eax
   0x08048438 <+69>:    mov    0x30(%esp),%edx
   0x0804843c <+73>:    add    %eax,%edx
   0x0804843e <+75>:    mov    0x18(%esp),%eax
   0x08048442 <+79>:    imul   0x2c(%esp),%eax
   0x08048447 <+84>:    add    %edx,%eax
   0x08048449 <+86>:    sub    0x34(%esp),%eax
   0x0804844d <+90>:    mov    %eax,0x34(%esp)
   0x08048451 <+94>:    mov    0x1c(%esp),%eax

and the following is the RSP traffic between GDB and GDBserver:

 --> vCont;s:p2e13.2e13;c
 <-- T0505:68efffbf;04:30efffbf;08:3c840408;thread:p2e13.2e13;core:1;
 --> vCont;s:p2e13.2e13;c
 <-- T0505:68efffbf;04:30efffbf;08:3e840408;thread:p2e13.2e13;core:2;
 --> vCont;s:p2e13.2e13;c
 <-- T0505:68efffbf;04:30efffbf;08:42840408;thread:p2e13.2e13;core:2;
 --> vCont;s:p2e13.2e13;c
 <-- T0505:68efffbf;04:30efffbf;08:47840408;thread:p2e13.2e13;core:0;
 --> vCont;s:p2e13.2e13;c
 <-- T0505:68efffbf;04:30efffbf;08:49840408;thread:p2e13.2e13;core:0;
 --> vCont;s:p2e13.2e13;c
 <-- T0505:68efffbf;04:30efffbf;08:4d840408;thread:p2e13.2e13;core:0;
 --> vCont;s:p2e13.2e13;c
 <-- T0505:68efffbf;04:30efffbf;08:51840408;thread:p2e13.2e13;core:0;

IOW, a lot of roundtrips between GDB and GDBserver.

If we add a new command to the RSP, meaning "keep stepping and don't
report a stop until the program goes out of the [0x08048434,
0x08048451) address range", then the RSP traffic can be reduced down
to:

 --> vCont;r8048434,8048451:p2db0.2db0;c
 <-- T0505:68efffbf;04:30efffbf;08:51840408;thread:p2db0.2db0;core:1;

As number of packets is reduced dramatically, the performance of
stepping source lines is much improved.

In case something is wrong with range stepping on the stub side, the
debug info or even gdb, this adds a "set/show range-stepping" command
to be able to turn range stepping off.

gdb/
2013-05-23  Yao Qi  <yao@codesourcery.com>
    Pedro Alves  <palves@redhat.com>

* gdbthread.h (struct thread_control_state) <may_range_step>: New
field.
* infcmd.c (step_once, until_next_command): Enable range stepping.
* infrun.c (displaced_step_prepare): Disable range stepping.
(resume): Disable range stepping if stepping over a breakpoint or
we have software watchpoints.  If range stepping is enabled,
assert the thread is in the stepping range.
(clear_proceed_status_thread): Clear may_range_step.
(handle_inferior_event): Disable range stepping as soon as we know
the thread that hit the event.  Re-enable it whenever we're going
to step with a step range.
* remote.c (struct vCont_action_support) <r>: New field.
(use_range_stepping): New global.
(remote_vcont_probe): Handle 'r' action.
(append_resumption): Append an 'r' action if the thread may range
step.
(show_range_stepping): New function.
(set_range_stepping): New function.
(_initialize_remote): Call add_setshow_boolean_cmd to register the
'set range-stepping' and 'show range-stepping' commands.
* NEWS: Mention range stepping, the new vCont;r action, and the
new "set/show range-stepping" commands.

gdb/doc/
2013-05-23  Yao Qi  <yao@codesourcery.com>
    Pedro Alves  <palves@redhat.com>

* gdb.texinfo (Packets): Document 'vCont;r'.
(Continuing and Stepping): Document target-assisted range
stepping, and the 'set range-stepping' and 'show range-stepping'
commands.

11 years agoConvert rs->support_vCont_t to a struct.
Pedro Alves [Thu, 23 May 2013 17:13:57 +0000 (17:13 +0000)]
Convert rs->support_vCont_t to a struct.

Convert the 'support_vCont_t' int field to a struct, in preparation
for adding more fields to it.

gdb/
2013-05-23  Yao Qi  <yao@codesourcery.com>
    Pedro Alves  <palves@redhat.com>

* remote.c (struct vCont_action_support): New struct.
(struct remote_state) <support_vCont_t>: Remove field.
<vCont_actions_support>: New field.
(remote_vcont_probe, remote_stop_ns): Update.

11 years agoFactor out in-stepping-range checks.
Pedro Alves [Thu, 23 May 2013 17:12:51 +0000 (17:12 +0000)]
Factor out in-stepping-range checks.

This adds a function for doing within-thread's-stepping-range checks,
and converts a couple spots to use it.  Following patches will add
more uses.

gdb/
2013-05-23  Yao Qi  <yao@codesourcery.com>
    Pedro Alves  <palves@redhat.com>

* gdbthread.h (pc_in_thread_step_range): New declaration.
* thread.c (pc_in_thread_step_range): New function.
* infrun.c (handle_inferior_event): Use it.

11 years ago2013-05-23 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
Andreas Krebbel [Thu, 23 May 2013 15:48:47 +0000 (15:48 +0000)]
2013-05-23  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* s390-opc.c: Fix length operand in RSL_LRDFU and RSL_LRDFEU
instruction format.

2013-05-23  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* gas/s390/zarch-zEC12.d: Adjust length operands for cdzt, cxzt,
czdt, and czxt.
* gas/s390/zarch-zEC12.d: Likewise.

11 years agomi/mi-cmd-break.c: Use xsnprintf instead of sprintf (ARI fix)
Joel Brobecker [Thu, 23 May 2013 06:39:42 +0000 (06:39 +0000)]
mi/mi-cmd-break.c: Use xsnprintf instead of sprintf (ARI fix)

gdb/ChangeLog:

        * mi/mi-cmd-break.c (mi_argv_to_format): Use xsnprintf instead
        of sprintf.

11 years agoDocument new <data-dir>/system-gdbinit area
Joel Brobecker [Thu, 23 May 2013 06:00:53 +0000 (06:00 +0000)]
Document new <data-dir>/system-gdbinit area

gdb/doc/ChangeLog:

        * gdb.texinfo (Installed System-wide Configuration Scripts):
        Add subsection describing the scripts now available under
        the data-dir's system-gdbbinit subdirectory.
        * NEWS: Add entry announcing the availability of system-wide
        configuration scripts for ElinOS and Wind River Linux.

11 years ago * format.c (bfd_check_format_matches): Don't match a target in
Alan Modra [Thu, 23 May 2013 03:35:59 +0000 (03:35 +0000)]
* format.c (bfd_check_format_matches): Don't match a target in
targ_selvecs if some other target is a better match.  If
targets implement match priority, fall back to the first of
the best matches.

11 years agodaily update
Alan Modra [Thu, 23 May 2013 00:00:05 +0000 (00:00 +0000)]
daily update

11 years ago*** empty log message ***
gdbadmin [Thu, 23 May 2013 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***

11 years ago * ada-lang.c (is_known_support_routine): Add explicit free of
Keith Seitz [Wed, 22 May 2013 21:16:18 +0000 (21:16 +0000)]
* ada-lang.c (is_known_support_routine): Add explicit free of
'func_name' from find_frame_funname.
(ada_unhandled_exception_name_addr_from_raise): Add cleanups
for func_name from find_frame_funname.
* python/py-frame.c (frapy_name): Add explicit free of
'name' from find_frame_funname.
* stack.c (find_frame_funname): Add comment explaining that
funcp must be freed by the caller.
Return copy of symbol names instead of pointers.
(print_frame): Add a cleanup for 'funname' from
find_frame_funname.
* stack.h (find_frame_funname): Remove "const" from
'funname' parameter.

11 years ago PR c++/15401:
Tom Tromey [Wed, 22 May 2013 20:51:49 +0000 (20:51 +0000)]
PR c++/15401:
* c-valprint.c (c_value_print): Use value_addr for
references.  Convert back to reference type with value_ref.
gdb/testsuite
* gdb.cp/class2.cc (main): New local 'aref'.
* gdb.cp/class2.exp: Check printing of 'aref'.

11 years agoinclude/opcode/
Richard Sandiford [Wed, 22 May 2013 18:08:26 +0000 (18:08 +0000)]
include/opcode/
2013-05-22  Jürgen Urban  <JuergenUrban@gmx.de>

* mips.h (M_LQC2_AB, M_SQC2_AB): New macros.

opcodes/
2013-05-22  Jürgen Urban  <JuergenUrban@gmx.de>

* mips-opc.c (mips_builtin_opcodes): Add R5900 VU0 instructions.

gas/
2013-05-22  Jürgen Urban  <JuergenUrban@gmx.de>

* config/tc-mips.c (macro): Handle M_LQC2_AB and M_SQC2_AB.

gas/testsuite/
2013-05-22  Jürgen Urban  <JuergenUrban@gmx.de>

* gas/mips/r5900-full.s, gas/mips/r5900-full.d: Add tests for LQ
and SQ macros.
* gas/mips/r5900-vu0.s, gas/mips/r5900-vu0.d: New test.
* gas/mips/mips.exp: Run it.

11 years agoAdd EM_INTEL205 to EM_INTEL209
H.J. Lu [Wed, 22 May 2013 17:02:35 +0000 (17:02 +0000)]
Add EM_INTEL205 to EM_INTEL209

* common.h (EM_INTEL205): New.
(EM_INTEL206): Likewise.
(EM_INTEL207): Likewise.
(EM_INTEL208): Likewise.
(EM_INTEL209): Likewise.

11 years ago * gdb.threads/wp-replication.c (main): Insert some code at the start
Doug Evans [Wed, 22 May 2013 16:30:24 +0000 (16:30 +0000)]
* gdb.threads/wp-replication.c (main): Insert some code at the start
to ensure the breakpoint on main is only hit once.  Fix comment.

11 years agoFix reporting of DLL unload events on MS-Windows.
Eli Zaretskii [Wed, 22 May 2013 16:18:12 +0000 (16:18 +0000)]
Fix reporting of DLL unload events on MS-Windows.

 gdb/windows-nat.c (handle_unload_dll): Don't call solib_add for the
 unloaded DLL, it will be done by handle_solib_event.  See
 http://sourceware.org/ml/gdb-patches/2013-05/msg00713.html for the
 details.

11 years ago * aarch64.c: New file.
Alan Modra [Wed, 22 May 2013 13:29:43 +0000 (13:29 +0000)]
* aarch64.c: New file.
* corefile.c (find_call): Call aarch64_find_call for bfd_arch_aarch64.
* Makefile.am (sources): Add aarch64.c.
* Makefile.in: Regenerate.

11 years ago2013-05-22 Phil Muldoon <pmuldoon@redhat.com>
Phil Muldoon [Wed, 22 May 2013 12:27:13 +0000 (12:27 +0000)]
2013-05-22  Phil Muldoon  <pmuldoon@redhat.com>

* ui-out.c: Create typedef ui_out_level_p and define vector
operations for that type.
(struct ui_out): Use a vector instead of an array.
(current_level): Return level from a vector.
(push_level): Create a level in a vector.
(pop_level): Delete a level in a vector.
(ui_out_new): Create initial level zero level, and store in a
vector.
(ui_out_destroy): Add vector cleanup.

11 years agoreadline/
Yao Qi [Wed, 22 May 2013 09:51:49 +0000 (09:51 +0000)]
readline/

* configure.in: Invoke AC_CANONICAL_BUILD.
Change $host_os to $build_os.
* configure: Regenerated.

11 years agoLet the ARI know gdb_Py_DECREF is OK.
Pedro Alves [Wed, 22 May 2013 09:31:44 +0000 (09:31 +0000)]
Let the ARI know gdb_Py_DECREF is OK.

The ARI complains with:

> gdb/python/python-internal.h:177: code: editCase function: Function name starts lower case but has uppercased letters.
gdb/python/python-internal.h:177:gdb_Py_DECREF (void *op)

gdb_Py_DECREF is just wrapping a python macro that happens to be mixed case.

gdb/
2013-05-22  Pedro Alves  <palves@redhat.com>

* python/python-internal.h (gdb_Py_DECREF): Tag with
"ARI: editCase function".

11 years ago PR binutils/15462
Alan Modra [Wed, 22 May 2013 08:39:52 +0000 (08:39 +0000)]
PR binutils/15462
* elfxx-mips.c (_bfd_mips_elf_relocate_section): Warning fix.

11 years ago PR binutils/15474
Alan Modra [Wed, 22 May 2013 06:13:59 +0000 (06:13 +0000)]
PR binutils/15474
* srec.c (srec_set_section_contents): Properly convert size
and offset to address when octets_per_byte is not unity.

11 years agodaily update
Alan Modra [Wed, 22 May 2013 00:00:05 +0000 (00:00 +0000)]
daily update

11 years ago*** empty log message ***
gdbadmin [Wed, 22 May 2013 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***

11 years ago2013-05-21 Paul Pluzhnikov <ppluzhnikov@google.com>
Paul Pluzhnikov [Tue, 21 May 2013 23:41:29 +0000 (23:41 +0000)]
2013-05-21  Paul Pluzhnikov  <ppluzhnikov@google.com>

* solib-svr4.c (svr4_free_so): Protect against NULL dereference.

11 years agogold/
Cary Coutant [Tue, 21 May 2013 21:14:40 +0000 (21:14 +0000)]
gold/
* symtab.h (Symbol::is_cxx_vtable): New function.
* target-reloc.h (relocate_section): Check for vtable symbol.
* testsuite/Makefile.am (missing_key_func.sh): New test case.
* testsuite/Makefile.in: Regenerate.
* testsuite/missing_key_func.cc: New test source.
* testsuite/missing_key_func.sh: New test script.

11 years agogold/
Cary Coutant [Tue, 21 May 2013 20:56:13 +0000 (20:56 +0000)]
gold/
     * object.cc (Sized_relobj_file::get_symbol_location_info): Set
     type of enclosing symbol.
     (Relocate_info::location): Check symbol type when describing symbol.
     * object.h (Symbol_location_info): Remove unused line_number;
     add enclosing_symbol_type.
     * testsuite/debug_msg.sh: Adjust expected output.

11 years agopy_decref: Don't check for NULL before calling Py_DECREF.
Pedro Alves [Tue, 21 May 2013 20:53:21 +0000 (20:53 +0000)]
py_decref: Don't check for NULL before calling Py_DECREF.

The only difference between Py_DECREF and Py_XDECREF is that the latter allows passing
in a NULL object, while the former prohibits it.  Given that, it's natural to expect
the same from py_decref vs py_xdecref.

gdb/
2013-05-21  Pedro Alves  <palves@redhat.com>

* python/py-prettyprint.c (apply_val_pretty_printer): Check
whether PRINTER is NULL before installing a Py_DECREF cleanup.
* python/py-utils.c (py_decref): Don't check for NULL before
calling Py_DECREF.

11 years agoCentralize workaround for Python 2.6's Py_DECREF.
Pedro Alves [Tue, 21 May 2013 20:52:30 +0000 (20:52 +0000)]
Centralize workaround for Python 2.6's Py_DECREF.

Wrap/redefine Py_DECREF ourselves, avoiding the need for uses to care
about extra braces due to the fact that Python only started wrapping Py_DECREF
in 'do {} while (0)' after 2.6.

gdb/
2013-05-21  Pedro Alves  <palves@redhat.com>

* python/py-utils.c (py_decref): Remove extra braces.
(gdb_pymodule_addobject): Remove extra braces.
* python-internal.h (gdb_Py_DECREF): New static inline function.
(Py_DECREF): Redefine as calling gdb_Py_DECREF.

11 years ago * gdb.base/filesym.exp: Use gdb_test_multiple instead of
Keith Seitz [Tue, 21 May 2013 19:11:50 +0000 (19:11 +0000)]
* gdb.base/filesym.exp: Use gdb_test_multiple instead of
gdb_expect.
Add test to flush the remaining input buffer so that this
file passes testsuite/12649.

11 years agoFix internal error caused by interaction between catch signal and fork
Philippe Waroquiers [Tue, 21 May 2013 18:47:05 +0000 (18:47 +0000)]
Fix internal error caused by interaction between catch signal and fork

11 years ago2013-05-21 Sterling Augustine <saugustine@google.com>
Sterling Augustine [Tue, 21 May 2013 17:58:46 +0000 (17:58 +0000)]
2013-05-21  Sterling Augustine  <saugustine@google.com>

* boards/remote-stdio-gdbserver.exp: New file.

11 years agogdb/
Jan Kratochvil [Tue, 21 May 2013 15:02:28 +0000 (15:02 +0000)]
gdb/
Workaround Python 2.6.
* python/py-utils.c (gdb_pymodule_addobject): Wrap Py_DECREF into
a block.

11 years agogdb/testsuite/
Jan Kratochvil [Tue, 21 May 2013 15:00:32 +0000 (15:00 +0000)]
gdb/testsuite/
PR testsuite/12649
* gdb.mi/mi-dprintf.exp (mi_continue_dprintf): Fix expect strings for
racy matches.

11 years agogdb/
Jan Kratochvil [Tue, 21 May 2013 08:16:10 +0000 (08:16 +0000)]
gdb/
Code cleanup: constification.
* solib.c (solib_ops): Make return type and ops variable type const.
(set_solib_ops): Make the new_ops parameter and ops variable const.
(solib_find, solib_map_sections, clear_so, free_so, update_solib_list)
(solib_add, solib_keep_data_in_core, clear_solib)
(solib_create_inferior_hook, in_solib_dynsym_resolve_code)
(reload_shared_libraries, solib_global_lookup): Make the ops variable
const.
* solib.h (set_solib_ops): Make the new_ops parameter const.

11 years ago * gdb.dwarf2/dw2-dir-file-name.exp: Don't use brace expansion,
Christian Groessler [Tue, 21 May 2013 07:25:51 +0000 (07:25 +0000)]
* gdb.dwarf2/dw2-dir-file-name.exp: Don't use brace expansion,
since it's not supported in all shells.

11 years ago PR ld/12982
Alan Modra [Tue, 21 May 2013 07:15:22 +0000 (07:15 +0000)]
PR ld/12982
* ld-plugin/pr12982.d: Fail if RWE GNU_STACK present.

11 years agoAdd new system-gdbinit infrastructure
Joel Brobecker [Tue, 21 May 2013 06:50:12 +0000 (06:50 +0000)]
Add new system-gdbinit infrastructure

gdb/ChangeLog:

        * data-directory/Makefile.in (SYSTEM_GDBINIT_SRCDIR): New
        variable.
        (VPATH): Add SYSTEM_GDBINIT_SRCDIR.
        (SYSTEM_GDBINIT_DIR, SYSTEM_GDBINIT_INSTALL_DIR)
        (SYSTEM_GDBINIT_FILES): New variables.
        (all): Add stamp-system-gdbinit.
        (stamp-system-gdbinit): New rule.
        (clean-system-gdbinit, install-system-gdbinit)
        (uninstall-system-gdbinit): New rules.  Make them .PHONY.
        (install-only): Add dependency on install-system-gdbinit.
        (uninstall): Add dependency on uninstall-system-gdbinit.
        (clean): Add dependency on clean-system-gdbinit.
        * system-gdbinit/elinos.py: New file.
        * system-gdbinit/wrs-linux.py: New file.

11 years ago[Ada] Fix cleanup leak in ada-lang.c:old_renaming_is_invisible
Joel Brobecker [Tue, 21 May 2013 05:41:31 +0000 (05:41 +0000)]
[Ada] Fix cleanup leak in ada-lang.c:old_renaming_is_invisible

gdb/ChangeLog:

* ada-lang.c (old_renaming_is_invisible): Fix cleanup leak.

11 years ago2013-05-21 Hui Zhu <hui@codesourcery.com>
Hui Zhu [Tue, 21 May 2013 04:18:55 +0000 (04:18 +0000)]
2013-05-21  Hui Zhu  <hui@codesourcery.com>

* breakpoint.c (dprintf_breakpoint_ops): Remove its static.
* breakpoint.h (dprintf_breakpoint_ops): Add extern.
* mi/mi-cmd-break.c (ctype.h): New include.
(gdb_obstack.h): New include.
(mi_argv_to_format, mi_cmd_break_insert_1): New.
(mi_cmd_break_insert): Call mi_cmd_break_insert_1.
(mi_cmd_dprintf_insert): New.
* mi/mi-cmds.c (mi_cmds): Add "dprintf-insert".
* mi/mi-cmds.h (mi_cmd_dprintf_insert): New extern.

2013-05-21  Hui Zhu  <hui@codesourcery.com>

* gdb.texinfo (GDB/MI Breakpoint Commands): Describe the
"-dprintf-insert" command.

2013-05-21  Hui Zhu  <hui@codesourcery.com>

* gdb.mi/Makefile.in (PROGS): Add "mi-dprintf".
* gdb.mi/mi-dprintf.exp, gdb.mi/mi-dprintf.c: New.

11 years ago * gas/ppc/vsx2.d: Ignore trailing padding.
Alan Modra [Tue, 21 May 2013 03:26:18 +0000 (03:26 +0000)]
* gas/ppc/vsx2.d: Ignore trailing padding.

11 years ago * ld-powerpc/export-class.exp (supports_ppc64): Delete.
Alan Modra [Tue, 21 May 2013 01:37:41 +0000 (01:37 +0000)]
* ld-powerpc/export-class.exp (supports_ppc64): Delete.
(powerpc_export_class_test): Add "endian" param.
(abis): Add little-endian targets and test.
* ld-powerpc/powerpc-64-export-class.xd: Update for little-endian.

11 years agoopcodes/
Peter Bergner [Tue, 21 May 2013 01:36:46 +0000 (01:36 +0000)]
opcodes/
* ppc-dis.c (powerpc_init_dialect): Set default dialect to power8.
* ppc-opc.c (BHRBE, ST, SIX, PS, SXL, VXPS_MASK, XX1RB_MASK,
XLS_MASK, PPCVSX2): New defines.
(powerpc_opcodes) <bcdadd., bcdsub., bctar, bctar, bctarl, clrbhrb,
fmrgew, fmrgow, lqarx, lxsiwax, lxsiwzx, lxsspx, mfbhrbe,
mffprd, mffprwz, mfvrd, mfvrwz, mfvsrd, mfvsrwz, msgclrp, msgsndp,
mtfprd, mtfprwa, mtfprwz, mtsle, mtvrd, mtvrwa, mtvrwz, mtvsrd,
mtvsrwa, mtvsrwz, pbt., rfebb, stqcx., stxsiwx, stxsspx,
vaddcuq, vaddecuq, vaddeuqm, vaddudm, vadduqm, vbpermq, vcipher,
vcipherlast, vclzb, vclzd, vclzh, vclzw, vcmpequd, vcmpequd.,
vcmpgtsd, vcmpgtsd., vcmpgtud, vcmpgtud., veqv, vgbbd, vmaxsd,
vmaxud, vminsd, vminud, vmrgew, vmrgow, vmulesw, vmuleuw, vmulosw,
vmulouw, vmuluwm, vnand, vncipher, vncipherlast, vorc, vpermxor,
vpksdss, vpksdus, vpkudum, vpkudus, vpmsumb, vpmsumd, vpmsumh,
vpmsumw, vpopcntb, vpopcntd, vpopcnth, vpopcntw, vrld, vsbox,
vshasigmad, vshasigmaw, vsld, vsrad, vsrd, vsubcuq, vsubecuq,
vsubeuqm, vsubudm, vsubuqm, vupkhsw, vupklsw, waitasec, xsaddsp,
xscvdpspn, xscvspdpn, xscvsxdsp, xscvuxdsp, xsdivsp, xsmaddasp,
xsmaddmsp, xsmsubasp, xsmsubmsp, xsmulsp, xsnmaddasp, xsnmaddmsp,
xsnmsubasp, xsnmsubmsp, xsresp, xsrsp, xsrsqrtesp, xssqrtsp,
xssubsp, xxleqv, xxlnand, xxlorc>: New instructions.
<lxvx, stxvx>: New extended mnemonics.

gas/
* config/tc-ppc.c (ppc_setup_opcodes): Use new_seg to fix error
and clean up warning when using PRINT_OPCODE_TABLE.

gas/testsuite/
* gas/ppc/altivec2.d <bcdadd., bcdadd., vaddcuq, vaddecuq, vaddeuqm,
vaddudm, vadduqm, vbpermq, vcipher, vcipherlast, vclzb, vclzd, vclzh,
vclzw, vcmpequd, vcmpequd., vcmpgtsd, vcmpgtsd., vcmpgtud, vcmpgtud.,
veqv, vgbbd, vmaxsd, vmaxud, vminsd, vminud, vmrgew, vmrgow, vmulesw,
vmuleuw, vmulosw, vmulouw, vmuluwm, vnand, vncipher, vncipherlast,
vorc, vpermxor, vpksdss, vpksdus, vpkudum, vpkudus, vpmsumb, vpmsumd,
vpmsumh, vpmsumw, vpopcntb, vpopcntd, vpopcnth, vpopcntw, vrld, vsbox,
vshasigmad, vshasigmaw, vsld, vsrad, vsrd, vsubcuq, vsubecuq, vsubeuqm,
vsubudm, vsubuqm, vupkhsw, vupklsw>: Add new tests.
* gas/ppc/altivec2.s: Likewise.
* gas/ppc/power8.d <bcdadd., bcdsub., bctar, bctarl, clrbhrb, fmrgew,
fmrgow, lqarx, lxsiwax, lxsiwzx, lxsspx, mfbhrbe, mfvsrd, mfvsrwz,
msgclrp, msgsndp, mtsle, mtvsrd, mtvsrwa, mtvsrwz, pbt., rfebb,
stqcx., stxsiwx, stxsspx, vaddcuq, vaddecuq, vaddeuqm, vaddudm,
vadduqm, vbpermq, vcipher, vcipherlast, vclzb, vclzd, vclzh, vclzw,
vcmpequd, vcmpequd., vcmpgtsd, vcmpgtsd., vcmpgtud, vcmpgtud., veqv,
vgbbd, vmaxsd, vmaxud, vminsd, vminud, vmrgow, vmulesw, vmuleuw,
vmulosw, vmulouw, vmuluwm, vnand, vncipher, vncipherlast, vorc,
vpermxor, vpksdss, vpksdus, vpkudum, vpkudus, vpmsumb, vpmsumd,
vpmsumh, vpmsumw, vpopcntb, vpopcntd, vpopcnth, vpopcntw, vrld, vsbox,
vshasigmad, vshasigmaw, vsld, vsrad, vsrd, vsubcuq, vsubecuq, vsubeuqm,
vsubuqm, vupkhsw, vupklsw, waitasec, xsaddsp, xscvdpspn, xscvspdpn,
xscvsxdsp, xscvuxdsp, xsdivsp, xsmaddasp, xsmaddmsp, xsmsubasp,
xsmsubmsp, xsmulsp, xsnmaddasp, xsnmaddmsp, xsnmsubasp, xsnmsubmsp,
xsresp, xsrsp, xsrsqrtesp, xssqrtsp, xssubsp, xxleqv, xxlnand,
xxlorc>: Add new tests.
* gas/ppc/power8.s Likewise.
* gas/ppc/vsx.d <lxvd2x, stxvd2x>: Add new tests.
* gas/ppc/vsx.s Likewise.
* gas/ppc/vsx2.d: New test file.
* gas/ppc/vsx2.s: Likewise.
* gas/ppc/ppc.exp: Run it.

11 years ago*** empty log message ***
gdbadmin [Tue, 21 May 2013 00:00:32 +0000 (00:00 +0000)]
*** empty log message ***

11 years agodaily update
Alan Modra [Tue, 21 May 2013 00:00:04 +0000 (00:00 +0000)]
daily update

11 years ago * elf32-vax.c (elf_vax_instantiate_got_entries): Only set the
Maciej W. Rozycki [Mon, 20 May 2013 23:28:32 +0000 (23:28 +0000)]
* elf32-vax.c (elf_vax_instantiate_got_entries): Only set the
refcount member of the gotplt_union when resetting the reference
count.  Adjust comment.

11 years ago * lib/dwarf.exp (Dwarf): New variable _abbrev_section.
Doug Evans [Mon, 20 May 2013 22:11:37 +0000 (22:11 +0000)]
* lib/dwarf.exp (Dwarf): New variable _abbrev_section.
(_handle_DW_TAG): Use it.
(cu, tu): Replace parameters is_64, version, addr_size with options.
All callers updated.  Add Fission support.
* gdb.dwarf2/implptrconst.exp: Update callers of "cu".
* gdb.dwarf2/method-ptr.exp: Ditto.
* gdb.dwarf2/nostaticblock.exp: Ditto.
* gdb.dwarf2/subrange.exp: Ditto.
* gdb.dwarf2/missing-sig-type.exp: Update callers of "cu", "tu".

11 years ago * gdb.gdb/python-selftest.exp: New file.
Tom Tromey [Mon, 20 May 2013 20:43:28 +0000 (20:43 +0000)]
* gdb.gdb/python-selftest.exp: New file.

11 years ago * python/py-prettyprint.c (search_pp_list): Decref 'attr'.
Tom Tromey [Mon, 20 May 2013 20:39:31 +0000 (20:39 +0000)]
* python/py-prettyprint.c (search_pp_list): Decref 'attr'.

11 years ago * python/py-value.c (valpy_get_dynamic_type): Simplify
Tom Tromey [Mon, 20 May 2013 20:38:47 +0000 (20:38 +0000)]
* python/py-value.c (valpy_get_dynamic_type): Simplify
dynamic_type assignment.  Use Py_XINCREF.

11 years ago * python/py-type.c (typy_fields): Unconditionally decref 'r'.
Tom Tromey [Mon, 20 May 2013 20:37:48 +0000 (20:37 +0000)]
* python/py-type.c (typy_fields): Unconditionally decref 'r'.

11 years ago * python/py-frame.c (frapy_older, frapy_newer, gdbpy_newest_frame)
Tom Tromey [Mon, 20 May 2013 20:37:06 +0000 (20:37 +0000)]
* python/py-frame.c (frapy_older, frapy_newer, gdbpy_newest_frame)
(gdbpy_selected_frame): Move object-construction code
out of TRY_CATCH.

11 years ago * python/py-arch.c (gdbpy_initialize_arch): Use
Tom Tromey [Mon, 20 May 2013 20:36:19 +0000 (20:36 +0000)]
* python/py-arch.c (gdbpy_initialize_arch): Use
gdb_pymodule_addobject.
* python/py-block.c (gdbpy_initialize_blocks): Use
gdb_pymodule_addobject.
* python/py-breakpoint.c (gdbpy_initialize_breakpoints): Use
gdb_pymodule_addobject.
* python/py-cmd.c (gdbpy_initialize_breakpoints): Use
gdb_pymodule_addobject.
* python/py-event.c (gdbpy_initialize_event_generic): Use
gdb_pymodule_addobject.
* python/py-evtregistry.c (gdbpy_initialize_eventregistry): Use
gdb_pymodule_addobject.
* python/py-evts.c (add_new_registry): Use
gdb_pymodule_addobject.
(gdbpy_initialize_py_events): Likewise.
* python/py-finishbreakpoint.c
(gdbpy_initialize_finishbreakpoints): Use
gdb_pymodule_addobject.
* python/py-frame.c (gdbpy_initialize_frames): Use
gdb_pymodule_addobject.
* python/py-function.c (gdbpy_initialize_functions): Use
gdb_pymodule_addobject.
* python/py-inferior.c (gdbpy_initialize_inferior): Use
gdb_pymodule_addobject.
* python/py-infthread.c (gdbpy_initialize_thread): Use
gdb_pymodule_addobject.
* python/py-objfile.c (gdbpy_initialize_objfile): Use
gdb_pymodule_addobject.
* python/py-param.c (gdbpy_initialize_parameters): Use
gdb_pymodule_addobject.
* python/py-progspace.c (gdbpy_initialize_pspace): Use
gdb_pymodule_addobject.
* python/py-symbol.c (gdbpy_initialize_symbols): Use
gdb_pymodule_addobject.
* python/py-symtab.c (gdbpy_initialize_symtabs): Use
gdb_pymodule_addobject.
* python/py-type.c (gdbpy_initialize_types): Use
gdb_pymodule_addobject.
* python/py-utils.c (gdb_pymodule_addobject): New function.
* python/py-value.c (gdbpy_initialize_values): Use
gdb_pymodule_addobject.
* python/python-internal.h (gdb_pymodule_addobject): Declare.
* python/python.c (_initialize_python): Use
gdb_pymodule_addobject.

11 years ago * python/py-cmd.c (cmdpy_completer): Use explicit decref.
Tom Tromey [Mon, 20 May 2013 20:34:49 +0000 (20:34 +0000)]
* python/py-cmd.c (cmdpy_completer): Use explicit decref.
* python/py-param.c (get_set_value, get_show_value): Use
explicit decrefs.
* python/python.c (start_type_printers, apply_type_printers):
Use explicit decrefs.

11 years ago * python/py-evts.c (gdbpy_initialize_py_events): Don't
Tom Tromey [Mon, 20 May 2013 20:34:11 +0000 (20:34 +0000)]
* python/py-evts.c (gdbpy_initialize_py_events): Don't
incref the module.

11 years ago * python/python.c (gdbpy_run_events): Decref the result
Tom Tromey [Mon, 20 May 2013 20:32:56 +0000 (20:32 +0000)]
* python/python.c (gdbpy_run_events): Decref the result
of PyObject_CallObject.

11 years ago * python/py-symtab.c (set_sal): Use
Tom Tromey [Mon, 20 May 2013 20:31:18 +0000 (20:31 +0000)]
* python/py-symtab.c (set_sal): Use
CPYCHECKER_NEGATIVE_RESULT_SETS_EXCEPTION.  Return -1 on error.
(symtab_and_line_to_sal_object): Update.

11 years ago * python/py-param.c (compute_enum_values): Decref 'item'.
Tom Tromey [Mon, 20 May 2013 20:30:24 +0000 (20:30 +0000)]
* python/py-param.c (compute_enum_values): Decref 'item'.

11 years ago * mi/mi-main.c: Include python-internal.h.
Tom Tromey [Mon, 20 May 2013 20:29:44 +0000 (20:29 +0000)]
* mi/mi-main.c: Include python-internal.h.
(mi_cmd_list_features): Check gdb_python_initialized.
* python/py-inferior.c (python_on_normal_stop, python_on_resume)
(python_inferior_exit, python_new_objfile, add_thread_object)
(delete_thread_object, py_free_inferior): Check
gdb_python_initialized.
* python/py-prettyprint.c (apply_val_pretty_printer): Check
gdb_python_initialized.
* python/py-type.c (save_objfile_types): Check
gdb_python_initialized.
* python/python-internal.h (gdb_python_initialized): Declare.
* python/python.c (ensure_python_env): Throw exception if
Python not initialized.
(before_prompt_hook, source_python_script_for_objfile)
(start_type_printers, apply_type_printers,
free_type_printers): Check gdb_python_initialized.
* varobj.c (varobj_get_display_hint)
(dynamic_varobj_has_child_method, update_dynamic_varobj_children)
(install_new_value_visualizer, varobj_set_visualizer)
(value_get_print_value): Check gdb_python_initialized.

11 years ago * python/py-arch.c (gdbpy_initialize_arch): Return 'int'.
Tom Tromey [Mon, 20 May 2013 20:28:52 +0000 (20:28 +0000)]
* python/py-arch.c (gdbpy_initialize_arch): Return 'int'.
Check errors.
* python/py-auto-load.c (gdbpy_initialize_auto_load): Return 'int'.
* python/py-block.c (gdbpy_initialize_blocks): Return 'int'.
Check errors.
* python/py-breakpoint.c (gdbpy_initialize_breakpoints): Return 'int'.
Check errors.
* python/py-cmd.c (gdbpy_initialize_commands): Return 'int'.
Check errors.
* python/py-event.c (gdbpy_initialize_event): Return 'int'.
Check errors.
* python/py-event.h (GDBPY_NEW_EVENT_TYPE): Change generated
init function to return 'int'.
* python/py-evtregistry.c (gdbpy_initialize_eventregistry):
Return 'int'.  Check errors.
* python/py-evts.c (gdbpy_initialize_py_events): Return 'int'.
Check errors.
* python/py-finishbreakpoint.c (gdbpy_initialize_finishbreakpoints):
Return 'int'.  Check errors.
* python/py-frame.c (gdbpy_initialize_frames): Return 'int'.
Check errors.
* python/py-function.c (gdbpy_initialize_functions): Return 'int'.
Check errors.
* python/py-gdb-readline.c (gdbpy_initialize_gdb_readline):
Check errors.
* python/py-inferior.c (gdbpy_initialize_inferior): Return 'int'.
Check errors.
* python/py-infthread.c (gdbpy_initialize_thread): Return 'int'.
Check errors.
* python/py-lazy-string.c (gdbpy_initialize_lazy_string): Return 'int'.
Check errors.
* python/py-objfile.c (gdbpy_initialize_objfile): Return 'int'.
Check errors.
* python/py-param.c (gdbpy_initialize_parameters): Return 'int'.
Check errors.
* python/py-progspace.c (gdbpy_initialize_pspace): Return 'int'.
Check errors.
* python/py-symbol.c (gdbpy_initialize_symbols): Return 'int'.
Check errors.
* python/py-symtab.c (gdbpy_initialize_symtabs): Return 'int'.
Check errors.
* python/py-type.c (gdbpy_initialize_types): Return 'int'.
Check errors.
* python/py-value.c (gdbpy_initialize_values): Return 'int'.
Check errors.
* python/python-internal.h (gdbpy_initialize_auto_load,
gdbpy_initialize_values, gdbpy_initialize_frames,
gdbpy_initialize_symtabs, gdbpy_initialize_commands,
gdbpy_initialize_symbols, gdbpy_initialize_symtabs,
gdbpy_initialize_blocks, gdbpy_initialize_types,
gdbpy_initialize_functions, gdbpy_initialize_pspace,
gdbpy_initialize_objfile, gdbpy_initialize_breakpoints,
gdbpy_initialize_finishbreakpoints,
gdbpy_initialize_lazy_string, gdbpy_initialize_parameters,
gdbpy_initialize_thread, gdbpy_initialize_inferior,
gdbpy_initialize_eventregistry, gdbpy_initialize_event,
gdbpy_initialize_py_events, gdbpy_initialize_stop_event,
gdbpy_initialize_signal_event,
gdbpy_initialize_breakpoint_event,
gdbpy_initialize_continue_event,
gdbpy_initialize_exited_event, gdbpy_initialize_thread_event,
gdbpy_initialize_new_objfile_event, gdbpy_initialize_arch):
Update.  Use CPYCHECKER_NEGATIVE_RESULT_SETS_EXCEPTION.
* python/python.c (gdb_python_initialized): New global.
(gdbpy_initialize_events): Return 'int'.  Check errors.
(_initialize_python): Check errors.  Set
gdb_python_initialized.

11 years ago * python/py-finishbreakpoint.c (bpfinishpy_out_of_scope):
Tom Tromey [Mon, 20 May 2013 20:27:44 +0000 (20:27 +0000)]
* python/py-finishbreakpoint.c (bpfinishpy_out_of_scope):
Decref the reslut of PyObject_CallMethod.

11 years ago * python/py-event.c (gdbpy_initialize_event_generic): Return
Tom Tromey [Mon, 20 May 2013 20:26:39 +0000 (20:26 +0000)]
* python/py-event.c (gdbpy_initialize_event_generic): Return
early if PyType_Ready fails.

11 years ago * python/py-type.c (make_fielditem): Add gdb_assert_not_reached
Tom Tromey [Mon, 20 May 2013 20:25:40 +0000 (20:25 +0000)]
* python/py-type.c (make_fielditem): Add gdb_assert_not_reached
as 'default' in the switch.

11 years ago * python/py-inferior.c (gdbpy_inferiors): Update. Hoist
Tom Tromey [Mon, 20 May 2013 20:24:49 +0000 (20:24 +0000)]
* python/py-inferior.c (gdbpy_inferiors): Update.  Hoist
get_addr_from_python calls out of TRY_CATCH.
(infpy_write_memory, infpy_search_memory): Likewise.
* python/py-utils.c (get_addr_from_python): Return negative
value on error.  Use TRY_CATCH.
* python/python-internal.h (get_addr_from_python): Use
CPYCHECKER_NEGATIVE_RESULT_SETS_EXCEPTION.

11 years ago * gdb.base/maint.exp: Fix test for "mt expand-symtabs" to account for
Doug Evans [Mon, 20 May 2013 20:23:20 +0000 (20:23 +0000)]
* gdb.base/maint.exp: Fix test for "mt expand-symtabs" to account for
-fdebug-types-section.

11 years ago * python/py-event.c (evpy_emit_event): Decref the
Tom Tromey [Mon, 20 May 2013 20:23:19 +0000 (20:23 +0000)]
* python/py-event.c (evpy_emit_event): Decref the
result of PyObject_CallFunctionObjArgs.

11 years ago * python/py-cmd.c (cmdpy_completer): Use iterator protocol.
Tom Tromey [Mon, 20 May 2013 20:21:55 +0000 (20:21 +0000)]
* python/py-cmd.c (cmdpy_completer): Use iterator protocol.
Correctly decref.

11 years ago * python/py-cmd.c (cmdpy_init): Decref 'ds_obj'.
Tom Tromey [Mon, 20 May 2013 20:20:48 +0000 (20:20 +0000)]
* python/py-cmd.c (cmdpy_init): Decref 'ds_obj'.

11 years ago * python/py-event.h (gdbpy_initialize_event_generic): Use
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.

11 years ago * python/py-arch.c (archpy_disassemble): Update.
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.

11 years ago * python/python-internal.h (events_object_type): Remove.
Tom Tromey [Mon, 20 May 2013 20:18:22 +0000 (20:18 +0000)]
* python/python-internal.h (events_object_type): Remove.

11 years ago * python/py-event.h (evpy_emit_event): Use
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.

11 years ago * py-evtregistry.c (create_event_object): Decref
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.

11 years ago * py-cmd.c (gdbpy_string_to_argv): Check result of
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.

11 years ago * python/python.c (before_prompt_hook): Add cleanup to
Tom Tromey [Mon, 20 May 2013 20:13:28 +0000 (20:13 +0000)]
* python/python.c (before_prompt_hook): Add cleanup to
decref 'hook'.

11 years ago * python/py-function.c (fnpy_init): Decref result of
Tom Tromey [Mon, 20 May 2013 20:12:04 +0000 (20:12 +0000)]
* python/py-function.c (fnpy_init): Decref result of
PyObject_GetAttrString.

11 years ago * python/py-threadevent.c (get_event_thread): Use
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.

11 years ago * python/py-arch.c (arch_object_type): Use
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.

11 years ago2013-05-20 Andreas Tobler <andreas@fgznet.ch>
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.

11 years ago When reading CU, stay in DWO. Be more tolerent of bad debug info.
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.

11 years agobfd/elf64-aarch64.c: Remove dead code.
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.

11 years agoAdd missing empty line after var declarations in handle_unload_dll
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.

11 years ago * config/tc-ppc.c (md_apply_fix): Hoist code common to insn
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.

11 years ago[dwarf] Mark all functions as prototyped except C functions.
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.