abc/src/bool/kit/cloud.c
/**Function********************************************************************

  Synopsis    [Performs the recursive step of Cloud_Support.]

  Description [Performs the recursive step of Cloud_Support. Performs a
  DFS from f. The support is accumulated in supp as a side effect. Uses
  the LSB of the then pointer as visited flag.]

  SideEffects [None]

  SeeAlso     []

******************************************************************************/
Function
Synopsis    [Performs the recursive step of Cloud_Support.]

Description [Performs the recursive step of Cloud_Support. Performs a
DFS from f. The support is accumulated in supp as a side effect. Uses
the LSB of the then pointer as visited flag.]




Function Synopsis [ Performs the recursive step of Cloud_Support . ] Description [ Performs the recursive step of Cloud_Support . Performs a DFS from f . The support is accumulated in supp as a side effect . Uses the LSB of the then pointer as visited flag . ]
static void cloudSupport( CloudManager * dd, CloudNode * n, int * support )
{
    if ( cloudIsConstant(n) || cloudNodeIsMarked(n) )
        return;
    cloudNodeMark(n);
    support[cloudV(n)] = 1;
    cloudSupport( dd, cloudT(n), support );
    cloudSupport( dd, Cloud_Regular(cloudE(n)), support );
}
static void cloudSupport ( CloudManager * dd , CloudNode * n , int * support ) { if ( cloudIsConstant ( n ) || cloudNodeIsMarked ( n ) ) return ; cloudNodeMark ( n ) ; support [ cloudV ( n ) ] = 1 ; cloudSupport ( dd , cloudT ( n ) , support ) ; cloudSupport ( dd , Cloud_Regular ( cloudE ( n ) ) , support ) ; }
Function
Synopsis    [Performs the recursive step of Cloud_Support.]
Function Synopsis [ Performs the recursive step of Cloud_Support . ]
// set visited flag