Browse Source

+ Implemented m68k-specific (actually, softfloat-specific) part of Math unit.

git-svn-id: trunk@27216 -
sergei 11 years ago
parent
commit
29bf988ca7
1 changed files with 7 additions and 6 deletions
  1. 7 6
      rtl/m68k/mathu.inc

+ 7 - 6
rtl/m68k/mathu.inc

@@ -12,26 +12,26 @@
 
  **********************************************************************}
 
-{$warning TODO}
-
 function GetExceptionMask: TFPUExceptionMask;
 begin
-  Result := [];
+  Result := softfloat_exception_mask;
 end;
 
 function SetExceptionMask(const Mask: TFPUExceptionMask): TFPUExceptionMask;
 begin
-  { TODO }
+  result:=softfloat_exception_mask;
+  softfloat_exception_mask:=mask;
 end;
 
 function GetRoundMode: TFPURoundingMode;
 begin
-  Result:=rmNearest;
+  Result:=softfloat_rounding_mode;
 end;
 
 function SetRoundMode(const RoundMode: TFPURoundingMode): TFPURoundingMode;
 begin
-  Result:=rmNearest;
+  Result:=softfloat_rounding_mode;
+  softfloat_rounding_mode:=RoundMode;
 end;
 
 function GetPrecisionMode: TFPUPrecisionMode;
@@ -46,5 +46,6 @@ end;
 
 procedure ClearExceptions(RaisePending: Boolean);
 begin
+  softfloat_exception_flags:=[];
 end;