* config/sparc/tm-sun4sol2.h: Define STATIC_TRANSFORM_NAME.
authorJim Kingdon <jkingdon@engr.sgi.com>
Thu, 9 Feb 1995 20:21:46 +0000 (20:21 +0000)
committerJim Kingdon <jkingdon@engr.sgi.com>
Thu, 9 Feb 1995 20:21:46 +0000 (20:21 +0000)
* partial-stab.h: Call it.
* stabsread.c (define_symbol) [STATIC_TRANSFORM_NAME]: Call
STATIC_TRANSFORM_NAME to get the name and use minimal symbols to
get the address.
* sparc-tdep.c (solaris_static_transform_name): New function.

gdb/ChangeLog
gdb/config/sparc/tm-sun4sol2.h
gdb/partial-stab.h
gdb/stabsread.c

index dccc1f8f507f001e4d037e964706b37e58212dce..b7dbd7b11d0e1317fb4277ebe81ed76b4026fcb0 100644 (file)
@@ -1,3 +1,12 @@
+Thu Feb  9 07:43:41 1995  Jim Kingdon  <kingdon@deneb.cygnus.com>
+
+       * config/sparc/tm-sun4sol2.h: Define STATIC_TRANSFORM_NAME.
+       * partial-stab.h: Call it.
+       * stabsread.c (define_symbol) [STATIC_TRANSFORM_NAME]: Call
+       STATIC_TRANSFORM_NAME to get the name and use minimal symbols to
+       get the address.
+       * sparc-tdep.c (solaris_static_transform_name): New function.
+
 Thu Feb  9 12:09:09 1995  Jeff Law  (law@snake.cs.utah.edu)
 
        * somread.c (som_symtab_read): Handle dynamic relocation for both
index 292e683b570675e2d570c48b757ad55cdb5f321f..79f21e7c1ab5917f54130bd8f370c0e86369561f 100644 (file)
@@ -64,6 +64,9 @@ get_longjmp_target PARAMS ((CORE_ADDR *));
    and for SunPRO 3.0, N_FUN symbols too.  */
 #define SOFUN_ADDRESS_MAYBE_MISSING
 
+extern char *solaris_static_transform_name PARAMS ((char *));
+#define STATIC_TRANSFORM_NAME(x) solaris_static_transform_name (x)
+
 #define FAULTED_USE_SIGINFO
 
 /* Enable handling of shared libraries for a.out executables.  */
index e92da5a3b704a099748ca4668eb3293d0a2a8fda..f1ab99138b8e4d9221edc34d70404f76655d1407 100644 (file)
@@ -378,6 +378,9 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
            {
            case 'S':
              CUR_SYMBOL_VALUE += ANOFFSET (section_offsets, SECT_OFF_DATA);
+#ifdef STATIC_TRANSFORM_NAME
+             namestring = STATIC_TRANSFORM_NAME (namestring);
+#endif
              ADD_PSYMBOL_ADDR_TO_LIST (namestring, p - namestring,
                                        VAR_NAMESPACE, LOC_STATIC,
                                        objfile->static_psymbols,
index ac334b278f8473397d0998aa193dafa3aa121256..3b7c8e1256fd66cf7f34494ee110789b1a4e4952 100644 (file)
@@ -1047,6 +1047,18 @@ define_symbol (valu, string, desc, type, objfile)
       SYMBOL_TYPE (sym) = read_type (&p, objfile);
       SYMBOL_CLASS (sym) = LOC_STATIC;
       SYMBOL_VALUE_ADDRESS (sym) = valu;
+#ifdef STATIC_TRANSFORM_NAME
+      if (SYMBOL_NAME (sym)[0] == '$')
+      {
+       struct minimal_symbol *msym;
+       msym = lookup_minimal_symbol (SYMBOL_NAME (sym), NULL, objfile);
+       if (msym != NULL)
+         {
+           SYMBOL_NAME (sym) = STATIC_TRANSFORM_NAME (SYMBOL_NAME (sym));
+           SYMBOL_VALUE_ADDRESS (sym) = SYMBOL_VALUE_ADDRESS (msym);
+         }
+      }
+#endif
       SYMBOL_NAMESPACE (sym) = VAR_NAMESPACE;
       add_symbol_to_list (sym, &file_symbols);
       break;
@@ -1173,6 +1185,18 @@ define_symbol (valu, string, desc, type, objfile)
       SYMBOL_TYPE (sym) = read_type (&p, objfile);
       SYMBOL_CLASS (sym) = LOC_STATIC;
       SYMBOL_VALUE_ADDRESS (sym) = valu;
+#ifdef STATIC_TRANSFORM_NAME
+      if (SYMBOL_NAME (sym)[0] == '$')
+      {
+       struct minimal_symbol *msym;
+       msym = lookup_minimal_symbol (SYMBOL_NAME (sym), NULL, objfile);
+       if (msym != NULL)
+         {
+           SYMBOL_NAME (sym) = STATIC_TRANSFORM_NAME (SYMBOL_NAME (sym));
+           SYMBOL_VALUE_ADDRESS (sym) = SYMBOL_VALUE_ADDRESS (msym);
+         }
+      }
+#endif
       SYMBOL_NAMESPACE (sym) = VAR_NAMESPACE;
       if (os9k_stabs)
        add_symbol_to_list (sym, &global_symbols);
This page took 0.030838 seconds and 4 git commands to generate.