27 {
31 const size_t bytes = kissat_bytes_of_clause (size);
33 const size_t needed = bytes /
sizeof (
ward);
38 size_t available = capacity - res;
39 if (needed > available) {
40 const arena before =
solver->arena;
41 do {
45 "of 2^%u %zu-byte-words %s exhausted"
47 " (consider a configuration without '--compact')"
48#endif
49 ,
55 available = capacity - res;
56 } while (needed > available);
59 report_resized (
solver,
"enlarged", before);
61 }
62 solver->arena.end += needed;
63 LOG (
"allocated clause[%zu] of size %zu bytes %s", res, size,
66}
ABC_NAMESPACE_HEADER_START typedef word ward
#define CAPACITY_STACK(S)
void kissat_fatal(const char *fmt,...)
#define KISSAT_assert(ignore)
ABC_NAMESPACE_HEADER_START typedef unsigned reference
ABC_NAMESPACE_IMPL_START void kissat_stack_enlarge(struct kissat *solver, chars *s, size_t bytes)