aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2015-07-092015-07-09 Catherine Moore <clm@codesourcery.com>Catherine Moore19-4/+154
include/ * elf/mips/mips.h (Val_GNU_MIPS_ABI_FP_NAN2008): New. gas/ * config/tc-mips.c (check_fpabi): Handle VAL_GNU_MIPS_ABI_FP_NAN2008. binutils/ * readelf.c (print_mips_fp_abi_value): Handle Val_GNU_MIPS_ABI_FP_NAN2008. ld/testsuite/ * ld-mips-elf/attr-gnu-4-08.d: Update expected output. * ld-mips-elf/attr-gnu-4-09.d: New. * ld-mips-elf/attr-gnu-4-19.d: New. * ld-mips-elf/attr-gnu-4-29.d: New. * ld-mips-elf/attr-gnu-4-39.d: New. * ld-mips-elf/attr-gnu-4-49.d: New. * ld-mips-elf/attr-gnu-4-59.d: New. * ld-mips-elf/attr-gnu-4-69.d: New. * ld-mips-elf/attr-gnu-4-79.d: New. * ld-mips-elf/attr-gnu-4-89.d: New. * ld-mips-elf/attr-gnu-4-9.s: New. * ld-mips-elf/mips-elf.exp: Run new tests.
2015-07-09Factor out memberptr printing code from c_val_printSimon Marchi2-6/+29
gdb/ChangeLog: * c-valprint.c (c_val_print): Factor out memberptr printing code from c_val_print to ... (c_val_print_memberptr): ... this new function.
2015-07-09Factor out int printing code from c_val_printSimon Marchi2-24/+41
gdb/ChangeLog: * c-valprint.c (c_val_print): Factor out int printing code to ... (c_val_print_int): ... this new function.
2015-07-09Factor out struct and union printing code from c_val_printSimon Marchi2-30/+65
gdb/ChangeLog: * c-valprint.c (c_val_print): Factor out struct and union printing code to ... (c_val_print_struct): ... this new function ... (c_val_print_union): ... and this new function.
2015-07-09Factor out pointer printing code from c_val_printSimon Marchi2-25/+44
gdb/ChangeLog: * c-valprint.c (c_val_print): Factor out pointer printing code to ... (c_val_print_ptr): ... this new function.
2015-07-09Factor out array printing code from c_val_printSimon Marchi2-94/+116
gdb/ChangeLog: * c-valprint.c (c_valprint): Factor our array printing code from c_val_print to ... (c_val_print_array): ... this new function.
2015-07-09Factor out print_unpacked_pointer from c_val_printSimon Marchi2-99/+112
Turn this code into a function, instead of a goto. gdb/ChangeLog: * c-valprint.c (c_val_print): Factor out pointer printing code to ... (print_unpacked_pointer): ... this new function.
2015-07-09Remove unneeded variable assignmentSimon Marchi2-4/+9
The assignment to i in the TYPE_CODE_PTR section is not useful. Removing it allows to move i in a narrower scope, which will help things somewhere in the next patches. gdb/ChangeLog: * c-valprint.c (c_val_print): Remove an assignment to i and move its declaration.
2015-07-092015-07-09 Catherine Moore <clm@codesourcery.com>Catherine Moore2-3/+9
* elflink.c (bfd_elf_size_dynamic_sections): Call to _bfd_elf_maybe_strip_eh_frame_hdr should be before bed->elf_backend_size_dynamic_sections.
2015-07-09Pass ptid to aarch64_linux_get_debug_reg_capacityYao Qi2-4/+10
This patch is to pass ptid to aarch64_linux_get_debug_reg_capacity, and stop using global variable inferior_ptid. gdb: 2015-07-09 Yao Qi <yao.qi@linaro.org> * aarch64-linux-nat.c (aarch64_linux_get_debug_reg_capacity): Add argument ptid. Update comments. Caller update.
2015-07-09[gdbserver, aarch64] Set usrregs to NULL in regs_infoYao Qi2-29/+7
Hi, I happen to read the comments in regs_info below, struct regs_info { ... /* Info used when accessing registers with PTRACE_PEEKUSER / PTRACE_POKEUSER. This can be NULL if all registers are transferred with regsets .*/ struct usrregs_info *usrregs; that usrregs can be NULL if all registers are transferred with regsets, which is exactly what aarch64-linux does. This patch is to set usrregs to NULL in regs_info and remove aarch64_usrregs_info and aarch64_regmap. gdb/gdbserver: 2015-07-09 Yao Qi <yao.qi@linaro.org> * linux-aarch64-low.c (aarch64_regmap): Remove. (aarch64_usrregs_info): Remove. (regs_info): Set field usrregs to NULL.
2015-07-09btrace, pt: support new packetsMarkus Metzger2-1/+31
Add support for dumping new Intel(R) Processor Trace packets in the "maint btrace packet-history" command. gdb/ * btrace.c (pt_print_packet): Print stop, vmcs, tma, mtc, cyc, and mnt packets.
2015-07-09btrace: fix build fail with 32-bit BFDMarkus Metzger2-2/+6
When compiling GDB with 32-bit BFD, the build fails with: In file included from btrace.h:33:0, from btrace.c:23: /usr/include/intel-pt.h:1643:51: note: expected 'int (*)(uint8_t *, size_t, const struct pt_asid *, uint64_t, void *)' but argument is of type 'int (*)(gdb_byte *, size_t, const struct pt_asid *, CORE_ADDR, void *)' extern pt_export int pt_image_set_callback(struct pt_image *image, ^ gdb/ * btrace.c (btrace_pt_readmem_callback): Change type of PC argument.
2015-07-09Automatic date update in version.inGDB Administrator1-1/+1
2015-07-08Add missing spaces in previous patchSimon Marchi2-2/+6
gdb/ChangeLog: * progspace.c (delete_program_space): Add missing spaces.
2015-07-08Delete program spaces directly when removing inferiorsSimon Marchi7-59/+61
When deleting an inferior, delete the associated program space as well if it becomes unused. This replaces the "pruning" approach, with which you could forget to call prune_program_spaces (as seen, with the -remove-inferior command, see [1]). This allows to remove the prune_program_spaces function. At the same time, I was able to clean up the delete_inferior* family: - delete_inferior is unused - delete_inferior_silent is only used in monitor_close, but is replaced with discard_all_inferiors [2], so it becomes unused - All remaining calls to delete_inferior_1 are with silent=1, so the parameter is removed - delete_inferior_1 is renamed to delete_inferior I renamed pspace_empty_p to program_space_empty_p. I prefer if the "exported" functions have a more explicit and standard name. Tested on Ubuntu 14.10. [1] https://sourceware.org/ml/gdb-patches/2014-09/msg00717.html [2] See https://sourceware.org/ml/gdb-patches/2015-07/msg00228.html and follow-ups for details. gdb/Changelog: * inferior.c (delete_inferior_1): Rename to ... (delete_inferior): ..., remove 'silent' parameter, delete program space when unused and remove call to prune_program_spaces. Remove the old, unused, delete_inferior. (delete_inferior_silent): Remove. (prune_inferiors): Change call from delete_inferior_1 to delete_inferior and remove 'silent' parameter. Remove call to prune_program_spaces. (remove_inferior_command): Idem. * inferior.h (delete_inferior_1): Rename to... (delete_inferior): ..., remove 'silent' parameter and remove the original delete_inferior. (delete_inferior_silent): Remove. * mi/mi-main.c (mi_cmd_remove_inferior): Change call from delete_inferior_1 to delete_inferior and remove 'silent' parameter. * progspace.c (prune_program_spaces): Remove. (pspace_empty_p): Rename to... (program_space_empty_p): ... and make non-static. (delete_program_space): New. * progspace.h (prune_program_spaces): Remove declaration. (program_space_empty_p): New declaration. (delete_program_space): New declaration. * monitor.c (monitor_close): Replace call to delete_thread_silent and delete_inferior_silent with discard_all_inferiors.
2015-07-08Clarify case requirements for gas pseudo-opsRichard Sandiford2-1/+6
gas/ 2015-07-08 Ciro Santilli <ciro.santilli@gmail.com> * doc/as.texinfo: Clarify case requirements for pseudo ops.
2015-07-08tui: replace deprecated_register_changed_hook with observerPatrick Palka6-14/+31
This is a straightforward replacement of the TUI's use of the aforementioned hook with the register_changed observer. Since this was the only user of the hook, this patch also removes the hook. gdb/ChangeLog: * defs.h (deprecated_register_changed_hook): Remove prototype. * interps.c (clear_iterpreter_hooks): Remove reference to deprecated_register_changed_hook. * top.c (deprecated_register_changed_hook): Remove prototype. * valops.c (value_assign): Remove reference to deprecated_register_changed_hook. * tui/tui-hooks.c (tui_register_changed): Add parameter "frame". Add comment documenting the function. (tui_register_changed_observer): Define. (tui_install_hooks): Remove reference to deprecated_register_changed_hook. Set tui_register_changed_observer. (tui_remove_hooks): Remove reference to deprecated_register_changed_hook. Unset tui_register_changed_observer.
2015-07-08Define DIFF_EXPR_OK for avr target to allow PC relative difference relocation.Denis Chertykov13-4/+270
When generating relocation (tc_gen_reloc) 32 bit relocation fixup is changed to new 32 bit PC relative relocation if the fixup has pc-relative flag set. bfd/ChangeLog 2015-07-06 Pitchumani Sivanupandi <pitchumani.s@atmel.com> * elf32-avr.c: Add 32 bit PC relative relocation for AVR target. gas/ChangeLog 2015-07-06 Pitchumani Sivanupandi <pitchumani.s@atmel.com> * config/tc-avr.c (tc_gen_reloc): Change 32 bit relocation to 32 bit PC relative and update offset if the fixup is pc-relative. * config/tc-avr.h (DIFF_EXPR_OK): Define to enable PC relative diff relocs. gas/testsuite/ChangeLog 2015-07-06 Pitchumani Sivanupandi <pitchumani.s@atmel.com> * gas/avr/pc-relative-reloc.d: New test for 32 bit pc relative reloc. * gas/avr/per-function-debugline.s: New test source. include/ChangeLog 2015-07-06 Pitchumani Sivanupandi <pitchumani.s@atmel.com> * elf/avr.h: Add new 32 bit PC relative relocation. ld/testsuite/ChangeLog 2015-07-06 Pitchumani Sivanupandi <pitchumani.s@atmel.com> * ld-avr/gc-section-debugline.d: New test. * ld-avr/per-function-debugline.s: Source for new test.
2015-07-08gdb/doc: Update 'frame' command documentation.Andrew Burgess2-13/+10
The documentation for the 'frame' command has gotten a little out of date, it still mentions architecturally specific details that are no longer relevant. This commit removes the old details that no longer apply, and tries to expand the existing text a little to make the usage clearer for some cases. gdb/doc/ChangeLog: * gdb.texinfo (Selection): Update documentation for 'frame' command.
2015-07-08Revert "Delete program spaces directly when removing inferiors"Simon Marchi6-57/+57
Reverted, since it causes a build failure. It turns out that delete_inferior_silent wasn't actually unused. This reverts commit 0560c645c02eba2828a053039dcfdf676cdd1d00.
2015-07-08Delete program spaces directly when removing inferiorsSimon Marchi6-57/+57
When deleting an inferior, delete the associated program space as well if it becomes unused. This replaces the "pruning" approach, with which you could forget to call prune_program_spaces (as seen, with the -remove-inferior command, see [1]). This allows to remove the prune_program_spaces function. At the same time, I was able to clean up the delete_inferior* family. delete_inferior_silent and delete_inferior were unused, which allowed renaming delete_inferior_1 to delete_inferior. Also, since all calls to it were with silent=1, I removed that parameter completely. I renamed pspace_empty_p to program_space_empty_p. I prefer if the "exported" functions have a more explicit and standard name. Tested on Ubuntu 14.10. This obsoletes my previous patch "Add call to prune_program_spaces in mi_cmd_remove_inferior" [1]. [1] https://sourceware.org/ml/gdb-patches/2014-09/msg00717.html gdb/Changelog: * inferior.c (delete_inferior_1): Rename to ... (delete_inferior): ..., remove 'silent' parameter, delete program space when unused and remove call to prune_program_spaces. Remove the old, unused, delete_inferior. (delete_inferior_silent): Remove. (prune_inferiors): Change call from delete_inferior_1 to delete_inferior and remove 'silent' parameter. Remove call to prune_program_spaces. (remove_inferior_command): Idem. * inferior.h (delete_inferior_1): Rename to... (delete_inferior): ..., remove 'silent' parameter and remove the original delete_inferior. (delete_inferior_silent): Remove. * mi/mi-main.c (mi_cmd_remove_inferior): Change call from delete_inferior_1 to delete_inferior and remove 'silent' parameter. * progspace.c (prune_program_spaces): Remove. (pspace_empty_p): Rename to... (program_space_empty_p): ... and make non-static. (delete_program_space): New. * progspace.h (prune_program_spaces): Remove declaration. (program_space_empty_p): New declaration. (delete_program_space): New declaration.
2015-07-08compile: Warn for old GCC on cv-qualified self-referenceJan Kratochvil5-35/+60
GDB could: compile code struct_object.selffield = &struct_object ./compile/compile-c-types.c:83: internal-error: insert_type: Assertion `add == NULL || add->gcc_type == gcc_type' failed. A problem internal to GDB has been detected, further debugging may prove unreliable. Quit this debugging session? (y or n) FAIL: gdb.compile/compile.exp: compile code struct_object.selffield = &struct_object (GDB internal error) The bug was not in GDB but in the GCC part interfacing with GDB. Alexandre Oliva has fixed it the right way: https://gcc.gnu.org/git/gitweb.cgi?p=gcc.git;a=commitdiff;h=072dfdba0ea62abb65514cb3a90cdf3868efe286 git://gcc.gnu.org/git/gcc.git aoliva/libcp1 Attaching this GDB testsuite update + info to user s/he should upgrade GCC. After Alex upstreams the fix I can update the message to contain the specific GCC release. gdb/ChangeLog 2015-07-08 Jan Kratochvil <jan.kratochvil@redhat.com> PR compile/18484 * compile/compile-c-types.c (insert_type): Change gdb_assert to error. gdb/testsuite/ChangeLog 2015-07-08 Jan Kratochvil <jan.kratochvil@redhat.com> PR compile/18484 * gdb.compile/compile.c (struct struct_type): Add volatile to selffield's type. * gdb.compile/compile.exp (compile code struct_object.selffield = &struct_object): Skip further struct_object tests if this one xfails.
2015-07-08PR18617 - Incorrect expression bytecode generated for narrowing conversionsRobert O'Callahan4-1/+13
The existing code preserves 'from' bits, which is incorrect. E.g. (gdb) maint agent-eval (char)255L Scope: 0x4008d6 Reg mask: 00 0 const16 255 3 ext 64 5 end 'ext 64' should be 'ext 8'; this bytecode evaluates to 255 instead of the correct result of -1. The fix is simple. I ran the entire test suite on x86-64 and there were no new test failures. gdb/ChangeLog: 2015-07-08 Robert O'Callahan <robert@ocallahan.org> PR exp/18617 * ax-gdb.c (gen_conversion): Extend to 'to' bits, not 'from'. gdb/testsuite/ChangeLog: 2015-07-08 Robert O'Callahan <robert@ocallahan.org> PR exp/18617 * gdb.trace/ax.exp: Add test.
2015-07-08add myself to write-after-approval listMarkus Metzger2-0/+5
gdb/ * MAINTAINERS (Write After Approval): Add Markus T. Metzger.
2015-07-08ari: fix strerror() useMarkus Metzger2-10/+15
Do not use strerror(), instead use safe_strerror(). gdb/ * nat/linux-btrace.c (kernel_supports_bts, kernel_supports_pt): Use safe_strerror() instead of strerror().
2015-07-08Automatic date update in version.inGDB Administrator1-1/+1
2015-07-07Make gold aarch64 accept long form of mapping symbols.Han Shen2-4/+18
2015-07-07 Han Shen <shenhan@google.com> gold/ChangeLog: 2015-07-06 Han Shen <shenhan@google.com> * aarch64.cc (AArch64_relobj::do_count_local_symbols): Make legal of mapping symbols.
2015-07-07New proc is_aarch64_targetYao Qi6-4/+23
Some tests expect the the target is aarch64, but checking target triplet is not accurate, because target triplet can be aarch64 but the program is in arm (or aarch32) state. This patch addes a new proc is_aarch64_target which returns true if the target is on aarch64 state. gdb/testsuite: 2015-07-07 Yao Qi <yao.qi@linaro.org> * gdb.arch/aarch64-atomic-inst.exp: Check is_aarch64_target instead of istarget "aarch64*-*-*". * gdb.arch/aarch64-fp.exp: Likewise. * gdb.base/float.exp: Likewise. * gdb.reverse/aarch64.exp: Likewise. * lib/gdb.exp (is_aarch64_target): New proc.
2015-07-07New proc is_aarch32_targetYao Qi9-7/+56
GDB tests running on arm target should be also run on aarch32 (32-bit mode on aarch64). There should be no difference. It is not precise to check target triplet to decide which tests should be run, because if I compiler all the test binary in 32-bit (arm program), but target triplet is still aarch64, so that these arm specific tests are skipped. This patch is to add a new proc is_aarch32_target which return true if target triplet is arm or the test binary is compiled for arm. gdb/testsuite: 2015-07-07 Yao Qi <yao.qi@linaro.org> * lib/gdb.exp (is_aarch32_target): New proc. * gdb.arch/arm-bl-branch-dest.exp: Check is_aarch32_target instead of "istarget "arm*-*-*"". * gdb.arch/arm-disp-step.exp: Likewise. * gdb.arch/thumb-bx-pc.exp: Likewise. * gdb.arch/thumb-prologue.exp: Likewise. * gdb.arch/thumb-singlestep.exp: Likewise. * gdb.base/disp-step-syscall.exp: Likewise. * gdb.base/float.exp: Likewise.
2015-07-07Enable multi-arch test in catch-syscall.exp on aarch64Yao Qi2-2/+10
This patch is to enable test_catch_syscall_multi_arch on aarch64. gdb/testsuite: 2015-07-07 Yao Qi <yao.qi@linaro.org> * gdb.base/catch-syscall.exp (test_catch_syscall_multi_arch): Set arch1, arch2, syscall1_name, syscall2_name and syscall_number.
2015-07-07Adjust gdb.multi tests for aarch64Yao Qi3-2/+41
Multi-arch related tests under gdb.multi are to compile programs with the same compiler but different compiler options (-m64 vs -m32). However, different compilers are needed to compile both aarch64 program and arm (aarch32) program. This patch is to adjust these test cases to compile programs in different modes with different compiler. When we use gcc for arm-linux target, its file name can be different, arm-linux-gnueabihf-gcc, arm-linux-gnueabi-gcc, or arm-none-linux-gnueabi-gcc, so I add a variable ARM_CC_FOR_TARGET, so that user can set the name of gcc for arm-linux target on aarch64, like: $ make check RUNTESTFLAGS='ARM_CC_FOR_TARGET=arm-linux-gnueabihf-gcc multi-arch.exp' gdb/testsuite: 2015-07-07 Yao Qi <yao.qi@linaro.org> * gdb.multi/multi-arch-exec.exp: Set march1 and march2 to "" if target is aarch64. If target is aarch64, set compiler=${ARM_CC_FOR_TARGET} if it exists. * gdb.multi/multi-arch.exp: Likewise.
2015-07-07Set architecture to arm in arm-*.xml filesYao Qi13-0/+33
This patch is to add the following line to various arm target description xml files, <architecture>arm</architecture> in order to fix problems I've seen on aarch64 multi-arch debugging, detach^M Detaching from program: build-gdb/gdb/testsuite/gdb.base/attach, process 17145^M (gdb) PASS: gdb.base/attach.exp: attach1 detach file^M No executable file now.^M Architecture of file not recognized.^M (gdb) FAIL: gdb.base/attach.exp: attach1, purging symbols after detach Without this patch, struct target_desc *tdesc_* are not initialised properly, that is, fields arch and osabi in 'struct target_desc' are not set properly. This doesn't cause any problems on single arch debugging, because arch-utils.c:gdbarch_info_fill will guess correctly. However, in multi-arch debugging, gdbarch_info_fill gets the aarch64 arch, but the target description is for arm (because the current inferior is 32-bit arm). It is a surprise to me we didn't set architecture to "arm" before in *.xml files, and I didn't find out why didn't do so. AFAICS, gdb/features/arm-with-iwmmxt.xml was added firstly (in patch https://sourceware.org/ml/gdb-patches/2007-01/msg00593.html) which had <architecture>iwmmxt</architecture>, however, afterwards, architecture isn't set anymore in features/arm-*.xml files (in patches https://sourceware.org/ml/gdb-patches/2009-07/msg00689.html and https://sourceware.org/ml/gdb-patches/2010-08/msg00225.html). gdb: 2015-07-07 Yao Qi <yao.qi@linaro.org> * features/arm-with-m-fpa-layout.xml: Set architecture to arm. * features/arm-with-m-fpa-layout.c: Regenerated. * features/arm-with-m-vfp-d16.xml: Likewise. * features/arm-with-m-vfp-d16.c: Regenerated. * features/arm-with-m.xml: Likewise. * features/arm-with-m.c: Regenerated. * features/arm-with-neon.xml: Likewise. * features/arm-with-neon.c: Regenerated. * features/arm-with-vfpv2.xml: Likewise. * features/arm-with-vfpv2.c: Regenerated. * features/arm-with-vfpv3.xml: Likewise. * features/arm-with-vfpv3.c: Regenerated.
2015-07-07Native debug arm program by aarch64 GDBYao Qi6-43/+192
This patch is to let aarch64 GDB debug 32-bit arm program natively. In each function for fetching and storing registers, GDB will check gdbarch_bfd_arch_info (gdbarch)->bits_per_word, if it is 32, call the corresponding aarch32 functions in aarch32-linux-nat.c, otherwise fall back to aarch64 code to fetch and store registers. aarch64_linux_read_description has to return the right target description, but we don't have gdbarch available there, so GDB fetches auxv and gets AT_PHENT, in order to determine whether the target is 32-bit or 64-bit. I learned this trick from solib-svr4.c. gdb: 2015-07-07 Yao Qi <yao.qi@linaro.org> * aarch32-linux-nat.h (VFP_REGS_SIZE): New macro, moved from arm-linux-nat.c. * aarch64-linux-nat.c: Include aarch32-linux-nat.h and elf/external.h. (fetch_gregs_from_thread): Call aarch32_gp_regcache_supply if target is 32-bit. (store_gregs_to_thread): Call aarch32_gp_regcache_collect if target is 32-bit. (fetch_fpregs_from_thread): Call aarch32_vfp_regcache_supply if target is 32-bit. (store_fpregs_to_thread): Call aarch32_vfp_regcache_collect if target is 32-bit. (tdesc_arm_with_vfpv3, tdesc_arm_with_neon): Declare. (aarch64_linux_read_description): Return the right target description. * arm-linux-nat.c (VFP_REGS_SIZE): Moved to aarch32-linux-nat.h. * config/aarch64/linux.mh (NATDEPFILES): Add aarch32-linux-nat.o. * configure.tgt (aarch64*-*-linux*): Add arm-tdep.o and arm-linux-tdep.o
2015-07-07New aarch32-linux-nat.cYao Qi5-38/+153
This patch is to move all the code about transferring regcache <-> byte buffer for arm (aarch32) to a separate file aarch32-linux-nat.c. Then, in the following patch, aarch64 code can use it to do multi-arch debugging. This is a refactory patch. gdb: 2015-07-07 Yao Qi <yao.qi@linaro.org> * aarch32-linux-nat.c: New file. * aarch32-linux-nat.h: New file. * arm-linux-nat.c: Include aarch32-linux-nat.h. (fetch_regs): Move code to aarch32-linux-nat.c. Call aarch32_gp_regcache_supply. (store_regs): Move code to aarch32-linux-nat.c. Call aarch32_gp_regcache_collect. (fetch_vfp_regs): Move code to aarch32-linux-nat.c. Call aarch32_vfp_regcache_supply. (store_vfp_regs): Move code to aarch32-linux-nat.c. Call aarch32_vfp_regcache_collect. * config/arm/linux.mh (NATDEPFILES): Add aarch32-linux-nat.o.
2015-07-07Remove {fetch,store}_fpregister and {fetch,store}_registerYao Qi2-219/+15
This patch is to remove fetch_fpregister, fech_register, store_fpregister and store_register, and use fetch_fpregs, fetch_regs, store_regs, and store_fpregs instead. gdb: 2015-07-07 Yao Qi <yao.qi@linaro.org> * arm-linux-nat.c (store_fpregister): Remove. (store_register): Likewise. (fetch_fpregister): Likewise. (fetch_register): Likewise. (arm_linux_store_inferior_registers): Call store_regs and store_fpregs instead. (arm_linux_fetch_inferior_registers): Call fetch_fpregs and fetch_regs instead.
2015-07-07Fix test for Python 3Simon Marchi2-2/+7
gdb/testsuite/ChangeLog: * gdb.python/py-lazy-string.exp: Add missing parentheses to print.
2015-07-07[arm] Fix regression by Do not skip prologue for asm (.S) filesYao Qi2-0/+7
Patch "Do not skip prologue for asm (.S) files" [1] changes GDB's behaviour on which test gdb.arch/thumb-singlestep.exp depends, so it causes the fail below: (gdb) si^M 37 blx foo^M (gdb) FAIL: gdb.arch/thumb-singlestep.exp: step into foo the test assumes the program will stop at the instruction after "push" but it doesn't. The fix to this fail is to do one more single step. [1] https://sourceware.org/ml/gdb-patches/2015-06/msg00561.html gdb/testsuite: 2015-07-07 Yao Qi <yao.qi@linaro.org> * gdb.arch/thumb-singlestep.exp: Do one more single step.
2015-07-07Automatic date update in version.inGDB Administrator1-1/+1
2015-07-06Align text section ends so that stub tables appears at expected addresses.Doug Kwan12-4/+51
2015-07-06gdb: Rewrite documentation for layout and focus commands.Andrew Burgess2-16/+36
Changes the documentation for the layout and focus commands. Instead of documenting each layout (or focus) sub-command as a separate command, document a single layout (and focus) command which takes a parameter, then list the possible parameters in a table nested under each command. The documentation for the layout command has been extended little to make it clearer which windows are shown in each layout. gdb/ChangeLog: * doc/gdb.texinfo (TUI): Restructure documentation on TUI layout and focus commands.
2015-07-06Update NEWS post GDB 7.10 branch creation.Joel Brobecker2-1/+9
gdb/ChangeLog: * NEWS: Create a new section for the next release branch. Rename the section of the current branch, now that it has been cut.
2015-07-06Bump version to 7.10.50.DATE-cvs.Joel Brobecker2-1/+6
Now that the GDB 7.10 branch has been created, we can bump the version number. gdb/ChangeLog: GDB 7.10 branch created (66c4b3e8a628a207bc6aafef6af0c4128195f56e): * version.in: Bump version to 7.10.50.DATE-cvs.
2015-07-06Fix problems with finishing a dummy function call on simulators.gdb-7.10-branchpointLuis Machado2-10/+8
This fixes regressions introduced with the original change to not consider permanent breakpoints always inserted: 6ae8866180bf90e9ec76c2dd34c07fd826d11a83 is the first bad commit commit 6ae8866180bf90e9ec76c2dd34c07fd826d11a83 Author: Luis Machado <lgustavo@codesourcery.com> Date: Wed Jun 17 16:50:57 2015 -0300 Fix problems with finishing a dummy function call on simulators. Some checks were mistakenly left out of the original patch, which caused the following failures: -PASS: gdb.base/shlib-call.exp: print mainshr1(1) -PASS: gdb.base/shlib-call.exp: step into mainshr1 +FAIL: gdb.base/shlib-call.exp: print mainshr1(1) +FAIL: gdb.base/shlib-call.exp: step into mainshr1 -PASS: gdb.cp/chained-calls.exp: q(p()) +FAIL: gdb.cp/chained-calls.exp: q(p()) -PASS: gdb.cp/chained-calls.exp: q(p() + r()) +FAIL: gdb.cp/chained-calls.exp: q(p() + r()) -PASS: gdb.cp/chained-calls.exp: g(f(g(f() + f())) + f()) +FAIL: gdb.cp/chained-calls.exp: g(f(g(f() + f())) + f()) -PASS: gdb.cp/chained-calls.exp: *c -PASS: gdb.cp/chained-calls.exp: *c + *c -PASS: gdb.cp/chained-calls.exp: q(*c + *c) +FAIL: gdb.cp/chained-calls.exp: *c +FAIL: gdb.cp/chained-calls.exp: *c + *c +FAIL: gdb.cp/chained-calls.exp: q(*c + *c) -PASS: gdb.cp/classes.exp: calling method for small class +FAIL: gdb.cp/classes.exp: calling method for small class The above is likely caused by GDB not removing the permanent breakpoints from the target, leading to the inferior executing the breakpoint instruction and tripping on a SIGSEGV. gdb/ChangeLog: 2015-07-06 Luis Machado <lgustavo@codesourcery.com> * breakpoint.c (remove_breakpoint_1): Don't handle permanent breakpoints in a special way. (remove_breakpoint): Likewise. (mark_breakpoints_out): Likewise.
2015-07-06Remove the merge conflict introduced byH.J. Lu1-71/+0
commit 2f0c68f23bb3132cd5ac466ca8775c0d9e4960cd Author: Catherine Moore <clm@codesourcery.com> Date: Thu May 28 14:50:36 2015 -0700 Compact EH Support
2015-07-06gdb/doc: Fix incorrect use of @xref.Andrew Burgess2-1/+5
All uses of @xref must be followed by either '.' or ','. In commit a4ea0946c an incorrect use of @xref was introduced. This commit adds a comma after the use of @xref. gdb/ChangeLog: * doc/gdb.texinfo (TUI): Add comma after @xref.
2015-07-06gdb/tui: Don't cast between window types.Andrew Burgess2-2/+6
Instead of casting between structure types to get the 'tui_gen_win_info' info from a 'tui_win_info' access the generic member variable. This is inline with what is done throughout the rest of the tui code. gdb/ChangeLog: * tui/tui-win.c (tui_set_focus): Use structure member 'generic' instead of casting the structure type.
2015-07-06search_struct_field: remove OFFSET parameterSimon Marchi2-12/+18
I was trying to understand what the OFFSET parameter was for, and realized it was set to 0 in every call to search_struct_field. I assume that it was used at some point, but some subsequent changes made it useless. gdb/ChangeLog: * valops.c (search_struct_field): Remove OFFSET parameter. (value_cast_structs): Adjust calls to search_struct_field. (value_struct_elt): Same. (find_overload_match): Same.
2015-07-06Cleanup value_fetch_lazy's comment and return valueSimon Marchi3-13/+12
The comment for value_fetch_lazy seems outdated. It says that it's only called from the value_contents and value_contents_all (macros!), which is not true. Also, the return value seems useless now, despite what the comment says. gdb/ChangeLog: * value.c (value_fetch_lazy): Update comment, change return value to void. * value.h (value_fetch_lazy): Change return value to void.
2015-07-06gdb: tui_win_name: Make parameter and result const.Andrew Burgess3-4/+11
This commit makes the parameter and the result for 'tui_win_name' constant. There's one place in the code that is then updated as a result of this change. gdb/ChangeLog: * tui/tui-data.c (tui_partial_win_by_name): Window name is const. (tui_win_name): Make parameter and result const. * tui/tui-data.h (tui_win_name): Make parameter and result const.