* infrun.c (IN_SOLIB_TRAMPOLINE): Correct comment, trampolines
[deliverable/binutils-gdb.git] / gdb / mdebugread.c
index b302418fb5b93d4aff498ec2d8990718f921aaa3..81e694514ffe368599a4c0e455e9ece4d46bf2a0 100644 (file)
@@ -2332,6 +2332,16 @@ parse_partial_symbols (objfile, section_offsets)
                      long isym;
        
                      sh.value += ANOFFSET (section_offsets, SECT_OFF_TEXT);
+                     if (sh.st == stStaticProc)
+                       {
+                         namestring = debug_info->ss + fh->issBase + sh.iss;
+                         prim_record_minimal_symbol_and_info (namestring,
+                                                              sh.value,
+                                                              mst_file_text,
+                                                              NULL,
+                                                              SECT_OFF_TEXT,
+                                                              objfile);
+                       }
                      procaddr = sh.value;
 
                      isym = AUX_GET_ISYM (fh->fBigendian,
@@ -2350,6 +2360,42 @@ parse_partial_symbols (objfile, section_offsets)
                            pst->texthigh = high;
                        }
                    }
+                 else if (sh.st == stStatic)
+                   {
+                     switch (sh.sc)
+                       {
+                       case scUndefined:
+                       case scNil:
+                       case scAbs:
+                         break;
+
+                       case scData:
+                       case scSData:
+                       case scRData:
+                       case scPData:
+                       case scXData:
+                         namestring = debug_info->ss + fh->issBase + sh.iss;
+                         sh.value += ANOFFSET (section_offsets, SECT_OFF_DATA);
+                         prim_record_minimal_symbol_and_info (namestring,
+                                                              sh.value,
+                                                              mst_file_data,
+                                                              NULL,
+                                                              SECT_OFF_DATA,
+                                                              objfile);
+                         break;
+
+                       default:
+                         namestring = debug_info->ss + fh->issBase + sh.iss;
+                         sh.value += ANOFFSET (section_offsets, SECT_OFF_BSS);
+                         prim_record_minimal_symbol_and_info (namestring,
+                                                              sh.value,
+                                                              mst_file_bss,
+                                                              NULL,
+                                                              SECT_OFF_BSS,
+                                                              objfile);
+                         break;
+                       }
+                   }
                  continue;
                }
 #define SET_NAMESTRING() \
@@ -2913,7 +2959,8 @@ psymtab_to_symtab_1 (pst, filename)
                /* Handle encoded stab line number. */
                record_line (current_subfile, sh.index, valu);
            }
-         else if (sh.st == stProc || sh.st == stStaticProc || sh.st == stEnd)
+         else if (sh.st == stProc || sh.st == stStaticProc
+                  || sh.st == stStatic || sh.st == stEnd)
            /* These are generated by gcc-2.x, do not complain */
            ;
          else
This page took 0.025822 seconds and 4 git commands to generate.