wp/wp-includes/sodium_compat/src/Core32/Int64.php
changeset 19 3d72ae0968f4
parent 9 177826044cd9
equal deleted inserted replaced
18:be944660c56a 19:3d72ae0968f4
   335         $base = 1 << $baseLog2;
   335         $base = 1 << $baseLog2;
   336         for ($i = 0; $i < $a_l; ++$i) {
   336         for ($i = 0; $i < $a_l; ++$i) {
   337             $a_i = $a[$i];
   337             $a_i = $a[$i];
   338             for ($j = 0; $j < $a_l; ++$j) {
   338             for ($j = 0; $j < $a_l; ++$j) {
   339                 $b_j = $b[$j];
   339                 $b_j = $b[$j];
   340                 $product = ($a_i * $b_j) + $r[$i + $j];
   340                 $product = (($a_i * $b_j) + $r[$i + $j]);
   341                 $carry = ($product >> $baseLog2 & 0xffff);
   341                 $carry = (((int) $product >> $baseLog2) & 0xffff);
   342                 $r[$i + $j] = ($product - (int) ($carry * $base)) & 0xffff;
   342                 $r[$i + $j] = ((int) $product - (int) ($carry * $base)) & 0xffff;
   343                 $r[$i + $j + 1] += $carry;
   343                 $r[$i + $j + 1] += $carry;
   344             }
   344             }
   345         }
   345         }
   346         return array_slice($r, 0, 5);
   346         return array_slice($r, 0, 5);
   347     }
   347     }