2
0
Эх сурвалжийг харах

- removed unused FPC_psabieh_can_catch()
* added missing exit in FPC_psabieh_find_action_record
* fixed type error in call to _Unwind_SetGR() (caught by compiler fix for
that intrinsic)

git-svn-id: branches/debug_eh@40073 -

Jonas Maebe 6 жил өмнө
parent
commit
4bc0e49878
1 өөрчлөгдсөн 2 нэмэгдсэн , 6 устгасан
  1. 2 6
      rtl/inc/psabieh.inc

+ 2 - 6
rtl/inc/psabieh.inc

@@ -331,11 +331,6 @@ function FPC_psabieh_get_ttype_entry(const info: FPC_psabieh_lsda_header_info; i
     result:=TClass(ptr);
   end;
 
-function FPC_psabieh_can_catch(catch_type: TClass; thrown: TObject): boolean;
-  begin
-    result:=thrown is catch_type
-  end;
-
 // Return true if THROW_TYPE matches one if the filter types.
 function FPC_psabieh_check_exception_spec(const info: FPC_psabieh_lsda_header_info; thrown: TObject; filter_value: PtrInt): boolean;
   var
@@ -410,6 +405,7 @@ function FPC_psabieh_find_action_record(const info: FPC_psabieh_lsda_header_info
             if cs_action<>0 then
               action_record:=info.action_table+cs_action-1;
             result:=true;
+            exit;
           end;
       end;
   end;
@@ -652,7 +648,7 @@ function FPC_psabieh_personality_v0(version: cint; actions: FPC_Unwind_Action; e
     {$if sizeof(pointer)<>sizeof(SizeInt)}
       {$error Add support for extending pointer values}
     {$endif}
-    _Unwind_SetGR(context,fpc_eh_return_data_regno(0),libunwind_exception);
+    _Unwind_SetGR(context,fpc_eh_return_data_regno(0),PtrUInt(libunwind_exception));
     _Unwind_SetGR (context,fpc_eh_return_data_regno(1),handler_switch_value);
     _Unwind_SetIP(context,landing_pad);
     result:=FPC_URC_INSTALL_CONTEXT;