ABC: A System for Sequential Synthesis and Verification
 
Loading...
Searching...
No Matches
cutApi.c File Reference
#include "cutInt.h"
Include dependency graph for cutApi.c:

Go to the source code of this file.

Functions

ABC_NAMESPACE_IMPL_START Cut_Cut_tCut_NodeReadCutsNew (Cut_Man_t *p, int Node)
 DECLARATIONS ///.
 
Cut_Cut_tCut_NodeReadCutsOld (Cut_Man_t *p, int Node)
 
Cut_Cut_tCut_NodeReadCutsTemp (Cut_Man_t *p, int Node)
 
void Cut_NodeWriteCutsNew (Cut_Man_t *p, int Node, Cut_Cut_t *pList)
 
void Cut_NodeWriteCutsOld (Cut_Man_t *p, int Node, Cut_Cut_t *pList)
 
void Cut_NodeWriteCutsTemp (Cut_Man_t *p, int Node, Cut_Cut_t *pList)
 
void Cut_NodeSetTriv (Cut_Man_t *p, int Node)
 
void Cut_NodeTryDroppingCuts (Cut_Man_t *p, int Node)
 
void Cut_NodeFreeCuts (Cut_Man_t *p, int Node)
 

Function Documentation

◆ Cut_NodeFreeCuts()

void Cut_NodeFreeCuts ( Cut_Man_t * p,
int Node )

Function*************************************************************

Synopsis [Deallocates the cuts at the node.]

Description []

SideEffects []

SeeAlso []

Definition at line 184 of file cutApi.c.

185{
186 Cut_Cut_t * pList, * pCut, * pCut2;
187 pList = Cut_NodeReadCutsNew( p, Node );
188 if ( pList == NULL )
189 return;
190 Cut_ListForEachCutSafe( pList, pCut, pCut2 )
191 Cut_CutRecycle( p, pCut );
192 Cut_NodeWriteCutsNew( p, Node, NULL );
193}
void Cut_NodeWriteCutsNew(Cut_Man_t *p, int Node, Cut_Cut_t *pList)
Definition cutApi.c:97
ABC_NAMESPACE_IMPL_START Cut_Cut_t * Cut_NodeReadCutsNew(Cut_Man_t *p, int Node)
DECLARATIONS ///.
Definition cutApi.c:45
void Cut_CutRecycle(Cut_Man_t *p, Cut_Cut_t *pCut)
Definition cutCut.c:72
#define Cut_ListForEachCutSafe(pList, pCut, pCut2)
Definition cutInt.h:112
struct Cut_CutStruct_t_ Cut_Cut_t
Definition cut.h:50
Cube * p
Definition exorList.c:222
Here is the call graph for this function:
Here is the caller graph for this function:

◆ Cut_NodeReadCutsNew()

ABC_NAMESPACE_IMPL_START Cut_Cut_t * Cut_NodeReadCutsNew ( Cut_Man_t * p,
int Node )

DECLARATIONS ///.

MACRO DEFINITIONS ///.

CFile****************************************************************

FileName [cutNode.c]

SystemName [ABC: Logic synthesis and verification system.]

PackageName [K-feasible cut computation package.]

Synopsis [Procedures to compute cuts for a node.]

Author [Alan Mishchenko]

Affiliation [UC Berkeley]

Date [Ver. 1.0. Started - June 20, 2005.]

Revision [

Id
cutNode.c,v 1.00 2005/06/20 00:00:00 alanmi Exp

] FUNCTION DEFINITIONS /// Function*************************************************************

Synopsis [Returns the pointer to the linked list of cuts.]

Description []

SideEffects []

SeeAlso []

Definition at line 45 of file cutApi.c.

46{
47 if ( Node >= p->vCutsNew->nSize )
48 return NULL;
49 return (Cut_Cut_t *)Vec_PtrEntry( p->vCutsNew, Node );
50}
Here is the caller graph for this function:

◆ Cut_NodeReadCutsOld()

Cut_Cut_t * Cut_NodeReadCutsOld ( Cut_Man_t * p,
int Node )

