svf-tools 1.0.628 → 1.0.630
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/AddressValue_8h_source.html +2 -2
- package/SVF-doxygen/html/html/AndersenPWC_8h_source.html +3 -3
- package/SVF-doxygen/html/html/AndersenSCD_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/AndersenSFR_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/AndersenWaveDiff_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/Andersen_8cpp_source.html +21 -21
- package/SVF-doxygen/html/html/Andersen_8h_source.html +6 -6
- package/SVF-doxygen/html/html/Annotator_8h.html +2 -1
- package/SVF-doxygen/html/html/Annotator_8h_source.html +19 -18
- package/SVF-doxygen/html/html/CFGNormalizer_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/CFGNormalizer_8h_source.html +1 -1
- package/SVF-doxygen/html/html/CFLAlias_8cpp.html +1 -0
- package/SVF-doxygen/html/html/CFLAlias_8cpp_source.html +11 -10
- package/SVF-doxygen/html/html/CFLAlias_8h_source.html +5 -5
- package/SVF-doxygen/html/html/CFLBase_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/CFLGrammar_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/CFLGrammar_8h_source.html +3 -3
- package/SVF-doxygen/html/html/CFLGraphBuilder_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/CFLGraphBuilder_8h_source.html +1 -1
- package/SVF-doxygen/html/html/CFLGraph_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/CFLGraph_8h_source.html +2 -2
- package/SVF-doxygen/html/html/CFLVF_8cpp.html +1 -0
- package/SVF-doxygen/html/html/CFLVF_8cpp_source.html +6 -5
- package/SVF-doxygen/html/html/CFLVF_8h_source.html +3 -3
- package/SVF-doxygen/html/html/CHGBuilder_8cpp.html +1 -1
- package/SVF-doxygen/html/html/CHGBuilder_8cpp_source.html +23 -23
- package/SVF-doxygen/html/html/CHG_8cpp.html +7 -6
- package/SVF-doxygen/html/html/CHG_8cpp_source.html +22 -21
- package/SVF-doxygen/html/html/CHG_8h_source.html +1 -1
- package/SVF-doxygen/html/html/CSC_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/CSC_8h_source.html +3 -3
- package/SVF-doxygen/html/html/CallGraphBuilder_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/ConditionalPT_8h_source.html +4 -4
- package/SVF-doxygen/html/html/ConsGEdge_8h_source.html +2 -2
- package/SVF-doxygen/html/html/ConsGNode_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ConsG_8cpp_source.html +11 -11
- package/SVF-doxygen/html/html/ConsG_8h_source.html +2 -2
- package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +8 -8
- package/SVF-doxygen/html/html/ContextDDA_8h_source.html +6 -6
- package/SVF-doxygen/html/html/CoreBitVector_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/CoreBitVector_8h_source.html +2 -2
- package/SVF-doxygen/html/html/CppUtil_8cpp.html +247 -0
- package/SVF-doxygen/html/html/CppUtil_8cpp_source.html +98 -0
- package/SVF-doxygen/html/html/CppUtil_8h.html +122 -0
- package/SVF-doxygen/html/html/CppUtil_8h_source.html +94 -0
- package/SVF-doxygen/html/html/CxtStmt_8h_source.html +3 -3
- package/SVF-doxygen/html/html/DCHG_8cpp.html +1 -1
- package/SVF-doxygen/html/html/DCHG_8cpp_source.html +40 -40
- package/SVF-doxygen/html/html/DCHG_8h.html +2 -1
- package/SVF-doxygen/html/html/DCHG_8h_source.html +75 -74
- package/SVF-doxygen/html/html/DDAClient_8cpp_source.html +10 -10
- package/SVF-doxygen/html/html/DDAClient_8h_source.html +3 -3
- package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/DDAPass_8h_source.html +3 -3
- package/SVF-doxygen/html/html/DDAStat_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/DDAStat_8h_source.html +2 -2
- package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +7 -7
- package/SVF-doxygen/html/html/DPItem_8h_source.html +6 -6
- package/SVF-doxygen/html/html/DoubleFreeChecker_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/ExeState_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/ExeState_8h_source.html +2 -2
- package/SVF-doxygen/html/html/ExtAPI_8cpp.html +9 -8
- package/SVF-doxygen/html/html/ExtAPI_8cpp_source.html +10 -9
- package/SVF-doxygen/html/html/ExtAPI_8h_source.html +3 -3
- package/SVF-doxygen/html/html/FSMPTA_8cpp_source.html +6 -6
- 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/FlowDDA_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/FlowDDA_8h_source.html +7 -7
- package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +14 -14
- package/SVF-doxygen/html/html/FlowSensitive_8h_source.html +2 -2
- package/SVF-doxygen/html/html/GenericGraph_8h_source.html +6 -6
- package/SVF-doxygen/html/html/GraphPrinter_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ICFGBuilder_8cpp_source.html +10 -10
- package/SVF-doxygen/html/html/ICFGBuilder_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ICFGEdge_8h_source.html +3 -3
- package/SVF-doxygen/html/html/ICFGNode_8h_source.html +2 -2
- package/SVF-doxygen/html/html/ICFGStat_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ICFG_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/ICFG_8h_source.html +2 -2
- package/SVF-doxygen/html/html/IRGraph_8cpp_source.html +8 -8
- package/SVF-doxygen/html/html/IRGraph_8h_source.html +1 -1
- package/SVF-doxygen/html/html/IntervalExeState_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/IntervalExeState_8h_source.html +3 -3
- package/SVF-doxygen/html/html/IntervalValue_8h_source.html +5 -5
- package/SVF-doxygen/html/html/LLVMLoopAnalysis_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/LLVMLoopAnalysis_8h.html +1 -0
- package/SVF-doxygen/html/html/LLVMLoopAnalysis_8h_source.html +3 -2
- package/SVF-doxygen/html/html/LLVMModule_8cpp_source.html +41 -41
- package/SVF-doxygen/html/html/LLVMModule_8h.html +1 -1
- package/SVF-doxygen/html/html/LLVMModule_8h_source.html +6 -6
- package/SVF-doxygen/html/html/LLVMUtil_8cpp.html +78 -1
- package/SVF-doxygen/html/html/LLVMUtil_8cpp_source.html +71 -38
- package/SVF-doxygen/html/html/LLVMUtil_8h.html +41 -7
- package/SVF-doxygen/html/html/LLVMUtil_8h_source.html +75 -50
- package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/LocationSet_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/LocationSet_8h_source.html +4 -4
- package/SVF-doxygen/html/html/LockAnalysis_8cpp_source.html +11 -11
- package/SVF-doxygen/html/html/LockAnalysis_8h_source.html +5 -5
- package/SVF-doxygen/html/html/LockResultValidator_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/MHP_8cpp_source.html +10 -10
- package/SVF-doxygen/html/html/MHP_8h_source.html +2 -2
- package/SVF-doxygen/html/html/MSSAMuChi_8h_source.html +2 -2
- package/SVF-doxygen/html/html/MTAAnnotator_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/MTAAnnotator_8h.html +3 -1
- package/SVF-doxygen/html/html/MTAAnnotator_8h_source.html +29 -27
- package/SVF-doxygen/html/html/MTAResultValidator_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/MTAStat_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/MTAStat_8h.html +1 -0
- package/SVF-doxygen/html/html/MTAStat_8h_source.html +9 -8
- package/SVF-doxygen/html/html/MTA_8cpp_source.html +13 -13
- package/SVF-doxygen/html/html/MTA_8h.html +1 -0
- package/SVF-doxygen/html/html/MTA_8h_source.html +12 -11
- package/SVF-doxygen/html/html/MemPartition_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +12 -12
- package/SVF-doxygen/html/html/MemRegion_8h_source.html +5 -5
- package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +10 -10
- package/SVF-doxygen/html/html/MemSSA_8h_source.html +4 -4
- package/SVF-doxygen/html/html/MutablePointsToDS_8h_source.html +4 -4
- package/SVF-doxygen/html/html/NodeIDAllocator_8cpp.html +1 -0
- package/SVF-doxygen/html/html/NodeIDAllocator_8cpp_source.html +23 -23
- package/SVF-doxygen/html/html/NodeIDAllocator_8h_source.html +17 -17
- package/SVF-doxygen/html/html/NumericLiteral_8h_source.html +4 -4
- package/SVF-doxygen/html/html/PAGBuilderFromFile_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/PAGBuilderFromFile_8h_source.html +2 -2
- package/SVF-doxygen/html/html/PCG_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/PTACallGraph_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/PTACallGraph_8h_source.html +4 -4
- package/SVF-doxygen/html/html/PTAStat_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/PersistentPointsToCache_8h.html +1 -0
- package/SVF-doxygen/html/html/PersistentPointsToCache_8h_source.html +43 -43
- package/SVF-doxygen/html/html/PersistentPointsToDS_8h_source.html +12 -12
- package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp.html +1 -0
- package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +24 -23
- package/SVF-doxygen/html/html/PointerAnalysisImpl_8h_source.html +22 -22
- package/SVF-doxygen/html/html/PointerAnalysis_8cpp.html +2 -1
- package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +34 -33
- package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +25 -25
- package/SVF-doxygen/html/html/PointsTo_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/PointsTo_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ProgSlice_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/ProgSlice_8h_source.html +5 -5
- package/SVF-doxygen/html/html/RelExeState_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/RelExeState_8h_source.html +4 -4
- package/SVF-doxygen/html/html/RelationSolver_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/RelationSolver_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SCC_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFGBuilder_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/SVFGEdge_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFGNode_8h_source.html +2 -2
- package/SVF-doxygen/html/html/SVFGOPT_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/SVFGOPT_8h_source.html +2 -2
- package/SVF-doxygen/html/html/SVFGReadWrite_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/SVFGStat_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/SVFGStat_8h_source.html +3 -3
- package/SVF-doxygen/html/html/SVFG_8cpp_source.html +13 -13
- package/SVF-doxygen/html/html/SVFG_8h_source.html +2 -2
- package/SVF-doxygen/html/html/SVFIR2ItvExeState_8cpp_source.html +12 -12
- package/SVF-doxygen/html/html/SVFIR2ItvExeState_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFIR2Relation_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SVFIRBuilder_8cpp.html +1 -1
- package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +35 -35
- package/SVF-doxygen/html/html/SVFIRBuilder_8h.html +1 -0
- package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +54 -53
- package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/SVFIR_8h_source.html +7 -7
- package/SVF-doxygen/html/html/SVFLoop_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/SVFStat_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/SVFStat_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/SVFStatements_8h_source.html +6 -6
- package/SVF-doxygen/html/html/SVFType_8h.html +65 -35
- package/SVF-doxygen/html/html/SVFType_8h_source.html +114 -114
- package/SVF-doxygen/html/html/SVFUtil_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/SVFUtil_8h.html +2 -3
- package/SVF-doxygen/html/html/SVFUtil_8h_source.html +36 -36
- package/SVF-doxygen/html/html/SVFValue_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/SVFValue_8h_source.html +11 -11
- package/SVF-doxygen/html/html/SVFVariables_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/SVFVariables_8h_source.html +4 -4
- package/SVF-doxygen/html/html/SaberCheckerAPI_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SaberCondAllocator_8cpp.html +2 -0
- package/SVF-doxygen/html/html/SaberCondAllocator_8cpp_source.html +37 -36
- package/SVF-doxygen/html/html/SaberCondAllocator_8h_source.html +27 -27
- package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/SparseBitVector_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SrcSnkDDA_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/SymbolTableBuilder_8cpp.html +1 -1
- package/SVF-doxygen/html/html/SymbolTableBuilder_8cpp_source.html +36 -36
- package/SVF-doxygen/html/html/SymbolTableBuilder_8h_source.html +3 -3
- package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +17 -17
- package/SVF-doxygen/html/html/SymbolTableInfo_8h_source.html +8 -8
- package/SVF-doxygen/html/html/TCT_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/TCT_8h_source.html +4 -4
- package/SVF-doxygen/html/html/ThreadAPI_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/ThreadCallGraph_8h_source.html +2 -2
- package/SVF-doxygen/html/html/TypeAnalysis_8cpp.html +1 -0
- package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +11 -10
- package/SVF-doxygen/html/html/TypeAnalysis_8h_source.html +5 -5
- package/SVF-doxygen/html/html/VFGEdge_8h_source.html +2 -2
- package/SVF-doxygen/html/html/VFGNode_8h_source.html +2 -2
- package/SVF-doxygen/html/html/VFG_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/VFG_8h_source.html +3 -3
- package/SVF-doxygen/html/html/VersionedFlowSensitiveStat_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/VersionedFlowSensitive_8h_source.html +3 -3
- package/SVF-doxygen/html/html/WPAFSSolver_8h_source.html +1 -1
- package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/WPAPass_8h_source.html +3 -3
- package/SVF-doxygen/html/html/WPASolver_8h_source.html +3 -3
- package/SVF-doxygen/html/html/WPAStat_8h_source.html +1 -1
- package/SVF-doxygen/html/html/WTO_8h_source.html +2 -2
- package/SVF-doxygen/html/html/WorkList_8h_source.html +1 -1
- package/SVF-doxygen/html/html/Z3Expr_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/Z3Expr_8h_source.html +1 -1
- package/SVF-doxygen/html/html/cfl_8cpp.html +1 -1
- package/SVF-doxygen/html/html/cfl_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ActualINSVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ActualOUTSVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1AddrStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1AddressValue.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1AliasDDAClient.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +22 -22
- package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +11 -11
- package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +10 -10
- package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1Annotator.html +39 -39
- package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +49 -49
- package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1BinaryOPVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1BranchStmt.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1BranchVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CFGNormalizer.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1CFLAlias.html +15 -15
- package/SVF-doxygen/html/html/classSVF_1_1CFLBase.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1CFLData.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CFLGraph.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CFLVF.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1CHGBuilder.html +63 -63
- package/SVF-doxygen/html/html/classSVF_1_1CHGraph.html +22 -22
- package/SVF-doxygen/html/html/classSVF_1_1CHNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CSC.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1CallCFGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CallCHI.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CallGraphBuilder.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CallICFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CallMU.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CallPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CmpStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CmpVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl.html +9 -9
- package/SVF-doxygen/html/html/classSVF_1_1ConstraintGraph.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1ContextCond.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +23 -23
- package/SVF-doxygen/html/html/classSVF_1_1CopyStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CoreBitVector.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CxtDPItem.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CxtProc.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CxtStmt.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CxtStmtDPItem.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CxtThread.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CxtThreadProc.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CxtThreadStmt.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1DCHEdge.html +14 -14
- package/SVF-doxygen/html/html/classSVF_1_1DCHGraph.html +124 -124
- package/SVF-doxygen/html/html/classSVF_1_1DCHNode.html +66 -66
- package/SVF-doxygen/html/html/classSVF_1_1DDAClient.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1DDAStat.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1DDAVFSolver.html +35 -35
- package/SVF-doxygen/html/html/classSVF_1_1DPItem.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1DoubleFreeChecker.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1EntryCHI.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ExeState.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1ExtAPI.html +9 -9
- package/SVF-doxygen/html/html/classSVF_1_1FIObjVar.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FSMPTA.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FileChecker.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +17 -17
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +32 -32
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1ForkJoinAnalysis.html +15 -15
- package/SVF-doxygen/html/html/classSVF_1_1FunEntryICFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FunExitICFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FunptrDDAClient.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1GepObjVar.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1GepStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1GepValVar.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1GrammarBase.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1GrammarBase_1_1SymbolHash.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ICFG.html +10 -10
- package/SVF-doxygen/html/html/classSVF_1_1ICFGBuilder.html +15 -15
- package/SVF-doxygen/html/html/classSVF_1_1ICFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ICFGStat.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IRGraph.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1InterMSSAPHISVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1InterPHIVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IntervalExeState.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1IntervalValue.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IntraCFGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IntraICFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IntraPHIVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1LLVMLoopAnalysis.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet.html +70 -70
- package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +11 -11
- package/SVF-doxygen/html/html/classSVF_1_1LoadMU.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1LoadStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1LocationSet.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +47 -47
- package/SVF-doxygen/html/html/classSVF_1_1LockResultValidator.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1MHP.html +35 -35
- package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +23 -23
- package/SVF-doxygen/html/html/classSVF_1_1MSSACHI.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1MSSADEF.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1MSSAMU.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1MSSAPHI.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1MTA.html +38 -38
- package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +77 -77
- package/SVF-doxygen/html/html/classSVF_1_1MTAResultValidator.html +13 -13
- package/SVF-doxygen/html/html/classSVF_1_1MTASVFGBuilder.html +11 -11
- package/SVF-doxygen/html/html/classSVF_1_1MTAStat.html +19 -19
- package/SVF-doxygen/html/html/classSVF_1_1MemObj.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +29 -29
- package/SVF-doxygen/html/html/classSVF_1_1MemSSAStat.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1MutableDFPTData.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1MutablePTData.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1MutableVersionedPTData.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1NodeIDAllocator.html +15 -15
- package/SVF-doxygen/html/html/classSVF_1_1NodeIDAllocator_1_1Clusterer.html +43 -43
- package/SVF-doxygen/html/html/classSVF_1_1NumericLiteral.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1ObjTypeInfo.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1ObjVar.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1PAGBuilderFromFile.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1PCG.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1PHIVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1POCRAlias.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1PTACallGraph.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphEdge.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1PersistentDFPTData.html +9 -9
- package/SVF-doxygen/html/html/classSVF_1_1PersistentDiffPTData.html +10 -10
- package/SVF-doxygen/html/html/classSVF_1_1PersistentIncDFPTData.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1PersistentPTData.html +19 -19
- package/SVF-doxygen/html/html/classSVF_1_1PersistentPointsToCache.html +141 -141
- package/SVF-doxygen/html/html/classSVF_1_1PersistentVersionedPTData.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1PhiStmt.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +78 -78
- package/SVF-doxygen/html/html/classSVF_1_1PointsTo.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1PointsTo_1_1PointsToIterator.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1ProgSlice.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1RaceResultValidator.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1RelExeState.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1RelationSolver.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1RetCFGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1RetMU.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1RetPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SVFArrayType.html +6 -7
- package/SVF-doxygen/html/html/classSVF_1_1SVFBasicBlock.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1SVFFunction.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SVFFunctionType.html +9 -10
- package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +10 -10
- package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1SVFGStat.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1SVFIR.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1SVFIR2ItvExeState.html +30 -30
- package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +352 -352
- package/SVF-doxygen/html/html/classSVF_1_1SVFIntergerType.html +5 -6
- package/SVF-doxygen/html/html/classSVF_1_1SVFModule.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SVFOtherType.html +4 -5
- package/SVF-doxygen/html/html/classSVF_1_1SVFPointerType.html +9 -10
- package/SVF-doxygen/html/html/classSVF_1_1SVFStat.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1SVFStmt.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1SVFStructType.html +5 -6
- package/SVF-doxygen/html/html/classSVF_1_1SVFType.html +40 -42
- package/SVF-doxygen/html/html/classSVF_1_1SVFValue.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1SVFVar.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1SaberCheckerAPI.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1SaberCondAllocator.html +95 -95
- package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1SelectStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SparseBitVector.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA.html +14 -14
- package/SVF-doxygen/html/html/classSVF_1_1StInfo.html +44 -44
- package/SVF-doxygen/html/html/classSVF_1_1StmtDPItem.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1StoreCHI.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1StoreStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder.html +71 -71
- package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo.html +23 -23
- package/SVF-doxygen/html/html/classSVF_1_1TCT.html +22 -22
- package/SVF-doxygen/html/html/classSVF_1_1TCTNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1TDForkPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ThreadAPI.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +18 -18
- package/SVF-doxygen/html/html/classSVF_1_1UnaryOPStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1UnaryOPVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1VFG.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1ValVar.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +20 -20
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1WPAFSSolver.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1WPAMinimumSolver.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1WPASCCSolver.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1WPASolver.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1Wto.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1WtoCycle.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1iter__adaptor__base.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1iter__facade__base_1_1ReferenceProxy.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1iter__range.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1mapped__iter.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1pointer__iterator.html +1 -1
- package/SVF-doxygen/html/html/dda_8cpp.html +1 -1
- package/SVF-doxygen/html/html/dda_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/dir_862d3276083eaac55caed79b9120bf29.html +2 -0
- package/SVF-doxygen/html/html/dir_95e22971b5dbae2382075a3453e365b4.html +2 -0
- package/SVF-doxygen/html/html/dir_967d846b666a902c6ca9bc5c37976e49.html +0 -2
- package/SVF-doxygen/html/html/dir_a07347b69f031d2f872c9d4a9c274c8c.html +0 -2
- package/SVF-doxygen/html/html/files.html +41 -41
- package/SVF-doxygen/html/html/functions_func_i.html +3 -3
- package/SVF-doxygen/html/html/functions_g.html +1 -1
- package/SVF-doxygen/html/html/functions_i.html +3 -3
- package/SVF-doxygen/html/html/functions_n.html +4 -4
- package/SVF-doxygen/html/html/functions_o.html +15 -13
- package/SVF-doxygen/html/html/functions_s.html +7 -7
- package/SVF-doxygen/html/html/functions_t.html +9 -9
- package/SVF-doxygen/html/html/functions_v.html +3 -3
- package/SVF-doxygen/html/html/globals_c.html +1 -1
- package/SVF-doxygen/html/html/globals_d.html +3 -0
- package/SVF-doxygen/html/html/globals_defs.html +3 -0
- package/SVF-doxygen/html/html/globals_func.html +3 -3
- package/SVF-doxygen/html/html/globals_g.html +1 -1
- package/SVF-doxygen/html/html/globals_h.html +1 -1
- package/SVF-doxygen/html/html/globals_i.html +1 -1
- package/SVF-doxygen/html/html/globals_n.html +1 -1
- package/SVF-doxygen/html/html/globals_s.html +1 -1
- package/SVF-doxygen/html/html/globals_v.html +4 -4
- package/SVF-doxygen/html/html/globals_vars.html +7 -7
- package/SVF-doxygen/html/html/include_2MTA_2MTAResultValidator_8h_source.html +4 -4
- package/SVF-doxygen/html/html/iterator_8h_source.html +1 -1
- package/SVF-doxygen/html/html/iterator__range_8h_source.html +1 -1
- package/SVF-doxygen/html/html/mta_8cpp.html +4 -4
- package/SVF-doxygen/html/html/mta_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/namespaceSVF.html +53 -53
- package/SVF-doxygen/html/html/namespaceSVF_1_1LLVMUtil.html +620 -150
- package/SVF-doxygen/html/html/namespaceSVF_1_1SVFUtil.html +95 -125
- package/SVF-doxygen/html/html/namespaceSVF_1_1cppUtil.html +27 -440
- package/SVF-doxygen/html/html/namespaceSVF_1_1cppUtil_1_1ctir.html +4 -4
- package/SVF-doxygen/html/html/namespacemembers_d.html +1 -1
- package/SVF-doxygen/html/html/namespacemembers_func_d.html +1 -1
- package/SVF-doxygen/html/html/namespacemembers_func_g.html +10 -10
- package/SVF-doxygen/html/html/namespacemembers_func_i.html +9 -8
- package/SVF-doxygen/html/html/namespacemembers_func_v.html +1 -1
- package/SVF-doxygen/html/html/namespacemembers_g.html +10 -10
- package/SVF-doxygen/html/html/namespacemembers_i.html +9 -8
- package/SVF-doxygen/html/html/namespacemembers_n.html +1 -1
- package/SVF-doxygen/html/html/namespacemembers_type_n.html +1 -1
- package/SVF-doxygen/html/html/namespacemembers_v.html +1 -1
- package/SVF-doxygen/html/html/saber_8cpp.html +1 -1
- package/SVF-doxygen/html/html/saber_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/search/all_10.js +1 -1
- package/SVF-doxygen/html/html/search/all_12.js +6 -6
- package/SVF-doxygen/html/html/search/all_13.js +5 -5
- package/SVF-doxygen/html/html/search/all_15.js +7 -7
- package/SVF-doxygen/html/html/search/all_16.js +1 -1
- package/SVF-doxygen/html/html/search/all_3.js +3 -3
- package/SVF-doxygen/html/html/search/all_4.js +2 -1
- package/SVF-doxygen/html/html/search/all_7.js +12 -12
- package/SVF-doxygen/html/html/search/all_8.js +1 -1
- package/SVF-doxygen/html/html/search/all_9.js +10 -10
- package/SVF-doxygen/html/html/search/all_b.js +1 -1
- package/SVF-doxygen/html/html/search/all_e.js +3 -3
- package/SVF-doxygen/html/html/search/all_f.js +2 -2
- package/SVF-doxygen/html/html/search/defines_3.js +1 -0
- package/SVF-doxygen/html/html/search/files_2.js +2 -2
- package/SVF-doxygen/html/html/search/functions_14.js +1 -1
- package/SVF-doxygen/html/html/search/functions_3.js +1 -1
- package/SVF-doxygen/html/html/search/functions_6.js +12 -12
- package/SVF-doxygen/html/html/search/functions_7.js +1 -1
- package/SVF-doxygen/html/html/search/functions_8.js +10 -10
- package/SVF-doxygen/html/html/search/typedefs_c.js +1 -1
- package/SVF-doxygen/html/html/search/variables_12.js +1 -1
- package/SVF-doxygen/html/html/search/variables_13.js +2 -2
- package/SVF-doxygen/html/html/search/variables_15.js +4 -4
- package/SVF-doxygen/html/html/search/variables_3.js +1 -1
- package/SVF-doxygen/html/html/search/variables_e.js +1 -1
- package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01CHGraph_01_5_01_4.html +12 -12
- package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4-members.html +1 -1
- package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html +26 -16
- package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4-members.html +1 -1
- package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4.html +25 -15
- package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01PTACallGraph_01_5_01_4.html +1 -1
- package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01SVFG_01_5_01_4-members.html +1 -1
- package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01SVFG_01_5_01_4.html +29 -19
- package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1DCHNode_01_5_01_4_01_4.html +1 -1
- package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1DCHGraph_01_5_01_4.html +2 -2
- package/SVF-doxygen/html/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1DCHNode_01_5_01_4.html +1 -1
- package/SVF-doxygen/html/html/structSVF_1_1GrammarBase_1_1Symbol.html +2 -2
- package/SVF-doxygen/html/html/structSVF_1_1Hash.html +3 -3
- package/SVF-doxygen/html/html/structSVF_1_1Hash_3_01NodePair_01_4.html +3 -3
- package/SVF-doxygen/html/html/structSVF_1_1Hash_3_01std_1_1pair_3_01S_00_01T_01_4_01_4.html +5 -5
- package/SVF-doxygen/html/html/structSVF_1_1MemRegion_1_1equalMemRegion.html +1 -1
- package/SVF-doxygen/html/html/structSVF_1_1SVFUtil_1_1equalNodeBS.html +3 -3
- package/SVF-doxygen/html/html/structSVF_1_1SVFUtil_1_1equalPointsTo.html +3 -3
- package/SVF-doxygen/html/html/structSVF_1_1cppUtil_1_1DemangledName.html +6 -6
- package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CondStdSet_3_01Element_01_4_01_4.html +1 -1
- package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CxtDPItem_01_4.html +1 -1
- package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CxtStmtDPItem_3_01LocCond_01_4_01_4.html +1 -1
- package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1LocationSet_01_4.html +1 -1
- package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1NodePair_01_4.html +3 -3
- package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1SparseBitVector_3_01N_01_4_01_4.html +4 -4
- package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1StmtDPItem_3_01LocCond_01_4_01_4.html +1 -1
- package/SVF-doxygen/html/html/structstd_1_1hash_3_01std_1_1vector_3_01T_01_4_01_4.html +3 -3
- package/SVF-doxygen/html/html/svf-ex_8cpp.html +2 -2
- package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/tools_2MTA_2MTAResultValidator_8h_source.html +4 -4
- package/SVF-doxygen/html/html/wpa_8cpp.html +1 -1
- package/SVF-doxygen/html/html/wpa_8cpp_source.html +1 -1
- package/include/MTA/MTA.h +1 -0
- package/include/MTA/MTAStat.h +1 -0
- package/include/MemoryModel/PersistentPointsToCache.h +1 -0
- package/include/SVF-LLVM/DCHG.h +2 -1
- package/include/SVF-LLVM/LLVMLoopAnalysis.h +1 -0
- package/include/SVF-LLVM/LLVMModule.h +2 -2
- package/include/SVF-LLVM/LLVMUtil.h +135 -79
- package/include/SVF-LLVM/SVFIRBuilder.h +1 -0
- package/include/SVFIR/PAGBuilderFromFile.h +3 -3
- package/include/SVFIR/SVFIR.h +3 -3
- package/include/SVFIR/SVFModule.h +3 -3
- package/include/SVFIR/SVFStatements.h +3 -3
- package/include/SVFIR/SVFType.h +120 -103
- package/include/SVFIR/SVFValue.h +3 -3
- package/include/SVFIR/SVFVariables.h +3 -3
- package/include/SVFIR/SymbolTableInfo.h +3 -3
- package/include/Util/Annotator.h +8 -17
- package/include/{SVF-LLVM/CPPUtil.h → Util/CppUtil.h} +5 -54
- package/include/Util/SVFUtil.h +3 -9
- package/index.html +9 -5
- package/lib/CFL/CFLAlias.cpp +1 -1
- package/lib/CFL/CFLVF.cpp +1 -0
- package/lib/Graphs/CHG.cpp +1 -0
- package/lib/Graphs/ConsG.cpp +0 -5
- package/lib/Graphs/IRGraph.cpp +0 -5
- package/lib/Graphs/SVFG.cpp +0 -5
- package/lib/MemoryModel/PointerAnalysis.cpp +1 -0
- package/lib/MemoryModel/PointerAnalysisImpl.cpp +1 -0
- package/lib/SABER/SaberCondAllocator.cpp +2 -0
- package/lib/SVF-LLVM/CHGBuilder.cpp +10 -10
- package/lib/SVF-LLVM/DCHG.cpp +1 -1
- package/lib/SVF-LLVM/LLVMModule.cpp +4 -4
- package/lib/SVF-LLVM/LLVMUtil.cpp +362 -4
- package/lib/SVF-LLVM/SVFIRBuilder.cpp +2 -2
- package/lib/SVF-LLVM/SymbolTableBuilder.cpp +1 -1
- package/lib/Util/CppUtil.cpp +214 -0
- package/lib/Util/ExtAPI.cpp +1 -1
- package/lib/Util/NodeIDAllocator.cpp +3 -2
- package/lib/WPA/TypeAnalysis.cpp +1 -0
- package/package.json +1 -1
- package/tools/MTA/MTAAnnotator.h +2 -0
- package/lib/SVF-LLVM/CPPUtil.cpp +0 -572
|
@@ -680,7 +680,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
680
680
|
|
|
681
681
|
<p class="definition">Definition at line <a class="el" href="SVFStatements_8cpp_source.html#l00143">143</a> of file <a class="el" href="SVFStatements_8cpp_source.html">SVFStatements.cpp</a>.</p>
|
|
682
682
|
<div class="fragment"><div class="line"><a name="l00144"></a><span class="lineno"> 144</span> {</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>  std::stringstream rawstr(str);</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>  rawstr << <span class="stringliteral">"BinaryOPStmt: [Var"</span> << <a class="code" href="classSVF_1_1MultiOpndStmt.html#a71a530eb9fa9f7e273e471b4a75a039e">getResID</a>() << <span class="stringliteral">" <-- (Var"</span> << <a class="code" href="classSVF_1_1MultiOpndStmt.html#a5c6efcc023e90ef2e618586091958c59">getOpVarID</a>(0) << <span class="stringliteral">" opcode"</span> << <a class="code" href="classSVF_1_1BinaryOPStmt.html#ad0a7c5e87355d7a83176343322db448f">getOpcode</a>() << <span class="stringliteral">" Var"</span> << <a class="code" href="classSVF_1_1MultiOpndStmt.html#a5c6efcc023e90ef2e618586091958c59">getOpVarID</a>(1) << <span class="stringliteral">")]\t"</span>;</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a424a44f39a43b22434dbdce26007a353">Options::ShowSVFIRValue</a>())</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>  {</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>  rawstr << <span class="stringliteral">"\n"</span>;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>  rawstr << <a class="code" href="classSVF_1_1SVFStmt.html#abb784290c90d26f35897fa15bae277d2">getValue</a>()-><a class="code" href="classSVF_1_1SVFValue.html#aa678ca4616a3e69b53726b33d0b9c5a2">toString</a>();</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>  }</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>  <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span> }</div><div class="ttc" id="classSVF_1_1BinaryOPStmt_html_ad0a7c5e87355d7a83176343322db448f"><div class="ttname"><a href="classSVF_1_1BinaryOPStmt.html#ad0a7c5e87355d7a83176343322db448f">SVF::BinaryOPStmt::getOpcode</a></div><div class="ttdeci">u32_t getOpcode() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00922">SVFStatements.h:922</a></div></div>
|
|
683
|
-
<div class="ttc" id="classSVF_1_1SVFValue_html_aa678ca4616a3e69b53726b33d0b9c5a2"><div class="ttname"><a href="classSVF_1_1SVFValue.html#aa678ca4616a3e69b53726b33d0b9c5a2">SVF::SVFValue::toString</a></div><div class="ttdeci">virtual const std::string toString() const</div><div class="ttdoc">Needs to be implemented by a specific SVF front end (e.g., the implementation in LLVMUtil) ...</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#
|
|
683
|
+
<div class="ttc" id="classSVF_1_1SVFValue_html_aa678ca4616a3e69b53726b33d0b9c5a2"><div class="ttname"><a href="classSVF_1_1SVFValue.html#aa678ca4616a3e69b53726b33d0b9c5a2">SVF::SVFValue::toString</a></div><div class="ttdeci">virtual const std::string toString() const</div><div class="ttdoc">Needs to be implemented by a specific SVF front end (e.g., the implementation in LLVMUtil) ...</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l01033">LLVMUtil.cpp:1033</a></div></div>
|
|
684
684
|
<div class="ttc" id="classSVF_1_1SVFStmt_html_abb784290c90d26f35897fa15bae277d2"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#abb784290c90d26f35897fa15bae277d2">SVF::SVFStmt::getValue</a></div><div class="ttdeci">const SVFValue * getValue() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00120">SVFStatements.h:120</a></div></div>
|
|
685
685
|
<div class="ttc" id="classSVF_1_1MultiOpndStmt_html_a71a530eb9fa9f7e273e471b4a75a039e"><div class="ttname"><a href="classSVF_1_1MultiOpndStmt.html#a71a530eb9fa9f7e273e471b4a75a039e">SVF::MultiOpndStmt::getResID</a></div><div class="ttdeci">NodeID getResID() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8cpp_source.html#l00287">SVFStatements.cpp:287</a></div></div>
|
|
686
686
|
<div class="ttc" id="cJSON_8h_html_ad4c68ea99a26b0a98ad9a79982960458"><div class="ttname"><a href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">string</a></div><div class="ttdeci">const char *const string</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00172">cJSON.h:172</a></div></div>
|
|
@@ -808,7 +808,7 @@ Private Member Functions</h2></td></tr>
|
|
|
808
808
|
<p class="definition">Definition at line <a class="el" href="VFG_8cpp_source.html#l00142">142</a> of file <a class="el" href="VFG_8cpp_source.html">VFG.cpp</a>.</p>
|
|
809
809
|
<div class="fragment"><div class="line"><a name="l00143"></a><span class="lineno"> 143</span> {</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>  std::stringstream rawstr(str);</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>  rawstr << <span class="stringliteral">"BinaryOPVFGNode ID: "</span> << <a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>() << <span class="stringliteral">" "</span>;</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>  rawstr << <span class="stringliteral">"PAGEdge: ["</span> << <a class="code" href="classSVF_1_1BinaryOPVFGNode.html#a01ca492acb9b769eb6e1fe2137dff47d">res</a>-><a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>() << <span class="stringliteral">" = Binary("</span>;</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>  <span class="keywordflow">for</span>(BinaryOPVFGNode::OPVers::const_iterator it = <a class="code" href="classSVF_1_1BinaryOPVFGNode.html#adaff45c46c4cc8158bd3147d304deab5">opVerBegin</a>(), eit = <a class="code" href="classSVF_1_1BinaryOPVFGNode.html#aed5a32d1a145df7007ba7d934e4c2bd4">opVerEnd</a>();</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>  it != eit; it++)</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>  rawstr << it->second->getId() << <span class="stringliteral">", "</span>;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>  rawstr << <span class="stringliteral">")]\t"</span>;</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>  <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1BinaryOPVFGNode.html#a01ca492acb9b769eb6e1fe2137dff47d">res</a>-><a class="code" href="classSVF_1_1SVFVar.html#a1ace69053c2c4436fd78d5624bd0086a">hasValue</a>())</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>  {</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>  rawstr << <span class="stringliteral">" "</span> << <a class="code" href="classSVF_1_1BinaryOPVFGNode.html#a01ca492acb9b769eb6e1fe2137dff47d">res</a>-><a class="code" href="classSVF_1_1SVFVar.html#ac2db6304ea5526fb446ae882983beeb0">getValue</a>()-><a class="code" href="classSVF_1_1SVFValue.html#aa678ca4616a3e69b53726b33d0b9c5a2">toString</a>();</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>  }</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>  <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span> }</div><div class="ttc" id="classSVF_1_1SVFVar_html_ac2db6304ea5526fb446ae882983beeb0"><div class="ttname"><a href="classSVF_1_1SVFVar.html#ac2db6304ea5526fb446ae882983beeb0">SVF::SVFVar::getValue</a></div><div class="ttdeci">const SVFValue * getValue() const</div><div class="ttdoc">Get/has methods of the components. </div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00091">SVFVariables.h:91</a></div></div>
|
|
810
810
|
<div class="ttc" id="classSVF_1_1BinaryOPVFGNode_html_adaff45c46c4cc8158bd3147d304deab5"><div class="ttname"><a href="classSVF_1_1BinaryOPVFGNode.html#adaff45c46c4cc8158bd3147d304deab5">SVF::BinaryOPVFGNode::opVerBegin</a></div><div class="ttdeci">OPVers::const_iterator opVerBegin() const</div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00446">VFGNode.h:446</a></div></div>
|
|
811
|
-
<div class="ttc" id="classSVF_1_1SVFValue_html_aa678ca4616a3e69b53726b33d0b9c5a2"><div class="ttname"><a href="classSVF_1_1SVFValue.html#aa678ca4616a3e69b53726b33d0b9c5a2">SVF::SVFValue::toString</a></div><div class="ttdeci">virtual const std::string toString() const</div><div class="ttdoc">Needs to be implemented by a specific SVF front end (e.g., the implementation in LLVMUtil) ...</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#
|
|
811
|
+
<div class="ttc" id="classSVF_1_1SVFValue_html_aa678ca4616a3e69b53726b33d0b9c5a2"><div class="ttname"><a href="classSVF_1_1SVFValue.html#aa678ca4616a3e69b53726b33d0b9c5a2">SVF::SVFValue::toString</a></div><div class="ttdeci">virtual const std::string toString() const</div><div class="ttdoc">Needs to be implemented by a specific SVF front end (e.g., the implementation in LLVMUtil) ...</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l01033">LLVMUtil.cpp:1033</a></div></div>
|
|
812
812
|
<div class="ttc" id="classSVF_1_1SVFVar_html_a1ace69053c2c4436fd78d5624bd0086a"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a1ace69053c2c4436fd78d5624bd0086a">SVF::SVFVar::hasValue</a></div><div class="ttdeci">bool hasValue() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00107">SVFVariables.h:107</a></div></div>
|
|
813
813
|
<div class="ttc" id="classSVF_1_1BinaryOPVFGNode_html_a01ca492acb9b769eb6e1fe2137dff47d"><div class="ttname"><a href="classSVF_1_1BinaryOPVFGNode.html#a01ca492acb9b769eb6e1fe2137dff47d">SVF::BinaryOPVFGNode::res</a></div><div class="ttdeci">const PAGNode * res</div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00400">VFGNode.h:400</a></div></div>
|
|
814
814
|
<div class="ttc" id="classSVF_1_1GenericNode_html_ac3e55ef37aefb411ea4c87b1aa3b1895"><div class="ttname"><a href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">SVF::GenericNode::getId</a></div><div class="ttdeci">NodeID getId() const</div><div class="ttdoc">Get ID. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00171">GenericGraph.h:171</a></div></div>
|
|
@@ -876,9 +876,9 @@ Additional Inherited Members</h2></td></tr>
|
|
|
876
876
|
|
|
877
877
|
<p class="definition">Definition at line <a class="el" href="SVFStatements_8cpp_source.html#l00169">169</a> of file <a class="el" href="SVFStatements_8cpp_source.html">SVFStatements.cpp</a>.</p>
|
|
878
878
|
<div class="fragment"><div class="line"><a name="l00170"></a><span class="lineno"> 170</span> {</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>  std::stringstream rawstr(str);</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>  <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1BranchStmt.html#a71e7e95f095a937c900d049991312901">isConditional</a>())</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>  rawstr << <span class="stringliteral">"BranchStmt: [Condition Var"</span> << <a class="code" href="classSVF_1_1BranchStmt.html#a915384027ae53e99311f05a08edf99f0">getCondition</a>()-><a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>() << <span class="stringliteral">"]\n"</span>;</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>  rawstr << <span class="stringliteral">"BranchStmt: ["</span> << <span class="stringliteral">" Unconditional branch"</span> << <span class="stringliteral">"]\n"</span>;</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span> </div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>  <span class="keywordflow">for</span>(<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> i = 0; i < <a class="code" href="classSVF_1_1BranchStmt.html#a022d355bde3d0d0a9471cd125b24583b">getNumSuccessors</a>(); i++)</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>  rawstr << <span class="stringliteral">"Successor "</span> << i << <span class="stringliteral">" ICFGNode"</span> << <a class="code" href="classSVF_1_1BranchStmt.html#a7d9a6ebb2d95942c453864b5327b1ae8">getSuccessor</a>(i)-><a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>() << <span class="stringliteral">" "</span>;</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span> </div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a424a44f39a43b22434dbdce26007a353">Options::ShowSVFIRValue</a>())</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>  {</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>  rawstr << <span class="stringliteral">"\n"</span>;</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>  rawstr << <a class="code" href="classSVF_1_1SVFStmt.html#abb784290c90d26f35897fa15bae277d2">getValue</a>()-><a class="code" href="classSVF_1_1SVFValue.html#aa678ca4616a3e69b53726b33d0b9c5a2">toString</a>();</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>  }</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>  <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span> }</div><div class="ttc" id="classSVF_1_1BranchStmt_html_a71e7e95f095a937c900d049991312901"><div class="ttname"><a href="classSVF_1_1BranchStmt.html#a71e7e95f095a937c900d049991312901">SVF::BranchStmt::isConditional</a></div><div class="ttdeci">bool isConditional() const</div><div class="ttdoc">The branch is conditional if cond is not a null value. </div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8cpp_source.html#l00315">SVFStatements.cpp:315</a></div></div>
|
|
879
|
-
<div class="ttc" id="namespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#
|
|
879
|
+
<div class="ttc" id="namespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00049">SVFType.h:49</a></div></div>
|
|
880
880
|
<div class="ttc" id="classSVF_1_1BranchStmt_html_a7d9a6ebb2d95942c453864b5327b1ae8"><div class="ttname"><a href="classSVF_1_1BranchStmt.html#a7d9a6ebb2d95942c453864b5327b1ae8">SVF::BranchStmt::getSuccessor</a></div><div class="ttdeci">const ICFGNode * getSuccessor(u32_t i) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l01058">SVFStatements.h:1058</a></div></div>
|
|
881
|
-
<div class="ttc" id="classSVF_1_1SVFValue_html_aa678ca4616a3e69b53726b33d0b9c5a2"><div class="ttname"><a href="classSVF_1_1SVFValue.html#aa678ca4616a3e69b53726b33d0b9c5a2">SVF::SVFValue::toString</a></div><div class="ttdeci">virtual const std::string toString() const</div><div class="ttdoc">Needs to be implemented by a specific SVF front end (e.g., the implementation in LLVMUtil) ...</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#
|
|
881
|
+
<div class="ttc" id="classSVF_1_1SVFValue_html_aa678ca4616a3e69b53726b33d0b9c5a2"><div class="ttname"><a href="classSVF_1_1SVFValue.html#aa678ca4616a3e69b53726b33d0b9c5a2">SVF::SVFValue::toString</a></div><div class="ttdeci">virtual const std::string toString() const</div><div class="ttdoc">Needs to be implemented by a specific SVF front end (e.g., the implementation in LLVMUtil) ...</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l01033">LLVMUtil.cpp:1033</a></div></div>
|
|
882
882
|
<div class="ttc" id="classSVF_1_1SVFStmt_html_abb784290c90d26f35897fa15bae277d2"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#abb784290c90d26f35897fa15bae277d2">SVF::SVFStmt::getValue</a></div><div class="ttdeci">const SVFValue * getValue() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00120">SVFStatements.h:120</a></div></div>
|
|
883
883
|
<div class="ttc" id="classSVF_1_1BranchStmt_html_a915384027ae53e99311f05a08edf99f0"><div class="ttname"><a href="classSVF_1_1BranchStmt.html#a915384027ae53e99311f05a08edf99f0">SVF::BranchStmt::getCondition</a></div><div class="ttdeci">const SVFVar * getCondition() const</div><div class="ttdoc">Return the condition. </div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8cpp_source.html#l00320">SVFStatements.cpp:320</a></div></div>
|
|
884
884
|
<div class="ttc" id="classSVF_1_1GenericNode_html_ac3e55ef37aefb411ea4c87b1aa3b1895"><div class="ttname"><a href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">SVF::GenericNode::getId</a></div><div class="ttdeci">NodeID getId() const</div><div class="ttdoc">Get ID. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00171">GenericGraph.h:171</a></div></div>
|
|
@@ -533,7 +533,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
533
533
|
<p>Implements <a class="el" href="classSVF_1_1VFGNode.html#ac2161154777d5bedfdb541658efdc651">SVF::VFGNode</a>.</p>
|
|
534
534
|
|
|
535
535
|
<p class="definition">Definition at line <a class="el" href="VFG_8cpp_source.html#l00183">183</a> of file <a class="el" href="VFG_8cpp_source.html">VFG.cpp</a>.</p>
|
|
536
|
-
<div class="fragment"><div class="line"><a name="l00184"></a><span class="lineno"> 184</span> {</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>  <span class="keywordflow">return</span> <a class="code" href="namespaceSVF.html#aa7b6a13e52671de8524b130738aeb564">NodeBS</a>();</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span> }</div><div class="ttc" id="namespaceSVF_html_aa7b6a13e52671de8524b130738aeb564"><div class="ttname"><a href="namespaceSVF.html#aa7b6a13e52671de8524b130738aeb564">SVF::NodeBS</a></div><div class="ttdeci">SparseBitVector NodeBS</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#
|
|
536
|
+
<div class="fragment"><div class="line"><a name="l00184"></a><span class="lineno"> 184</span> {</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>  <span class="keywordflow">return</span> <a class="code" href="namespaceSVF.html#aa7b6a13e52671de8524b130738aeb564">NodeBS</a>();</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span> }</div><div class="ttc" id="namespaceSVF_html_aa7b6a13e52671de8524b130738aeb564"><div class="ttname"><a href="namespaceSVF.html#aa7b6a13e52671de8524b130738aeb564">SVF::NodeBS</a></div><div class="ttdeci">SparseBitVector NodeBS</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00060">SVFType.h:60</a></div></div>
|
|
537
537
|
</div><!-- fragment -->
|
|
538
538
|
</div>
|
|
539
539
|
</div>
|
|
@@ -208,7 +208,7 @@ Private Member Functions</h2></td></tr>
|
|
|
208
208
|
</div><div class="memdoc">
|
|
209
209
|
|
|
210
210
|
<p class="definition">Definition at line <a class="el" href="CFGNormalizer_8cpp_source.html#l00457">457</a> of file <a class="el" href="CFGNormalizer_8cpp_source.html">CFGNormalizer.cpp</a>.</p>
|
|
211
|
-
<div class="fragment"><div class="line"><a name="l00458"></a><span class="lineno"> 458</span> {</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>  <span class="keywordflow">for</span>(<span class="keyword">auto</span> symProdPair: grammar)</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>  {</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>  <span class="keywordflow">for</span>(<span class="keyword">auto</span> prod: symProdPair.second)</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>  {</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>  <span class="keywordflow">if</span> (rule == prod)</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>  {</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>  <span class="keywordflow">return</span> symProdPair.first;</div><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>  }</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>  }</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>  }</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>  <a class="code" href="structSVF_1_1GrammarBase_1_1Symbol.html">GrammarBase::Symbol</a> symbol = <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a>(-1);</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>  <span class="keywordflow">return</span> symbol;</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span> }</div><div class="ttc" id="namespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#
|
|
211
|
+
<div class="fragment"><div class="line"><a name="l00458"></a><span class="lineno"> 458</span> {</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>  <span class="keywordflow">for</span>(<span class="keyword">auto</span> symProdPair: grammar)</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>  {</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>  <span class="keywordflow">for</span>(<span class="keyword">auto</span> prod: symProdPair.second)</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>  {</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>  <span class="keywordflow">if</span> (rule == prod)</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>  {</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>  <span class="keywordflow">return</span> symProdPair.first;</div><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>  }</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>  }</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>  }</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>  <a class="code" href="structSVF_1_1GrammarBase_1_1Symbol.html">GrammarBase::Symbol</a> symbol = <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a>(-1);</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>  <span class="keywordflow">return</span> symbol;</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span> }</div><div class="ttc" id="namespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00049">SVFType.h:49</a></div></div>
|
|
212
212
|
<div class="ttc" id="structSVF_1_1GrammarBase_1_1Symbol_html"><div class="ttname"><a href="structSVF_1_1GrammarBase_1_1Symbol.html">SVF::GrammarBase::Symbol</a></div><div class="ttdef"><b>Definition:</b> <a href="CFLGrammar_8h_source.html#l00042">CFLGrammar.h:42</a></div></div>
|
|
213
213
|
</div><!-- fragment -->
|
|
214
214
|
</div>
|
|
@@ -245,7 +245,7 @@ Private Member Functions</h2></td></tr>
|
|
|
245
245
|
<div class="ttc" id="classSVF_1_1GrammarBase_html_a4561438149716c91178ea013686f66ae"><div class="ttname"><a href="classSVF_1_1GrammarBase.html#a4561438149716c91178ea013686f66ae">SVF::GrammarBase::getRawProductions</a></div><div class="ttdeci">SymbolMap< Symbol, Productions > & getRawProductions()</div><div class="ttdef"><b>Definition:</b> <a href="CFLGrammar_8h_source.html#l00190">CFLGrammar.h:190</a></div></div>
|
|
246
246
|
<div class="ttc" id="classSVF_1_1CFLGrammar_html_a2494806a1282de3d7f6b588f7d6cc83e"><div class="ttname"><a href="classSVF_1_1CFLGrammar.html#a2494806a1282de3d7f6b588f7d6cc83e">SVF::CFLGrammar::num_generator</a></div><div class="ttdeci">const u32_t num_generator()</div><div class="ttdef"><b>Definition:</b> <a href="CFLGrammar_8h_source.html#l00388">CFLGrammar.h:388</a></div></div>
|
|
247
247
|
<div class="ttc" id="classSVF_1_1GrammarBase_html_a4405933cc8ed8cf30b98ee16fc14c112"><div class="ttname"><a href="classSVF_1_1GrammarBase.html#a4405933cc8ed8cf30b98ee16fc14c112">SVF::GrammarBase::SymbolMap</a></div><div class="ttdeci">std::unordered_map< Key, Value, Hash, KeyEqual, Allocator > SymbolMap</div><div class="ttdef"><b>Definition:</b> <a href="CFLGrammar_8h_source.html#l00150">CFLGrammar.h:150</a></div></div>
|
|
248
|
-
<div class="ttc" id="namespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#
|
|
248
|
+
<div class="ttc" id="namespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00049">SVFType.h:49</a></div></div>
|
|
249
249
|
<div class="ttc" id="classSVF_1_1GrammarBase_html_a716ce662e6a3f2febf3ab378c4217759"><div class="ttname"><a href="classSVF_1_1GrammarBase.html#a716ce662e6a3f2febf3ab378c4217759">SVF::GrammarBase::VariableAttribute</a></div><div class="ttdeci">u32_t VariableAttribute</div><div class="ttdef"><b>Definition:</b> <a href="CFLGrammar_8h_source.html#l00041">CFLGrammar.h:41</a></div></div>
|
|
250
250
|
<div class="ttc" id="namespaceSVF_html_af739db846e47ba6b2fd15eaad31ab7fb"><div class="ttname"><a href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">SVF::Set</a></div><div class="ttdeci">std::unordered_set< Key, Hash, KeyEqual, Allocator > Set</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00094">SVFType.h:94</a></div></div>
|
|
251
251
|
<div class="ttc" id="classSVF_1_1GrammarBase_html_a63389968c8d246a84562a8d17e08790b"><div class="ttname"><a href="classSVF_1_1GrammarBase.html#a63389968c8d246a84562a8d17e08790b">SVF::GrammarBase::insertNonTerminalSymbol</a></div><div class="ttdeci">Symbol insertNonTerminalSymbol(std::string strLit)</div><div class="ttdef"><b>Definition:</b> <a href="CFLGrammar_8cpp_source.html#l00249">CFLGrammar.cpp:249</a></div></div>
|
|
@@ -345,7 +345,7 @@ Private Member Functions</h2></td></tr>
|
|
|
345
345
|
<p class="definition">Definition at line <a class="el" href="CFGNormalizer_8cpp_source.html#l00326">326</a> of file <a class="el" href="CFGNormalizer_8cpp_source.html">CFGNormalizer.cpp</a>.</p>
|
|
346
346
|
<div class="fragment"><div class="line"><a name="l00327"></a><span class="lineno"> 327</span> {</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>  <a class="code" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">SVF::Map<std::string, std::string></a> newProductions;</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> tempNonterminal = <span class="stringliteral">"X"</span>;</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span> </div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> &symbolToProductionsPair : grammar-><a class="code" href="classSVF_1_1GrammarBase.html#a4561438149716c91178ea013686f66ae">getRawProductions</a>())</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>  {</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>  <a class="code" href="classSVF_1_1GrammarBase.html#a755024745a77509d2f07867be8245a4d">GrammarBase::Productions</a> productions = symbolToProductionsPair.second;</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> ebnfProduction : symbolToProductionsPair.second)</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>  {</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>  <span class="keywordtype">size_t</span> i = 1;</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>  <span class="keywordflow">while</span> (i < ebnfProduction.size())</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>  {</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>  <a class="code" href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">s32_t</a> signGroupStart = -1;</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>  <span class="keywordflow">if</span> (grammar-><a class="code" href="classSVF_1_1GrammarBase.html#ac8ecc4293c5a63d2d30d0ca0832217d3">kind2Str</a>(ebnfProduction[i].kind) == <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a>(1, sign))</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>  {</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>  assert(i != 1 && <span class="stringliteral">"sign in grammar associate with no symbol"</span>);</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>  <span class="keywordflow">if</span> (grammar-><a class="code" href="classSVF_1_1GrammarBase.html#ac8ecc4293c5a63d2d30d0ca0832217d3">kind2Str</a>(ebnfProduction[i - 1].kind) != <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a>(1, <span class="charliteral">')'</span>))</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>  {</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>  signGroupStart = i - 1;</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>  }</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>  {</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>  signGroupStart = <a class="code" href="classSVF_1_1CFGNormalizer.html#a8eddaa57527c0e5e538b1d207da7adc0">ebnfBracketMatch</a>(ebnfProduction, i, grammar);</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>  }</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> groupString = <span class="stringliteral">""</span>;</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> j = signGroupStart; j < i; j++)</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>  {</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>  groupString.append(grammar-><a class="code" href="classSVF_1_1GrammarBase.html#ac8ecc4293c5a63d2d30d0ca0832217d3">kind2Str</a>(ebnfProduction[j].kind));</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>  groupString.append(<span class="stringliteral">" "</span>);</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>  }</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>  groupString.append(grammar-><a class="code" href="classSVF_1_1GrammarBase.html#ac8ecc4293c5a63d2d30d0ca0832217d3">kind2Str</a>(ebnfProduction[i].kind));</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>  <span class="keywordflow">if</span> (newProductions.find(groupString) != newProductions.end())</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>  {</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>  productions.erase(ebnfProduction);</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>  ebnfProduction.erase(ebnfProduction.begin() + signGroupStart, ebnfProduction.begin() + i + 1);</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>  ebnfProduction.insert(ebnfProduction.begin() + signGroupStart, grammar-><a class="code" href="classSVF_1_1GrammarBase.html#a5c081c6ff0501fc91b71352995d6d9dc">str2Symbol</a>(newProductions[groupString]));</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>  productions.insert(ebnfProduction);</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>  }</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( (signGroupStart == 1) && (i == ebnfProduction.size() -1))</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>  {</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>  newProductions[groupString] = grammar-><a class="code" href="classSVF_1_1GrammarBase.html#ac8ecc4293c5a63d2d30d0ca0832217d3">kind2Str</a>(ebnfProduction[0].kind);</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>  productions.erase(ebnfProduction);</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>  ebnfProduction.erase(ebnfProduction.begin() + signGroupStart, ebnfProduction.begin() + i + 1);</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span> </div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>  }</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>  {</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>  tempNonterminal = <span class="stringliteral">"X"</span>;</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>  std::ostringstream ss;</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>  ss << grammar-><a class="code" href="classSVF_1_1CFLGrammar.html#a2494806a1282de3d7f6b588f7d6cc83e">num_generator</a>();</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>  tempNonterminal.append(ss.str());</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>  <a class="code" href="structSVF_1_1GrammarBase_1_1Symbol.html">GrammarBase::Symbol</a> tempSym = grammar-><a class="code" href="classSVF_1_1GrammarBase.html#a63389968c8d246a84562a8d17e08790b">insertNonTerminalSymbol</a>(tempNonterminal);</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>  productions.erase(ebnfProduction);</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>  ebnfProduction.erase(ebnfProduction.begin() + signGroupStart, ebnfProduction.begin() + i + 1);</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>  ebnfProduction.insert(ebnfProduction.begin() + signGroupStart, tempSym);</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>  newProductions[groupString] = tempNonterminal;</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>  productions.insert(ebnfProduction);</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>  }</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span> </div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>  i = signGroupStart;</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>  }</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>  i++;</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>  }</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>  }</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>  symbolToProductionsPair.second = productions;</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>  }</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>  <span class="keywordflow">for</span>(<span class="keyword">auto</span> rep: newProductions)</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>  {</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> new_nonterminal = rep.second;</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>  <a class="code" href="classSVF_1_1GrammarBase.html#af384c960a5edc576cbfb60a869e346ec">GrammarBase::Production</a> temp_list = {grammar-><a class="code" href="classSVF_1_1GrammarBase.html#a5c081c6ff0501fc91b71352995d6d9dc">str2Symbol</a>(new_nonterminal), grammar-><a class="code" href="classSVF_1_1GrammarBase.html#a5c081c6ff0501fc91b71352995d6d9dc">str2Symbol</a>(<span class="stringliteral">"epsilon"</span>)};</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>  grammar-><a class="code" href="classSVF_1_1GrammarBase.html#a4561438149716c91178ea013686f66ae">getRawProductions</a>()[grammar-><a class="code" href="classSVF_1_1GrammarBase.html#a5c081c6ff0501fc91b71352995d6d9dc">str2Symbol</a>(new_nonterminal)].insert(temp_list);</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>  temp_list = {grammar-><a class="code" href="classSVF_1_1GrammarBase.html#a5c081c6ff0501fc91b71352995d6d9dc">str2Symbol</a>(new_nonterminal)};</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>  <span class="keywordflow">if</span> (sign == <span class="charliteral">'*'</span> || sign == <span class="charliteral">'?'</span>)</div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>  {</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>  <a class="code" href="classSVF_1_1GrammarBase.html#af384c960a5edc576cbfb60a869e346ec">GrammarBase::Production</a> normalProd;</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>  <a class="code" href="classSVF_1_1CFGNormalizer.html#a4b9b6c676ce6514ae725f543b1e07acf">strTrans</a>(rep.first, grammar, normalProd);</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>  <a class="code" href="classSVF_1_1GrammarBase.html#af384c960a5edc576cbfb60a869e346ec">GrammarBase::Production</a> withoutSign = {};</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>  <span class="keywordflow">if</span> (sign == <span class="charliteral">'*'</span>)</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>  {</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> &word : normalProd)</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>  {</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>  <span class="keywordflow">if</span> (word != grammar-><a class="code" href="classSVF_1_1GrammarBase.html#a5c081c6ff0501fc91b71352995d6d9dc">str2Symbol</a>(<span class="stringliteral">"*"</span>) && word != grammar-><a class="code" href="classSVF_1_1GrammarBase.html#a5c081c6ff0501fc91b71352995d6d9dc">str2Symbol</a>(<span class="stringliteral">"("</span>) && word != grammar-><a class="code" href="classSVF_1_1GrammarBase.html#a5c081c6ff0501fc91b71352995d6d9dc">str2Symbol</a>(<span class="stringliteral">")"</span>))</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>  {</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>  withoutSign.push_back(word);</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>  }</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>  }</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>  withoutSign.push_back(grammar-><a class="code" href="classSVF_1_1GrammarBase.html#a5c081c6ff0501fc91b71352995d6d9dc">str2Symbol</a>(rep.second));</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>  }</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>  <span class="keywordflow">if</span> (sign == <span class="charliteral">'?'</span>)</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>  {</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> &word : normalProd)</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>  {</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>  <span class="keywordflow">if</span> (word != grammar-><a class="code" href="classSVF_1_1GrammarBase.html#a5c081c6ff0501fc91b71352995d6d9dc">str2Symbol</a>(<span class="stringliteral">"?"</span>) && word != grammar-><a class="code" href="classSVF_1_1GrammarBase.html#a5c081c6ff0501fc91b71352995d6d9dc">str2Symbol</a>(<span class="stringliteral">"("</span>) && word != grammar-><a class="code" href="classSVF_1_1GrammarBase.html#a5c081c6ff0501fc91b71352995d6d9dc">str2Symbol</a>(<span class="stringliteral">")"</span>))</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>  {</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>  withoutSign.push_back(word);</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>  }</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>  }</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>  }</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>  temp_list.insert(temp_list.end(), withoutSign.begin(), withoutSign.end());</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>  }</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>  grammar-><a class="code" href="classSVF_1_1GrammarBase.html#a4561438149716c91178ea013686f66ae">getRawProductions</a>()[grammar-><a class="code" href="classSVF_1_1GrammarBase.html#a5c081c6ff0501fc91b71352995d6d9dc">str2Symbol</a>(new_nonterminal)].insert(temp_list);</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>  }</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span> }</div><div class="ttc" id="classSVF_1_1GrammarBase_html_a4561438149716c91178ea013686f66ae"><div class="ttname"><a href="classSVF_1_1GrammarBase.html#a4561438149716c91178ea013686f66ae">SVF::GrammarBase::getRawProductions</a></div><div class="ttdeci">SymbolMap< Symbol, Productions > & getRawProductions()</div><div class="ttdef"><b>Definition:</b> <a href="CFLGrammar_8h_source.html#l00190">CFLGrammar.h:190</a></div></div>
|
|
347
347
|
<div class="ttc" id="classSVF_1_1CFLGrammar_html_a2494806a1282de3d7f6b588f7d6cc83e"><div class="ttname"><a href="classSVF_1_1CFLGrammar.html#a2494806a1282de3d7f6b588f7d6cc83e">SVF::CFLGrammar::num_generator</a></div><div class="ttdeci">const u32_t num_generator()</div><div class="ttdef"><b>Definition:</b> <a href="CFLGrammar_8h_source.html#l00388">CFLGrammar.h:388</a></div></div>
|
|
348
|
-
<div class="ttc" id="namespaceSVF_html_a9b707002523ece2ac54ca893ee9a2d4e"><div class="ttname"><a href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">SVF::s32_t</a></div><div class="ttdeci">signed s32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#
|
|
348
|
+
<div class="ttc" id="namespaceSVF_html_a9b707002523ece2ac54ca893ee9a2d4e"><div class="ttname"><a href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">SVF::s32_t</a></div><div class="ttdeci">signed s32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00050">SVFType.h:50</a></div></div>
|
|
349
349
|
<div class="ttc" id="classSVF_1_1GrammarBase_html_a755024745a77509d2f07867be8245a4d"><div class="ttname"><a href="classSVF_1_1GrammarBase.html#a755024745a77509d2f07867be8245a4d">SVF::GrammarBase::Productions</a></div><div class="ttdeci">SymbolSet< Production > Productions</div><div class="ttdef"><b>Definition:</b> <a href="CFLGrammar_8h_source.html#l00157">CFLGrammar.h:157</a></div></div>
|
|
350
350
|
<div class="ttc" id="namespaceSVF_html_a8234d4b959abc9123993bcff4eee34c1"><div class="ttname"><a href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">SVF::Map</a></div><div class="ttdeci">std::unordered_map< Key, Value, Hash, KeyEqual, Allocator > Map</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00099">SVFType.h:99</a></div></div>
|
|
351
351
|
<div class="ttc" id="classSVF_1_1GrammarBase_html_ac8ecc4293c5a63d2d30d0ca0832217d3"><div class="ttname"><a href="classSVF_1_1GrammarBase.html#ac8ecc4293c5a63d2d30d0ca0832217d3">SVF::GrammarBase::kind2Str</a></div><div class="ttdeci">std::string kind2Str(Kind kind) const</div><div class="ttdef"><b>Definition:</b> <a href="CFLGrammar_8cpp_source.html#l00103">CFLGrammar.cpp:103</a></div></div>
|
|
@@ -389,7 +389,7 @@ Private Member Functions</h2></td></tr>
|
|
|
389
389
|
<p>rawProductions production does not include lhs so append to the begin of the production </p>
|
|
390
390
|
|
|
391
391
|
<p class="definition">Definition at line <a class="el" href="CFGNormalizer_8cpp_source.html#l00062">62</a> of file <a class="el" href="CFGNormalizer_8cpp_source.html">CFGNormalizer.cpp</a>.</p>
|
|
392
|
-
<div class="fragment"><div class="line"><a name="l00063"></a><span class="lineno"> 63</span> {</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>  <a class="code" href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">NodeSet</a> nodeSet = {};</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> pair: kind2AttrsMap)</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>  {</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> attri: pair.second)</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  {</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>  nodeSet.insert(attri);</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  }</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>  }</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  <span class="keywordflow">for</span>(<span class="keyword">auto</span> symProdsPair: grammar-><a class="code" href="classSVF_1_1GrammarBase.html#a4561438149716c91178ea013686f66ae">getRawProductions</a>())</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  {</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  <span class="keywordflow">for</span>(<span class="keyword">auto</span> prod: symProdsPair.second)</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  {</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  <a class="code" href="classSVF_1_1GrammarBase.html#af384c960a5edc576cbfb60a869e346ec">GrammarBase::Production</a> tempP = prod;</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  tempP.insert(tempP.begin(), symProdsPair.first);</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  <a class="code" href="classSVF_1_1GrammarBase.html#a755024745a77509d2f07867be8245a4d">GrammarBase::Productions</a> normalProds;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  <a class="code" href="classSVF_1_1CFGNormalizer.html#add319949e856049d3e898848a02a75b7">getFilledProductions</a>(tempP, nodeSet, grammar, normalProds);</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> filledProd : normalProds)</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  {</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  <a class="code" href="classSVF_1_1CFGNormalizer.html#ad08f183a1b8ca69201f965f224e92950">insertToCFLGrammar</a>(grammar, filledProd);</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  }</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>  }</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  }</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span> </div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  <span class="keywordflow">return</span> grammar;</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span> }</div><div class="ttc" id="namespaceSVF_html_a212231734fa43d5c7414137deaac7df3"><div class="ttname"><a href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">SVF::NodeSet</a></div><div class="ttdeci">Set< NodeID > NodeSet</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#
|
|
392
|
+
<div class="fragment"><div class="line"><a name="l00063"></a><span class="lineno"> 63</span> {</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>  <a class="code" href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">NodeSet</a> nodeSet = {};</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> pair: kind2AttrsMap)</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>  {</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> attri: pair.second)</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  {</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>  nodeSet.insert(attri);</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  }</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>  }</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  <span class="keywordflow">for</span>(<span class="keyword">auto</span> symProdsPair: grammar-><a class="code" href="classSVF_1_1GrammarBase.html#a4561438149716c91178ea013686f66ae">getRawProductions</a>())</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  {</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  <span class="keywordflow">for</span>(<span class="keyword">auto</span> prod: symProdsPair.second)</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  {</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  <a class="code" href="classSVF_1_1GrammarBase.html#af384c960a5edc576cbfb60a869e346ec">GrammarBase::Production</a> tempP = prod;</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  tempP.insert(tempP.begin(), symProdsPair.first);</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  <a class="code" href="classSVF_1_1GrammarBase.html#a755024745a77509d2f07867be8245a4d">GrammarBase::Productions</a> normalProds;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  <a class="code" href="classSVF_1_1CFGNormalizer.html#add319949e856049d3e898848a02a75b7">getFilledProductions</a>(tempP, nodeSet, grammar, normalProds);</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> filledProd : normalProds)</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  {</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  <a class="code" href="classSVF_1_1CFGNormalizer.html#ad08f183a1b8ca69201f965f224e92950">insertToCFLGrammar</a>(grammar, filledProd);</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  }</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>  }</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  }</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span> </div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  <span class="keywordflow">return</span> grammar;</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span> }</div><div class="ttc" id="namespaceSVF_html_a212231734fa43d5c7414137deaac7df3"><div class="ttname"><a href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">SVF::NodeSet</a></div><div class="ttdeci">Set< NodeID > NodeSet</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00111">SVFType.h:111</a></div></div>
|
|
393
393
|
<div class="ttc" id="classSVF_1_1CFGNormalizer_html_ad08f183a1b8ca69201f965f224e92950"><div class="ttname"><a href="classSVF_1_1CFGNormalizer.html#ad08f183a1b8ca69201f965f224e92950">SVF::CFGNormalizer::insertToCFLGrammar</a></div><div class="ttdeci">void insertToCFLGrammar(CFLGrammar *grammar, GrammarBase::Production &prod)</div><div class="ttdoc">Based on prod size to add on suitable member field of grammar. </div><div class="ttdef"><b>Definition:</b> <a href="CFGNormalizer_8cpp_source.html#l00474">CFGNormalizer.cpp:474</a></div></div>
|
|
394
394
|
<div class="ttc" id="classSVF_1_1GrammarBase_html_a4561438149716c91178ea013686f66ae"><div class="ttname"><a href="classSVF_1_1GrammarBase.html#a4561438149716c91178ea013686f66ae">SVF::GrammarBase::getRawProductions</a></div><div class="ttdeci">SymbolMap< Symbol, Productions > & getRawProductions()</div><div class="ttdef"><b>Definition:</b> <a href="CFLGrammar_8h_source.html#l00190">CFLGrammar.h:190</a></div></div>
|
|
395
395
|
<div class="ttc" id="classSVF_1_1GrammarBase_html_a755024745a77509d2f07867be8245a4d"><div class="ttname"><a href="classSVF_1_1GrammarBase.html#a755024745a77509d2f07867be8245a4d">SVF::GrammarBase::Productions</a></div><div class="ttdeci">SymbolSet< Production > Productions</div><div class="ttdef"><b>Definition:</b> <a href="CFLGrammar_8h_source.html#l00157">CFLGrammar.h:157</a></div></div>
|