#include "DSDNewDecompose.h"
Functions | |
DSDNode * | Common_Formals_Decomp (DSDManager *manager, DdNode *f, DdNode *top_func, DSDNode *T, DSDNode *E) |
void | insert_listT (DSDManager *manager, ActualNode *actual) |
void | insert_listE (DSDManager *manager, ActualNode *actual) |
void | unmark_recursive (DSDNode *node) |
ActualNode * | sort_list (DdManager *manager, int *size) |
DdNode * | check_marks_recursive (DSDManager *manager, DSDNode *node, DSDNode *parent) |
DdNode * | check_remaining_marks_recursive (DSDManager *manager, DSDNode *node, DSDNode *parent) |
void | mark_recursive (DSDNode *node, DSDNode *parent) |
|
Internal function called by Common_Formals_Decomp to identify exclusive and common blocks by examining the decomposition tree of one of the cofactors |
|
Internal function called by Common_Formals_Decomp to identify exclusive and common blocks by examining the decomposition tree of the other cofactor |
|
Internal function that obtains performs the algorithm for computing new decompositions of a function from the decompositions of its right and left cofactor |
|
Internal function used to by maintain a list of common and exclusive blocks obtained by examining the Else decomposition tree |
|
Internal function used to by maintain a list of common and exclusive blocks obtained by examining the Then decomposition tree |
|
Internal function to mark all DSD nodes rooted at node |
|
Internal function that performs a simple insertion sort to put the actuals list created in the new decomposition algorithm in the proper canonical order |
|
Internal function to unmark all DSD nodes rooted at node |