2008-03-24 Daniel Jacobowitz * inflow.c (gdb_has_a_terminal): Guard access to our_process_group. 2008-03-24 Nick Roberts Vladimir Prus * varobj.c (struct varobj_root): New component thread_id. (varobj_get_thread_id, check_scope): New functions. (c_value_of_root): Use check_scope. Switch to the proper thread if necessary. * varobj.h (varobj_get_thread_id): New extern. * mi/mi-cmd-var.c (print_varobj): Add thread-id field. 2008-03-23 Daniel Jacobowitz PR gdb/544 * top.c: Revert 2008-03-21 changes. 2008-03-23 Vladimir Prus * thread.c (make_cleanup_restore_current_thread): Make it globally visible. * gdbthread.h (make_cleanup_restore_current_thread): Declare. * varobj.c (varobj_update): Don't save/restore frame. (c_value_of_root): Save/restore thread and frame here, using make_cleanup_restore_current_thread. * Makefile.in: Update dependecies. 2008-03-23 Vladimir Prus * varobj.c (struct varobj_root): Clarify comment on the frame field. (varobj_create): Don't set frame if we have no block. 2008-03-21 Daniel Jacobowitz PR gdb/544 Suggested by Jan Kratochvil: * top.c (gdb_rl_operate_and_get_next_completion): Call rl_redisplay_function. (gdb_rl_redisplay): New. (init_main): Set rl_redisplay_function. 2008-03-21 Thomas Mittelstaedt (tiny change) * aix-thread.c (pdc_read_regs): Fix compiler warning. (pdc_write_regs, aix_thread_resume, fetch_regs_kernel_thread) (store_regs_kernel_thread): Likewise. 2008-03-21 Pedro Alves Linux native async support. * target.h (struct target_ops): Delete to_async_mask_value and add to_async_mask. (target_is_async_p, target_async): Formatting. (target_async_mask_value): Delete. (target_async_mask): Delete function declaration, and add new target macro with the same name. * target.c (update_current_target): Replace to_async_mask_value by to_async_mask. Default to_async_mask to return_one. (target_async_mask): Delete. (find_default_can_async_p, find_default_is_async_p): New. (init_dummy_target): register find_default_can_async_p and find_default_is_async_p on the dummy target. * linux-nat.c: Include inf-loop.h, event-loop.h and event-top.h. (debug_linux_nat_async): New global. (show_debug_linux_nat_async): New function. (linux_nat_async_enabled, linux_nat_async_mask_value) (linux_nat_event_pipe, linux_nat_num_queued_events) (linux_nat_async_events_enabled): New globals. (struct waitpid_result): New struct. (waitpid_queue): New global. (queued_waitpid, push_waitpid, drain_queued_events): New. (my_waitpid): Call queued_waitpid. (linux_child_follow_fork): Disable async events during the call. (blocked_mask): Delete. (sync_sigchld_action, async_sigchld_action): New globals. (lin_lwp_attach_lwp): In sync mode, don't reblock SIGCHLD. In async mode, block events during the call. (linux_nat_create_inferior): New. (linux_nat_attach): In sync mode, restore the mask states. In async mode, wake the event loop immediatelly. (detach_callback): Drain all queued events of the lwp we're detaching from. (linux_nat_detach): Block async mode, and drain events of the main process. (linux_nat_resume): If in async mode, mask async events during the call. If short circuiting, force event loop to wake up. If resuming, set target_executing, and register target events in the event loop. (pipe_to_local_event_queue, local_event_queue_to_pipe): New. (linux_nat_wait): In async mode, block events during the call. Only enable/disable passing SIGINT to the inferior in sync mode. Get events from local waitpid queue. If no interesting events was found, return to events loop. Reregister target events in the event loop on exit. In sync mode, no need to reblock SIGCHLD. (linux_nat_kill): Disable events on entry. (linux_nat_mourn_inferior): In sync mode, don't restore the masks here. Detach async mode from the event loop if there are no more forks available, otherwise leave it on. (sigchld_handler): Assure this is called only in sync mode. (linux_async_permitted, linux_async_permitted_1): New globals. (set_maintenance_linux_async_permitted) (show_maintenance_linux_async_permitted): New functions. (linux_nat_is_async_p, linux_nat_can_async_p) (linux_nat_async_mask): New. (linux_nat_event_pipe_pop, linux_nat_event_pipe_push): New. (get_pending_events, async_sigchld_handler): New. (linux_nat_async_events): New. (async_terminal_is_ours): New global. (linux_nat_terminal_inferior, linux_nat_terminal_ours): New. (async_client_callback, async_client_context): New. (linux_nat_async_file_handler, linux_nat_async) (linux_nat_disable_async, linux_nat_enable_async): New. (linux_nat_add_target): Register linux_nat_create_inferior, linux_nat_can_async_p, linux_nat_is_async_p, linux_nat_async, linux_nat_async_mask, linux_nat_terminal_inferior and linux_nat_terminal_ours. (_initialize_linux_nat): Remove local action variable, and update code that used it to use sync_sigchld_action. Add new "lin-lwp-async" debug set/show command. Put the "lin-lwp" debug set/show command in the maintenance class. Add new "linux-async" maintenance set/show command. Block SIGCHLD by default. Setup async_sichld_action, and sync_sigchld_action. Install the default async mode. (lin_thread_get_thread_signals): Use a local sigset_t for blocking the cancel signals. * linux-thread-db.c (re_check_for_thread_db): New. (clear_lwpid_callback): Handle TARGET_WAITKIND_IGNORE. (thread_db_can_async_p, thread_db_is_async_p, thread_db_async) (thread_db_async_mask): New. (init_thread_db_ops): Register thread_db_can_async_p, thread_db_is_async_p, thread_db_async and thread_db_async_mask. * remote.c (remote_async_mask_value): New. (remote_return_zero): New. (init_remote_ops): Register remote_return_zero as callbacks of to_can_async_p and to_is_async_p. (remote_can_async_p, remote_is_async_p, remote_async): Update to use remote_async_mask_value. (remote_async_mask): New. (init_remote_async_ops): Remove to_async_mask_value setting and register remote_async_mask as to_async_mask callback in remote_async_ops. * Makefile.in (linux-nat.o): Update. 2008-03-21 Daniel Jacobowitz * gdbthread.h (add_thread_with_info): New. * linux-thread-db.c: Add some documentation. (GET_LWP, GET_PID, GET_THREAD, is_lwp, is_thread, BUILD_LWP): Delete. (struct private_thread_info): Remove th_valid and ti_valid. Replace ti with tid. (thread_get_info_callback): Do not add TID to the new ptid. Do not cache th or ti. (thread_db_map_id2thr, lwp_from_thread): Delete functions. (thread_from_lwp): Assert that the LWP is set. Do not add TID to the new PTID. (attach_thread): Handle an already-existing thread. Use add_thread_with_info. Cache the th and tid. (detach_thread): Verify that private was set. Remove verbose argument and printing. Update caller. (thread_db_detach): Do not adjust inferior_ptid. (clear_lwpid_callback, thread_db_resume, thread_db_kill): Delete. (check_event, find_new_threads_callback): Do not add TID to the new PTID. (thread_db_wait): Do not use lwp_from_thread. (thread_db_pid_to_str): Use the cached TID. (thread_db_extra_thread_info): Check that private is set. (same_ptid_callback): Delete. (thread_db_get_thread_local_address): Do not use it or check is_thread. Check that private is set. Assume that the thread handle is already cached. (init_thread_db_ops): Remove to_resume and to_kill. * thread.c (add_thread_with_info): New. (add_thread): Use it. * linux-nat.c (find_thread_from_lwp): Delete. (exit_lwp): Do not use it. Check print_thread_events. Print before deleting the thread. (GET_PID, GET_LWP, BUILD_LWP, is_lwp): Move to... * linux-nat.h (GET_PID, GET_LWP, BUILD_LWP, is_lwp): ...here. * inf-ttrace.c (inf_ttrace_wait): Use print_thread_events and printf_unfiltered for thread exits. * procfs.c (procfs_wait): Likewise. 2008-03-21 Chris Demetriou * symtab.c (rbreak_command): Quote symbol name before passing it to break_command. 2008-03-21 Daniel Jacobowitz * eval.c (evaluate_subexp_for_address): Clarify error message. Use value_must_coerce_to_target. * infcall.c (value_arg_coerce): Call value_coerce_to_target. * valops.c (value_assign): Call value_coerce_to_target when assigning to anything but internalvars. Leave GDB-side arrays as arrays when assigning to internalvars. (value_must_coerce_to_target, value_coerce_to_target): New. (value_coerce_array, value_addr): Call value_coerce_to_target. (value_array): Create the array in GDB's memory instead of the inferior's. * value.h (value_must_coerce_to_target, value_coerce_to_target): Declare. 2008-03-21 Daniel Jacobowitz * top.c (quit_confirm): Warn that we will kill the program. 2008-03-19 Pedro Alves * inflow.c (terminal_ours_1): Guard access to inferior_process_group with #ifdef PROCESS_GROUP_TYPE. 2008-03-18 Ulrich Weigand Jim Blandy Daniel Jacobowitz * dwarf2expr.h (struct dwarf_expr_context): Add ADDR_SIZE member. (dwarf2_read_address): Update prototype. * dwarf2expr.c (unsigned_address_type): Add ADDR_SIZE parameter. (signed_address_type): Likewise. (dwarf2_read_address): Replace BYTES_READ parameter with ADDR_SIZE. (execute_stack_op): Update calls to unsigned_address_type, signed_address_type and dwarf2_read_address. Fix implementation of DW_OP_deref_size. * dwarf2loc.h (dwarf2_per_cu_objfile): Add prototype. (dwarf2_per_cu_addr_size): Likewise. (struct dwarf2_locexpr_baton): Replace OBJFILE with PER_CU. (struct dwarf2_loclist_baton): Likewise. * dwarf2loc.c (find_location_expression): Update calls to dwarf2_read_address. Use dwarf2_per_cu_objfile and dwarf2_per_cu_addr_size to retrieve PER_CU parameters. (locexpr_describe_location): Likewise. (dwarf2_evaluate_loc_desc): Replace OBJFILE with PER_CU parameter. Set ctx->addr_size to dwarf2_per_cu_addr_size (per_cu). (dwarf2_loc_desc_needs_frame): Add PER_CU parameter. Set ctx->addr_size to dwarf2_per_cu_addr_size (per_cu). (locexpr_read_variable): Update dwarf2_evaluate_loc_desc call. (loclist_read_variable): Likewise. (locexpr_read_needs_frame): Update dwarf2_loc_desc_needs_frame call. * dwarf2read.c (dwarf2_symbol_mark_computed): Set baton->per_cu instead of baton->objfile. (dwarf2_per_cu_obfile): New function. (dwarf2_per_cu_addr_size): Likewise. * dwarf2-frame.c (struct comp_unit): Move higher. (struct dwarf2_cie): Add UNIT and ADDR_SIZE members. (execute_stack_op): Add ADDR_SIZE parameter; set ctx->addr_size. (execute_cfa_program): Add FDE parameter. Replace EH_FRAME_P parameter by using fde->eh_frame_p. Use read_encoded_value to implement DW_CFA_set_loc. (struct dwarf2_frame_cache): Add ADDR_SIZE member. (dwarf2_frame_cache): Set cache->addr_size. Update calls to execute_stack_op and execute_cfa_program. (dwarf2_frame_prev_register): Update calls to execute_stack_op. (size_of_encoded_value): Remove. (read_encoded_value): Add PTR_LEN and FUNC_BASE parameters. Remove call to size_of_encoded_value. Implement DW_EH_PE_funcrel. (add_cie): Set cie->unit backlink. (decode_frame_entry_1): Set cie->addr_size. Update calls to read_encoded_value. (dwarf2_build_frame_info): Allocate UNIT on objfile obstack. 2008-03-17 Markus Deuling * i386-tdep.c (i386_print_insn): Remove unnecessary call to gdbarch_bfd_arch_info. 2008-03-17 Joel Brobecker * aix-thread.c (pdc_read_regs): Minor reformatting. 2008-03-17 Vladimir Prus * thread.c (print_thread_info): Don't insist on having current thread if there are no threads at all. 2008-03-17 Pedro Alves * infcmd.c (attach_command_post_wait) (attach_command_continuation): New. (attach_command): Support background async execution, and async execution in synchronous mode. 2008-03-17 Daniel Jacobowitz * stack.c (print_stack_frame, print_frame): Use RETURN_MASK_ERROR. * symmisc.c (dump_symtab_1): Likewise. * wrapper.c (gdb_value_struct_elt): Likewise. 2008-03-17 Pedro Alves * linux-nat.c (linux_nat_filter_event): Fix comment typo. 2008-03-17 Pedro Alves * linux-nat.c (linux_nat_filter_event): New, refactored from linux_nat_wait. (linux_nat_wait): Call linux_nat_filter_event. 2008-03-17 Ulrich Weigand * top.c (execute_command): Fix uninitialized variable error. 2008-03-16 Nick Hudson * Makefile.in (amd64nbsd-nat.o): New dependency. * amd64nbsd-nat.c: Include "nbsd-nat.h". (_initialize_amd64nbsd_nat): Update target vector to use nbsd_pid_to_exec_file. * config/i386/nbsd64.mh (NATDEPFILES): Add nbsd-nat.o. 2008-03-15 Vladimir Prus Remove ignoring leading exec events code. * fork-child.c (startup_inferior): Do not set inferior_ignoring_leading_exec_events. * inf-child.c (inf_child_reported_exec_events_per_exec_call): Remove. (inf_child_target): Do not set to_reported_exec_events_per_exec_call. * infrun.c (inferior_ignoring_leading_exec_events): Remove. (handle_inferior_event): Remove code for ignoring leading exec events. * target.c (update_current_target): Do not inherit, or default, to_reported_exec_events_per_exec_call. (debug_to_reported_exec_events_per_exec_call): Remove. (setup_target_debug): Do not set to_reported_exec_events_per_exec_call. * target.h (target_reported_exec_events_per_exec_call): Remove. (struct target): Remove the to_reported_exec_events_per_exec_call field. 2008-03-15 Vladimir Prus Implement -thread-info. * gdbthread.h (print_thread_info): Declare. * thread.c (print_thread_info): New, extracted from info_threads_command and adjusted to work for CLI and MI. (info_threads_command): Use print_thread_info. * Makefile.in: Update dependencies. * mi/mi-cmds.c (mi_cmds): Specify a handler for -thread-info. * mi/mi-cmds.h (mi_cmd_thread_info): Declare. * mi/mi-main.c (mi_cmd_thread_info): New. (mi_cmd_list_features): Include 'thread-info'. 2008-03-14 Kevin Buettner * mips-tdep.c (mips32_scan_prologue): Use the ABI register size to decide whether to match instruction patterns using "sw" and "sd". 2008-03-14 Pedro Alves * infcmd.c (jump_command): Postpone disabling stdin until after the possible query. 2008-03-14 Pedro Alves * inflow.c (gdb_getpgrp): New. (gdb_has_a_terminal): Use get_getpgrp. (terminal_ours_1): If attach_flag is set, don't refetch inferior_process_group. 2008-03-14 Pedro Alves * features/library-list.dtd: Allow "section" elements as children of "library". Add "section" element and describe its attributes. * solib-target.c (struct lm_info): Add section_bases member. (library_list_start_segment): Error out if seen a section element. (library_list_start_section): New. (library_list_end_library): New. (solib_target_free_library_list): Free section_bases. (section_attributes): New. (library_children): Make "segment" optional. Add "section" child. (library_list_children): Register library_list_end_library. (solib_target_relocate_section_addresses): Handle section bases. * NEWS: Mention new qXfer:libraries:read section offsets support. 2008-03-14 Vladimir Prus * defs.h (do_exec_error_cleanups, discard_exec_error_cleanups) (make_exec_error_cleanup): Remove declarations. * utils.c (exec_error_cleanup_chain): Remove. (do_exec_error_cleanups, discard_exec_error_cleanups) (make_exec_error_cleanup): Remove. * event-loop.c (start_event_loop): Adjust call to async_enable_stdin. * event-top.c (async_enable_stdin): Remove the paramater dummy. (async_disable_stdin): Don't register async_enable_stdin via cleanup. * inf-loop.c (inferior_event_handler): Don't call do_exec_error_cleanups. Call async_enable_stdin instead. * event-loop.c (start_event_loop): Adjust call to async_enable_stdin. * tui/tui-interp.c (tui_command_loop): Adjust call to async_enable_stdin. 2008-03-14 Vladimir Prus Async mode fixes. * Makefile.in (infcmd.o, inf-loop.o): Update dependencies. * breakpoint.c (bpstat_do_actions): In async mode, don't jump to top expecting stop_bpstat to be already updated. * event-loop.c (start_event_loop): Call async_enable_stdin on exception. * event-top.c (async_enable_stdin): Do nothing if sync_execution is not set. (command_handler): Do not setup continuation here. (command_line_handler_continuation): Move to... * top.c (command_line_handler_continuation): ... here. (execute_command): In async mode, register continuation. Don't check frame's language in running in async mode. * exceptions.c (throw_exception): Don't do exec_error_cleanups. * inf-loop.c (complete_execution): Inline into... (inferior_event_handler): ... here. Clear target_executing before doing any cleanups. Don't try to show prompt if the target was resumed. * infcmd.c (signal_command): Add support for async mode. (finish_command): Only add continuation if the target was successfully resumed. * remote.c (init_async_opts): Register to_get_thread_local_address handler. * mi/mi-interp.c (mi_cmd_interpreter_exec): Don't mess with sync_execution. * tui/tui-interp.c (tui_command_loop): Call async_enable_stdin on exception. 2008-03-14 Daniel Jacobowitz * corefile.c (reopen_exec_file): Use exec_bfd_mtime. * exec.c (exec_bfd_mtime): Define. (exec_close): Clear it. (exec_file_attach): Set it. * gdbcore.h (exec_bfd_mtime): Declare. * source.c (find_source_lines): Do not use bfd_get_mtime. 2008-03-14 Vladimir Prus * top.c (simplified_command_loop): Remove. 2008-03-14 Vladimir Prus Remove unused remote.c hooks. * remote.c (deprecated_target_resume_hook) (deprecated_target_wait_loop_hook): Remove. (remote_resume): Do not call deprecated_target_resume_hook. (remote_wait): Do not call deprecated_target_wait_loop_hook. (remote_async_wait): Likewise. 2008-03-14 Vladimir Prus Implement MI notification for new threads. * doc/observer.texi (new_thread): Document. * observer.sh: Forward declare struct thread_info. * thread.c (add_thread): Notify observer. * interps.h (interp_init_ftype): New parameter top_level. (interp_set): Likewise. (top_level_interpreter_data): Declare. * interps.c (interp_set): New parameter top_level. Pass it to interpreter's init function. Remember top level interpreter. (interpreter_exec_cmd): Adjust. (top_level_interpreter_data): New. * main.c (captured_main): Pass 1 for top_level parameter of interp_set. * cli/cli-interp.c (cli_interpreter_init): New parameter top_level. * tui/tui-interp.c (tui_init): New parameter top_level. * mi/mi-interp.c (mi_new_thread): New. (mi_interpreter_init): If top level, register observer for new threads. * Makefile.in (mi-interp.o, thread.o): Update dependencies. 2008-03-14 Pedro Alves * top.c (execute_command): Disable break and stop commands in async mode. 2008-03-14 Pedro Alves revert: 2008-03-14 Pedro Alves * inf-loop.c (inferior_event_handler): Don't include remote.h. Call target_stop in the INF_QUIT_REQ case. * Makefile.in (inf-loop.o): Update. 2008-03-14 Pedro Alves * inf-loop.c (inferior_event_handler): Don't include remote.h. Call target_stop in the INF_QUIT_REQ case. * Makefile.in (inf-loop.o): Update. 2008-03-14 Pedro Alves * top.c (execute_command): Enable break, info and interrupt commands in async mode. 2008-03-13 Vladimir Prus Daniel Jacobowitz * breakpoint.h (breakpoint_restore_shadows): New declaration. * breakpoint.c (breakpoint_restore_shadows): New. (read_memory_nobpt): Delete. * gdbcore.h (read_memory_nobpt): Delete declaration. * target.c (memory_xfer_partial): Call breakpoint_restore_shadows. (restore_show_memory_breakpoints) (make_show_memory_beakpoints_cleanup): New. (show_memory_breakpoints): New. * target.h (make_show_memory_beakpoints_cleanup): Declare. * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint): Make sure we see memory breakpoints when checking if breakpoint is still there. * alpha-tdep.c, alphanbsd-tdep.c, frame.c, frv-tdep.c, hppa-linux-tdep.c, hppa-tdep.c, i386-linux-nat.c, i386-tdep.c, m68klinux-tdep.c, mips-tdep.c, mn10300-tdep.c, s390-tdep.c, sparc-tdep.c: Use target_read_memory instead of read_memory_nobpt. 2008-03-12 Pedro Alves * thread.c (add_thread): Use printf_unfiltered to print. 2008-03-12 Joel Brobecker * sol-thread.c: Replace use of TM_I386SOL2_H by an expression that is true only on x86-solaris and x86_64-solaris. * procfs.c: Likewise. Move procfs_find_LDT_entry up together with proc_get_LDT_entry. 2008-03-12 Thiago Jung Bauermann * configure.ac (AC_CHECK_FUNCS): Add check for setsid. * config.in, configure: Regenerate. * fork-child.c (fork_inferior): Call create_tty_session. * inflow.c (new_tty): Set controlling terminal with TIOCSCTTY. (create_tty_session): New function. * terminal.h: Declare create_tty_session. 2008-03-12 Alan Modra PR 5900 * elfread.c (elf_symtab_read): Make shndx an unsigned int. * mipsread.c: Include elf/internal.h. (read_alphacoff_dynamic_symtab): Map external reserved sym_shndx to internal range. 2008-03-11 Markus Deuling * win32-nat.c (do_win32_fetch_inferior_registers): Use get_regcache_arch to get at the current architecture and at the target specific vector. Add target specific vector to I387_FISEG_REGNUM and I387_FOP_REGNUM and remove define of I387_ST0_REGNUM. * amd64-tdep.c (I387_ST0_REGNUM): Remove define. (amd64_supply_fxsave, amd64_collect_fxsave): Use get_regcache_arch to get at the current architecture (I387_FISEG_REGNUM, I387_FOSEG_REGNUM): Add target specific vector as parameter. * i386-tdep.c: Remove various define's and undef's of I387_ST0_REGNUM, I387_NUM_XMM_REGS and I387_MM0_REGNUM. (I387_NUM_XMM_REGS, I387_XMM0_REGNUM, I387_MXCSR_REGNUM, I387_ST0_REGNUM, I387_FCTRL_REGNUM, I387_MM0_REGNUM, (I387_FSTAT_REGNUM): Add target specific vector as parameter. (i386_register_name, i386_dbx_reg_to_regnum): Use gdbarch_tdep to get at the target specific vector. (i386_get_longjmp_target): Use get_frame_arch to get at the current architecture. Use gdbarch_tdep to get at the target specific vector. (i386_fp_regnum_p, i386_fpc_regnum_p): Add gdbarch as parameter and update caller. Use gdbarch_tdep to get at the target specific vector. (i386_register_to_value: Use get_frame_arch to get at the current architecture. * i386-tdep.h (i386_fp_regnum_p, i386_fpc_regnum_p): Add gdbarch as parameter. * i387-tdep.c (I387_FCTRL_REGNUM, I387_FSTAT_REGNUM, I387_FTAG_REGNUM, I387_FISEG_REGNUM, I387_FIOFF_REGNUM, I387_FOSEG_REGNUM I387_FOOFF_REGNUM, I387_FOP_REGNUM, I387_ST0_REGNUM, FSAVE_ADDR, FXSAVE_ADDR, I387_XMM0_REGNUM): Add target specific vector as parameter. (I387_ST0_REGNUM, I387_NUM_XMM_REGS): Remove various define's and undef's. (i387_convert_register_p, i387_register_to_value, i387_value_to_register): Update call for i386_fp_regnum_p. * i387-tdep.h: Remove comment. (I387_ST0_REGNUM, I387_NUM_XMM_REGS, I387_MM0_REGNUM): Add define. (I387_FCTRL_REGNUM, I387_FSTAT_REGNUM, I387_FTAG_REGNUM, I387_FISEG_REGNUM, I387_FIOFF_REGNUM, I387_FOSEG_REGNUM, I387_FOOFF_REGNUM, I387_FOP_REGNUM, I387_XMM0_REGNUM, I387_MXCSR_REGNUM): Add target specific vector as parameter. 2008-03-10 Daniel Jacobowitz * Makefile.in (fork-child.o): Update. * NEWS: Document "set exec-wrapper" and the gdbserver --wrapper argument. Gather all gdbserver features together. * fork-child.c (exec_wrapper): New variable. (fork_inferior): Use it. (startup_inferior): Skip an extra trap if using "set exec-wrapper". (unset_exec_wrapper_command, _initialize_fork_child): New. 2008-03-10 Hidetaka Takano * source.c (directory_command): Modify the determination of condition of terminal "from_tty". 2008-03-10 Matt Rice * dwarf2read.c (set_cu_language): Add DW_LANG_ObjC. 2008-03-10 Hidetaka Takano * spu-tdep.c (info_spu_event_command): Insert a '\0' to the end of the data passing to strtoulst function. (info_spu_signal_command): Likewise. 2008-03-08 Vladimir Prus * mi/mi-interp.c (mi_command_loop): Remove commented-out code. 2008-03-07 Joel Brobecker * remote.c (extended_remote_attach_1): Make local variable pid an int instead of a pid_t. 2008-03-07 Joel Brobecker * solib-svr4.c (svr4_same_1): New function, originally extracted from svr4_same and expanded to handle the sparc64 case. (svr4_same): Move up and reimplement using svr4_same_1. (enable_break): Use svr4_same_1 to do shared library name comparisons. 2008-03-07 Ramana Radhakrishnan * MAINTAINERS: Move self to Paper trail. 2008-03-05 Daniel Jacobowitz * Makefile.in (mingw-hdep.o, posix-hdep.o, remote-fileio.o): Update. * event-loop.c (call_async_signal_handler): New. * event-loop.h (call_async_signal_handler) (gdb_call_async_signal_handler): Declare. (mark_async_signal_handler): Add comments. * event-top.c (handle_sigint): Use gdb_call_async_signal_handler. * mingw-hdep.c (sigint_event, sigint_handler): New. (gdb_select): Use them. Wait for the readline signal handler to finish. (gdb_call_async_signal_handler, _initialize_mingw_hdep): New functions. * posix-hdep.c (gdb_call_async_signal_handler): New function. * remote-fileio.c (sigint_fileio_token, async_remote_fileio_interrupt): New. (remote_fileio_ctrl_c_signal_handler): Use gdb_call_async_signal_handler. (initialize_remote_fileio): Initialize sigint_fileio_token. * remote.c (initialize_sigint_signal_handler, handle_remote_sigint): Do not initialize tokens here. (handle_remote_sigint_twice): Likewise. Reinstall handle_remote_sigint. (async_remote_interrupt_twice): Just call interrupt_query. (cleanup_sigint_signal_handler): Do not delete tokens. (remote_interrupt, remote_interrupt_twice): Use gdb_call_async_signal_handler. (interrupt_query): Reinstall the default signal handler. (_initialize_remote): Initialize tokens here. 2008-03-04 Joel Brobecker * features/rs6000/power-core.xml, features/rs6000/power64-core.xml, features/rs6000/powerpc-601.xml, features/rs6000/rs6000.xml: Change the type of the lr register to code_ptr. * features/rs6000/powerpc-32.c, features/rs6000/powerpc-403.c, features/rs6000/powerpc-403gc.c, features/rs6000/powerpc-505.c, features/rs6000/powerpc-601.c, features/rs6000/powerpc-602.c, features/rs6000/powerpc-603.c, features/rs6000/powerpc-604.c, features/rs6000/powerpc-64.c, features/rs6000/powerpc-7400.c, features/rs6000/powerpc-750.c, features/rs6000/powerpc-860.c, features/rs6000/powerpc-e500.c, features/rs6000/rs6000.c: Regenerate. 2008-03-03 James E. Wilson * MAINTAINERS: Update my email address. 2008-03-03 Keith Seitz From Dave Murphy : * configure.ac: Set tcl configdir to win under mingw. * configure: Regenerate. 2008-03-03 Daniel Jacobowitz * breakpoint.c (fetch_watchpoint_value): New function. (update_watchpoint): Set and clear val_valid. Use fetch_watchpoint_value. Handle unreadable values on the value chain. Correct check for user-requested array watchpoints. (breakpoint_init_inferior): Clear val_valid. (watchpoint_value_print): New function. (print_it_typical): Use it. Do not free or clear old_val. Print watchpoints even if old_val == NULL. (watchpoint_check): Use fetch_watchpoint_value. Check for values becoming readable or unreadable. (watch_command_1): Use fetch_watchpoint_value. Set val_valid. (do_enable_watchpoint): Likewise. * breakpoint.h (struct breakpoint): Update comment for val. Add val_valid. * NEWS: Mention watchpoints on inaccessible memory. 2007-02-29 Daniel Jacobowitz * Makefile.in (i386-nat.o): Update. * amd64-linux-nat.c (_initialize_amd64_linux_nat): Call i386_use_watchpoints. * i386-linux-nat.c (_initialize_i386_linux_nat): Call i386_use_watchpoints. * i386-nat.c (i386_stopped_data_address): Take two arguments. (i386_stopped_by_watchpoint): Update call. (i386_can_use_hw_breakpoint, i386_use_watchpoints): New. * config/i386/nm-i386.h: Conditionalize definitions on ! I386_WATCHPOINTS_IN_TARGET_VECTOR. (i386_use_watchpoints): Declare. (i386_stopped_data_address): Update. * config/i386/nm-linux.h (I386_WATCHPOINTS_IN_TARGET_VECTOR): Define. * config/i386/nm-linux64.h (I386_WATCHPOINTS_IN_TARGET_VECTOR): Define. 2008-02-29 Joel Brobecker GDB 6.8 branch created (branch timestamp: 2008-02-26 10:00 UTC) * version.in: Bump version to 6.8.50.20080229-cvs. 2008-02-28 Markus Deuling * f-typeprint.c (f_print_type): Handle NULL pointer in VARSTRING properly. 2008-02-28 Tom Tromey * infcmd.c (notice_args_read): Print result of get_inferior_args. 2008-02-28 Daniel Jacobowitz * infcmd.c (kill_if_already_running): Make static. Use target_require_runnable. * target.c (target_require_runnable): New. * target.h (target_require_runnable): Declare. 2008-02-28 Daniel Jacobowitz * frame.c (reinit_frame_cache): Only annotate if frames were previously valid. 2008-02-28 Ulrich Weigand * regformats/reg-ppc.dat: Rename "ps" to "msr". * regformats/reg-ppc64.dat: Likewise. 2008-02-28 Ulrich Weigand * features/Makefile (%.dat): Emit xmltarget statement. * regformats/regdat.sh: Support xmltarget and xmlarch statments. Generate code to set gdbserver_xmltarget in init_registers_${name}. * regformats/arm-with-iwmmxt.dat: Regenerate. * regformats/mips64-linux.dat: Regenerate. * regformats/mips-linux.dat: Regenerate. * regformats/rs6000/powerpc-32.dat: Regenerate. * regformats/rs6000/powerpc-64.dat: Regenerate. * regformats/rs6000/powerpc-e500.dat: Regenerate. * regformats/reg-arm.dat: Add xmlarch statement. * regformats/reg-i386.dat: Likewise. * regformats/reg-i386-linux.dat: Likewise. * regformats/reg-x86-64-linux.dat: Likewise. * regformats/reg-spu.dat: Likewise. 2008-02-27 Daniel Jacobowitz * remote.c (remote_wait, remote_async_wait): Stop if we receive an error. 2008-02-27 Daniel Jacobowitz * utils.c (debug_timestamp): New. (vfprintf_unfiltered): Print timestamps if requested. (show_debug_timestamp): New. (initialize_utils): Register "set debug timestamp". * NEWS: Mention "set debug timestamp". Add GDB 6.8 section. 2008-02-27 Joel Brobecker * breakpoint.c (skip_prologue_sal): New function. (resolve_sal_pc): Adjust SAL past prologue if the SAL was computed from a line number. 2008-02-27 Joel Brobecker * features/rs6000/power-core.xml, features/rs6000/power64-core.xml features/rs6000/powerpc-601.xml, features/rs6000/rs6000.xml: Set PC register type to "code_ptr". * features/rs6000/powerpc-32.c, features/rs6000/powerpc-403.c, features/rs6000/powerpc-403gc.c, features/rs6000/powerpc-505.c, features/rs6000/powerpc-601.c, features/rs6000/powerpc-602.c, features/rs6000/powerpc-603.c, features/rs6000/powerpc-604.c, features/rs6000/powerpc-64.c, features/rs6000/powerpc-7400.c, features/rs6000/powerpc-750.c, features/rs6000/powerpc-860.c, features/rs6000/powerpc-e500.c, features/rs6000/rs6000.c: Regenerate. 2008-02-27 Ulrich Weigand * regformats/regdat.sh: Rename init_registers function in generated file to init_registers_${name}. * regformats/reg-crisv32.dat: Set "name" to crisv32. * regformats/reg-ppc64.dat: Set "name" to ppc64. * regformats/reg-s390x.dat: Set "name" to s390x. 2008-02-26 Greg Law * regcache.c (registers_changed): Call reinit_frame_cache. 2008-02-26 Daniel Jacobowitz * configure.tgt (sh-*-linux*): Match sh*. Add glibc-tdep.o. * sh-linux-tdep.c (sh_linux_init_abi): Use glibc_skip_solib_resolver and svr4_fetch_objfile_link_map. * Makefile.in (sh-linux-tdep.o): Update. 2008-02-26 Thiago Jung Bauermann * amd64-tdep.c (amd64_classify): Add support for decimal float types. * i386-tdep.c (i386_return_value): Make 128-bit decimal float use the struct return convention. 2008-02-26 Nick Roberts * breakpoint.c (print_one_breakpoint_location): Revert Enb field to old format. Discard breakpoint address if shared library is unloaded. (breakpoint_1): Adjust formatting of table header accordingly. 2008-02-25 Vladimir Prus * remote.c (remote_get_threadlist): If the response is empty, don't try to parse it. 2008-02-23 Vladimir Prus Unbreak 'target async'. * serial.c (serial_async): Set the handler function before enabling async mode. 2008-02-22 Daniel Jacobowitz * solib-svr4.c (enable_break): Convert r_brk to a code address. 2008-02-21 Pedro Alves * remote.c (extended_remote_attach_1): Set attach_flag. (extended_remote_create_inferior_1): Clear attach_flag. 2008-02-20 Daniel Jacobowitz * mipsnbsd-tdep.c (mipsnbsd_ilp32_fetch_link_map_offsets): Set r_brk_offset. (mipsnbsd_lp64_fetch_link_map_offsets): Likewise. * solib-svr4.c (solib_svr4_r_brk): New. (open_symbol_file_object, svr4_current_sos): Always check the debug base. (svr4_fetch_objfile_link_map): Do not set debug_base. (enable_break): Use r_brk if it is set. (svr4_ilp32_fetch_link_map_offsets): Set r_brk_offset. (svr4_lp64_fetch_link_map_offsets): Likewise. * solib-svr4.h (struct link_map_offsets): Add r_brk_offset. 2008-02-20 Markus Deuling Mark Kettenis * alpha-tdep.c (alpha_heuristic_unwind_cache): Replace saved_regs by trad_frame_saved_reg. (trad-frame.h): New include. (alpha_heuristic_frame_unwind_cache): Use trad_frame_alloc_saved_regs instead of frame_obstack_zalloc. (alpha_heuristic_frame_prev_register): Use trad_frame_get_prev_register. * Makefile.in (alpha-tdep.o): Add dependency to trad_frame_h. 2008-02-20 Markus Deuling * rs6000-tdep.c (gdb_print_insn_powerpc): Get the current endianess from disassemble_info instead of gdbarch_byte_order. * mips-tdep.c (gdb_print_insn_mips): Likewise. * arm-tdep.c (gdb_print_insn_arm): Likewise. 2008-02-20 Markus Deuling * gdbarch.sh (memory_insert_breakpoint, memory_remove_breakpoint): Add gdbarch as parameter. * gdbarch.{c,h}: Regenerate. * ppc-tdep.h (ppc_linux_memory_remove_breakpoint): Add gdbarch as parameter. * mem-break.c (default_memory_insert_breakpoint) (default_memory_remove_breakpoint): Likewise. * target.h (default_memory_remove_breakpoint) (default_memory_insert_breakpoint): Likewise. * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint): Add gdbarch as parameter. Replace current_gdbarch by gdbarch. * m32r-tdep.c (m32r_memory_insert_breakpoint) (m32r_memory_remove_breakpoint): Likewise. 2008-02-19 Daniel Jacobowitz * MAINTAINERS: Add Vladimir Prus as MI maintainer. 2008-02-19 Joel Brobecker * NEWS: Add entry describing Add support improvements. 2008-02-18 Markus Deuling * m68klinux-nat.c (getfpregs_supplies): Replace gdbarch_fp0_regnum by M68K_FP0_REGNUM. 2008-02-18 Markus Deuling * sentinel-frame.c (sentinel_frame_prev_register): Do not call register_offset_hack anymore. * regcache.{c,h} (register_offset_hack): Remove. 2008-02-18 Markus Deuling * hppa-tdep.h (find_global_pointer): Add gdbarch as parameter. * hppa-hpux-tdep.c (hppa32_hpux_find_global_pointer): Likewise. Replace current_gdbarch by gdbarch. (hppa64_hpux_find_global_pointer): Likewise. * hppa-tdep.c (hppa_find_global_pointer): Likewise. (hppa32_push_dummy_call, hppa64_push_dummy_call): Update call for find_global_pointer. * hppabsd-tdep.c (hppabsd_find_global_pointer): Add gdbarch as parameter. * hppa-linux-tdep.c (hppa_linux_find_global_pointer): Likewise. * hppa-linux-nat.c (hppa_linux_register_addr): Use ARRAY_SIZE instead of gdbarch_num_regs. * hppa-hpux-tdep.c (hppa_hpux_sr_for_addr): Add gdbarch as parameter and replace current_gdbarch by gdbarch. (hppa_hpux_push_dummy_code): Update call for hppa_hpux_sr_for_addr. 2008-02-18 Markus Deuling * rs6000-nat.c (exec_one_dummy_insn, regmap): Add gdbarch as parameter and replace current_gdbarch by gdbarch. (store_register): Update call for exec_one_dummy_insn. (fetch_register, store_register): Update call of regmap. * ppcnbsd-nat.c (getregs_supplies, getfpregs_supplies): Add gdbarch as parameter and replace current_gdbarch by gdbarch. (ppcnbsd_store_inferior_registers): Use get_regcache_arch to get at the current architecture. Update call for getregs_supplies and getfpregs_supplies. (ppcnbsd_fetch_inferior_registers): Likewise. * ppcobsd-nat.c (getfpregs_supplies): Add gdbarch as parameter and replace current_gdbarch by gdbarch. (ppcobsd_fetch_registers, ppcobsd_store_registers): Use get_regcache_arch to get at the current architecture. Update call for getfpregs_supplies. 2008-02-18 Markus Deuling * arch-utils.c (gdbarch_from_bfd): Remove unnecessary {old,new}_gdbarch variables. 2008-02-15 Markus Deuling * mips-linux-tdep.c (mips_linux_init_abi): Remove internal error. 2008-02-14 Vladimir Prus * NEWS: Mention pending breakpints in MI. 2008-02-14 Markus Deuling * Makefile.in (ALL_TARGET_OBS): Remove dependency to xtensa-linux-nat.o. 2008-02-13 Markus Deuling Add script to build and test GDB using enable-targets=all. * gdb_buildall.sh: New file. 2008-02-11 Maxim Grigoriev * NEWS (New native configurations): Xtensa GNU/Linux. (New targets): Xtensa GNU/Linux. * Makefile.in (ALL_TARGET_OBS): Add xtensa-linux-nat.o and xtensa-linux-tdep.o (ALLDEPFILES): Add xtensa-linux-tdep.c and xtensa-linux-nat.c (xtensa-linux-nat.o, xtensa-linux-tdep.o): New dependencies. * configure.tgt (xtensa*-*-linux*): New entry. * xtensa-config.c (xtensa_tdep): New variable. (xtensa_config_byte_order, xtensa_config_tdep): Removed. (rmap): Change format based on new macro XTREG. (XTENSA_CONFIG_INSTANTIATE): Use new macro defined in xtensa-tdep.h. * xtensa-linux-nat.c: New. * xtensa-linux-tdep.c: New. * xtensa-xtregs.c: New. * xtensa-tdep.h (xtensa_elf_gregset_t): Update. (XTENSA_ELF_NGREG, XTREG, XTREG_END, XTENSA_GDBARCH_TDEP_INSTANTIATE) (XCHAL_NUM_CONTEXTS, XCHAL_HAVE_EXCEPTIONS): New macros. (xtensa_register_t): New field coprocessor. (XTENSA_REGISTER_FLAGS_PRIVILEGED): Name spelling corrected. * xtensa-tdep.c (xtensa_config_tdep, xtensa_config_byte_order): Removed. (xtensa_pseudo_register_read, xtensa_pseudo_register_write): Update to handle privileged registers. (xtensa_supply_gregset) Remove exccause and excvaddr registers. (xtensa_push_dummy_call): Set windowstart register correctly. (call0_analyze_prologue): Initialize xtensa_default_isa. (xtensa_derive_tdep): New. (xtensa_gdbarch_init): Get rid of xtensa_config_byte_order and xtensa_config_tdep, use XCHAL_HAVE_BE and xtensa_tdep instead. Call xtensa_derive_tdep(). * config/xtensa/linux.mh: New. * regformats/reg-xtensa.dat: New. 2008-02-09 Aleksandar Ristovski (tiny change) * corelow.c (core_open): Use IS_ABSOLUTE_PATH. (filenames.h): New include. * Makefile.in (corelow.o): Add dependency for filenames.h. 2008-02-08 Doug Evans * source.c (find_and_open_source): Always rewrite absolute filenames. 2008-02-07 Doug Evans * breakpoint.c: #include "hashtab.h". (ambiguous_names_p): New fn. (update_breakpoint_locations): When restoring bp enable status, don't compare function names if any functions have same name. * Makefile.in (breakpoint.o): Add hashtab.h dependency. 2008-02-07 Joel Brobecker * ada-lang.c (symbol_completion_add): Make SV parameter a VEC** instead of just a VEC*. Update use of SV. (ada_make_symbol_completion_list): Update symbol_completion_add calls. 2007-02-07 Joel Brobecker * NEWS: Put all new commands since gdb-6.7 together. 2007-02-07 Joel Brobecker * ada-lang.c: #include "vec.h". (struct string_vector, new_string_vector, string_vector_append): Delete. (char_ptr): New typedef. (DEF_VEC_P (char_ptr)): New VEC type. (symbol_completion_add): Update profile to take the new VEC type instead of the old string_vector structure. Update code accordingly. (ada_make_symbol_completion_list): Use the new VEC type instead of the old string_vector structure, and update the code accordingly. * Makefile.in (ada-lang.o): Add dependency on vec.h. 2008-02-06 Pierre Muller * p-exp.y: Set current_type in missing places. (leftdiv_is_integer): New static variable. Typecast right operand of BINOP_DIV to long_double if both operands are integers. 2008-02-06 Maciej W. Rozycki * remote-mips.c (set_breakpoint): Rename to... (mips_set_breakpoint): ... this. (clear_breakpoint): Rename to... (mips_clear_breakpoint): ... this. (common_breakpoint): Rename to... (mips_common_breakpoint): ... this. (check_lsi_error): Rename to... (mips_check_lsi_error): ... this. 2007-02-05 Joel Brobecker * language.h (struct language_defn): Add new field la_make_symbol_completion_list. * symtab.c (default_make_symbol_completion_list): Renames make_symbol_completion_list. (make_symbol_completion_list): New function. * symtab.h (default_make_symbol_completion_list): Add declaration. * langauge.c (unknown_language): Set la_make_symbol_completion_list. (auto_language, local_language): Likewise. * objc-lang.c (objc_language_defn): Likewise. * scm-lang.c (scm_language_defn): Likewise. * m2-lang.c (m2_language_defn): Likewise. * f-lang.c (f_language_defn): Likewise. * jv-lang.c (java_language_defn): Likewise. * p-lang.c (pascal_language_defn): Likewise. * c-lang.c (c_language_defn, cplus_language_defn, asm_language_defn) (minimal_language_defn): Likewise. * ada-lang.c (struct string_vector): New structure. (new_string_vector, string_vector_append, ada_unqualified_name) (add_angle_brackets, symbol_completion_match, symbol_completion_add) (ada_make_symbol_completion_list): New functions. (ada_language_defn): Set la_make_symbol_completion_list. * ada-lang.h (ada_make_symbol_completion_list): Remove declaration, this function is static. 2008-02-05 Kevin Buettner * mn10300-tdep.c (mn10300_push_dummy_call): Adjust stack pointer to account for call site optimizations. 2008-02-05 Andrzej Zaborowski * tracepoint.c (read_actions): Handle end-of-text indicator in action list properly. (Committed by Jim Blandy) 2008-02-05 Jim Blandy * ax-gdb.c (gen_expr): Yield ordinary error if asked to trace a pseudoregister, not an internal error. Reported by: Andrzej Zaborowski 2008-02-04 Vladimir Prus * varobj.c (c_value_of_variable): Use xstrdup. 2008-02-04 Vladimir Prus Update stored rendition of varobj value when format changes. * varobj.c (varobj_set_display_format): Recomputed print_value. (c_value_of_variable): Return print_value. 2008-02-03 Doug Evans * eval.c (evaluate_subexp_standard): Fix type of result of mixed integer/float division operations when EVAL_AVOID_SIDE_EFFECTS. * valops.c (value_one): New function. * value.h (value_one): Declare. Fix argument promotion for binary arithmetic ops for C. * valarith.c (unop_result_type): New fn. (binop_result_type): New fn. (value_binop): Move result type computation to binop_result_type. (value_pos, value_neg, value_complement): Move result type computation to unop_result_type. PR 2384 * gdbtypes.c (get_vptr_fieldno): Renamed from fill_in_vptr_fieldno. Return basetype, fieldno if found. All callers updated. Don't cache TYPE_VPTR_FIELDNO, TYPE_VPTR_BASETYPE if from different objfile. * gdbtypes.h (get_vptr_fieldno): Renamed from fill_in_vptr_fieldno. * symfile.h (fill_in_vptr_fieldno): Delete. 2008-02-02 Doug Evans * valarith.c (value_binop): Handle unsigned BINOP_REM division by zero. * typeprint.c (*): Whitespace cleanup. 2008-02-02 Mark Kettenis Luis Machado Thiago Jung Bauermann * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Pass floats that don't fit into registerson the stack the way GCC does. 2008-02-01 Joel Brobecker * symtab.c (symbol_set_names): Do not add an entry in the demangling hash table for Ada symbols. Just store the linkage name as is, and leave the demangled_name as NULL. 2007-02-01 Joel Brobecker * dwarf2read.c (add_partial_symbol): Always store all Ada subprograms in the global scope. (new_symbol): Likewise. 2008-02-01 Vladimir Prus * breakpoint.c (break_command_1): Return void. (break_command_really): Return void. Rethrow exceptions instead of returning. (gdb_breakpoint): Remove the error_message parameter. Return void. Rename to set_breakpoint. * gdb.h (gdb_breakpoint): Rename and move to... * breakpoint.h (set_breakpoint): ...here. * mi/mi-cmb-break.c (mi_cmd_break_insert): Restore event hooks even if exception is thrown. Adjust to gdb_breakpoint interface changes. 2008-02-01 Thiago Jung Bauermann * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Write 32-bit float in both first and second word in the doubleword, to support old and new ABIs. 2008-02-01 Vladimir Prus Properly rethrow exception. This fixes errors about non-existent functions for -break-insert. * breakpoint.c (break_command_really): Use throw_exception for rethrowing. If rethrowing, don't print the exception. 2008-01-31 Thiago Jung Bauermann * NEWS: Mention Decimal Floating Point support. 2008-01-31 Joel Brobecker * std-regs.c (value_of_builtin_frame_pc_reg): Change the returned value type to builtin_type_void_func_ptr. 2008-01-31 Andreas Krebbel * s390-tdep.c (is_float_singleton, is_float_like, alignment_of, s390_return_value): Make checks for TYPE_CODE_FLT to match TYPE_CODE_DECFLOAT as well. 2008-01-31 Luis Machado Thiago Jung Bauermann * infcmd.c (default_print_registers_info): Also print hex raw contents for TYPE_CODE_DECFLOAT registers. * ppc-tdep.h (gdbarch_tdep): Add ppc_dl0_regnum member. * rs6000-tdep.c (IS_DFP_PSEUDOREG): New macro. (rs6000_register_name): Add support for DFP pseudo-registers. (rs6000_pseudo_register_type): Likewise. rs6000_pseudo_register_reggroup_p): Likewise. (ppc_pseudo_register_read): New function. (ppc_pseudo_register_write): Likewise. (rs6000_pseudo_register_read): Likewise. (rs6000_pseudo_register_write): Likewise. (e500_pseudo_register_read): Move checks to rs6000_pseudo_register_read. (e500_pseudo_register_write): Move checks to rs6000_pseudo_register_write. (rs6000_gdbarch_init): Initialize tdep->ppc_dl0_regnum. Install rs6000_pseudo_register_read and rs6000_pseudo_register_write in gdbarch if SPE or DFP is available. Adjust gdbarch's num_pseudo_regs to account for DFP pseudo regs. 2008-01-31 Thiago Jung Bauermann * ppc-tdep.h (struct gdbarch_tdep): Remove ppc_ev31_regnum member. * rs6000-tdep.c (IS_SPE_PSEUDOREG): New macro. (spe_register_p, rs6000_register_name, rs6000_pseudo_register_type, rs6000_pseudo_register_reggroup_p, e500_move_ev_register, e500_pseudo_register_read, e500_pseudo_register_write): Use IS_SPE_PSEUDOREG macro. (rs6000_frame_cache): Remove use of tdep->ppc_ev31_regnum. (rs6000_gdbarch_init): Remove unnecessary num_sprs local variable. Remove initialization of tdep->ppc_ev31_regnum. 2008-01-08 Paul Hilfinger * printcmd.c (print_formatted): Handle references as for unformatted prints. 2008-01-30 Joel Brobecker * eval.c (evaluate_subexp_standard): Add handling of user registers when in EVAL_AVOID_SIDE_EFFECTS mode. 2008-01-30 Pierre Muller * eval.c (evaluate_subexp_standard): Support BINOP_INTDIV opcode. 2008-01-30 Paul N. Hilfinger * valarith.c (value_binop): Add floating-point BINOP_MIN and BINOP_MAX cases. For BINOP_EXP, use length and signedness of left operand only for result, as for shifts. For integral operands to BINOP_EXP, use new integer_pow and uinteger_pow functions so as to get full range of results. (integer_pow): New function. (uinteger_pow): New function. 2008-01-30 Vladimir Prus Use vector for varobj_list_children interface. * gdb/varobj.c (varobj_list_children): Return vector of varobjs. * gdb/varobj.h (varobj_list_children): Adjust prototype. (varobj_p): Declare. Declare vector thereof. * mi/mi-cmd-var.c (mi_cmd_var_list_children): Adjust for varobj_list_children change. * Makefile.in (varobj_h): Update dependencies. 2008-01-30 Thiago Jung Bauermann * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Add support for TYPE_CODE_DECFLOAT arguments. (ppc64_sysv_abi_push_dummy_call) Likewise. (get_decimal_float_return_value): New function. (do_ppc_sysv_return_value): Add support for TYPE_CODE_DECFLOAT return values by calling get_decimal_float_return_value. (ppc64_sysv_abi_return_value): Likewise. 2008-01-30 Nick Roberts * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_file): Add field for preprocessor macro information. Formatting changes. 2008-01-29 Daniel Jacobowitz * remote.c (struct remote_state): Add cached_wait_status. (remote_exec_file): New variable. (PACKET_vAttach, PACKET_vRun): New constants. (extended_remote_restart): Do not query for status. (struct start_remote_args): New. (remote_start_remote): Take it as a second argument. Check whether the target is running. Issue an error for non-running non-extended targets. Cache the wait status. Set inferior_ptid here. (remote_open_1): Prompt to disconnect non-running targets. Make sure the target is marked running. Do not set inferior_ptid here. Update call to remote_start_remote. Do not call remote_check_symbols if the target is not running. (remote_detach_1): Rename from remote_detach. Take an EXTENDED argument. Handle a non-running target. (remote_detach): Use it. (extended_remote_detach): New. (remote_disconnect): Fix typo. Use remoute_mourn_1. (extended_remote_attach_1, extended_remote_attach) (extended_async_remote_attach): New. (remote_vcont_resume): Remove unused variable. (remote_wait, remote_async_wait): Use any cached wait status. (putpkt_binary, getpkt): Clear any cached wait status. (extended_remoute_mourn_1): New. (extended_remote_mourn): Use it. (extended_async_remote_mourn, extended_remote_run): New. (extended_remote_create_inferior_1): New. (extended_remote_create_inferior): Use it. (extended_remote_async_create_inferior): Likewise. (remote_xfer_partial): Skip for non-executing targets. (init_extended_remote_ops): Set to_detach and to_attach. (init_extended_async_remote_ops): Likewise. Use extended_async_remote_mourn. (_initialize_remote): Register vAttach, vRun, and set remote exec-file. * NEWS: Mention vAttach, vRun, and gdbserver extended-remote support. 2008-01-29 Daniel Jacobowitz * Makefile.in (symfile.o): Update. * NEWS: Mention exec tracing support. * inf-ttrace.c (inf_ttrace_wait): Return TARGET_WAITKIND_EXECD for exec events. * infcmd.c (kill_if_already_running, detach_command) (disconnect_command): Replace SOLIB_RESTART with no_shared_libraries. * infrun.c (MAY_FOLLOW_EXEC, may_follow_exec): Delete. (follow_exec): Do not check may_follow_exec. Do not mourn and push targets. Apply the sysroot path to the loaded executable. Use no_shared_libraries. * linux-nat.c (linux_child_follow_fork): Print fork following messages if verbose. (kill_wait_callback): Kill again before waiting a second time. * symfile.c (symbol_file_clear): Replace SOLIB_RESTART with no_shared_libraries. 2008-01-29 Joel Brobecker * amd64-tdep.c (amd64_classify): Add handling of TYPE_CODE_CHAR. 2008-01-29 Joel Brobecker * nto-tdep.h: Remove #include "defs.h". * nto-tdep.c: Add #include "defs.h". * Makefile.in (nto_tdep_h): Update dependencies. (nto-tdep.o): Likewise. 2008-01-29 Joel Brobecker * infrun.c (wait_for_inferior): Add treat_exec_as_sigtrap parameter and use it. (proceed, start_remote): Update call to wait_for_inferior. * inferior.h (wait_for_inferior): Update declaration. * fork-child.c, infcmd.c, solib-irix.c, solib-osf.c, solib-sunos.c, solib-svr4.c, win32-nat.c: Update calls to wait_for_inferior. * inf-ttrace.c (inf_ttrace_wait): Report TTEVT_EXEC events as TARGET_WAITKIND_EXECD instead of TARGET_WAITKIND_STOPPED. 2008-01-29 Aleksandar Ristovski * varobj (adjust_value_for_child_access): Added checking for returned value from gdb_value_ind. (c_describe_child): Likewise. (cplus_describe_child): Fixed a typo. 2008-01-29 Jim Blandy * MAINTAINERS: Update my info. 2008-01-29 Vladimir Prus Use multiple locations for hardware watchpoints. This eliminates the need to traverse value chain, doing various checks, in three different places. * breakpoint.h (struct bp_location): New fields lengths and watchpoint_type. (struct breakpoint): Remove the val_chain field. * breakpoint.c (is_hardware_watchpoint): New. (free_valchain): Remove. (update_watchpoint): New. (insert_bp_location): For hardware watchpoint, just directly insert it. (insert_breakpoints): Call update_watchpoint_locations on all watchpoints. If we have failed to insert any location of a hardware watchpoint, remove all inserted locations. (remove_breakpoint): For hardware watchpoints, directly remove location. (watchpoints_triggered): Iterate over locations. (bpstat_stop_status): Use only first location of a resource watchpoint. (delete_breakpoint): Don't call free_valchain. (print_one_breakpoint): Don't print all locations for watchpoints. (breakpoint_re_set_one): Use update_watchpoint for watchpoints. 2008-01-29 Vladimir Prus Don't reset watchpoint block on solib load. * breakpoint.c (insert_bp_location): For watchpoints, recompute condition. (breakpoint_re_set_one): Instead of recomputing value and condition for watchpoints, just reset value and let insert_breakpoints/insert_bp_location recompute it. Don't do anything about disabled watchpoint. 2008-01-29 Pierre Muller * valarith.c (value_binop): Handle unsigned integer division by zero. 2008-01-28 Kevin Buettner * mn10300-tdep.c (mn10300_analyze_prologue): Check for an instruction pattern that appears frequently in position independent code. Fix bug in code which looks for "fmov" and backtracks if no "fmov" is found. 2008-01-28 Doug Evans * dbxread.c (read_dbx_symtab): Fix indentation. Reformat comments to 80 columns. Move local var def closer to only use. 2008-01-28 Daniel Jacobowitz * fork-child.c (SHELL_FILE): Remove #ifndef. (fork_inferior): Remove SHELL_COMMAND_CONCAT. 2008-01-25 Pierre Muller * i386-tdep.c (i386_skip_noop): New function. (i386_analyze_prologue): Call i386_skip_noop function. 2008-01-24 Michael Snyder * procfs.c (procfs_xfer_partial): Comment, cut/paste error. * win32-nat.c (win32_xfer_partial): Ditto. * target.c (default_xfer_partial): Minor whitespace adjustment. 2008-01-24 Pedro Alves * arm-tdep.c (arm_addr_bits_remove): In non 26-bit mode, don't strip bit 1 even if pc doesn't point to thumb code. 2008-01-23 Daniel Jacobowitz * remote.c (remote_wait): Handle SIGINT between packets. (remote_async_wait): Likewise. 2008-01-23 Vladimir Prus Chris Demetriou * thread.c (add_thread_silent): Renamed from add_thread. (print_thread_events): New variable definition. (show_print_thread_events): New function. (_initialize_thread): Add "set print thread-events" and "show print thread-events" commands. (add_thread): Announce new thread. * gdbthread.h (add_thread_silent): Declare. (print_thread_events): New variable declaration. * inf-ttrace.c (inf_ttrace_wait): Don't inform about new thread, as add_thread is always called too, and will take care of that. * infrun.c (handle_inferior_event): Likewise. * procfs.c (procfs_wait): Likewise. * remote.c (remote_currthread): Likewise. * sol-thread.c (sol_thread_wait): Likewise. * win32-nat.c (get_win32_debug_event): Likewise. * linux-thread-db.c (attach_thread): Likewise. Remove the verbose parameter. (check_event): Make detach_thread be verbose only if print_thread_events is set. * linux-nat.c (lin_lwp_attach_lwp): Don't inform about new thread. This is called only from linux-thread-db.c:attach_thread, which will take care. Remove the verbose parameter. * linux-nat.h (lin_lwp_attach_lwp): Adjust prototype. 2008-01-23 Nick Roberts * mi/mi-cmd-var.c (mi_cmd_var_set_format): Add value field to output. 2008-01-22 Vladimir Prus * breakpoint.c (break_command_really): New parameter ignore_count. (break_command_1): Pass 0 as ignore_count to break_command_really. (gdb_breakpoint): Pass ignore_count to break_command_really. 2008-01-21 Kevin Buettner * mn10300-linux-tdep.c (am33_linux_sigframe_cache_init): Find sigcontext struct via pointer. (struct sigframe comment): Update to show new field `psc'. 2008-01-21 Vladimir Prus * infrun.c (handle_inferior_event): If we failed to remove breakpoints, error, don't try to increment PC by hand. 2008-01-18 Nick Hudson Add NetBSD/hppa target and host support. * hppabsd-tdep.c (hppabsd_supply_gregset): Move to ... (hppabsd_gregset): Move to ... (hppabsd_regset_from_core_section): Rename hppaobsd_regset_from_core_section and move to ... (hppabsd_find_global_pointer): Update comment. (hppabsd_init_abi): Make global. Do not register hppabsd_regset_from_core_section. (hppabsd_core_osabi_sniffer): Rename hppaobsd_core_osabi_sniffer and move to ... (_initialize_hppabsd_tdep): Move to ... * hppaobsd-tdep.c: ... here. New file. * hppnbsd-tdep.c: New file. * hppnbsd-nat.c: New file. * Makefile.in (ALL_TARGET_OBS): Add hppanbsd-tdep.o and hppaobsd-tdep.o. (ALLDEPFILES): Add hppabsd-nat.c and hppabsd-tdep.c. (hppabsd-nat.o, hppabsd-tdep.o): New dependencies. (hppabsd-tdep.o, hppaobsd-tdep.o): Update dependencies. * configure.host (hppa*-*-netbsd*): New entry. * configure.tgt (hppa*-*-netbsd*): New entry. (hppa*-*-openbsd*): Update. * NEWS (New native configuration): Mention NetBSD/hppa. (New targets): Mention NetBSD/hppa. 2008-01-18 Markus Deuling * gdbarch.sh (function_list): Add new property bits_big_endian to gdbarch structure. * gdbarch.{c,h}: Regenerate. * value.c (struct value): Replace BITS_BIG_ENDIAN by gdbarch_bits_big_endian (comment). (unpack_field_as_long, modify_field): Likewise. * value.h: Likewise (comment). * valops.c (value_slice): Likewise. * valarith.c (value_subscript, value_bit_index): Likewise. * gdbtypes.h (field): Likewise (comment). * eval.c (evaluate_subexp_standard): Likewise. * dwarf2read.c (dwarf2_add_field): Likewise. * ada-lang.c (decode_packed_array, ada_value_primitive_packed_val) (move_bits, ada_value_assign, value_assign_to_component): Likewise. * defs.h (BITS_BIG_ENDIAN): Remove. 2008-01-18 Markus Deuling * jv-exp.y (yylex): Replace DEPRECATED_STREQN with the appropriate function calls. * m2-exp.y (yylex): Likewise. * objc-exp.y (yylex): Likewise. * defs.h (DEPRECATED_STREQN): Remove. 2008-01-17 H.J. Lu * MAINTAINERS: Update my email address. 2008-01-17 Jim Blandy * README: Mention gdbserver/README. 2008-01-17 Pierre Muller * valarith.c (value_binop): Handle BINOP_INTDIV for unsigned and signed integers. 2008-01-17 Ulrich Weigand * s390-tdep.c (s390_gdbarch_init): Set default long double type to 128-bit IEEE quad. 2008-01-17 Joel Brobecker * hpux-thread.c (hpux_thread_resume): Delete commented-out code. 2008-01-16 Mark Kettenis * auxv.c (fprint_target_auxv): Add support for AT_SUN_AUXFLAGS. * dfp.c, dfp.h: Rename decimal_to_double to decimal_to_doublest. * value.c: All callers changed. 2008-01-16 Markus Deuling * rs6000-nat.c (add_vmap, vmap_ldinfo, vmap_exec): Replace DEPRECATED_STREQ by its expression. * coffread.c (coff_locate_sections, coff_symtab_read): Likewise. * xcoffread.c (read_xcoff_symtab, read_symbol_lineno, find_linenos) (scan_xcoff_symtab): Likewise. * hppa-hpux-tdep.c (hppa_hpux_skip_trampoline_code): Likewise. * f-lang.c (find_common_for_function): Likewise. * objc-exp.y (parse_number): Likewise. * defs.h (DEPRECATED_STREQ): Remove. 2008-01-16 Markus Deuling * mn10300-tdep.h (AM33_MODE): Add gdbarch as parameter. * mn10300-tdep.c (set_reg_offsets, mn10300_analyze_prologue): Use get_frame_arch to get at the current_architecture. Update AM33_MODE call. (mn10300_analyze_prologue): Add gdbarch as parameter. Update caller. (mn10300_frame_unwind_cache): Use get_frame_arch to get at the current architecture. (set_reg_offsets, mn10300_analyze_prologue): Fix indentation. 2008-01-16 Markus Deuling * amd64-nat.h (amd64_native_gregset_supplies_p): Add gdbarch as parameter. * amd64-nat.c (amd64_native_gregset_supplies_p): Likewise. (amd64_native_gregset_reg_offset): Add gdbarch as parameter. Replace current_gdbarch by gdbarch. Update caller. * amd64-linux-nat.c (amd64_linux_fetch_inferior_registers) (amd64_linux_store_inferior_registers): Use get_regcache_arch to get at the current architecture. Update calls of amd64_native_gregset_supplies_p. * amd64bsd-nat.c (amd64bsd_fetch_inferior_registers) (amd64bsd_store_inferior_registers): Likewise. 2008-01-16 Markus Deuling * ppc-linux-nat.c (ppc_register_u_addr): Add gdbarch as parameter. Replace current_gdbarch by gdbarch. Update caller. 2008-01-16 Markus Deuling * dbxread.c (repeated_header_complaint, dbx_symfile_init) (read_dbx_dynamic_symtab, function_outside_compilation_unit_complaint) (read_dbx_symtab, end_psymtab, dbx_psymtab_to_symtab_1) (dbx_psymtab_to_symtab, read_ofile_symtab, process_one_symbol) (stabsect_build_psymtabs): Fix indentation. 2008-01-15 Michael Snyder * corelow.c (core_xfer_partial): Comment, cut/paste error. 2008-01-14 Pierre Muller * win32-nat.c (win32_create_inferior): Restore code calling CloseHandle on ProcessInformation structure. 2008-01-13 Nick Hudson * configure.ac: Check for void * as 3 argument of ptrace. * configure: regenerate. 2008-01-11 Markus Deuling * alpha-tdep.c (alpha_heuristic_proc_start) (alpha_sigtramp_register_address): Add gdbarch as parameter. Replace current_gdbarch by gdbarch. (alpha_heuristic_frame_unwind_cache): Use get_frame_arch to get at the current architecture by frame_info. Update alpha_heuristic_proc_start call. (alpha_sigtramp_frame_this_id, alpha_sigtramp_frame_prev_register): Use get_frame_arch to get at the current architecture by frame_info. Update alpha_sigtramp_register_address call. * arm-tdep.c (thumb_scan_prologue): Add gdbarch as parameter and replace current_gdbarch by gdbarch. Update caller. (convert_to_extended, convert_from_extended): Add endianess parameter for comparison. Update caller. (arm_extract_return_value, arm_store_return_value): Use get_regcache_arch to get at the current architecture. * cris-tdep.c (cris_register_size): Add gdbarch as parameter. Replace current_gdbarch by gdbarch. Update caller. (cris_gdb_func, move_to_preg_op, none_reg_mode_move_from_preg_op): Add gdbarch as parameter. Update caller. Replace current_gdbarch by gdbarch. * h8300-tdep.c (E_PSEUDO_CCR_REGNUM, E_PSEUDO_EXR_REGNUM, BINWORD): Add gdbarch as parameter. Update caller. (h8300_init_frame_cache): Add gdbarch as parameter. Replace current_gdbarch by gdbarch. Update caller. * hppa-tdep.c (skip_prologue_hard_way): Add gdbarch as parameter and update caller. Replace current_gdbarch by gdbarch. * m32c-tdep.c (m32c_skip_trampoline_code): Use get_frame_arch to get at the current architecture. Replace current_gdbarch by gdbarch. * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise. (STACK_CORRECTION, USE_PAGE_REGISTER): Replace M6811_TDEP by its expression. Add gdbarch as parameter and replace current_gdbarch with it. Update caller. (M6811_TDEP): Remove. (m68hc11_frame_prev_register): Use get_frame_arch to get at the current architecture. (m68hc11_scan_prologue): Add gdbarch as parameter. Replace current_gdbarch by gdbarch. Update caller. * m68k-tdep.c (m68k_analyze_prologue): Add gdbarch as parameter and update caller. (m68k_analyze_register_saves): Likewise. Also replace current_gdbarch by gdbarch. * rs6000-tdep.c (skip_prologue): Add gdbarch as parameter and update caller. Relace current_gdbarch by gdbarch. (altivec_register_p, spe_register_p): Likewise. * ppc-tdep.h (altivec_register_p, spe_register_p): Add gdbarch as parameter. * ppc-linux-nat.c (fetch_register, store_register): Update caller of altivec_register_p and spe_register_p. * score-tdep.c (score_fetch_inst): Add gdbarch as parameter. Update caller. Replace current_gdbarch by gdbarch. (score_analyze_prologue): use get_frame_arch to get at the current architecture. * sparc-tdep.h (sparc_analyze_prologue): Add gdbarch as parameter. * sparc-tdep.c (sparc_analyze_prologue): Likewise. Replace current_gdbarch by gdbarch. Update caller. (sparc_frame_cache): Use get_frame_arch to get at the current architecture. * sparce64-tdep.c (sparc64_skip_prologue): Update call of sparc_analyze_prologue. * mn10300-tdep.c (mn10300_dwarf2_reg_to_regnum): Add gdbarch as parameter. 2008-01-11 Markus Deuling * exec.c: #include "arch-utils.h" (print_section_info): Use gdbarch_from_bfd to get at the current architecture. Replace current_gdbarch. Fix indention. Replace deprecated_print_address_numeric by paddress. * Makefile.in (exec.o) Add dependency to arch-utils.h. * valprint.c (val_print_string): Replace deprecated_print_address_numeric. * tracepoint.c (trace_mention, scope_info): Likewise. * symmisc.c (dump_msymbols, dump_psymtab, dump_symtab_1, print_symbol) (print_symbol, print_partial_symbols, maintenance_info_psymtabs) (maintenance_check_symtabs): Likewise. * symfile.c (list_overlays_command): Likewise. * stack.c (frame_info, print_block_frame_labels): Likewise. * printcmd.c (print_address, print_address_demangle) (address_info): Likewise. * corefile.c (memory_error): Likewise. * infcmd.c (jump_command): Likewise. * breakpoint.c (insert_bp_location, describe_other_breakpoints) (mention, delete_breakpoint): Likewise. * c-valprint.c (print_function_pointer_address, c_val_print): Likewise. * dwarf2read.c (dump_die): Likewise. * ada-valprint.c (ada_val_print_1): Likewise. * f-valprint.c (f_val_print): Likewise. * linux-fork.c (info_forks_command): Likewise. * m32r-com.c (m32r_load_section, m32r_load) (m32r_upload_command): Likewise. * ui-out.c (ui_out_field_core_addr): Remove unnecessary comment. 2008-01-11 Markus Deuling * gdbarch.sh (skip_prologue): Add gdbarch as parameter. * gdbarch.{c,h}: Regenerate. * alpha-tdep.c (alpha_skip_prologue): Add gdbarch as parameter. * amd64-tdep.c (amd64_skip_prologue): Likewise. * avr-tdep.c (avr_skip_prologue): Likewise. * cris-tdep.c (cris_skip_prologue): Likewise. * frv-tdep.c (frv_skip_prologue): Likewise. * h8300-tdep.c (h8300_skip_prologue): Likewise. * hppa-tdep.c (hppa_skip_prologue): Likewise. * i386-tdep.c (i386_skip_prologue): Likewise. * ia64-tdep.c (ia64_skip_prologue): Likewise. * iq2000-tdep.c (iq2000_skip_prologue): Likewise. * m32r-tdep.c (m32r_skip_prologue): Likewise. * m68hc11-tdep.c (m68hc11_skip_prologue): Likewise. * m68k-tdep.c (m68k_skip_prologue): Likewise. * m88k-tdep.c (m88k_skip_prologue): Likewise. * mep-tdep.c (mep_skip_prologue): Likewise. * mips-tdep.c (mips_skip_prologue): Likewise. * mn10300-tdep.c (mn10300_skip_prologue): Likewise. * mt-tdep.c (mt_skip_prologue): Likewise. * rs6000-tdep.c (rs6000_skip_prologue): Likewise. * score-tdep.c (score_skip_prologue): Likewise. * sh64-tdep.c (sh64_skip_prologue): Likewise. * sh-tdep.c (sh_skip_prologue): Likewise. * sparc64-tdep.c (sparc64_skip_prologue): Likewise. * sparc-tdep.c (sparc32_skip_prologue): Likewise. * spu-tdep.c (spu_skip_prologue): Likewise. * v850-tdep.c (v850_skip_prologue): Likewise. * vax-tdep.c (vax_skip_prologue): Likewise. * xstormy16-tdep.c (xstormy16_skip_prologue): Likewise. * xtensa-tdep.c (xtensa_skip_prologue): Likewise. * arm-tdep.c (arm_skip_prologue): Add gdbarch as parameter. Replace current_gdbarch by gdbarch. * m32c-tdep.c (m32c_skip_prologue): Likewise. * s390-tdep.c (s390_skip_prologue): Likewise. 2008-01-10 Doug Evans * defs.h (struct continuation_arg): Fix typo in comment. * target.c (target_translate_tls_address): Fix comment spelling error. 2008-01-09 Thiago Jung Bauermann * doublest.h (DOUBLEST_PRINT_FORMAT): Remove % from string. (DOUBLEST_SCAN_FORMAT): Likewise. * dfp.c (decimal_from_floating): Use DOUBLEST_PRINT_FORMAT. * ada-lex.l (processReal): Prepend "%" to use of DOUBLEST_SCAN_FORMAT. * c-exp.y (parse_number): Likewise. * jv-exp.y (parse_number): Likewise. * objc-exp.y (parse_number): Likewise. * p-exp.y (parse_number): Likewise. 2008-01-09 Joel Brobecker * gdbtypes.c (create_array_type): Add handling of null Ada arrays. (check_typedef): Likewise. 2008-01-09 Luis Machado * printcmd.c (printf_command): Add seen_big_h, seen_big_d and seen_double_big_d, treat the new H, D, and DD modifiers as length modifiers. 2008-01-08 Joel Brobecker * dwarf2read.c (read_enumeration_type): Add comment. 2008-01-08 Thiago Jung Bauermann * config.in: Regenerate. 2008-01-08 Joel Brobecker * ada-lang.c (ada_convert_actual): Renames convert_actual. Make non-static. (ada_convert_actuals): Delete. * ada-lang.h (ada_convert_actual): Add declaration. (ada_convert_actuals): Remove declaration. * infcall.c: #include "ada-lang.h". (value_arg_coerce): Add new parameter sp. Update function documetnation. Add handling of Ada function call parameters. * Makefile.in (infcall.o): Update dependencies. 2008-01-08 Paul Hilfinger * ada-lang.c (ensure_lval): Fix value lval kind. (convert_actual): Add handling for arguments passed by reference. 2008-01-08 Doug Evans * dbxread.c (read_dbx_symtab): Fix indentation. 2008-01-07 Thiago Jung Bauermann * Makefile.in (dfp.o): Depend on expression.h, gdbtypes.h and value.h. (valarith.o): Depend on dfp.h. (valops.o): Likewise. * dfp.c: Include expression.h, gdbtypes.h, value.h and dfp.h. (set_decnumber_context): New function. (decimal_check_errors): Likewise. (decimal_from_number): Likewise. (decimal_to_number): Likewise. (decimal_from_string): Use set_decnumber_context and decimal_check_errors. (decimal_from_integral): New function. (decimal_from_floating): Likewise. (decimal_to_double): Likewise. (promote_decimal): Likewise. (decimal_binop): Likewise. (decimal_is_zero): Likewise. (decimal_compare): Likewise. (decimal_convert): Likewise. * dfp.h (decimal_from_integral): New prototype. (decimal_from_floating): Likewise. (decimal_to_double): Likewise. (decimal_binop): Likewise. (decimal_is_zero): Likewise. (decimal_compare): Likewise. (decimal_convert): Likewise. * eval.c (evaluate_subexp_standard): Remove expect_type argument from call to value_from_decfloat. * valarith.c: Include dfp.h. (value_args_as_decimal): New function. (value_binop): Add if block to handle TYPE_CODE_DECFLOAT values. (value_logical_not): Likewise. (value_equal): Likewise. (value_less): Likewise. (value_pos): Likewise. (value_neg): Formatting fix. * valops.c: Include dfp.h. (value_cast): Add if block to handle TYPE_CODE_DECFLOAT values. * value.c (unpack_long): Add case to handle TYPE_CODE_DECFLOAT. (unpack_double): Add if block to handle TYPE_CODE_DECFLOAT. (value_from_decfloat): Remove expect_type argument. * value.h (value_from_decfloat): Update prototype. 2008-01-07 Vladimir Prus Ignore change in name of dynamic linker during execution on Solaris. This also unbreaks pending breakpoints. * solist.h (struct target_so_ops): New field same. * solib-svr4.c (svr4_same): New. (_initialize_svr4_solib): Register svr4_same. * solib.c (update_solib_list): Use ops->same, if available. 2008-01-06 Christopher Faylor * win32-nat.c (win32_make_so): Use cygwin-style path to avoid warnings when using MS-DOS paths. 2008-01-05 Pedro Alves * NEWS: Mention --pid and --core command line behaviour changes. 2008-01-05 Pedro Alves * main.c (captured_main): Remove 'count' varible and the ALIGN_STACK_ON_ENTRY block that used it. Error out if --core and --pid options were issued simultaneously. If an explicit pid option was passed, don't fallback to core file. Detect extra arguments better in the presence of explicit pid or core arguments. 2008-01-05 Joel Brobecker * ada-lang.c (ada_which_variant_applies): Correctly compute the value of the discriminant when the variant record is packed. 2008-01-04 Joel Brobecker * ada-lang.c (is_name_suffix): Handle middle-name numeric suffixes that are used to differentiate homonyms. 2008-01-04 Jerome Guitton * ada-lang.c (decode_packed_array_type): Avoid a seg fault when the type is an anonymous pointer type. (ada_check_typedef): Avoid a seg fault when the type is null. * ada-typeprint.c (print_array_type): Add support for pointer to packed arrays. 2008-01-04 Paul N. Hilfinger * ada-exp.y: Allow '{type} ADDRESS' notation on left of assignment. 2008-01-04 Joel Brobecker * ada-lang.c (ada_evaluate_subexp): Evaluate tagged types in EVAL_NORMAL mode when noside is EVAL_AVOID_SIDE_EFFECTS. 2008-01-04 Joel Brobecker * ada-exp.y (chop_separator): New function. (write_selectors): Rewrite to re-use chop_separator. (ada_nget_field_index, get_symbol_field_type): New functions. (write_var_or_type): Add support for "ptype TYPENAME.FIELD" expressions. 2008-01-03 Thiago Jung Bauermann * symtab.c (find_pc_sect_line): Use SYMBOL_VALUE_ADDRESS instead of SYMBOL_VALUE when working with function symbols. 2008-01-03 Joel Brobecker * ada-lang.c (resolve_subexp): Add handling of OP_REGISTER expressions. These expressions do not need to be rewriten. 2008-01-03 Joel Brobecker * dwarf2read.c (read_enumeration_type): Flag type as stub if the given die is a declaration. 2008-01-03 Joel Brobecker * ada-lang.c (ada_array_bound_from_type): Make non-static. Handle properly the case when the index type is an enumerated type. Do not return the subtype of the bounds type, just return the bounds type directly - this is not needed and is more consistent with what we do for arrays when no XA parallel type exists. 2008-01-03 Joel Brobecker * ada-lang.c (static_unwrap_type): Add forward declaration. (template_to_static_fixed_type): Fields of dynamic types sometimes also need to be unwrapped. Take this into account. (ada_to_fixed_type_1): Renamed from ada_to_fixed_type. (ada_to_fixed_type): New wrapper around ada_to_fixed_type_1. * ada-typeprint.c (ada_print_type): Get the typename from the original type, not the base type. 2008-01-03 Jerome Guitton * ada-lang.c (ada_value_struct_elt, to_fixed_array_type) (to_fixed_array_type, ada_to_fixed_value_create, unwrap_value): Update calls to ada_to_fixed_type. (ada_template_to_fixed_record_type_1): Ditto, but without looking for the tag. (ada_to_fixed_type): Add check_tag parameter; do not look for tag if null. When looking for a tag, use a fixed record type. * ada-lang.h (ada_to_fixed_type): Add check_tag parameter. * ada-valprint.c (printable_val_type, ada_value_print): Update calls to ada_to_fixed_type. 2008-01-03 Luis Machado * doublest.c (convert_floatformat_to_doublest): Call floatformat_to_doublest instead of floatformat_to_double and use DOUBLEST variables. (convert_doublest_to_floatformat): Call floatformat_from_doublest instead of floatformat_from_double and use DOUBLEST variables. 2008-01-03 Nick Hudson * MAINTAINERS (Write After Approval): Add self. 2008-01-03 Joel Brobecker * symfile.c (set_initial_language): Make non-static. * symfile.h (set_initial_language): Add declaration. * language.c: #include "symfile.h". (set_language): Call set_initial_language if the frame language could not be determined. 2008-01-03 Paul N. Hilfinger * eval.c (evaluate_subexp_for_address): Provide frame address to locate_var_value only if it will be needed. 2008-01-02 Jan Kratochvil * linux-nat.c (linux_child_follow_fork): Call also CHECK_FOR_THREAD_DB. 2008-01-02 Joel Brobecker * ada-lang.c (ada_evaluate_subexp): Modify the value returned when noside is EVAL_AVOID_SIDE_EFFECTS to be an lval_memory. This is needed to make sure that any other treatment applied to the resulting value does not fail for spurious reason, such as trying to take the address of this value. 2008-01-02 Joel Brobecker * ada-lang.c (ada_value_equal): Dereference reference types when comparing arrays. 2008-01-01 Daniel Jacobowitz Updated copyright notices for most files. 2008-01-01 Christopher Faylor * win32-nat.c (psapi_module_handle): Remove static. (get_module_name): Rename from psapi_get_dll_name. Revamp slightly to return first module found if base_address is zero. Don't initialize psapi function pointers here. Convert to cygwin paths when appropriate. (win32_pid_to_exec_file): Use Cygwin's /proc interface to determine executable name. Use get_module_name when that fails or when !__CYGWIN__. (_initialize_psapi): New function. Initialize psapi stuff before it is needed or issue a warning if it is not found. Move psapi_module_handle here. 2008-01-01 Joel Brobecker * ada-lang.c (ada_remove_trailing_digits): New function. (ada_remove_po_subprogram_suffix): New function. (ada_decode): Improve. Move the description of the algorithm directly inside the code, instead of in the function global description. 2008-01-01 Joel Brobecker * ada-valprint.c (ada_val_print_1) [TYPE_CODE_REF]: Ignore deref_ref and always print the dereferenced value. 2008-01-01 Joel Brobecker * ada-lang.c (ada_evaluate_subexp, case BINOP_SUB): Add handling of the case where the first argument is a reference. (ada_evaluate_subexp, case BINOP_ADD): Likewise. 2008-01-01 Joel Brobecker Implement support for Ada interface types. * ada-lang.c (ada_is_dispatch_table_ptr_type): New function. (ada_is_ignored_field): Ignore fields that are a dispatch table of a tagged type. 2008-01-01 Joel Brobecker * top.c (print_gdb_version): Update copyright year. 2008-01-01 Joel Brobecker * ChangeLog-2007: New ChangeLog rotation. * ChangeLog: Reset for 2008. * config/djgpp/fnchange.lst: Add entries for ChangeLog-2006 and ChangeLog-2007. For older changes see ChangeLog-2007. Local Variables: mode: change-log left-margin: 8 fill-column: 74 version-control: never coding: utf-8 End: