Browse Source

* fixed DWARF debug info for powerpc64/linux, correcting the procedure entry symbol (must be the dotted symbol, not the function descriptor location, otherwise gdb cannot find locals

git-svn-id: trunk@6242 -
tom_at_work 18 years ago
parent
commit
a0813b42bf
1 changed files with 7 additions and 1 deletions
  1. 7 1
      compiler/dbgdwarf.pas

+ 7 - 1
compiler/dbgdwarf.pas

@@ -1491,6 +1491,7 @@ implementation
       var
         procendlabel : tasmlabel;
         mangled_length : longint;
+        procentry : String;
         p : pchar;
         hs : string;
       begin
@@ -1514,7 +1515,12 @@ implementation
             current_asmdata.getlabel(procendlabel,alt_dbgtype);
             current_asmdata.asmlists[al_procedures].insertbefore(tai_label.create(procendlabel),pd.procendtai);
 
-            append_labelentry(DW_AT_low_pc,current_asmdata.RefAsmSymbol(pd.mangledname));
+	    if (target_info.system = system_powerpc64_linux) then
+	      procentry := '.' + pd.mangledname
+	    else 
+	      procentry := pd.mangledname;
+
+            append_labelentry(DW_AT_low_pc,current_asmdata.RefAsmSymbol(procentry));
             append_labelentry(DW_AT_high_pc,procendlabel);
 
             (*