aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2015-10-27Add support to readelf for reading NetBSD ELF core notes.Stephen Fisher4-0/+48
binutils * binutils.c (process_netbsd_elf_note): New function. (process_note): Call the new function for NetBSD core notes. include * common.h (NT_NETBSD_MARCH): Define.
2015-10-27Add support for 32-bit and 64-bit PowerPC AIX core files.Sangamesh Mallayya4-23/+101
* configure.ac (powerpc64-*-aix[5-9].*): Match powerpc64 running aix for core file support. * configure: Regenerate. * rs6000-core.c: Check for __ld_info64 if compiling 64-bit gdb. Added BFD64 check if we are using old core file format for 32-bit gdb. Set sizeof CORE_COMMONSZ appropriately in case of either new or old core file format. (read_hdr): Added BFD64 check for 64-bit support. (rs6000coff_core_p): Likewise. (rs6000coff_core_file_matches_executable_p): Likewise. (rs6000coff_core_file_failing_command): Likewise. (rs6000coff_core_file_failing_signal): Likewise. Add support for debugging core files generated by binaries in Large Memory model. (rs6000coff_core_p): If Large Memory Model is used, then the .data segment should start from BDATAORG which has been defined in the system header files.
2015-10-27Prevent overflowing the selected_cpu_name buffer in the ARM assembler.Jim Wilson2-2/+15
* config/tc-arm.c (selected_cpu_name): Increase length of array to accomodate "Samsung Exynos M1". (arm_parse_cpu): Add assertion and length check to prevent overfilling selected_cpu_name.
2015-10-27xfail pr19161 test on hppa-linuxAlan Modra2-1/+6
HPPA linux needs libgcc.a for millicode routine $$dyncall. * ld-gc/pr19161.d: xfail hppa-*-*.
2015-10-27Fix access_to_packed_array.exp typos/errorsJan Kratochvil2-4/+8
Running ./gdb.ada/access_to_packed_array.exp ... ERROR: tcl error sourcing ./gdb.ada/access_to_packed_array.exp. ERROR: extra characters after close-quote while executing "gdb_test "print pack.a" "\\(0 => 1, 2, 3, 4, 5, 6, 7, 8, 9, 10\\)")" (file "./gdb.ada/access_to_packed_array.exp" line 29) invoked from within "source ./gdb.ada/access_to_packed_array.exp" ("uplevel" body line 1) invoked from within "uplevel #0 source ./gdb.ada/access_to_packed_array.exp" invoked from within "catch "uplevel #0 source $test_file_name"" Unrelated to the typos I have changed the print expectations s/"x"/" = x"/ as for example expectation "3" should not match " = 43". 2015-10-27 Jan Kratochvil <jan.kratochvil@redhat.com> * gdb.ada/access_to_packed_array.exp: Fix typos erroring the testfile.
2015-10-26symtab.h (struct general_symbol_info> <ada_mangled>: Update comment.Doug Evans2-1/+5
gdb/ChangeLog: * symtab.h (struct general_symbol_info> <ada_mangled>: Update comment.
2015-10-27Evaluate __start_* and __stop_* symbol PROVIDE expressions earlyAlan Modra3-9/+32
Makes these symbols defined before bfd_elf_size_dynamic_sections, to avoid horrible hacks elsewhere. The exp_fold_tree undefweak change is necessary to define undefweak symbols early too. The comment was wrong. PROVIDE in fact defines undefweak symbols, via bfd_elf_record_link_assignment. PR ld/19175 * ldlang.c (lang_insert_orphan): Evaluate __start_* and __stop_* symbol PROVIDE expressions. * ldexp.c (exp_fold_tree_1 <etree_provide>): Define undefweak references.
2015-10-26target.c: Add a cast and change a typeSimon Marchi2-4/+10
Fixes some errors in C++ build. gdb/ChangeLog: * target.c (memory_xfer_partial): Change type of buf to gdb_byte pointer. (simple_search_memory): Cast return of memmem.
2015-10-26stap-probe.c: Add castsSimon Marchi2-4/+10
gdb/ChangeLog: * stap-probe.c (handle_stap_probe): Add (const char *) casts.
2015-10-26ctf_xfer_partial: Return TARGET_XFER_E_IO instead of -1 on errorSimon Marchi2-1/+6
Use the enum value instead of the corresponding int value. gdb/ChangeLog: * ctf.c (ctf_xfer_partial): Return TARGET_XFER_E_IO instead of -1 on error.
2015-10-27Automatic date update in version.inGDB Administrator1-1/+1
2015-10-26Check symbol defined by assignment in linker scriptH.J. Lu14-102/+102
Symbol symbol defined by an assignment in a linker script has type bfd_link_hash_new. elf_i386_convert_load and elf_x86_64_convert_load should check bfd_link_hash_new to see if a symbol is defined by a linker script. bfd/ PR ld/19175 * elf32-i386.c (elf_i386_convert_load): Check bfd_link_hash_new instead of calling bfd_link_get_defined_symbol. * elf64-x86-64.c (elf_x86_64_convert_load): Likewise. Skip relocation overflow for bfd_link_hash_new. * linker.c (bfd_link_get_defined_symbol): Removed. * bfd-in2.h: Regenerated. ld/testsuite/ PR ld/19175 * ld-i386/i386.exp: Run pr19175. * ld-x86-64/x86-64.exp: Likewise. * ld-i386/pr19175.d: New file. * ld-i386/pr19175.s: Likewise. * ld-i386/pr19175.t: Likewise. * ld-x86-64/pr19175.d: Likewise. * ld-x86-64/pr19175.s: Likewise. * ld-x86-64/pr19175.t: Likewise.
2015-10-26PR symtab/17391 gdb internal error: assertion fails in regcache.c:178Doug Evans31-191/+411
gdb/ChangeLog: * dwarf2-frame.c (dwarf2_restore_rule): Call dwarf_reg_to_regnum instead of gdbarch_dwarf2_reg_to_regnum. (dwarf2_frame_cache): Ditto. (read_addr_from_reg): Call dwarf_reg_to_regnum_or_error instead of gdbarch_dwarf2_reg_to_regnum. (get_reg_value): Ditto. (dwarf2_fetch_cfa_info): Ditto. (dwarf2_frame_prev_register): Ditto. * dwarf2loc.c: #include "complaints.h". (dwarf_expr_read_addr_from_reg): Call dwarf_reg_to_regnum_or_error instead of gdbarch_dwarf2_reg_to_regnum. (dwarf_expr_get_reg_value): Ditto. (read_pieced_value): Ditto. (write_pieced_value): Ditto. (dwarf2_evaluate_loc_desc_full): Ditto. (dwarf_reg_to_regnum): New function. (throw_bad_regnum_error): New function. (dwarf_reg_to_regnum_or_error): Renamed from dwarf2_reg_to_regnum_or_errorChange to take a ULONGEST regnum. All callers updated. Call throw_bad_regnum_error. (locexpr_regname): Improve text of bad register number. * dwarf2loc.h (dwarf_reg_to_regnum): Declare. (dwarf_reg_to_regnum_or_error): Update prototype. * dwarf2expr.c: #include "dwarf2loc.h". (dwarf_block_to_sp_offset): Call dwarf_reg_to_regnum instead of gdbarch_dwarf2_reg_to_regnum. * gdbarch.sh (dwarf2_reg_to_regnum): Add comment. * gdbarch.h: Regenerate. * amd64-tdep.c (amd64_dwarf_reg_to_regnum): Remove warning for bad register. * avr-tdep.c (avr_dwarf_reg_to_regnum): Ditto. * cris-tdep.c (cris_dwarf2_reg_to_regnum): Ditto. * bfin-tdep.c (bfin_reg_to_regnum): Fix error checking. * hppa-linux-tdep.c (hppa_dwarf_reg_to_regnum): Improve error checking. Remove warning for bad register. * hppa-tdep.c (hppa64_dwarf_reg_to_regnum): Ditto. * i386-tdep.c (i386_svr4_dwarf_reg_to_regnum): Renamed from i386_svr4_reg_to_regnum. Return -1 for bad registers. (i386_svr4_reg_to_regnum): New function. (i386_gdbarch_init): Update call to set_gdbarch_dwarf2_reg_to_regnum. * microblaze-tdep.c (microblaze_dwarf2_reg_to_regnum): Don't assert on bad registers, return -1. * msp430-tdep.c (msp430_dwarf2_reg_to_regnum): Improve error checking. Remove warning for bad register. * nios2-tdep.c: Add static assert for NIOS2_NUM_REGS. (nios2_dwarf_reg_to_regnum): Fix off-by-one error. Remove warning for bad register. Return -1 for bad register. * rl78-tdep.c (rl78_dwarf_reg_to_regnum): Don't flag an internal error for bad register, return -1. * rx-tdep.c (rx_dwarf_reg_to_regnum): Ditto. * m68k-tdep.c (m68k_dwarf_reg_to_regnum): Fix error result. * mep-tdep.c (mep_debug_reg_to_regnum): Ditto. * mips-tdep.c (mips_stab_reg_to_regnum): Ditto. (mips_dwarf_dwarf2_ecoff_reg_to_regnum): Ditto. * mn10300-tdep.c (mn10300_dwarf2_reg_to_regnum): Remove warning for bad regs. * xtensa-tdep.c (xtensa_reg_to_regnum): Remove internal error for bad regs. Fix error result. * stabsread.c (stab_reg_to_regnum): Watch for negative regno. (reg_value_complaint): Update complaint text. * mdebugread.c (reg_value_complaint): New function. (mdebug_reg_to_regnum): Rewrite to watch for bad reg numbers. gdb/testsuite/ChangeLog: * lib/dwarf.exp (_location): Add support for DW_OP_regx. * gdb.dwarf2/bad-regnum.c: New file. * gdb.dwarf2/bad-regnum.exp: New file.
2015-10-26PR python/18938: source -s foo.py with foo.py a symlink to foo.notpy failsDoug Evans4-4/+35
gdb/ChangeLog: PR python/18938 * cli/cli-cmds (source_script_fron_sctream): New arg file_to_open. All callers updated. gdb/testsuite/ChangeLog: * gdb.python/python.exp: Add test for symlink from .py file to .notpy file.
2015-10-26Print address map in output of "mt print psymbols"Doug Evans2-2/+98
gdb/ChangeLog: * psymtab.c (struct dump_psymtab_addrmap_data): Define. (dump_psymtab_addrmap_1, dump_psymtab_addrmap): New functions. (maintenance_print_psymbols): Print address map.
2015-10-26Move __SIGRTMIN.Doug Evans4-6/+13
gdb/ChangeLog: * nat/linux-nat.h (__SIGRTMIN): Move here from gdbserver/linux-low.c. gdb/gdbserver/ChangeLog: * linux-low.c (__SIGRTMIN): Move to nat/linux-nat.h.
2015-10-26musl: Move W_STOPCODE to common/gdb_wait.h.Doug Evans4-8/+14
gdb/ChangeLog: * common/gdb_wait.h (W_STOPCODE): Define, moved here from gdbserver/linux-low.c. (WSETSTOP): Simplify. gdb/gdbserver/ChangeLog: * linux-low.c (W_STOPCODE): Moved to common/gdb_wait.h.
2015-10-26Add some casts for building on musl.Doug Evans4-6/+19
gdb/ChangeLog: * linux-thread-db.c (find_new_threads_callback): Cast ti.ti_tid to unsigned long for debug_printf. (thread_db_pid_to_str): Ditto. gdb/gdbserver/ChangeLog: * thread-db.c (find_one_thread): Cast ti.ti_tid to unsigned long for debug_printf. (attach_thread, find_new_threads_callback): Ditto.
2015-10-26guile: Simplify ioscm_make_gdb_stdio_portSimon Marchi2-11/+11
As pointed out by Pedro, it's clearer to do it this way. We can trust that scm_mode_bits won't try to modify our string, even though it takes a non-const char *. gdb/ChangeLog: * guile/scm-ports.c (ioscm_make_gdb_stdio_port): Do not pass a local char array to scm_mode_bits, use a cast instead.
2015-10-26tui: Simplify tui_alloc_contentSimon Marchi2-25/+20
I stumbled upon this while doing some cxx-conversion work. Since the x-family alloc functions throw on failure, it is useless to test their result for failure. The else branch of != NULL is basically dead code. I changed the type of element_block_ptr to struct tui_win_element, which seems obvious (this is actually what raised the flag, casting the result of xmalloc to struct tui_win_element* wouldn't work). gdb/ChangeLog: * tui/tui-data.c (tui_alloc_content): Don't check xmalloc result. Change type of element_block_ptr. Change allocation to use XNEWVEC.
2015-10-26Properly convert address load of __start_XXX/__stop_XXXH.J. Lu25-10/+184
Since __start_XXX and __stop_XXX symbols aren't defined when address load is being converted, we need to check if there is an XXX output section to get their section and value. This patch adds a new function, bfd_link_get_defined_symbol, to search for the XXX output section to check if __start_XXX and __stop_XXX symbols are defined. bfd/ PR ld/19171 * elf32-i386.c (elf_i386_convert_load): Call bfd_link_get_defined_symbol to check if a symbol is defined. * elf64-x86-64.c (elf_x86_64_convert_load): Call bfd_link_get_defined_symbol to get defined symbol section and value. * linker.c (bfd_link_get_defined_symbol): New function. * bfd-in2.h: Regenerated. ld/testsuite/ PR ld/19171 * ld-i386/lea1.s: Add tests for address load of __start_XXX and __stop_XXX. * ld-i386/mov1.s: Likewise. * ld-x86-64/lea1.s: Likewise. * ld-x86-64/mov1.s: Likewise. * ld-i386/lea1a.d: Updated. * ld-i386/lea1b.d: Likewise. * ld-i386/lea1c.d: Likewise. * ld-i386/mov1a.d: Likewise. * ld-i386/mov1b.d: Likewise. * ld-x86-64/lea1a.d: Likewise. * ld-x86-64/lea1b.d: Likewise. * ld-x86-64/lea1c.d: Likewise. * ld-x86-64/lea1d.d: Likewise. * ld-x86-64/lea1e.d: Likewise. * ld-x86-64/lea1f.d: Likewise. * ld-x86-64/mov1a.d: Likewise. * ld-x86-64/mov1b.d: Likewise. * ld-x86-64/mov1c.d: Likewise. * ld-x86-64/mov1d.d: Likewise.
2015-10-26Do not pass NULL for the string in catch_errorsLuis Machado2-1/+6
I caught a segmentation fault while running gdb.reverse/sigall-reverse.exp, in a mingw32 GDB, in this code path. It boils down to the code trying to strlen () a NULL pointer. I tracked things down and it looks like record_full_message_wrapper_safe is the only offender. gdb/ChangeLog: 2015-10-26 Luis Machado <lgustavo@codesourcery.com> * record-full.c (record_full_message_wrapper_safe): Pass empty string to catch_errors call instead of NULL.
2015-10-26Fix constness problem in ioscm_make_gdb_stdio_portSimon Marchi2-4/+16
ioscm_make_gdb_stdio_port passes const char pointers (literal strings) to scm_mode_bits, which takes a non-const char pointer. Ideally, we would change scm_mode_bits to take a const char pointer, but it's not part of an API we control. Instead, it's easy enough to build the string to pass to scm_mode_bits in a (non-const) char array and pass that. gdb/ChangeLog: * guile/scm-ports.c (ioscm_make_gdb_stdio_port): Pass non-const char pointer to scm_mode_bits.
2015-10-26symtab.c: Add castSimon Marchi2-1/+6
gdb/ChangeLog: * symtab.c (default_make_symbol_completion_list_break_on_1): Add cast.
2015-10-26gdbscm_memory_port_write: use local variable to avoid adding castsSimon Marchi2-2/+8
By having a local variable of type (const gdb_byte *), we can avoid adding two casts. gdb/ChangeLog: * guile/scm-ports.c (gdbscm_memory_port_write): Declare new "data" local variable and use it.
2015-10-26scm-symbol.c: Add (domain_enum) castsSimon Marchi2-2/+9
We currently pass integers as domain_enums to lookup_symbol. The most obvious fix is to add casts there. I first thought of changing the type of the domain variables to domain_enum. However, because we pass a pointer to them to gdbscm_parse_function_args, which expects them to be integers (because of the format string), I don't think it would be correct. If the enum does not have the same size as an int, gdbscm_parse_function_args could write past the memory of domain, overwriting something else on the stack. gdb/ChangeLog: * guile/scm-symbol.c (gdbscm_lookup_global_symbol): Add domain_enum cast. (gdbscm_lookup_symbol): Likewise.
2015-10-26Automatic date update in version.inGDB Administrator1-1/+1
2015-10-25Fix compile.exp error message expectationJan Kratochvil2-1/+6
commit cdaec3f3e7ea9118204f0e579bd3257234fbae63 Author: Luis Machado <lgustavo@codesourcery.com> Date: Thu Aug 27 02:00:16 2015 -0300 Mention language in compile error message regressed: -PASS: gdb.compile/compile.exp: compile code globalvar +FAIL: gdb.compile/compile.exp: compile code globalvar Update the expected message. gdb/testsuite/ChangeLog 2015-10-25 Jan Kratochvil <jan.kratochvil@redhat.com> * gdb.compile/compile.exp (compile code globalvar): Update expectation for a change by "Mention language in compile error message".
2015-10-25Re-apply change for handling non-local references in nested functions.Iain Buclaw2-3/+6
gdb/ChangeLog: * d-exp.y: Remove an obsolete comment and propagate the block information to the produced expression.
2015-10-24tui-data.c: Remove unnecessary castsSimon Marchi2-2/+8
The (void *) casts make the build fail in C++ mode and are unnecessary. gdb/ChangeLog: * tui/tui-data.c (tui_add_to_source_windows): Remove void * cast. (tui_add_content_elements): Likewise.
2015-10-24cli-setshow.c: Constify variableSimon Marchi2-1/+5
Fixes: /home/simark/src/binutils-gdb/gdb/cli/cli-setshow.c:390:13: error: invalid conversion from ‘const char*’ to ‘char*’ [-fpermissive] p = strchr (arg, ' '); ^ gdb/ChangeLog: * cli/cli-setshow.c (do_set_command): Constify p.
2015-10-25Automatic date update in version.inGDB Administrator1-1/+1
2015-10-24Replace (void *) cast with (gdb_byte *)Simon Marchi2-1/+6
Fixes: /home/simark/src/binutils-gdb/gdb/nat/linux-ptrace.c:207:6: error: invalid conversion from ‘void*’ to ‘gdb_byte* {aka unsigned char*}’ [-fpermissive] pc = (void *) (uintptr_t) l; ^ gdb/ChangeLog: * nat/linux-ptrace.c (linux_ptrace_test_ret_to_nx): Replace (void *) cast with (gdb_byte *).
2015-10-24proc-service.c: Add (gdb_byte *) castSimon Marchi2-1/+5
A cast here is necessary, just as it's necessary in ps_pdwrite just below. The type of buf can't be changed, since it's fixed in the ps_pd* API. gdb/ChangeLog: * proc-service.c (ps_pdread): Add cast.
2015-10-24sparc64-tdep.c: Don't assign using memcpy returnSimon Marchi2-1/+7
This: valbuf = memcpy (buf, valbuf, len); causes a build failure in C++, because memcpy returns the value of "buf" as a void *. Instead of adding a cast, we can just do the assignment separately. gdb/ChangeLog: * sparc64-tdep.c (sparc64_store_arguments): Split assignment of valbuf.
2015-10-24ia64-tdep.c: Remove (void *) castsSimon Marchi2-3/+9
Remove these (void *) casts, which cause a build failure in C++ mode. gdb/ChangeLog: * ia64-tdep.c (ia64_pseudo_register_write): Remove cast. (ia64_push_dummy_call): Remove cast and change type of "to" to array of gdb_byte.
2015-10-24Automatic date update in version.inGDB Administrator1-1/+1
2015-10-23Add mmap casts in linux-btrace.cSimon Marchi2-4/+10
gdb/ChangeLog: * linux-btrace.c (linux_enable_pt): Add cast to mmap return.
2015-10-23Add cast to observer.shSimon Marchi2-1/+5
gdb/ChangeLog: * observer.h (observer_${event}_notification_stub): Add cast.
2015-10-23Remove set_breakpoint_data definition in GDBServer.Antoine Tremblay2-5/+4
This patch removes the now unused set_breakpoint_data function from mem_break.h gdb/gdbserver/ChangeLog: * mem-break.h (set_breakpoint_data): Remove.
2015-10-23Fix nto,spu and win32 builds of GDBServer.Antoine Tremblay4-10/+139
This patch fixes the build that was broken by : https://sourceware.org/ml/gdb-patches/2015-10/msg00369.html It implements the sw_breakpoint_from_kind operation on these targets and removes the calls to set_breakpoint_data. Compiliation tested on win32. Not tested : nto, spu. gdb/gdbserver/ChangeLog: * nto-low.c (nto_sw_breakpoint_from_kind): New function. (struct target_ops) <sw_breakpoint_from_kind>: Initialize. (initialize_low): Remove set_breakpoint_data call. * spu-low.c (spu_sw_breakpoint_from_kind): New function. (struct target_ops) <sw_breakpoint_from_kind>: Iniitalize. (initialize_low): Remove set_breakpoint_data call. * win32-low.c (win32_sw_breakpoint_from_kind): New function. (struct target_ops) <sw_breakpoint_from_kind>: Initialize. (initialize_low): Remove set_breakpoint_data call.
2015-10-23Refactor default_breakpoint_kind_from_pc to be used by all targets in GDBServer.Antoine Tremblay5-14/+31
This patch moves default_breakpoint_kind_from_pc to target.c and creates a macro so that all targets can easily use it. This allows the breakpoint_kind_from_pc operation to be left unimplemented in targets that do not need it. This is preparation to fix the win32/nto/spu build that was broken by this patch: https://sourceware.org/ml/gdb-patches/2015-10/msg00369.html No regression on Ubuntu 14.04 x86-64 with gdbserver-{native-extended} gdb/gdbserver/ChangeLog: * linux-low.c (default_breakpoint_kind_from_pc): Move to target.c. * mem-break.c (set_breakpoint_at): Use target_breakpoint_kind_from_pc. * target.c (default_breakpoint_kind_from_pc): Moved from linux-low.c * target.h (target_breakpoint_kind_from_pc): New macro.
2015-10-23Handle __start_* and __stop_* symbols in --gc-sectionsAlan Modra4-39/+82
PR ld/11133 PR ld/19161 PR ld/19167 * elflink.c (_bfd_elf_gc_mark_hook): Delete code handling __start_* and __stop_* symbol refs. (_bfd_elf_gc_mark_rsec): Add start_stop parameter. Handle __start_* and __stop_* symbol refs here.. (_bfd_elf_gc_mark_reloc): ..and here. * elf-bfd.h (_bfd_elf_gc_mark_hook): Update prototype. * elf-eh-frame.c (_bfd_elf_parse_eh_frame): Update _bfd_elf_gc_mark_rsec call.
2015-10-23Add a test for PR ld/19167H.J. Lu5-0/+28
PR ld/19167 * ld-gc/gc.exp: Run pr19167 test. * ld-gc/pr19167.d: New file. * ld-gc/pr19167a.s: Likewise. * ld-gc/pr19167b.s: Likewise.
2015-10-23Initialize field insn_count correctlyYao Qi2-0/+6
This patch initialize dsd.insn_count, otherwise, it triggers the assert below on testings we did recently. gdb: 2015-10-23 Yao Qi <yao.qi@linaro.org> * aarch64-tdep.c (aarch64_displaced_step_copy_insn): Set dsd.insn_count to zero.
2015-10-23Automatic date update in version.inGDB Administrator1-1/+1
2015-10-23Re: Always keep sections marked with SEC_KEEPAlan Modra2-3/+9
Revert bba037e0, it breaks the gc-sections model. Instead fix the underlying problem which is that _bfd_elf_gc_mark_hook is too late to be setting SEC_KEEP. PR ld/11133 PR ld/19161 * elflink.c (elf_gc_sweep): Revert last patch. (_bfd_elf_gc_mark_hook): Don't set SEC_KEEP here.
2015-10-22Always keep sections marked with SEC_KEEPH.J. Lu7-1/+57
SEC_KEEP check in elf_gc_sweep was missing in commit: commit bde6f3eb6dff94cea1d471e15c6154d55d49820f Author: H.J. Lu <hjl.tools@gmail.com> Date: Fri Jan 8 01:43:23 2010 +0000 Set SEC_KEEP on section XXX for undefined __start_XXX/__stop_XXX bfd/ 2010-01-07 H.J. Lu <hongjiu.lu@intel.com> PR ld/11133 * elflink.c (_bfd_elf_gc_mark_hook): Check section XXX for undefined __start_XXX/__stop_XXX in all input files and set SEC_KEEP. This patch adds SEC_KEEP check to elf_gc_sweep. bfd/ PR ld/19161 * elflink.c (elf_gc_sweep): Always keep sections marked with SEC_KEEP. ld/testsuite/ PR ld/19161 * ld-gc/gc.exp: Run pr19161 test. * ld-gc/pr19161-1.c: New file. * ld-gc/pr19161-2.c: Likewise. * ld-gc/pr19161.d: Likewise.
2015-10-22garbage collect gdb/infrun.c:stop_after_trapPedro Alves2-22/+8
No longer used anywhere. gdb/ChangeLog: 2015-10-22 Pedro Alves <palves@redhat.com> * infrun.c (stop_after_trap): Delete. (clear_proceed_status, handle_signal_stop, struct infcall_control_state, save_infcall_control_state) (restore_infcall_control_state): Remove references to stop_after_trap.
2015-10-22Fix inconsistent breakpoint kinds between breakpoints and tracepoints in ↵Antoine Tremblay2-2/+20
GDBServer. This patch fixes a regression introduced by : https://sourceware.org/ml/gdb-patches/2015-10/msg00369.html Tests : gdb.trace/trace-break.exp and gdb.trace/trace-mt.exp would fail on x86 with gdbserver-{native,extended}. Before this patch, the breakpoint kind set by GDB with a Z packet and the one set in the case of a tracepoint would be inconsistent on targets that did not implement breakpoint_kind_from_pc. On x86 for example a breakpoint set by GDB would have a kind of 1 but a breakpoint set by a tracepoint would have a kind of 0. This created a missmatch when trying to insert a tracepoint and a breakpoint at the same location. One of the two breakpoints would be removed with debug message : "Inconsistent breakpoint kind". This patch fixes the issue by changing the default 0 breakpoint kind to be the size of the breakpoint according to sw_breakpoint_from_kind. The default breakpoint kind must be the breakpoint length to keep consistency between breakpoints set via GDB and the ones set internally by GDBServer. No regression on Ubuntu 14.04 x86-64 with gdbserver-{native-extended} gdb/gdbserver/ChangeLog: * linux-low.c (default_breakpoint_kind_from_pc): New function. (linux_breakpoint_kind_from_pc): Use default_breakpoint_kind_from_pc for the default breakpoint kind.