Function*************************************************************

Synopsis [Returns the pointer to the linked list of cuts.]

Description []

SideEffects []

SeeAlso []

Definition at line 63 of file cutApi.c.

64{
65 assert( Node < p->vCutsOld->nSize );
66 return (Cut_Cut_t *)Vec_PtrEntry( p->vCutsOld, Node );
67}
#define assert(ex)
Definition util_old.h:213
Here is the caller graph for this function:

◆ Cut_NodeReadCutsTemp()

Cut_Cut_t * Cut_NodeReadCutsTemp ( Cut_Man_t * p,
int Node )

Function*************************************************************

Synopsis [Returns the pointer to the linked list of cuts.]

Description []

SideEffects []

SeeAlso []

Definition at line 80 of file cutApi.c.

81{
82 assert( Node < p->vCutsTemp->nSize );
83 return (Cut_Cut_t *)Vec_PtrEntry( p->vCutsTemp, Node );
84}
Here is the caller graph for this function:

◆ Cut_NodeSetTriv()

void Cut_NodeSetTriv ( Cut_Man_t * p,
int Node )

Function*************************************************************

Synopsis [Sets the trivial cut for the node.]

Description []

SideEffects []

SeeAlso []

Definition at line 145 of file cutApi.c.

146{
147 assert( Cut_NodeReadCutsNew(p, Node) == NULL );
148 Cut_NodeWriteCutsNew( p, Node, Cut_CutCreateTriv(p, Node) );
149}
Cut_Cut_t * Cut_CutCreateTriv(Cut_Man_t *p, int Node)
Definition cutCut.c:238
Here is the call graph for this function:
Here is the caller graph for this function:

◆ Cut_NodeTryDroppingCuts()

void Cut_NodeTryDroppingCuts ( Cut_Man_t * p,
int Node )

Function*************************************************************

Synopsis [Consider dropping cuts if they are useless by now.]

Description []

SideEffects []

SeeAlso []

Definition at line 162 of file cutApi.c.

163{
164 int nFanouts;
165 assert( p->vFanCounts );
166 nFanouts = Vec_IntEntry( p->vFanCounts, Node );
167 assert( nFanouts > 0 );
168 if ( --nFanouts == 0 )
169 Cut_NodeFreeCuts( p, Node );
170 Vec_IntWriteEntry( p->vFanCounts, Node, nFanouts );
171}
void Cut_NodeFreeCuts(Cut_Man_t *p, int Node)
Definition cutApi.c:184
Here is the call graph for this function:
Here is the caller graph for this function:

◆ Cut_NodeWriteCutsNew()

void Cut_NodeWriteCutsNew ( Cut_Man_t * p,
int Node,
Cut_Cut_t * pList )

Function*************************************************************

Synopsis [Returns the pointer to the linked list of cuts.]

Description []

SideEffects []

SeeAlso []

Definition at line 97 of file cutApi.c.

98{
99 Vec_PtrWriteEntry( p->vCutsNew, Node, pList );
100}
Here is the caller graph for this function:

◆ Cut_NodeWriteCutsOld()

void Cut_NodeWriteCutsOld ( Cut_Man_t * p,
int Node,
Cut_Cut_t * pList )

Function*************************************************************

Synopsis [Returns the pointer to the linked list of cuts.]

Description []

SideEffects []

SeeAlso []

Definition at line 113 of file cutApi.c.

114{
115 Vec_PtrWriteEntry( p->vCutsOld, Node, pList );
116}
Here is the caller graph for this function:

◆ Cut_NodeWriteCutsTemp()

void Cut_NodeWriteCutsTemp ( Cut_Man_t * p,
int Node,
Cut_Cut_t * pList )

Function*************************************************************

Synopsis [Returns the pointer to the linked list of cuts.]

Description []

SideEffects []

SeeAlso []

Definition at line 129 of file cutApi.c.

130{
131 Vec_PtrWriteEntry( p->vCutsTemp, Node, pList );
132}
Here is the caller graph for this function: