Jelajahi Sumber

- Eliminated separate extractFloat32* routines, they are used only once and manually inlining them does not harm to readability.

git-svn-id: trunk@25983 -
sergei 11 tahun lalu
induk
melakukan
441e37b8b4
1 mengubah file dengan 3 tambahan dan 27 penghapusan
  1. 3 27
      rtl/inc/genmath.inc

+ 3 - 27
rtl/inc/genmath.inc

@@ -287,30 +287,6 @@ invalid:
      end;
 
 
-{$ifndef FPC_SYSTEM_HAS_ExtractFloat32Frac}
-  Function ExtractFloat32Frac(a : Float32) : longint;
-    Begin
-       ExtractFloat32Frac := A AND $007FFFFF;
-    End;
-{$endif not FPC_SYSTEM_HAS_ExtractFloat32Frac}
-
-
-{$ifndef FPC_SYSTEM_HAS_extractFloat32Exp}
-  Function extractFloat32Exp( a: float32 ): smallint;
-    Begin
-      extractFloat32Exp := (a shr 23) AND $FF;
-    End;
-{$endif not FPC_SYSTEM_HAS_extractFloat32Exp}
-
-
-{$ifndef FPC_SYSTEM_HAS_extractFloat32Sign}
-  Function extractFloat32Sign( a: float32 ): Flag;
-    Begin
-      extractFloat32Sign := a shr 31;
-    End;
-{$endif not FPC_SYSTEM_HAS_extractFloat32Sign}
-
-
   Function float32_to_int32_round_to_zero( a: Float32 ): longint;
     Var
        aSign : flag;
@@ -318,9 +294,9 @@ invalid:
        aSig : longint;
        z : longint;
     Begin
-       aSig := extractFloat32Frac( a );
-       aExp := extractFloat32Exp( a );
-       aSign := extractFloat32Sign( a );
+       aSig := a and $007FFFFF;
+       aExp := (a shr 23) and $FF;
+       aSign := a shr 31;
        shiftCount := aExp - $9E;
        if ( 0 <= shiftCount ) then
          Begin