summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Sync readline/ to version 7.0 alphausers/ppalka/readline-7.0-updatePatrick Palka2015-07-1495-4499/+10024
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch syncs our upstream copy of readline from version 6.2 to the latest version, 7.0 alpha (released July 10 2015). I essentially copied what was done the last time readline was synced, when Jan updated to readline 6.2 in 2011: http://sourceware.org/ml/gdb-patches/2011-05/msg00003.html Procedure: 1. I extracted the readline-7.0-alpha tarball on top of readline/. 2. I deleted all the new files under doc/ that were deliberately omitted before. 3. I regenerated readline/configure and readline/examples/rlfe/configure using autoconf 2.64. No other configure files need regenerating. 4. I updated the function gdb_printable_part in completer.c with a trivial change made to the readline function it is based off of, printable_part in readline/complete.c. There is more work to be done in completer.c to sync it with readline/complete.c, but it is non-trivial and should probably be done separately anyway. Local patches that had to be reapplied: None. readline 7.0 alpha contains all of our local readline patches. [This is especially convenient because it allows us forego a consensus on how to manage local patches across readline syncs :)] New files in readline/: colors.{c,h} examples/{hist_erasedups,hist_purgecmd,rl-callbacktest,rlbasic}.c parse-colors.{c,h} readline.pc.in configure.ac Deleted files in readline/: configure.in Regressions: After the sync there is one testsuite regression, the test "signal SIGINT" in gdb.gdb/selftest.exp which now FAILs. Previously, the readline 6.2 SIGINT handler would temporarily reinstall the underlying application's SIGINT handler and immediately re-raise SIGINT so that the orginal handler gets invoked. But now (since readline 6.3) its SIGINT handler does not re-raise SIGINT or directly invoke the original handler; it now sets a flag marking that SIGINT was raised, and waits until readline explicitly has control to call the application's SIGINT handler. Anyway, because SIGINT is no longer re-raised from within readline's SIGINT handler, doing "signal SIGINT" with a stopped inferior gdb process will no longer resume and then immediately stop the process (since there is no 2nd SIGINT to immediately catch). Instead, the inferior gdb process will now just print "Quit" and continue to run. So with this commit, this particular test case is adjusted to reflect this change in behavior (we now have to send a 2nd SIGINT manually to stop it). Aside from this one testsuite regression, I personally noticed no regression in user-visible behavior. Though I only tested on x86_64 and on i686 Debian Stretch. Getting this kind of change in at the start of the GDB 7.11 development cycle will allow us to get a lot of passive testing from developers and from bleeding-edge users. [And as new versions of readline 7.0 are released, I will try to sync our local copy promptly.] readline/ChangeLog.gdb: Import readline 7.0 alpha * configure: Regenerate. * examples/rlfe/configure: Regenerate. gdb/ChangeLog: * completer.c (gdb_printable_part): Sync with readline function it is based off of. gdb/testsuite/ChangeLog: * gdb.gdb/selftest.exp (test_with_self): Update test to now expect the GDB inferior to no longer immediately stop after being resumed with "signal SIGINT".
* Automatic date update in version.inGDB Administrator2015-07-151-1/+1
|
* Remove CHECK_TYPEDEF, use check_typedef insteadSimon Marchi2015-07-1451-131/+179
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I think that the CHECK_TYPEDEF macro is not necessary, and even a bit annoying. It makes unclear the fact that the "type" variables gets overwritten. It has actually bitten me a few times. I think the following, explicit form, is better. type = check_typedef (type); This patches changes all instances of CHECK_TYPEDEF for an equivalent call to check_typedef. The bulk of the change was done with this sed: sed -i 's/CHECK_TYPEDEF (\([^)]*\));/\1 = check_typedef (\1);/' <file>.c The ChangeLog was generated using David Malcom's generate_changelog.py. I manually fixed those places where it gets the wrong function name, hopefully all of them. The patch was built-tested, and I ran a few smoke tests. gdb/ChangeLog: * gdbtypes.h (CHECK_TYPEDEF): Remove. * aarch64-tdep.c (aarch64_return_in_memory): Replace CHECK_TYPEDEF with check_typedef. * ada-lang.c (decode_constrained_packed_array_type): Likewise. (ada_array_length): Likewise. (find_parallel_type_by_descriptive_type): Likewise. (ada_check_typedef): Likewise. * arm-tdep.c (arm_return_in_memory): Likewise. * ax-gdb.c (gen_trace_static_fields): Likewise. (gen_struct_ref_recursive): Likewise. * c-exp.y (exp : SIZEOF '(' type ')' %prec UNARY): Likewise. (variable: block COLONCOLON name): Likewise. (qualified_name: TYPENAME COLONCOLON name): Likewise. * c-lang.c (classify_type): Likewise. * c-typeprint.c (c_print_type): Likewise. (c_print_typedef): Likewise. (c_type_print_base): Likewise. * c-valprint.c (c_val_print): Likewise. * compile/compile-c-types.c (convert_type): Likewise. * compile/compile-object-load.c (get_out_value_type): Likewise. * completer.c (add_struct_fields): Likewise. (expression_completer): Likewise. * cp-namespace.c (cp_find_type_baseclass_by_name): Likewise. (cp_lookup_nested_symbol_1): Likewise. (cp_lookup_nested_symbol): Likewise. * cp-valprint.c (cp_print_value_fields): Likewise. (cp_print_static_field): Likewise. * d-valprint.c (d_val_print): Likewise. * eval.c (evaluate_subexp_standard): Likewise. (evaluate_subexp_for_sizeof): Likewise. * f-exp.y (exp : SIZEOF '(' type ')' %prec UNARY): Likewise. * f-typeprint.c (f_type_print_base): Likewise. * f-valprint.c (f_val_print): Likewise. * gdbtypes.c (get_discrete_bounds): Likewise. (create_array_type_with_stride): Likewise. (type_name_no_tag_or_error): Likewise. (lookup_struct_elt_type): Likewise. (get_unsigned_type_max): Likewise. (internal_type_vptr_fieldno): Likewise. (set_type_vptr_fieldno): Likewise. (internal_type_vptr_basetype): Likewise. (set_type_vptr_basetype): Likewise. (get_vptr_fieldno): Likewise. (is_integral_type): Likewise. (is_scalar_type): Likewise. (is_scalar_type_recursive): Likewise. (distance_to_ancestor): Likewise. (is_unique_ancestor_worker): Likewise. (check_types_equal): Likewise. * gnu-v2-abi.c (gnuv2_value_rtti_type): Likewise. * gnu-v3-abi.c (gnuv3_dynamic_class): Likewise. (gnuv3_get_vtable): Likewise. (gnuv3_pass_by_reference): Likewise. * go-exp.y (exp : SIZEOF_KEYWORD '(' type ')' %prec UNARY): Likewise. * go-lang.c (gccgo_string_p): Likewise. (go_classify_struct_type): Likewise. * go-typeprint.c (go_print_type): Likewise. * go-valprint.c (go_val_print): Likewise. * guile/scm-math.c (vlscm_binop): Likewise. * guile/scm-value.c (gdbscm_value_dynamic_type): Likewise. (gdbscm_value_to_bytevector): Likewise. (gdbscm_value_to_bool): Likewise. (gdbscm_value_to_integer): Likewise. (gdbscm_value_to_real): Likewise. * infcall.c (call_function_by_hand_dummy): Likewise. * infcmd.c (get_return_value): Likewise. * jv-lang.c (is_object_type): Likewise. * jv-typeprint.c (java_type_print_base): Likewise. * jv-valprint.c (java_print_value_fields): Likewise. (java_val_print): Likewise. * linespec.c (find_methods): Likewise. (collect_one_symbol): Likewise. * m2-typeprint.c (m2_print_type): Likewise. (m2_print_typedef): Likewise. (m2_get_discrete_bounds): Likewise. * m2-valprint.c (m2_print_long_set): Likewise. (m2_print_unbounded_array): Likewise. (m2_print_array_contents): Likewise. (m2_val_print): Likewise. * opencl-lang.c (opencl_print_type): Likewise. * p-exp.y (exp : SIZEOF '(' type ')' %prec UNARY): Likewise. * p-typeprint.c (pascal_print_type): Likewise. (pascal_print_typedef): Likewise. (pascal_type_print_base): Likewise. * p-valprint.c (pascal_val_print): Likewise. (pascal_object_print_value_fields): Likewise. (pascal_object_print_static_field): Likewise. * python/py-type.c (typy_fields_items): Likewise. (typy_get_composite): Likewise. * python/py-value.c (valpy_get_dynamic_type): Likewise. (valpy_binop): Likewise. (valpy_long): Likewise. (valpy_float): Likewise. * stack.c (return_command): Likewise. * symtab.c (check_field): Likewise. (lookup_symbol_aux): Likewise. * tic6x-tdep.c (tic6x_return_value): Likewise. * typeprint.c (print_type_scalar): Likewise. * valarith.c (value_vector_widen): Likewise. * valops.c (value_cast): Likewise. (value_assign): Likewise. (do_search_struct_field): Likewise. (search_struct_method): Likewise. (find_method_list): Likewise. * valprint.c (val_print_scalar_type_p): Likewise. (valprint_check_validity): Likewise. (generic_val_print): Likewise. * value.c (unpack_double): Likewise. (value_primitive_field): Likewise. (unpack_bits_as_long): Likewise.
* Add support reading D modules from DWARFIain Buclaw2015-07-142-8/+38
| | | | | | | | | | | | | | | | | Extends existing support for namespaces/modules in C++/Fortran/Java to include language_d too. However unlike Fortran/C++, the separator for qualified names is a single dot. 2015-07-14 Iain Buclaw <ibuclaw@gdcproject.org> * dwarf2read.c (find_slot_in_mapped_hash): Extend language support to also test for language_d. (dwarf2_compute_name): Likewise. (read_func_scope): Likewise. (read_structure_type): Likewise. (determine_prefix): Likewise. (read_import_statement): Use dot as the separator for language_d. (typename_concat): Likewise, but don't prefix the D main function.
* i386-biarch-core.exp: Fix comment typoJan Kratochvil2015-07-142-1/+5
| | | | | | | gdb/testsuite/ChangeLog 2015-07-14 Jan Kratochvil <jan.kratochvil@redhat.com> * gdb.arch/i386-biarch-core.exp: Fix comment typo.
* Make default compression gABI compliantH.J. Lu2015-07-1418-41/+93
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | All programs in binutils+gdb git repo now support gABI compression with the SHF_COMPRESSED bit. This patch makes the zlib-gabi option as compression default for gas, gold, ld and objcopy, instead of the zlib-gnu option whose outputs are incompatible with gABI. binutils/ * objcopy.c (copy_file): Set BFD_COMPRESS_GABI if not zlib-gnu. * doc/binutils.texi: Change --compress-debug-sections and --compress-debug-sections=zlib to zlib-gabi. binutils/testsuite/ * binutils-all/compress.exp: Update. gas/ * as.c (parse_args): Make --compress-debug-sections and --compress-debug-sections=zlib the same as --compress-debug-sections=zlib-gabi. * doc/as.texinfo: Change --compress-debug-sections and --compress-debug-sections=zlib to zlib-gabi. gold/ * compressed_output.cc (Output_compressed_section::set_final_data_size): Make --compress-debug-sections=zlib the same as --compress-debug-sections=zlib-gabi. * testsuite/Makefile.am (flagstest_compress_debug_sections.check): Expect ".debug_.*" with the SHF_COMPRESSED bit, instead of ".zdebug_". * testsuite/Makefile.in: Regenerated. ld/ * emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Make --compress-debug-sections=zlib the same as --compress-debug-sections=zlib-gabi. * ld.texinfo: Change --compress-debug-sections=zlib to zlib-gabi. ld/testsuite/ * ld-elf/zlibbegin.rS: Updated to .debug_.* with the SHF_COMPRESSED bit. * ld-elf/zlibnormal.rS: Likewise.
* Sync Makefile.tpl with GCCH.J. Lu2015-07-143-2520/+2538
| | | | | | | | | | | | | | | | | | * Makefile.in: Regenerated. Sync with GCC 2015-05-21 Jason Merrill <jason@redhat.com> * Makefile.tpl: Update comments. 2015-04-22 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> * Makefile.tpl: Remove surplus whitespace throughout. 2015-03-25 Martin Liska <mliska@suse.cz> Yury Gribov <y.gribov@samsung.com> * Makefile.tpl: Fix ln source location for vimrc file.
* Sync longlong.h with GCCH.J. Lu2015-07-142-0/+11
| | | | | | | Sync with GCC 2014-10-28 Richard Henderson <rth@redhat.com> * longlong.h [__alpha] (umul_ppmm): Disable for c++.
* Sync hashtab.h, splay-tree.h with GCCH.J. Lu2015-07-143-19/+18
| | | | | | | Sync with GCC 2014-12-09 Trevor Saunders <tsaunders@mozilla.com> * hashtab.h, splay-tree.h: Remove GTY markers.
* Remove trailing spaces in demangle.hH.J. Lu2015-07-141-3/+3
|
* Sync ansidecl.h with GCCH.J. Lu2015-07-142-0/+17
| | | | | | | | Sync with GCC 2015-03-02 Markus Trippelsdorf <markus@trippelsdorf.de> PR target/65261 * ansidecl.h (ATTRIBUTE_NO_SANITIZE_UNDEFINED): New macro.
* Sync config files with GCCH.J. Lu2015-07-147-0/+210
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sync with GCC 2015-05-13 Eric Botcazou <ebotcazou@adacore.com> * sjlj.m4: New file. 2015-05-04 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * bitfields.m4: Change int to long long, and use bitfields of width 1 instead of 0. 2015-05-01 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * bitfields.m4: New file. 2015-04-14 H.J. Lu <hongjiu.lu@intel.com> * bootstrap-mpx.mk: New file. 2015-03-25 Uros Bizjak <ubizjak@gmail.com> PR bootstrap/65537 * bootstrap-lto-noplugin.mk: New build configuration. 2014-11-13 Kirill Yukhin <kirill.yukhin@intel.com> * target-posix: New file. 2014-10-27 Tom Tromey <tromey@redhat.com> * gcc-plugin.m4: New file.
* Fix build issue with nat/linux-namespaces.c.Peter Bergner2015-07-142-6/+12
| | | | | | * nat/linux-namespaces.c (setns): Rename from this ... (do_setns): ... to this. Support calling setns if it exists. (mnsh_handle_setns): Call do_setns.
* Sync config/warnings.m4 with GCCH.J. Lu2015-07-148-1/+207
| | | | | | | | | | | | | | | | | | | | | | | | | | config/ Sync with GCC 2015-05-27 Jason Merrill <jason@redhat.com> PR bootstrap/66304 * warnings.m4 (ACX_PROG_CXX_WARNING_OPTS) (ACX_PROG_CXX_WARNINGS_ARE_ERRORS) (ACX_PROG_CXX_WARNING_ALMOST_PEDANTIC): New. (ACX_PROG_CC_WARNING_OPTS, ACX_PROG_CC_WARNING_ALMOST_PEDANTIC) (ACX_PROG_CC_WARNINGS_ARE_ERRORS): Push into C language context. libdecnumber/ * configure: Regenerated. libiberty/ * configure: Regenerated. opcodes/ * configure: Regenerated.
* Sync toplevel configure with GCCH.J. Lu2015-07-143-0/+14
| | | | | | | | Sync with GCC 2015-05-16 James Bowman <james.bowman@ftdichip.com> * configure.ac: FT32 target added. * configure: Regenerate.
* Sync toplevel configure.ac with GCCH.J. Lu2015-07-145-8/+95
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sync with GCC 2015-06-02 Jason Merrill <jason@redhat.com> PR bootstrap/66319 * configure.ac: Use -std=gnu++98. 2015-05-28 Mike Frysinger <vapier@gentoo.org> * configure.ac (--vtable-verify): Use AS_HELP_STRING for help. * configure: Regenerate. 2015-05-11 Paulo Matos <paulo@matos-sorge.com> * configure.ac: Fix typo. * configure: Regenerate. 2015-05-03 Matthias Klose <doko@ubuntu.com> * configure.ac: Match $host configured with triplets. * configure: Regenerate. 2015-04-17 Jakub Jelinek <jakub@redhat.com> PR bootstrap/62077 * configure.ac (--enable-stage1-checking): Default to release,misc,gimple,rtlflag,tree,types if --disable-checking or --enable-checking is not specified and DEV-PHASE is not experimental. * configure: Regenerated. 2015-03-27 Uros Bizjak <ubizjak@gmail.com> Install back PR target/47230 fix (Revert the revert). config/ Sync with GCC * mh-alpha-linux: Restored.
* Remove extraneous whitespace from ARM sim sources.Nick Clifton2015-07-1429-320/+348
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * armcopro.c: Remove extraneous whitespace. * armdefs.h: Likewise. * armfpe.h: Likewise. * arminit.c: Likewise. * armopts.h: Likewise. * armos.c: Likewise. * armos.h: Likewise. * armrdi.c: Likewise. * armsupp.c: Likewise. * armvirt.c: Likewise. * bag.c: Likewise. * bag.h: Likewise. * communicate.c: Likewise. * communicate.h: Likewise. * dbg_conf.h: Likewise. * dbg_cp.h: Likewise. * dbg_hif.h: Likewise. * dbg_rdi.h: Likewise. * gdbhost.c: Likewise. * gdbhost.h: Likewise. * iwmmxt.c: Likewise. * iwmmxt.h: Likewise. * kid.c: Likewise. * main.c: Likewise. * maverick.c: Likewise. * parent.c: Likewise. * thumbemu.c: Likewise. * wrapper.c: Likewise.
* Fix texinfo problem by adding the required period after an @xref.Nick Clifton2015-07-142-1/+5
| | | | * ld.texinfo (Options): Add missing period after @xref.
* Add test that exercises the inferior being killed while stopped under GDBPedro Alves2015-07-143-0/+169
| | | | | | | | | | | | This exercises the case of the inferior disappearing while GDB is debugging it, such as something doing "kill -9 PID" while the program is stopped under GDB or GDBserver. This triggered a set of internal errors, fixed by previous patches. gdb/testsuite/ChangeLog: 2015-07-14 Pedro Alves <palves@redhat.com> * gdb.base/killed-outside.exp: New file. * gdb.base/killed-outside.c: New file.
* gdbserver/Linux: internal error when killing a process that is already gonePedro Alves2015-07-142-1/+9
| | | | | | | | | | | | | | | | | | | If the process disappears (e.g., killed with "kill -9" from the shell) while it was stopped under GDBserver's control, and the GDBserver tries to kill it, GDBserver asserts: (gdb) shell kill -9 23084 (gdb) kill ... Killing process(es): 23084 /home/pedro/gdb/mygit/src/gdb/gdbserver/linux-low.c:972: A problem internal to GDBserver has been detected. kill_wait_lwp: Assertion `res > 0' failed. ... gdb/gdbserver/ChangeLog: 2015-07-14 Pedro Alves <palves@redhat.com> * linux-low.c (kill_wait_lwp): Don't assert if waitpid fails. Instead, ignore ECHILD, and throw an error for other errnos.
* Automatic date update in version.inGDB Administrator2015-07-141-1/+1
|
* Fix attach-pie-noexec.exp fail on native-extended-gdbserverYao Qi2015-07-132-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When I examine the buildbot fails, I see this fail on native-extended-gdbserver, Attaching to process 13529^M "target:/scratch/yao/gdb/build-git/x86_64/gdb/testsuite/gdb.base/attach-pie-noexec (deleted)": could not open as an executable file: No such file or directory^M (gdb) FAIL: gdb.base/attach-pie-noexec.exp: attach if I run tests with board file unix, it doesn't exist, Attaching to process 13869^M /scratch/yao/gdb/build-git/x86_64/gdb/testsuite/gdb.base/attach-pie-noexec (deleted): No such file or directory.^M (gdb) PASS: gdb.base/attach-pie-noexec.exp: attach the test expects to see the period at the end of the error message, gdb_test "attach $testpid" "Attaching to process $testpid\r\n.*: No such file or directory\\." "attach" however the period is missing when running with native-extended-gdbserver. in exec.c:exec_file_attach, GDB has two places may throw errors [1] and [2], if (load_via_target) { ... } else { ... if (scratch_chan < 0) perror_with_name (filename); <--- [1] } ... if (!exec_bfd) { error (_("\"%s\": could not open as an executable file: %s"), <-- [2] scratch_pathname, bfd_errmsg (bfd_get_error ())); } perror_with_name [1] append a period at the end of error message, but error [2] doesn't. This fix is to add a period at the end of the error message. Note that this fail is shown up on 7.9 release as well. gdb: 2015-07-13 Yao Qi <yao.qi@linaro.org> * exec.c (exec_file_attach): Add period at the end of error message.
* gdb/tui: Add command completion to winheight command.Andrew Burgess2015-07-132-12/+53
| | | | | | | | | | | | | | | Share the window name completion code from the focus command with the winheight command, providing window name completion for the winheight command. gdb/ChangeLog: * tui/tui-win.c (window_name_completer): New function. (focus_completer): Call window_name_completer. All old content moved into window_name_completer. (winheight_completer): New function. (_initialize_tui_win): Rename variable. Add completer to winheight command. Update doc string on winheight.
* Automatic date update in version.inGDB Administrator2015-07-131-1/+1
|
* Extend --compress-debug-sections in goldH.J. Lu2015-07-126-14/+350
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch extends --compress-debug-sections= with [zlib-gnu|zlib-gabi] in gold. PR gold/18322 * compressed_output.cc (zlib_compress): Add argument for compression header size. Set header size to compression header size if it isn't 0. Don't write out the zlib header here. (Output_compressed_section::set_final_data_size): Support zlib-gnu and zlib-gabi compressions. Pass compression header size to zlib_compress and write out compression header. Set the SHF_COMPRESSED bit for zlib-gabi compression. Otherwise clear the SHF_COMPRESSED bit * options.h (compress_debug_sections): Add zlib-gnu and zlib-gabi. * output.h (Output_section::set_flags): New. * testsuite/Makefile.am (check_PROGRAMS): Add flagstest_compress_debug_sections_none, flagstest_compress_debug_sections_gnu and flagstest_compress_debug_sections_gabi. (check_DATA): Add flagstest_compress_debug_sections_none.stdout. flagstest_compress_debug_sections.stdout, flagstest_compress_debug_sections.cmp, flagstest_compress_debug_sections.check, flagstest_compress_debug_sections_gnu.stdout, flagstest_compress_debug_sections_gnu.cmp, flagstest_compress_debug_sections_gnu.check, flagstest_compress_debug_sections_gabi.stdout, flagstest_compress_debug_sections_gabi.cmp and flagstest_compress_debug_sections_gabi.check. (flagstest_compress_debug_sections_none): New. (flagstest_compress_debug_sections_none.stdout): Likewise. (flagstest_compress_debug_sections.stdout): Likewise. (flagstest_compress_debug_sections.check): Likewise. (flagstest_compress_debug_sections.cmp): Likewise. (flagstest_compress_debug_sections_gnu): Likewise. (flagstest_compress_debug_sections_gnu.stdout): Likewise. (flagstest_compress_debug_sections_gnu.check): Likewise. (flagstest_compress_debug_sections_gnu.cmp): Likewise. (flagstest_compress_debug_sections_gabi): Likewise. (flagstest_compress_debug_sections_gabi.stdout): Likewise. (flagstest_compress_debug_sections_gnu.check): Likewise. (flagstest_compress_debug_sections_gnu.cmp): Likewise. * testsuite/Makefile.in: Regenerated.
* Add SHF_COMPRESSED section decompression to goldH.J. Lu2015-07-1212-19/+237
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds SHF_COMPRESSED section decompression to gold. PR gold/18321 * compressed_output.h (decompress_input_section): Add arguments for ELF class, big endian and sh_flags. * compressed_output.cc (decompress_input_section): Likewise. Support the SHF_COMPRESSED section. * dynobj.h (Dynobj): Add elfsize and is_big_endian member functions. * plugin.h (Pluginobj): Likewise. * layout.cc (Layout::get_output_section_flags): Also clear the SHF_COMPRESSED bit. * object.h (Compressed_section_info): Add flag to store sh_flags. (Object): Add pure virtual elfsize and is_big_endian member functions. * object.cc (need_decompressed_section): Don't skip the ".zdebug" prefix here. (build_compressed_section_map): Check SHF_COMPRESSED for uncompressed size. Store sh_flags in Compressed_section_info. Pass size, big_endian and sh_flags to decompress_input_section. Skip the ".debug"/".zdebug" prefix when passing section name to need_decompressed_section. (Sized_relobj_file<size, big_endian>::do_find_special_section): Don't check ".zdebug_*" sections. (Object::decompressed_section_contents): Pass ELF class, big endian and sh_flags to decompress_input_section. * reloc.cc (Sized_relobj_file<size, big_endian>::write_sections): Likewise. * testsuite/Makefile.am (check_DATA): Add debug_msg_cdebug_gabi.err and gdb_index_test_2_gabi.stdout. (MOSTLYCLEANFILES): Add debug_msg_cdebug_gabi.err and gdb_index_test_2_gabi.stdout. (debug_msg_cdebug_gabi.o): New. (odr_violation1_cdebug_gabi.o): Likewise. (odr_violation2_cdebug_gabi.o): Likewise. (debug_msg_cdebug_gabi.err): Likewise. (check_SCRIPTS): Add gdb_index_test_2_gabi.sh. (gdb_index_test_cdebug_gabi.o): Likewise. (gdb_index_test_2_gabi): Likewise. (gdb_index_test_2_gabi.stdout): Likewise. * testsuite/gdb_index_test_2_gabi.sh: New file. * testsuite/Makefile.in: Regenerated.
* Fix GDB breakage due to addition of new nios2 mach types in BFD.Sandra Loosemore2015-07-122-2/+13
| | | | | | | | 2015-07-12 Sandra Loosemore <sandra@codesourcery.com> gdb/ * nios2-linux-tdep.c (_initialize_nios2_linux_tdep): Register all nios2 mach variants.
* Automatic date update in version.inGDB Administrator2015-07-121-1/+1
|
* Automatic date update in version.inGDB Administrator2015-07-111-1/+1
|
* Properly convert objects between different ELF classesH.J. Lu2015-07-107-2/+285
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The output SHF_COMPRESSED section size is different from input if ELF classes of input and output aren't the same. We must adjust the section sizes as well as the compression headers in SHF_COMPRESSED sections when converting objects between different ELF classes. bfd/ PR binutils/18656 * bfd.c (bfd_convert_section_size): New function. (bfd_convert_section_contents): Likewise. * bfd-in2.h: Regenerated. binutils/ 2015-07-10 H.J. Lu <hongjiu.lu@intel.com> PR binutils/18656 * objcopy.c (setup_section): Call bfd_convert_section_size to get the output section size. (copy_section): Get the section size from the output section and call bfd_get_full_section_contents to convert section contents for output. binutils/testsuite/ PR binutils/18656 * binutils-all/compress.exp (convert_test): New proc. Run conversion tests between x86-64 and x32.
* rx-tdep.c: Use target_read_code instead of target_read_memory.Kevin Buettner2015-07-102-1/+6
| | | | | | | | | | | | | This change causes the prologue scanner and the frame type scanner in rx-tdep.c to use target_read_code() instead of target_read_memory(). This change allows these instruction scanners to operate much more quickly due to the fact that target_read_code() can potentially read from a cache maintained by GDB. gdb/ChangeLog: * rx-tdep.c (rx_get_opcode_byte): Use target_read_code instead of target_read_memory.
* gdbserver/event-loop.c: type mismatchPedro Alves2015-07-102-2/+8
| | | | | | | | | | | | | | | | | | | | | Building with C++ catches a buglet here: ../../../src/gdb/gdbserver/event-loop.c:205:19: warning: invalid conversion from ‘gdb_client_data {aka void*}’ to ‘void**’ [-fpermissive] event_ptr->data = data; ^ This works in practice because gdb_client_data is a pointer already (hence in C we get an implicit conversion), and nothing deferences the pointer. It's passed from client at event registration/creation time, only to pass straight back to client callback. Well, that and nothing in gdbserver uses the event data anyway. gdb/gdbserver/ChangeLog: 2015-07-10 Pedro Alves <palves@redhat.com> * event-loop.c (struct callback_event) <data>: Change type to gdb_client_data instance instead of gdb_client_data pointer. (append_callback_event): Adjust.
* Warn unsupported compress type and corrupted compressed sectionH.J. Lu2015-07-102-13/+45
| | | | | | | * readelf.c (dump_section_as_strings): Warn unsupported compress type and corrupted compressed section. (dump_section_as_bytes): Likewise. (load_specific_debug_section): Likewise.
* Updated to accept .debug_* sectionsH.J. Lu2015-07-102-2/+6
| | | | * gas/i386/dw2-compress-1.d: Updated to accept .debug_* sections.
* Updated to accept .debug_* sectionsH.J. Lu2015-07-102-2/+6
| | | | * binutils-all/dw2-3.W: Updated to accept .debug_* sections.
* Fix testsuite regression by: Do not skip prologue for asm (.S) filesJan Kratochvil2015-07-103-1/+12
| | | | | | | | | | | | | | I have somehow missed gdb.asm/asm-source.exp PASS->FAIL even on x86_64. It has no longer valid assumption that "break" breaks after the prologue even in assembler. So I have changed this assumption of the testfile. gdb/testsuite/ChangeLog 2015-07-10 Jan Kratochvil <jan.kratochvil@redhat.com> * gdb.asm/asm-source.exp (f at main): Stop at gdbasm_enter. (n at main): New. * gdb.asm/asmsrc1.s: Add comment "mark: main enter".
* [GDBserver][AArch64] Cleanup comments for each linux_target_ops methodPierre Langlois2015-07-102-26/+44
| | | | | | | | | | | | | | This patch cleans up the comments for each linux_target_ops methods. We should mention which method each function implements but there is no need to duplicate information already mentionned in the base target_ops or linux_target_ops definitions. gdb/gdbserver/ChangeLog: * linux-aarch64-low.c: Add comments for each linux_target_ops method. Remove comments already covered in target_ops and linux_target_ops definitions. (the_low_target): Add comments for each unimplemented method.
* gdb/tui: Use cleanups to free string copies.Andrew Burgess2015-07-102-3/+12
| | | | | | | | | | | | | | | In parse_scrolling_args it is possible for a string copy to leak if an error occurs. Switching to using a cleanup fixes this leak. In tui_set_win_height the string can't be leaked, but switching to using a cleanup guards against the possibility that a leak could be introduced in the future (by adding an error somewhere in the call stack). gdb/ChangeLog: * tui/tui-win.c (tui_set_win_height): Use a cleanup to free the string copy. (parse_scrolling_args): Likewise.
* gdb/tui: Define tui window names once.Andrew Burgess2015-07-102-22/+10
| | | | | | | | | | | Don't duplicate the window names inside the completion function. Instead make use of the existing defines, and the tui_win_name function to obtain the window names. gdb/ChangeLog: * tui/tui-win.c (focus_completer): Don't duplicate the tui window names in this function.
* gdb: Convert TUI windows names to lower case.Andrew Burgess2015-07-103-9/+19
| | | | | | | | | | | | | | | | | | | | This commit converts the window names for the TUI windows to lower case. The windows names are already lower case in the documentation, and are shown as lower case in some of the command completion results. Given that all the commands that take a window name currently accept upper or lower case, this commit just changes the window names to lower case in the remaining places they are displayed by gdb. gdb/ChangeLog: * tui/tui-data.h (SRC_NAME): Convert to lower case. (CMD_NAME): Likewise. (DATA_NAME): Likewise. (DISASSEM_NAME): Likewise. * tui/tui-win.c (tui_set_focus): Window names are now lower case. (tui_set_win_height): Likewise. (parse_scrolling_args): Likewise.
* Make ALIGN(x) behave as ALIGN(.,x)Alan Modra2015-07-102-2/+15
| | | | | | | | Inside output sections, ALIGN(.,x) uses a section-relative value for dot. The unary ALIGN always used the absolute value of dot. * ldexp.c (align_dot_val): New function. (fold_unary <ALIGN_K, NEXT>): Use it.
* Add missing changelog entriesAlan Modra2015-07-102-0/+10
|
* gnu_vector.exp: Skip infcall tests on x86/x86_64Andreas Arnez2015-07-102-6/+12
| | | | | | | | | | | Since the new KFAILs/KPASSs for the infcall tests on x86 and x86_64 targets generated unnecessary noise, this change skips them with UNSUPPORTED instead. gdb/testsuite/ChangeLog: * gdb.base/gnu_vector.exp: On x86 and x86_64 targets, skip the infcall tests instead of setting up for KFAIL.
* record: set stop_pc in "record goto" commandMarkus Metzger2015-07-105-6/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When navigating in the recorded execution trace via "record goto", we do not set stop_pc. This may trigger an internal error in infrun.c when stepping from that location. Set it. (gdb) rec full (gdb) c Continuing. Breakpoint 1, foo (void) at foo.c:42 42 x = y (gdb) rn foo (void) at foo.c:41 41 y = x (gdb) rec go end Go forward to insn number 98724 at foo.c:42 42 x = y (gdb) n infrun.c:2382: internal-error: resume: Assertion `sig != GDB_SIGNAL_0' failed. A problem internal to GDB has been detected, further debugging may prove unreliable. Quit this debugging session? (y or n) This happens because there's a breakpoint at PC when the "next" is issued, so that breapoint should be immediately stepped over. That should have been detected/done by proceed, here: if (addr == (CORE_ADDR) -1) { if (pc == stop_pc && breakpoint_here_p (aspace, pc) == ordinary_breakpoint_here && execution_direction != EXEC_REVERSE) /* There is a breakpoint at the address we will resume at, step one instruction before inserting breakpoints so that we do not stop right away (and report a second hit at this breakpoint). Note, we don't do this in reverse, because we won't actually be executing the breakpoint insn anyway. We'll be (un-)executing the previous instruction. */ tp->stepping_over_breakpoint = 1; But since stop_pc was stale, the pc == stop_pc check failed, and left the breakpont at PC inserted. gdb/ * record-btrace.c (record_btrace_goto_begin, record_btrace_goto_end) record_btrace_goto): Move call to print_stack_frame ... (record_btrace_set_replay): ... here. Set stop_pc. * record-full.c (record_full_goto_entry): Set stop_pc. testsuite/ * gdb.btrace/record_goto-step.exp: New.
* Use "gold_info" instead of "gold_warning" for erratum fix.Han Shen2015-07-092-2/+10
| | | | | | | gold/ChangeLog: * aarch64.cc (Target_aarch64::scan_erratum_843419_span): Use 'gold_info'. (Target_aarch64::scan_erratum_835769_span): USe 'gold_info'.
* Automatic date update in version.inGDB Administrator2015-07-101-1/+1
|
* Drop 'missing mapping symbols' warning for arm and aarch64.Han Shen2015-07-093-13/+10
| | | | | | | | | | | | | | | | | | | | | | | The psABI (AAELF) says this about mapping symbols: 4.6.5.1 Section-relative mapping symbols Mapping symbols defined in a section define a sequence of half-open address intervals that cover the address range of the section. Each interval starts at the address defined by the mapping symbol, and continues up to, but not including, the address defined by the next (in address order) mapping symbol or the end of the section. A section must have a mapping symbol defined at the beginning of the section; however, if the section contains only data then the mapping symbol may be omitted. That makes it pretty clear that, in the absence of a mapping symbol, the entire section can be treated as data. gold/ChangeLog: * aarch64.cc (AArch64_relobj::scan_errata): Drop missing symbol warning. * arm.cc (Arm_relobj::scan_section_for_cortex_a8_erratum): Drop missing symbol warning.
* Add NEWS entry for tracepoints support on aarch64-linuxPierre Langlois2015-07-092-0/+6
| | | | | | gdb/ChangeLog: * NEWS: Mention support for tracepoints on aarch64-linux.
* [GDBServer][AArch64] Enable support for tracepointsPierre Langlois2015-07-092-0/+16
| | | | | | | | gdb/gdbserver/ChangeLog: * linux-aarch64-low.c (aarch64_supports_tracepoints): New function. Return 1. (the_low_target): Install it.
* [testsuite][AArch64] Port gdb.tracePierre Langlois2015-07-099-0/+34
| | | | | | | | | | | | | | | | | | | | This patch adds support for AArch64 to the gdb.trace testsuite. Note that it does not add support for testing fast tracepoint as it isn't supported. Therefore the test cases with inline assembly are not ported in this patch, as we do not know what the conditions for inserting a fast tracepoint on AArch64 would be. gdb/testsuite/ChangeLog: * gdb.trace/backtrace.exp: Set registers for aarch64 target. * gdb.trace/collection.exp: Likewise. * gdb.trace/mi-trace-frame-collected.exp: Likewise. * gdb.trace/mi-trace-unavailable.exp: Likewise. * gdb.trace/report.exp: Likewise. * gdb.trace/trace-break.exp: Likewise. * gdb.trace/unavailable.exp: Likewise. * gdb.trace/while-dyn.exp: Likewise.