HPL_lmul - multiplies 2 long positive integers.
#include "hpl.h"
void HPL_lmul( int * K, int *
J, int * I );
HPL_lmul multiplies without carry two long positive integers K and J and
puts the result into I. The long integers I, J, K are encoded on 64 bits using
an array of 2 integers. The 32-lower bits are stored in the first entry of
each array, the 32-higher bits in the second entry of each array. For
efficiency purposes, the intrisic modulo function is inlined.
- K (local input) int *
- On entry, K is an integer array of dimension 2 containing the encoded long
integer K.
- J (local input) int *
- On entry, J is an integer array of dimension 2 containing the encoded long
integer J.
- I (local output) int *
- On entry, I is an integer array of dimension 2. On exit, this array
contains the encoded long integer result.
HPL_ladd (3), HPL_setran (3),
HPL_xjumpm (3), HPL_jumpit (3),
HPL_rand (3).