svf-tools 1.0.442 → 1.0.445
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/SVF-doxygen/html/html/AbstractPointsToDS_8h_source.html +1 -1
- package/SVF-doxygen/html/html/AndersenHCD_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/AndersenHLCD_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/AndersenLCD_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/AndersenSCD_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/AndersenSFR_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/AndersenSFR_8h_source.html +1 -1
- package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/AndersenWaveDiff_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/Andersen_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/Andersen_8h_source.html +1 -1
- package/SVF-doxygen/html/html/Annotator_8h_source.html +1 -1
- package/SVF-doxygen/html/html/BDDExpr_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/BDDExpr_8h_source.html +1 -1
- package/SVF-doxygen/html/html/BitVector_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/BitVector_8h_source.html +1 -1
- package/SVF-doxygen/html/html/BreakConstantExpr_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/BreakConstantExpr_8h_source.html +1 -1
- package/SVF-doxygen/html/html/CFGNormalizer_8cpp.html +86 -0
- package/SVF-doxygen/html/html/CFGNormalizer_8cpp_source.html +104 -0
- package/SVF-doxygen/html/html/CFGNormalizer_8h.html +95 -0
- package/SVF-doxygen/html/html/CFGNormalizer_8h_source.html +95 -0
- package/SVF-doxygen/html/html/CFLAlias_8h.html +100 -0
- package/SVF-doxygen/html/html/CFLAlias_8h_source.html +136 -0
- package/SVF-doxygen/html/html/CFLGrammar_8cpp.html +81 -0
- package/SVF-doxygen/html/html/CFLGrammar_8cpp_source.html +90 -0
- package/SVF-doxygen/html/html/CFLGrammar_8h.html +97 -0
- package/SVF-doxygen/html/html/CFLGrammar_8h_source.html +114 -0
- package/SVF-doxygen/html/html/CFLGraph_8cpp.html +96 -0
- package/SVF-doxygen/html/html/CFLGraph_8cpp_source.html +123 -0
- package/SVF-doxygen/html/html/CFLGraph_8h.html +124 -0
- package/SVF-doxygen/html/html/CFLGraph_8h_source.html +114 -0
- package/SVF-doxygen/html/html/CFLSolver_8cpp.html +80 -0
- package/SVF-doxygen/html/html/CFLSolver_8cpp_source.html +107 -0
- package/SVF-doxygen/html/html/CFLSolver_8h.html +6 -5
- package/SVF-doxygen/html/html/CFLSolver_8h_source.html +27 -33
- package/SVF-doxygen/html/html/CHGBuilder_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/CHGBuilder_8h_source.html +1 -1
- package/SVF-doxygen/html/html/CHG_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/CHG_8h_source.html +3 -3
- package/SVF-doxygen/html/html/CPPUtil_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/CPPUtil_8h_source.html +1 -1
- package/SVF-doxygen/html/html/CSC_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/CSC_8h_source.html +1 -1
- package/SVF-doxygen/html/html/CallGraphBuilder_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/CallGraphBuilder_8h_source.html +1 -1
- package/SVF-doxygen/html/html/Casting_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ConditionalPT_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ConsGEdge_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ConsGNode_8h_source.html +6 -6
- package/SVF-doxygen/html/html/ConsG_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/ConsG_8h_source.html +2 -2
- package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/ContextDDA_8h_source.html +2 -2
- package/SVF-doxygen/html/html/CoreBitVector_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/CoreBitVector_8h_source.html +1 -1
- package/SVF-doxygen/html/html/CxtStmt_8h_source.html +1 -1
- package/SVF-doxygen/html/html/DCHG_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/DCHG_8h_source.html +2 -2
- package/SVF-doxygen/html/html/DDAClient_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/DDAClient_8h_source.html +1 -1
- package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/DDAPass_8h_source.html +1 -1
- package/SVF-doxygen/html/html/DDAStat_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/DDAStat_8h_source.html +1 -1
- package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +1 -1
- package/SVF-doxygen/html/html/DPItem_8h_source.html +1 -1
- package/SVF-doxygen/html/html/DataFlowUtil_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/DataFlowUtil_8h_source.html +1 -1
- package/SVF-doxygen/html/html/DoubleFreeChecker_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/DoubleFreeChecker_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ExeState_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/ExeState_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ExtAPI_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/ExtAPI_8h_source.html +1 -1
- package/SVF-doxygen/html/html/FSMPTA_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/FSMPTA_8h_source.html +1 -1
- package/SVF-doxygen/html/html/FileChecker_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/FileChecker_8h_source.html +1 -1
- package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/FlowDDA_8h_source.html +1 -1
- package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/FlowSensitiveTBHC_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/FlowSensitiveTBHC_8h_source.html +1 -1
- package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/FlowSensitive_8h_source.html +1 -1
- package/SVF-doxygen/html/html/GEPTypeBridgeIterator_8h_source.html +1 -1
- package/SVF-doxygen/html/html/GenericGraph_8h_source.html +2 -2
- package/SVF-doxygen/html/html/GrammarBuilder_8cpp.html +94 -0
- package/SVF-doxygen/html/html/GrammarBuilder_8cpp_source.html +92 -0
- package/SVF-doxygen/html/html/GrammarBuilder_8h.html +96 -0
- package/SVF-doxygen/html/html/GrammarBuilder_8h_source.html +87 -0
- package/SVF-doxygen/html/html/Graph2Json_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/Graph2Json_8h_source.html +1 -1
- package/SVF-doxygen/html/html/GraphPrinter_8h_source.html +1 -1
- package/SVF-doxygen/html/html/GraphReachSolver_8h.html +96 -0
- package/SVF-doxygen/html/html/GraphReachSolver_8h_source.html +113 -0
- package/SVF-doxygen/html/html/ICFGBuilder_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/ICFGBuilder_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ICFGEdge_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ICFGNode_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ICFGStat_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ICFG_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/ICFG_8h_source.html +2 -2
- package/SVF-doxygen/html/html/IRAnnotator_8h_source.html +1 -1
- package/SVF-doxygen/html/html/IRGraph_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/IRGraph_8h_source.html +3 -3
- package/SVF-doxygen/html/html/LLVMModule_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/LLVMModule_8h_source.html +1 -1
- package/SVF-doxygen/html/html/LLVMUtil_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/LLVMUtil_8h_source.html +1 -1
- package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/LeakChecker_8h_source.html +2 -2
- package/SVF-doxygen/html/html/LocationSet_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/LocationSet_8h_source.html +1 -1
- package/SVF-doxygen/html/html/LockAnalysis_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/LockAnalysis_8h_source.html +1 -1
- package/SVF-doxygen/html/html/LockResultValidator_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/LockResultValidator_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MHP_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/MHP_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MSSAMuChi_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MTAAnnotator_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/MTAAnnotator_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MTAResultValidator_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/MTAResultValidator_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MTAStat_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/MTAStat_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MTA_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/MTA_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MemPartition_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/MemPartition_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/MemRegion_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/MemSSA_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MutablePointsToDS_8h_source.html +1 -1
- package/SVF-doxygen/html/html/NodeIDAllocator_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/NodeIDAllocator_8h_source.html +1 -1
- package/SVF-doxygen/html/html/OfflineConsG_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/OfflineConsG_8h_source.html +2 -2
- package/SVF-doxygen/html/html/Options_8cpp_source.html +7 -2
- package/SVF-doxygen/html/html/Options_8h_source.html +7 -2
- package/SVF-doxygen/html/html/PAGBuilderFromFile_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/PAGBuilderFromFile_8h_source.html +1 -1
- package/SVF-doxygen/html/html/PCG_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/PCG_8h_source.html +1 -1
- package/SVF-doxygen/html/html/PTACallGraph_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/PTACallGraph_8h_source.html +2 -2
- package/SVF-doxygen/html/html/PTAStat_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/PTAStat_8h_source.html +1 -1
- package/SVF-doxygen/html/html/PathCondAllocator_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/PathCondAllocator_8h_source.html +1 -1
- package/SVF-doxygen/html/html/PersistentPointsToCache_8h_source.html +1 -1
- package/SVF-doxygen/html/html/PersistentPointsToDS_8h_source.html +1 -1
- package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/PointerAnalysisImpl_8h_source.html +1 -1
- package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +5 -5
- package/SVF-doxygen/html/html/PointsTo_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/PointsTo_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ProgSlice_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/ProgSlice_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SCC_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFBasicTypes_8h_source.html +2 -2
- package/SVF-doxygen/html/html/SVFGBuilder_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SVFGBuilder_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFGEdge_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFGNode_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFGOPT_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SVFGOPT_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFGStat_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SVFGStat_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFG_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/SVFG_8h_source.html +2 -2
- package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SVFIR_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFModule_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SVFModule_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SVFStatements_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFUtil_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SVFUtil_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFVariables_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SVFVariables_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SaberAnnotator_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SaberAnnotator_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SaberCheckerAPI_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SaberCheckerAPI_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SaberSVFGBuilder_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SrcSnkDDA_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/SrcSnkDDA_8h.html +3 -3
- package/SVF-doxygen/html/html/SrcSnkDDA_8h_source.html +61 -61
- package/SVF-doxygen/html/html/SrcSnkSolver_8h_source.html +1 -1
- package/SVF-doxygen/html/html/Steensgaard_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/Steensgaard_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SymbolTableBuilder_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SymbolTableBuilder_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SymbolTableInfo_8h_source.html +1 -1
- package/SVF-doxygen/html/html/TCT_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/TCT_8h_source.html +2 -2
- package/SVF-doxygen/html/html/ThreadAPI_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/ThreadAPI_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/ThreadCallGraph_8h_source.html +1 -1
- package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/TypeAnalysis_8h_source.html +1 -1
- package/SVF-doxygen/html/html/TypeBasedHeapCloning_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/TypeBasedHeapCloning_8h_source.html +1 -1
- package/SVF-doxygen/html/html/Util_2BasicTypes_8h_source.html +1 -1
- package/SVF-doxygen/html/html/VFGEdge_8h_source.html +1 -1
- package/SVF-doxygen/html/html/VFGNode_8h_source.html +1 -1
- package/SVF-doxygen/html/html/VFG_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/VFG_8h_source.html +2 -2
- package/SVF-doxygen/html/html/VersionedFlowSensitiveStat_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/VersionedFlowSensitive_8h_source.html +1 -1
- package/SVF-doxygen/html/html/WPAFSSolver_8h_source.html +1 -1
- package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/WPAPass_8h_source.html +1 -1
- package/SVF-doxygen/html/html/WPASolver_8h_source.html +1 -1
- package/SVF-doxygen/html/html/WPAStat_8h_source.html +1 -1
- package/SVF-doxygen/html/html/WorkList_8h_source.html +1 -1
- package/SVF-doxygen/html/html/Z3Expr_8h_source.html +1 -1
- package/SVF-doxygen/html/html/annotated.html +302 -288
- package/SVF-doxygen/html/html/cfl_8cpp.html +171 -0
- package/SVF-doxygen/html/html/cfl_8cpp_source.html +95 -0
- package/SVF-doxygen/html/html/classSVF_1_1Andersen-members.html +51 -51
- package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1AndersenBase-members.html +39 -39
- package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1AndersenHCD-members.html +56 -56
- package/SVF-doxygen/html/html/classSVF_1_1AndersenHCD.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1AndersenHLCD-members.html +55 -55
- package/SVF-doxygen/html/html/classSVF_1_1AndersenHLCD.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1AndersenLCD-members.html +51 -51
- package/SVF-doxygen/html/html/classSVF_1_1AndersenLCD.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD-members.html +52 -52
- package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR-members.html +59 -59
- package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff-members.html +53 -53
- package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl-members.html +33 -33
- package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1CFGNormalizer-members.html +90 -0
- package/SVF-doxygen/html/html/classSVF_1_1CFGNormalizer.html +458 -0
- package/SVF-doxygen/html/html/classSVF_1_1CFLAlias-members.html +216 -0
- package/SVF-doxygen/html/html/classSVF_1_1CFLAlias.html +801 -0
- package/SVF-doxygen/html/html/classSVF_1_1CFLAlias.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1CFLEdge-members.html +96 -0
- package/SVF-doxygen/html/html/classSVF_1_1CFLEdge.html +216 -0
- package/SVF-doxygen/html/html/classSVF_1_1CFLEdge.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1CFLGrammar-members.html +110 -0
- package/SVF-doxygen/html/html/classSVF_1_1CFLGrammar.html +591 -0
- package/SVF-doxygen/html/html/classSVF_1_1CFLGrammar.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1CFLGraph-members.html +122 -0
- package/SVF-doxygen/html/html/classSVF_1_1CFLGraph.html +756 -0
- package/SVF-doxygen/html/html/classSVF_1_1CFLGraph.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1CFLNode-members.html +118 -0
- package/SVF-doxygen/html/html/classSVF_1_1CFLNode.html +257 -0
- package/SVF-doxygen/html/html/classSVF_1_1CFLNode.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1CFLSolver-members.html +17 -28
- package/SVF-doxygen/html/html/classSVF_1_1CFLSolver.html +181 -548
- package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl-members.html +36 -36
- package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1ConstraintNode-members.html +26 -26
- package/SVF-doxygen/html/html/classSVF_1_1ConstraintNode.html +43 -43
- package/SVF-doxygen/html/html/classSVF_1_1ContextDDA-members.html +57 -57
- package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1DoubleFreeChecker-members.html +55 -55
- package/SVF-doxygen/html/html/classSVF_1_1DoubleFreeChecker.html +64 -64
- package/SVF-doxygen/html/html/classSVF_1_1DoubleFreeChecker.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1FSMPTA-members.html +55 -55
- package/SVF-doxygen/html/html/classSVF_1_1FSMPTA.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1FileChecker-members.html +57 -57
- package/SVF-doxygen/html/html/classSVF_1_1FileChecker.html +66 -66
- package/SVF-doxygen/html/html/classSVF_1_1FileChecker.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1FlowDDA-members.html +48 -48
- package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive-members.html +47 -47
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC-members.html +59 -59
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1GenericEdge.html +8 -24
- package/SVF-doxygen/html/html/classSVF_1_1GenericEdge.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1GenericGraph.html +10 -9
- package/SVF-doxygen/html/html/classSVF_1_1GenericGraph.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1GenericNode.html +21 -20
- package/SVF-doxygen/html/html/classSVF_1_1GenericNode.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1GrammarBase-members.html +93 -0
- package/SVF-doxygen/html/html/classSVF_1_1GrammarBase.html +399 -0
- package/SVF-doxygen/html/html/classSVF_1_1GrammarBase.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1GrammarBuilder-members.html +85 -0
- package/SVF-doxygen/html/html/classSVF_1_1GrammarBuilder.html +226 -0
- package/SVF-doxygen/html/html/classSVF_1_1GraphReachSolver-members.html +106 -0
- package/SVF-doxygen/html/html/classSVF_1_1GraphReachSolver.html +937 -0
- package/SVF-doxygen/html/html/classSVF_1_1GraphReachSolver.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1LeakChecker-members.html +55 -55
- package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +81 -81
- package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1Options-members.html +80 -75
- package/SVF-doxygen/html/html/classSVF_1_1Options.html +130 -0
- package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis-members.html +25 -25
- package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +17 -16
- package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA-members.html +51 -51
- package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA.html +207 -207
- package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1SrcSnkSolver.html +0 -12
- package/SVF-doxygen/html/html/classSVF_1_1Steensgaard-members.html +42 -42
- package/SVF-doxygen/html/html/classSVF_1_1Steensgaard.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis-members.html +45 -45
- package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive-members.html +61 -61
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +5 -5
- package/SVF-doxygen/html/html/classes.html +103 -101
- package/SVF-doxygen/html/html/cuddInt_8c.html +6 -6
- package/SVF-doxygen/html/html/cuddInt_8c_source.html +2 -2
- package/SVF-doxygen/html/html/cudd_8h.html +4 -4
- package/SVF-doxygen/html/html/dda_8cpp.html +2 -46
- package/SVF-doxygen/html/html/dda_8cpp_source.html +4 -5
- package/SVF-doxygen/html/html/dir_1870ebf480d659cc38d2dd7ac3aa8993.html +2 -0
- package/SVF-doxygen/html/html/dir_4eeb864c4eec08c7d6b9d3b0352cfdde.html +2 -0
- package/SVF-doxygen/html/html/dir_95e22971b5dbae2382075a3453e365b4.html +2 -0
- package/SVF-doxygen/html/html/dir_97aefd0d527b934f1d99a682da8fe6a9.html +2 -0
- package/SVF-doxygen/html/html/dir_98f9a352f241e0e917d4efaa4086f6e8.html +89 -0
- package/SVF-doxygen/html/html/dir_ae8aa099e368efaa962140c6624142bc.html +91 -0
- package/SVF-doxygen/html/html/dir_d44c64559bbebec7f509842c48db8b23.html +2 -0
- package/SVF-doxygen/html/html/dir_e6cca4e14eddbb730e0cbe3cab632ce5.html +83 -0
- package/SVF-doxygen/html/html/dir_fa02919a30fec2d2c2d591b4d920d648.html +2 -0
- package/SVF-doxygen/html/html/files.html +268 -252
- package/SVF-doxygen/html/html/functions.html +2 -1
- package/SVF-doxygen/html/html/functions_0x7e.html +18 -0
- package/SVF-doxygen/html/html/functions_a.html +16 -14
- package/SVF-doxygen/html/html/functions_b.html +16 -5
- package/SVF-doxygen/html/html/functions_c.html +69 -26
- package/SVF-doxygen/html/html/functions_d.html +3 -1
- package/SVF-doxygen/html/html/functions_e.html +19 -4
- package/SVF-doxygen/html/html/functions_eval.html +0 -6
- package/SVF-doxygen/html/html/functions_eval_c.html +9 -0
- package/SVF-doxygen/html/html/functions_eval_f.html +0 -3
- package/SVF-doxygen/html/html/functions_f.html +28 -21
- package/SVF-doxygen/html/html/functions_func.html +18 -10
- package/SVF-doxygen/html/html/functions_func_0x7e.html +18 -0
- package/SVF-doxygen/html/html/functions_func_b.html +19 -8
- package/SVF-doxygen/html/html/functions_func_c.html +42 -18
- package/SVF-doxygen/html/html/functions_func_d.html +4 -2
- package/SVF-doxygen/html/html/functions_func_e.html +10 -1
- package/SVF-doxygen/html/html/functions_func_f.html +6 -3
- package/SVF-doxygen/html/html/functions_func_g.html +56 -10
- package/SVF-doxygen/html/html/functions_func_h.html +12 -2
- package/SVF-doxygen/html/html/functions_func_i.html +19 -9
- package/SVF-doxygen/html/html/functions_func_n.html +7 -1
- package/SVF-doxygen/html/html/functions_func_p.html +8 -4
- package/SVF-doxygen/html/html/functions_func_s.html +20 -6
- package/SVF-doxygen/html/html/functions_func_v.html +3 -2
- package/SVF-doxygen/html/html/functions_g.html +86 -21
- package/SVF-doxygen/html/html/functions_h.html +15 -5
- package/SVF-doxygen/html/html/functions_i.html +27 -12
- package/SVF-doxygen/html/html/functions_l.html +5 -2
- package/SVF-doxygen/html/html/functions_n.html +22 -7
- package/SVF-doxygen/html/html/functions_o.html +6 -6
- package/SVF-doxygen/html/html/functions_p.html +23 -16
- package/SVF-doxygen/html/html/functions_r.html +11 -6
- package/SVF-doxygen/html/html/functions_s.html +53 -17
- package/SVF-doxygen/html/html/functions_t.html +11 -7
- package/SVF-doxygen/html/html/functions_type_c.html +5 -1
- package/SVF-doxygen/html/html/functions_type_g.html +6 -3
- package/SVF-doxygen/html/html/functions_type_i.html +4 -2
- package/SVF-doxygen/html/html/functions_type_n.html +6 -3
- package/SVF-doxygen/html/html/functions_type_p.html +9 -0
- package/SVF-doxygen/html/html/functions_type_s.html +6 -0
- package/SVF-doxygen/html/html/functions_type_w.html +3 -1
- package/SVF-doxygen/html/html/functions_v.html +2 -1
- package/SVF-doxygen/html/html/functions_vars.html +2 -1
- package/SVF-doxygen/html/html/functions_vars_c.html +6 -0
- package/SVF-doxygen/html/html/functions_vars_e.html +6 -0
- package/SVF-doxygen/html/html/functions_vars_f.html +9 -0
- package/SVF-doxygen/html/html/functions_vars_g.html +17 -1
- package/SVF-doxygen/html/html/functions_vars_i.html +3 -0
- package/SVF-doxygen/html/html/functions_vars_l.html +3 -0
- package/SVF-doxygen/html/html/functions_vars_n.html +6 -0
- package/SVF-doxygen/html/html/functions_vars_r.html +3 -0
- package/SVF-doxygen/html/html/functions_vars_s.html +16 -0
- package/SVF-doxygen/html/html/functions_vars_t.html +6 -0
- package/SVF-doxygen/html/html/functions_vars_w.html +3 -1
- package/SVF-doxygen/html/html/functions_w.html +15 -1
- package/SVF-doxygen/html/html/globals_func_i.html +3 -10
- package/SVF-doxygen/html/html/globals_func_m.html +12 -11
- package/SVF-doxygen/html/html/globals_func_s.html +1 -0
- package/SVF-doxygen/html/html/globals_i.html +3 -10
- package/SVF-doxygen/html/html/globals_m.html +14 -13
- package/SVF-doxygen/html/html/globals_s.html +8 -7
- package/SVF-doxygen/html/html/hierarchy.html +433 -417
- package/SVF-doxygen/html/html/mta_8cpp.html +2 -46
- package/SVF-doxygen/html/html/mta_8cpp_source.html +3 -4
- package/SVF-doxygen/html/html/namespaceSVF.html +83 -6
- package/SVF-doxygen/html/html/namespacellvm.html +9 -0
- package/SVF-doxygen/html/html/namespacemembers_c.html +1 -1
- package/SVF-doxygen/html/html/namespacemembers_g.html +11 -2
- package/SVF-doxygen/html/html/namespacemembers_type.html +10 -1
- package/SVF-doxygen/html/html/saber_8cpp.html +2 -46
- package/SVF-doxygen/html/html/saber_8cpp_source.html +4 -5
- package/SVF-doxygen/html/html/search/all_0.js +1 -1
- package/SVF-doxygen/html/html/search/all_1.js +4 -4
- package/SVF-doxygen/html/html/search/all_10.js +8 -6
- package/SVF-doxygen/html/html/search/all_12.js +2 -1
- package/SVF-doxygen/html/html/search/all_13.js +20 -11
- package/SVF-doxygen/html/html/search/all_14.js +5 -3
- package/SVF-doxygen/html/html/search/all_16.js +2 -2
- package/SVF-doxygen/html/html/search/all_17.js +1 -1
- package/SVF-doxygen/html/html/search/all_1b.js +6 -0
- package/SVF-doxygen/html/html/search/all_2.js +6 -4
- package/SVF-doxygen/html/html/search/all_3.js +27 -4
- package/SVF-doxygen/html/html/search/all_4.js +3 -2
- package/SVF-doxygen/html/html/search/all_5.js +5 -0
- package/SVF-doxygen/html/html/search/all_6.js +8 -5
- package/SVF-doxygen/html/html/search/all_7.js +40 -13
- package/SVF-doxygen/html/html/search/all_8.js +4 -1
- package/SVF-doxygen/html/html/search/all_9.js +9 -7
- package/SVF-doxygen/html/html/search/all_c.js +2 -1
- package/SVF-doxygen/html/html/search/all_d.js +2 -2
- package/SVF-doxygen/html/html/search/all_e.js +9 -5
- package/SVF-doxygen/html/html/search/all_f.js +4 -4
- package/SVF-doxygen/html/html/search/classes_2.js +7 -0
- package/SVF-doxygen/html/html/search/classes_3.js +1 -0
- package/SVF-doxygen/html/html/search/classes_5.js +1 -0
- package/SVF-doxygen/html/html/search/classes_6.js +7 -0
- package/SVF-doxygen/html/html/search/enumvalues_0.js +0 -2
- package/SVF-doxygen/html/html/search/enumvalues_2.js +3 -0
- package/SVF-doxygen/html/html/search/enumvalues_5.js +0 -1
- package/SVF-doxygen/html/html/search/files_2.js +11 -1
- package/SVF-doxygen/html/html/search/files_6.js +4 -1
- package/SVF-doxygen/html/html/search/functions_0.js +4 -2
- package/SVF-doxygen/html/html/search/functions_1.js +6 -4
- package/SVF-doxygen/html/html/search/functions_10.js +7 -3
- package/SVF-doxygen/html/html/search/functions_13.js +1 -1
- package/SVF-doxygen/html/html/search/functions_16.js +6 -0
- package/SVF-doxygen/html/html/search/functions_2.js +8 -0
- package/SVF-doxygen/html/html/search/functions_3.js +2 -2
- package/SVF-doxygen/html/html/search/functions_4.js +3 -0
- package/SVF-doxygen/html/html/search/functions_5.js +3 -3
- package/SVF-doxygen/html/html/search/functions_6.js +22 -10
- package/SVF-doxygen/html/html/search/functions_7.js +4 -1
- package/SVF-doxygen/html/html/search/functions_8.js +5 -4
- package/SVF-doxygen/html/html/search/functions_b.js +1 -1
- package/SVF-doxygen/html/html/search/functions_c.js +2 -0
- package/SVF-doxygen/html/html/search/functions_e.js +2 -2
- package/SVF-doxygen/html/html/search/typedefs_11.js +1 -0
- package/SVF-doxygen/html/html/search/typedefs_15.js +1 -1
- package/SVF-doxygen/html/html/search/typedefs_2.js +3 -2
- package/SVF-doxygen/html/html/search/typedefs_6.js +6 -3
- package/SVF-doxygen/html/html/search/typedefs_8.js +2 -2
- package/SVF-doxygen/html/html/search/typedefs_d.js +3 -3
- package/SVF-doxygen/html/html/search/typedefs_f.js +2 -0
- package/SVF-doxygen/html/html/search/variables_0.js +1 -1
- package/SVF-doxygen/html/html/search/variables_12.js +1 -0
- package/SVF-doxygen/html/html/search/variables_13.js +5 -0
- package/SVF-doxygen/html/html/search/variables_14.js +3 -1
- package/SVF-doxygen/html/html/search/variables_17.js +1 -1
- package/SVF-doxygen/html/html/search/variables_3.js +2 -0
- package/SVF-doxygen/html/html/search/variables_5.js +3 -1
- package/SVF-doxygen/html/html/search/variables_6.js +3 -0
- package/SVF-doxygen/html/html/search/variables_7.js +5 -1
- package/SVF-doxygen/html/html/search/variables_9.js +1 -0
- package/SVF-doxygen/html/html/search/variables_c.js +1 -0
- package/SVF-doxygen/html/html/search/variables_d.js +1 -1
- package/SVF-doxygen/html/html/search/variables_e.js +2 -0
- package/SVF-doxygen/html/html/st_8c.html +4 -4
- package/SVF-doxygen/html/html/st_8c_source.html +2 -2
- package/SVF-doxygen/html/html/st_8h.html +4 -4
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01CFLGraph_01_5_01_4-members.html +87 -0
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01CFLGraph_01_5_01_4.html +381 -0
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01CFLGraph_01_5_01_4.png +0 -0
- package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01Inverse_3_01SVF_1_1CFLNode_01_5_01_4_01_4.html +100 -0
- package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01Inverse_3_01SVF_1_1CFLNode_01_5_01_4_01_4.png +0 -0
- package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01SVF_1_1CFLGraph_01_5_01_4-members.html +81 -0
- package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01SVF_1_1CFLGraph_01_5_01_4.html +122 -0
- package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01SVF_1_1CFLGraph_01_5_01_4.png +0 -0
- package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01SVF_1_1CFLNode_01_5_01_4.html +96 -0
- package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01SVF_1_1CFLNode_01_5_01_4.png +0 -0
- package/SVF-doxygen/html/html/svf-ex_8cpp.html +10 -54
- package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +8 -9
- package/SVF-doxygen/html/html/tools_2CFL_2CMakeLists_8txt.html +102 -0
- package/SVF-doxygen/html/html/wpa_8cpp.html +2 -46
- package/SVF-doxygen/html/html/wpa_8cpp_source.html +3 -4
- package/include/CFL/CFGNormalizer.h +70 -0
- package/include/CFL/CFLAlias.h +124 -0
- package/include/CFL/CFLGrammar.h +127 -0
- package/include/CFL/CFLSolver.h +94 -0
- package/include/CFL/GrammarBuilder.h +65 -0
- package/include/Graphs/CFLGraph.h +175 -0
- package/include/Graphs/IRGraph.h +1 -1
- package/include/MemoryModel/PointerAnalysis.h +3 -3
- package/include/SABER/SrcSnkDDA.h +3 -2
- package/include/Util/GraphReachSolver.h +186 -0
- package/include/Util/Options.h +6 -0
- package/lib/CFL/CFGNormalizer.cpp +329 -0
- package/lib/CFL/CFLGrammar.cpp +101 -0
- package/lib/CFL/CFLSolver.cpp +106 -0
- package/lib/CFL/GrammarBuilder.cpp +155 -0
- package/lib/CMakeLists.txt +1 -0
- package/lib/Graphs/CFLGraph.cpp +225 -0
- package/lib/Util/Options.cpp +31 -0
- package/package.json +1 -1
- package/tools/CFL/CMakeLists.txt +12 -0
- package/tools/CFL/cfl.cpp +80 -0
- package/tools/CMakeLists.txt +1 -0
- package/tools/DDA/dda.cpp +0 -3
- package/tools/Example/svf-ex.cpp +0 -3
- package/tools/MTA/mta.cpp +0 -4
- package/tools/SABER/saber.cpp +0 -3
- package/tools/WPA/wpa.cpp +0 -4
|
@@ -5631,8 +5631,9 @@ ref count error at node </li>
|
|
|
5631
5631
|
<p>SeeAlso [Cudd_Increasing] </p>
|
|
5632
5632
|
|
|
5633
5633
|
<p class="definition">Definition at line <a class="el" href="cuddInt_8c_source.html#l16691">16691</a> of file <a class="el" href="cuddInt_8c_source.html">cuddInt.c</a>.</p>
|
|
5634
|
-
<div class="fragment"><div class="line"><a name="l16695"></a><span class="lineno">16695</span>  {</div><div class="line"><a name="l16696"></a><span class="lineno">16696</span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> topf, level;</div><div class="line"><a name="l16697"></a><span class="lineno">16697</span>  <a class="code" href="structDdNode.html">DdNode</a> *F, *fv, *fvn, *res;</div><div class="line"><a name="l16698"></a><span class="lineno">16698</span>  <a class="code" href="cudd_8h.html#af55488f14ee0664be0dee3f2004f5fd6">DD_CTFP</a> cacheOp;</div><div class="line"><a name="l16699"></a><span class="lineno">16699</span> </div><div class="line"><a name="l16700"></a><span class="lineno">16700</span>  <a class="code" href="cuddInt_8h.html#a94289b59164b0be08fdb041e6f847fd4">statLine</a>(dd);</div><div class="line"><a name="l16701"></a><span class="lineno">16701</span> <span class="preprocessor">#ifdef DD_DEBUG</span></div><div class="line"><a name="l16702"></a><span class="lineno">16702</span>  <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(0 <= i && i < dd->size);</div><div class="line"><a name="l16703"></a><span class="lineno">16703</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l16704"></a><span class="lineno">16704</span> </div><div class="line"><a name="l16705"></a><span class="lineno">16705</span>  F = <a class="code" href="cudd_8h.html#afbbecf4f6f78f92518f4d0a477d870b6">Cudd_Regular</a>(f);</div><div class="line"><a name="l16706"></a><span class="lineno">16706</span>  topf = <a class="code" href="cuddInt_8h.html#aa7299d1217a57571ef88e9ac90530978">cuddI</a>(dd,F-><a class="code" href="structDdNode.html#abbd39b25b9abe4b4d53cd267a4103bda">index</a>);</div><div class="line"><a name="l16707"></a><span class="lineno">16707</span> </div><div class="line"><a name="l16708"></a><span class="lineno">16708</span>  <span class="comment">/* Check terminal case. If topf > i, f does not depend on var.</span></div><div class="line"><a name="l16709"></a><span class="lineno">16709</span> <span class="comment"> ** Therefore, f is unate in i.</span></div><div class="line"><a name="l16710"></a><span class="lineno">16710</span> <span class="comment"> */</span></div><div class="line"><a name="l16711"></a><span class="lineno">16711</span>  level = (unsigned) dd-><a class="code" href="structDdManager.html#a299d281a98c60aeec0e8edf6671a0f51">perm</a>[i];</div><div class="line"><a name="l16712"></a><span class="lineno">16712</span>  <a class="code" href="
|
|
5634
|
+
<div class="fragment"><div class="line"><a name="l16695"></a><span class="lineno">16695</span>  {</div><div class="line"><a name="l16696"></a><span class="lineno">16696</span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> topf, level;</div><div class="line"><a name="l16697"></a><span class="lineno">16697</span>  <a class="code" href="structDdNode.html">DdNode</a> *F, *fv, *fvn, *res;</div><div class="line"><a name="l16698"></a><span class="lineno">16698</span>  <a class="code" href="cudd_8h.html#af55488f14ee0664be0dee3f2004f5fd6">DD_CTFP</a> cacheOp;</div><div class="line"><a name="l16699"></a><span class="lineno">16699</span> </div><div class="line"><a name="l16700"></a><span class="lineno">16700</span>  <a class="code" href="cuddInt_8h.html#a94289b59164b0be08fdb041e6f847fd4">statLine</a>(dd);</div><div class="line"><a name="l16701"></a><span class="lineno">16701</span> <span class="preprocessor">#ifdef DD_DEBUG</span></div><div class="line"><a name="l16702"></a><span class="lineno">16702</span>  <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(0 <= i && i < dd->size);</div><div class="line"><a name="l16703"></a><span class="lineno">16703</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l16704"></a><span class="lineno">16704</span> </div><div class="line"><a name="l16705"></a><span class="lineno">16705</span>  F = <a class="code" href="cudd_8h.html#afbbecf4f6f78f92518f4d0a477d870b6">Cudd_Regular</a>(f);</div><div class="line"><a name="l16706"></a><span class="lineno">16706</span>  topf = <a class="code" href="cuddInt_8h.html#aa7299d1217a57571ef88e9ac90530978">cuddI</a>(dd,F-><a class="code" href="structDdNode.html#abbd39b25b9abe4b4d53cd267a4103bda">index</a>);</div><div class="line"><a name="l16707"></a><span class="lineno">16707</span> </div><div class="line"><a name="l16708"></a><span class="lineno">16708</span>  <span class="comment">/* Check terminal case. If topf > i, f does not depend on var.</span></div><div class="line"><a name="l16709"></a><span class="lineno">16709</span> <span class="comment"> ** Therefore, f is unate in i.</span></div><div class="line"><a name="l16710"></a><span class="lineno">16710</span> <span class="comment"> */</span></div><div class="line"><a name="l16711"></a><span class="lineno">16711</span>  level = (unsigned) dd-><a class="code" href="structDdManager.html#a299d281a98c60aeec0e8edf6671a0f51">perm</a>[i];</div><div class="line"><a name="l16712"></a><span class="lineno">16712</span>  <a class="code" href="tools_2CFL_2CMakeLists_8txt.html#aff8b1edecee3d7c397afcfe02e05d0c7">if</a> (topf > level) {</div><div class="line"><a name="l16713"></a><span class="lineno">16713</span>  <span class="keywordflow">return</span>(<a class="code" href="cuddInt_8h.html#a0fc86b7b0c157b7fa3738661d65a22d7">DD_ONE</a>(dd));</div><div class="line"><a name="l16714"></a><span class="lineno">16714</span>  }</div><div class="line"><a name="l16715"></a><span class="lineno">16715</span> </div><div class="line"><a name="l16716"></a><span class="lineno">16716</span>  <span class="comment">/* From now on, f is not constant. */</span></div><div class="line"><a name="l16717"></a><span class="lineno">16717</span> </div><div class="line"><a name="l16718"></a><span class="lineno">16718</span>  <span class="comment">/* Check cache. */</span></div><div class="line"><a name="l16719"></a><span class="lineno">16719</span>  cacheOp = (<a class="code" href="cudd_8h.html#af55488f14ee0664be0dee3f2004f5fd6">DD_CTFP</a>) <a class="code" href="cuddInt_8c.html#a66a70b011fca8b95fbc3953e8b1be1fe">Cudd_Decreasing</a>;</div><div class="line"><a name="l16720"></a><span class="lineno">16720</span>  res = <a class="code" href="cuddInt_8c.html#ab4f89447f0f0892337a1d6ff4c533933">cuddCacheLookup2</a>(dd,cacheOp,f,dd-><a class="code" href="structDdManager.html#a70f75f877a9e8f1b7a1c219cd4675ce1">vars</a>[i]);</div><div class="line"><a name="l16721"></a><span class="lineno">16721</span>  <span class="keywordflow">if</span> (res != NULL) {</div><div class="line"><a name="l16722"></a><span class="lineno">16722</span>  <span class="keywordflow">return</span>(res);</div><div class="line"><a name="l16723"></a><span class="lineno">16723</span>  }</div><div class="line"><a name="l16724"></a><span class="lineno">16724</span> </div><div class="line"><a name="l16725"></a><span class="lineno">16725</span>  <span class="comment">/* Compute cofactors. */</span></div><div class="line"><a name="l16726"></a><span class="lineno">16726</span>  fv = <a class="code" href="cuddInt_8h.html#a09834c697b92ac296b1e50c863f88262">cuddT</a>(F); fvn = <a class="code" href="cuddInt_8h.html#aaef03f10591d8e28bb5fecd2aa7c93ff">cuddE</a>(F);</div><div class="line"><a name="l16727"></a><span class="lineno">16727</span>  <span class="keywordflow">if</span> (F != f) {</div><div class="line"><a name="l16728"></a><span class="lineno">16728</span>  fv = <a class="code" href="cudd_8h.html#a352ef8d39e760eaabae6d58d9a5ddbfc">Cudd_Not</a>(fv);</div><div class="line"><a name="l16729"></a><span class="lineno">16729</span>  fvn = <a class="code" href="cudd_8h.html#a352ef8d39e760eaabae6d58d9a5ddbfc">Cudd_Not</a>(fvn);</div><div class="line"><a name="l16730"></a><span class="lineno">16730</span>  }</div><div class="line"><a name="l16731"></a><span class="lineno">16731</span> </div><div class="line"><a name="l16732"></a><span class="lineno">16732</span>  <span class="keywordflow">if</span> (topf == (<span class="keywordtype">unsigned</span>) level) {</div><div class="line"><a name="l16733"></a><span class="lineno">16733</span>  <span class="comment">/* Special case: if fv is regular, fv(1,...,1) = 1;</span></div><div class="line"><a name="l16734"></a><span class="lineno">16734</span> <span class="comment"> ** If in addition fvn is complemented, fvn(1,...,1) = 0.</span></div><div class="line"><a name="l16735"></a><span class="lineno">16735</span> <span class="comment"> ** But then f(1,1,...,1) > f(0,1,...,1). Hence f is not</span></div><div class="line"><a name="l16736"></a><span class="lineno">16736</span> <span class="comment"> ** monotonic decreasing in i.</span></div><div class="line"><a name="l16737"></a><span class="lineno">16737</span> <span class="comment"> */</span></div><div class="line"><a name="l16738"></a><span class="lineno">16738</span>  <span class="keywordflow">if</span> (!<a class="code" href="cudd_8h.html#a35322518c24f65f44eda9623083cb62c">Cudd_IsComplement</a>(fv) && <a class="code" href="cudd_8h.html#a35322518c24f65f44eda9623083cb62c">Cudd_IsComplement</a>(fvn)) {</div><div class="line"><a name="l16739"></a><span class="lineno">16739</span>  <span class="keywordflow">return</span>(<a class="code" href="cudd_8h.html#a352ef8d39e760eaabae6d58d9a5ddbfc">Cudd_Not</a>(<a class="code" href="cuddInt_8h.html#a0fc86b7b0c157b7fa3738661d65a22d7">DD_ONE</a>(dd)));</div><div class="line"><a name="l16740"></a><span class="lineno">16740</span>  }</div><div class="line"><a name="l16741"></a><span class="lineno">16741</span>  res = <a class="code" href="cuddInt_8c.html#a89a46089e8572876a1521cdee6cb31a2">Cudd_bddLeq</a>(dd,fv,fvn) ? <a class="code" href="cuddInt_8h.html#a0fc86b7b0c157b7fa3738661d65a22d7">DD_ONE</a>(dd) : <a class="code" href="cudd_8h.html#a352ef8d39e760eaabae6d58d9a5ddbfc">Cudd_Not</a>(<a class="code" href="cuddInt_8h.html#a0fc86b7b0c157b7fa3738661d65a22d7">DD_ONE</a>(dd));</div><div class="line"><a name="l16742"></a><span class="lineno">16742</span>  } <span class="keywordflow">else</span> {</div><div class="line"><a name="l16743"></a><span class="lineno">16743</span>  res = <a class="code" href="cuddInt_8c.html#a66a70b011fca8b95fbc3953e8b1be1fe">Cudd_Decreasing</a>(dd,fv,i);</div><div class="line"><a name="l16744"></a><span class="lineno">16744</span>  <span class="keywordflow">if</span> (res == <a class="code" href="cuddInt_8h.html#a0fc86b7b0c157b7fa3738661d65a22d7">DD_ONE</a>(dd)) {</div><div class="line"><a name="l16745"></a><span class="lineno">16745</span>  res = <a class="code" href="cuddInt_8c.html#a66a70b011fca8b95fbc3953e8b1be1fe">Cudd_Decreasing</a>(dd,fvn,i);</div><div class="line"><a name="l16746"></a><span class="lineno">16746</span>  }</div><div class="line"><a name="l16747"></a><span class="lineno">16747</span>  }</div><div class="line"><a name="l16748"></a><span class="lineno">16748</span> </div><div class="line"><a name="l16749"></a><span class="lineno">16749</span>  <a class="code" href="cuddInt_8c.html#acf6d1175a8da1a1613910bac913fee58">cuddCacheInsert2</a>(dd,cacheOp,f,dd-><a class="code" href="structDdManager.html#a70f75f877a9e8f1b7a1c219cd4675ce1">vars</a>[i],res);</div><div class="line"><a name="l16750"></a><span class="lineno">16750</span>  <span class="keywordflow">return</span>(res);</div><div class="line"><a name="l16751"></a><span class="lineno">16751</span> </div><div class="line"><a name="l16752"></a><span class="lineno">16752</span>  } <span class="comment">/* end of Cudd_Decreasing */</span></div><div class="ttc" id="structDdNode_html"><div class="ttname"><a href="structDdNode.html">DdNode</a></div><div class="ttdef"><b>Definition:</b> <a href="cudd_8h_source.html#l00264">cudd.h:264</a></div></div>
|
|
5635
5635
|
<div class="ttc" id="cudd_8h_html_a352ef8d39e760eaabae6d58d9a5ddbfc"><div class="ttname"><a href="cudd_8h.html#a352ef8d39e760eaabae6d58d9a5ddbfc">Cudd_Not</a></div><div class="ttdeci">#define Cudd_Not(node)</div><div class="ttdef"><b>Definition:</b> <a href="cudd_8h_source.html#l00343">cudd.h:343</a></div></div>
|
|
5636
|
+
<div class="ttc" id="tools_2CFL_2CMakeLists_8txt_html_aff8b1edecee3d7c397afcfe02e05d0c7"><div class="ttname"><a href="tools_2CFL_2CMakeLists_8txt.html#aff8b1edecee3d7c397afcfe02e05d0c7">if</a></div><div class="ttdeci">if(DEFINED IN_SOURCE_BUILD) set(LLVM_LINK_COMPONENTS BitWriter Core IPO IrReader InstCombine Instrumentation Target Linker Analysis ScalarOpts Support Svf Cudd) add_llvm_tool(cfl cfl.cpp) else() add_executable(cfl cfl.cpp) target_link_libraries(cfl Svf Cudd $</div><div class="ttdef"><b>Definition:</b> <a href="tools_2CFL_2CMakeLists_8txt_source.html#l00002">CMakeLists.txt:2</a></div></div>
|
|
5636
5637
|
<div class="ttc" id="util_8h_html_a07d17d6d5d1074c0969bc5d3c3d1d84a"><div class="ttname"><a href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a></div><div class="ttdeci">#define assert(ex)</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00141">util.h:141</a></div></div>
|
|
5637
5638
|
<div class="ttc" id="cudd_8h_html_afbbecf4f6f78f92518f4d0a477d870b6"><div class="ttname"><a href="cudd_8h.html#afbbecf4f6f78f92518f4d0a477d870b6">Cudd_Regular</a></div><div class="ttdeci">#define Cudd_Regular(node)</div><div class="ttdef"><b>Definition:</b> <a href="cudd_8h_source.html#l00373">cudd.h:373</a></div></div>
|
|
5638
5639
|
<div class="ttc" id="cuddInt_8h_html_a94289b59164b0be08fdb041e6f847fd4"><div class="ttname"><a href="cuddInt_8h.html#a94289b59164b0be08fdb041e6f847fd4">statLine</a></div><div class="ttdeci">#define statLine(dd)</div><div class="ttdef"><b>Definition:</b> <a href="cuddInt_8h_source.html#l00990">cuddInt.h:990</a></div></div>
|
|
@@ -5649,7 +5650,6 @@ ref count error at node </li>
|
|
|
5649
5650
|
<div class="ttc" id="cuddInt_8h_html_a0fc86b7b0c157b7fa3738661d65a22d7"><div class="ttname"><a href="cuddInt_8h.html#a0fc86b7b0c157b7fa3738661d65a22d7">DD_ONE</a></div><div class="ttdeci">#define DD_ONE(dd)</div><div class="ttdef"><b>Definition:</b> <a href="cuddInt_8h_source.html#l00864">cuddInt.h:864</a></div></div>
|
|
5650
5651
|
<div class="ttc" id="structDdManager_html_a299d281a98c60aeec0e8edf6671a0f51"><div class="ttname"><a href="structDdManager.html#a299d281a98c60aeec0e8edf6671a0f51">DdManager::perm</a></div><div class="ttdeci">int * perm</div><div class="ttdef"><b>Definition:</b> <a href="cuddInt_8h_source.html#l00369">cuddInt.h:369</a></div></div>
|
|
5651
5652
|
<div class="ttc" id="cuddInt_8c_html_acf6d1175a8da1a1613910bac913fee58"><div class="ttname"><a href="cuddInt_8c.html#acf6d1175a8da1a1613910bac913fee58">cuddCacheInsert2</a></div><div class="ttdeci">void cuddCacheInsert2(DdManager *table, DD_CTFP op, DdNode *f, DdNode *g, DdNode *data)</div><div class="ttdef"><b>Definition:</b> <a href="cuddInt_8c_source.html#l04329">cuddInt.c:4329</a></div></div>
|
|
5652
|
-
<div class="ttc" id="tools_2DDA_2CMakeLists_8txt_html_a7686df215f6da6fdcfa2c20950c96939"><div class="ttname"><a href="tools_2DDA_2CMakeLists_8txt.html#a7686df215f6da6fdcfa2c20950c96939">if</a></div><div class="ttdeci">if(DEFINED IN_SOURCE_BUILD) set(LLVM_LINK_COMPONENTS BitWriter Core IPO IrReader InstCombine Instrumentation Target Linker Analysis ScalarOpts Support Svf Cudd) add_llvm_tool(dvf dda.cpp) else() add_executable(dvf dda.cpp) target_link_libraries(dvf Svf Cudd $</div><div class="ttdef"><b>Definition:</b> <a href="tools_2DDA_2CMakeLists_8txt_source.html#l00002">CMakeLists.txt:2</a></div></div>
|
|
5653
5653
|
</div><!-- fragment -->
|
|
5654
5654
|
</div>
|
|
5655
5655
|
</div>
|
|
@@ -7007,12 +7007,13 @@ Dynamic Programming (exact) </li>
|
|
|
7007
7007
|
<p>SideEffects [Changes the variable order for all diagrams and clears the cache.] </p>
|
|
7008
7008
|
|
|
7009
7009
|
<p class="definition">Definition at line <a class="el" href="cuddInt_8c_source.html#l14558">14558</a> of file <a class="el" href="cuddInt_8c_source.html">cuddInt.c</a>.</p>
|
|
7010
|
-
<div class="fragment"><div class="line"><a name="l14562"></a><span class="lineno">14562</span> {</div><div class="line"><a name="l14563"></a><span class="lineno">14563</span>  <a class="code" href="structDdHook.html">DdHook</a> *hook;</div><div class="line"><a name="l14564"></a><span class="lineno">14564</span>  <span class="keywordtype">int</span> <a class="code" href="cuddInt_8c.html#a8b2e13c78efca330f06b6ddcd7464b41">result</a>;</div><div class="line"><a name="l14565"></a><span class="lineno">14565</span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> nextDyn;</div><div class="line"><a name="l14566"></a><span class="lineno">14566</span> <span class="preprocessor">#ifdef DD_STATS</span></div><div class="line"><a name="l14567"></a><span class="lineno">14567</span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> initialSize;</div><div class="line"><a name="l14568"></a><span class="lineno">14568</span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> finalSize;</div><div class="line"><a name="l14569"></a><span class="lineno">14569</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l14570"></a><span class="lineno">14570</span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> localTime;</div><div class="line"><a name="l14571"></a><span class="lineno">14571</span> </div><div class="line"><a name="l14572"></a><span class="lineno">14572</span>  <span class="comment">/* Don't reorder if there are too many dead nodes. */</span></div><div class="line"><a name="l14573"></a><span class="lineno">14573</span>  <span class="keywordflow">if</span> (table-><a class="code" href="structDdManager.html#afaedd101dfa7b7e2cb11614647ec37b2">keys</a> - table-><a class="code" href="structDdManager.html#a170c1cfcbbd9b83bb479fc85c177c52e">dead</a> < (<span class="keywordtype">unsigned</span>) minsize)</div><div class="line"><a name="l14574"></a><span class="lineno">14574</span>  <span class="keywordflow">return</span>(1);</div><div class="line"><a name="l14575"></a><span class="lineno">14575</span> </div><div class="line"><a name="l14576"></a><span class="lineno">14576</span>  <span class="keywordflow">if</span> (heuristic == <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea3c2554eb182fa3c6440fa5e3f72dddd5">CUDD_REORDER_SAME</a>) {</div><div class="line"><a name="l14577"></a><span class="lineno">14577</span>  heuristic = table-><a class="code" href="structDdManager.html#a20124711be407362dbe378648906ef89">autoMethod</a>;</div><div class="line"><a name="l14578"></a><span class="lineno">14578</span>  }</div><div class="line"><a name="l14579"></a><span class="lineno">14579</span>  <span class="keywordflow">if</span> (heuristic == <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddeabb43fb9caec196a5f3333de31c16b475">CUDD_REORDER_NONE</a>) {</div><div class="line"><a name="l14580"></a><span class="lineno">14580</span>  <span class="keywordflow">return</span>(1);</div><div class="line"><a name="l14581"></a><span class="lineno">14581</span>  }</div><div class="line"><a name="l14582"></a><span class="lineno">14582</span> </div><div class="line"><a name="l14583"></a><span class="lineno">14583</span>  <span class="comment">/* This call to Cudd_ReduceHeap does initiate reordering. Therefore</span></div><div class="line"><a name="l14584"></a><span class="lineno">14584</span> <span class="comment"> ** we count it.</span></div><div class="line"><a name="l14585"></a><span class="lineno">14585</span> <span class="comment"> */</span></div><div class="line"><a name="l14586"></a><span class="lineno">14586</span>  table-><a class="code" href="structDdManager.html#a78f3a2f3e04757968e4ed484da5f441f">reorderings</a>++;</div><div class="line"><a name="l14587"></a><span class="lineno">14587</span> </div><div class="line"><a name="l14588"></a><span class="lineno">14588</span>  localTime = <a class="code" href="util_8h.html#aafccfc19496a7104d4daf560555e84b0">util_cpu_time</a>();</div><div class="line"><a name="l14589"></a><span class="lineno">14589</span> </div><div class="line"><a name="l14590"></a><span class="lineno">14590</span>  <span class="comment">/* Run the hook functions. */</span></div><div class="line"><a name="l14591"></a><span class="lineno">14591</span>  hook = table-><a class="code" href="structDdManager.html#a227987a65d97bf4b8f3c905d6cc79024">preReorderingHook</a>;</div><div class="line"><a name="l14592"></a><span class="lineno">14592</span>  <span class="keywordflow">while</span> (hook != NULL) {</div><div class="line"><a name="l14593"></a><span class="lineno">14593</span>  <span class="keywordtype">int</span> res = (hook-><a class="code" href="structDdHook.html#a5b1bfe85ce0ac180fc160eb8c30094d7">f</a>)(table, <span class="stringliteral">"BDD"</span>, (<span class="keywordtype">void</span> *)heuristic);</div><div class="line"><a name="l14594"></a><span class="lineno">14594</span>  <span class="keywordflow">if</span> (res == 0) <span class="keywordflow">return</span>(0);</div><div class="line"><a name="l14595"></a><span class="lineno">14595</span>  hook = hook-><a class="code" href="structDdHook.html#af30b5d30fbe9fe96c61bf418c75f1038">next</a>;</div><div class="line"><a name="l14596"></a><span class="lineno">14596</span>  }</div><div class="line"><a name="l14597"></a><span class="lineno">14597</span> </div><div class="line"><a name="l14598"></a><span class="lineno">14598</span>  <span class="keywordflow">if</span> (!<a class="code" href="cuddInt_8c.html#af10d05b2d480c2083dc53009b68a5781">ddReorderPreprocess</a>(table)) <span class="keywordflow">return</span>(0);</div><div class="line"><a name="l14599"></a><span class="lineno">14599</span>  <a class="code" href="cuddInt_8c.html#a1860a312dbd8ab2ab829b1a3beed31d9">ddTotalNumberSwapping</a> = 0;</div><div class="line"><a name="l14600"></a><span class="lineno">14600</span> </div><div class="line"><a name="l14601"></a><span class="lineno">14601</span>  <span class="keywordflow">if</span> (table-><a class="code" href="structDdManager.html#afaedd101dfa7b7e2cb11614647ec37b2">keys</a> > table-><a class="code" href="structDdManager.html#a56b99ad9c23fcdc06fae90079b9690ce">peakLiveNodes</a>) {</div><div class="line"><a name="l14602"></a><span class="lineno">14602</span>  table-><a class="code" href="structDdManager.html#a56b99ad9c23fcdc06fae90079b9690ce">peakLiveNodes</a> = table-><a class="code" href="structDdManager.html#afaedd101dfa7b7e2cb11614647ec37b2">keys</a>;</div><div class="line"><a name="l14603"></a><span class="lineno">14603</span>  }</div><div class="line"><a name="l14604"></a><span class="lineno">14604</span> <span class="preprocessor">#ifdef DD_STATS</span></div><div class="line"><a name="l14605"></a><span class="lineno">14605</span>  initialSize = table-><a class="code" href="structDdManager.html#afaedd101dfa7b7e2cb11614647ec37b2">keys</a> - table-><a class="code" href="structDdManager.html#a0407971624e8cbb0510be72840e1788b">isolated</a>;</div><div class="line"><a name="l14606"></a><span class="lineno">14606</span>  ddTotalNISwaps = 0;</div><div class="line"><a name="l14607"></a><span class="lineno">14607</span> </div><div class="line"><a name="l14608"></a><span class="lineno">14608</span>  <span class="keywordflow">switch</span>(heuristic) {</div><div class="line"><a name="l14609"></a><span class="lineno">14609</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea8ffde9a0194df5e01bb3a0eaf2d5a489">CUDD_REORDER_RANDOM</a>:</div><div class="line"><a name="l14610"></a><span class="lineno">14610</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea45255db0c5134ca33ba807a372879368">CUDD_REORDER_RANDOM_PIVOT</a>:</div><div class="line"><a name="l14611"></a><span class="lineno">14611</span>  (void) fprintf(table-><a class="code" href="structDdManager.html#af318bea3248f8e99d7889f028be4ec8f">out</a>,<span class="stringliteral">"#:I_RANDOM "</span>);</div><div class="line"><a name="l14612"></a><span class="lineno">14612</span>  <span class="keywordflow">break</span>;</div><div class="line"><a name="l14613"></a><span class="lineno">14613</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddeaf512171f99e30a741b604602e077ae54">CUDD_REORDER_SIFT</a>:</div><div class="line"><a name="l14614"></a><span class="lineno">14614</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea2eb44e59cba9e1b55653941959eb5938">CUDD_REORDER_SIFT_CONVERGE</a>:</div><div class="line"><a name="l14615"></a><span class="lineno">14615</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea2b9444b7775bba12da0f39a584078e0c">CUDD_REORDER_SYMM_SIFT</a>:</div><div class="line"><a name="l14616"></a><span class="lineno">14616</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddeabc7a353b99f532efefdf9092016e0894">CUDD_REORDER_SYMM_SIFT_CONV</a>:</div><div class="line"><a name="l14617"></a><span class="lineno">14617</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea2f3a3020e2028bf957b4d2e6da34b748">CUDD_REORDER_GROUP_SIFT</a>:</div><div class="line"><a name="l14618"></a><span class="lineno">14618</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea021943df6809b36d89fa03d0bb63b9ef">CUDD_REORDER_GROUP_SIFT_CONV</a>:</div><div class="line"><a name="l14619"></a><span class="lineno">14619</span>  (void) fprintf(table-><a class="code" href="structDdManager.html#af318bea3248f8e99d7889f028be4ec8f">out</a>,<span class="stringliteral">"#:I_SIFTING "</span>);</div><div class="line"><a name="l14620"></a><span class="lineno">14620</span>  <span class="keywordflow">break</span>;</div><div class="line"><a name="l14621"></a><span class="lineno">14621</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea1200f7bc9ce4e409d0bc1750518b97fe">CUDD_REORDER_WINDOW2</a>:</div><div class="line"><a name="l14622"></a><span class="lineno">14622</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddeae53a5c1dfdd719ff377d4f900de4c0cf">CUDD_REORDER_WINDOW3</a>:</div><div class="line"><a name="l14623"></a><span class="lineno">14623</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea69dac82abf4db2bbf5820fa9638bdc4a">CUDD_REORDER_WINDOW4</a>:</div><div class="line"><a name="l14624"></a><span class="lineno">14624</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea8c7e70e4c81dbc35286b7a00685f5a19">CUDD_REORDER_WINDOW2_CONV</a>:</div><div class="line"><a name="l14625"></a><span class="lineno">14625</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddeaf7eb9f8bb0bd33ae78ecb6fb3094c3f9">CUDD_REORDER_WINDOW3_CONV</a>:</div><div class="line"><a name="l14626"></a><span class="lineno">14626</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddeac949aef80601550a561adaf440aca438">CUDD_REORDER_WINDOW4_CONV</a>:</div><div class="line"><a name="l14627"></a><span class="lineno">14627</span>  (void) fprintf(table-><a class="code" href="structDdManager.html#af318bea3248f8e99d7889f028be4ec8f">out</a>,<span class="stringliteral">"#:I_WINDOW "</span>);</div><div class="line"><a name="l14628"></a><span class="lineno">14628</span>  <span class="keywordflow">break</span>;</div><div class="line"><a name="l14629"></a><span class="lineno">14629</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea86b75dbbbe111b8b098b079fcae00bb8">CUDD_REORDER_ANNEALING</a>:</div><div class="line"><a name="l14630"></a><span class="lineno">14630</span>  (void) fprintf(table-><a class="code" href="structDdManager.html#af318bea3248f8e99d7889f028be4ec8f">out</a>,<span class="stringliteral">"#:I_ANNEAL "</span>);</div><div class="line"><a name="l14631"></a><span class="lineno">14631</span>  <span class="keywordflow">break</span>;</div><div class="line"><a name="l14632"></a><span class="lineno">14632</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea5f8da0a69c6e0a45f5aabf29c0f62b80">CUDD_REORDER_GENETIC</a>:</div><div class="line"><a name="l14633"></a><span class="lineno">14633</span>  (void) fprintf(table-><a class="code" href="structDdManager.html#af318bea3248f8e99d7889f028be4ec8f">out</a>,<span class="stringliteral">"#:I_GENETIC "</span>);</div><div class="line"><a name="l14634"></a><span class="lineno">14634</span>  <span class="keywordflow">break</span>;</div><div class="line"><a name="l14635"></a><span class="lineno">14635</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddeacb683aa1b0f0447e6bc3e233a27bc09a">CUDD_REORDER_LINEAR</a>:</div><div class="line"><a name="l14636"></a><span class="lineno">14636</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea5fe4925131a190c26d615676991cbc87">CUDD_REORDER_LINEAR_CONVERGE</a>:</div><div class="line"><a name="l14637"></a><span class="lineno">14637</span>  (void) fprintf(table-><a class="code" href="structDdManager.html#af318bea3248f8e99d7889f028be4ec8f">out</a>,<span class="stringliteral">"#:I_LINSIFT "</span>);</div><div class="line"><a name="l14638"></a><span class="lineno">14638</span>  <span class="keywordflow">break</span>;</div><div class="line"><a name="l14639"></a><span class="lineno">14639</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea18cd94b42260d7f89b98887317383c96">CUDD_REORDER_EXACT</a>:</div><div class="line"><a name="l14640"></a><span class="lineno">14640</span>  (void) fprintf(table-><a class="code" href="structDdManager.html#af318bea3248f8e99d7889f028be4ec8f">out</a>,<span class="stringliteral">"#:I_EXACT "</span>);</div><div class="line"><a name="l14641"></a><span class="lineno">14641</span>  <span class="keywordflow">break</span>;</div><div class="line"><a name="l14642"></a><span class="lineno">14642</span>  <span class="keywordflow">default</span>:</div><div class="line"><a name="l14643"></a><span class="lineno">14643</span>  <span class="keywordflow">return</span>(0);</div><div class="line"><a name="l14644"></a><span class="lineno">14644</span>  }</div><div class="line"><a name="l14645"></a><span class="lineno">14645</span>  (void) fprintf(table-><a class="code" href="structDdManager.html#af318bea3248f8e99d7889f028be4ec8f">out</a>,<span class="stringliteral">"%8d: initial size"</span>,initialSize);</div><div class="line"><a name="l14646"></a><span class="lineno">14646</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l14647"></a><span class="lineno">14647</span> </div><div class="line"><a name="l14648"></a><span class="lineno">14648</span>  <span class="comment">/* See if we should use alternate threshold for maximum growth. */</span></div><div class="line"><a name="l14649"></a><span class="lineno">14649</span>  <span class="keywordflow">if</span> (table-><a class="code" href="structDdManager.html#aab2156c5c7271dc0aecf7ffc18e68e5f">reordCycle</a> && table-><a class="code" href="structDdManager.html#a78f3a2f3e04757968e4ed484da5f441f">reorderings</a> % table-><a class="code" href="structDdManager.html#aab2156c5c7271dc0aecf7ffc18e68e5f">reordCycle</a> == 0) {</div><div class="line"><a name="l14650"></a><span class="lineno">14650</span>  <span class="keywordtype">double</span> saveGrowth = table-><a class="code" href="structDdManager.html#a8a6a4238d1bc8a87eabd2c3eabd233d7">maxGrowth</a>;</div><div class="line"><a name="l14651"></a><span class="lineno">14651</span>  table-><a class="code" href="structDdManager.html#a8a6a4238d1bc8a87eabd2c3eabd233d7">maxGrowth</a> = table-><a class="code" href="structDdManager.html#a2926e48e488cec20a61e9b0dc6b91795">maxGrowthAlt</a>;</div><div class="line"><a name="l14652"></a><span class="lineno">14652</span>  result = <a class="code" href="cuddInt_8c.html#a66ff5219b538de2d580f832a4ddfc362">cuddTreeSifting</a>(table,heuristic);</div><div class="line"><a name="l14653"></a><span class="lineno">14653</span>  table-><a class="code" href="structDdManager.html#a8a6a4238d1bc8a87eabd2c3eabd233d7">maxGrowth</a> = saveGrowth;</div><div class="line"><a name="l14654"></a><span class="lineno">14654</span>  } <span class="keywordflow">else</span> {</div><div class="line"><a name="l14655"></a><span class="lineno">14655</span>  result = <a class="code" href="cuddInt_8c.html#a66ff5219b538de2d580f832a4ddfc362">cuddTreeSifting</a>(table,heuristic);</div><div class="line"><a name="l14656"></a><span class="lineno">14656</span>  }</div><div class="line"><a name="l14657"></a><span class="lineno">14657</span> </div><div class="line"><a name="l14658"></a><span class="lineno">14658</span> <span class="preprocessor">#ifdef DD_STATS</span></div><div class="line"><a name="l14659"></a><span class="lineno">14659</span>  (void) fprintf(table-><a class="code" href="structDdManager.html#af318bea3248f8e99d7889f028be4ec8f">out</a>,<span class="stringliteral">"\n"</span>);</div><div class="line"><a name="l14660"></a><span class="lineno">14660</span>  finalSize = table-><a class="code" href="structDdManager.html#afaedd101dfa7b7e2cb11614647ec37b2">keys</a> - table-><a class="code" href="structDdManager.html#a0407971624e8cbb0510be72840e1788b">isolated</a>;</div><div class="line"><a name="l14661"></a><span class="lineno">14661</span>  (void) fprintf(table-><a class="code" href="structDdManager.html#af318bea3248f8e99d7889f028be4ec8f">out</a>,<span class="stringliteral">"#:F_REORDER %8d: final size\n"</span>,finalSize);</div><div class="line"><a name="l14662"></a><span class="lineno">14662</span>  (void) fprintf(table-><a class="code" href="structDdManager.html#af318bea3248f8e99d7889f028be4ec8f">out</a>,<span class="stringliteral">"#:T_REORDER %8g: total time (sec)\n"</span>,</div><div class="line"><a name="l14663"></a><span class="lineno">14663</span>  ((<span class="keywordtype">double</span>)(<a class="code" href="util_8h.html#aafccfc19496a7104d4daf560555e84b0">util_cpu_time</a>() - localTime)/1000.0));</div><div class="line"><a name="l14664"></a><span class="lineno">14664</span>  (void) fprintf(table-><a class="code" href="structDdManager.html#af318bea3248f8e99d7889f028be4ec8f">out</a>,<span class="stringliteral">"#:N_REORDER %8d: total swaps\n"</span>,</div><div class="line"><a name="l14665"></a><span class="lineno">14665</span>  <a class="code" href="cuddInt_8c.html#a1860a312dbd8ab2ab829b1a3beed31d9">ddTotalNumberSwapping</a>);</div><div class="line"><a name="l14666"></a><span class="lineno">14666</span>  (void) fprintf(table-><a class="code" href="structDdManager.html#af318bea3248f8e99d7889f028be4ec8f">out</a>,<span class="stringliteral">"#:M_REORDER %8d: NI swaps\n"</span>,ddTotalNISwaps);</div><div class="line"><a name="l14667"></a><span class="lineno">14667</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l14668"></a><span class="lineno">14668</span> </div><div class="line"><a name="l14669"></a><span class="lineno">14669</span>  <span class="keywordflow">if</span> (result == 0)</div><div class="line"><a name="l14670"></a><span class="lineno">14670</span>  <span class="keywordflow">return</span>(0);</div><div class="line"><a name="l14671"></a><span class="lineno">14671</span> </div><div class="line"><a name="l14672"></a><span class="lineno">14672</span>  <span class="keywordflow">if</span> (!<a class="code" href="cuddInt_8c.html#acb38f795d39e6eeb71d62d9ce62278f6">ddReorderPostprocess</a>(table))</div><div class="line"><a name="l14673"></a><span class="lineno">14673</span>  <span class="keywordflow">return</span>(0);</div><div class="line"><a name="l14674"></a><span class="lineno">14674</span> </div><div class="line"><a name="l14675"></a><span class="lineno">14675</span>  <span class="keywordflow">if</span> (table-><a class="code" href="structDdManager.html#ab50e58f446cce13dd36cf63230e2d836">realign</a>) {</div><div class="line"><a name="l14676"></a><span class="lineno">14676</span>  <span class="keywordflow">if</span> (!<a class="code" href="cuddInt_8c.html#ae994abd80d7d5b41c74a3a6016f52815">cuddZddAlignToBdd</a>(table))</div><div class="line"><a name="l14677"></a><span class="lineno">14677</span>  <span class="keywordflow">return</span>(0);</div><div class="line"><a name="l14678"></a><span class="lineno">14678</span>  }</div><div class="line"><a name="l14679"></a><span class="lineno">14679</span> </div><div class="line"><a name="l14680"></a><span class="lineno">14680</span>  nextDyn = (table-><a class="code" href="structDdManager.html#afaedd101dfa7b7e2cb11614647ec37b2">keys</a> - table-><a class="code" href="structDdManager.html#aa8d293b6a4f69f6b4795e2fc24ede216">constants</a>.<a class="code" href="structDdSubtable.html#aca2eea345c00c69090e701ffacff7de4">keys</a> + 1) *</div><div class="line"><a name="l14681"></a><span class="lineno">14681</span>  <a class="code" href="cuddInt_8h.html#ae2a9d0ccd78a4c81e643ef54c2f51d53">DD_DYN_RATIO</a> + table-><a class="code" href="structDdManager.html#aa8d293b6a4f69f6b4795e2fc24ede216">constants</a>.<a class="code" href="structDdSubtable.html#aca2eea345c00c69090e701ffacff7de4">keys</a>;</div><div class="line"><a name="l14682"></a><span class="lineno">14682</span>  <a class="code" href="tools_2DDA_2CMakeLists_8txt.html#a7686df215f6da6fdcfa2c20950c96939">if</a> (table-><a class="code" href="structDdManager.html#a78f3a2f3e04757968e4ed484da5f441f">reorderings</a> < 20 || nextDyn > table-><a class="code" href="structDdManager.html#a832f5099477ac37dbce551565c61496d">nextDyn</a>)</div><div class="line"><a name="l14683"></a><span class="lineno">14683</span>  table-><a class="code" href="structDdManager.html#a832f5099477ac37dbce551565c61496d">nextDyn</a> = nextDyn;</div><div class="line"><a name="l14684"></a><span class="lineno">14684</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l14685"></a><span class="lineno">14685</span>  table-><a class="code" href="structDdManager.html#a832f5099477ac37dbce551565c61496d">nextDyn</a> += 20;</div><div class="line"><a name="l14686"></a><span class="lineno">14686</span>  <span class="keywordflow">if</span> (table-><a class="code" href="structDdManager.html#a25841e85a14cc64d3764b10687554c89">randomizeOrder</a> != 0) {</div><div class="line"><a name="l14687"></a><span class="lineno">14687</span>  table-><a class="code" href="structDdManager.html#a832f5099477ac37dbce551565c61496d">nextDyn</a> += <a class="code" href="cuddInt_8c.html#a57ec529a98560b3da382b0f8cec7ece4">Cudd_Random</a>() & table-><a class="code" href="structDdManager.html#a25841e85a14cc64d3764b10687554c89">randomizeOrder</a>;</div><div class="line"><a name="l14688"></a><span class="lineno">14688</span>  }</div><div class="line"><a name="l14689"></a><span class="lineno">14689</span>  table-><a class="code" href="structDdManager.html#ab8c81b5f0658b90c2c3bd339123a1f7a">reordered</a> = 1;</div><div class="line"><a name="l14690"></a><span class="lineno">14690</span> </div><div class="line"><a name="l14691"></a><span class="lineno">14691</span>  <span class="comment">/* Run hook functions. */</span></div><div class="line"><a name="l14692"></a><span class="lineno">14692</span>  hook = table-><a class="code" href="structDdManager.html#a051721a550ae2f41b9838b8153d46b30">postReorderingHook</a>;</div><div class="line"><a name="l14693"></a><span class="lineno">14693</span>  <span class="keywordflow">while</span> (hook != NULL) {</div><div class="line"><a name="l14694"></a><span class="lineno">14694</span>  <span class="keywordtype">int</span> res = (hook-><a class="code" href="structDdHook.html#a5b1bfe85ce0ac180fc160eb8c30094d7">f</a>)(table, <span class="stringliteral">"BDD"</span>, (<span class="keywordtype">void</span> *)localTime);</div><div class="line"><a name="l14695"></a><span class="lineno">14695</span>  <span class="keywordflow">if</span> (res == 0) <span class="keywordflow">return</span>(0);</div><div class="line"><a name="l14696"></a><span class="lineno">14696</span>  hook = hook-><a class="code" href="structDdHook.html#af30b5d30fbe9fe96c61bf418c75f1038">next</a>;</div><div class="line"><a name="l14697"></a><span class="lineno">14697</span>  }</div><div class="line"><a name="l14698"></a><span class="lineno">14698</span>  <span class="comment">/* Update cumulative reordering time. */</span></div><div class="line"><a name="l14699"></a><span class="lineno">14699</span>  table-><a class="code" href="structDdManager.html#a50246fe31dd62f3a6aad6636299e214a">reordTime</a> += <a class="code" href="util_8h.html#aafccfc19496a7104d4daf560555e84b0">util_cpu_time</a>() - localTime;</div><div class="line"><a name="l14700"></a><span class="lineno">14700</span> </div><div class="line"><a name="l14701"></a><span class="lineno">14701</span>  <span class="keywordflow">return</span>(result);</div><div class="line"><a name="l14702"></a><span class="lineno">14702</span> </div><div class="line"><a name="l14703"></a><span class="lineno">14703</span> } <span class="comment">/* end of Cudd_ReduceHeap */</span></div><div class="ttc" id="cudd_8h_html_a8ff397cb64855989d6ad62a491e20ddea3c2554eb182fa3c6440fa5e3f72dddd5"><div class="ttname"><a href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea3c2554eb182fa3c6440fa5e3f72dddd5">CUDD_REORDER_SAME</a></div><div class="ttdef"><b>Definition:</b> <a href="cudd_8h_source.html#l00142">cudd.h:142</a></div></div>
|
|
7010
|
+
<div class="fragment"><div class="line"><a name="l14562"></a><span class="lineno">14562</span> {</div><div class="line"><a name="l14563"></a><span class="lineno">14563</span>  <a class="code" href="structDdHook.html">DdHook</a> *hook;</div><div class="line"><a name="l14564"></a><span class="lineno">14564</span>  <span class="keywordtype">int</span> <a class="code" href="cuddInt_8c.html#a8b2e13c78efca330f06b6ddcd7464b41">result</a>;</div><div class="line"><a name="l14565"></a><span class="lineno">14565</span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> nextDyn;</div><div class="line"><a name="l14566"></a><span class="lineno">14566</span> <span class="preprocessor">#ifdef DD_STATS</span></div><div class="line"><a name="l14567"></a><span class="lineno">14567</span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> initialSize;</div><div class="line"><a name="l14568"></a><span class="lineno">14568</span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> finalSize;</div><div class="line"><a name="l14569"></a><span class="lineno">14569</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l14570"></a><span class="lineno">14570</span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> localTime;</div><div class="line"><a name="l14571"></a><span class="lineno">14571</span> </div><div class="line"><a name="l14572"></a><span class="lineno">14572</span>  <span class="comment">/* Don't reorder if there are too many dead nodes. */</span></div><div class="line"><a name="l14573"></a><span class="lineno">14573</span>  <span class="keywordflow">if</span> (table-><a class="code" href="structDdManager.html#afaedd101dfa7b7e2cb11614647ec37b2">keys</a> - table-><a class="code" href="structDdManager.html#a170c1cfcbbd9b83bb479fc85c177c52e">dead</a> < (<span class="keywordtype">unsigned</span>) minsize)</div><div class="line"><a name="l14574"></a><span class="lineno">14574</span>  <span class="keywordflow">return</span>(1);</div><div class="line"><a name="l14575"></a><span class="lineno">14575</span> </div><div class="line"><a name="l14576"></a><span class="lineno">14576</span>  <span class="keywordflow">if</span> (heuristic == <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea3c2554eb182fa3c6440fa5e3f72dddd5">CUDD_REORDER_SAME</a>) {</div><div class="line"><a name="l14577"></a><span class="lineno">14577</span>  heuristic = table-><a class="code" href="structDdManager.html#a20124711be407362dbe378648906ef89">autoMethod</a>;</div><div class="line"><a name="l14578"></a><span class="lineno">14578</span>  }</div><div class="line"><a name="l14579"></a><span class="lineno">14579</span>  <span class="keywordflow">if</span> (heuristic == <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddeabb43fb9caec196a5f3333de31c16b475">CUDD_REORDER_NONE</a>) {</div><div class="line"><a name="l14580"></a><span class="lineno">14580</span>  <span class="keywordflow">return</span>(1);</div><div class="line"><a name="l14581"></a><span class="lineno">14581</span>  }</div><div class="line"><a name="l14582"></a><span class="lineno">14582</span> </div><div class="line"><a name="l14583"></a><span class="lineno">14583</span>  <span class="comment">/* This call to Cudd_ReduceHeap does initiate reordering. Therefore</span></div><div class="line"><a name="l14584"></a><span class="lineno">14584</span> <span class="comment"> ** we count it.</span></div><div class="line"><a name="l14585"></a><span class="lineno">14585</span> <span class="comment"> */</span></div><div class="line"><a name="l14586"></a><span class="lineno">14586</span>  table-><a class="code" href="structDdManager.html#a78f3a2f3e04757968e4ed484da5f441f">reorderings</a>++;</div><div class="line"><a name="l14587"></a><span class="lineno">14587</span> </div><div class="line"><a name="l14588"></a><span class="lineno">14588</span>  localTime = <a class="code" href="util_8h.html#aafccfc19496a7104d4daf560555e84b0">util_cpu_time</a>();</div><div class="line"><a name="l14589"></a><span class="lineno">14589</span> </div><div class="line"><a name="l14590"></a><span class="lineno">14590</span>  <span class="comment">/* Run the hook functions. */</span></div><div class="line"><a name="l14591"></a><span class="lineno">14591</span>  hook = table-><a class="code" href="structDdManager.html#a227987a65d97bf4b8f3c905d6cc79024">preReorderingHook</a>;</div><div class="line"><a name="l14592"></a><span class="lineno">14592</span>  <span class="keywordflow">while</span> (hook != NULL) {</div><div class="line"><a name="l14593"></a><span class="lineno">14593</span>  <span class="keywordtype">int</span> res = (hook-><a class="code" href="structDdHook.html#a5b1bfe85ce0ac180fc160eb8c30094d7">f</a>)(table, <span class="stringliteral">"BDD"</span>, (<span class="keywordtype">void</span> *)heuristic);</div><div class="line"><a name="l14594"></a><span class="lineno">14594</span>  <span class="keywordflow">if</span> (res == 0) <span class="keywordflow">return</span>(0);</div><div class="line"><a name="l14595"></a><span class="lineno">14595</span>  hook = hook-><a class="code" href="structDdHook.html#af30b5d30fbe9fe96c61bf418c75f1038">next</a>;</div><div class="line"><a name="l14596"></a><span class="lineno">14596</span>  }</div><div class="line"><a name="l14597"></a><span class="lineno">14597</span> </div><div class="line"><a name="l14598"></a><span class="lineno">14598</span>  <span class="keywordflow">if</span> (!<a class="code" href="cuddInt_8c.html#af10d05b2d480c2083dc53009b68a5781">ddReorderPreprocess</a>(table)) <span class="keywordflow">return</span>(0);</div><div class="line"><a name="l14599"></a><span class="lineno">14599</span>  <a class="code" href="cuddInt_8c.html#a1860a312dbd8ab2ab829b1a3beed31d9">ddTotalNumberSwapping</a> = 0;</div><div class="line"><a name="l14600"></a><span class="lineno">14600</span> </div><div class="line"><a name="l14601"></a><span class="lineno">14601</span>  <span class="keywordflow">if</span> (table-><a class="code" href="structDdManager.html#afaedd101dfa7b7e2cb11614647ec37b2">keys</a> > table-><a class="code" href="structDdManager.html#a56b99ad9c23fcdc06fae90079b9690ce">peakLiveNodes</a>) {</div><div class="line"><a name="l14602"></a><span class="lineno">14602</span>  table-><a class="code" href="structDdManager.html#a56b99ad9c23fcdc06fae90079b9690ce">peakLiveNodes</a> = table-><a class="code" href="structDdManager.html#afaedd101dfa7b7e2cb11614647ec37b2">keys</a>;</div><div class="line"><a name="l14603"></a><span class="lineno">14603</span>  }</div><div class="line"><a name="l14604"></a><span class="lineno">14604</span> <span class="preprocessor">#ifdef DD_STATS</span></div><div class="line"><a name="l14605"></a><span class="lineno">14605</span>  initialSize = table-><a class="code" href="structDdManager.html#afaedd101dfa7b7e2cb11614647ec37b2">keys</a> - table-><a class="code" href="structDdManager.html#a0407971624e8cbb0510be72840e1788b">isolated</a>;</div><div class="line"><a name="l14606"></a><span class="lineno">14606</span>  ddTotalNISwaps = 0;</div><div class="line"><a name="l14607"></a><span class="lineno">14607</span> </div><div class="line"><a name="l14608"></a><span class="lineno">14608</span>  <span class="keywordflow">switch</span>(heuristic) {</div><div class="line"><a name="l14609"></a><span class="lineno">14609</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea8ffde9a0194df5e01bb3a0eaf2d5a489">CUDD_REORDER_RANDOM</a>:</div><div class="line"><a name="l14610"></a><span class="lineno">14610</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea45255db0c5134ca33ba807a372879368">CUDD_REORDER_RANDOM_PIVOT</a>:</div><div class="line"><a name="l14611"></a><span class="lineno">14611</span>  (void) fprintf(table-><a class="code" href="structDdManager.html#af318bea3248f8e99d7889f028be4ec8f">out</a>,<span class="stringliteral">"#:I_RANDOM "</span>);</div><div class="line"><a name="l14612"></a><span class="lineno">14612</span>  <span class="keywordflow">break</span>;</div><div class="line"><a name="l14613"></a><span class="lineno">14613</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddeaf512171f99e30a741b604602e077ae54">CUDD_REORDER_SIFT</a>:</div><div class="line"><a name="l14614"></a><span class="lineno">14614</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea2eb44e59cba9e1b55653941959eb5938">CUDD_REORDER_SIFT_CONVERGE</a>:</div><div class="line"><a name="l14615"></a><span class="lineno">14615</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea2b9444b7775bba12da0f39a584078e0c">CUDD_REORDER_SYMM_SIFT</a>:</div><div class="line"><a name="l14616"></a><span class="lineno">14616</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddeabc7a353b99f532efefdf9092016e0894">CUDD_REORDER_SYMM_SIFT_CONV</a>:</div><div class="line"><a name="l14617"></a><span class="lineno">14617</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea2f3a3020e2028bf957b4d2e6da34b748">CUDD_REORDER_GROUP_SIFT</a>:</div><div class="line"><a name="l14618"></a><span class="lineno">14618</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea021943df6809b36d89fa03d0bb63b9ef">CUDD_REORDER_GROUP_SIFT_CONV</a>:</div><div class="line"><a name="l14619"></a><span class="lineno">14619</span>  (void) fprintf(table-><a class="code" href="structDdManager.html#af318bea3248f8e99d7889f028be4ec8f">out</a>,<span class="stringliteral">"#:I_SIFTING "</span>);</div><div class="line"><a name="l14620"></a><span class="lineno">14620</span>  <span class="keywordflow">break</span>;</div><div class="line"><a name="l14621"></a><span class="lineno">14621</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea1200f7bc9ce4e409d0bc1750518b97fe">CUDD_REORDER_WINDOW2</a>:</div><div class="line"><a name="l14622"></a><span class="lineno">14622</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddeae53a5c1dfdd719ff377d4f900de4c0cf">CUDD_REORDER_WINDOW3</a>:</div><div class="line"><a name="l14623"></a><span class="lineno">14623</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea69dac82abf4db2bbf5820fa9638bdc4a">CUDD_REORDER_WINDOW4</a>:</div><div class="line"><a name="l14624"></a><span class="lineno">14624</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea8c7e70e4c81dbc35286b7a00685f5a19">CUDD_REORDER_WINDOW2_CONV</a>:</div><div class="line"><a name="l14625"></a><span class="lineno">14625</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddeaf7eb9f8bb0bd33ae78ecb6fb3094c3f9">CUDD_REORDER_WINDOW3_CONV</a>:</div><div class="line"><a name="l14626"></a><span class="lineno">14626</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddeac949aef80601550a561adaf440aca438">CUDD_REORDER_WINDOW4_CONV</a>:</div><div class="line"><a name="l14627"></a><span class="lineno">14627</span>  (void) fprintf(table-><a class="code" href="structDdManager.html#af318bea3248f8e99d7889f028be4ec8f">out</a>,<span class="stringliteral">"#:I_WINDOW "</span>);</div><div class="line"><a name="l14628"></a><span class="lineno">14628</span>  <span class="keywordflow">break</span>;</div><div class="line"><a name="l14629"></a><span class="lineno">14629</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea86b75dbbbe111b8b098b079fcae00bb8">CUDD_REORDER_ANNEALING</a>:</div><div class="line"><a name="l14630"></a><span class="lineno">14630</span>  (void) fprintf(table-><a class="code" href="structDdManager.html#af318bea3248f8e99d7889f028be4ec8f">out</a>,<span class="stringliteral">"#:I_ANNEAL "</span>);</div><div class="line"><a name="l14631"></a><span class="lineno">14631</span>  <span class="keywordflow">break</span>;</div><div class="line"><a name="l14632"></a><span class="lineno">14632</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea5f8da0a69c6e0a45f5aabf29c0f62b80">CUDD_REORDER_GENETIC</a>:</div><div class="line"><a name="l14633"></a><span class="lineno">14633</span>  (void) fprintf(table-><a class="code" href="structDdManager.html#af318bea3248f8e99d7889f028be4ec8f">out</a>,<span class="stringliteral">"#:I_GENETIC "</span>);</div><div class="line"><a name="l14634"></a><span class="lineno">14634</span>  <span class="keywordflow">break</span>;</div><div class="line"><a name="l14635"></a><span class="lineno">14635</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddeacb683aa1b0f0447e6bc3e233a27bc09a">CUDD_REORDER_LINEAR</a>:</div><div class="line"><a name="l14636"></a><span class="lineno">14636</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea5fe4925131a190c26d615676991cbc87">CUDD_REORDER_LINEAR_CONVERGE</a>:</div><div class="line"><a name="l14637"></a><span class="lineno">14637</span>  (void) fprintf(table-><a class="code" href="structDdManager.html#af318bea3248f8e99d7889f028be4ec8f">out</a>,<span class="stringliteral">"#:I_LINSIFT "</span>);</div><div class="line"><a name="l14638"></a><span class="lineno">14638</span>  <span class="keywordflow">break</span>;</div><div class="line"><a name="l14639"></a><span class="lineno">14639</span>  <span class="keywordflow">case</span> <a class="code" href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea18cd94b42260d7f89b98887317383c96">CUDD_REORDER_EXACT</a>:</div><div class="line"><a name="l14640"></a><span class="lineno">14640</span>  (void) fprintf(table-><a class="code" href="structDdManager.html#af318bea3248f8e99d7889f028be4ec8f">out</a>,<span class="stringliteral">"#:I_EXACT "</span>);</div><div class="line"><a name="l14641"></a><span class="lineno">14641</span>  <span class="keywordflow">break</span>;</div><div class="line"><a name="l14642"></a><span class="lineno">14642</span>  <span class="keywordflow">default</span>:</div><div class="line"><a name="l14643"></a><span class="lineno">14643</span>  <span class="keywordflow">return</span>(0);</div><div class="line"><a name="l14644"></a><span class="lineno">14644</span>  }</div><div class="line"><a name="l14645"></a><span class="lineno">14645</span>  (void) fprintf(table-><a class="code" href="structDdManager.html#af318bea3248f8e99d7889f028be4ec8f">out</a>,<span class="stringliteral">"%8d: initial size"</span>,initialSize);</div><div class="line"><a name="l14646"></a><span class="lineno">14646</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l14647"></a><span class="lineno">14647</span> </div><div class="line"><a name="l14648"></a><span class="lineno">14648</span>  <span class="comment">/* See if we should use alternate threshold for maximum growth. */</span></div><div class="line"><a name="l14649"></a><span class="lineno">14649</span>  <span class="keywordflow">if</span> (table-><a class="code" href="structDdManager.html#aab2156c5c7271dc0aecf7ffc18e68e5f">reordCycle</a> && table-><a class="code" href="structDdManager.html#a78f3a2f3e04757968e4ed484da5f441f">reorderings</a> % table-><a class="code" href="structDdManager.html#aab2156c5c7271dc0aecf7ffc18e68e5f">reordCycle</a> == 0) {</div><div class="line"><a name="l14650"></a><span class="lineno">14650</span>  <span class="keywordtype">double</span> saveGrowth = table-><a class="code" href="structDdManager.html#a8a6a4238d1bc8a87eabd2c3eabd233d7">maxGrowth</a>;</div><div class="line"><a name="l14651"></a><span class="lineno">14651</span>  table-><a class="code" href="structDdManager.html#a8a6a4238d1bc8a87eabd2c3eabd233d7">maxGrowth</a> = table-><a class="code" href="structDdManager.html#a2926e48e488cec20a61e9b0dc6b91795">maxGrowthAlt</a>;</div><div class="line"><a name="l14652"></a><span class="lineno">14652</span>  result = <a class="code" href="cuddInt_8c.html#a66ff5219b538de2d580f832a4ddfc362">cuddTreeSifting</a>(table,heuristic);</div><div class="line"><a name="l14653"></a><span class="lineno">14653</span>  table-><a class="code" href="structDdManager.html#a8a6a4238d1bc8a87eabd2c3eabd233d7">maxGrowth</a> = saveGrowth;</div><div class="line"><a name="l14654"></a><span class="lineno">14654</span>  } <span class="keywordflow">else</span> {</div><div class="line"><a name="l14655"></a><span class="lineno">14655</span>  result = <a class="code" href="cuddInt_8c.html#a66ff5219b538de2d580f832a4ddfc362">cuddTreeSifting</a>(table,heuristic);</div><div class="line"><a name="l14656"></a><span class="lineno">14656</span>  }</div><div class="line"><a name="l14657"></a><span class="lineno">14657</span> </div><div class="line"><a name="l14658"></a><span class="lineno">14658</span> <span class="preprocessor">#ifdef DD_STATS</span></div><div class="line"><a name="l14659"></a><span class="lineno">14659</span>  (void) fprintf(table-><a class="code" href="structDdManager.html#af318bea3248f8e99d7889f028be4ec8f">out</a>,<span class="stringliteral">"\n"</span>);</div><div class="line"><a name="l14660"></a><span class="lineno">14660</span>  finalSize = table-><a class="code" href="structDdManager.html#afaedd101dfa7b7e2cb11614647ec37b2">keys</a> - table-><a class="code" href="structDdManager.html#a0407971624e8cbb0510be72840e1788b">isolated</a>;</div><div class="line"><a name="l14661"></a><span class="lineno">14661</span>  (void) fprintf(table-><a class="code" href="structDdManager.html#af318bea3248f8e99d7889f028be4ec8f">out</a>,<span class="stringliteral">"#:F_REORDER %8d: final size\n"</span>,finalSize);</div><div class="line"><a name="l14662"></a><span class="lineno">14662</span>  (void) fprintf(table-><a class="code" href="structDdManager.html#af318bea3248f8e99d7889f028be4ec8f">out</a>,<span class="stringliteral">"#:T_REORDER %8g: total time (sec)\n"</span>,</div><div class="line"><a name="l14663"></a><span class="lineno">14663</span>  ((<span class="keywordtype">double</span>)(<a class="code" href="util_8h.html#aafccfc19496a7104d4daf560555e84b0">util_cpu_time</a>() - localTime)/1000.0));</div><div class="line"><a name="l14664"></a><span class="lineno">14664</span>  (void) fprintf(table-><a class="code" href="structDdManager.html#af318bea3248f8e99d7889f028be4ec8f">out</a>,<span class="stringliteral">"#:N_REORDER %8d: total swaps\n"</span>,</div><div class="line"><a name="l14665"></a><span class="lineno">14665</span>  <a class="code" href="cuddInt_8c.html#a1860a312dbd8ab2ab829b1a3beed31d9">ddTotalNumberSwapping</a>);</div><div class="line"><a name="l14666"></a><span class="lineno">14666</span>  (void) fprintf(table-><a class="code" href="structDdManager.html#af318bea3248f8e99d7889f028be4ec8f">out</a>,<span class="stringliteral">"#:M_REORDER %8d: NI swaps\n"</span>,ddTotalNISwaps);</div><div class="line"><a name="l14667"></a><span class="lineno">14667</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l14668"></a><span class="lineno">14668</span> </div><div class="line"><a name="l14669"></a><span class="lineno">14669</span>  <span class="keywordflow">if</span> (result == 0)</div><div class="line"><a name="l14670"></a><span class="lineno">14670</span>  <span class="keywordflow">return</span>(0);</div><div class="line"><a name="l14671"></a><span class="lineno">14671</span> </div><div class="line"><a name="l14672"></a><span class="lineno">14672</span>  <span class="keywordflow">if</span> (!<a class="code" href="cuddInt_8c.html#acb38f795d39e6eeb71d62d9ce62278f6">ddReorderPostprocess</a>(table))</div><div class="line"><a name="l14673"></a><span class="lineno">14673</span>  <span class="keywordflow">return</span>(0);</div><div class="line"><a name="l14674"></a><span class="lineno">14674</span> </div><div class="line"><a name="l14675"></a><span class="lineno">14675</span>  <span class="keywordflow">if</span> (table-><a class="code" href="structDdManager.html#ab50e58f446cce13dd36cf63230e2d836">realign</a>) {</div><div class="line"><a name="l14676"></a><span class="lineno">14676</span>  <span class="keywordflow">if</span> (!<a class="code" href="cuddInt_8c.html#ae994abd80d7d5b41c74a3a6016f52815">cuddZddAlignToBdd</a>(table))</div><div class="line"><a name="l14677"></a><span class="lineno">14677</span>  <span class="keywordflow">return</span>(0);</div><div class="line"><a name="l14678"></a><span class="lineno">14678</span>  }</div><div class="line"><a name="l14679"></a><span class="lineno">14679</span> </div><div class="line"><a name="l14680"></a><span class="lineno">14680</span>  nextDyn = (table-><a class="code" href="structDdManager.html#afaedd101dfa7b7e2cb11614647ec37b2">keys</a> - table-><a class="code" href="structDdManager.html#aa8d293b6a4f69f6b4795e2fc24ede216">constants</a>.<a class="code" href="structDdSubtable.html#aca2eea345c00c69090e701ffacff7de4">keys</a> + 1) *</div><div class="line"><a name="l14681"></a><span class="lineno">14681</span>  <a class="code" href="cuddInt_8h.html#ae2a9d0ccd78a4c81e643ef54c2f51d53">DD_DYN_RATIO</a> + table-><a class="code" href="structDdManager.html#aa8d293b6a4f69f6b4795e2fc24ede216">constants</a>.<a class="code" href="structDdSubtable.html#aca2eea345c00c69090e701ffacff7de4">keys</a>;</div><div class="line"><a name="l14682"></a><span class="lineno">14682</span>  <a class="code" href="tools_2CFL_2CMakeLists_8txt.html#aff8b1edecee3d7c397afcfe02e05d0c7">if</a> (table-><a class="code" href="structDdManager.html#a78f3a2f3e04757968e4ed484da5f441f">reorderings</a> < 20 || nextDyn > table-><a class="code" href="structDdManager.html#a832f5099477ac37dbce551565c61496d">nextDyn</a>)</div><div class="line"><a name="l14683"></a><span class="lineno">14683</span>  table-><a class="code" href="structDdManager.html#a832f5099477ac37dbce551565c61496d">nextDyn</a> = nextDyn;</div><div class="line"><a name="l14684"></a><span class="lineno">14684</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l14685"></a><span class="lineno">14685</span>  table-><a class="code" href="structDdManager.html#a832f5099477ac37dbce551565c61496d">nextDyn</a> += 20;</div><div class="line"><a name="l14686"></a><span class="lineno">14686</span>  <span class="keywordflow">if</span> (table-><a class="code" href="structDdManager.html#a25841e85a14cc64d3764b10687554c89">randomizeOrder</a> != 0) {</div><div class="line"><a name="l14687"></a><span class="lineno">14687</span>  table-><a class="code" href="structDdManager.html#a832f5099477ac37dbce551565c61496d">nextDyn</a> += <a class="code" href="cuddInt_8c.html#a57ec529a98560b3da382b0f8cec7ece4">Cudd_Random</a>() & table-><a class="code" href="structDdManager.html#a25841e85a14cc64d3764b10687554c89">randomizeOrder</a>;</div><div class="line"><a name="l14688"></a><span class="lineno">14688</span>  }</div><div class="line"><a name="l14689"></a><span class="lineno">14689</span>  table-><a class="code" href="structDdManager.html#ab8c81b5f0658b90c2c3bd339123a1f7a">reordered</a> = 1;</div><div class="line"><a name="l14690"></a><span class="lineno">14690</span> </div><div class="line"><a name="l14691"></a><span class="lineno">14691</span>  <span class="comment">/* Run hook functions. */</span></div><div class="line"><a name="l14692"></a><span class="lineno">14692</span>  hook = table-><a class="code" href="structDdManager.html#a051721a550ae2f41b9838b8153d46b30">postReorderingHook</a>;</div><div class="line"><a name="l14693"></a><span class="lineno">14693</span>  <span class="keywordflow">while</span> (hook != NULL) {</div><div class="line"><a name="l14694"></a><span class="lineno">14694</span>  <span class="keywordtype">int</span> res = (hook-><a class="code" href="structDdHook.html#a5b1bfe85ce0ac180fc160eb8c30094d7">f</a>)(table, <span class="stringliteral">"BDD"</span>, (<span class="keywordtype">void</span> *)localTime);</div><div class="line"><a name="l14695"></a><span class="lineno">14695</span>  <span class="keywordflow">if</span> (res == 0) <span class="keywordflow">return</span>(0);</div><div class="line"><a name="l14696"></a><span class="lineno">14696</span>  hook = hook-><a class="code" href="structDdHook.html#af30b5d30fbe9fe96c61bf418c75f1038">next</a>;</div><div class="line"><a name="l14697"></a><span class="lineno">14697</span>  }</div><div class="line"><a name="l14698"></a><span class="lineno">14698</span>  <span class="comment">/* Update cumulative reordering time. */</span></div><div class="line"><a name="l14699"></a><span class="lineno">14699</span>  table-><a class="code" href="structDdManager.html#a50246fe31dd62f3a6aad6636299e214a">reordTime</a> += <a class="code" href="util_8h.html#aafccfc19496a7104d4daf560555e84b0">util_cpu_time</a>() - localTime;</div><div class="line"><a name="l14700"></a><span class="lineno">14700</span> </div><div class="line"><a name="l14701"></a><span class="lineno">14701</span>  <span class="keywordflow">return</span>(result);</div><div class="line"><a name="l14702"></a><span class="lineno">14702</span> </div><div class="line"><a name="l14703"></a><span class="lineno">14703</span> } <span class="comment">/* end of Cudd_ReduceHeap */</span></div><div class="ttc" id="cudd_8h_html_a8ff397cb64855989d6ad62a491e20ddea3c2554eb182fa3c6440fa5e3f72dddd5"><div class="ttname"><a href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea3c2554eb182fa3c6440fa5e3f72dddd5">CUDD_REORDER_SAME</a></div><div class="ttdef"><b>Definition:</b> <a href="cudd_8h_source.html#l00142">cudd.h:142</a></div></div>
|
|
7011
7011
|
<div class="ttc" id="structDdSubtable_html_aca2eea345c00c69090e701ffacff7de4"><div class="ttname"><a href="structDdSubtable.html#aca2eea345c00c69090e701ffacff7de4">DdSubtable::keys</a></div><div class="ttdeci">unsigned int keys</div><div class="ttdef"><b>Definition:</b> <a href="cuddInt_8h_source.html#l00314">cuddInt.h:314</a></div></div>
|
|
7012
7012
|
<div class="ttc" id="cudd_8h_html_a8ff397cb64855989d6ad62a491e20ddea2b9444b7775bba12da0f39a584078e0c"><div class="ttname"><a href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea2b9444b7775bba12da0f39a584078e0c">CUDD_REORDER_SYMM_SIFT</a></div><div class="ttdef"><b>Definition:</b> <a href="cudd_8h_source.html#l00148">cudd.h:148</a></div></div>
|
|
7013
7013
|
<div class="ttc" id="structDdManager_html_a50246fe31dd62f3a6aad6636299e214a"><div class="ttname"><a href="structDdManager.html#a50246fe31dd62f3a6aad6636299e214a">DdManager::reordTime</a></div><div class="ttdeci">unsigned long reordTime</div><div class="ttdef"><b>Definition:</b> <a href="cuddInt_8h_source.html#l00434">cuddInt.h:434</a></div></div>
|
|
7014
7014
|
<div class="ttc" id="structDdManager_html_a20124711be407362dbe378648906ef89"><div class="ttname"><a href="structDdManager.html#a20124711be407362dbe378648906ef89">DdManager::autoMethod</a></div><div class="ttdeci">Cudd_ReorderingType autoMethod</div><div class="ttdef"><b>Definition:</b> <a href="cuddInt_8h_source.html#l00402">cuddInt.h:402</a></div></div>
|
|
7015
7015
|
<div class="ttc" id="structDdManager_html_a56b99ad9c23fcdc06fae90079b9690ce"><div class="ttname"><a href="structDdManager.html#a56b99ad9c23fcdc06fae90079b9690ce">DdManager::peakLiveNodes</a></div><div class="ttdeci">unsigned int peakLiveNodes</div><div class="ttdef"><b>Definition:</b> <a href="cuddInt_8h_source.html#l00445">cuddInt.h:445</a></div></div>
|
|
7016
|
+
<div class="ttc" id="tools_2CFL_2CMakeLists_8txt_html_aff8b1edecee3d7c397afcfe02e05d0c7"><div class="ttname"><a href="tools_2CFL_2CMakeLists_8txt.html#aff8b1edecee3d7c397afcfe02e05d0c7">if</a></div><div class="ttdeci">if(DEFINED IN_SOURCE_BUILD) set(LLVM_LINK_COMPONENTS BitWriter Core IPO IrReader InstCombine Instrumentation Target Linker Analysis ScalarOpts Support Svf Cudd) add_llvm_tool(cfl cfl.cpp) else() add_executable(cfl cfl.cpp) target_link_libraries(cfl Svf Cudd $</div><div class="ttdef"><b>Definition:</b> <a href="tools_2CFL_2CMakeLists_8txt_source.html#l00002">CMakeLists.txt:2</a></div></div>
|
|
7016
7017
|
<div class="ttc" id="structDdManager_html_a227987a65d97bf4b8f3c905d6cc79024"><div class="ttname"><a href="structDdManager.html#a227987a65d97bf4b8f3c905d6cc79024">DdManager::preReorderingHook</a></div><div class="ttdeci">DdHook * preReorderingHook</div><div class="ttdef"><b>Definition:</b> <a href="cuddInt_8h_source.html#l00421">cuddInt.h:421</a></div></div>
|
|
7017
7018
|
<div class="ttc" id="cudd_8h_html_a8ff397cb64855989d6ad62a491e20ddea2f3a3020e2028bf957b4d2e6da34b748"><div class="ttname"><a href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea2f3a3020e2028bf957b4d2e6da34b748">CUDD_REORDER_GROUP_SIFT</a></div><div class="ttdef"><b>Definition:</b> <a href="cudd_8h_source.html#l00156">cudd.h:156</a></div></div>
|
|
7018
7019
|
<div class="ttc" id="structDdManager_html_aab2156c5c7271dc0aecf7ffc18e68e5f"><div class="ttname"><a href="structDdManager.html#aab2156c5c7271dc0aecf7ffc18e68e5f">DdManager::reordCycle</a></div><div class="ttdeci">int reordCycle</div><div class="ttdef"><b>Definition:</b> <a href="cuddInt_8h_source.html#l00399">cuddInt.h:399</a></div></div>
|
|
@@ -7059,7 +7060,6 @@ Dynamic Programming (exact) </li>
|
|
|
7059
7060
|
<div class="ttc" id="cudd_8h_html_a8ff397cb64855989d6ad62a491e20ddeabc7a353b99f532efefdf9092016e0894"><div class="ttname"><a href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddeabc7a353b99f532efefdf9092016e0894">CUDD_REORDER_SYMM_SIFT_CONV</a></div><div class="ttdef"><b>Definition:</b> <a href="cudd_8h_source.html#l00149">cudd.h:149</a></div></div>
|
|
7060
7061
|
<div class="ttc" id="cuddInt_8c_html_a57ec529a98560b3da382b0f8cec7ece4"><div class="ttname"><a href="cuddInt_8c.html#a57ec529a98560b3da382b0f8cec7ece4">Cudd_Random</a></div><div class="ttdeci">long Cudd_Random(void)</div><div class="ttdef"><b>Definition:</b> <a href="cuddInt_8c_source.html#l22881">cuddInt.c:22881</a></div></div>
|
|
7061
7062
|
<div class="ttc" id="cudd_8h_html_a8ff397cb64855989d6ad62a491e20ddea69dac82abf4db2bbf5820fa9638bdc4a"><div class="ttname"><a href="cudd_8h.html#a8ff397cb64855989d6ad62a491e20ddea69dac82abf4db2bbf5820fa9638bdc4a">CUDD_REORDER_WINDOW4</a></div><div class="ttdef"><b>Definition:</b> <a href="cudd_8h_source.html#l00152">cudd.h:152</a></div></div>
|
|
7062
|
-
<div class="ttc" id="tools_2DDA_2CMakeLists_8txt_html_a7686df215f6da6fdcfa2c20950c96939"><div class="ttname"><a href="tools_2DDA_2CMakeLists_8txt.html#a7686df215f6da6fdcfa2c20950c96939">if</a></div><div class="ttdeci">if(DEFINED IN_SOURCE_BUILD) set(LLVM_LINK_COMPONENTS BitWriter Core IPO IrReader InstCombine Instrumentation Target Linker Analysis ScalarOpts Support Svf Cudd) add_llvm_tool(dvf dda.cpp) else() add_executable(dvf dda.cpp) target_link_libraries(dvf Svf Cudd $</div><div class="ttdef"><b>Definition:</b> <a href="tools_2DDA_2CMakeLists_8txt_source.html#l00002">CMakeLists.txt:2</a></div></div>
|
|
7063
7063
|
</div><!-- fragment -->
|
|
7064
7064
|
</div>
|
|
7065
7065
|
</div>
|
|
@@ -17491,7 +17491,8 @@ Repeat 1-4 until no further improvement. </li>
|
|
|
17491
17491
|
<p>SeeAlso [] </p>
|
|
17492
17492
|
|
|
17493
17493
|
<p class="definition">Definition at line <a class="el" href="cuddInt_8c_source.html#l21624">21624</a> of file <a class="el" href="cuddInt_8c_source.html">cuddInt.c</a>.</p>
|
|
17494
|
-
<div class="fragment"><div class="line"><a name="l21626"></a><span class="lineno">21626</span> {</div><div class="line"><a name="l21627"></a><span class="lineno">21627</span> unique-><a class="code" href="structDdManager.html#a6cd4e44cf6d9a86bf2f75c34c3e2254b">minDead</a> = (unsigned) (unique-><a class="code" href="structDdManager.html#a6d7c2a944d2b73afcf3d085410568849">gcFrac</a> * (<span class="keywordtype">double</span>) unique-><a class="code" href="structDdManager.html#a8a0404c6d3d8c1e49ed84e4467c3387c">slots</a>);</div><div class="line"><a name="l21628"></a><span class="lineno">21628</span> unique-><a class="code" href="structDdManager.html#a725c561349903b5f4642cd5db48f899c">cacheSlack</a> = (int) <a class="code" href="cuddInt_8h.html#a2ca9cfb1642557eefc559198c4801092">ddMin</a>(unique-><a class="code" href="structDdManager.html#a1b53bee9cf86fc1131c420c2aef7e473">maxCacheHard</a>,</div><div class="line"><a name="l21629"></a><span class="lineno">21629</span> <a class="code" href="cuddInt_8h.html#aaf354bd23b83e924c3387cbbd893611c">DD_MAX_CACHE_TO_SLOTS_RATIO</a> * unique-><a class="code" href="structDdManager.html#a8a0404c6d3d8c1e49ed84e4467c3387c">slots</a>) -</div><div class="line"><a name="l21630"></a><span class="lineno">21630</span> 2 * (int) unique-><a class="code" href="structDdManager.html#ac977e490cd2ff8e2c4a0dc734c1b533b">cacheSlots</a>;</div><div class="line"><a name="l21631"></a><span class="lineno">21631</span> <a class="code" href="
|
|
17494
|
+
<div class="fragment"><div class="line"><a name="l21626"></a><span class="lineno">21626</span> {</div><div class="line"><a name="l21627"></a><span class="lineno">21627</span> unique-><a class="code" href="structDdManager.html#a6cd4e44cf6d9a86bf2f75c34c3e2254b">minDead</a> = (unsigned) (unique-><a class="code" href="structDdManager.html#a6d7c2a944d2b73afcf3d085410568849">gcFrac</a> * (<span class="keywordtype">double</span>) unique-><a class="code" href="structDdManager.html#a8a0404c6d3d8c1e49ed84e4467c3387c">slots</a>);</div><div class="line"><a name="l21628"></a><span class="lineno">21628</span> unique-><a class="code" href="structDdManager.html#a725c561349903b5f4642cd5db48f899c">cacheSlack</a> = (int) <a class="code" href="cuddInt_8h.html#a2ca9cfb1642557eefc559198c4801092">ddMin</a>(unique-><a class="code" href="structDdManager.html#a1b53bee9cf86fc1131c420c2aef7e473">maxCacheHard</a>,</div><div class="line"><a name="l21629"></a><span class="lineno">21629</span> <a class="code" href="cuddInt_8h.html#aaf354bd23b83e924c3387cbbd893611c">DD_MAX_CACHE_TO_SLOTS_RATIO</a> * unique-><a class="code" href="structDdManager.html#a8a0404c6d3d8c1e49ed84e4467c3387c">slots</a>) -</div><div class="line"><a name="l21630"></a><span class="lineno">21630</span> 2 * (int) unique-><a class="code" href="structDdManager.html#ac977e490cd2ff8e2c4a0dc734c1b533b">cacheSlots</a>;</div><div class="line"><a name="l21631"></a><span class="lineno">21631</span> <a class="code" href="tools_2CFL_2CMakeLists_8txt.html#aff8b1edecee3d7c397afcfe02e05d0c7">if</a> (unique-><a class="code" href="structDdManager.html#ac977e490cd2ff8e2c4a0dc734c1b533b">cacheSlots</a> < unique-><a class="code" href="structDdManager.html#a8a0404c6d3d8c1e49ed84e4467c3387c">slots</a>/2 && unique-><a class="code" href="structDdManager.html#a725c561349903b5f4642cd5db48f899c">cacheSlack</a> >= 0)</div><div class="line"><a name="l21632"></a><span class="lineno">21632</span> <a class="code" href="cuddInt_8c.html#a71fcb8b02eb9a10d706301052525bcfa">cuddCacheResize</a>(unique);</div><div class="line"><a name="l21633"></a><span class="lineno">21633</span> <span class="keywordflow">return</span>;</div><div class="line"><a name="l21634"></a><span class="lineno">21634</span> </div><div class="line"><a name="l21635"></a><span class="lineno">21635</span> } <span class="comment">/* end of ddFixLimits */</span></div><div class="ttc" id="tools_2CFL_2CMakeLists_8txt_html_aff8b1edecee3d7c397afcfe02e05d0c7"><div class="ttname"><a href="tools_2CFL_2CMakeLists_8txt.html#aff8b1edecee3d7c397afcfe02e05d0c7">if</a></div><div class="ttdeci">if(DEFINED IN_SOURCE_BUILD) set(LLVM_LINK_COMPONENTS BitWriter Core IPO IrReader InstCombine Instrumentation Target Linker Analysis ScalarOpts Support Svf Cudd) add_llvm_tool(cfl cfl.cpp) else() add_executable(cfl cfl.cpp) target_link_libraries(cfl Svf Cudd $</div><div class="ttdef"><b>Definition:</b> <a href="tools_2CFL_2CMakeLists_8txt_source.html#l00002">CMakeLists.txt:2</a></div></div>
|
|
17495
|
+
<div class="ttc" id="structDdManager_html_a6d7c2a944d2b73afcf3d085410568849"><div class="ttname"><a href="structDdManager.html#a6d7c2a944d2b73afcf3d085410568849">DdManager::gcFrac</a></div><div class="ttdeci">double gcFrac</div><div class="ttdef"><b>Definition:</b> <a href="cuddInt_8h_source.html#l00359">cuddInt.h:359</a></div></div>
|
|
17495
17496
|
<div class="ttc" id="structDdManager_html_a1b53bee9cf86fc1131c420c2aef7e473"><div class="ttname"><a href="structDdManager.html#a1b53bee9cf86fc1131c420c2aef7e473">DdManager::maxCacheHard</a></div><div class="ttdeci">unsigned int maxCacheHard</div><div class="ttdef"><b>Definition:</b> <a href="cuddInt_8h_source.html#l00343">cuddInt.h:343</a></div></div>
|
|
17496
17497
|
<div class="ttc" id="structDdManager_html_a8a0404c6d3d8c1e49ed84e4467c3387c"><div class="ttname"><a href="structDdManager.html#a8a0404c6d3d8c1e49ed84e4467c3387c">DdManager::slots</a></div><div class="ttdeci">unsigned int slots</div><div class="ttdef"><b>Definition:</b> <a href="cuddInt_8h_source.html#l00352">cuddInt.h:352</a></div></div>
|
|
17497
17498
|
<div class="ttc" id="cuddInt_8c_html_a71fcb8b02eb9a10d706301052525bcfa"><div class="ttname"><a href="cuddInt_8c.html#a71fcb8b02eb9a10d706301052525bcfa">cuddCacheResize</a></div><div class="ttdeci">void cuddCacheResize(DdManager *table)</div><div class="ttdef"><b>Definition:</b> <a href="cuddInt_8c_source.html#l04955">cuddInt.c:4955</a></div></div>
|
|
@@ -17500,7 +17501,6 @@ Repeat 1-4 until no further improvement. </li>
|
|
|
17500
17501
|
<div class="ttc" id="cuddInt_8h_html_aaf354bd23b83e924c3387cbbd893611c"><div class="ttname"><a href="cuddInt_8h.html#aaf354bd23b83e924c3387cbbd893611c">DD_MAX_CACHE_TO_SLOTS_RATIO</a></div><div class="ttdeci">#define DD_MAX_CACHE_TO_SLOTS_RATIO</div><div class="ttdef"><b>Definition:</b> <a href="cuddInt_8h_source.html#l00145">cuddInt.h:145</a></div></div>
|
|
17501
17502
|
<div class="ttc" id="structDdManager_html_a725c561349903b5f4642cd5db48f899c"><div class="ttname"><a href="structDdManager.html#a725c561349903b5f4642cd5db48f899c">DdManager::cacheSlack</a></div><div class="ttdeci">int cacheSlack</div><div class="ttdef"><b>Definition:</b> <a href="cuddInt_8h_source.html#l00342">cuddInt.h:342</a></div></div>
|
|
17502
17503
|
<div class="ttc" id="structDdManager_html_a6cd4e44cf6d9a86bf2f75c34c3e2254b"><div class="ttname"><a href="structDdManager.html#a6cd4e44cf6d9a86bf2f75c34c3e2254b">DdManager::minDead</a></div><div class="ttdeci">unsigned int minDead</div><div class="ttdef"><b>Definition:</b> <a href="cuddInt_8h_source.html#l00358">cuddInt.h:358</a></div></div>
|
|
17503
|
-
<div class="ttc" id="tools_2DDA_2CMakeLists_8txt_html_a7686df215f6da6fdcfa2c20950c96939"><div class="ttname"><a href="tools_2DDA_2CMakeLists_8txt.html#a7686df215f6da6fdcfa2c20950c96939">if</a></div><div class="ttdeci">if(DEFINED IN_SOURCE_BUILD) set(LLVM_LINK_COMPONENTS BitWriter Core IPO IrReader InstCombine Instrumentation Target Linker Analysis ScalarOpts Support Svf Cudd) add_llvm_tool(dvf dda.cpp) else() add_executable(dvf dda.cpp) target_link_libraries(dvf Svf Cudd $</div><div class="ttdef"><b>Definition:</b> <a href="tools_2DDA_2CMakeLists_8txt_source.html#l00002">CMakeLists.txt:2</a></div></div>
|
|
17504
17504
|
</div><!-- fragment -->
|
|
17505
17505
|
</div>
|
|
17506
17506
|
</div>
|