From c4b3a45944f0638c35b7f94c94c0ebf73d16c194 Mon Sep 17 00:00:00 2001 From: Elena Zannoni Date: Wed, 24 Mar 2004 04:10:01 +0000 Subject: 2004-03-23 Elena Zannoni * solib-svr4.c (svr4_solib_create_inferior_hook): Disable breakpoints at startup. (elf_locate_base): Find out where the entry point for the program is, using the auxv vector, if possible. Compute the address of .dynamic using it. (svr4_current_sos): Don't ignore the first entry if we have PIE, it's our main program. Delete code that was skipping over the solib entry for main executable. * solist.h (struct so_list): Add fields main and main_relocated. (add_to_target_sections): Export. * solib.c (symbol_add_stub): Handle main executable in shared library list. Ignore it if it has been relocated already. Add it as the main symbol file, otherwise. * infrun.c (handle_inferior_event): Re-enable startup breakpoints. * solib-svr4.c (elf_locate_base, first_link_map_member) svr4_current_sos, enable_break): Add debugging output. * solist.h (debug_solib): Export. * solib.c (debug_solib): New variable to enable debugging output. (symbol_add_stub, update_solib_list, update_solib_list) (add_to_target_sections): Add debugging output. (_initialize_solib): Add new comand to enable printing of debugging output. (add_to_target_sections): New function. Factored out from update_solib_list. (update_solib_list): Call add_to_target_sections. * varobj.h (varobj_refresh): New prototype. * varobj.c (varobj_refresh): New function. * symfile.c (reread_symbols): Make sure that we recompute the entry point for the program. (symbol_file_clear): Clear the solibs as well, if we change symbol files. (clear_symtab_users): Refresh the varobjs that depend on the symtabs we are clearing. * objfiles.c (entry_point_address): Rewrite, to fetch entry point from auxv vector, if possible. Add include of elf/common.h. * breakpoint.h (enum bptype): Add bp type bp_startup_disabled. (re_enable_breakpoints_at_startup) (disable_breakpoints_at_startup): Add prototypes * breakpoint.c (re_enable_breakpoints_at_startup) (disable_breakpoints_at_startup): New functions. (describe_other_breakpoints, delete_breakpoint) (breakpoint_re_set_one): Handle new bp type. * auxv.h (target_auxv_parse, target_auxv_search): Update. * auxv.c (target_auxv_parse, target_auxv_search) (fprint_target_auxv): Use ULONGEST instead of CORE_ADDR for variable. Change variable name to at_type. --- gdb/gdbtk/library/tfind_args.tcl | 139 --------------------------------------- 1 file changed, 139 deletions(-) delete mode 100644 gdb/gdbtk/library/tfind_args.tcl (limited to 'gdb/gdbtk/library/tfind_args.tcl') diff --git a/gdb/gdbtk/library/tfind_args.tcl b/gdb/gdbtk/library/tfind_args.tcl deleted file mode 100644 index d90447a65a2..00000000000 --- a/gdb/gdbtk/library/tfind_args.tcl +++ /dev/null @@ -1,139 +0,0 @@ -# TfindArgs -# Copyright 1998, 1999 Cygnus Solutions -# -# This program is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License (GPL) as published by -# the Free Software Foundation; either version 2 of the License, or (at -# your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - - -# ---------------------------------------------------------------------- -# Implements tfind arguments dialogs -# -# PUBLIC ATTRIBUTES: -# -# Type .........Type of dialog (tfind pc, tfind line, tfind tracepoint) -# -# config ....... used to change public attributes -# -# PRIVATE METHODS -# -# X11 OPTION DATABASE ATTRIBUTES -# -# -# ---------------------------------------------------------------------- - -itcl_class TfindArgs { - # ------------------------------------------------------------------ - # CONSTRUCTOR - create new tfind arguments dialog - # ------------------------------------------------------------------ - constructor {config} { - # - # Create a window with the same name as this object - # - set class [$this info class] - set hull [namespace tail $this] - set old_name $this - ::rename $this $this-tmp- - ::frame $hull -class $class - ::rename $hull $old_name-win- - ::rename $this $old_name - build_win - } - - # ------------------------------------------------------------------ - # METHOD: build_win - build the dialog - # ------------------------------------------------------------------ - method build_win {} { - - frame $hull.f - frame $hull.f.a - frame $hull.f.b - set f $hull.f.a - - switch $Type { - LN { - set text "Enter argument: " - } - PC { - set text "Enter PC value: " - } - TP { - set text "Enter Tracepoint No.: " - } - FR { - set text "Enter Frame No.:" - } - - if {[string compare $Type $last_type]} != 0} { - global argument - set argument "" - } - - set last_type $Type - - label $f.1 -text $text - entry $f.2 -textvariable argument -width 10 - $f.2 selection range 0 end - grid $f.1 $f.2 -padx 4 -pady 4 -sticky nwe - - button $hull.f.b.ok -text OK -command "$this ok" -width 7 -default active - button $hull.f.b.quit -text Cancel -command "delete object $this" -width 7 - grid $hull.f.b.ok $hull.f.b.quit -padx 4 -pady 4 -sticky ews - - pack $hull.f.a $hull.f.b - grid $hull.f - - focus $f.2 - bind $f.2 "$this.f.b.ok flash; $this.f.b.ok invoke" - - } - - # ------------------------------------------------------------------ - # DESTRUCTOR - destroy window containing widget - # ------------------------------------------------------------------ - destructor { - set top [winfo toplevel $hull] - manage delete $this 1 - destroy $this - destroy $top - } - - - - # ------------------------------------------------------------------ - # METHOD: ok - do it and quit - # ------------------------------------------------------------------ - method ok {} { - do_it - delete - } - - - # ------------------------------------------------------------------ - # METHOD: do_it - call the gdb command - # ------------------------------------------------------------------ - method do_it {} { - global argument - - - switch $Type { - LN { tfind_cmd "tfind line $argument"} - PC { tfind_cmd "tfind pc $argument"} - TP { tfind_cmd "tfind tracepoint $argument"} - FR { tfind_cmd "tfind $argument"} - } - } - - - public Type - common last_type {} - private hull - - -} -- cgit v1.2.1