Commit Graph

25694 Commits

Author SHA1 Message Date
Joel Brobecker f80d3ff275 Use XVS field type instead of doing a parallel lookup.
* ada-lang.c (ada_get_base_type): Follow the XVS field type
        if it is a reference type instead of doing a type lookup using
        the XVS field name.
2010-01-18 10:26:02 +00:00
Joel Brobecker 5bf03f1387 Trust PAD types instead of using PAD___XVS.
* ada-lang.c (trust_pad_over_xvs): New static variable.
        (ada_is_aligner_type): If !trust_pad_over_xvs and there is a
        parallel XVS type, follow the XVS type instead of the PAD type.
        (unwrap_value): Make sure that there is no parallel XVE type
        before returning the value as is.
        (set_ada_list, show_ada_list): New static variables.
        (set_ada_command, show_ada_command): New functions.
        (_initialize_ada_language): Add new "set/show ada" prefix commands.
        Add new "set/show ada trust-PAD-over-XVS" setting.
2010-01-18 10:24:26 +00:00
Joel Brobecker 9e14a9ba25 * gdb.python/source2.py: New file.
* gdb.python/source1: New file.
        * gdb.python/python.exp: Test "source" command.
2010-01-18 06:31:24 +00:00
Joel Brobecker 8150ff9c32 * gdb.texinfo (File Options): Document -x on .py files.
(Command Files): Document handling of Python scripts.
2010-01-18 06:28:47 +00:00
Joel Brobecker 973817a313 Allow "source" to load python scripts.
* exceptions.h (enum errors): Add UNSUPPORTED_ERROR.
        * python/python.c (source_python_script): New function.
        * python/python.h (source_python_script): Add declaration.
        * cli/cli-cmds.c: #include exceptions.h and python/python.h.
        (script_ext_off, script_ext_soft, script_ext_strict)
        (script_ext_enums, script_ext_mode): New static constants.
        (show_script_ext_mode, find_and_open_script): New functions.
        (source_script): Enhance to handle Python scripts.
        (init_cli_cmds): Add set/show script-extension commands.
2010-01-18 06:25:22 +00:00
Jie Zhang 23db03a605 * Makefile.in (ANNOTATE_DOC_BUILD_INCLUDES): Add GDBvn.texi. 2010-01-18 04:26:44 +00:00
gdbadmin e58f325669 *** empty log message *** 2010-01-18 00:00:33 +00:00
gdbadmin 7858ce0e88 *** empty log message *** 2010-01-17 00:00:03 +00:00
Stan Shebs 98e0326221 2010-01-16 Stan Shebs <stan@codesourcery.com>
* tracepoint.h (struct trace_status): Use unsigned long long
	instead of size_t.
	* tracepoint.c (trace_status_command): Fix printf directive.
	(trace_save_command): Check fwrite returns, fix printf directive.
	(trace_filename): New global.
	(tfile_open): Set it, check read returns.
	(tfile_close): Free trace_filename.
	(tfile_get_traceframe_address): Check read returns.
	(tfile_trace_find): Ditto.
	(tfile_fetch_registers): Ditto.
	(tfile_xfer_partial): Ditto.
	(tfile_get_trace_state_variable_value): Ditto.
2010-01-16 23:15:11 +00:00
gdbadmin 8b2f0051ba *** empty log message *** 2010-01-16 00:00:33 +00:00
Stan Shebs 00bf0b8586 Add trace file support.
* tracepoint.h (enum trace_stop_reason): New enum.
	(struct trace_status): New struct.
	(parse_trace_status): Declare.
	(struct uploaded_tp): Move here from remote.c,
	add fields for actions.
	(struct uploaded_tsv): New struct.
	* tracepoint.c (tfile_ops): New target vector.
	(trace_fd): New global.
	(tfile_open): New function.
	(tfile_close): New function.
	(tfile_files_info): New function.
	(tfile_get_trace_status): New function.
	(tfile_get_traceframe_address): New function.
	(tfile_trace_find): New function.
	(tfile_fetch_registers): New function.
	(tfile_xfer_partial): New function.
	(tfile_get_trace_state_variable_value): New function.
	(init_tfile_ops): New function.
	(_initialize_tracepoint): Call it, add tfile target.
	(trace_status): New global.
	(current_trace_status): New function.
	(trace_running_p): Remove, change all users to get from
	current_trace_status()->running.
	(get_trace_status): Remove.
	(trace_status_command): Call target_get_trace_status directly,
	report more detail including tracing stop reasons.
	(trace_find_command): Always allow tfind on a file.
	(trace_find_pc_command): Ditto.
	(trace_find_tracepoint_command): Ditto.
	(trace_find_line_command): Ditto.
	(trace_find_range_command): Ditto.
	(trace_find_outside_command): Ditto.
	(trace_frames_offset, cur_offset): Declare as off_t.
	(trace_regblock_size): Rename from reg_size, update users.
	(parse_trace_status): New function.
	(tfile_interp_line): New function.
	(disconnect_or_stop_tracing): Ensure current trace
	status before asking what to do.
	(stop_reason_names): New global.
	(trace_save_command): New command.
	(get_uploaded_tp): Move here from remote.c.
	(find_matching_tracepoint): Ditto.
	(merge_uploaded_tracepoints): New function.
	(parse_trace_status): Use stop_reason_names.
	(_initialize_tracepoint): Define tsave command.
	* target.h (target_ops): New fields to_save_trace_data,
	to_upload_tracepoints, to_upload_trace_state_variables,
	to_get_raw_trace_data, change to_get_trace_status
	to take a pointer to a status struct.
	(target_save_trace_data): New macro.
	(target_upload_tracepoints): New macro.
	(target_upload_trace_state_variables): New macro.
	(target_get_raw_trace_data): New macro.
	* target.c (update_current_target): Add new methods, change
	signature of to_get_trace_status.
	* remote.c (hex2bin): Make globally visible.
	(bin2hex): Ditto.
	(remote_download_trace_state_variable): Download name also.
	(remote_get_trace_status): Update parameter, use
	parse_trace_status.
	(remote_save_trace_data): New function.
	(remote_upload_tracepoints): New function.
	(remote_upload_trace_state_variables): New function.
	(remote_get_raw_trace_data): New function.
	(remote_start_remote): Use them.
	(_initialize_remote_ops): Add operations.
	* ax-gdb.c: Include breakpoint.h.
	* breakpoint.c (create_tracepoint_from_upload): Use
	break_command_really, return tracepoint, warn about unimplemented
	parts.
	* NEWS: Mention trace file addition.

	* gdb.texinfo (Trace Files): New section.
	(Tracepoint Packets): Document QTSave and qTBuffer.
	(Trace File Format): New appendix.

	* generic/gdbtk-bp.c (gdb_trace_status): Use current_trace_status.

	* gdb.trace/tfile.c: New file.
	* gdb.trace/tfile.exp: New file.
