Pedro Alves [Thu, 19 Apr 2012 13:26:25 +0000 (13:26 +0000)]
2012-04-19 Pedro Alves <palves@redhat.com>
* Makefile.in (generated_files): New.
(server_h): Remove the explicit dependency on config.h, and depend
on $generated_files.
Pedro Alves [Thu, 19 Apr 2012 12:10:06 +0000 (12:10 +0000)]
2012-04-19 Pedro Alves <palves@redhat.com>
* Makefile.in (INCGNU): Add -Ignulib.
Pedro Alves [Thu, 19 Apr 2012 12:02:56 +0000 (12:02 +0000)]
2012-04-19 Pedro Alves <palves@redhat.com>
* Makefile.in (GNULIB_INCLUDE_DIR): Rename to ...
(INCGNU): ... this, and spell out -I here.
(GNULIB_LIB): Rename to ...
(LIBGNU): ... this.
(INCLUDE_CFLAGS, gdbserver$(EXEEXT), $(GNULIB_LIB) rule): Adjust.
Pedro Alves [Thu, 19 Apr 2012 11:58:57 +0000 (11:58 +0000)]
2012-04-19 Pedro Alves <palves@redhat.com>
* config.in: Regenerate.
Pedro Alves [Thu, 19 Apr 2012 11:57:39 +0000 (11:57 +0000)]
Move entries to right place. Drop config.in entry, as I forgot to
actually do what it says.
Pedro Alves [Thu, 19 Apr 2012 10:23:03 +0000 (10:23 +0000)]
2012-04-19 Pedro Alves <palves@redhat.com>
* configure.ac: Remove AC_CHECK_DECLS check for memmem.
* server.h (memmem): Remove declaration.
* config.in: Regenerate.
* configure: Regenerate.
Thomas Schwinge [Thu, 19 Apr 2012 09:50:24 +0000 (09:50 +0000)]
bfd/
* elf32-sh.c (elf_sh_link_hash_entry): Specify an enum identifier for
got_type.
(allocate_dynrelocs, sh_elf_relocate_section, sh_elf_check_relocs): Use
it.
Yao Qi [Thu, 19 Apr 2012 05:58:52 +0000 (05:58 +0000)]
gdb:
* Makefile.in (SFILES): Add common/vec.c and remove vec.c.
(vec.o): New rule.
* vec.c: Move it ...
* common/vec.c: ... here.
* vec.h: Move it ...
* common/vec.h: ... here.
gdb/gdbserver:
* Makefile.in (SFILES): Add common/vec.c.
(OBS): Add vec.o.
(vec.o): New rule.
Yao Qi [Thu, 19 Apr 2012 05:05:11 +0000 (05:05 +0000)]
gdb/gdbserver/
* remote-utils.c (prepare_resume_reply): Replace with macro
target_core_of_thread.
* server.c (handle_qxfer_threads_proper): Likewise.
* target.h (traget_core_of_thread): New macro.
Yao Qi [Thu, 19 Apr 2012 01:58:07 +0000 (01:58 +0000)]
gdb/
* gdb-code-style.el: New.
gdbadmin [Thu, 19 Apr 2012 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Thu, 19 Apr 2012 00:00:04 +0000 (00:00 +0000)]
daily update
Pedro Alves [Wed, 18 Apr 2012 20:45:25 +0000 (20:45 +0000)]
2012-04-18 Pedro Alves <palves@redhat.com>
Update gnulib from latest git.
(
639ea5ae15e39fe48d43e04864b2997301e4b969)
* gnulib/Makefile.am: Update.
* gnulib/dummy.c: Update.
* gnulib/extra/arg-nonnull.h: Update.
* gnulib/extra/c++defs.h: Update.
* gnulib/extra/update-copyright: Update.
* gnulib/extra/warn-on-use.h: Update.
* gnulib/inttypes.in.h: Update.
* gnulib/m4/00gnulib.m4: Update.
* gnulib/m4/extensions.m4: Update.
* gnulib/m4/gnulib-cache.m4: Update.
* gnulib/m4/gnulib-common.m4: Update.
* gnulib/m4/gnulib-comp.m4: Update.
* gnulib/m4/gnulib-tool.m4: Update.
* gnulib/m4/include_next.m4: Update.
* gnulib/m4/inttypes-pri.m4: Update.
* gnulib/m4/inttypes.m4: Update.
* gnulib/m4/longlong.m4: Update.
* gnulib/m4/memchr.m4: Update.
* gnulib/m4/memmem.m4: Update.
* gnulib/m4/mmap-anon.m4: Update.
* gnulib/m4/multiarch.m4: Update.
* gnulib/m4/onceonly.m4: Update.
* gnulib/m4/stddef_h.m4: Update.
* gnulib/m4/stdint.m4: Update.
* gnulib/m4/string_h.m4: Update.
* gnulib/m4/warn-on-use.m4: Update.
* gnulib/m4/wchar_h.m4: Update.
* gnulib/m4/wchar_t.m4: Update.
* gnulib/m4/wint_t.m4: Update.
* gnulib/memchr.c: Update.
* gnulib/memmem.c: Update.
* gnulib/stddef.in.h: Update.
* gnulib/stdint.in.h: Update.
* gnulib/str-two-way.h: Update.
* gnulib/string.in.h: Update.
* gnulib/wchar.in.h: Update.
* gnulib/extra/arg-nonnull.h: Delete.
* gnulib/extra/c++defs.h: Delete.
* gnulib/extra/warn-on-use.h: Delete.
* gnulib/m4/wchar_h.m4: Delete.
* gnulib/m4/wint_t.m4: Delete.
* gnulib/wchar.in.h: Delete.
* gnulib/extra/snippets/arg-nonnull.h: New.
* gnulib/extra/snippets/c++defs.h: New.
* gnulib/extra/snippets/warn-on-use.h: New.
* aclocal.m4: Regenerate.
* config.in: Regenerate.
* configure: Regenerate.
* gnulib/Makefile.in: Regenerate.
* gdbserver/aclocal.m4: Regenerate.
* gdbserver/config.in: Regenerate.
* gdbserver/configure: Regenerate.
Pedro Alves [Wed, 18 Apr 2012 20:06:39 +0000 (20:06 +0000)]
2012-04-18 Pedro Alves <palves@redhat.com>
Reimport the update-copyright module from gnulib
(
250b80067c1e1d8faa0c42fb572f721975b929c5).
* configure: Regenerate.
* gnulib/Makefile.am: Update.
* gnulib/Makefile.in: Regenerate.
* gnulib/extra/update-copyright: Update.
* gnulib/m4/gnulib-cache.m4: Update.
* gnulib/m4/gnulib-comp.m4: Update.
Joel Brobecker [Wed, 18 Apr 2012 15:11:59 +0000 (15:11 +0000)]
put -lpthread into LIBS instead of CONFIG_LDFLAGS.
The problem showed up on AIX when we switched from the system linker
to GNU ld. What happens is that configure is adding -lpthdebug to
CONFIG_LDFLAGS when AIX thread debugging support is detected. But
this causes the "-lpthread" switch to be placed at the _before_
GDB's .o files (see Makefile.in):
INTERNAL_LDFLAGS = [...] $(CONFIG_LDFLAGS)
[...]
gdb$(EXEEXT): gdb.o $(LIBGDB_OBS) $(ADD_DEPS) $(CDEPS) $(TDEPLIBS)
rm -f gdb$(EXEEXT)
$(CC_LD) $(INTERNAL_LDFLAGS) $(WIN32LDAPP) \
-o gdb$(EXEEXT) gdb.o $(LIBGDB_OBS) \
$(TDEPLIBS) $(TUI_LIBRARY) $(CLIBS) $(LOADLIBES)
And as a result of this, the linker reports an error due to some
symbols in aix-thread.o not being satisfied.
This patch adds the "-lpthread" switch to LIBS instead, which should
be the right place to add it.
gdb/ChangeLog (Tristan Gingold):
* configure.ac (aix): Put -lpthread into libs.
* configure: Regenerate.
Tom Tromey [Wed, 18 Apr 2012 14:56:59 +0000 (14:56 +0000)]
* linespec.c (convert_linespec_to_sals): Don't use
SYMBOL_OBJ_SECTION.
(compare_msymbols): Arguments are minsym_and_objfile, not
minimal_symbol*. Don't use SYMBOL_OBJ_SECTION.
Pedro Alves [Wed, 18 Apr 2012 12:09:39 +0000 (12:09 +0000)]
2012-04-18 Pedro Alves <palves@redhat.com>
Revert gnulib/ part of:
2011-01-01 Joel Brobecker <brobecker@adacore.com>
Copyright year update in most files (performed by copyright.sh).
Jan Kratochvil [Wed, 18 Apr 2012 07:03:58 +0000 (07:03 +0000)]
gdb/doc/
* gdb.texinfo (Auto-loading verbose mode): Fix smallexample typo.
Jan Kratochvil [Wed, 18 Apr 2012 07:00:24 +0000 (07:00 +0000)]
Fix up comment to match reality.
Jan Kratochvil [Wed, 18 Apr 2012 06:52:33 +0000 (06:52 +0000)]
gdb/
Fix 64-bit constants on 32-bit hosts.
* dwarf2read.c (read_unsigned_leb128): Change declaration return type
from unsigned long to ULONGEST.
(read_signed_leb128): Change declaration return type from long to
LONGEST.
(dwarf2_const_value_attr): Change declaration parameter value from long
to LONGEST.
(dwarf2_compute_name): Change variable value from long to LONGEST.
(read_unsigned_leb128): Change return type, variable result and some
casts from unsigned long to ULONGEST.
(read_signed_leb128): Change return type, variable result and some
casts from long to LONGEST.
(dwarf2_const_value_data, dwarf2_const_value_attr): Change parameter
value from long to LONGEST.
(dwarf2_const_value): Change variable value from long to LONGEST.
* symmisc.c (print_symbol): Change SYMBOL_VALUE format strings to use
plongest and hex_string.
* symtab.h (struct general_symbol_info): Change ivalue from long to
LONGEST, remove the comment.
* tracepoint.c (validate_actionline, collect_symbol, scope_info):
Change SYMBOL_VALUE format strings to use plongest and hex_string.
Jan Kratochvil [Wed, 18 Apr 2012 06:51:05 +0000 (06:51 +0000)]
Forgotten commit for:
gdb/testsuite/
PR symtab/7259:
* gdb.base/enumval.c: New test case.
* gdb.base/enumval.exp: New test case.
Jan Kratochvil [Wed, 18 Apr 2012 06:46:47 +0000 (06:46 +0000)]
gdb/
PR symtab/7259:
* ada-exp.y (convert_char_literal): Use TYPE_FIELD_ENUMVAL.
* ada-lang.c (ada_discrete_type_high_bound)
(ada_discrete_type_low_bound): Use TYPE_FIELD_ENUMVAL for
TYPE_CODE_ENUM.
(ada_identical_enum_types_p): Use TYPE_FIELD_ENUMVAL.
(pos_atr, value_val_atr): Use TYPE_FIELD_ENUMVAL for TYPE_CODE_ENUM.
* ada-typeprint.c (print_enum_type): Change variable lastval to LONGEST.
Use TYPE_FIELD_ENUMVAL.
* ada-valprint.c (print_optional_low_bound, ada_print_scalar)
(ada_val_print_1): Use TYPE_FIELD_ENUMVAL for TYPE_CODE_ENUM.
* c-typeprint.c (c_type_print_base): Move variable lastval to inner
block, change it to LONGEST. Use TYPE_FIELD_ENUMVAL for
TYPE_CODE_ENUM.
* coffread.c (coff_read_enum_type): Use SET_FIELD_ENUMVAL.
* dwarf2read.c (process_enumeration_scope): Likewise.
* gdb-gdb.py (TypeFlagsPrinter): Use field.enumval instead of
field.bitpos.
(class StructMainTypePrettyPrinter): Support also
FIELD_LOC_KIND_ENUMVAL.
* gdbtypes.c (get_discrete_bounds): Use TYPE_FIELD_ENUMVAL for
TYPE_CODE_ENUM.
(recursive_dump_type): Use TYPE_FIELD_ENUMVAL for TYPE_CODE_ENUM.
(copy_type_recursive): Support also FIELD_LOC_KIND_ENUMVAL.
* gdbtypes.h (enum field_loc_kind): New FIELD_LOC_KIND_ENUMVAL.
(struct main_type.flds_bnds.fields.loc): Adjust bitpos comment. New
field enumval.
(struct main_type.flds_bnds.bields): Adjust loc_kind and bitsize to
accommodate enumval.
(struct call_site): Adjust loc_kind to accommodate enumval.
(FIELD_ENUMVAL, FIELD_ENUMVAL_LVAL, SET_FIELD_ENUMVAL)
(TYPE_FIELD_ENUMVAL): New macros.
* m2-typeprint.c (m2_enum): Use TYPE_FIELD_ENUMVAL.
* mdebugread.c (parse_symbol): Use TYPE_FIELD_ENUMVAL for
TYPE_CODE_ENUM.
* p-typeprint.c (pascal_type_print_base): Likewise.
* python/lib/gdb/printing.py (class FlagEnumerationPrinter): Use
enumval.
* python/lib/gdb/types.py (make_enum_dict): Likewise.
* python/py-type.c (convert_field): New variable addrstring. Use
TYPE_FIELD_ENUMVAL for TYPE_CODE_ENUM.
(check_types_equal): Support also FIELD_LOC_KIND_ENUMVAL.
* stabsread.c (read_enum_type): Use SET_FIELD_ENUMVAL.
* typepint.c (print_type_scalar): Use TYPE_FIELD_ENUMVAL for
TYPE_CODE_ENUM.
* valprint.c (generic_val_print): Likewise.
gdb/testsuite/
PR symtab/7259:
* gdb.base/enumval.c: New test case.
* gdb.base/enumval.exp: New test case.
* gdb.python/py-type.exp (test_enums): Use field.enumval instead of
field.bitpos.
Doug Evans [Wed, 18 Apr 2012 06:24:48 +0000 (06:24 +0000)]
* dwarf2read.c (lookup_signatured_type): Return NULL instead of 0.
Doug Evans [Wed, 18 Apr 2012 06:21:09 +0000 (06:21 +0000)]
* dwarf2read.c: Whitespace fixes.
(lookup_signatured_type): Tweak comment.
(get_die_type_at_offset): Fix comment.
Joel Brobecker [Wed, 18 Apr 2012 00:25:09 +0000 (00:25 +0000)]
pspace != NULL failed assertion on ppc-aix
This patch fixes the following problem:
% gdb foo
(gdb) b main
/[...]/progspace.c:216: internal-error: set_current_program_space: Assertion `pspace != NULL' failed.
A problem internal to GDB has been detected,
further debugging may prove unreliable.
Quit this debugging session? (y or n)
The problem happens when we try to get the program space from
a minimal symbol. For that, we go through the minimal symbol's
obj_section->objfile->pspace. But the minimal symbol's obj_section
is not set, and thus we somehow get a NULL program space. And
the reason why the obj_section is not set is because the XCOFF
reader did not pass the bfd_section when calling minsyms.c's
prim_record_minimal_symbol_and_info.
gdb/ChangeLog:
* xcoffread.c (xcoff_secnum_to_sections): New function.
(secnum_to_section, secnum_to_bfd_section): Reimplement
using xcoff_secnum_to_sections. Rename "secnum" parameter
into "n_scnum".
(RECORD_MINIMAL_SYMBOL): Delete.
(record_minimal_symbol): New function.
(scan_xcoff_symtab): Replace uses of RECORD_MINIMAL_SYMBOL
by call to record_minimal_symbol and set misc_func_recorded
to 1. Set last_csect_sec to the XCOFF section index instead
of GDB's section_offset index. Update calls to
prim_record_minimal_symbol_and_info to pass the BFD section
as well.
Joel Brobecker [Wed, 18 Apr 2012 00:24:57 +0000 (00:24 +0000)]
Unused local variables in xcoffread.c:read_xcoff_symtab
gdb/ChangeLog:
* xcoffread.c (read_xcoff_symtab): Delete variables
last_csect_val and last_csect_sec and associated code.
Alan Modra [Wed, 18 Apr 2012 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Wed, 18 Apr 2012 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
Kaz Kojima [Tue, 17 Apr 2012 21:58:51 +0000 (21:58 +0000)]
* elf32-sh.c (allocate_dynrelocs): Don't allocate dynamic
relocations when LE conversion happens on the IE tls symbol.
Doug Evans [Tue, 17 Apr 2012 21:24:47 +0000 (21:24 +0000)]
* cleanups.c (make_my_cleanup,make_my_cleanup2): Make static.
(discard_my_cleanups,save_my_cleanups,restore_my_cleanups): Ditto.
* cleanups.h (make_my_cleanup,make_my_cleanup2): Delete
(discard_my_cleanups,save_my_cleanups,restore_my_cleanups): Delete.
Doug Evans [Tue, 17 Apr 2012 21:13:20 +0000 (21:13 +0000)]
* cleanups.h: New file.
* cleanups.c: New file.
* Makefile.in (SFILES): Add cleanups.c.
(HFILES_NO_SRCDIR): Add cleanups.h.
(COMMON_OBS): Add cleanups.o.
* defs.h (struct cleanup): Moved to cleanups.h.
(do_cleanups,do_final_cleanups): Ditto.
(discard_cleanups,discard_final_cleanups): Ditto
(make_cleanup,make_cleanup_dtor,make_final_cleanup): Ditto.
(save_cleanups,save_final_cleanups): Ditto.
(restore_cleanups,restore_final_cleanups): Ditto.
(null_cleanup): Ditto.
(make_my_cleanup,make_my_cleanup2): Ditto.
(discard_my_cleanups,save_my_cleanups,restore_my_cleanups): Ditto.
* utils.c (cleanup_chain,final_cleanup_chain): Moved to cleanups.c.
(do_cleanups,do_final_cleanups): Ditto.
(discard_cleanups,discard_final_cleanups): Ditto
(make_cleanup,make_cleanup_dtor,make_final_cleanup): Ditto.
(save_cleanups,save_final_cleanups): Ditto.
(restore_cleanups,restore_final_cleanups): Ditto.
(null_cleanup): Ditto.
(make_my_cleanup,make_my_cleanup2): Ditto.
(discard_my_cleanups,save_my_cleanups,restore_my_cleanups): Ditto.
Doug Evans [Tue, 17 Apr 2012 20:48:20 +0000 (20:48 +0000)]
* utils.c (make_cleanup_freeargv): Use make_cleanup instead of
make_my_cleanup.
(make_cleanup_dyn_string_delete): Ditto.
(make_cleanup_ui_file_delete): Ditto.
(make_cleanup_ui_out_redirect_pop): Ditto.
(make_cleanup_free_section_addr_info): Ditto.
(make_cleanup_restore_integer): Ditto.
(make_cleanup_unpush_target): Ditto.
(make_cleanup_value_free_to_mark): Ditto.
(make_cleanup_value_free): Ditto.
(make_cleanup_free_so): Ditto.
Roland McGrath [Tue, 17 Apr 2012 19:53:19 +0000 (19:53 +0000)]
* elf64-x86-64.c (elf_x86_64_nacl_plt0_entry): Fix nop padding
so that 32-byte boundary is a proper instruction boundary.
Pedro Alves [Tue, 17 Apr 2012 17:43:11 +0000 (17:43 +0000)]
2012-04-17 Pedro Alves <palves@redhat.com>
* Makefile.in (site.exp): Make site.exp source
$srcdir/lib/append_gdb_boards_dir.exp.
* lib/append_gdb_boards_dir.exp: New file.
Jan Kratochvil [Tue, 17 Apr 2012 15:56:21 +0000 (15:56 +0000)]
gdb/
New option "set debug auto-load".
* NEWS: New commands "set debug auto-load" and "show debug auto-load".
* auto-load.c (debug_auto_load, show_debug_auto_load: New.
(auto_load_safe_path_vec_update)
(filename_is_in_auto_load_safe_path_vec): Call fprintf_unfiltered
if DEBUG_AUTO_LOAD.
(file_is_auto_load_safe): New parameters debug_fmt and ....
Call fprintf_unfiltered if DEBUG_AUTO_LOAD.
(source_gdb_script_for_objfile): Extend the file_is_auto_load_safe
caller by explanatory string.
(_initialize_auto_load): Register "set debug auto-load".
* auto-load.h (file_is_auto_load_safe): New parameters debug_fmt
and ....
* linux-thread-db.c (try_thread_db_load_from_pdir_1)
(try_thread_db_load_from_dir): Extend the file_is_auto_load_safe caller
by explanatory string.
* main.c (captured_main): Likewise.
* python/py-auto-load.c (gdbpy_load_auto_script_for_objfile)
(source_section_scripts): Likewise.
gdb/doc/
New option "set debug auto-load".
* gdb.texinfo (Auto-loading): New menu item for auto-load verbose mode.
(auto-load verbose mode): New node.
Jan Kratochvil [Tue, 17 Apr 2012 15:54:35 +0000 (15:54 +0000)]
gdb/
New option "set auto-load safe-path".
* NEWS: New commands "set auto-load safe-path"
and "show auto-load safe-path".
* auto-load.c: Include gdb_vecs.h, readline/tilde.h and completer.h.
(auto_load_safe_path, auto_load_safe_path_vec)
(auto_load_safe_path_vec_update, set_auto_load_safe_path)
(show_auto_load_safe_path, add_auto_load_safe_path, filename_is_in_dir)
(filename_is_in_auto_load_safe_path_vec, file_is_auto_load_safe): New.
(source_gdb_script_for_objfile): New variable is_safe. Call
file_is_auto_load_safe. Return if it is not.
(struct loaded_script): New field loaded.
(maybe_add_script): Add parameter loaded. Initialize SLOT with it.
(print_script): Use LOADED indicator instead of FULL_PATH. Change
output "Missing" to "No".
(_initialize_auto_load): New variable cmd. Initialize
auto_load_safe_path. Register "set auto-load safe-path",
"show auto-load safe-path" and "add-auto-load-safe-path".
* auto-load.h (maybe_add_script): Add parameter loaded.
(file_is_auto_load_safe): New declaration.
* config.in: Regenerate.
* configure: Regenerate.
* configure.ac: New parameters --with-auto-load-safe-path
and --without-auto-load-safe-path.
* linux-thread-db.c (try_thread_db_load_from_pdir_1)
(try_thread_db_load_from_dir): Check file_is_auto_load_safe first.
* main.c (captured_main): Check file_is_auto_load_safe for
LOCAL_GDBINIT.
* python/py-auto-load.c (gdbpy_load_auto_script_for_objfile): New
variable is_safe. Call file_is_auto_load_safe. Return if it is not.
(source_section_scripts): Call file_is_auto_load_safe. Return if it is
not.
gdb/doc/
New option "set auto-load safe-path".
* gdb.texinfo (Auto-loading): Extend the "show auto-load"
and "info auto-load" examples for safe-path. Put there also references
for "set auto-load safe-path" and "show auto-load safe-path".
New menu item for Auto-loading safe path.
(Auto-loading safe path): New node.
(Python Auto-loading): Update the expected output from "Missing"
to "No".
gdb/testsuite/
New option "set auto-load safe-path".
* gdb.python/py-objfile-script.exp (set auto-load safe-path): New.
* gdb.python/py-section-script.exp (set auto-load safe-path): New.
Jan Kratochvil [Tue, 17 Apr 2012 15:51:48 +0000 (15:51 +0000)]
gdb/
auto-load: Implementation.
* NEWS: New descriptions for "info auto-load",
"info auto-load gdb-scripts", "info auto-load python-scripts",
"info auto-load local-gdbinit" and "info auto-load libthread-db".
Deprecate "info auto-load-scripts", "set auto-load-scripts on|off"
and "show auto-load-scripts". New description for "set auto-load",
"show auto-load", "set auto-load gdb-scripts",
"show auto-load gdb-scripts", "set auto-load python-scripts",
"show auto-load python-scripts", "set auto-load local-gdbinit",
"show auto-load local-gdbinit", "set auto-load libthread-db" and
"show auto-load libthread-db".
* auto-load.c: Remove include python/python-internal.h. Add includes
exceptions.h, cli/cli-script.h, gdbcmd.h, cli/cli-decode.h and
cli/cli-setshow.h.
(GDB_AUTO_FILE_NAME, source_gdb_script_for_objfile)
(auto_load_gdb_scripts, show_auto_load_gdb_scripts): New.
(gdbpy_global_auto_load): Rename to ...
(global_auto_load): ... here.
(auto_load_local_gdbinit, auto_load_local_gdbinit_pathname)
(auto_load_local_gdbinit_loaded, show_auto_load_local_gdbinit)
(script_language_gdb, source_gdb_script_for_objfile): New.
(struct loaded_script): New field language.
(hash_loaded_script_entry, eq_loaded_script_entry): Calculate also
LANGUAGE.
(maybe_add_script): Add parameter language. Drop redundant
entry.full_path initialization. Initialize entry.language and
(*slot)->language.
(auto_load_objfile_script): Change parameter suffix to language.
Remove the call of maybe_add_script.
Call language->source_script_for_objfile.
(load_auto_scripts_for_objfile, struct collect_matching_scripts_data):
New.
(collect_matching_scripts): Adjust it for
struct collect_matching_scripts_data.
(auto_load_info_scripts_pattern_nl): New variable.
(info_auto_load_scripts): Rename to ...
(auto_load_info_scripts): ... here, add parameter language. Adjust it
for struct collect_matching_scripts_data.
(info_auto_load_gdb_scripts, info_auto_load_local_gdbinit)
(set_auto_load_cmd, auto_load_set_cmdlist_get, show_auto_load_cmd)
(auto_load_show_cmdlist_get, info_auto_load_cmd)
(auto_load_info_cmdlist_get): New.
(_initialize_auto_load): Move add_info of "auto-load-scripts" to
python/py-auto-load.c. New installment for "set auto-load gdb-scripts",
"info auto-load gdb-scripts", "set auto-load local-gdbinit" and
"info auto-load local-gdbinit".
* auto-load.h (struct script_language): New.
(gdbpy_global_auto_load): Rename to ...
(global_auto_load): ... here.
(auto_load_local_gdbinit, auto_load_local_gdbinit_pathname)
(auto_load_local_gdbinit_loaded): New declarations.
(maybe_add_script): New parameter language.
(auto_load_objfile_script): Change parameter suffix to language.
(load_auto_scripts_for_objfile, auto_load_info_scripts_pattern_nl)
(auto_load_info_scripts, auto_load_set_cmdlist_get)
(auto_load_show_cmdlist_get, auto_load_info_cmdlist_get): New
declarations.
* linux-thread-db.c: Include auto-load.h and ctype.h.
(auto_load_thread_db, show_auto_load_thread_db): New.
(struct thread_db_info): New field filename.
(delete_thread_db_info): Call xfree for FILENAME.
(try_thread_db_load): Initialize FILENAME.
(try_thread_db_load_from_pdir, try_thread_db_load_from_dir): Return
if !AUTO_LOAD_THREAD_DB.
(info_auto_load_libthread_db_compare, info_auto_load_libthread_db): New.
(_initialize_thread_db): Install auto_load_thread_db
as "set auto-load libthread-db" and install info_auto_load_libthread_db
as "info auto-load libthread-db".
* main.c (captured_main): Rename gdbpy_global_auto_load to
global_auto_load. Initialize AUTO_LOAD_LOCAL_GDBINIT_PATHNAME and
AUTO_LOAD_LOCAL_GDBINIT_LOADED.
(print_gdb_help): Extend the help for 'local init file'.
* python/py-auto-load.c: Remove a comment about gdb scripts extension.
(GDBPY_AUTO_SECTION_NAME): Extend the comment it is Python specific.
(auto_load_scripts): Rename to ...
(auto_load_python_scripts): ... here, update the comment.
(gdbpy_load_auto_script_for_objfile): New declaration.
(show_auto_load_python_scripts, script_language_python)
(gdbpy_load_auto_script_for_objfile): New.
(source_section_scripts): Refactor the code.
(load_auto_scripts_for_objfile): Rename to ...
(gdbpy_load_auto_scripts_for_objfile): ... here, update the
auto_load_objfile_script caller, drop GDBPY_GLOBAL_AUTO_LOAD checking.
(info_auto_load_python_scripts): New.
(gdbpy_initialize_auto_load): New variables cmd and cmd_name.
Rename "set auto-load-scripts" to "set auto-load python-scripts".
Register "set auto-load-scripts" as its deprecated alias. Register
"info auto-load python-scripts". Register "info auto-load-scripts" as
its deprecated alias.
(load_auto_scripts_for_objfile): Rename to ...
(gdbpy_load_auto_scripts_for_objfile): ... here.
* python/python.h (load_auto_scripts_for_objfile): Rename to ...
(gdbpy_load_auto_scripts_for_objfile): ... here.
gdb/doc/
auto-load: Implementation.
* gdb.texinfo (Mode Options): New anchor for -nx.
(Startup): New anchors for Option -init-eval-command,
Home Directory Init File
and Init File in the Current Directory during Startup.
Mention set auto-load local-gdbinit with a reference.
Change the sample code to "set auto-load python-scripts".
(Threads): New anchor set libthread-db-search-path.
Provide references to libthread_db.so.1 file.
(Controlling GDB): New menu item for Auto-loading.
(Auto-loading, Init File in the Current Directory)
(libthread_db.so.1 file, objfile-gdb.gdb file): New nodes.
(Python): Rename the menu item Auto-loading to Python Auto-loading.
(Writing a Pretty-Printer, Objfiles In Python): Update the renamed
reference.
(Auto-loading): Rename to ...
(Python Auto-loading): ... here. Change "set auto-load-scripts" to
"set auto-load python-scripts", new anchor for it. Change
"show auto-load-scripts" to "show auto-load python-scripts", new anchor
for it. Change "info auto-load-scripts"
to "info auto-load python-scripts", new anchor for it. Change "scripts"
to "Python scripts".
gdb/testsuite/
auto-load: Implementation.
* gdb.base/help.exp (test set height): Increase the height.
* gdb.python/py-objfile-script.exp (info auto-load-scripts): Change
to ...
(info auto-load python-scripts): ... here.
* gdb.python/py-section-script.exp (info auto-load-scripts *): Change
to ...
(info auto-load python-scripts *): ... here.
Jan Kratochvil [Tue, 17 Apr 2012 15:49:16 +0000 (15:49 +0000)]
gdb/
auto-load: Move files.
* Makefile.in (SFILES): Add auto-load.c.
(HFILES_NO_SRCDIR): Add auto-load.h.
(COMMON_OBS): Add auto-load.o.
(distclean): Change .gdbinit for gdb-gdb.gdb.
* auto-load.c: New file, with parts from python/py-auto-load.c.
* auto-load.h: New file, with parts from python/python.h.
* configure: Regenerate.
* configure.ac (AC_OUTPUT): Change .gdbinit for gdb-gdb.gdb.
* gdb-gdb.gdb.in: New file, renamed from gdbinit.in.
* gdbinit.in: Remove file, rename it to gdb-gdb.gdb.in.
* main.c: Include auto-load.h.
* python/py-auto-load.c: Move include filenames.h, gdb_regex.h,
command.h, observer.h and progspace.h to auto-load.c. Add include
auto-load.h.
(gdbpy_global_auto_load, struct auto_load_pspace_info)
(struct loaded_script, auto_load_pspace_data)
(auto_load_pspace_data_cleanup, get_auto_load_pspace_data)
(hash_loaded_script_entry, eq_loaded_script_entry)
(init_loaded_scripts_info, get_auto_load_pspace_data_for_loading)
(maybe_add_script): Move to auto-load.c.
(source_section_scripts): Change maybe_add_script parameters passing,
use script_not_found_warning_print.
(clear_section_scripts, auto_load_objfile_script)
(auto_load_new_objfile, loaded_script_ptr)
(DEF_VEC_P (loaded_script_ptr), collect_matching_scripts, print_script)
(sort_scripts_by_name, info_auto_load_scripts): Move to auto-load.c.
(gdbpy_initialize_auto_load): Move auto_load_pspace_data,
auto_load_new_objfile and info_auto_load_scripts initizations to
auto-load.c.
* python/python.h (gdbpy_global_auto_load): Move to auto-load.h.
Jan Kratochvil [Tue, 17 Apr 2012 15:47:09 +0000 (15:47 +0000)]
gdb/
Code cleanup.
* charset.c (find_charset_names): Remove variables ix and elt.
Use free_char_ptr_vec.
* elfread.c (build_id_to_debug_filename): New variables debugdir_vec,
back_to and ix. Use dirnames_to_char_ptr_vec. Remove variable
debugdir_end. New variable debugdir_len.
* gdb_vecs.h (free_char_ptr_vec, make_cleanup_free_char_ptr_vec)
(dirnames_to_char_ptr_vec_append, dirnames_to_char_ptr_vec): New
declarations.
* progspace.c (clear_program_space_solib_cache): Remove variables ix
and elt. Use free_char_ptr_vec.
* source.c (add_path): Remove variables argv, arg and argv_index.
New variables dir_vec, back_to, ix and name.
Use dirnames_to_char_ptr_vec_append. Use freeargv instead of
make_cleanup_freeargv. Remove variable separator. Simplify the code
no longer expecting DIRNAME_SEPARATOR.
(openp): Remove variable p, p1 and len. New variables dir_vec,
back_to, ix and dir. Use dirnames_to_char_ptr_vec. Simplify the code
no longer expecting DIRNAME_SEPARATOR.
* symfile.c (find_separate_debug_file): New variables debugdir_vec,
back_to and ix. Use dirnames_to_char_ptr_vec. Remove variable
debugdir_end.
* utils.c (free_char_ptr_vec, do_free_char_ptr_vec)
(make_cleanup_free_char_ptr_vec, dirnames_to_char_ptr_vec_append)
(dirnames_to_char_ptr_vec): New functions.
Jan Kratochvil [Tue, 17 Apr 2012 15:45:12 +0000 (15:45 +0000)]
gdb/
Code cleanup.
* source.c (add_path): Remove always true conditional 'p == 0' and
unindent its code block.
Richard Sandiford [Tue, 17 Apr 2012 13:59:41 +0000 (13:59 +0000)]
gas/
* config/tc-avr.c (md_apply_fix): Fix handling of BFD_RELOC32.
Pedro Alves [Tue, 17 Apr 2012 13:55:32 +0000 (13:55 +0000)]
2012-04-17 Pedro Alves <palves@redhat.com>
* gdbtypes.h (FIELD_BITPOS): Rename to ...
(FIELD_BITPOS_LVAL): ... this.
(FIELD_BITPOS): New.
(SET_FIELD_BITPOS): Adjust to use FIELD_BITPOS_LVAL.
* dwarf2read.c (dwarf2_add_field): Use SET_FIELD_BITPOS.
* gdbtypes.c (append_composite_type_field_aligned): Adjust to use
SET_FIELD_BITPOS.
* gnu-v3-abi.c (build_gdb_vtable_type): Adjust to use
SET_FIELD_BITPOS.
* stabsread.c (read_cpp_abbrev, read_one_struct_field)
(read_baseclasses): Adjust to use SET_FIELD_BITPOS.
* target-descriptions.c (tdesc_gdb_type): Adjust to use
SET_FIELD_BITPOS.
Jan Kratochvil [Tue, 17 Apr 2012 12:43:20 +0000 (12:43 +0000)]
gdb/
Do not rely on FIELD_LOC_KIND_BITPOS being zero.
* ada-lang.c (ada_template_to_fixed_record_type_1): Replace
TYPE_FIELD_BITPOS used as lvalue by SET_FIELD_BITPOS.
* gdbtypes.c (append_flags_type_flag): Likewise, twice.
* jv-lang.c (java_link_class_type): Likewise, once.
* stabsread.c (read_enum_type): Likewise.
Tristan Gingold [Tue, 17 Apr 2012 10:51:07 +0000 (10:51 +0000)]
2012-04-17 Tristan Gingold <gingold@adacore.com>
* vms-lib.c (_bfd_vms_lib_get_module): Append .obj extension to
member of an object archive.<
Tristan Gingold [Tue, 17 Apr 2012 10:28:19 +0000 (10:28 +0000)]
2012-04-17 Tristan Gingold <gingold@adacore.com>
* vms-lib.c (MAX_EKEYLEN): Define.
(MAX_KEYLEN): Fix value.
(vms_write_index): Add comments and fix indentation.
Adjust comparaison. Add assertions. Free kbn_blk.
(_bfd_vms_lib_write_archive_contents): Use MAX_EKEYLEN.
Compense MAX_KEYLEN adjustment.
David S. Miller [Tue, 17 Apr 2012 02:29:46 +0000 (02:29 +0000)]
gold: Add support for sparc GOTDATA optimizations in Gold.
gold/
* sparc.cc (Target_sparc::got_address): New function.
(Sparc_relocate_functions::gdop_hix22): New function.
(Sparc_relocate_functions::gdop_lox10): New function.
(Target_sparc::Scan::local): Do not emit a GOT entry for GOTDATA
relocs.
(Target_sparc::Scan::local): Likewise if the global symbol is not
preemptible and is not IFUNC.
(Target_sparc::Relocate::relocate): Perform GOTDATA code
transformations for local and non-preemptible non-IFUNC global
symbols.
David S. Miller [Tue, 17 Apr 2012 02:10:39 +0000 (02:10 +0000)]
gold: Fix 64-bit sparc GOLD crash in gdb-index code.
gold/
* gdb-index.cc (Gdb_index::do_write): Use Swap_unaligned when
writing out 64-bit part of ranges.
David S. Miller [Tue, 17 Apr 2012 02:09:42 +0000 (02:09 +0000)]
gold: Build Gold IFUNC tests with -fPIC/-fPIE instead of -fpic/-fpie.
gold/
* Makefile.am: Build IFUNC tests with -fPIC and -fPIE instead of
-fpic and -fpie respectively.
* Makefile.in: Regenerate.
David S. Miller [Tue, 17 Apr 2012 01:57:23 +0000 (01:57 +0000)]
gold: Add sparc IFUNC support to Gold.
elfcpp/
* sparc.h (R_SPARC_JMP_IREL): New relocation.
gold/
* sparc.cc (class Target_sparc): Add rela_ifunc_.
(Target_sparc::Target_sparc): Initialize new field.
(Target_sparc::do_plt_section_for_global): New function.
(Target_sparc::do_plt_section_for_local): New function.
(Target_sparc::reloc_needs_plt_for_ifunc): New function.
(Target_sparc::make_plt_section): New function, broken out of
make_plt_entry. Use ORDER_NON_RELRO_FIRST for ".plt".
(Target_sparc::make_plt_entry): Call make_plt_section.
(Target_sparc::make_local_ifunc_plt_entry): New function.
(Target_sparc::rela_ifunc_section): New function.
(Target_sparc::plt_section): Remove const.
(Output_data_plt_sparc): Update declarations. Define Global_ifunc
and Local_ifunc types. Add global_ifuncs_, local_ifuncs_, ifunc_rel_,
and ifunc_count_ fields.
(Output_data_plt_sparc::Output_data_plt_sparc): Initialize new fields.
(Output_data_plt_sparc::add_entry): Handle IFUNC symbols.
(Output_data_plt_sparc::add_local_ifunc_entry): New function.
(Output_data_plt_sparc::rela_ifunc): New function.
(Output_data_plt_sparc::emit_pending_ifunc_relocs): New function.
(Output_data_plt_sparc::has_ifunc_section): New function.
(Output_data_plt_sparc::entry_count): Include ifunc_count_.
(Output_data_plt_sparc::address_for_global): New function.
(Output_data_plt_sparc::address_for_local): New function.
(Output_data_plt_sparc::plt_index_to_offset): New function.
(Output_data_plt_sparc::set_final_data_size): Use plt_index_to_offset
and entry_count.
(Output_data_plt_sparc::do_write): Use first_plt_entry_offset and
entry_count.
(Target_sparc::Scan::get_reference_flags): Add R_SPARC_IRELATIVE and
R_SPARC_JMP_IREL to switch.
(Target_sparc::Scan::check_non_pic): Likewise.
(Target_sparc::Scan::local): Handle IFUNC symbols.
(Target_sparc::Scan::local): Likewise.
(Target_sparc::Relocate::relocate): Likewise, use plt_address_for_global
and plt_address_for_local.
(Target_sparc::do_finalize_sections): Call emit_pending_ifunc_relocs.
Define __rel_iplt_start and __rel_iplt_end if doing a static link.
David S. Miller [Tue, 17 Apr 2012 01:50:39 +0000 (01:50 +0000)]
gold: Allow use_plt_offset to be specified for global relocations.
gold/
* output.h (Output_reloc): Allow use_plt_offset for global relocs too.
(class Output_data_reloc): Adjust calls to Output_reloc_type.
(Output_data_reloc::add_global_relative): (RELA only) Add use_plt_offset.
* output.cc (Output_reloc::Output_reloc): Add use_plt_offset flag for
global relocs too.
(Output_reloc::symbol_value): Respect use_plt_offset_ for global symbols.
* powerpc.cc (Target_powerpc::Scan::global): Adjust add_global_relative
calls.
* sparc.cc (Target_sparc::Scan::global): Likewise.
* x86_64.cc (Target_x86_64::Scan::global): Likewise.
Cary Coutant [Tue, 17 Apr 2012 00:28:41 +0000 (00:28 +0000)]
* archive.cc (Library_base::should_include_member): Check for
--export-dynamic-symbol.
* options.h (class General_options): Add --export-dynamic-symbol.
* symtab.cc (Symbol::should_add_dynsym_entry): Check for
--export-dynamic-symbol.
(Symbol_table::gc_mark_undef_symbols): Likewise.
(Symbol_table::do_add_undefined_symbols_from_command_line): Likewise.
gdbadmin [Tue, 17 Apr 2012 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Tue, 17 Apr 2012 00:00:05 +0000 (00:00 +0000)]
daily update
Yao Qi [Mon, 16 Apr 2012 15:38:53 +0000 (15:38 +0000)]
gdb/gdbserver/
* tracepoint.c (cmd_qtstart): Download tracepoints even when they are
duplicated on address.
Maciej W. Rozycki [Mon, 16 Apr 2012 11:45:56 +0000 (11:45 +0000)]
* elfxx-mips.c (mips16_stub_symndx): Handle n64 compound relocs.
(_bfd_mips_elf_check_relocs): Update accordingly.
Yao Qi [Mon, 16 Apr 2012 11:29:08 +0000 (11:29 +0000)]
gdb/testsuite/
* lib/trace-support.exp (get_in_proc_agent): New.
* gdb.trace/change-loc.exp: Call get_in_proc_agent to get the location
of in process trace agent.
* gdb.trace/ftrace.exp: Likewise.
* gdb.trace/pending.exp: Likewise.
* gdb.trace/trace-break.exp: Likewise.
* gdb.trace/trace-mt.exp
* gdb.trace/tspeed.exp: Likewise.
* gdb.trace/tstatus.exp
* gdb.trace/strace.exp: Likewise.
Yao Qi [Mon, 16 Apr 2012 11:24:47 +0000 (11:24 +0000)]
gdb/
* common/agent.c (agent_run_command): Add one more parameter `len'.
Update callers.
* common/agent.h: Update declaration.
* linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
Update.
(linux_child_static_tracepoint_markers_by_strid): Ditto.
gdb/gdbserver/
* tracepoint.c (COPY_FIELD_TO_BUF): New macro.
(struct tracepoint_action_ops) <send>: New field.
(m_tracepoint_action_send, r_tracepoint_action_send): New.
(agent_expr_send, x_tracepoint_action_send): New.
(l_tracepoint_action_send): New.
(cmd_qtdp): Download and install tracepoint
according to `use_agent'.
(run_inferior_command): Add one more parameter `len'.
Update callers.
(tracepoint_send_agent): New.
(cmd_qtdp, cmd_qtstart): Call tracepoint_send_agent.
Yao Qi [Mon, 16 Apr 2012 11:16:30 +0000 (11:16 +0000)]
gdb/gdbserver/
* tracepoint.c (download_tracepoints): Moved to ...
(cmd_qtstart): ... here.
Thomas Schwinge [Mon, 16 Apr 2012 08:02:09 +0000 (08:02 +0000)]
gdb/testsuite/
* gdb.asm/sh.inc (gdbasm_startup): Only set up the stack pointer if the
symbol _stack is defined. Get rid of a hard-coded constant for _stack.
Thomas Schwinge [Mon, 16 Apr 2012 07:59:51 +0000 (07:59 +0000)]
gdb/testsuite/
* gdb.asm/sh.inc (gdbasm_end) <.size>: Refer to the function's name.
gdbadmin [Mon, 16 Apr 2012 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Mon, 16 Apr 2012 00:00:04 +0000 (00:00 +0000)]
daily update
gdbadmin [Sun, 15 Apr 2012 00:00:32 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sun, 15 Apr 2012 00:00:06 +0000 (00:00 +0000)]
daily update
Anton Gorenkov [Sat, 14 Apr 2012 12:18:50 +0000 (12:18 +0000)]
gdb/doc/ChangeLog:
2012-04-14 Anton Gorenkov <xgsa@yandex.ru>
PR mi/13393
* gdb.texinfo (Print Settings): Extend the description for "set print
object".
(GDB/MI Variable Objects): Extend the description for -var-create and
-var-list-children.
gdb/testsuite/ChangeLog:
2012-04-14 Anton Gorenkov <xgsa@yandex.ru>
PR mi/13393
* gdb.mi/mi-var-rtti.cc: New file.
* gdb.mi/mi-var-rtti.exp: New file.
* lib/mi-support.exp (mi_varobj_update_with_child_type_change): New
function.
(mi_varobj_update_with_type_change): updated to avoid code duplication.
gdb/ChangeLog:
2012-04-14 Anton Gorenkov <xgsa@yandex.ru>
PR mi/13393
* value.c (value_actual_type): New function.
* value.h (value_actual_type): New declaration.
* varobj.c (update_type_if_necessary): New function.
(varobj_create): Call value_actual_type instead of
value_type.
(install_dynamic_child): distinct changed and type changed MI variable
objects.
(update_dynamic_varobj_children): Updated for install_dynamic_child
change. All callers updated.
(varobj_update): Support for MI variable object type change if
the value changed and RTTI is used to determine the type.
(create_child_with_value): Call value_actual_type instead of
value_type.
(adjust_value_for_child_access): Extended with a new parameter which
specify whether the given value should be casted to enclosing type.
All callers updated.
Yao Qi [Sat, 14 Apr 2012 05:36:24 +0000 (05:36 +0000)]
gdb/gdbserver/
* tracepoint.c: Include inttypes.h.
(struct collect_memory_action): Use sized types.
(struct tracepoint): Likewise.
(cmd_qtdp, stop_tracing): Update print specifiers.
(cmd_qtp, response_tracepoint): Likewise.
(collect_data_at_tracepoint): Likewise.
(collect_data_at_step): Likewise.
Yao Qi [Sat, 14 Apr 2012 05:24:57 +0000 (05:24 +0000)]
gdb/
Import gnulib module inttypes from git
(
250b80067c1e1d8faa0c42fb572f721975b929c5)
* Makefile.in (HFILES_NO_SRCDIR): Add gnulib/inttypes.in.h.
(aclocal_m4_deps): Add gnulib/m4/inttypes.m4 and gnulib/m4/inttypes-pri.m4
* aclocal.m4, config.in, configure: Regenerated.
* gnulib/Makefile.am: Update.
* gnulib/Makefile.in: Update.
* gnulib/m4/gnulib-cache.m4: Update.
* gnulib/m4/gnulib-comp.m4: Update.
* gnulib/inttypes.in.h: New.
* gnulib/m4/inttypes-pri.m4: New.
* gnulib/m4/inttypes.m4: New.
gdb/gdbserver/
Import gnulib module inttypes.
* aclocal.m4, config.in, configure: Regenerated.
Yao Qi [Sat, 14 Apr 2012 04:14:04 +0000 (04:14 +0000)]
gdb/gdbserver/
* Makefile.in (maintainer-clean, realclean, distclean): Remove
Makefile and config.status at last.
Yao Qi [Sat, 14 Apr 2012 04:10:04 +0000 (04:10 +0000)]
gdb/gdbserver/
* tracepoint.c: Include stdint.h unconditionally.
gdbadmin [Sat, 14 Apr 2012 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sat, 14 Apr 2012 00:00:05 +0000 (00:00 +0000)]
daily update
H.J. Lu [Fri, 13 Apr 2012 23:20:00 +0000 (23:20 +0000)]
Set reloc_count to 0 for reloc sections
bfd/
2012-04-13 Alan Modra <amodra@gmail.com>
PR ld/13947
* elflink.c (bfd_elf_final_link): Set reloc_count to 0 for
reloc sections.
ld/testsuite/
2012-04-13 H.J. Lu <hongjiu.lu@intel.com>
PR ld/13947
* ld-x86-64/x86-64.exp: Run pr13947.
* ld-x86-64/pr13947.d: New file.
* ld-x86-64/pr13947.s: Likewise.
Luis Machado [Fri, 13 Apr 2012 20:46:42 +0000 (20:46 +0000)]
2012-04-13 Luis Machado <lgustavo@codesourcery.com>
* infrun.c (resume): Update PC address to the real PC after
preparing to do displaced stepping.
Thiago Jung Bauermann [Fri, 13 Apr 2012 19:56:05 +0000 (19:56 +0000)]
* acinclude.m4 (GDBSERVER_HAVE_THREAD_DB_TYPE): New macro based
on BFD_HAVE_SYS_PROCFS_TYPE.
* configure.ac: Look for lwpid_t and psaddr_t in libthread_db.h.
* configure: Regenerate.
* config.in: Likewise.
Roland McGrath [Fri, 13 Apr 2012 16:33:53 +0000 (16:33 +0000)]
* ld-arm/arm-elf.exp (armelftests_common): Move cases using
mixed-lib.so to ...
(armelftests_nonacl): ... here.
H.J. Lu [Fri, 13 Apr 2012 14:39:41 +0000 (14:39 +0000)]
Enable x32 support in gdbserver
* Makefile.in (clean): Also remove x32.c x32-linux.c
x32-avx.c x32-avx-linux.c.
(x32.o): New target.
(x32.c): Likewise.
(x32-linux.o): Likewise.
(x32-linux.c): Likewise.
(x32-avx.o): Likewise.
(x32-avx.c): Likewise.
(x32-avx-linux.o): Likewise.
(x32-avx-linux.c): Likewise.
* configure.srv (srv_amd64_regobj): Add x32.o x32-avx.o.
(srv_amd64_linux_regobj): Add x32-linux.o x32-avx-linux.o.
(srv_i386_64bit_xmlfiles): Add i386/x32-core.xml.
(srv_amd64_xmlfiles): Add i386/x32.xml i386/x32-avx.xml.
(srv_amd64_linux_xmlfiles): Add i386/x32-linux.xml
i386/x32-avx-linux.xml.
* linux-x86-low.c (init_registers_x32_linux): New prototype.
(init_registers_x32_avx_linux): Likwise.
(x86_linux_update_xmltarget): Call init_registers_x32_linux
or init_registers_x32_avx_linux if linux_is_elf64 is false.
Pedro Alves [Fri, 13 Apr 2012 13:12:33 +0000 (13:12 +0000)]
2012-04-13 Pedro Alves <palves@redhat.com>
* Makefile.in (GNULIB_FLAGS_TO_PASS): New.
(FLAGS_TO_PASS): Don't change or set $top_srcdir, $srcdir and VPATH.
(all, uninstall, clean-info, all-lib, clean, maintainer-clean)
(realclean, distclean): Explicitly pass $GNULIB_FLAGS_TO_PASS to
the sub-make.
H.J. Lu [Fri, 13 Apr 2012 02:52:34 +0000 (02:52 +0000)]
Don't generate empty reloc sections
binutils/
PR binutils/13947
* objcopy.c (copy_object): Call copy_relocations_in_section
before copy_section.
(skip_section): New.
(copy_relocations_in_section): Likewise.
(copy_section): Use skip_section. Don't copy relocations here.
binutils/testsuite/
PR binutils/13947
* binutils-all/i386/compressed-1b.d: Remove empty REL section.
* binutils-all/i386/compressed-1c.d: Likewise.
* binutils-all/x86-64/compressed-1b.d: Remove empty RELA
section.
* binutils-all/x86-64/compressed-1c.d: Likewise.
Doug Evans [Fri, 13 Apr 2012 02:03:21 +0000 (02:03 +0000)]
* dwarf2read.c (lookup_signatured_type): Remove arg "objfile", unused.
All callers updated.
Alan Modra [Fri, 13 Apr 2012 00:00:06 +0000 (00:00 +0000)]
daily update
gdbadmin [Fri, 13 Apr 2012 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
H.J. Lu [Thu, 12 Apr 2012 21:06:12 +0000 (21:06 +0000)]
Convert siginfo for x32 in gdbserver
* linux-x86-low.c (compat_x32_clock_t): New.
(compat_x32_siginfo_t): Likewise.
(compat_x32_siginfo_from_siginfo): Likewise.
(siginfo_from_compat_x32_siginfo): Likewise.
(linux_is_elf64): Likewise.
(x86_siginfo_fixup): Call compat_x32_siginfo_from_siginfo
and siginfo_from_compat_x32_siginfo for x32.
(x86_arch_setup): Set linux_is_elf64.
David S. Miller [Thu, 12 Apr 2012 16:26:06 +0000 (16:26 +0000)]
Support R_SPARC_WDISP10 and R_SPARC_H34.
include/
* elf/sparc.h (R_SPARC_WDISP10): New reloc.
* opcode/sparc.h: Define '=' as generating R_SPARC_WDISP10.
opcodes/
* sparc-dis.c (X_DISP10): Define.
(print_insn_sparc): Handle '='.
bfd/
* reloc.c (BFD_RELOC_SPARC_H34, BFD_RELOC_SPARC_SIZE32,
BFD_RELOC_SPARC_SIZE64, BFD_RELOC_SPARC_WDISP10): New relocs.
* libbfd.h: Regenerate.
* bfd-in2.h: Likewise.
* elfxx-sparc.c (sparc_elf_wdisp10_reloc): New function.
(_bfd_sparc_elf_howto_table): Add entries for R_SPARC_H34,
R_SPARC_SIZE32, R_SPARC_64, and R_SPARC_WDISP10.
(_bfd_sparc_elf_reloc_type_lookup): Handle new relocs.
(_bfd_sparc_elf_check_relocs): Likewise.
(_bfd_sparc_elf_gc_sweep_hook): Likewise.
(_bfd_sparc_elf_relocate_section): Likewise.
gas/
* config/tc-sparc.c (sparc_ip): Handle '=', "%h34", "%l34", and
BFD_RELOC_SPARC_H34.
(md_apply_fix): Handle BFD_RELOC_SPARC_WDISP10 and BFD_RELOC_SPARC_H34.
(tc_gen_reloc): Likewise.
gas/testsuite/
* gas/sparc/reloc64.s: Add abs34 code model tests.
* gas/sparc/reloc64.d: Update.
elfcpp/
* sparc.h (R_SPARC_WDISP10): New relocation.
gold/
* sparc.cc (Reloc::wdisp10): New relocation method.
(Reloc::h34): Likewise.
(Target_sparc::Scan::check_non_pic): Handle R_SPARC_H34.
(Target_sparc::Scan::get_reference_flags): Handle R_SPARC_H34 and
R_SPARC_WDISP10.
(Target_sparc::Scan::local): Likewise.
(Target_sparc::Scan::global): Likewise.
(Target_sparc::Relocate::relocate): Likewise.
H.J. Lu [Thu, 12 Apr 2012 15:35:32 +0000 (15:35 +0000)]
Check if GDBserver is compatible with process
PR gdb/13969
* linux-low.c (linux_pid_exe_is_elf_64_file): Also return the
e_machine field.
(linux_qxfer_libraries_svr4): Update call to elf_64_file_p.
* linux-low.h (linux_pid_exe_is_elf_64_file): Updated.
* linux-x86-low.c (x86_arch_setup): Check if GDBserver is
compatible with process.
Nick Clifton [Thu, 12 Apr 2012 13:01:15 +0000 (13:01 +0000)]
* elf32-arm.c (elf32_arm_nacl_plt0_entry, elf32_arm_nacl_plt_entry):
New variables.
(struct elf32_arm_link_hash_table): New member `nacl_p'.
(elf32_arm_link_hash_table_create): Initialize it.
(elf32_arm_nacl_link_hash_table_create): New function.
(arm_movw_immediate, arm_movt_immediate): New functions.
(elf32_arm_populate_plt_entry): Test HTAB->nacl_p.
(elf32_arm_finish_dynamic_sections): Likewise.
(elf32_arm_output_plt_map_1): Likewise.
(bfd_elf32_littlearm_nacl_vec, bfd_elf32_bigarm_nacl_vec):
New backend vector stanza.
(elf32_arm_nacl_modify_segment_map): New function.
* config.bfd: Handle arm-*-nacl*, armeb-*-nacl*.
* targets.c: Support bfd_elf32_{big,little}_nacl_vec.
* configure.in: Likewise.
(bfd_elf32_bigarm_nacl_vec): Add elf-nacl.lo here.
(bfd_elf32_littlearm_nacl_vec): Likewise.
(bfd_elf32_bigarm_vec, bfd_elf32_littlearm_vec): Likewise.
(bfd_elf32_bigarm_symbian_vec): Likewise.
(bfd_elf32_littlearm_symbian_vec): Likewise.
(bfd_elf32_bigarm_vxworks_vec): Likewise.
(bfd_elf32_littlearm_vxworks_vec): Likewise.
* configure: Regenerated.
* configure.tgt (arm-*-nacl*): Match it.
* config/te-nacl.h (FPU_DEFAULT, EABI_DEFAULT): Define.
(LOCAL_LABELS_DOLLAR): Define.
* config/tc-arm.c (elf32_arm_target_format) [TE_NACL]:
Use nacl format variants.
* gas/elf/elf.exp (run_elf_list_test): Treat arm-*-nacl* targets
as -armeabi.
* gas/arm/any-idiv.d: Match *-*-nacl* targets too.
* gas/arm/arch4t.d: Likewise.
* gas/arm/arch4t-eabi.d: Likewise.
* gas/arm/attr-any-armv4t.d: Likewise.
* gas/arm/attr-any-thumbv6.d: Likewise.
* gas/arm/attr-cpu-directive.d: Likewise.
* gas/arm/attr-default.d: Likewise.
* gas/arm/attr-march-all.d: Likewise.
* gas/arm/attr-march-armv1.d: Likewise.
* gas/arm/attr-march-armv2a.d: Likewise.
* gas/arm/attr-march-armv2.d: Likewise.
* gas/arm/attr-march-armv2s.d: Likewise.
* gas/arm/attr-march-armv3.d: Likewise.
* gas/arm/attr-march-armv3m.d: Likewise.
* gas/arm/attr-march-armv4.d: Likewise.
* gas/arm/attr-march-armv4t.d: Likewise.
* gas/arm/attr-march-armv4txm.d: Likewise.
* gas/arm/attr-march-armv4xm.d: Likewise.
* gas/arm/attr-march-armv5.d: Likewise.
* gas/arm/attr-march-armv5t.d: Likewise.
* gas/arm/attr-march-armv5te.d: Likewise.
* gas/arm/attr-march-armv5tej.d: Likewise.
* gas/arm/attr-march-armv5texp.d: Likewise.
* gas/arm/attr-march-armv5txm.d: Likewise.
* gas/arm/attr-march-armv6.d: Likewise.
* gas/arm/attr-march-armv6j.d: Likewise.
* gas/arm/attr-march-armv6k.d: Likewise.
* gas/arm/attr-march-armv6k+sec.d: Likewise.
* gas/arm/attr-march-armv6kt2.d: Likewise.
* gas/arm/attr-march-armv6-m.d: Likewise.
* gas/arm/attr-march-armv6-m+os.d: Likewise.
* gas/arm/attr-march-armv6s-m.d: Likewise.
* gas/arm/attr-march-armv6t2.d: Likewise.
* gas/arm/attr-march-armv6z.d: Likewise.
* gas/arm/attr-march-armv6zk.d: Likewise.
* gas/arm/attr-march-armv6zkt2.d: Likewise.
* gas/arm/attr-march-armv6zt2.d: Likewise.
* gas/arm/attr-march-armv7-a.d: Likewise.
* gas/arm/attr-march-armv7a.d: Likewise.
* gas/arm/attr-march-armv7-a+idiv.d: Likewise.
* gas/arm/attr-march-armv7-a+mp.d: Likewise.
* gas/arm/attr-march-armv7-a+sec.d: Likewise.
* gas/arm/attr-march-armv7-a+sec+virt.d: Likewise.
* gas/arm/attr-march-armv7-a+virt.d: Likewise.
* gas/arm/attr-march-armv7.d: Likewise.
* gas/arm/attr-march-armv7em.d: Likewise.
* gas/arm/attr-march-armv7-m.d: Likewise.
* gas/arm/attr-march-armv7m.d: Likewise.
* gas/arm/attr-march-armv7-r.d: Likewise.
* gas/arm/attr-march-armv7r.d: Likewise.
* gas/arm/attr-march-armv7-r+mp.d: Likewise.
* gas/arm/attr-march-iwmmxt2.d: Likewise.
* gas/arm/attr-march-iwmmxt.d: Likewise.
* gas/arm/attr-march-xscale.d: Likewise.
* gas/arm/attr-mcpu.d: Likewise.
* gas/arm/attr-mfpu-arm1020e.d: Likewise.
* gas/arm/attr-mfpu-arm1020t.d: Likewise.
* gas/arm/attr-mfpu-arm1136jf-s.d: Likewise.
* gas/arm/attr-mfpu-arm1136jfs.d: Likewise.
* gas/arm/attr-mfpu-arm7500fe.d: Likewise.
* gas/arm/attr-mfpu-fpa10.d: Likewise.
* gas/arm/attr-mfpu-fpa11.d: Likewise.
* gas/arm/attr-mfpu-fpa.d: Likewise.
* gas/arm/attr-mfpu-fpe2.d: Likewise.
* gas/arm/attr-mfpu-fpe3.d: Likewise.
* gas/arm/attr-mfpu-fpe.d: Likewise.
* gas/arm/attr-mfpu-maverick.d: Likewise.
* gas/arm/attr-mfpu-neon.d: Likewise.
* gas/arm/attr-mfpu-neon-fp16.d: Likewise.
* gas/arm/attr-mfpu-softfpa.d: Likewise.
* gas/arm/attr-mfpu-softvfp.d: Likewise.
* gas/arm/attr-mfpu-softvfp+vfp.d: Likewise.
* gas/arm/attr-mfpu-vfp10.d: Likewise.
* gas/arm/attr-mfpu-vfp10-r0.d: Likewise.
* gas/arm/attr-mfpu-vfp3.d: Likewise.
* gas/arm/attr-mfpu-vfp9.d: Likewise.
* gas/arm/attr-mfpu-vfp.d: Likewise.
* gas/arm/attr-mfpu-vfpv2.d: Likewise.
* gas/arm/attr-mfpu-vfpv3-d16.d: Likewise.
* gas/arm/attr-mfpu-vfpv3.d: Likewise.
* gas/arm/attr-mfpu-vfpv4-d16.d: Likewise.
* gas/arm/attr-mfpu-vfpv4.d: Likewise.
* gas/arm/attr-mfpu-vfpxd.d: Likewise.
* gas/arm/attr-names.d: Likewise.
* gas/arm/attr-order.d: Likewise.
* gas/arm/attr-override-cpu-directive.d: Likewise.
* gas/arm/attr-override-mcpu.d: Likewise.
* gas/arm/got_prel.d: Likewise.
* gas/arm/mapdir.d: Likewise.
* gas/arm/mapmisc.d: Likewise.
* gas/arm/mapsecs.d: Likewise.
* gas/arm/mapshort-eabi.d: Likewise.
* gas/arm/mapshort-elf.d: Likewise.
* gas/arm/mov-highregs-any.d: Likewise.
* gas/arm/mov-lowregs-any.d: Likewise.
* gas/arm/pr12198-1.d: Likewise.
* gas/arm/pr12198-2.d: Likewise.
* gas/arm/thumb.d: Likewise.
* gas/arm/thumb-eabi.d: Likewise.
* gas/arm/thumbrel.d: Likewise.
* configure.tgt (arm*-*-nacl*, arm*b-*-nacl*): Handle them.
* emulparams/armelf_nacl.sh: New file.
* emulparams/armelfb_nacl.sh: New file.
* Makefile.am (ALL_EMULATION_SOURCES): Add earmelf_nacl.c
and earmelfb_nacl.c here.
(earmelf_nacl.c, earmelfb_nacl.c): New targets.
* Makefile.in: Regenerated.
* ld-arm/arm-elf.exp (armelftests): Split out into ...
(armelftests_common, armelftests_nonacl): ... these two.
(armeabitests): Split out into ...
(armeabitests_common, armeabitests_nonacl): ... these two.
Omit _nonacl sets for arm*-*-nacl* targets.
* ld-arm/farcall-mix.d: Don't match exact addresses, only symbolic ones.
* ld-arm/farcall-mix2.d: Likewise.
* ld-arm/farcall-group.d: Likewise.
* ld-arm/tls-gdesc-got.d: Match variant file formats too.
Accept some variation in exact addresses.
* ld-arm/thumb2-b-interwork.d: Match variant file formats too.
Fix regexps not to care about exact addresses where not relevant.
* ld-arm/thumb2-bl-undefweak.d: Match any hex strings, not any
strings of particular exact lengths.
* ld-arm/thumb2-bl-undefweak1.d: Likewise.
* ld-arm/arm-app.r: Match variant file formats too.
* ld-arm/arm-app-abs32.r: Likewise.
* ld-arm/arm-lib.d: Likewise.
* ld-arm/arm-lib.r: Likewise.
* ld-arm/arm-static-app.r: Likewise.
* ld-arm/armv4-bx.d: Likewise.
* ld-arm/data-only-map.d: Likewise.
* ld-arm/group-relocs.d: Likewise.
* ld-arm/jump19.d: Likewise.
* ld-arm/reloc-boundaries.d: Likewise.
* ld-arm/thumb1-bl.d: Likewise.
* ld-arm/thumb2-bl.d: Likewise.
* ld-arm/tls-app.d: Likewise.
* ld-arm/tls-app.r: Likewise.
* ld-arm/tls-gdierelax.d: Likewise.
* ld-arm/tls-gdierelax2.d: Likewise.
* ld-arm/tls-gdlerelax.d: Likewise.
* ld-arm/tls-lib.d: Likewise.
* ld-arm/tls-lib.r: Likewise.
* ld-arm/tls-mixed.r: Likewise.
* ld-arm/vfp11-fix-none.d: Likewise.
* ld-arm/vfp11-fix-scalar.d: Likewise.
* ld-arm/vfp11-fix-vector.d: Likewise.
* ld-arm/arm-static-app.d: Likewise.
Fix regexps not to care about exact number of leading spaces.
* ld-arm/arm-app-abs32.d: Likewise.
* ld-arm/fix-arm1176-off.d: Likewise.
* ld-arm/fix-arm1176-on.d: Likewise.
* ld-arm/arm-elf.exp: Treat nacl targets like eabi targets.
Yao Qi [Thu, 12 Apr 2012 11:11:01 +0000 (11:11 +0000)]
gdb/gdbserver/
* Makefile.in: Define abs_top_srcdir and abs_srcdir.
(INCLUDE_CFLAGS): Append GNULIB_INCLUDE_DIR.
(install-only, install-info, clean): Handle sub dir gnulib.
(all-lib, am--refresh): New targets.
(memmem.o): Remove target.
* configure.ac: Remove AC_CONFIG_LIBOBJ_DIR.
Invoke gl_EARLY. Invoke AC_CHECK_PROGS for make.
(AC_REPLACE_FUNCS): Remove memmem.
Invoke gl_INIT and AM_INIT_AUTOMAKE.
(AC_OUTPUT): Generate Makefile in gnulib/.
* aclocal.m4, config.in, configure: Regenerated.
Mark Kettenis [Thu, 12 Apr 2012 10:32:23 +0000 (10:32 +0000)]
* i386bsd-nat.c (_initialize_i386bsd_nat): Add missing prototype.
Nick Clifton [Thu, 12 Apr 2012 07:47:36 +0000 (07:47 +0000)]
oops - omitted from previous delta
Nick Clifton [Thu, 12 Apr 2012 07:46:54 +0000 (07:46 +0000)]
* config/tc-arm.c (only_one_reg_in_list): New function.
(encode_ldmstm): Ditto.
(do_ldmstm): Use a different encoding when pushing or poping
a single register.
(A_COND_MASK): New macro.
(A_PUSH_POP_OP_MASK): Ditto.
(A1_OPCODE_PUSH): Ditto.
(A2_OPCODE_PUSH): Ditto.
(A2_OPCODE_POP): Ditto.
* gas/arm/push-pop.d: New testcase.
* gas/arm/push-pop.s: Ditto.
* gas/arm/stm-ldm.d: Ditto.
* gas/arm/stm-ldm.s: Ditto.
Nick Clifton [Thu, 12 Apr 2012 07:35:07 +0000 (07:35 +0000)]
* configure.ac (ia64*-*-*vms*): Add support for ld.
* configure: Regenerate.
* scripttempl/ia64vms.sc: New file.
* emultempl/vms.em (_before_parse): Support for ia64.
(elf64-ia64-vms): New fragment for ia64.
* emulparams/elf64_ia64_vms.sh: New file.
* configure.tgt (ia64-*-*vms*): Add.
* Makefile.am (ALL_64_EMULATION_SOURCES): Add eelf64_ia64_vms.c
(eelf64_ia64_vms.c): New rule.
* Makefile.in: Regenerate.
* elflink.c (elf_link_output_extsym): Add a guard.
(bfd_elf_final_link): Remove assertion.
(bfd_elf_final_link): Add a guard.
* elfnn-ia64.c (INCLUDE_IA64_VMS): Removed.
(elfNN_vms_section_from_shdr, elfNN_vms_object_p)
(elfNN_vms_post_process_headers, elfNN_vms_section_processing)
(elfNN_vms_final_write_processing, elfNN_vms_close_and_cleanup):
Remove.
(elfNN-ia64-vms target): Move to ...
* elf64-ia64-vms.c: New file.
* configure.in (bfd_elf64_ia64_vms_vec): Add elf64-ia64-vms.lo
* Makefile.am (BFD64_BACKENDS): Add elf64-ia64-vms.lo.
(BFD64_BACKENDS_CFILES): Ad elf64-ia64-vms.c.
* configure: Regenerate.
* Makefile.in: Regenerate.
Mike Frysinger [Thu, 12 Apr 2012 05:33:15 +0000 (05:33 +0000)]
gdb: add callback defines for new ARGV handling
The common sim code has slightly unfinished support for these already,
but even arch ports are unable to handle these if the common header does
not define them. This is because the generated callback header includes
simple common gdb/sim headers only which causes it to skip the new ARGV
syscalls. Plus, it isn't like providing these in the common header will
break any sim targets which don't want them.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Doug Evans [Thu, 12 Apr 2012 02:09:14 +0000 (02:09 +0000)]
* dwarf2read.c (create_all_type_units): Renamed from
create_debug_types_hash_table. All callers updated.
Doug Evans [Thu, 12 Apr 2012 01:39:22 +0000 (01:39 +0000)]
* dwarf2read.c (create_signatured_type_table_from_index): Rename
local type_sig to sig_type, type_offset to type_offset_in_tu.
(hash_signatured_type): Renamed from hash_type_signature,
all callers updated.
(eq_signatured_type): Renamed from eq_type_signature,
all callers updated.
(create_debug_types_hash_table): Rename local type_sig to sig_type.
(process_enumeration_scope): Ditto.
(lookup_signatured_type_at_offset): Ditto.
(load_full_type_unit, read_signatured_type): Ditto.
Yao Qi [Thu, 12 Apr 2012 00:56:05 +0000 (00:56 +0000)]
gdb/
* remote.c (async_remote_interrupt): Correct function name in
debug message.
(async_remote_interrupt_twice): Ditto.
Alan Modra [Thu, 12 Apr 2012 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Thu, 12 Apr 2012 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
Doug Evans [Wed, 11 Apr 2012 18:37:14 +0000 (18:37 +0000)]
* source.c (find_and_open_source): Consistently pass resulting
full path through xfullpath.
Jan Kratochvil [Wed, 11 Apr 2012 16:58:57 +0000 (16:58 +0000)]
gdb/
Provide more specific displaced-stepping memory error message.
* infrun.c (displaced_step_prepare): New variable status. Call
target_read_memory instead of read_memory, provide more specific
error message.
Nick Clifton [Wed, 11 Apr 2012 14:16:09 +0000 (14:16 +0000)]
PR binutils/13897
* elf64-ppc.c (opd_entry_value): When dealing with sections
without relocs, keep the last section loaded in order to avoid
unnecessary reloads.
Nick Clifton [Wed, 11 Apr 2012 14:05:30 +0000 (14:05 +0000)]
* objdump.c (dump_bfd): If defaulting to dwarf call
dwarf_select_sections_all to enable displays.