HPL_lmul man page

HPL_lmul — multiplies 2 long positive integers.

Synopsis

#include "hpl.h"
void HPL_lmul( int * K, int * J, int * I );

Description

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.

Arguments

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.

See Also

HPL_ladd (3), HPL_setran (3), HPL_xjumpm (3), HPL_jumpit (3), HPL_rand (3).

Info

October 26, 2012 HPL 2.1 HPL Library Functions