This is the mail archive of the gdb-patches@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]

Re: [RFA] Kill SOFUN_ADDRESS_MAYBE_MISSING


David S. Miller writes:
 >    From: Elena Zannoni <ezannoni@redhat.com>
 >    Date: Tue, 23 Apr 2002 15:05:04 -0400
 >    
 >    About symtab.h: it is possible to remove the find_stab_function_addr
 >    by making the function static in dbxread.c, and moving its definition
 >    there from minsyms.c. I would consider that an obvious fix.

I assume you checked it in? If not, please do.

Elena


 > 
 > Done, as follows:
 > 
 > 2002-04-24  David S. Miller  <davem@redhat.com>
 > 
 > 	* symtab.h (find_stab_function_addr): Kill extern.
 > 	* minsyms.c (find_stab_function_addr): Remove from here...
 > 	* dbxread.c: ... to here, and mark it static.
 > 
 > --- ./symtab.h.~1~	Tue Apr  9 13:51:33 2002
 > +++ ./symtab.h	Wed Apr 24 00:15:32 2002
 > @@ -1139,10 +1139,6 @@
 >     enum minimal_symbol_type,
 >     char *info, int section, asection * bfd_section, struct objfile *);
 >  
 > -#ifdef SOFUN_ADDRESS_MAYBE_MISSING
 > -extern CORE_ADDR find_stab_function_addr (char *, char *, struct objfile *);
 > -#endif
 > -
 >  extern unsigned int msymbol_hash_iw (const char *);
 >  
 >  extern unsigned int msymbol_hash (const char *);
 > --- ./minsyms.c.~1~	Tue Mar 19 11:00:04 2002
 > +++ ./minsyms.c	Wed Apr 24 00:16:29 2002
 > @@ -504,52 +504,6 @@
 >  {
 >    return lookup_minimal_symbol_by_pc_section (pc, find_pc_mapped_section (pc));
 >  }
 > -
 > -#ifdef SOFUN_ADDRESS_MAYBE_MISSING
 > -CORE_ADDR
 > -find_stab_function_addr (char *namestring, char *filename,
 > -			 struct objfile *objfile)
 > -{
 > -  struct minimal_symbol *msym;
 > -  char *p;
 > -  int n;
 > -
 > -  p = strchr (namestring, ':');
 > -  if (p == NULL)
 > -    p = namestring;
 > -  n = p - namestring;
 > -  p = alloca (n + 2);
 > -  strncpy (p, namestring, n);
 > -  p[n] = 0;
 > -
 > -  msym = lookup_minimal_symbol (p, filename, objfile);
 > -  if (msym == NULL)
 > -    {
 > -      /* Sun Fortran appends an underscore to the minimal symbol name,
 > -         try again with an appended underscore if the minimal symbol
 > -         was not found.  */
 > -      p[n] = '_';
 > -      p[n + 1] = 0;
 > -      msym = lookup_minimal_symbol (p, filename, objfile);
 > -    }
 > -
 > -  if (msym == NULL && filename != NULL)
 > -    {
 > -      /* Try again without the filename. */
 > -      p[n] = 0;
 > -      msym = lookup_minimal_symbol (p, NULL, objfile);
 > -    }
 > -  if (msym == NULL && filename != NULL)
 > -    {
 > -      /* And try again for Sun Fortran, but without the filename. */
 > -      p[n] = '_';
 > -      p[n + 1] = 0;
 > -      msym = lookup_minimal_symbol (p, NULL, objfile);
 > -    }
 > -
 > -  return msym == NULL ? 0 : SYMBOL_VALUE_ADDRESS (msym);
 > -}
 > -#endif /* SOFUN_ADDRESS_MAYBE_MISSING */
 >  
 >  
 >  /* Return leading symbol character for a BFD. If BFD is NULL,
 > --- ./dbxread.c.~1~	Thu Mar 21 11:48:54 2002
 > +++ ./dbxread.c	Wed Apr 24 00:16:48 2002
 > @@ -1230,6 +1230,52 @@
 >    do_cleanups (back_to);
 >  }
 >  
 > +#ifdef SOFUN_ADDRESS_MAYBE_MISSING
 > +CORE_ADDR
 > +find_stab_function_addr (char *namestring, char *filename,
 > +			 struct objfile *objfile)
 > +{
 > +  struct minimal_symbol *msym;
 > +  char *p;
 > +  int n;
 > +
 > +  p = strchr (namestring, ':');
 > +  if (p == NULL)
 > +    p = namestring;
 > +  n = p - namestring;
 > +  p = alloca (n + 2);
 > +  strncpy (p, namestring, n);
 > +  p[n] = 0;
 > +
 > +  msym = lookup_minimal_symbol (p, filename, objfile);
 > +  if (msym == NULL)
 > +    {
 > +      /* Sun Fortran appends an underscore to the minimal symbol name,
 > +         try again with an appended underscore if the minimal symbol
 > +         was not found.  */
 > +      p[n] = '_';
 > +      p[n + 1] = 0;
 > +      msym = lookup_minimal_symbol (p, filename, objfile);
 > +    }
 > +
 > +  if (msym == NULL && filename != NULL)
 > +    {
 > +      /* Try again without the filename. */
 > +      p[n] = 0;
 > +      msym = lookup_minimal_symbol (p, NULL, objfile);
 > +    }
 > +  if (msym == NULL && filename != NULL)
 > +    {
 > +      /* And try again for Sun Fortran, but without the filename. */
 > +      p[n] = '_';
 > +      p[n + 1] = 0;
 > +      msym = lookup_minimal_symbol (p, NULL, objfile);
 > +    }
 > +
 > +  return msym == NULL ? 0 : SYMBOL_VALUE_ADDRESS (msym);
 > +}
 > +#endif /* SOFUN_ADDRESS_MAYBE_MISSING */
 > +
 >  /* Setup partial_symtab's describing each source file for which
 >     debugging information is available. */
 >  


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