浏览代码

+ read debug sections in the wasm internal object reader

Nikolay Nikolov 1 年之前
父节点
当前提交
9a983632f9
共有 1 个文件被更改,包括 16 次插入0 次删除
  1. 16 0
      compiler/ogwasm.pas

+ 16 - 0
compiler/ogwasm.pas

@@ -2886,6 +2886,16 @@ implementation
               Result:=False;
             end;
 
+          function ReadDebugSection(const SectionName: string): Boolean;
+            var
+              ObjSec: TObjSection;
+            begin
+              ObjSec:=ObjData.createsection(SectionName,1,[oso_Data,oso_debug],false);
+              ObjSec.DataPos:=AReader.Pos;
+              ObjSec.Size:=SectionStart+SectionSize-AReader.Pos;
+              Result:=True;
+            end;
+
           const
             RelocationSectionPrefix = 'reloc.';
           var
@@ -2913,6 +2923,12 @@ implementation
                   Result:=ReadProducersSection;
                 'target_features':
                   Result:=ReadTargetFeaturesSection;
+                '.debug_abbrev',
+                '.debug_info',
+                '.debug_line',
+                '.debug_aranges',
+                '.debug_ranges':
+                  Result:=ReadDebugSection(SectionName);
                 else
                   InputError('Unsupported custom section: ''' + SectionName + '''');
               end;