]> www.ginac.de Git - cln.git/blobdiff - src/float/dfloat/elem/cl_DF_scale_I.cc
Finalize CLN 1.3.7 release.
[cln.git] / src / float / dfloat / elem / cl_DF_scale_I.cc
index e189b6e0ba59116b255345153269757faa1c3882..c221fd72e2b958ba056a45cdc1093cc942ca3d6a 100644 (file)
@@ -1,7 +1,7 @@
 // scale_float().
 
 // General includes.
-#include "cl_sysdep.h"
+#include "base/cl_sysdep.h"
 
 // Specification.
 #include "cln/dfloat.h"
@@ -9,9 +9,9 @@
 
 // Implementation.
 
-#include "cl_DF.h"
-#include "cl_F.h"
-#include "cl_I.h"
+#include "float/dfloat/cl_DF.h"
+#include "float/cl_F.h"
+#include "integer/cl_I.h"
 
 namespace cln {
 
@@ -19,8 +19,8 @@ const cl_DF scale_float (const cl_DF& x, const cl_I& delta)
 {
   // Methode:
   // x=0.0 -> x als Ergebnis
-  // delta muß ein Fixnum betragsmäßig <= DF_exp_high-DF_exp_low sein.
-  // Neues DF mit um delta vergrößertem Exponenten bilden.
+  // delta muß ein Fixnum betragsmäßig <= DF_exp_high-DF_exp_low sein.
+  // Neues DF mit um delta vergrößertem Exponenten bilden.
       // x entpacken:
       var cl_signean sign;
       var sintL exp;
@@ -34,9 +34,9 @@ const cl_DF scale_float (const cl_DF& x, const cl_I& delta)
 #endif
       if (!minusp(delta))
         // delta>=0
-        { var uintL udelta;
+        { var uintV udelta;
           if (fixnump(delta)
-              && ((udelta = FN_to_L(delta)) <= (uintL)(DF_exp_high-DF_exp_low))
+              && ((udelta = FN_to_V(delta)) <= (uintV)(DF_exp_high-DF_exp_low))
              )
             { exp = exp+udelta;
 #if (cl_word_size==64)
@@ -46,14 +46,14 @@ const cl_DF scale_float (const cl_DF& x, const cl_I& delta)
 #endif
             }
             else
-            { cl_error_floating_point_overflow(); }
+            { throw floating_point_overflow_exception(); }
         }
         else
         // delta<0
         { var uintL udelta;
           if (fixnump(delta)
-              && ((udelta = -FN_to_L(delta)) <= (uintL)(DF_exp_high-DF_exp_low))
-              && ((cl_value_len+1<intLsize) || !(udelta==0))
+              && ((udelta = -FN_to_V(delta)) <= (uintV)(DF_exp_high-DF_exp_low))
+              && ((cl_value_len+1<intVsize) || !(udelta==0))
              )
             { exp = exp-udelta;
 #if (cl_word_size==64)
@@ -64,7 +64,7 @@ const cl_DF scale_float (const cl_DF& x, const cl_I& delta)
             }
             else
             if (underflow_allowed())
-              { cl_error_floating_point_underflow(); }
+              { throw floating_point_underflow_exception(); }
               else
               { return cl_DF_0; }
         }