ABC: A System for Sequential Synthesis and Verification
 
Loading...
Searching...
No Matches
phases.c File Reference
#include "allocate.h"
#include "internal.h"
#include "logging.h"
#include <string.h>
Include dependency graph for phases.c:

Go to the source code of this file.

Macros

#define realloc_phases(NAME)
 
#define increase_phases(NAME)
 
#define release_phases(NAME, SIZE)
 

Functions

void kissat_increase_phases (kissat *solver, unsigned new_size)
 
void kissat_decrease_phases (kissat *solver, unsigned new_size)
 
void kissat_release_phases (kissat *solver)
 
void kissat_save_best_phases (kissat *solver)
 
void kissat_save_target_phases (kissat *solver)
 

Macro Definition Documentation

◆ increase_phases

#define increase_phases ( NAME)
Value:
do { \
KISSAT_assert (old_size < new_size); \
realloc_phases (NAME); \
memset (solver->phases.NAME + old_size, 0, new_size - old_size); \
} while (0)
@ NAME
Definition inflate.h:29
#define solver
Definition kitten.c:211

Definition at line 15 of file phases.c.

15#define increase_phases(NAME) \
16 do { \
17 KISSAT_assert (old_size < new_size); \
18 realloc_phases (NAME); \
19 memset (solver->phases.NAME + old_size, 0, new_size - old_size); \
20 } while (0)

◆ realloc_phases

#define realloc_phases ( NAME)
Value:
do { \
solver->phases.NAME = \
(value*) kissat_realloc (solver, solver->phases.NAME, old_size, new_size); \
} while (0)
void * kissat_realloc(kissat *solver, void *p, size_t old_bytes, size_t new_bytes)
Definition allocate.c:123
ABC_NAMESPACE_IMPL_START typedef signed char value

Definition at line 9 of file phases.c.

9#define realloc_phases(NAME) \
10 do { \
11 solver->phases.NAME = \
12 (value*) kissat_realloc (solver, solver->phases.NAME, old_size, new_size); \
13 } while (0)

◆ release_phases

#define release_phases ( NAME,
SIZE )
Value:
kissat_free (solver, solver->phases.NAME, SIZE)
void kissat_free(kissat *solver, void *ptr, size_t bytes)
Definition allocate.c:61
#define SIZE(set)
Definition espresso.h:112

Definition at line 40 of file phases.c.

40#define release_phases(NAME, SIZE) \
41 kissat_free (solver, solver->phases.NAME, SIZE)

Function Documentation

◆ kissat_decrease_phases()

void kissat_decrease_phases ( kissat * solver,
unsigned new_size )

Definition at line 31 of file phases.c.

31 {
32 const unsigned old_size = solver->size;
33 KISSAT_assert (old_size > new_size);
34 LOG ("decreasing phases from %u to %u", old_size, new_size);
35 realloc_phases (best);
36 realloc_phases (saved);
37 realloc_phases (target);
38}
#define LOG(...)
#define KISSAT_assert(ignore)
Definition global.h:13
#define realloc_phases(NAME)
Definition phases.c:9
Here is the caller graph for this function:

◆ kissat_increase_phases()

void kissat_increase_phases ( kissat * solver,
unsigned new_size )

Definition at line 22 of file phases.c.

22 {
23 const unsigned old_size = solver->size;
24 KISSAT_assert (old_size < new_size);
25 LOG ("increasing phases from %u to %u", old_size, new_size);
26 increase_phases (best);
27 increase_phases (saved);
28 increase_phases (target);
29}
#define increase_phases(NAME)
Definition phases.c:15
Here is the caller graph for this function:

◆ kissat_release_phases()

void kissat_release_phases ( kissat * solver)

Definition at line 43 of file phases.c.

43 {
44 const unsigned size = solver->size;
45 release_phases (best, size);
46 release_phases (saved, size);
47 release_phases (target, size);
48}
unsigned long long size
Definition giaNewBdd.h:39
#define release_phases(NAME, SIZE)
Definition phases.c:40
Here is the caller graph for this function:

◆ kissat_save_best_phases()

void kissat_save_best_phases ( kissat * solver)

Definition at line 60 of file phases.c.

60 {
61 KISSAT_assert (sizeof (value) == 1);
62 LOG ("saving %u best values", VARS);
63 save_phases (solver, solver->phases.best);
64}
#define VARS
Definition internal.h:250

◆ kissat_save_target_phases()

void kissat_save_target_phases ( kissat * solver)

Definition at line 66 of file phases.c.

66 {
67 KISSAT_assert (sizeof (value) == 1);
68 LOG ("saving %u target values", VARS);
69 save_phases (solver, solver->phases.target);
70}