]> www.ginac.de Git - cln.git/blobdiff - src/base/digitseq/cl_DS_mul_kara.h
* */*: Remove cl_boolean, cl_true, and cl_false in favor of built-in
[cln.git] / src / base / digitseq / cl_DS_mul_kara.h
index b838fc2b7827d8e216f2dfae41eaddbd9a7014a0..8531b5b1256cba0a43d89d377659105e36df8062 100644 (file)
@@ -44,7 +44,7 @@
       if (sourceptr1 == sourceptr2)
         if (len1 == len2)
           { mulu_karatsuba_square(sourceptr1,len1,destptr); return; }
-      var cl_boolean first_part = cl_true; // Flag, ob jetzt das erste Teilprodukt berechnet wird
+      var bool first_part = true; // Flag, ob jetzt das erste Teilprodukt berechnet wird
       if (len2 >= 2*len1)
         { CL_SMALL_ALLOCA_STACK;
           // Teilprodukte von jeweils len1 mal len1 Digits bilden:
@@ -73,7 +73,7 @@
           { var uintD* prod_MSDptr;
             var uintD* prod_LSDptr;
             var uintD* prodhi_LSDptr;
-            num_stack_small_alloc(2*(uintL)len1,prod_MSDptr=,prod_LSDptr=);
+            num_stack_small_alloc(2*len1,prod_MSDptr=,prod_LSDptr=);
             prodhi_LSDptr = prod_LSDptr lspop 2*k_lo;
             // prod_MSDptr/2*len1/prod_LSDptr wird zuerst die beiden
             // Produkte x1*y1 in prod_MSDptr/2*k_hi/prodhi_LSDptr
                  if (first_part)
                    { copy_loop_lsp(prod_LSDptr,destptr,2*len1);
                      destptr = destptr lspop len1;
-                     first_part = cl_false;
+                     first_part = false;
                    }
                    else
                    { var uintD carry =
       var uintD* prod_MSDptr;
       var uintC prod_len = len1+len2;
       var uintD* prod_LSDptr;
-      num_stack_small_alloc((uintL)prod_len,prod_MSDptr=,prod_LSDptr=);
+      num_stack_small_alloc(prod_len,prod_MSDptr=,prod_LSDptr=);
       { var uintC k_hi = floor(len2,2); // Länge der High-Teile: floor(len2/2) >0
         var uintC k_lo = len2 - k_hi; // Länge der Low-Teile: ceiling(len2/2) >0
         // Es gilt k_hi <= k_lo <= len1 <= len2, k_lo + k_hi = len2.