This is the mail archive of the gdb-prs@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

tdep/1353: Eliminate alpha call_dummy_address


>Number:         1353
>Category:       tdep
>Synopsis:       Eliminate alpha call_dummy_address
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          maintenance
>Submitter-Id:   net
>Arrival-Date:   Wed Aug 27 00:08:00 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator:     ac131313@redhat.com
>Release:        unknown-1.0
>Organization:
>Environment:

>Description:
Alpha call dummy address reads:

  CORE_ADDR entry;
  struct minimal_symbol *sym;

  entry = entry_point_address ();

  if (entry != 0)
    return entry;

  sym = lookup_minimal_symbol ("_Prelude", NULL, symfile_objfile);

unless something really weird is happening, entry_point_address will succeed making the remaining code dead.

The relevant change log reads:

date: 1994/03/21 19:57:18;  author: grossman;  state: Exp;  lines: +221 -110
Mon Mar 21 11:02:51 1994  Stu Grossman  (grossman at cygnus.com)

        * alpha-tdep.c:  Gobs of changes (many imported from mips-tdep) to
        improve remote debugging efficiency.  Also fixed problems with
        doing function calls for programs with no entry points.
        * infcmd.c (run_stack_dummy):  Use CALL_DUMMY_ADDRESS instead of
        entry_point_address.
        * inferior.h (PC_IN_CALL_DUMMY):  ditto.
        * mdebugread.c (parse_symbol, parse_procedure, parse_external,
        parse_lines):  Pass section_offsets info to these routines so that
        we can relocate symbol table entries upon readin.
        * (psymtab_to_symtab_1):  Set symtab->primary to tell
        objfile_relocate to do relocations for our symbols.
        * (ecoff_relocate_efi):  New routine to relocate adr field of PDRs
        (which hang off of the symbol table).
        * Use prim_record_minimal_symbols_and_info instead of
        prim_record_minimal_symbols to supply section info to make minimal
        symbol relocations work.
        * minsyms.c (prim_record_minimal_symbols_and_info):  If section is
        -1, try to deduce it from ms_type.
        * objfiles.c (objfile_relocate):  Use ALL_OBJFILE_SYMTABS where
        appropriate.  Handle relocation of MIPS_EFI symbols special. Also,
        add code to relocate objfile->sections data structure.
        * remote.c (get_offsets):  Use new protocol message to acquire
        section offsets from the target.
        * (remote_wait):  Get rid of relocation stuff.  That's all handled
        by objfile_relocate now.
        * config/alpha/alpha-nw.mt (TM_FILE):  Use tm-alphanw.h.
        * config/alpha/tm-alpha.h:  Define CALL_DUMMY_ADDRESS, and
        VM_MIN_ADDRESS.
        * config/alpha/tm-alphanw.h:  DECR_PC_AFTER_BREAK=0, VM_MIN_ADDRESS=0.

there is now a better way of handling functions with no entry point.
>How-To-Repeat:

>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]