aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2014-01-14psymtab cleanup patch 1/3Doug Evans6-35/+54
This is the first of a set of three patches to cleanup psymtab.c a bit. Basically, these two functions do not belong in psymtab.c: expand_partial_symbol_names, map_partial_symbol_filenames, and "partial" does not belong in the function name. This first patch moves them to a better location. The second patch adds some typedefs for function parameters to quick_symbol_functions.expand_symtabs_matching. The third patch removes "partial" from the function names and uses them in more places. * psymtab.c (expand_partial_symbol_names): Delete, moved to symfile.c. (map_partial_symbol_filenames): Ditto. * psymtab.h (expand_partial_symbol_names): Delete, moved to symfile.h. (map_partial_symbol_filenames): Ditto. * symfile.c (expand_partial_symbol_names): Moved here from psymtab.c. (map_partial_symbol_filenames): Ditto. * symfile.h (expand_partial_symbol_names): Moved here from psymtab.h. (map_partial_symbol_filenames): Ditto. * symtab.c: Delete #include "psymtab.h".
2014-01-14Don't discard relocs against __ehdr_startH.J. Lu3-4/+17
__ehdr_start will be defined by assign_file_positions_for_non_load_sections later. PR ld/16428 * elf32-i386.c (elf_i386_allocate_dynrelocs): Don't discard relocs against __ehdr_start. * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
2014-01-14Revert the last changeH.J. Lu3-14/+10
* elf32-i386.c (elf_i386_allocate_dynrelocs): Revert the last change. * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
2014-01-15daily updateAlan Modra1-1/+1
2014-01-14Don't update reloc count if there are any non pc-relative relocsH.J. Lu3-4/+21
PR ld/16428 * elf32-i386.c (elf_i386_allocate_dynrelocs): Don't update reloc count if there are any non pc-relative relocs. * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise.
2014-01-14Fix "is a record target open" checks.Pedro Alves7-12/+66
RECORD_IS_USED and record_full_open look at current_target.to_stratum to determine whether a record target is in use. This is wrong because arch_stratum is greater than record_stratum, so if an arch_stratum target is pushed, RECORD_IS_USED and record_full_open will miss it. To fix this, we can use the existing find_record_target instead, which looks up for a record stratum target across the target stack. Since that means exporting find_record_target in record.h, RECORD_IS_USED ends up redundant, so the patch eliminates it. That exercise then reveals other issues: - adjust_pc_after_break is gating record_full_... calls based on RECORD_IS_USED. But, record_full_ calls shouldn't be made when recording with the record-btrace target. So this adds a new record_full_is_used predicate to be used in that spot. - record_full_open says "Process record target already running", even if the recording target is record-btrace ("process record" is the original complete name of the record-full target). record_btrace_open only says "The process is already being recorded." and does not suggest "record stop", like record-full does. The patch factors out and merges that error to a new record_preopen function that all record targets call in their open routine. Tested on x86_64 Fedora 17. gdb/ 2014-01-14 Pedro Alves <palves@redhat.com> Tom Tromey <tromey@redhat.com> * infrun.c (use_displaced_stepping): Use find_record_target instead of RECORD_IS_USED. (adjust_pc_after_break): Use record_full_is_used instead of RECORD_IS_USED. * record-btrace.c (record_btrace_open): Call record_preopen instead of checking RECORD_IS_USED. * record-full.c (record_full_shortname) (record_full_core_shortname): New globals. (record_full_is_used): New function. (find_full_open): Call record_preopen instead of checking RECORD_IS_USED. (init_record_full_ops): Set the target's shortname to record_full_shortname. (init_record_full_core_ops): Set the target's shortname to record_full_core_shortname. * record-full.h (record_full_is_used): Declare. * record.c (find_record_target): Make extern. (record_preopen): New function. * record.h (RECORD_IS_USED): Delete macro. (find_record_target, record_preopen): Declare functions.
2014-01-142014-01-14 Michael Hudson-Doyle <michael.hudson@linaro.org>Christophe Lyon2-5/+12
Kugan Vivekanandarajah <kugan.vivekanandarajah@linaro.org> bfd/ * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Use correct offset while calculating relocation address. (elfNN_aarch64_create_small_pltn_entry): Likewise. (elfNN_aarch64_init_small_plt0_entry): Likewise.
2014-01-14Change 'len''s type from LONGEST to ULONGEST: gdbarch methods ↵Yao Qi6-10/+21
core_xfer_shared_libraries and core_xfer_shared_libraries_aix This patch changes the type of 'len' from LONGEST to ULONGEST. 'len' is the argument of gdbarch methods core_xfer_shared_libraries and core_xfer_shared_libraries_aix. gdb: 2014-01-14 Yao Qi <yao@codesourcery.com> * gdbarch.sh (core_xfer_shared_libraries): Change its argument 'len''s type to ULONGEST. (core_xfer_shared_libraries_aix): Likewise. * gdbarch.c, gdbarch.h: Reenerated. * i386-cygwin-tdep.c (windows_core_xfer_shared_libraries): Change type of 'len' to ULONGEST. * rs6000-aix-tdep.c (rs6000_aix_ld_info_to_xml): Likewise. (rs6000_aix_core_xfer_shared_libraries_aix): Likewise.
2014-01-14Change 'len' of linux_common_xfer_osdata to ULONGEST.Yao Qi3-12/+28
gdb: 2014-01-14 Yao Qi <yao@codesourcery.com> * common/linux-osdata.c (linux_xfer_osdata_processes): Change type of 'len' to ULONGEST. (linux_xfer_osdata_processgroups): Likewise. (linux_xfer_osdata_threads): Likewise. (linux_xfer_osdata_fds): Likewise. (linux_xfer_osdata_isockets): Likewise. (linux_xfer_osdata_shm): Likewise. (linux_xfer_osdata_sem): Likewise. (linux_xfer_osdata_msg): Likewise. (linux_common_xfer_osdata): Likewise. (struct osdata_type) <getter>: Likewise. * common/linux-osdata.h (linux_common_xfer_osdata): Update the declaration.
2014-01-14Change to_xfer_partial 'len' type to ULONGEST.Yao Qi33-74/+142
This patch changes to_xfer_partial's len's type to ULONGEST, and adjust its implementations. gdb: 2014-01-14 Yao Qi <yao@codesourcery.com> * target.h (target_xfer_partial_ftype): Update. (struct target_ops) <to_xfer_partial>: Change 'len' type to ULONGEST. * aix-thread.c (aix_thread_xfer_partial): Change type of argument 'len' to ULONGEST. * auxv.c (procfs_xfer_auxv): Likewise. (ld_so_xfer_auxv): Likewise. (memory_xfer_auxv): Likewise. * bfd-target.c (target_bfd_xfer_partial): Likewise. * bsd-kvm.c (bsd_kvm_xfer_partial): Likewise. * bsd-uthread.c (bsd_uthread_xfer_partial): Likewise. * corelow.c (core_xfer_partial): Likewise. * ctf.c (ctf_xfer_partial): Likewise. * darwin-nat.c (darwin_read_write_inferior): Likewise. Use '%u'. (darwin_read_dyld_info): Likewise. (darwin_xfer_partial): Likewise. * exec.c (section_table_xfer_memory_partial): Likewise. (exec_xfer_partial): Likewise. * exec.h (section_table_xfer_memory_partial): Update declaration. * gnu-nat.c (gnu_xfer_memory): Likewise. Call pulongest instead of plongest. (gnu_xfer_partial): Likewise. * ia64-hpux-nat.c (ia64_hpux_xfer_memory): Likewise. (ia64_hpux_xfer_solib_got): Likewise. (ia64_hpux_xfer_partial): Likewise. * ia64-linux-nat.c (ia64_linux_xfer_partial): * inf-ptrace.c (inf_ptrace_xfer_partial): * inf-ttrace.c (inf_ttrace_xfer_partial): * linux-nat.c (linux_xfer_siginfo): Likewise. (linux_nat_xfer_partial): Likewise. (spu_enumerate_spu_ids, linux_proc_xfer_spu): Likewise. (linux_nat_xfer_osdata, linux_xfer_partial): Likewise. * monitor.c (monitor_xfer_memory): Likewise. (monitor_xfer_partial): Likewise. * procfs.c (procfs_xfer_partial): Likewise. * record-full.c (record_full_xfer_partial): Likewise. (record_full_core_xfer_partial): Likewise. * remote-sim.c (gdbsim_xfer_memory): Likewise. Call pulongest instead of plongest. (gdbsim_xfer_partial): Likewise. * remote.c (remote_xfer_partial): Likewise. * rs6000-aix-tdep.c (rs6000_aix_ld_info_to_xml): Likewise. * rs6000-aix-tdep.h (rs6000_aix_ld_info_to_xml): Update declaration. * rs6000-nat.c (rs6000_xfer_partial): Likewise. (rs6000_xfer_shared_libraries): Likewise. * sol-thread.c (sol_thread_xfer_partial): Likewise. * sparc-nat.c (sparc_xfer_wcookie): Likewise. (sparc_xfer_partial): Likewise. * spu-linux-nat.c (spu_proc_xfer_spu): Likewise. (spu_xfer_partial): Likewise. * spu-multiarch.c (spu_xfer_partial): Likewise. * target.c (target_read_live_memory): Likewise. (memory_xfer_live_readonly_partial): Likewise. (memory_xfer_partial, memory_xfer_partial_1): Likewise. (target_xfer_partial, default_xfer_partial): Likewise. (current_xfer_partial): Likewise. * tracepoint.c (tfile_xfer_partial): Likewise. * windows-nat.c (windows_xfer_memory): Likewise. Call pulongest instead of plongest. (windows_xfer_partial): Likewise. (windows_xfer_shared_libraries): Likewise.
2014-01-14Use target_xfer_partial_ftype for rs6000_xfer_shared_librariesYao Qi2-4/+6
Hi, We can use target_xfer_partial_ftype here for rs6000_xfer_shared_libraries declaration. gdb: 2014-01-14 Yao Qi <yao@codesourcery.com> * rs6000-nat.c (rs6000_xfer_shared_libraries): Use target_xfer_partial_ftype.
2014-01-14 * lib/ld-lib.exp (default_ld_link): Remove support for ldflags.Vidya Praveen2-9/+6
(default_ld_simple_link): Likewise.
2014-01-14 PR gas/16434Nick Clifton2-7/+13
* config/tc-z80.c (wrong_match): Provide format string to as_warn. (parse_exp_not_indexed): Delete unused variable dummy. (emit_byte): Delete unused variable fixp.
2014-01-13Use bitpos and type to lookup a gdb.Field object when its name is 'None'.Siva Chandra10-18/+208
PR python/15464 PR python/16113 * valops.c (value_struct_elt_bitpos): New function * py-type.c (convert_field): Set 'name' attribute of a gdb.Field object to 'None' if the field name is an empty string (""). * python/py-value.c (valpy_getitem): Use 'bitpos' and 'type' attribute to look for a field when 'name' is 'None'. (get_field_type): New function testsuite/ * gdb.python/py-type.c: Enhance test case. * gdb.python/py-value-cc.cc: Likewise * gdb.python/py-type.exp: Add new tests. * gdb.python/py-value-cc.exp: Likewise
2014-01-13PR symtab/16426Doug Evans4-1/+62
* dwarf2read.c (dwarf2_get_dwz_file): Call gdb_bfd_record_inclusion. (try_open_dwop_file): Ditto. * gdb_bfd.c: #include "vec.h". (bfdp): New typedef. (struct gdb_bfd_data): New member included_bfds. (gdb_bfd_unref): Unref all included bfds. (gdb_bfd_record_inclusion): New function. * gdb_bfd.h (gdb_bfd_record_inclusion): Declare.
2014-01-14daily updateAlan Modra1-1/+1
2014-01-13remove obsolete declarationTom Tromey2-2/+4
deprecated_core_resize_section_table is declared but never defined. This patch removes the stale declaration. 2014-01-13 Tom Tromey <tromey@redhat.com> * gdbcore.h (deprecated_core_resize_section_table): Remove.
2014-01-13remove use_windowsTom Tromey6-24/+8
Nothing actually uses use_windows, not even Insight. So, this patch removes it. 2014-01-13 Tom Tromey <tromey@redhat.com> * defs.h (use_windows): Remove. * gdb.c (main): Update. * main.c (captured_main, gdb_main): Update. * main.h (struct captured_main_args) <use_windows>: Remove. * top.c (use_windows): Remove.
2014-01-13remove unused deprecated_flush_hook declarationTom Tromey2-1/+4
deprecated_flush_hook is declared in defs.h but never defined. This patch removes the stale declaration. 2014-01-13 Tom Tromey <tromey@redhat.com> * defs.h (deprecated_flush_hook): Remove.
2014-01-13Fix set auto-load safe-path false warning regression (PR 16216)Jan Kratochvil2-15/+32
gdb/ 2014-01-07 Jan Kratochvil <jan.kratochvil@redhat.com> PR threads/16216 * linux-thread-db.c (try_thread_db_load): Add parameter check_auto_load_safe. Move here the file_is_auto_load_safe call. (try_thread_db_load_from_pdir_1): Move it there from here. (try_thread_db_load_from_sdir): Update caller. (try_thread_db_load_from_dir): Move it there from here.
2014-01-13Have regdat.sh always rewrite the output register filePatrick Palka2-13/+5
The rules for generating the output register files look like: amd64.c : $(srcdir)/../regformats/i386/amd64.dat $(regdat_sh) $(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/amd64.dat amd64.c According to this rule, if regdat.sh is newer than amd64.c, then regdat.sh shall be invoked on amd64.dat. According to regdat.sh, if the script determines that the output file amd64.c has not changed, then it will not overwrite the existing output file. This means that a subsequent invocation of make will trigger the above rule again as regdat.sh will be perpetually newer than amd64.c. This then shows up in the make output like so: /bin/bash ./../regformats/regdat.sh ./../regformats/i386/amd64-linux.dat amd64-linux.c amd64-linux.c unchanged. /bin/bash ./../regformats/regdat.sh ./../regformats/i386/amd64-avx-linux.dat amd64-avx-linux.c amd64-avx-linux.c unchanged. ... To fix this pathological behavior, it suffices to have regdat.sh unconditionally rewrite the output register file. On my machine, which has a regdat.sh file that is newer than some of the input register files, this change speeds up every invocation of make under gdb/ by about 5 seconds.
2014-01-13New "make check-headers" rule.Pedro Alves2-0/+27
Tries to compile each header in isolation, thus ensuring headers are self-contained. Defaults to checking all $HFILES_NO_SRCDIR headers. Do: make check-headers CHECK_HEADERS="header.h list.h" to check specific headers. gdb/ 2014-01-13 Pedro Alves <palves@redhat.com> * Makefile.in (CHECK_HEADERS): New variable. (check-headers:): New rule.
2014-01-13remove deprecated_set_hookTom Tromey4-9/+6
This removes deprecated_set_hook. Insight was the last user of this hook, but I recently checked in a patch to have it use the command_param_changed observer instead. 2014-01-13 Tom Tromey <tromey@redhat.com> * cli/cli-setshow.c (do_set_command): Update. * defs.h (deprecated_set_hook): Remove. * top.c (deprecated_set_hook): Remove.
2014-01-13Fix MinGW compilation errors in gdbserver/.Eli Zaretskii2-1/+7
gdb/gdbserver/Makefile.in (INCLUDE_CFLAGS): Remove trailing slash from "-I$(srcdir)/../". Fixes MinGW compilation errors with old GCC versions.
2014-01-132014-01-13 Ma Jiang <ma.jiang@zte.com.cn>Ma Jiang2-0/+12
PR ld/16202 * elf32-arm.c (elf32_arm_final_link_relocate): Refetch addends for R_ARM_ABS8 and R_ARM_ABS16.
2014-01-13tfile: Don't infer the PC from the tracepoint if the PC is a pseudo-register.Pedro Alves2-1/+16
This PC guessing can't work when the PC is a pseudo-register. Pseudo-register values don't end up stored in the regcache, they're always recomputed. And, it's actually wrong to try to write a pseudo-register with regcache_raw_supply. Skip it and add a comment. gdb/ 2014-01-13 Pedro Alves <palves@redhat.com> * tracepoint.c (tfile_fetch_registers): Don't infer the PC from the tracepoint if the PC is a pseudo-register.
2014-01-13replace XCALLOC with XCNEWVEC or XCNEWTom Tromey20-33/+56
This removes XCALLOC and replaces it either with XCNEWVEC, or, if the number of elements being requested was 1, with XCNEW. 2014-01-13 Tom Tromey <tromey@redhat.com> * defs.h (XCALLOC): Remove. * bcache.c (bcache_xmalloc): Use XCNEW, not XCALLOC. (print_bcache_statistics): Use XCNEWVEC, not XCALLOC. * dwarf2loc.c (allocate_piece_closure): Likewise. * elfread.c (elf_symfile_segments): Likewise. (elf_symfile_segments): Likewise. * gdbtypes.c (copy_type_recursive): Likewise. * i386-tdep.c (i386_gdbarch_init): Use XCNEW, not XCALLOC. * jit.c (jit_frame_sniffer): Use XCNEWVEC, not XCALLOC. * minsyms.c (prim_record_minimal_symbol_full): Use XCNEW, not XCALLOC. * mt-tdep.c (mt_gdbarch_init): Likewise. * opencl-lang.c (allocate_lval_closure): Use XCNEWVEC, not XCALLOC. * psymtab.c (psymbol_compare): Use XCNEW, not XCALLOC. * regcache.c (regcache_xmalloc_1): Use XCNEWVEC, not XCALLOC. * registry.c (registry_alloc_data): Likewise. * rs6000-tdep.c (rs6000_gdbarch_init): Use XCNEW, not XCALLOC. * s390-linux-tdep.c (s390_gdbarch_init): Likewise. * serial.c (serial_fdopen_ops): Likewise. * solib-aix.c (solib_aix_get_section_offsets): Use XCNEWVEC, not XCALLOC. * spu-tdep.c (spu_gdbarch_init): Use XCNEW, not XCALLOC. * symfile.c (default_symfile_segments): Use XCNEW and XCNEWVEC, not XCALLOC.
2014-01-13replace XMALLOC with XNEWTom Tromey37-62/+108
This replaces XMALLOC with XNEW, and removes XMALLOC. The only non-mechanical bit here was remembering to edit gdbarch.sh. 2014-01-13 Tom Tromey <tromey@redhat.com> * defs.h (XMALLOC): Remove. * avr-tdep.c (avr_gdbarch_init): Use XNEW, not XMALLOC. * bfin-tdep.c (bfin_gdbarch_init): Likewise. * cli-out.c (struct ui_out *): Likewise. * cli/cli-dump.c (add_dump_command): Likewise. (add_dump_command): Likewise. * complaints.c (get_complaints): Likewise. (find_complaint): Likewise. * dwarf2-frame.c (execute_cfa_program): Likewise. * dwarf2read.c (abbrev_table_read_table): Likewise. * gdbarch.sh: Likewise. * gdbarch.c: Rebuild. * inf-ttrace.c (inf_ttrace_add_page): Likewise. * interps.c (interp_new): Likewise. * lm32-tdep.c (lm32_gdbarch_init): Likewise. * m32r-tdep.c (m32r_gdbarch_init): Likewise. * mi/mi-console.c (mi_console_file_new): Likewise. * mi/mi-interp.c (mi_interpreter_init): Likewise. * mi/mi-out.c (mi_out_new): Likewise. * mi/mi-parse.c (mi_parse): Likewise. * microblaze-tdep.c (microblaze_gdbarch_init): Likewise. * moxie-tdep.c (moxie_gdbarch_init): Likewise. * observer.c (xalloc_observer_list_node): Likewise. * regcache.c (regcache_xmalloc_1): Likewise. * reggroups.c (reggroup_new): Likewise. (_initialize_reggroup): Likewise. * registry.c (register_data_with_cleanup): Likewise. * remote.c (remote_notif_stop_alloc_reply): Likewise. * ser-base.c (serial_ttystate): Likewise. * ser-mingw.c (make_pipe_state): Likewise. * ser-pipe.c (pipe_open): Likewise. * serial.c (serial_open): Likewise. * sh64-tdep.c (sh64_gdbarch_init): Likewise. * tui/tui-data.c (tui_alloc_generic_win_info): Likewise. (tui_alloc_win_info): Likewise. (tui_add_content_elements): Likewise. * tui/tui-file.c (tui_file_new): Likewise. * tui/tui-out.c (tui_out_new): Likewise. * ui-file.c (mem_file_new): Likewise. * ui-out.c (push_level): Likewise. (make_cleanup_ui_out_end): Likewise. (append_header_to_list): Likewise. (ui_out_new): Likewise. * user-regs.c (user_reg_add_builtin): Likewise.
2014-01-13replace XZALLOC with XCNEWTom Tromey46-83/+163
This replaces XZALLOC with XCNEW and removes XZALLOC. This change is purely mechanical. 2014-01-13 Tom Tromey <tromey@redhat.com> * defs.h (XZALLOC): Remove. * ada-lang.c (get_ada_inferior_data): Use XCNEW, not XZALLOC. * ada-tasks.c (get_ada_tasks_pspace_data): Likewise. (get_ada_tasks_inferior_data): Likewise. * auto-load.c (get_auto_load_pspace_data): Likewise. * auxv.c (get_auxv_inferior_data): Likewise. * bfd-target.c (target_bfd_reopen): Likewise. * breakpoint.c (get_catch_syscall_inferior_data): Likewise. (deprecated_insert_raw_breakpoint): Likewise. * bsd-uthread.c (bsd_uthread_pid_to_str): Likewise. * corelow.c (core_open): Likewise. * darwin-nat.c (darwin_check_new_threads): Likewise. (darwin_attach_pid): Likewise. * dummy-frame.c (dummy_frame_push): Likewise. * dwarf2-frame.c (dwarf2_frame_cache): Likewise. * dwarf2loc.c (allocate_piece_closure): Likewise. * elfread.c (elf_symfile_segments): Likewise. * eval.c (ptrmath_type_p): Likewise. * exceptions.c (EXCEPTIONS_SIGJMP_BUF): Likewise. * gdbtypes.c (alloc_type_arch): Likewise. (alloc_type_instance): Likewise. * hppa-tdep.c (hppa_gdbarch_init): Likewise. * inf-child.c (inf_child_can_use_agent): Likewise. * inflow.c (get_inflow_inferior_data): Likewise. * infrun.c (save_infcall_suspend_state): Likewise. * jit.c (jit_reader_load): Likewise. (get_jit_objfile_data): Likewise. (get_jit_program_space_data): Likewise. (jit_object_open_impl): Likewise. (jit_symtab_open_impl): Likewise. (jit_block_open_impl): Likewise. (jit_frame_sniffer): Likewise. * linux-fork.c (add_fork): Likewise. * maint.c (make_command_stats_cleanup): Likewise. * objfiles.c (get_objfile_pspace_data): Likewise. * opencl-lang.c (struct lval_closure): Likewise. * osdata.c (osdata_start_osdata): Likewise. * progspace.c (new_address_space): Likewise. (add_program_space): Likewise. * remote-sim.c (get_sim_inferior_data): Likewise. * sh-tdep.c (sh_gdbarch_init): Likewise. * skip.c (Ignore): Likewise. (skip_delete_command): Likewise. * solib-aix.c (get_solib_aix_inferior_data): Likewise. (library_list_start_library): Likewise. (solib_aix_current_sos): Likewise. * solib-darwin.c (get_darwin_info): Likewise. (darwin_current_sos): Likewise. * solib-dsbt.c (get_dsbt_info): Likewise. * solib-ia64-hpux.c (new_so_list): Likewise. (ia64_hpux_get_solib_linkage_addr): Likewise. * solib-spu.c (append_ocl_sos): Likewise. (spu_current_sos): Likewise. * solib-svr4.c (get_svr4_info): Likewise. (svr4_keep_data_in_core): Likewise. (library_list_start_library): Likewise. (svr4_default_sos): Likewise. (svr4_read_so_list): Likewise. * solib-target.c (library_list_start_library): Likewise. (solib_target_current_sos): Likewise. * sparc-tdep.c (sparc32_gdbarch_init): Likewise. * symfile-debug.c (install_symfile_debug_logging): Likewise. * symfile.c (default_symfile_segments): Likewise. * target-descriptions.c (tdesc_data_init): Likewise. (tdesc_create_reg): Likewise. (struct tdesc_type *): Likewise. (tdesc_create_vector): Likewise. (tdesc_set_struct_size): Likewise. (struct tdesc_type *): Likewise. (tdesc_free_feature): Likewise. (tdesc_create_feature): Likewise. * windows-nat.c (windows_add_thread): Likewise. (windows_make_so): Likewise. * xml-support.c (gdb_xml_body_text): Likewise. (gdb_xml_create_parser_and_cleanup): Likewise. (xml_process_xincludes): Likewise. * xml-syscall.c (allocate_syscalls_info): Likewise. (syscall_create_syscall_desc): Likewise.
2014-01-13missing changelog for last patchAlan Modra1-0/+9
2014-01-13Error on shared lib call to @local ifuncAlan Modra1-2/+19
On powerpc32, making ifuncs have non-default visibility in shared libraries or pies can result in runtime failures. The problem is that if gcc is told that a given function has non-default visibility, then calls to that function are assumed to be local (which is true) and thus need not go via a plt call stub (which is false for ifunc). If the caller has no other reason to set up the got pointer (r30), code won't be emitted to do so. However, a pic plt call stub makes use of r30 to load the plt entry. So a call to an ifunc, which always needs a plt entry, will fail. This patch makes ld emit an error for the problem case, and allows calls to non-default visibility ifuncs to work in normal executables. I also fix some cases where ifuncs fail when using the old bss-plt. * elf32-ppc.c (ppc_elf_check_relocs): For @local call to ifunc, error when shared and force a plt call otherwise. (ppc_elf_size_dynamic_sections): Don't emit DT_PPC_GOT unless plt_type == PLT_NEW. (ppc_elf_relocate_section): Add missing test to resolve ifuncs to the appropriate call stub.
2014-01-13daily updateAlan Modra1-1/+1
2014-01-12Split i386_stap_parse_special_token into smaller functionsSergio Durigan Junior2-244/+279
This patch reorganizes code on gdb/i386-tdep.c's SystemTap SDT probe support functions. Before it, the code to parse special operands on x86 lived in a single, big function. This patch creates 2 new functions that makes the code more organized and removes a few indentation levels (which is always good IMO). I haven't modified anything logical in the functions, i.e., there's still one latent bug on i386_stap_parse_special_token_triplet now. I will soon post a patch to fix this, and to also improve the readability of the two new functions. 2014-01-12 Sergio Durigan Junior <sergiodj@redhat.com> * i386-tdep.c (i386_stap_parse_special_token_triplet): New function, with code from i386_stap_parse_special_token. (i386_stap_parse_special_token_three_arg_disp): Likewise. (i386_stap_parse_special_token): Move code to the two functions above; simplify it.
2014-01-12daily updateAlan Modra1-1/+1
2014-01-11daily updateAlan Modra1-1/+1
2014-01-10[doc] Mention that "set environment" affects the shell too.Pedro Alves2-3/+16
gdb/doc/ 2014-01-10 Pedro Alves <palves@redhat.com> * gdb.texinfo (Your Program's Environment) <set environment>: Mention the shell, and point at 'set exec-wrapper'.
2014-01-10Since upstream gcc has recently increased the function alignment onAndreas Arnez3-5/+12
S390, the dw2-dir-file-name test case fails in the first gdb_continue_to_breakpoint. Indeed, the breakpoint is now placed into the alignment gap *before* the actual function. This happens because the test case declares the respective "*_start" symbol as a "loose" label before the function definition, and the compiler inserts the alignment between that label and the function itself. The "*_start" symbols were only necessary because FUNC made the function static. The fix makes the functions extern instead, thus making the "*_start" labels unnecessary. testsuite/ 2014-01-10 Andreas Arnez <arnez@linux.vnet.ibm.com> Pedro Alves <palves@redhat.com> * gdb.dwarf2/dw2-dir-file-name.c (FUNC): Remove "*_start" symbol. Make "name" extern. * gdb.dwarf2/dw2-dir-file-name.exp (out_cu, out_line): Replace references to ${name}_start by references to ${name}.
2014-01-10Don't adjust LOAD segment to match GNU_RELRO segmentAlan Modra7-52/+37
Instead, fix Jakub's original code setting up the PR_GNU_RELRO header from the PT_LOAD header. PR ld/14207 PR ld/16322 PR binutils/16323 bfd/ * elf.c (assign_file_positions_for_load_sections): Revert last change. (assign_file_positions_for_non_load_sections): When setting up PT_GNU_RELRO header, don't require a corresponding PT_LOAD header that completely covers the relro region. ld/ * ldlang.c (lang_size_sections): Remove unneeded RELRO base adjust. Tidy comments. * ld.texinfo (DATA_SEGMENT_RELRO_END): Correct description. ld/testsuite/ * ld-x86-64/pr14207.d: Adjust
2014-01-10Remove path from gdb.ada/pp-rec-component.exp "source" testJoel Brobecker2-1/+6
gdb/testsuite/ChangeLog: * gdb.ada/pp-rec-component.exp: Remove path from "source" test.
2014-01-10Remove path from gdb.python/py-pp-integral.exp "source" test.Joel Brobecker2-1/+6
gdb/testsuite/ChangeLog: * gdb.python/py-pp-integral.exp: Remove path from "source" test.
2014-01-10 * emulparams/crislinux.sh (COMMONPAGESIZE): Define.Hans-Peter Nilsson2-0/+5
2014-01-10daily updateAlan Modra1-1/+1
2014-01-09gdb.mi/mi-info-os.exp: Fix cross-debugger testingPedro Alves2-0/+26
A live target is required for `-info-os' to work in non-native configurations. (gdb) Expecting: ^(-info-os[ ]+)?(.*\^done,OSDataTable=.*[ ]+[(]gdb[)] [ ]*) -info-os ^error,msg="Don't know how to get OS data. Try \"help target\"." (gdb) FAIL: gdb.mi/mi-info-os.exp: -info-os If GDB does have a native configuration included, but we're testing remote, it'll be worse, as if we're not connected yet, -info-os will run against the default run target, and pass, falsely giving the impression the remote bits were exercised. gdb/testsuite/ 2014-01-09 Maciej W. Rozycki <macro@codesourcery.com> Pedro Alves <palves@redhat.com> * gdb.mi/mi-info-os.exp: Connect to the target with mi_gdb_target_load.
2014-01-09Fix buffer underrun in i386-dis.c.Roland McGrath2-1/+7
opcodes/ * i386-dis.c (print_insn): Do not touch all_prefixes[-1] when last_rex_prefix is -1.
2014-01-09Handle the case of a remote target supporting target side commands, but not ↵Pedro Alves5-30/+111
on software breakpoints. Although we can tell upfront whether a remote target supports target side commands, we can only tell whether the target supports that in combination with a given breakpoint kind (software, hardware, watchpoints, etc.) when we go and try to insert such a breakpoint kind the first time. It's not desirable to make remote_insert_breakpoint simply return -1 in this case, because if the breakpoint was set in a shared library, insert_bp_location will assume that the breakpoint insertion failed because the library wasn't mapped in. insert_bp_location already handles errors/exceptions thrown from the target_insert_xxx methods, exactly so the backend can tell the user the detailed reason the insertion of hw breakpoints failed. But, in the case of software breakpoints, it discards the detailed error message. So the patch makes insert_bp_location use the error's message for SW breakpoints too, and, introduces a NOT_SUPPORTED_ERROR error code so that insert_bp_location doesn't confuse the error for failure due to a shared library disappearing. The result is: (gdb) c Warning: Cannot insert breakpoint 2: Target doesn't support breakpoints that have target side commands. 2014-01-09 Pedro Alves <palves@redhat.com> Hui Zhu <hui@codesourcery.com> PR gdb/16101 * breakpoint.c (insert_bp_location): Rename hw_bp_err_string to bp_err_string. Don't mark the location shlib_disabled if the error thrown wasn't a generic or memory error. Catch errors thrown while inserting breakpoints in overlayed code. Output error message of software breakpoints. * remote.c (remote_insert_breakpoint): If this breakpoint has target-side commands but this stub doesn't support Z0 packets, throw NOT_SUPPORTED_ERROR error. * exceptions.h (enum errors) <NOT_SUPPORTED_ERROR>: New error. * target.h (target_insert_breakpoint): Extend comment. (target_insert_hw_breakpoint): Add comment.
2014-01-09Fix copyright yearH.J. Lu1-1/+1
2014-01-09Check if GNU_RELRO segment is is generatedH.J. Lu2-1/+30
Fail if GNU_RELRO segment isn't generated, but should. * ld-elf/binutils.exp (binutils_test): Check if GNU_RELRO segment is generated.
2014-01-09remove include/gdbm.hTom Tromey2-91/+4
include/gdbm.h is a relic. 2014-01-09 Tom Tromey <tromey@redhat.com> * gdbm.h: Remove.
2014-01-09Add and use check_lto_shared_availableH.J. Lu3-2/+45
2014-01-09 Vidya Praveen <vidyapraveen@arm.com> * lib/ld-lib.exp (check_lto_shared_available): New check. * ld-plugin/lto.exp: Use check_lto_shared_available.
2014-01-09Use table jump macros in coff-rs6000 targets.Tristan Gingold2-171/+100
bfd/ 2014-01-09 Tristan Gingold <gingold@adacore.com> * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): use jump table macros and add macros to initializa the structure.