浏览代码

+ support FPC_WASM_EXNREF_EXCEPTIONS in the RTL, like the other exception modes

Nikolay Nikolov 1 周之前
父节点
当前提交
4995b9f3d4
共有 5 个文件被更改,包括 10 次插入10 次删除
  1. 2 2
      rtl/inc/compproc.inc
  2. 2 2
      rtl/wasicommon/si_dll.pp
  3. 2 2
      rtl/wasicommon/si_prc.pp
  4. 2 2
      rtl/wasip2/si_dll.pp
  5. 2 2
      rtl/wasip2/si_prc.pp

+ 2 - 2
rtl/inc/compproc.inc

@@ -724,7 +724,7 @@ procedure fpc_dispatch_by_id(Result: Pointer; const Dispatch: pointer;DispDesc:
 
 
 {$ifdef FPC_HAS_FEATURE_EXCEPTIONS}
-{$if not defined(FPC_WASM_LEGACY_EXCEPTIONS) and not defined(FPC_WASM_BRANCHFUL_EXCEPTIONS)}
+{$if not defined(FPC_WASM_EXNREF_EXCEPTIONS) and not defined(FPC_WASM_LEGACY_EXCEPTIONS) and not defined(FPC_WASM_BRANCHFUL_EXCEPTIONS)}
 Function fpc_PushExceptAddr (Ft: {$ifdef CPU16}SmallInt{$else}Longint{$endif};_buf,_newaddr : pointer): PJmp_buf ; compilerproc;
 Procedure fpc_PopAddrStack; compilerproc;
 {$endif}
@@ -736,7 +736,7 @@ procedure fpc_Raiseexception (Obj : TObject; AnAddr : CodePointer; AFrame : Poin
 function fpc_PopObjectStack : TObject; compilerproc;
 function fpc_PopSecondObjectStack : TObject; compilerproc;
 Procedure fpc_ReRaise; compilerproc;
-{$if defined(FPC_WASM_LEGACY_EXCEPTIONS) or defined(FPC_WASM_BRANCHFUL_EXCEPTIONS)}
+{$if defined(FPC_WASM_EXNREF_EXCEPTIONS) or defined(FPC_WASM_LEGACY_EXCEPTIONS) or defined(FPC_WASM_BRANCHFUL_EXCEPTIONS)}
 Procedure fpc_ReRaise2; compilerproc;
 {$endif}
 Function fpc_Catches(Objtype : TClass) : TObject; compilerproc;

+ 2 - 2
rtl/wasicommon/si_dll.pp

@@ -17,7 +17,7 @@
 
 unit si_dll;
 
-{$if defined(FPC_WASM_BRANCHFUL_EXCEPTIONS) or defined(FPC_WASM_LEGACY_EXCEPTIONS)}
+{$if defined(FPC_WASM_BRANCHFUL_EXCEPTIONS) or defined(FPC_WASM_LEGACY_EXCEPTIONS) or defined(FPC_WASM_EXNREF_EXCEPTIONS)}
   {$MODESWITCH EXCEPTIONS}
 {$endif}
 
@@ -29,7 +29,7 @@ implementation
 
 procedure PASCALMAIN; external 'PASCALMAIN';
 
-{$if defined(FPC_WASM_BRANCHFUL_EXCEPTIONS) or defined(FPC_WASM_LEGACY_EXCEPTIONS)}
+{$if defined(FPC_WASM_BRANCHFUL_EXCEPTIONS) or defined(FPC_WASM_LEGACY_EXCEPTIONS) or defined(FPC_WASM_EXNREF_EXCEPTIONS)}
 Procedure DoUnHandledException; external name 'FPC_DOUNHANDLEDEXCEPTION';
 
 procedure _initialize_pascal;

+ 2 - 2
rtl/wasicommon/si_prc.pp

@@ -17,7 +17,7 @@
 
 unit si_prc;
 
-{$if defined(FPC_WASM_BRANCHFUL_EXCEPTIONS) or defined(FPC_WASM_LEGACY_EXCEPTIONS)}
+{$if defined(FPC_WASM_BRANCHFUL_EXCEPTIONS) or defined(FPC_WASM_LEGACY_EXCEPTIONS) or defined(FPC_WASM_EXNREF_EXCEPTIONS)}
   {$MODESWITCH EXCEPTIONS}
 {$endif}
 
@@ -29,7 +29,7 @@ implementation
 
 procedure PASCALMAIN; external 'PASCALMAIN';
 
-{$if defined(FPC_WASM_BRANCHFUL_EXCEPTIONS) or defined(FPC_WASM_LEGACY_EXCEPTIONS)}
+{$if defined(FPC_WASM_BRANCHFUL_EXCEPTIONS) or defined(FPC_WASM_LEGACY_EXCEPTIONS) or defined(FPC_WASM_EXNREF_EXCEPTIONS)}
 Procedure DoUnHandledException; external name 'FPC_DOUNHANDLEDEXCEPTION';
 
 procedure _start_pascal;

+ 2 - 2
rtl/wasip2/si_dll.pp

@@ -17,7 +17,7 @@
 
 unit si_dll;
 
-{$if defined(FPC_WASM_BRANCHFUL_EXCEPTIONS) or defined(FPC_WASM_LEGACY_EXCEPTIONS)}
+{$if defined(FPC_WASM_BRANCHFUL_EXCEPTIONS) or defined(FPC_WASM_LEGACY_EXCEPTIONS) or defined(FPC_WASM_EXNREF_EXCEPTIONS)}
   {$MODESWITCH EXCEPTIONS}
 {$endif}
 
@@ -29,7 +29,7 @@ implementation
 
 procedure PASCALMAIN; external 'PASCALMAIN';
 
-{$if defined(FPC_WASM_BRANCHFUL_EXCEPTIONS) or defined(FPC_WASM_LEGACY_EXCEPTIONS)}
+{$if defined(FPC_WASM_BRANCHFUL_EXCEPTIONS) or defined(FPC_WASM_LEGACY_EXCEPTIONS) or defined(FPC_WASM_EXNREF_EXCEPTIONS)}
 Procedure DoUnHandledException; external name 'FPC_DOUNHANDLEDEXCEPTION';
 
 procedure _initialize_pascal;

+ 2 - 2
rtl/wasip2/si_prc.pp

@@ -17,7 +17,7 @@
 
 unit si_prc;
 
-{$if defined(FPC_WASM_BRANCHFUL_EXCEPTIONS) or defined(FPC_WASM_LEGACY_EXCEPTIONS)}
+{$if defined(FPC_WASM_BRANCHFUL_EXCEPTIONS) or defined(FPC_WASM_LEGACY_EXCEPTIONS) or defined(FPC_WASM_EXNREF_EXCEPTIONS)}
   {$MODESWITCH EXCEPTIONS}
 {$endif}
 
@@ -29,7 +29,7 @@ implementation
 
 procedure PASCALMAIN; external 'PASCALMAIN';
 
-{$if defined(FPC_WASM_BRANCHFUL_EXCEPTIONS) or defined(FPC_WASM_LEGACY_EXCEPTIONS)}
+{$if defined(FPC_WASM_BRANCHFUL_EXCEPTIONS) or defined(FPC_WASM_LEGACY_EXCEPTIONS) or defined(FPC_WASM_EXNREF_EXCEPTIONS)}
 Procedure DoUnHandledException; external name 'FPC_DOUNHANDLEDEXCEPTION';
 
 procedure _start_pascal;