2010-01-15 22:37:20 +00:00
Jan Kratochvil d904de5b3d gdb/
Fix compilation warning on gcc-3.4.
	* exec.c (print_section_info): Move the `displacement' variable
	initialization to its declaration.
2010-01-15 21:33:18 +00:00
Jan Kratochvil 64aa97315d gdb/
* gdb-gdb.py (StructMainTypePrettyPrinter): Fix TYPE_CODE_RANGE
	comparison.
2010-01-15 19:22:40 +00:00
Joel Brobecker ca1f5def24 Fix the patch author in the last entry. OOoops! 2010-01-15 12:14:26 +00:00
Joel Brobecker 9f0dec2d11 "info tasks" broken by typedefs in ATCB type definitions.
* ada-lang.c (ada_template_to_fixed_record_type_1): Add call to
        ada_check_typedef before retrieving the length of the type for
        regular fields.
2010-01-15 12:11:21 +00:00
Joel Brobecker 12ab9e09fa Do not use name-based lookup for unconstrained packed arrays.
* ada-lang.c (find_parallel_type_by_descriptive_type):
        Limit the fallback to name-based lookups to the case where
        the type is a constrained packed array.
2010-01-15 12:07:04 +00:00
Joel Brobecker c389c3dc73 Enhance gdb-gdb.py to handle main_type.type_specific.
* gdb-gdb.py: Print the type-specific part of struct main_type.
2010-01-15 09:15:46 +00:00
Jan Kratochvil 7991dee782 gdb/
* configure.ac (AC_CHECK_FUNCS): Check for setrlimit and getrlimit.
	* configure: Regenerate.
	* config.in: Regenerate.
	* utils.c: Include sys/resource.h.
	(dump_core, can_dump_core): New.
	(internal_vproblem): Update the comment.  Check can_dump_core while
	setting dump_core_p.  Replace two abort calls by dump_core calls.
2010-01-15 00:34:37 +00:00
gdbadmin de95008062 *** empty log message *** 2010-01-15 00:00:33 +00:00
Jan Kratochvil 93c26624a7 gdb/
* NEWS: Document the PIE support.
2010-01-14 21:24:05 +00:00
Jan Kratochvil 55235ad790 gdb/
* linux-tdep.c: Remove includes gdbcore.h, observer.h and elf-bfd.h.
	(check_is_pie_binary, _initialize_linux_tdep): Remove.

gdb/testsuite/
	* gdb.base/pie-support.exp, gdb.base/pie-support.c: Remove.
2010-01-14 21:20:12 +00:00
Jan Kratochvil 4175219298 gdb/
* solib-svr4.c (svr4_exec_displacement): New comment for entry_point.
	Replace exec_entry_point call by bfd_get_start_address.
2010-01-14 21:16:52 +00:00
Jan Kratochvil 9f2982ff0b gdb/
Support Valgrind attachments broken by the PIE support.
	* auxv.c: Include gdbcore.h.
	(procfs_xfer_auxv): Make static.  Reduce its comment.  Drop its
	parameters ops, object and annex.  Remove their assertions.
	(ld_so_xfer_auxv, memory_xfer_auxv): New function.
	* auxv.h (procfs_xfer_auxv): Remove comment.  Rename to ...
	(memory_xfer_auxv): ... here.
	* linux-nat.c (linux_xfer_partial): Rename procfs_xfer_auxv to
	memory_xfer_auxv.
	* procfs.c (procfs_xfer_partial): Likewise.
	* solib-svr4.c (svr4_relocate_main_executable): New prototype.
	(svr4_special_symbol_handling): Call svr4_relocate_main_executable.
	(svr4_solib_create_inferior_hook): Conditionalize the
	svr4_relocate_main_executable call.

gdb/testsuite/
	* gdb.base/valgrind-db-attach.exp, gdb.base/valgrind-db-attach.c: New.
2010-01-14 21:15:00 +00:00
Jan Kratochvil bbfba9ed15 gdb/testsuite/
* gdb.base/break-interp-lib.c: Include unistd.h, assert.h and stdio.h.
	(libfunc): New parameter action.  Implement also selectable "sleep".
	* gdb.base/break-interp-main.c: Include assert.h.
	(libfunc): New parameter action.
	(main): New parameters argc and argv.  Assert argc.  Pass argv.
	* gdb.base/break-interp.exp (test_core): Pass the "segv" argument.
	(test_attach): New proc.
	(test_ld): Pass new "segv" exec parameter.  Call also test_attach.
	* lib/gdb.exp (core_find): New parameter arg.  Pass it to $binfile.
2010-01-14 21:12:00 +00:00
Jan Kratochvil 61f0d76280 gdb/
* solib-svr4.c (scan_dyntag): Remove variable dyn_addr.  New variable
	target_section.  Find SECT in current_target_sections, gdb_assert it.
	(elf_lookup_lib_symbol): Pass the binary file if given symfile_objfile.
	New variable abfd.
	* symtab.c (lookup_objfile_from_block): Return the binary file instead
	of separate debug info file.

gdb/testsuite/
	* gdb.base/break-interp.exp (test_core): New proc.
	(test_ld): Call it.
2010-01-14 21:09:05 +00:00
Jan Kratochvil 06a6f27066 gdb/testsuite/
* gdb.base/break-interp-main.c, gdb.base/break-interp-lib.c: New.
	* gdb.base/break-interp.exp: Exit on skip_shlib_tests.  Change $srcfile.
	New variables $binfile_lib and $srcfile_lib.  Call get_compiler_info
	and gdb_compile_shlib.  Use new -Wl compiler options.
	(dl bt, main bt): New tests.
2010-01-14 21:04:53 +00:00
Jan Kratochvil 51bee8e9b7 gdb/
Support PIEs with no symfile_objfile.
	* exec.c (print_section_info <abfd == exec_bfd>): Relocate Entry point.
	* solib-svr4.c (svr4_relocate_main_executable <exec_bfd>): New block.

gdb/testsuite/
	Support PIEs with no symfile_objfile.
	* gdb.base/break-interp.exp: New argument at the test_ld calls.
	(test_ld): New parameter trynosym.
	(test_ld <$trynosym>): New block.
2010-01-14 21:01:25 +00:00
Jan Kratochvil b8040f198c gdb/
* solib-svr4.c (svr4_relocate_main_executable): Move the static exec
	code part to ...
	(svr4_static_exec_displacement): ... a new function.
	(svr4_exec_displacement): New function.
	(svr4_relocate_main_executable): Call svr4_exec_displacement.  Allocate
	new_offsets using alloca now.  Remove variable old_chain and changed.
	Call objfile_relocate unconditionally now.

gdb/testsuite/
	* gdb.base/break-interp.exp: New file.
2010-01-14 20:48:26 +00:00
Doug Evans eb90ce8316 * gdbtypes.c (arch_flags_type): Fix comment.
* gdbtypes.h (arch_composite_type): Fix comment.
2010-01-14 18:58:57 +00:00
Tristan Gingold bdfed3bc1e 2009-01-14 Tristan Gingold <gingold@adacore.com>
* machoread.c (macho_add_oso_symfile): Add symfile_flags parameter.
	Call xstrdup for abfd->filename.  Pass symfile_flags and objfile flags
	to symbol_file_add_from_bfd.  Add OSO as separate objfile.
	(macho_oso_symfile): Add symfile_flags parameter.  Pass it to
	macho_add_oso_symfile.
	(macho_symfile_read): Pass symfile_flags to macho_oso_symfile.
2010-01-14 12:47:44 +00:00
Joel Brobecker 1596ad2368 Tru64: Dead threads are never deleted.
* dec-thread.c (dec_thread_ptid_is_alive): New function.
        (dec_thread_count_gdb_threads): Fix counter increment.
        (dec_thread_add_gdb_thread): Fix *listp increment.
        (resync_thread_list): Fix bug in deletion of dead threads that
        caused all threads to be deleted, instead of just the dead ones.
2010-01-14 09:26:50 +00:00
Phil Muldoon be759fcf73 2010-01-13 Phil Muldoon <pmuldoon@redhat.com>
PR python/10705

	* python/python-internal.h: Add lazy_string_object_type
	definition.
	(create_lazy_string_object, gdbpy_initialize_lazy_string)
	(gdbpy_is_lazystring, gdbpy_extract_lazy_string): Define.
	* python/py-value.c (valpy_lazy_string): New function.
	(convert_value_from_python): Add lazy string conversion.
	* python/py-prettyprint.c (pretty_print_one_value): Check if
	return is also a lazy string.
	(print_string_repr): Add lazy string printing branch.
	(print_children): Likewise.
	* python/py-lazy-string.c: New file. Implement lazy strings.
	* python/python.c (_initialize_python): Call
	gdbpy_initialize_lazy_string.
	* varobj.c (value_get_print_value): Add lazy string printing
	branch.  Account for encoding.
	* c-lang.c (c_printstr): Account for new encoding argument.  If
	encoding is NULL, find encoding suited for type, otherwise use
	user encoding.
	* language.h (language_defn): Add encoding argument.
	(LA_PRINT_STRING): Likewise.
	* language.c (unk_lang_printstr): Update to reflect new encoding
	argument to language_defn.
	* ada-lang.h (ada_printstr): Likewise.
	* c-lang.h (c_printstr): Likewise.
	* p-lang.h (pascal_printstr);
	* f-lang.c (f_printstr): Likewise.
	* m2-lang.c (m2_printstr): Likewise.
	* objc-lang.c (objc_printstr): Likewise.
	* p-lang.c (pascal_printstr): Likewise.
	* scm-lang.c (scm_printstr): Likewise.
	* c-valprint.c (c_val_print): Update LA_PRINT_STRING call for
	encoding argument.
	* ada-valprint.c (ada_printstr): Likewise.
	* f-valprint.c (f_val_print): Likewise
	* m2-valprint.c (m2_val_print): Likewise.
	* p-valprint.c (pascal_val_print): Likewise.
	* expprint.c (print_subexp_standard): Likewise.
	* valprint.c (val_print_string): Likewise.
	* Makefile.in (SUBDIR_PYTHON_OBS): Add py-lazy-string.
	(SUBDIR_PYTHON_SRCS): Likewise.
	(py-lazy-string.o): New rule.

2010-01-13  Phil Muldoon  <pmuldoon@redhat.com>

	* gdb.texinfo (Values From Inferior): Document lazy_string value
	method.
	(Python API): Add Lazy strings menu item.
	(Lazy Strings In Python): New node.

2010-01-13  Phil Muldoon  <pmuldoon@redhat.com>

	* gdb.python/py-value.exp (test_lazy_strings): Add lazy string test.
	* gdb.python/py-prettyprint.py (pp_ls): New printer.
	* gdb.python/py-prettyprint.exp (run_lang_tests): Add lazy string
	test.
	* gdb.python/py-prettyprint.c: Define lazystring test structure.
	* gdb.python/py-mi.exp: Add lazy string test.
2010-01-14 08:03:37 +00:00
gdbadmin cbe13f1d2e *** empty log message *** 2010-01-14 00:00:05 +00:00
Vladimir Prus bc1f282304 add missing file 2010-01-13 05:20:49 +00:00
gdbadmin a8506f49f7 *** empty log message *** 2010-01-13 00:00:03 +00:00
Doug Evans 1fe72117e3 tweak previous entry to keep chronology right
(different timezones made the day off by one)
2010-01-12 23:07:37 +00:00
Doug Evans 8eee9c5a6f * mi/mi-main.c (list_available_thread_groups): Avoid "may be used
uninitialized" warning from gcc on local `tree'.
2010-01-12 23:05:52 +00:00
Vladimir Prus dc146f7c09 Implement core awareness.
* bcache.c (compare_ints): Remove
	(print_percentage): Use compare_positive_ints.
	* defs.h (compare_positive_ints): Declare.
	* linux-nat.h (struct lin_lwp): New field core.
	(linux_nat_core_of_thread_1): Declare.
	* linux-nat.c (add_lwp): Init the 'core' field.
	(linux_nat_wait_1): Record the core.
	(linux_nat_core_of_thread_1, linux_nat_core_of_thread): New.
	(linux_nat_add_target): Register the above.
	* linux-thread-db.c (update_thread_core): New.
	(thread_db_find_new_threads): Update core information for
	every thread.
	* remote.c (struct private_thread_info): New.
	(free_private_thread_info, demand_private_info): New.
	(PACKET_qXfer_threads, use_osdata_threads): New.
	(struct thread_item, threads_parsing_context
	(start_thread, end_thread, thread_attributes)
	(thread_children, threads_children, threads_elements): New.
	(remote_threads_info): Try qXfer:threads before anything
	else.
	(remote_protocol_packets): Register qXfer:threads.
	(remote_open_1): Init use_osdata_threads.
	(struct stop_reply): New field 'core'.
	(remote_parse_stop_reply): Parse core number.
	(process_stop_reply): Record core number.
	(remote_xfer_partial): Handle qXfer:threads.
	(remote_core_of_thread): New.
	(init_remote_ops): Register remote_core_of_thread.
	(_initialize_remote): Register qXfer:read.
	* target.c (target_core_of_thread): New
	* target.h (enum target_object): New value TARGET_OBJECT_THREADS.
	(struct target_ops): New field to_core_of_threads.
	(target_core_of_thread): Declare.
	* gdbthread.h (struct thread_info): New field private_dtor.
	* thread.c (print_thread_info): Report the core.
	* ui-out.c (MAX_UI_OUT_LEVELS): Increase.
	* utils.c (compare_positive_ints): New.
	* features/threads.dtd: New.
	* mi/mi-interp.c (mi_on_normal_stop): Report the core.
	* mi/mi-main.c (struct collect_cores_data, collect_cores)
	(do_nothing, free_vector_of_osdata_items)
	(splay_tree_int_comparator, free_splay_tree): New.
	(print_one_inferior_data): Implemented printing of selected
	inferiors.  Collect and print cores.
	(output_cores): New.
	(mi_cmd_list_thread_groups): Support --recurse.  Permit specifying
	thread groups together with --available.
2010-01-12 21:40:25 +00:00
Jan Kratochvil d30c533689 gdb/
* configure: Regenerate (for _STRUCTURED_PROC).
2010-01-12 12:22:52 +00:00
Joel Brobecker 02893727c5 Delete dead function.
* ada-lang.c (extract_string): Delete.  No longer used.
2010-01-12 08:50:44 +00:00
Joel Brobecker 46ed2d6ff0 Fix -Wunused warning in dec-thread.c.
* dec-thread.c (dec_thread_count_gdb_threads)
        (dec_thread_add_gdb_thread): Prevent -Wunused warning.
2010-01-12 07:51:09 +00:00
Joel Brobecker 606b8d1a46 * ada-valprint.c (ada_print_floating): Remove trailing space. 2010-01-12 07:45:51 +00:00
Joel Brobecker b4ba55a181 gdb/ChangeLog:
Add support for DW_AT_GNAT_descriptive_type.
        * gdbtypes.h (enum type_specific_kind): New enum.
        (struct main_type) [type_specific_field]: New component.
        [type_specific]: Add new component "gnat_stuff".
        (struct gnat_aux_type): New type.
        (INIT_CPLUS_SPECIFIC): Also set TYPE_SPECIFIC_FIELD (type).
        (HAVE_CPLUS_STRUCT): Also check TYPE_SPECIFIC_FIELD (type).
        (gnat_aux_default, allocate_gnat_aux_type): Add declaration.
        (INIT_GNAT_SPECIFIC, ALLOCATE_GNAT_AUX_TYPE, HAVE_GNAT_AUX_INFO)
        (TYPE_SPECIFIC_FIELD): New macros.
        (TYPE_CPLUS_SPECIFIC): Return cplus_struct_default if the given
        type does not hold any cplus-specific data.
        (TYPE_RAW_CPLUS_SPECIFIC): New macro.
        (TYPE_GNAT_SPECIFIC, TYPE_DESCRIPTIVE_TYPE): New macros.
        (TYPE_IS_OPAQUE): Use HAVE_CPLUS_STRUCT to check if type has
        cplus-specific data.
        * gdbtypes.c (allocate_cplus_struct_type): Minor stylistic rewrite.
        Set new component TYPE_SPECIFIC_FIELD (type).
        (gnat_aux_default): New constant.
        (allocate_gnat_aux_type): New function.
        (init_type): Add initialization the type-specific stuff for
        TYPE_CODE_FLT and TYPE_CODE_FUNC types.
        (print_gnat_stuff): New function.
        (recursive_dump_type): Use HAVE_CPLUS_STRUCT to check for cplus-
        specific data.  Adjust code that prints the contents of the
        type-specific union using the TYPE_SPECIFIC_FIELD value.
        * dwarf2read.c (dwarf2_attach_fields_to_type): Do not allocate
        the type cplus stuff for Ada types.
        (dwarf2_add_member_fn, dwarf2_attach_fn_fields_to_type):
        Error out if these routines are called with an Ada type.
        (read_structure_type, read_array_type, read_subrange_type):
        Add call to set_descriptive_type.
        (set_die_type): Initialize the gnat-specific data if necessary.
        (need_gnat_info, die_descriptive_type, set_descriptive_type):
        New functions.
        * ada-lang.c (decode_constrained_packed_array_type): Use
        decode_constrained_packed_array_type instead of doing a standard
        lookup to locate a parallel type.
        (find_parallel_type_by_descriptive_type): New function.
        (ada_find_parallel_type_with_name): New function.
        (ada_find_parallel_type): Reimplement using
        ada_find_parallel_type_with_name.
        * ada-valprint.c (print_field_values): Use HAVE_CPLUS_STRUCT
        to check if type has a cplus stuff.
        * linespec.c (total_number_of_methods): Likewise.
        * mdebugread.c (new_type): Likewise.

gdb/testsuite/ChangeLog:

        * gdb.base/maint.exp: Adjust the expected output for the
        "maint print type" test. Use gdb_test_multiple instead of
        gdb_sent/gdb_expect.
2010-01-12 05:49:00 +00:00
Doug Evans 6496a6093d * lib/gdbserver-support.exp (gdbserver_download_current_prog): Rename
from gdbserver_download.  All callers updated.
2010-01-12 00:50:26 +00:00
Doug Evans 08e24bd4ab * gdb.server/ext-run.exp: "info os processes" requires xml support. 2010-01-12 00:48:33 +00:00
gdbadmin 32d670fa3f *** empty log message *** 2010-01-12 00:00:03 +00:00
Jan Kratochvil b0f02ee9ae gdb/
* NEWS: Document the 0b binary number prefix parsing.
2010-01-11 19:29:12 +00:00
Jan Kratochvil b260e10983 gdb/
* objfiles.c (objfile_relocate1): Change the return type to int.
	Describe the new return value.  Return non-zero if data changed.
	(objfile_relocate): New variable changed.  Set it.  Call
	breakpoint_re_set depending on CHANGED.
2010-01-11 18:15:05 +00:00
Jan Kratochvil b5cfddf53b gdb/
Implement binary numbers parsing.
	* c-exp.y (parse_number): New case 'b' and 'B'.

gdb/testsuite/
	Implement binary numbers parsing.
	* gdb.base/printcmds.exp (test_integer_literals_accepted)
	(test_integer_literals_rejected): New binary tests.
2010-01-11 17:58:16 +00:00
Jan Kratochvil e0ae424066 gdb/
* solib.c (info_sharedlibrary_command): Replace
	objfile_has_partial_symbols and objfile_has_full_symbols calls by
	objfile_has_symbols.
2010-01-11 16:30:10 +00:00
gdbadmin 6ae8025abb *** empty log message *** 2010-01-11 00:00:33 +00:00
Joel Brobecker 6e0e59772a Document the improvements made to the mips-irix port.
* NEWS: Document the improvements made to the mips-irix port.
2010-01-10 06:43:01 +00:00
gdbadmin 9c744956e3 *** empty log message *** 2010-01-10 00:00:33 +00:00
Ralf Wildenhues 3725885a65 Sync Libtool from GCC.
/:
	* libtool.m4: Sync from git Libtool.
	* ltmain.sh: Likewise.
	* ltoptions.m4: Likewise.
	* ltversion.m4: Likewise.
	* lt~obsolete.m4: Likewise.

sim/iq2000/:
	* configure: Regenerate.

sim/d10v/:
	* configure: Regenerate.

sim/m32r/:
	* configure: Regenerate.

sim/frv/:
	* configure: Regenerate.

sim/:
	* avr/configure: Regenerate.
	* cris/configure: Regenerate.
	* microblaze/configure: Regenerate.

sim/h8300/:
	* configure: Regenerate.

sim/mn10300/:
	* configure: Regenerate.

sim/erc32/:
	* configure: Regenerate.

sim/arm/:
	* configure: Regenerate.

sim/m68hc11/:
	* configure: Regenerate.

sim/lm32/:
	* configure: Regenerate.

sim/sh64/:
	* configure: Regenerate.

sim/v850/:
	* configure: Regenerate.

sim/cr16/:
	* configure: Regenerate.

sim/moxie/:
	* configure: Regenerate.

sim/m32c/:
	* configure: Regenerate.

sim/mips/:
	* configure: Regenerate.

sim/mcore/:
	* configure: Regenerate.

sim/sh/:
	* configure: Regenerate.

gprof/:
	* Makefile.in: Regenerate.
	* configure: Regenerate.

opcodes/:
	* Makefile.in: Regenerate.
	* configure: Regenerate.

gas/:
	* Makefile.in: Regenerate.
	* configure: Regenerate.
	* doc/Makefile.in: Regenerate.

ld/:
	* configure: Regenerate.

gdb/testsuite/:
	* gdb.cell/configure: Regenerate.

binutils/:
	* Makefile.in: Regenerate.
	* configure: Regenerate.
	* doc/Makefile.in: Regenerate.

bfd/:
	* Makefile.in: Regenerate.
	* configure: Regenerate.

bfd/doc/:
	* Makefile.in: Regenerate.
2010-01-09 21:11:44 +00:00
Joel Brobecker 7348c5e1e3 Fix the documentation of valprint.c:value_print.
* valprint.c (value_print): Update the function description to
        mention that the syntax of the output follows the current_language,
        not necessarily C.
2010-01-09 11:46:13 +00:00
Jan Kratochvil 567995e103 gdb/
Fix displacement of separate debug info files.
	* objfiles.c (objfile_relocate): Rename to ...
	(objfile_relocate1): ... here and make it static.  Extend the comment.
	(objfile_relocate): New function.
	* solib-spu.c (spu_relocate_main_executable): Explicitly check if
	SYMFILE_OBJFILE is NULL.  Remove variables objfile and old_chain.
	Remove following of SEPARATE_DEBUG_OBJFILE.  new_offsets is now
	allocated using alloca.
	* symfile.c (copy_section_addr_info): Remove.
	(build_section_addr_info_from_objfile): Make it global.  New variables
	addr_bit and mask, use them.
	* symfile.h (build_section_addr_info_from_objfile): New prototype.
	(copy_section_addr_info): Remove.
2010-01-09 09:11:00 +00:00
Joel Brobecker 1a3fd2625d Fix patch ownership in ChangeLog entry. 2010-01-09 05:03:34 +00:00
Joel Brobecker 6d8eadbddc Signal unwinder for mips-irix N32.
* mips-irix-tdep.c: #include mips-tdep.h, trad-frame.h, and
        tramp-frame.h.
        (SIGTRAMP_FRAME_SIZE, SIGCONTEXT_PC_OFF, SIGCONTEXT_REGS_OFF)
        (SIGCONTEXT_FPREGS_OFF, SIGCONTEXT_FPCSR_OFF, SIGCONTEXT_HI_OFF)
        (SIGCONTEXT_LO_OFF): New macros.
        (mips_irix_n32_tramp_frame_init): New function.
        (mips_irix_n32_tramp_frame): New static constant.
        (mips_irix_init_abi): Prepend the mips_irix_n32_tramp_frame unwinder.
2010-01-09 04:44:55 +00:00
Joel Brobecker 27087a3dc2 Breakpoint in shared library does not work on mips-irix.
* procfs.c: #include "observer.h".
        (procfs_inferior_created): New function, moving here the code
        which unsets the syssgi syscall-exit notifications.
        (procfs_create_inferior): Remove the code which unsets the syssgi
        syscall-exit notifications. It is too early to do this here.
        (_initialize_procfs): Attach the procfs_inferior_created observer.
2010-01-09 04:44:02 +00:00
Joel Brobecker f08877ba09 Wrong return convention for arrays (mips-irix).
* mips-tdep.c (mips_n32n64_return_value): Arrays whose size is
        128 bits or smaller are returned the same way as structs
        and unions of the the same size.
2010-01-09 04:42:54 +00:00
Joel Brobecker e4b97d48ee Cannot set the PC on mips-irix.
* irix5-nat.c (fill_gregset): Check regno against the raw PC
        register number, no the cooked one.
2010-01-09 04:41:50 +00:00
Joel Brobecker 11377e6835 Error while loading core file on mips-irix.
* solib-irix.c (irix_solib_create_inferior_hook): Do nothing
        if debugging from a core file.
2010-01-09 04:40:59 +00:00
Joel Brobecker b2391021b6 GDB hangs when attaching to process on mips-irix.
* solib-irix.c (irix_solib_create_inferior_hook): Do nothing if
        attaching to a process.
2010-01-09 04:40:02 +00:00
Joel Brobecker f2ec0ecff6 * mips-tdep.c (mips_breakpoint_from_pc): Add new static variable
containing the correct breakpoint instruction to use on mips-irix.
        Use it when the osabi is GDB_OSABI_IRIX.
2010-01-09 04:38:29 +00:00
Joel Brobecker 3c95f01cee -Wunused warning in procfs.c (mips-irix only).
* procfs.c (gdb_praddset, gdb_prdelset): New macros.  Use them
        throughout instead of using praddset and prdelset respectively.
2010-01-09 04:37:12 +00:00
Joel Brobecker 4b7703adcc GDB crash while stepping into function.
* infrun.c (handle_inferior_event): Refetch the current frame
        after handling what.main_action, in case that pointer became
        dangling.
2010-01-09 04:36:00 +00:00
Joel Brobecker 12c8947461 * ada-valprint.c, parse.c: Include defs.h before including ctype.h. 2010-01-09 04:34:35 +00:00
Joel Brobecker 4c49065043 * procfs.c: (procfs_do_thread_registers) Use elfcore_write_lwpstatus. 2010-01-09 04:32:52 +00:00
Jan Kratochvil 37aeb5df6e gdb/testsuite/
* gdb.base/corefile.exp: Move the core finding block out and call it as
	core_find, new variable $corefile, replace corefile by $corefile and
	[file tail $corefile] for usage vs. test names resp.
	* lib/gdb.exp (core_find): Move it as a new function here.  New
	parameter binfile and deletefiles.  New variable $destcore.  Pre-delete
	$destcore.  Return "" on error.
2010-01-09 00:14:11 +00:00
gdbadmin ab42223304 *** empty log message *** 2010-01-09 00:00:03 +00:00
Jan Kratochvil d521f56333 gdb/testsuite/
Workaround PR binutils/10802.
	* lib/gdb.exp (gdb_gnu_strip_debug): Preserve the file attributes
	(twice).
2010-01-08 22:59:47 +00:00
Jan Kratochvil 75242ef48d gdb/
Move some symfile code into subroutines.
	* symfile.h (relative_addr_info_to_section_offsets)
	(addr_info_make_relative): New prototypes.
	* symfile.c (default_symfile_offsets): Move a part to ...
	(relative_addr_info_to_section_offsets): ... this new function.
	(default_symfile_offsets): Call it.
	(syms_from_objfile <!mainline && addrs && addrs->other[0].name>): Move
	this part to ...
	(addr_info_make_relative): ... this new function.
2010-01-08 22:55:15 +00:00
Jan Kratochvil 268a4a75bd gdb/
Add from_tty to solib_create_inferior_hook.
	* infcmd.c (post_create_inferior): Move solib_add after
	solib_create_inferior_hook.  Pass from_tty to
	solib_create_inferior_hook.  Call solib_add and SOLIB_ADD with
	0 from_tty and comment why.
	* infrun.c (follow_exec): Pass from_tty solib_create_inferior_hook as 0.
	* linux-nat.c (linux_child_follow_fork): Likewise.
	* nto-procfs.c (procfs_post_attach, procfs_create_inferior): Likewise.
	* solib-darwin.c (darwin_solib_create_inferior_hook): New parameter
	from_tty.
	* solib-frv.c (frv_solib_create_inferior_hook): Likewise.
	* solib-irix.c (irix_solib_create_inferior_hook): Likewise.
	* solib-null.c (null_solib_create_inferior_hook): Likewise.
	* solib-osf.c (osf_solib_create_inferior_hook): Likewise.
	* solib-pa64.c (pa64_solib_create_inferior_hook): Likewise.
	* solib-som.c (som_solib_create_inferior_hook): Likewise.
	* solib-spu.c (spu_solib_create_inferior_hook): New parameter from_tty.
	Pass it to svr4_so_ops.solib_create_inferior_hook.
	* solib-sunos.c (sunos_solib_create_inferior_hook): New parameter
	from_tty.
	* solib-svr4.c (enable_break): New parameter from_tty.  Pass it to
	solib_add.
	(svr4_solib_create_inferior_hook): New parameter from_tty.  Pass it to
	enable_break.
	* solib-target.c (solib_target_solib_create_inferior_hook): New
	parameter from_tty.
	* solib.c (solib_create_inferior_hook): New parameter from_tty.  Pass
	it to ops->solib_create_inferior_hook.
	(reload_shared_libraries): Pass from_tty to solib_create_inferior_hook.
	Move solib_add after solib_create_inferior_hook, call it now with
	from_tty as 0.  New comment there.
	* solib.h (solib_create_inferior_hook): New parameter from_tty.
	* solist.h (struct target_so_ops <solib_create_inferior_hook>):
	Likewise.
2010-01-08 22:52:04 +00:00
Daniel Jacobowitz 28f2482621 * gdb.cp/gdb2495.exp: Skip if gdb,nosignals. 2010-01-08 17:48:04 +00:00
Vladimir Prus cf00dfa7c9 Fix multiexec race.
* infrun.c (handle_inferior_event): Use get_thread_regcache
	with events ptid, not get_current_regcache.
2010-01-08 16:54:14 +00:00
Joel Brobecker f91e5ac34e GDB crash with empty executable name (MinGW).
* source.c (openp): Add assert that parameter string is not NULL.
        if parameter string is an empty string, then return with a failure
        immediately.
2010-01-08 13:54:40 +00:00
Joel Brobecker 2de75e717c * lib/gdb.exp (gdb_start_cmd): Move comment outside of gdb_expect
call, to avoid interruption.
2010-01-08 12:03:36 +00:00
Joel Brobecker fe00719b00 Fix typo in date. 2010-01-08 12:01:59 +00:00
Joel Brobecker 92b9ce5b60 Get rid of support for VAX Floats.
* ada-lang.h (ada_is_vax_floating_type, ada_vax_float_type_suffix)
        (ada_vax_float_print_function): Delete.
        * ada-lang.c (ada_is_vax_floating_type, ada_vax_float_type_suffix)
        (ada_vax_float_print_function): Delete.
        * ada-typeprint.c (print_vax_floating_point_type): Delete.
        (ada_print_type): Remove support for VAX floats.
        * ada-valprint.c (ada_val_print_1): Remove support for VAX floats.
2010-01-08 11:58:23 +00:00
Joel Brobecker cf000afb0d Fix typo in date. 2010-01-08 11:56:36 +00:00
Jan Kratochvil d24d854870 gdb/
* stabsread.c (read_args): Handle zero arguments.

gdb/testsuite/
	* gdb.stabs/weird.def (args93): New.
2010-01-08 08:55:16 +00:00
Joel Brobecker f0f209491f Cannot find in-tree libiconv.a after reconfigure.
* acinclude.m4 (AM_ICONV): If we find an in-tree libiconv.a
        that we can use, then cache the path to this archive.
        * configure: Regenerate.
2010-01-08 07:16:43 +00:00
gdbadmin 0edfa059ee *** empty log message *** 2010-01-08 00:00:32 +00:00
Doug Evans d0ef5df828 * lib/gdb.exp (gdb_skip_xml_test): Add comment. 2010-01-07 23:26:39 +00:00
Tom Tromey 3a08d52f28 * gdb.base/source.exp: Use correct line number. 2010-01-07 20:07:18 +00:00
Stan Shebs 35b1e5cca0 Make tracepoint operations go through target vector.
* target.h (enum trace_find_type): New enum.
	(struct target_ops): New fields to_trace_init,
	to_download_tracepoint, to_download_trace_state_variable,
	to_trace_set_readonly_regions, to_trace_start, to_get_trace_status,
	to_trace_stop, to_trace_find, to_get_trace_state_variable_value,
	to_set_disconnected_tracing.
	(target_trace_init): New macro.
	(target_download_tracepoint): New macro.
	(target_download_trace_state_variable): New macro.
	(target_trace_start): New macro.
	(target_trace_set_readonly_regions): New macro.
	(target_get_trace_status): New macro.
	(target_trace_stop): New macro.
	(target_trace_find): New macro.
	(target_get_trace_state_variable_value): New macro.
	(target_set_disconnected_tracing): New macro.
	* target.c (update_current_target): Inherit and set defaults for
	tracepoint operations.
	* tracepoint.c (default_collect): Make globally visible.
	(target_is_remote): Remove, along with all calls.
	(tvariables_info): Call target_get_trace_state_variable_value.
	(remote_set_transparent_ranges): Remove.
	(trace_start_command): Call target_trace_init,
	target_download_tracepoint, etc.
	(download_tracepoint): Remove.
	(trace_stop_command): Simplify.
	(stop_tracing): Call target_trace_stop.
	(get_trace_status): Call target_get_trace_status.
	(trace_status_command): Add case for targets that cannot trace.
	(finish_tfind_command): Change to take numerical arguments, call
	target_trace_find.
	(trace_find_command): Update call to finish_tfind_command.
	(trace_find_pc_command): Ditto.
	(trace_find_tracepoint_command): Ditto.
	(trace_find_line_command): Ditto.
	(trace_find_range_command): Ditto.
	(trace_find_outside_command): Ditto.
	(set_disconnected_tracing_value): Call
	target_set_disconnected_tracing.
	* remote.c: Add protocol encoding bits from tracepoint.c.
	(trace_error): Move from tracepoint.c.
	(remote_get_noisy_reply): Ditto.
	(free_actions_list_cleanup_wrapper): Ditto.
	(free_actions_list): Ditto.
	(remote_trace_init): New function.
	(remote_download_tracepoint): New function.
	(remote_download_trace_state_variable): New function.
	(remote_trace_set_readonly_regions): New function.
	(remote_trace_start): New function.
	(remote_get_trace_status): New function.
	(remote_trace_stop): New function.
	(remote_trace_find): New function.
	(remote_download_trace_state_variable): New function.
	(remote_set_disconnected_tracing): New function.
	(init_remote_ops): Add tracepoint operations.
2010-01-07 19:17:46 +00:00
Stan Shebs 6b6218c55a * tracepoint.c (trace_dump_command): Don't decr_pc_after_break. 2010-01-07 19:09:09 +00:00
Tristan Gingold 089b4803bf 2010-01-07 Tristan Gingold <gingold@adacore.com>
* symfile.c (build_section_addr_info_from_objfile): New function.
	(symbol_file_add_separate): Don't use offsets from objfile but
	built an addr info.
2010-01-07 09:30:46 +00:00
gdbadmin 3dd00e014a *** empty log message *** 2010-01-07 00:00:03 +00:00
Stan Shebs d5551862df Support disconnected tracing.
* infcmd.c (detach_command): Ask whether to stop tracing.
	* cli/cli-cmds.c (quit_command): Ditto.
	* breakpoint.h (struct breakpoint): New field number_on_target.
	* breakpoint.c (create_tracepoint_from_upload): New function.
	(get_tracepoint_by_number_on_target): New function.
	* remote.c (struct remote): New field disconnected_tracing.
	(remote_disconnected_tracing_feature): New function.
	(remote_protocol_features): Add DisconnectedTracing.
	(struct uploaded_tp): New struct.
	(uploaded_tps): New global.
	(get_uploaded_tp): New function.
	(find_matching_tracepoint): New function.
	(remote_get_tracing_state): New function.
	(remote_start_remote): Call it.
	* tracepoint.c (disconnected_tracing): New global.
	(trace_start_command): Initialize number_on_target.
	(stop_tracing): New function, split out from...
	(trace_stop_command): Call stop_tracing.
	(get_trace_status): New function, split out from...
	(trace_status_command): Call get_trace_status, add info on
	disconnection behavior.
	(disconnect_or_stop_tracing): New function.
	(finish_tfind_command): Translate from number on target.
	(trace_find_tracepoint_command): Translate to number on target.
	(send_disconnected_tracing_value): New function.
	(set_disconnected_tracing): New function.
	(_initialize_tracepoint): Add disconnected-tracing variable.
	* NEWS: Mention disconnected tracing.

	* gdb.texinfo (Starting and Stopping Trace Experiments): Document
	disconnected tracing.
	(Tracepoint Packets): Document new protocol.
2010-01-06 20:31:28 +00:00
Tristan Gingold 15d123c99f 2010-01-06 Tristan Gingold <gingold@adacore.com>
* symtab.c (lookup_global_symbol_from_objfile): Rename objfile
	parameter to main_objfile.  Iterate on all separate debug objfiles.
	* symfile.h (symbol_file_add_separate)
	(find_separate_debug_file_by_debuglink): Remove parameter names.
	* symfile.c (symbol_file_add_separate): Use add_separate_objfile.
	(reread_symbols): Use free_objfile_separate_debug.
	* objfiles.h (struct objfile): Add separate_debug_objfile_link.
	Adjust comment.
	(objfile_separate_debug_iterate, add_separate_debug_objfile)
	(free_objfile_separate_debug): New prototypes.
	* objfiles.c (objfile_separate_debug_iterate): New function.
	(add_separate_debug_objfile, free_objfile_separate_debug): New
	functions.
	(free_objfile): Use free_objfile_separate_debug.  Adjust for
	multiple separate debug objfile.
	(objfile_has_symbols): Adjust comment.  Iterate on all separate
	debug objfiles.
	* minsyms.c (lookup_minimal_symbol): Adjust for multiple separate
	debug objfile.
	(lookup_minimal_symbol_text): Ditto.
	(lookup_minimal_symbol_by_pc_name): Ditto.
	(lookup_minimal_symbol_solib_trampoline): Ditto.
	(lookup_minimal_symbol_by_pc_section_1): Iterate on all separate
	debug objfiles.
2010-01-06 10:11:04 +00:00
Stan Shebs 7a697b8dd7 Add fast tracepoints.
* arch-utils.h (default_fast_tracepoint_valid_at): Declare.
	* arch-utils.c (default_fast_tracepoint_valid_at): New function.
	* breakpoint.h (enum bptype): Add bp_fast_tracepoint.
	* breakpoint.c (tracepoint_type): New function.
	(ALL_TRACEPOINTS): Use it.
	(should_be_inserted): Ditto.
	(bpstat_check_location): Ditto.
	(print_one_breakpoint_location): Ditto.
	(user_settable_breakpoint): Ditto.
	(set_breakpoint_location_function): Ditto.
	(disable_breakpoints_in_shlibs): Ditto.
	(delete_trace_command): Ditto.
	(print_it_typical): Add bp_fast_tracepoint case.
	(bpstat_what): Ditto.
	(print_one_breakpoint_location): Ditto.
	(allocate_bp_location): Ditto.
	(mention): Ditto.
	(breakpoint_re_set_one): Ditto.
	(disable_command): Ditto.
	(enable_command): Ditto.
	(check_fast_tracepoint_sals): New function.
	(break_command_really): Call it.
	(ftrace_command): New function.
	(_initialize_breakpoint): Add ftrace command.
	* gdbarch.sh (fast_tracepoint_valid_at): New.
	* gdbarch.h, gdbarch.c: Regenerate.
	* i386-tdep.c (i386_fast_tracepoint_valid_at): New function.
	(i386_gdbarch_init): Use it.
	* remote.c (struct remote_state): New field fast_tracepoints.
	(PACKET_FastTracepoints): New packet config type.
	(remote_fast_tracepoint_feature): New function.
	(remote_protocol_features): Add FastTracepoints.
	(remote_supports_fast_tracepoints): New function.
	(_initialize_remote): Add FastTracepoints.
	* tracepoint.c (download_tracepoint): Add fast tracepoint option.
	* NEWS: Mention fast tracepoints.

	* gdb.texinfo (Create and Delete Tracepoints): Describe fast
	tracepoints.
	(Tracepoint Packets): Describe remote protocol for fast
	tracepoints.

	* gdb.trace/tracecmd.exp: Test ftrace.
2010-01-06 04:20:27 +00:00
Joel Brobecker 737a160ed9 New python script adding pretty printers for types defined in GDB.
* gdb-gdb.py: New file.
2010-01-06 03:46:18 +00:00
gdbadmin 39e841c4d3 *** empty log message *** 2010-01-06 00:00:33 +00:00
Michael Snyder ce6cca6d61 2010-01-05 Michael Snyder <msnyder@vmware.com>
* infrun.c (handle_inferior_event): Fix typo in comment.
2010-01-05 20:55:18 +00:00
Jan Kratochvil 0d15807dcf gdb/
* symfile.c (syms_from_objfile): Remove the !MAINLINE conditional.
2010-01-05 15:51:02 +00:00
gdbadmin e44c01790d *** empty log message *** 2010-01-05 00:00:33 +00:00
Ulrich Weigand b3f4152256 Fix ChangeLog typo. 2010-01-04 15:06:09 +00:00
Ulrich Weigand 7803799a0f * features/Makefile (WHICH): Add s390-linux32, s390-linux64,
and s390x-linux64.
	(s390-linux32-expedite): Define.
	(s390-linux64-expedite): Define.
	(s390x-linux64-expedite): Define.
	* features/s390-acr.xml: New file.
	* features/s390-fpr.xml: New file.
	* features/s390-core32.xml: New file.
	* features/s390-core64.xml: New file.
	* features/s390x-core64.xml: New file.
	* features/s390-linux32.xml: New file.
	* features/s390-linux64.xml: New file.
	* features/s390x-linux64.xml: New file.
	* features/s390-linux32.c: New generated file.
	* features/s390-linux64.c: New generated file.
	* features/s390x-linux64.c: New generated file.

	* regformats/s390-linux32.dat: New generated file.
	* regformats/s390-linux64.dat: New generated file.
	* regformats/s390x-linux64.dat: New generated file.
	* regformats/reg-s390.dat: Remove.
	* regformats/reg-s390x.dat: Remove.

	* s390-nat.c: Include "auxv.h" and <elf.h>.
	(HWCAP_S390_HIGH_GPRS): Define if undefined.
	(s390_target_wordsize): New function.
	(s390_auxv_parse): Likewise.
	(s390_get_hwcap): Likewise.
	(s390_read_description): Likewise.
	(_initialize_s390_nat): Install s390_auxv_parse and
	s390_read_description.

	* s390-tdep.c: Include "features/s390-linux32.c",
	"features/s390-linux64.c", and "features/s390x-linux64.c".
	(struct gdbarch_tdep): Add gpr_full_regnum, pc_regnum, and cc_regnum.
	(s390_register_call_saved): New function.
	(s390_register_name): Remove.
	(s390_register_type): Remove.
	(s390_dwarf_regmap): Add lower half GPR pseudo DWARF CFI regnums.
	(s390_dwarf_reg_to_regnum): Remap GPR regnums to full GPRs.
	(s390_adjust_frame_regnum): Remap GPR regnums to lower halves for CFI.
	(s390_pseudo_register_name): New function.
	(s390_pseudo_register_type): New function.
	(s390_pseudo_register_read): Handle both 32-bit and 64-bit cases.
	Handle full GPR pesudos and varying pseudo register numbers.
	(s390_pseudo_register_write): Likewise
	(s390x_pseudo_register_read): Remove.
	(s390x_pseudo_register_write): Likewise.
	(s390_register_group): Remove.
	(s390_pseudo_register_group): New function.
	(s390_regmap_gregset): Add GPR upper halves.
	(s390x_regmap_gregset): Likewise.
	(s390_regmap_fpregset): Likewise.
	(s390_regmap_upper): New global variable.
	(s390_upper_regset): New global variable.
	(s390_upper_regset_sections): New global variable.
	(s390_regset_from_core_section): Handle GPR upper halves.
	(s390_core_read_description): New function.
	(s390_prologue_frame_unwind_cache): Set up ABI call-saved/clobbered
	register information.  Handle varying pseudo register numbers.
	(s390_backchain_frame_unwind_cache): Likewise.
	(s390_frame_prev_register): Unwind full GPRs to show lower halves.
	(s390_stub_frame_unwind_cache): Handle varying pseudo register numbers.
	(s390_sigtramp_frame_unwind_cache): Unwind PSWM and PSWA as well as
	PC and CC pseudos.  Unwind upper halves and full GPRs as appropriate.
	Handle varying pseudo register numbers.
	(s390_unwind_pc): Handle varying pseudo register numbers.
	(s390_dwarf2_prev_register): New function.
	(s390_dwarf2_frame_init_reg): Set up ABI call-saved/clobbered
	register information.  Handle varying pseudo register numbers.
	Install s390_dwarf2_prev_register to unwind full GPRs.
	(s390_gdbarch_init): Handle target descriptions.  Assign varying
	pseudo register numbers.  Install s390_adjust_frame_regnum.
	(_initialize_s390_tdep): Initialize target descriptions.

	* s390-tdep.h (S390_R0_UPPER_REGNUM .. S390_R15_UPPER_REGNUM): Define.
	(S390_NUM_REGS): Redefine to include upper half registers.
	(S390_PC_REGNUM, S390_CC_REGNUM): Remove.
	(S390_NUM_PSEUDO_REGS, S390_NUM_TOTAL_REGS): Likewise.
	(tdesc_s390_linux32): Add declaration.
	(tdesc_s390_linux64): Likewise.
	(tdesc_s390x_linux64): Likewise.

gdb/testsuite/
	* gdb.xml/tdesc-regs.exp: Support s390*-*-* targets.

gdbserver/
	* Makefile.in (clean): Remove new generated files.
	(reg-s390.o, reg-s390.c): Remove rules.
	(reg-s390x.o, reg-s390x.c): Likewise.
	(s390-linux32.o, s390-linux32.c): Add rules.
	(s390-linux64.o, s390-linux64.c): Likewise.
	(s390x-linux64.o, s390x-linux64.c): Likewise.
	* configure.srv (s390*-*-linux*): Update srv_regobj and srv_xmlfiles.
	* linux-s390-low.c: Include <elf.h>.
	(HWCAP_S390_HIGH_GPRS): Define if undefined.
	(init_registers_s390): Remove prototype.
	(init_registers_s390x): Likewise.
	(init_registers_s390_linux32): Add prototype.
	(init_registers_s390_linux64): Likewise.
	(init_registers_s390x_linux64): Likewise.
	(s390_num_regs_3264): New define.
	(s390_regmap_3264): New global variable.
	(s390_cannot_fetch_register): Remove obsolete check.
	(s390_cannot_store_register): Likewise.
	(s390_collect_ptrace_register): Handle upper/lower register halves.
	(s390_supply_ptrace_register): Likewise.
	(s390_fill_gregset): Update to register number changes.
	(s390_get_hwcap): New routine.
	(s390_arch_setup): Detect 32-bit process running on 64-bit system.
	Install appropriate regmap and register set.
2010-01-04 15:03:01 +00:00
Ulrich Weigand 1b1818e443 * regset.h (struct core_regset_section): Add HUMAN_NAME.
* i386-linux-tdep.c (i386_linux_regset_sections): Fill in HUMAN_NAME.
	* ppc-linux-tdep.c (ppc_linux_vsx_regset_sections): Likewise.
	(ppc_linux_vmx_regset_sections): Likewise.
	(ppc_linux_fp_regset_sections): Likewise.

	* corelow.c (get_core_register_section): Constify arguments.
	(get_core_registers): Use gdbarch_core_regset_sections instead
	of hard-coded platform-specific register section names.
2010-01-04 14:57:44 +00:00