67 (*ok) = (*ok) && (s >= a) ;
68 return ((*ok) ? s : 0) ;
87 (*ok) = (*ok) && (p >= a) ;
92 (*ok) = (*ok) && (s >= a) ;
147 p = ok ? ((
Common->malloc_memory) (s)) :
NULL ;
157 Common->memory_inuse += (
n * size) ;
160 PRINTM ((
"cholmod_malloc %p %d cnt: %d inuse %d\n",
202 (
Common->free_memory) (p) ;
204 Common->memory_inuse -= (
n * size) ;
205 PRINTM ((
"cholmod_free %p %d cnt: %d inuse %d\n",
257 p = (
Common->calloc_memory) (
MAX (1,
n), size) ;
267 Common->memory_inuse += (
n * size) ;
270 PRINTM ((
"cholmod_calloc %p %d cnt: %d inuse %d\n",
325 PRINT1 ((
"realloc fresh: %d %d\n", nnew, size)) ;
327 *
n = (p ==
NULL) ? 0 : nnew ;
329 else if (nold == nnew)
332 PRINT1 ((
"realloc nothing: %d %d\n", nnew, size)) ;
343 PRINT1 ((
"realloc : %d to %d, %d\n", nold, nnew, size)) ;
347 pnew = ok ? ((
Common->realloc_memory) (p, s)) :
NULL ;
359 PRINTM ((
"nnew <= nold failed, pretend to succeed\n")) ;
360 PRINTM ((
"cholmod_realloc_old: %p %d cnt: %d inuse %d\n" 361 "cholmod_realloc_new: %p %d cnt: %d inuse %d\n",
362 p, nold*size,
Common->malloc_count-1,
363 Common->memory_inuse - nold*size,
364 p, nnew*size,
Common->malloc_count,
365 Common->memory_inuse + (nnew-nold)*size)) ;
366 Common->memory_inuse += ((nnew-nold) * size) ;
378 PRINTM ((
"cholmod_realloc_old: %p %d cnt: %d inuse %d\n" 379 "cholmod_realloc_new: %p %d cnt: %d inuse %d\n",
380 p, nold*size,
Common->malloc_count-1,
381 Common->memory_inuse - nold*size,
382 pnew, nnew*size,
Common->malloc_count,
383 Common->memory_inuse + (nnew-nold)*size)) ;
386 Common->memory_inuse += ((nnew-nold) * size) ;
423 size_t i, j, x, z, nold ;
458 *X =
CHOLMOD(realloc) (nnew,
sizeof (double), *X, &x,
Common) ;
462 *X =
CHOLMOD(realloc) (nnew, 2*
sizeof (double), *X, &x,
Common) ;
466 *X =
CHOLMOD(realloc) (nnew,
sizeof (double), *X, &x,
Common) ;
467 *Z =
CHOLMOD(realloc) (nnew,
sizeof (double), *Z, &z,
Common) ;
518 *X =
CHOLMOD(realloc) (nold,
sizeof (double), *X, &x,
523 *X =
CHOLMOD(realloc) (nold, 2*
sizeof (double), *X, &x,
528 *X =
CHOLMOD(realloc) (nold,
sizeof (double), *X, &x,
530 *Z =
CHOLMOD(realloc) (nold,
sizeof (double), *Z, &z,
#define CHOLMOD_TOO_LARGE
int CHOLMOD() realloc_multiple(size_t nnew, int nint, int xtype, void **I, void **J, void **X, void **Z, size_t *nold_p, cholmod_common *Common)
size_t CHOLMOD() add_size_t(size_t a, size_t b, int *ok)
#define RETURN_IF_NULL_COMMON(result)
size_t CHOLMOD() mult_size_t(size_t a, size_t k, int *ok)
#define ASSERT(expression)
#define CHOLMOD_OUT_OF_MEMORY
#define ERROR(status, msg)