diff options
-rw-r--r-- | math/spooles/Makefile | 2 | ||||
-rw-r--r-- | math/spooles/files/patch-I2Ohash-large-input | 99 | ||||
-rw-r--r-- | math/spooles/pkg-descr | 2 |
3 files changed, 101 insertions, 2 deletions
diff --git a/math/spooles/Makefile b/math/spooles/Makefile index fd8716d915a0..9145aa1965da 100644 --- a/math/spooles/Makefile +++ b/math/spooles/Makefile @@ -7,7 +7,7 @@ PORTNAME= spooles PORTVERSION= 2.2 -PORTREVISION= 9 +PORTREVISION= 10 CATEGORIES= math MASTER_SITES= http://www.netlib.org/linalg/spooles/ .ifdef WITH_MPI diff --git a/math/spooles/files/patch-I2Ohash-large-input b/math/spooles/files/patch-I2Ohash-large-input new file mode 100644 index 000000000000..90192e047cef --- /dev/null +++ b/math/spooles/files/patch-I2Ohash-large-input @@ -0,0 +1,99 @@ +$FreeBSD$ +--- I2Ohash/src/util.c.orig 2013-03-04 21:21:54.000000000 -0500 ++++ I2Ohash/src/util.c 2012-10-06 08:28:37.000000000 -0500 +@@ -39,8 +39,9 @@ + */ + loc1 = (key1 + 1) % hashtable->nlist ; + loc2 = (key2 + 1) % hashtable->nlist ; +-long int loc3 = (long int)loc1*(long int)loc2 % hashtable->nlist ; +-loc =(int) loc3; ++/*loc = (loc1*loc2) % hashtable->nlist ;*/ ++long int loc3 = (long int)loc1*(long int)loc2 % hashtable->nlist ; ++loc=(int)loc3; + #if MYDEBUG > 0 + fprintf(stdout, "\n loc1 = %d, loc2 = %d, loc3 = %d", loc1, loc2, loc) ; + fflush(stdout) ; +@@ -51,7 +52,7 @@ + -------------------------------------------------------- + */ + #if MYDEBUG > 0 +-fprintf(stdout, "\n loc1 = %d, loc2 = %d, loc3 = %ld, loc = %d", loc1, loc2, loc3, loc) ; ++fprintf(stdout, "\n hashtable->freeI2OP = %p", hashtable->freeI2OP) ; + fflush(stdout) ; + #endif + if ( (i2op = hashtable->freeI2OP) == NULL ) { +@@ -159,10 +160,11 @@ + #endif + loc1 = (key1 + 1) % hashtable->nlist ; + loc2 = (key2 + 1) % hashtable->nlist ; +-long int loc3 = (long int)loc1*(long int)loc2 % hashtable->nlist ; +-loc =(int) loc3; ++/*loc = (loc1*loc2) % hashtable->nlist ;*/ ++long int loc3 = (long int)loc1*(long int)loc2 % hashtable->nlist ; ++loc=(int)loc3; + #if MYDEBUG > 0 +-fprintf(stdout, "\n loc1 = %d, loc2 = %d, loc3 = %ld, loc = %d", loc1, loc2, loc3, loc) ; ++fprintf(stdout, "\n loc1 = %d, loc2 = %d, loc3 = %d", loc1, loc2, loc) ; + fflush(stdout) ; + #endif + /* +@@ -231,7 +233,9 @@ + } + loc1 = (key1 + 1) % hashtable->nlist ; + loc2 = (key2 + 1) % hashtable->nlist ; +-loc = (loc1*loc2) % hashtable->nlist ; ++/*loc = (loc1*loc2) % hashtable->nlist ;*/ ++long int loc3 = (long int)loc1*(long int)loc2 % hashtable->nlist ; ++loc=(int)loc3; + /* + --------------------------------------------------- + find the location of the first (key1,key2,*) triple +--- I2Ohash/src/util.c.orig 2013-03-04 21:21:54.000000000 -0500 ++++ I2Ohash/src/util.c 2012-10-06 08:28:37.000000000 -0500 +@@ -39,8 +39,9 @@ + */ + loc1 = (key1 + 1) % hashtable->nlist ; + loc2 = (key2 + 1) % hashtable->nlist ; +-long int loc3 = (long int)loc1*(long int)loc2 % hashtable->nlist ; +-loc =(int) loc3; ++/*loc = (loc1*loc2) % hashtable->nlist ;*/ ++long int loc3 = (long int)loc1*(long int)loc2 % hashtable->nlist ; ++loc=(int)loc3; + #if MYDEBUG > 0 + fprintf(stdout, "\n loc1 = %d, loc2 = %d, loc3 = %d", loc1, loc2, loc) ; + fflush(stdout) ; +@@ -51,7 +52,7 @@ + -------------------------------------------------------- + */ + #if MYDEBUG > 0 +-fprintf(stdout, "\n loc1 = %d, loc2 = %d, loc3 = %ld, loc = %d", loc1, loc2, loc3, loc) ; ++fprintf(stdout, "\n hashtable->freeI2OP = %p", hashtable->freeI2OP) ; + fflush(stdout) ; + #endif + if ( (i2op = hashtable->freeI2OP) == NULL ) { +@@ -159,10 +160,11 @@ + #endif + loc1 = (key1 + 1) % hashtable->nlist ; + loc2 = (key2 + 1) % hashtable->nlist ; +-long int loc3 = (long int)loc1*(long int)loc2 % hashtable->nlist ; +-loc =(int) loc3; ++/*loc = (loc1*loc2) % hashtable->nlist ;*/ ++long int loc3 = (long int)loc1*(long int)loc2 % hashtable->nlist ; ++loc=(int)loc3; + #if MYDEBUG > 0 +-fprintf(stdout, "\n loc1 = %d, loc2 = %d, loc3 = %ld, loc = %d", loc1, loc2, loc3, loc) ; ++fprintf(stdout, "\n loc1 = %d, loc2 = %d, loc3 = %d", loc1, loc2, loc) ; + fflush(stdout) ; + #endif + /* +@@ -231,7 +233,9 @@ + } + loc1 = (key1 + 1) % hashtable->nlist ; + loc2 = (key2 + 1) % hashtable->nlist ; +-loc = (loc1*loc2) % hashtable->nlist ; ++/*loc = (loc1*loc2) % hashtable->nlist ;*/ ++long int loc3 = (long int)loc1*(long int)loc2 % hashtable->nlist ; ++loc=(int)loc3; + /* + --------------------------------------------------- + find the location of the first (key1,key2,*) triple diff --git a/math/spooles/pkg-descr b/math/spooles/pkg-descr index 978111b1ca5f..1f5ea0d03e46 100644 --- a/math/spooles/pkg-descr +++ b/math/spooles/pkg-descr @@ -17,4 +17,4 @@ methods. The preconditioner is a drop tolerance factorization, with or without pivoting for stability. -WWW: http://www.spooles.org/ +WWW: http://www.netlib.org/linalg/spooles/spooles.2.2.html |