svf-tools 1.0.756 → 1.0.758
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/README.md +2 -2
- package/SVF-doxygen/html/html/AccessPath_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/Andersen_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/Andersen_8h_source.html +1 -1
- package/SVF-doxygen/html/html/BreakConstantExpr_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/CFGrammar_8h_source.html +1 -1
- package/SVF-doxygen/html/html/CFLAlias_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/CFLVF_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/CHG_8h_source.html +1 -1
- package/SVF-doxygen/html/html/Casting_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ConditionalPT_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ConsG_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/ConsG_8h_source.html +2 -2
- package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/FSMPTA_8h_source.html +1 -1
- package/SVF-doxygen/html/html/FlowSensitive_8h_source.html +1 -1
- package/SVF-doxygen/html/html/GEPTypeBridgeIterator_8h_source.html +1 -1
- package/SVF-doxygen/html/html/GenericGraph_8h_source.html +2 -2
- package/SVF-doxygen/html/html/GraphTraits_8h_source.html +1 -1
- package/SVF-doxygen/html/html/GraphWriter_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ICFGBuilder_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/IRGraph_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/IRGraph_8h_source.html +1 -1
- package/SVF-doxygen/html/html/IntervalExeState_8h_source.html +1 -1
- package/SVF-doxygen/html/html/IntervalValue_8h.html +1 -1
- package/SVF-doxygen/html/html/IntervalValue_8h_source.html +1 -1
- package/SVF-doxygen/html/html/LLVMModule_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/MHP_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/MHP_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MSSAMuChi_8h_source.html +2 -2
- package/SVF-doxygen/html/html/MTAResultValidator_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/MemSSA_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MutablePointsToDS_8h_source.html +2 -2
- package/SVF-doxygen/html/html/NodeIDAllocator_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/NodeIDAllocator_8h_source.html +1 -1
- package/SVF-doxygen/html/html/Options_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/PTACallGraph_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/PTACallGraph_8h_source.html +1 -1
- package/SVF-doxygen/html/html/PersistentPointsToDS_8h_source.html +1 -1
- package/SVF-doxygen/html/html/PointsTo_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/PointsTo_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFBugReport_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFFileSystem_8h_source.html +2 -2
- package/SVF-doxygen/html/html/SVFIR2ConsExeState_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/SVFIR2ItvExeState_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/SVFIRExtAPI_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/SVFIR_8h_source.html +2 -2
- package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/SVFStatements_8h_source.html +16 -16
- package/SVF-doxygen/html/html/SVFType_8h_source.html +5 -5
- package/SVF-doxygen/html/html/SVFUtil_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SVFUtil_8h.html +2 -2
- package/SVF-doxygen/html/html/SVFUtil_8h_source.html +2 -2
- package/SVF-doxygen/html/html/SVFValue_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/SVFValue_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFVariables_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SVFVariables_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SparseBitVector_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SrcSnkDDA_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SrcSnkDDA_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SymState_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SymbolTableBuilder_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/SymbolTableBuilder_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/SymbolTableInfo_8h_source.html +3 -3
- package/SVF-doxygen/html/html/TCT_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/TCT_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/VFGNode_8h_source.html +1 -1
- package/SVF-doxygen/html/html/VFG_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/WPASolver_8h_source.html +1 -1
- package/SVF-doxygen/html/html/annotated.html +1 -1
- package/SVF-doxygen/html/html/cJSON_8h_source.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1AccessPath.html +4 -4
- 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_1ActualParmVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ActualRetVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1AddrStmt.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1AddrVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1AliasCFLGraphBuilder.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1ArgumentVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1AssignStmt.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1BinaryOPVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1BitVector.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_1BreakConstantGEPs.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CFBasicBlockNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CFGNormalizer.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CFLAlias.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CFLNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CFLVF.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CHNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CallCHI.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CallICFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CallPE.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CmpStmt.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1CmpVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CondPointsToSet.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1ConsExeState.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ConstraintGraph.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CopyStmt.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1CopyVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CoreBitVector.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1DCHNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1DPItem.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1DoubleFreeChecker.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1DummyObjVar.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1DummyValVar.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1DummyVersionPropSVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1EntryCHI.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1FILOWorkList.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FIObjVar.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1FSMPTA.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1FileChecker.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FormalINSVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FormalOUTSVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FormalParmVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FormalRetVFGNode.html +1 -1
- 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_1GenericNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1GepObjVar.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1GepStmt.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1GepVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1GepValVar.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1GlobalICFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1GrammarBuilder.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1GraphWriter.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ICFGBuilder.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1ICFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1InterICFGNode.html +1 -1
- 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 +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1IntraICFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IntraMSSAPHISVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IntraPHIVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1LoadStmt.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1LoadVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1MHP.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1MRSVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1MSSACHI.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1MSSADEF.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1MSSAPHI.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1MSSAPHISVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1MTAResultValidator.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1MTASVFGBuilder.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1MemRegion.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1MultiOpndStmt.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1MutableIncDFPTData.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1NodeIDAllocator_1_1Clusterer.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1NullPtrVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ObjVar.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1Options.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1PHIVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1PTACallGraph.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1PersistentIncDFPTData.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1PhiStmt.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1PointsTo.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1ProgSlice.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1RetICFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1RetPE.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1RetPN.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1SVFBasicBlock.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1SVFBugReport.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1SVFIR.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1SVFIR2ConsExeState.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1SVFIR2ItvExeState.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +10 -10
- package/SVF-doxygen/html/html/classSVF_1_1SVFIRReader.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1SVFIRWriter.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SVFLoopAndDomInfo.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SVFVar.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1SaberCondAllocator.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1SelectStmt.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1StInfo.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1Steensgaard.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1StmtVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1StoreCHI.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1StoreStmt.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1StoreVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SymState.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo.html +11 -11
- package/SVF-doxygen/html/html/classSVF_1_1TCT.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1TCTNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1TDForkPE.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1UnaryOPStmt.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1UnaryOPVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1VFG.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1VFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ValVar.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1VarArgPN.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1WPAFSSolver.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1WPAMinimumSolver.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1WPASCCSolver.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1WPASolver.html +3 -3
- package/SVF-doxygen/html/html/fastcluster_8cpp.html +1 -1
- package/SVF-doxygen/html/html/fastcluster_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/fastcluster_8h.html +2 -2
- package/SVF-doxygen/html/html/fastcluster_8h_source.html +4 -4
- package/SVF-doxygen/html/html/hierarchy.html +1 -1
- package/SVF-doxygen/html/html/namespaceSVF.html +2 -2
- package/SVF-doxygen/html/html/namespaceSVF_1_1SVFUtil.html +7 -7
- package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01IRGraph_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_1MemRegion_1_1equalMemRegion.html +1 -1
- package/SVF-doxygen/html/html/structSVF_1_1SVFUtil_1_1make__void.html +2 -2
- package/package.json +1 -1
- package/svf/include/AbstractExecution/ConsExeState.h +1 -1
- package/svf/include/AbstractExecution/IntervalExeState.h +1 -1
- package/svf/include/AbstractExecution/IntervalValue.h +1 -1
- package/svf/include/AbstractExecution/SymState.h +1 -1
- package/svf/include/CFL/CFGrammar.h +1 -1
- package/svf/include/CFL/GrammarBuilder.h +3 -3
- package/svf/include/FastCluster/fastcluster.h +4 -4
- package/svf/include/Graphs/CHG.h +1 -1
- package/svf/include/Graphs/ConsG.h +3 -3
- package/svf/include/Graphs/GenericGraph.h +2 -2
- package/svf/include/Graphs/GraphTraits.h +1 -1
- package/svf/include/Graphs/GraphWriter.h +1 -1
- package/svf/include/Graphs/IRGraph.h +1 -1
- package/svf/include/Graphs/PTACallGraph.h +1 -1
- package/svf/include/Graphs/VFGNode.h +2 -2
- package/svf/include/MSSA/MSSAMuChi.h +2 -2
- package/svf/include/MSSA/MemRegion.h +1 -1
- package/svf/include/MSSA/MemSSA.h +1 -1
- package/svf/include/MTA/FSMPTA.h +1 -1
- package/svf/include/MTA/MHP.h +1 -1
- package/svf/include/MTA/TCT.h +1 -1
- package/svf/include/MemoryModel/ConditionalPT.h +1 -1
- package/svf/include/MemoryModel/MutablePointsToDS.h +2 -2
- package/svf/include/MemoryModel/PersistentPointsToDS.h +1 -1
- package/svf/include/MemoryModel/PointerAnalysis.h +1 -1
- package/svf/include/MemoryModel/PointsTo.h +1 -1
- package/svf/include/SABER/SaberCondAllocator.h +1 -1
- package/svf/include/SABER/SrcSnkDDA.h +1 -1
- package/svf/include/SVFIR/SVFFileSystem.h +3 -3
- package/svf/include/SVFIR/SVFIR.h +1 -1
- package/svf/include/SVFIR/SVFStatements.h +19 -19
- package/svf/include/SVFIR/SVFType.h +5 -5
- package/svf/include/SVFIR/SVFValue.h +1 -1
- package/svf/include/SVFIR/SVFVariables.h +3 -3
- package/svf/include/SVFIR/SymbolTableInfo.h +3 -3
- package/svf/include/Util/Casting.h +1 -1
- package/svf/include/Util/CoreBitVector.h +2 -2
- package/svf/include/Util/DPItem.h +1 -1
- package/svf/include/Util/ExtAPI.json +20 -0
- package/svf/include/Util/NodeIDAllocator.h +1 -1
- package/svf/include/Util/Options.h +1 -1
- package/svf/include/Util/SVFBugReport.h +1 -1
- package/svf/include/Util/SVFUtil.h +4 -4
- package/svf/include/Util/WorkList.h +1 -1
- package/svf/include/Util/cJSON.h +1 -1
- package/svf/include/WPA/Andersen.h +1 -1
- package/svf/include/WPA/FlowSensitive.h +1 -1
- package/svf/include/WPA/WPASolver.h +1 -1
- package/svf/lib/AbstractExecution/SVFIR2ConsExeState.cpp +1 -1
- package/svf/lib/CFL/CFGNormalizer.cpp +2 -2
- package/svf/lib/CFL/CFLAlias.cpp +2 -2
- package/svf/lib/CFL/CFLGraphBuilder.cpp +2 -2
- package/svf/lib/CFL/CFLVF.cpp +1 -1
- package/svf/lib/DDA/ContextDDA.cpp +1 -1
- package/svf/lib/FastCluster/fastcluster.cpp +3 -3
- package/svf/lib/Graphs/ConsG.cpp +1 -1
- package/svf/lib/Graphs/SVFGOPT.cpp +2 -2
- package/svf/lib/Graphs/VFG.cpp +2 -2
- package/svf/lib/MSSA/MemRegion.cpp +1 -1
- package/svf/lib/MTA/FSMPTA.cpp +1 -1
- package/svf/lib/MTA/LockAnalysis.cpp +1 -1
- package/svf/lib/MTA/MHP.cpp +1 -1
- package/svf/lib/MemoryModel/AccessPath.cpp +2 -2
- package/svf/lib/SABER/ProgSlice.cpp +1 -1
- package/svf/lib/SABER/SaberCondAllocator.cpp +1 -1
- package/svf/lib/SVFIR/SVFIR.cpp +3 -3
- package/svf/lib/SVFIR/SVFValue.cpp +3 -3
- package/svf/lib/SVFIR/SymbolTableInfo.cpp +2 -2
- package/svf/lib/Util/NodeIDAllocator.cpp +2 -2
- package/svf/lib/Util/Options.cpp +7 -7
- package/svf/lib/Util/SVFUtil.cpp +2 -2
- package/svf/lib/WPA/Andersen.cpp +6 -6
- package/svf/lib/WPA/VersionedFlowSensitive.cpp +2 -2
- package/svf-llvm/CMakeLists.txt +1 -1
- package/svf-llvm/include/SVF-LLVM/GEPTypeBridgeIterator.h +1 -1
- package/svf-llvm/include/SVF-LLVM/SymbolTableBuilder.h +1 -1
- package/svf-llvm/lib/BreakConstantExpr.cpp +1 -1
- package/svf-llvm/lib/ICFGBuilder.cpp +2 -2
- package/svf-llvm/lib/LLVMModule.cpp +3 -3
- package/svf-llvm/lib/SVFIRBuilder.cpp +5 -5
- package/svf-llvm/lib/SVFIRExtAPI.cpp +2 -2
- package/svf-llvm/lib/SymbolTableBuilder.cpp +2 -2
- package/svf-llvm/tools/MTA/MTAResultValidator.cpp +1 -1
package/README.md
CHANGED
|
@@ -26,10 +26,10 @@
|
|
|
26
26
|
* [DDA](https://github.com/SVF-tools/SVF/tree/master/svf/include/DDA) (<b>demand-driven analysis</b>): flow-sensitive, context-sensitive points-to analysis ([FSE'16](https://yuleisui.github.io/publications/fse16.pdf), [TSE'18](https://yuleisui.github.io/publications/tse18.pdf));
|
|
27
27
|
* [MSSA](https://github.com/SVF-tools/SVF/tree/master/svf/include/MSSA) (<b>memory SSA form construction</b>): memory regions, side-effects, SSA form ([JSS'18](https://yuleisui.github.io/publications/jss18.pdf));
|
|
28
28
|
* [SABER](https://github.com/SVF-tools/SVF/tree/master/svf/include/SABER) (<b>memory error checking</b>): memory leaks and double-frees ([ISSTA'12](https://yuleisui.github.io/publications/issta12.pdf), [TSE'14](https://yuleisui.github.io/publications/tse14.pdf), [ICSE'18](https://yuleisui.github.io/publications/icse18a.pdf));
|
|
29
|
-
* [MTA](https://github.com/SVF-tools/SVF/tree/master/svf/include/MTA) (<b>analysis of
|
|
29
|
+
* [MTA](https://github.com/SVF-tools/SVF/tree/master/svf/include/MTA) (<b>analysis of multithreaded programs</b>): value-flows for multithreaded programs ([CGO'16](https://yuleisui.github.io/publications/cgo16.pdf));
|
|
30
30
|
* [CFL](https://github.com/SVF-tools/SVF/tree/master/svf/include/CFL) (<b>context-free-reachability analysis</b>): standard CFL solver, graph and grammar ([OOPSLA'22](https://yuleisui.github.io/publications/oopsla22.pdf), [PLDI'23](https://yuleisui.github.io/publications/pldi23.pdf));
|
|
31
31
|
* [SVFIR](https://github.com/SVF-tools/SVF/tree/master/svf/include/SVFIR) and [MemoryModel](https://github.com/SVF-tools/SVF/tree/master/svf/include/MemoryModel) (<b>SVFIR</b>): SVFIR, memory abstraction and points-to data structure ([SAS'21](https://yuleisui.github.io/publications/sas21.pdf));
|
|
32
|
-
* [Graphs](https://github.com/SVF-tools/SVF/tree/master/svf/include/Graphs): <b> generating a variety of graphs</b>, including call graph, ICFG, class
|
|
32
|
+
* [Graphs](https://github.com/SVF-tools/SVF/tree/master/svf/include/Graphs): <b> generating a variety of graphs</b>, including call graph, ICFG, class hierarchy graph, constraint graph, value-flow graph for static analyses and code embedding ([OOPSLA'20](https://yuleisui.github.io/publications/oopsla20.pdf), [TOSEM'21](https://yuleisui.github.io/publications/tosem21.pdf))
|
|
33
33
|
|
|
34
34
|
<b>SVF</b>'s doxygen document is available [here](https://svf-tools.github.io/SVF-doxygen/html).
|
|
35
35
|
|
|
@@ -283,7 +283,7 @@ $(function() {
|
|
|
283
283
|
<div class="ttc" id="aclassSVF_1_1AccessPath_html_a3c98f0c5f07109f9da0a8a897aa51d18"><div class="ttname"><a href="classSVF_1_1AccessPath.html#a3c98f0c5f07109f9da0a8a897aa51d18">SVF::AccessPath::getElementNum</a></div><div class="ttdeci">u32_t getElementNum(const SVFType *type) const</div><div class="ttdoc">Return element number of a type.</div><div class="ttdef"><b>Definition:</b> <a href="AccessPath_8cpp_source.html#l00063">AccessPath.cpp:63</a></div></div>
|
|
284
284
|
<div class="ttc" id="aSVFUtil_8h_html"><div class="ttname"><a href="SVFUtil_8h.html">SVFUtil.h</a></div></div>
|
|
285
285
|
<div class="ttc" id="aOptions_8h_html"><div class="ttname"><a href="Options_8h.html">Options.h</a></div></div>
|
|
286
|
-
<div class="ttc" id="aclassSVF_1_1SymbolTableInfo_html_a24df52313f8093bb651ae9da972cd663"><div class="ttname"><a href="classSVF_1_1SymbolTableInfo.html#a24df52313f8093bb651ae9da972cd663">SVF::SymbolTableInfo::getFlattenedElemIdx</a></div><div class="ttdeci">u32_t getFlattenedElemIdx(const SVFType *T, u32_t origId)</div><div class="ttdoc">
|
|
286
|
+
<div class="ttc" id="aclassSVF_1_1SymbolTableInfo_html_a24df52313f8093bb651ae9da972cd663"><div class="ttname"><a href="classSVF_1_1SymbolTableInfo.html#a24df52313f8093bb651ae9da972cd663">SVF::SymbolTableInfo::getFlattenedElemIdx</a></div><div class="ttdeci">u32_t getFlattenedElemIdx(const SVFType *T, u32_t origId)</div><div class="ttdoc">Flattened element idx of an array or struct by considering stride.</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00181">SymbolTableInfo.cpp:181</a></div></div>
|
|
287
287
|
<div class="ttc" id="aclassSVF_1_1AccessPath_html_a98b8b3428479259fbafd9e527ecc09bb"><div class="ttname"><a href="classSVF_1_1AccessPath.html#a98b8b3428479259fbafd9e527ecc09bb">SVF::AccessPath::checkRelation</a></div><div class="ttdeci">LSRelation checkRelation(const AccessPath &LHS, const AccessPath &RHS)</div><div class="ttdoc">Check relations of two location sets.</div><div class="ttdef"><b>Definition:</b> <a href="AccessPath_8cpp_source.html#l00194">AccessPath.cpp:194</a></div></div>
|
|
288
288
|
<div class="ttc" id="aclassSVF_1_1SVFValue_html"><div class="ttname"><a href="classSVF_1_1SVFValue.html">SVF::SVFValue</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00150">SVFValue.h:150</a></div></div>
|
|
289
289
|
<div class="ttc" id="acJSON_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>
|
|
@@ -305,7 +305,7 @@ $(function() {
|
|
|
305
305
|
<div class="ttc" id="aclassSVF_1_1AccessPath_html_aabb6c9600fac408f36b9fde013597245"><div class="ttname"><a href="classSVF_1_1AccessPath.html#aabb6c9600fac408f36b9fde013597245">SVF::AccessPath::LSRelation</a></div><div class="ttdeci">LSRelation</div><div class="ttdef"><b>Definition:</b> <a href="AccessPath_8h_source.html#l00059">AccessPath.h:59</a></div></div>
|
|
306
306
|
<div class="ttc" id="aclassSVF_1_1SVFConstantInt_html_a73f04bdfc19261b65164b98787bc2ed4"><div class="ttname"><a href="classSVF_1_1SVFConstantInt.html#a73f04bdfc19261b65164b98787bc2ed4">SVF::SVFConstantInt::getSExtValue</a></div><div class="ttdeci">s64_t getSExtValue() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00950">SVFValue.h:950</a></div></div>
|
|
307
307
|
<div class="ttc" id="anamespaceSVF_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#l00051">SVFType.h:51</a></div></div>
|
|
308
|
-
<div class="ttc" id="aclassSVF_1_1SymbolTableInfo_html_a811a3489df0f793c7a5482d31d470a4c"><div class="ttname"><a href="classSVF_1_1SymbolTableInfo.html#a811a3489df0f793c7a5482d31d470a4c">SVF::SymbolTableInfo::getNumOfFlattenElements</a></div><div class="ttdeci">u32_t getNumOfFlattenElements(const SVFType *T)</div><div class="ttdoc">Number of
|
|
308
|
+
<div class="ttc" id="aclassSVF_1_1SymbolTableInfo_html_a811a3489df0f793c7a5482d31d470a4c"><div class="ttname"><a href="classSVF_1_1SymbolTableInfo.html#a811a3489df0f793c7a5482d31d470a4c">SVF::SymbolTableInfo::getNumOfFlattenElements</a></div><div class="ttdeci">u32_t getNumOfFlattenElements(const SVFType *T)</div><div class="ttdoc">Number of flattened elements of an array or struct.</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00172">SymbolTableInfo.cpp:172</a></div></div>
|
|
309
309
|
<!-- start footer part -->
|
|
310
310
|
<hr class="footer"/><address class="footer"><small>
|
|
311
311
|
Generated by  <a href="http://www.doxygen.org/index.html">
|
|
@@ -465,7 +465,7 @@ $(function() {
|
|
|
465
465
|
<div class="ttc" id="aclassSVF_1_1AndersenStat_html_a85960b98981d0514a72b40306a7f08d3"><div class="ttname"><a href="classSVF_1_1AndersenStat.html#a85960b98981d0514a72b40306a7f08d3">SVF::AndersenStat::_MaxPtsSize</a></div><div class="ttdeci">static u32_t _MaxPtsSize</div><div class="ttdef"><b>Definition:</b> <a href="WPAStat_8h_source.html#l00057">WPAStat.h:57</a></div></div>
|
|
466
466
|
<div class="ttc" id="aclassSVF_1_1AndersenStat_html_a27d4e2bf145226f3c2b4d46fee2311e7"><div class="ttname"><a href="classSVF_1_1AndersenStat.html#a27d4e2bf145226f3c2b4d46fee2311e7">SVF::AndersenStat::_NumOfBlackholePtr</a></div><div class="ttdeci">u32_t _NumOfBlackholePtr</div><div class="ttdef"><b>Definition:</b> <a href="WPAStat_8h_source.html#l00064">WPAStat.h:64</a></div></div>
|
|
467
467
|
<div class="ttc" id="aclassSVF_1_1AndersenBase_html_aaec5125db063f8c1e7431ac7fe7a70f2"><div class="ttname"><a href="classSVF_1_1AndersenBase.html#aaec5125db063f8c1e7431ac7fe7a70f2">SVF::AndersenBase::getConstraintGraph</a></div><div class="ttdeci">ConstraintGraph * getConstraintGraph()</div><div class="ttdoc">Get constraint graph.</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00109">Andersen.h:109</a></div></div>
|
|
468
|
-
<div class="ttc" id="aclassSVF_1_1WPASolver_html_ab3369caa278da03e6e6697a839985cd6"><div class="ttname"><a href="classSVF_1_1WPASolver.html#ab3369caa278da03e6e6697a839985cd6">SVF::WPASolver::numOfIteration</a></div><div class="ttdeci">u32_t numOfIteration</div><div class="ttdoc">num of iterations during
|
|
468
|
+
<div class="ttc" id="aclassSVF_1_1WPASolver_html_ab3369caa278da03e6e6697a839985cd6"><div class="ttname"><a href="classSVF_1_1WPASolver.html#ab3369caa278da03e6e6697a839985cd6">SVF::WPASolver::numOfIteration</a></div><div class="ttdeci">u32_t numOfIteration</div><div class="ttdoc">num of iterations during constraint solving</div><div class="ttdef"><b>Definition:</b> <a href="WPASolver_8h_source.html#l00200">WPASolver.h:200</a></div></div>
|
|
469
469
|
<div class="ttc" id="aclassSVF_1_1SVFVar_html"><div class="ttname"><a href="classSVF_1_1SVFVar.html">SVF::SVFVar</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00045">SVFVariables.h:45</a></div></div>
|
|
470
470
|
<div class="ttc" id="aclassSVF_1_1ConstraintGraph_html"><div class="ttname"><a href="classSVF_1_1ConstraintGraph.html">SVF::ConstraintGraph</a></div><div class="ttdef"><b>Definition:</b> <a href="ConsG_8h_source.html#l00044">ConsG.h:44</a></div></div>
|
|
471
471
|
<div class="ttc" id="aclassSVF_1_1ConstraintGraph_html_ad7196d5f05192d9468ee0ca93b6b66ee"><div class="ttname"><a href="classSVF_1_1ConstraintGraph.html#ad7196d5f05192d9468ee0ca93b6b66ee">SVF::ConstraintGraph::getDirectCGEdges</a></div><div class="ttdeci">ConstraintEdge::ConstraintEdgeSetTy & getDirectCGEdges()</div><div class="ttdoc">Get Copy/call/ret/gep edges.</div><div class="ttdef"><b>Definition:</b> <a href="ConsG_8h_source.html#l00199">ConsG.h:199</a></div></div>
|
|
@@ -472,7 +472,7 @@ $(function() {
|
|
|
472
472
|
<div class="line"><a name="l00478"></a><span class="lineno"> 478</span>  </div>
|
|
473
473
|
<div class="line"><a name="l00482"></a><span class="lineno"><a class="line" href="classSVF_1_1Andersen.html#ae79bff0e9c49f15e7db00ed605824d98"> 482</a></span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1Andersen.html#ae79bff0e9c49f15e7db00ed605824d98">Andersen::collapsePWCNode</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> nodeId)</div>
|
|
474
474
|
<div class="line"><a name="l00483"></a><span class="lineno"> 483</span> {</div>
|
|
475
|
-
<div class="line"><a name="l00484"></a><span class="lineno"> 484</span>  <span class="comment">// If a node is a PWC node, collapse all its points-to
|
|
475
|
+
<div class="line"><a name="l00484"></a><span class="lineno"> 484</span>  <span class="comment">// If a node is a PWC node, collapse all its points-to target.</span></div>
|
|
476
476
|
<div class="line"><a name="l00485"></a><span class="lineno"> 485</span>  <span class="comment">// collapseNodePts() may change the points-to set of the nodes which have been processed</span></div>
|
|
477
477
|
<div class="line"><a name="l00486"></a><span class="lineno"> 486</span>  <span class="comment">// before, in this case, we may need to re-do the analysis.</span></div>
|
|
478
478
|
<div class="line"><a name="l00487"></a><span class="lineno"> 487</span>  <span class="keywordflow">if</span> (consCG->isPWCNode(nodeId) && collapseNodePts(nodeId))</div>
|
|
@@ -820,7 +820,7 @@ $(function() {
|
|
|
820
820
|
<div class="line"><a name="l00864"></a><span class="lineno"> 864</span>  </div>
|
|
821
821
|
<div class="line"><a name="l00865"></a><span class="lineno"><a class="line" href="classSVF_1_1Andersen.html#ae1ff65a411f2c4dfee0973ad4af48daf"> 865</a></span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1Andersen.html#ae1ff65a411f2c4dfee0973ad4af48daf">Andersen::cluster</a>(<span class="keywordtype">void</span>)<span class="keyword"> const</span></div>
|
|
822
822
|
<div class="line"><a name="l00866"></a><span class="lineno"> 866</span> <span class="keyword"></span>{</div>
|
|
823
|
-
<div class="line"><a name="l00867"></a><span class="lineno"> 867</span>  assert(<a class="code" href="classSVF_1_1Options.html#aaab923c093730b1670a54f09340b1bd5">Options::MaxFieldLimit</a>() == 0 && <span class="stringliteral">"Andersen::cluster: clustering for Andersen's is currently only supported in field-
|
|
823
|
+
<div class="line"><a name="l00867"></a><span class="lineno"> 867</span>  assert(<a class="code" href="classSVF_1_1Options.html#aaab923c093730b1670a54f09340b1bd5">Options::MaxFieldLimit</a>() == 0 && <span class="stringliteral">"Andersen::cluster: clustering for Andersen's is currently only supported in field-insensitive analysis"</span>);</div>
|
|
824
824
|
<div class="line"><a name="l00868"></a><span class="lineno"> 868</span>  <a class="code" href="classSVF_1_1Steensgaard.html">Steensgaard</a> *steens = <a class="code" href="classSVF_1_1Steensgaard.html#acd5f31c3b1f9b47def458637f8e9389e">Steensgaard::createSteensgaard</a>(pag);</div>
|
|
825
825
|
<div class="line"><a name="l00869"></a><span class="lineno"> 869</span>  std::vector<std::pair<unsigned, unsigned>> keys;</div>
|
|
826
826
|
<div class="line"><a name="l00870"></a><span class="lineno"> 870</span>  <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1GenericGraph.html#ac213302cf5c7cdf3b66f7b18649d0fbc">SVFIR::iterator</a> pit = pag->begin(); pit != pag->end(); ++pit)</div>
|
|
@@ -926,7 +926,7 @@ $(function() {
|
|
|
926
926
|
<div class="ttc" id="aclassSVF_1_1ConstraintNode_html_ae8ac9ad8e766b961c7ce06d7219f37af"><div class="ttname"><a href="classSVF_1_1ConstraintNode.html#ae8ac9ad8e766b961c7ce06d7219f37af">SVF::ConstraintNode::incomingAddrsEnd</a></div><div class="ttdeci">const_iterator incomingAddrsEnd() const</div><div class="ttdef"><b>Definition:</b> <a href="ConsGNode_8h_source.html#l00185">ConsGNode.h:185</a></div></div>
|
|
927
927
|
<div class="ttc" id="acJSON_8cpp_html_ab6e2ea6dc7bd57d1483413449998230a"><div class="ttname"><a href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a></div><div class="ttdeci">cJSON * n</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8cpp_source.html#l02558">cJSON.cpp:2558</a></div></div>
|
|
928
928
|
<div class="ttc" id="aclassSVF_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#l00180">GenericGraph.h:180</a></div></div>
|
|
929
|
-
<div class="ttc" id="aclassSVF_1_1Andersen_html_ae79bff0e9c49f15e7db00ed605824d98"><div class="ttname"><a href="classSVF_1_1Andersen.html#ae79bff0e9c49f15e7db00ed605824d98">SVF::Andersen::collapsePWCNode</a></div><div class="ttdeci">virtual void collapsePWCNode(NodeID nodeId)</div><div class="ttdoc">Collapse a field object into its base for field insensitive
|
|
929
|
+
<div class="ttc" id="aclassSVF_1_1Andersen_html_ae79bff0e9c49f15e7db00ed605824d98"><div class="ttname"><a href="classSVF_1_1Andersen.html#ae79bff0e9c49f15e7db00ed605824d98">SVF::Andersen::collapsePWCNode</a></div><div class="ttdeci">virtual void collapsePWCNode(NodeID nodeId)</div><div class="ttdoc">Collapse a field object into its base for field insensitive analysis.</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8cpp_source.html#l00482">Andersen.cpp:482</a></div></div>
|
|
930
930
|
<div class="ttc" id="aclassSVF_1_1Andersen_html_a31ea24432ff42ab86a4728f2bde571bc"><div class="ttname"><a href="classSVF_1_1Andersen.html#a31ea24432ff42ab86a4728f2bde571bc">SVF::Andersen::SCCDetect</a></div><div class="ttdeci">virtual NodeStack & SCCDetect()</div><div class="ttdoc">SCC detection.</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8cpp_source.html#l00630">Andersen.cpp:630</a></div></div>
|
|
931
931
|
<div class="ttc" id="aclassSVF_1_1GenericEdge_html_ad9edb45e74ae675d9da82f5acf02d56e"><div class="ttname"><a href="classSVF_1_1GenericEdge.html#ad9edb45e74ae675d9da82f5acf02d56e">SVF::GenericEdge::getDstID</a></div><div class="ttdeci">NodeID getDstID() const</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00085">GenericGraph.h:85</a></div></div>
|
|
932
932
|
<div class="ttc" id="anamespaceSVF_html_a1811127aebdb9c926e39d155e20b3dc0"><div class="ttname"><a href="namespaceSVF.html#a1811127aebdb9c926e39d155e20b3dc0">SVF::NodeStack</a></div><div class="ttdeci">std::stack< NodeID > NodeStack</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00119">SVFType.h:119</a></div></div>
|
|
@@ -489,7 +489,7 @@ $(function() {
|
|
|
489
489
|
<div class="ttc" id="aclassSVF_1_1AndersenBase_html_adaf738bee77a4b1fbb8d42911fabdb49"><div class="ttname"><a href="classSVF_1_1AndersenBase.html#adaf738bee77a4b1fbb8d42911fabdb49">SVF::AndersenBase::AveragePointsToSetSize</a></div><div class="ttdeci">static u32_t AveragePointsToSetSize</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00141">Andersen.h:141</a></div></div>
|
|
490
490
|
<div class="ttc" id="aclassSVF_1_1AndersenBase_html"><div class="ttname"><a href="classSVF_1_1AndersenBase.html">SVF::AndersenBase</a></div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00055">Andersen.h:55</a></div></div>
|
|
491
491
|
<div class="ttc" id="aclassSVF_1_1Andersen_html_a680dc709c0263fc1a13aa5c81d95fc72"><div class="ttname"><a href="classSVF_1_1Andersen.html#a680dc709c0263fc1a13aa5c81d95fc72">SVF::Andersen::Andersen</a></div><div class="ttdeci">Andersen(SVFIR *_pag, PTATY type=Andersen_WPA, bool alias_check=true)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00165">Andersen.h:165</a></div></div>
|
|
492
|
-
<div class="ttc" id="aclassSVF_1_1Andersen_html_ae79bff0e9c49f15e7db00ed605824d98"><div class="ttname"><a href="classSVF_1_1Andersen.html#ae79bff0e9c49f15e7db00ed605824d98">SVF::Andersen::collapsePWCNode</a></div><div class="ttdeci">virtual void collapsePWCNode(NodeID nodeId)</div><div class="ttdoc">Collapse a field object into its base for field insensitive
|
|
492
|
+
<div class="ttc" id="aclassSVF_1_1Andersen_html_ae79bff0e9c49f15e7db00ed605824d98"><div class="ttname"><a href="classSVF_1_1Andersen.html#ae79bff0e9c49f15e7db00ed605824d98">SVF::Andersen::collapsePWCNode</a></div><div class="ttdeci">virtual void collapsePWCNode(NodeID nodeId)</div><div class="ttdoc">Collapse a field object into its base for field insensitive analysis.</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8cpp_source.html#l00482">Andersen.cpp:482</a></div></div>
|
|
493
493
|
<div class="ttc" id="aclassSVF_1_1Andersen_html_a31ea24432ff42ab86a4728f2bde571bc"><div class="ttname"><a href="classSVF_1_1Andersen.html#a31ea24432ff42ab86a4728f2bde571bc">SVF::Andersen::SCCDetect</a></div><div class="ttdeci">virtual NodeStack & SCCDetect()</div><div class="ttdoc">SCC detection.</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8cpp_source.html#l00630">Andersen.cpp:630</a></div></div>
|
|
494
494
|
<div class="ttc" id="aclassSVF_1_1Andersen_html_a15218a84e653baf2cd7f1dc95ccfb77d"><div class="ttname"><a href="classSVF_1_1Andersen.html#a15218a84e653baf2cd7f1dc95ccfb77d">SVF::Andersen::~Andersen</a></div><div class="ttdeci">virtual ~Andersen()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00171">Andersen.h:171</a></div></div>
|
|
495
495
|
<div class="ttc" id="anamespaceSVF_html_a1811127aebdb9c926e39d155e20b3dc0"><div class="ttname"><a href="namespaceSVF.html#a1811127aebdb9c926e39d155e20b3dc0">SVF::NodeStack</a></div><div class="ttdeci">std::stack< NodeID > NodeStack</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00119">SVFType.h:119</a></div></div>
|
|
@@ -293,7 +293,7 @@ $(function() {
|
|
|
293
293
|
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>  {</div>
|
|
294
294
|
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>  <span class="comment">//</span></div>
|
|
295
295
|
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>  <span class="comment">// For other instructions, we want to insert instructions replacing</span></div>
|
|
296
|
-
<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>  <span class="comment">// constant expressions
|
|
296
|
+
<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>  <span class="comment">// constant expressions immediately before the instruction using the</span></div>
|
|
297
297
|
<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>  <span class="comment">// constant expression.</span></div>
|
|
298
298
|
<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>  <span class="comment">//</span></div>
|
|
299
299
|
<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>  <span class="keywordflow">if</span> (<a class="code" href="namespaceSVF.html#a911dbaab38cb42deb9c195c7f687853d">ConstantExpr</a> * CE = <a class="code" href="BreakConstantExpr_8cpp.html#a81381bb19688464256bd09ef22e965e4">hasConstantGEP</a> (I->getOperand(<a class="code" href="cJSON_8h.html#a750b5d744c39a06bfb13e6eb010e35d0">index</a>)))</div>
|
|
@@ -571,7 +571,7 @@ $(function() {
|
|
|
571
571
|
<div class="ttc" id="aclassSVF_1_1GrammarBase_html_ad6307c28042ff43678bd7bff1cd2c7c1"><div class="ttname"><a href="classSVF_1_1GrammarBase.html#ad6307c28042ff43678bd7bff1cd2c7c1">SVF::GrammarBase::getKindToAttrsMap</a></div><div class="ttdeci">const Map< Kind, Set< Attribute > > & getKindToAttrsMap() const</div><div class="ttdef"><b>Definition:</b> <a href="CFGrammar_8h_source.html#l00195">CFGrammar.h:195</a></div></div>
|
|
572
572
|
<div class="ttc" id="aclassSVF_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="CFGrammar_8h_source.html#l00150">CFGrammar.h:150</a></div></div>
|
|
573
573
|
<div class="ttc" id="aclassSVF_1_1GrammarBase_html_a604cb7d4850cfd12d3b8730e0cab84af"><div class="ttname"><a href="classSVF_1_1GrammarBase.html#a604cb7d4850cfd12d3b8730e0cab84af">SVF::GrammarBase::startKind</a></div><div class="ttdeci">Kind startKind</div><div class="ttdef"><b>Definition:</b> <a href="CFGrammar_8h_source.html#l00279">CFGrammar.h:279</a></div></div>
|
|
574
|
-
<div class="ttc" id="astructSVF_1_1GrammarBase_1_1Symbol_html_aa37072e1a6c0875305260c7c2414d767"><div class="ttname"><a href="structSVF_1_1GrammarBase_1_1Symbol.html#aa37072e1a6c0875305260c7c2414d767">SVF::GrammarBase::Symbol::Symbol</a></div><div class="ttdeci">Symbol(const u32_t &num)</div><div class="ttdoc">
|
|
574
|
+
<div class="ttc" id="astructSVF_1_1GrammarBase_1_1Symbol_html_aa37072e1a6c0875305260c7c2414d767"><div class="ttname"><a href="structSVF_1_1GrammarBase_1_1Symbol.html#aa37072e1a6c0875305260c7c2414d767">SVF::GrammarBase::Symbol::Symbol</a></div><div class="ttdeci">Symbol(const u32_t &num)</div><div class="ttdoc">Construct from u32_t move the bit to right field.</div><div class="ttdef"><b>Definition:</b> <a href="CFGrammar_8h_source.html#l00052">CFGrammar.h:52</a></div></div>
|
|
575
575
|
<div class="ttc" id="astructSVF_1_1GrammarBase_1_1Symbol_html_a756bed7c50c6d3251cc4832247c8691d"><div class="ttname"><a href="structSVF_1_1GrammarBase_1_1Symbol.html#a756bed7c50c6d3251cc4832247c8691d">SVF::GrammarBase::Symbol::attribute</a></div><div class="ttdeci">Attribute attribute</div><div class="ttdef"><b>Definition:</b> <a href="CFGrammar_8h_source.html#l00045">CFGrammar.h:45</a></div></div>
|
|
576
576
|
<div class="ttc" id="aclassSVF_1_1GrammarBase_html_a51b55df841ae449ecf0888325c6e8c6a"><div class="ttname"><a href="classSVF_1_1GrammarBase.html#a51b55df841ae449ecf0888325c6e8c6a">SVF::GrammarBase::getEBNFSigns</a></div><div class="ttdeci">Map< std::string, Kind > & getEBNFSigns()</div><div class="ttdef"><b>Definition:</b> <a href="CFGrammar_8h_source.html#l00180">CFGrammar.h:180</a></div></div>
|
|
577
577
|
<div class="ttc" id="aclassSVF_1_1CFGrammar_html_a66a41e0f9a4c6112a686584e7d48d1e6"><div class="ttname"><a href="classSVF_1_1CFGrammar.html#a66a41e0f9a4c6112a686584e7d48d1e6">SVF::CFGrammar::epsilonProds</a></div><div class="ttdeci">SymbolSet< Production > epsilonProds</div><div class="ttdef"><b>Definition:</b> <a href="CFGrammar_8h_source.html#l00394">CFGrammar.h:394</a></div></div>
|
|
@@ -262,7 +262,7 @@ $(function() {
|
|
|
262
262
|
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>  <span class="comment">// Normalize CFL Grammar</span></div>
|
|
263
263
|
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>  normalizeCFLGrammar();</div>
|
|
264
264
|
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>  </div>
|
|
265
|
-
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>  <span class="comment">// Initialize
|
|
265
|
+
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>  <span class="comment">// Initialize solver</span></div>
|
|
266
266
|
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>  initializeSolver();</div>
|
|
267
267
|
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> }</div>
|
|
268
268
|
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>  </div>
|
|
@@ -299,7 +299,7 @@ $(function() {
|
|
|
299
299
|
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>  numOfIteration++;</div>
|
|
300
300
|
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>  solver->solve();</div>
|
|
301
301
|
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>  }</div>
|
|
302
|
-
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>  } <span class="comment">// Only cflgraph built from bc could
|
|
302
|
+
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>  } <span class="comment">// Only cflgraph built from bc could reanalyze by update call graph</span></div>
|
|
303
303
|
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>  </div>
|
|
304
304
|
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>  <span class="keywordtype">double</span> end = stat->getClk(<span class="keyword">true</span>);</div>
|
|
305
305
|
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>  timeOfSolving += (end - start) / <a class="code" href="SVFType_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a>;</div>
|
|
@@ -138,7 +138,7 @@ $(function() {
|
|
|
138
138
|
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  <span class="comment">// Normalize grammar</span></div>
|
|
139
139
|
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  normalizeCFLGrammar();</div>
|
|
140
140
|
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>  </div>
|
|
141
|
-
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  <span class="comment">// Initialize
|
|
141
|
+
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  <span class="comment">// Initialize solver</span></div>
|
|
142
142
|
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>  solver = <span class="keyword">new</span> <a class="code" href="classSVF_1_1CFLSolver.html">CFLSolver</a>(graph, grammar);</div>
|
|
143
143
|
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> }</div>
|
|
144
144
|
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  </div>
|
|
@@ -69,7 +69,7 @@ $(function() {
|
|
|
69
69
|
<div class="title">CHG.h</div> </div>
|
|
70
70
|
</div><!--header-->
|
|
71
71
|
<div class="contents">
|
|
72
|
-
<a href="CHG_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">//===----- CHG.h -- Class
|
|
72
|
+
<a href="CHG_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">//===----- CHG.h -- Class hierarchy graph ---------------------------//</span></div>
|
|
73
73
|
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment">//</span></div>
|
|
74
74
|
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment">// SVF: Static Value-Flow Analysis</span></div>
|
|
75
75
|
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment">//</span></div>
|
|
@@ -132,7 +132,7 @@ $(function() {
|
|
|
132
132
|
<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="namespaceSVF_1_1SVFUtil.html"> 62</a></span> <span class="keyword">namespace </span>SVFUtil</div>
|
|
133
133
|
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> {</div>
|
|
134
134
|
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>  </div>
|
|
135
|
-
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="comment">//===- Part of llvm/Support/type_traits.h -
|
|
135
|
+
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="comment">//===- Part of llvm/Support/type_traits.h - Simplified type traits -------*- C++ -*-===//</span></div>
|
|
136
136
|
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>  </div>
|
|
137
137
|
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="keyword">template</span><<span class="keyword">typename</span> T, <span class="keyword">typename</span> Enable = <span class="keywordtype">void</span>></div>
|
|
138
138
|
<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="structSVF_1_1SVFUtil_1_1add__const__past__pointer.html"> 70</a></span> <span class="keyword">struct </span><a class="code" href="structSVF_1_1SVFUtil_1_1add__const__past__pointer.html">add_const_past_pointer</a></div>
|
|
@@ -959,7 +959,7 @@ $(function() {
|
|
|
959
959
|
<div class="ttc" id="aclassSVF_1_1CondStdSet_html_afa190562e8b85630845617c23fc5a16b"><div class="ttname"><a href="classSVF_1_1CondStdSet.html#afa190562e8b85630845617c23fc5a16b">SVF::CondStdSet::size</a></div><div class="ttdeci">unsigned size() const</div><div class="ttdef"><b>Definition:</b> <a href="ConditionalPT_8h_source.html#l00174">ConditionalPT.h:174</a></div></div>
|
|
960
960
|
<div class="ttc" id="aclassSVF_1_1CondPointsToSet_1_1CondPtsSetIterator_html_ad22614f30570619802e23715d1d5eaf0"><div class="ttname"><a href="classSVF_1_1CondPointsToSet_1_1CondPtsSetIterator.html#ad22614f30570619802e23715d1d5eaf0">SVF::CondPointsToSet::CondPtsSetIterator::atEnd</a></div><div class="ttdeci">bool atEnd</div><div class="ttdef"><b>Definition:</b> <a href="ConditionalPT_8h_source.html#l00811">ConditionalPT.h:811</a></div></div>
|
|
961
961
|
<div class="ttc" id="aclassSVF_1_1CondStdSet_html_a6697d9c3d1107db2be430b8e8b670cb5"><div class="ttname"><a href="classSVF_1_1CondStdSet.html#a6697d9c3d1107db2be430b8e8b670cb5">SVF::CondStdSet::operator==</a></div><div class="ttdeci">bool operator==(const CondStdSet< Element > &rhs) const</div><div class="ttdef"><b>Definition:</b> <a href="ConditionalPT_8h_source.html#l00240">ConditionalPT.h:240</a></div></div>
|
|
962
|
-
<div class="ttc" id="aclassSVF_1_1CondPointsToSet_html_a63f09ca69e00b317de29af6a6a12daac"><div class="ttname"><a href="classSVF_1_1CondPointsToSet.html#a63f09ca69e00b317de29af6a6a12daac">SVF::CondPointsToSet::pointsTo</a></div><div class="ttdeci">CondPts & pointsTo(void)</div><div class="ttdoc">Get Conditional PointsTo and
|
|
962
|
+
<div class="ttc" id="aclassSVF_1_1CondPointsToSet_html_a63f09ca69e00b317de29af6a6a12daac"><div class="ttname"><a href="classSVF_1_1CondPointsToSet.html#a63f09ca69e00b317de29af6a6a12daac">SVF::CondPointsToSet::pointsTo</a></div><div class="ttdeci">CondPts & pointsTo(void)</div><div class="ttdoc">Get Conditional PointsTo and standard points-to.</div><div class="ttdef"><b>Definition:</b> <a href="ConditionalPT_8h_source.html#l00332">ConditionalPT.h:332</a></div></div>
|
|
963
963
|
<div class="ttc" id="aclassSVF_1_1CondPointsToSet_html_aa9d3a8c42b6df3fa9c2e7bcd7af75e16"><div class="ttname"><a href="classSVF_1_1CondPointsToSet.html#aa9d3a8c42b6df3fa9c2e7bcd7af75e16">SVF::CondPointsToSet::CondPtsConstIter</a></div><div class="ttdeci">CondPts::const_iterator CondPtsConstIter</div><div class="ttdef"><b>Definition:</b> <a href="ConditionalPT_8h_source.html#l00309">ConditionalPT.h:309</a></div></div>
|
|
964
964
|
<div class="ttc" id="aclassSVF_1_1CondPointsToSet_html_a54d9d3f3a38bf4066cd930845f86a63c"><div class="ttname"><a href="classSVF_1_1CondPointsToSet.html#a54d9d3f3a38bf4066cd930845f86a63c">SVF::CondPointsToSet::operator<</a></div><div class="ttdeci">bool operator<(const CondPointsToSet< Cond > &rhs) const</div><div class="ttdef"><b>Definition:</b> <a href="ConditionalPT_8h_source.html#l00634">ConditionalPT.h:634</a></div></div>
|
|
965
965
|
<div class="ttc" id="anamespaceSVF_html_a4f21e91ff8eaea5207afe5c60dbd78d7"><div class="ttname"><a href="namespaceSVF.html#a4f21e91ff8eaea5207afe5c60dbd78d7">SVF::OrderedSet</a></div><div class="ttdeci">std::set< Key, Compare, Allocator > OrderedSet</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00106">SVFType.h:106</a></div></div>
|
|
@@ -897,7 +897,7 @@ $(function() {
|
|
|
897
897
|
<div class="ttc" id="aclassSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9a3c3f8883c2d3b50aef6331d5da97ffb0"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a3c3f8883c2d3b50aef6331d5da97ffb0">SVF::SVFStmt::ThreadJoin</a></div><div class="ttdeci">@ ThreadJoin</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00077">SVFStatements.h:77</a></div></div>
|
|
898
898
|
<div class="ttc" id="aclassSVF_1_1ConstraintEdge_html_a663af27955ba0c545f34fa1f076b7375ae5df3ce07dd670b48916f7b8ab33ae5a"><div class="ttname"><a href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375ae5df3ce07dd670b48916f7b8ab33ae5a">SVF::ConstraintEdge::VariantGep</a></div><div class="ttdeci">@ VariantGep</div><div class="ttdef"><b>Definition:</b> <a href="ConsGEdge_8h_source.html#l00056">ConsGEdge.h:56</a></div></div>
|
|
899
899
|
<div class="ttc" id="aclassSVF_1_1LoadCGEdge_html"><div class="ttname"><a href="classSVF_1_1LoadCGEdge.html">SVF::LoadCGEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="ConsGEdge_8h_source.html#l00191">ConsGEdge.h:191</a></div></div>
|
|
900
|
-
<div class="ttc" id="aclassSVF_1_1ConstraintGraph_html_aaae56afed424f7cd59fddb3fcb2f7214"><div class="ttname"><a href="classSVF_1_1ConstraintGraph.html#aaae56afed424f7cd59fddb3fcb2f7214">SVF::ConstraintGraph::reTargetSrcOfEdge</a></div><div class="ttdeci">void reTargetSrcOfEdge(ConstraintEdge *edge, ConstraintNode *newSrcNode)</div><div class="ttdoc">Remove edge from old src target, change edge dst id and add
|
|
900
|
+
<div class="ttc" id="aclassSVF_1_1ConstraintGraph_html_aaae56afed424f7cd59fddb3fcb2f7214"><div class="ttname"><a href="classSVF_1_1ConstraintGraph.html#aaae56afed424f7cd59fddb3fcb2f7214">SVF::ConstraintGraph::reTargetSrcOfEdge</a></div><div class="ttdeci">void reTargetSrcOfEdge(ConstraintEdge *edge, ConstraintNode *newSrcNode)</div><div class="ttdoc">Remove edge from old src target, change edge dst id and add modified edge into new src.</div><div class="ttdef"><b>Definition:</b> <a href="ConsG_8cpp_source.html#l00347">ConsG.cpp:347</a></div></div>
|
|
901
901
|
<div class="ttc" id="aclassSVF_1_1ConstraintNode_html_a24ef3eedb218283d106eceb8a73ca1b4"><div class="ttname"><a href="classSVF_1_1ConstraintNode.html#a24ef3eedb218283d106eceb8a73ca1b4">SVF::ConstraintNode::removeOutgoingStoreEdge</a></div><div class="ttdeci">bool removeOutgoingStoreEdge(StoreCGEdge *outEdge)</div><div class="ttdef"><b>Definition:</b> <a href="ConsGNode_8h_source.html#l00367">ConsGNode.h:367</a></div></div>
|
|
902
902
|
<div class="ttc" id="astructSVF_1_1DOTGraphTraits_html"><div class="ttname"><a href="structSVF_1_1DOTGraphTraits.html">SVF::DOTGraphTraits</a></div><div class="ttdef"><b>Definition:</b> <a href="DOTGraphTraits_8h_source.html#l00181">DOTGraphTraits.h:181</a></div></div>
|
|
903
903
|
<div class="ttc" id="astructSVF_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4_html_a6948926922a5c5378d92c3c6aa0b3ccd"><div class="ttname"><a href="structSVF_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html#a6948926922a5c5378d92c3c6aa0b3ccd">SVF::DOTGraphTraits< ConstraintGraph * >::getGraphName</a></div><div class="ttdeci">static std::string getGraphName(ConstraintGraph *)</div><div class="ttdoc">Return name of the graph.</div><div class="ttdef"><b>Definition:</b> <a href="ConsG_8cpp_source.html#l00715">ConsG.cpp:715</a></div></div>
|
|
@@ -486,7 +486,7 @@ $(function() {
|
|
|
486
486
|
<div class="ttc" id="aclassSVF_1_1ConstraintGraph_html_a26722666cc8f2fce61bed73f086a0e87"><div class="ttname"><a href="classSVF_1_1ConstraintGraph.html#a26722666cc8f2fce61bed73f086a0e87">SVF::ConstraintGraph::getConstraintNode</a></div><div class="ttdeci">ConstraintNode * getConstraintNode(NodeID id) const</div><div class="ttdoc">Get/add/remove constraint node.</div><div class="ttdef"><b>Definition:</b> <a href="ConsG_8h_source.html#l00107">ConsG.h:107</a></div></div>
|
|
487
487
|
<div class="ttc" id="aclassSVF_1_1ConstraintEdge_html_a663af27955ba0c545f34fa1f076b7375ae5df3ce07dd670b48916f7b8ab33ae5a"><div class="ttname"><a href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375ae5df3ce07dd670b48916f7b8ab33ae5a">SVF::ConstraintEdge::VariantGep</a></div><div class="ttdeci">@ VariantGep</div><div class="ttdef"><b>Definition:</b> <a href="ConsGEdge_8h_source.html#l00056">ConsGEdge.h:56</a></div></div>
|
|
488
488
|
<div class="ttc" id="aclassSVF_1_1LoadCGEdge_html"><div class="ttname"><a href="classSVF_1_1LoadCGEdge.html">SVF::LoadCGEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="ConsGEdge_8h_source.html#l00191">ConsGEdge.h:191</a></div></div>
|
|
489
|
-
<div class="ttc" id="aclassSVF_1_1ConstraintGraph_html_aaae56afed424f7cd59fddb3fcb2f7214"><div class="ttname"><a href="classSVF_1_1ConstraintGraph.html#aaae56afed424f7cd59fddb3fcb2f7214">SVF::ConstraintGraph::reTargetSrcOfEdge</a></div><div class="ttdeci">void reTargetSrcOfEdge(ConstraintEdge *edge, ConstraintNode *newSrcNode)</div><div class="ttdoc">Remove edge from old src target, change edge dst id and add
|
|
489
|
+
<div class="ttc" id="aclassSVF_1_1ConstraintGraph_html_aaae56afed424f7cd59fddb3fcb2f7214"><div class="ttname"><a href="classSVF_1_1ConstraintGraph.html#aaae56afed424f7cd59fddb3fcb2f7214">SVF::ConstraintGraph::reTargetSrcOfEdge</a></div><div class="ttdeci">void reTargetSrcOfEdge(ConstraintEdge *edge, ConstraintNode *newSrcNode)</div><div class="ttdoc">Remove edge from old src target, change edge dst id and add modified edge into new src.</div><div class="ttdef"><b>Definition:</b> <a href="ConsG_8cpp_source.html#l00347">ConsG.cpp:347</a></div></div>
|
|
490
490
|
<div class="ttc" id="aclassSVF_1_1SVFFunction_html"><div class="ttname"><a href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00270">SVFValue.h:270</a></div></div>
|
|
491
491
|
<div class="ttc" id="aclassSVF_1_1ConstraintGraph_html_aad3d05c949c33a587b3ac6d627f5a0a2"><div class="ttname"><a href="classSVF_1_1ConstraintGraph.html#aad3d05c949c33a587b3ac6d627f5a0a2">SVF::ConstraintGraph::removeStoreEdge</a></div><div class="ttdeci">void removeStoreEdge(StoreCGEdge *edge)</div><div class="ttdoc">Remove store edge from their src and dst edge sets.</div><div class="ttdef"><b>Definition:</b> <a href="ConsG_8cpp_source.html#l00414">ConsG.cpp:414</a></div></div>
|
|
492
492
|
<div class="ttc" id="aclassSVF_1_1ConstraintGraph_html_a518b9eee508c8ef9c880f04bacf5df9f"><div class="ttname"><a href="classSVF_1_1ConstraintGraph.html#a518b9eee508c8ef9c880f04bacf5df9f">SVF::ConstraintGraph::ConstraintNodeIDToNodeMapTy</a></div><div class="ttdeci">OrderedMap< NodeID, ConstraintNode * > ConstraintNodeIDToNodeMapTy</div><div class="ttdef"><b>Definition:</b> <a href="ConsG_8h_source.html#l00048">ConsG.h:48</a></div></div>
|
|
@@ -533,7 +533,7 @@ $(function() {
|
|
|
533
533
|
<div class="ttc" id="aclassSVF_1_1SVFIR_html_a7276e82b4648ed0e1b3d1b8b37b24089"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a7276e82b4648ed0e1b3d1b8b37b24089">SVF::SVFIR::getAllFieldsObjVars</a></div><div class="ttdeci">NodeBS & getAllFieldsObjVars(const MemObj *obj)</div><div class="ttdoc">Get all fields of an object.</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8cpp_source.html#l00475">SVFIR.cpp:475</a></div></div>
|
|
534
534
|
<div class="ttc" id="aclassSVF_1_1ConstraintGraph_html_afe34ca6bdbb22b188799a4297fd19004"><div class="ttname"><a href="classSVF_1_1ConstraintGraph.html#afe34ca6bdbb22b188799a4297fd19004">SVF::ConstraintGraph::NodeToRepMap</a></div><div class="ttdeci">Map< NodeID, NodeID > NodeToRepMap</div><div class="ttdef"><b>Definition:</b> <a href="ConsG_8h_source.html#l00050">ConsG.h:50</a></div></div>
|
|
535
535
|
<div class="ttc" id="aclassSVF_1_1ConstraintGraph_html_a081bf1238121eb52a0c9ad60f77ecbcd"><div class="ttname"><a href="classSVF_1_1ConstraintGraph.html#a081bf1238121eb52a0c9ad60f77ecbcd">SVF::ConstraintGraph::moveInEdgesToRepNode</a></div><div class="ttdeci">bool moveInEdgesToRepNode(ConstraintNode *node, ConstraintNode *rep)</div><div class="ttdef"><b>Definition:</b> <a href="ConsG_8cpp_source.html#l00442">ConsG.cpp:442</a></div></div>
|
|
536
|
-
<div class="ttc" id="aclassSVF_1_1ConstraintGraph_html_a095fc7d429d792a5c4c3c67dc40240d5"><div class="ttname"><a href="classSVF_1_1ConstraintGraph.html#a095fc7d429d792a5c4c3c67dc40240d5">SVF::ConstraintGraph::getValueNode</a></div><div class="ttdeci">NodeID getValueNode(const SVFValue *value) const</div><div class="ttdoc">
|
|
536
|
+
<div class="ttc" id="aclassSVF_1_1ConstraintGraph_html_a095fc7d429d792a5c4c3c67dc40240d5"><div class="ttname"><a href="classSVF_1_1ConstraintGraph.html#a095fc7d429d792a5c4c3c67dc40240d5">SVF::ConstraintGraph::getValueNode</a></div><div class="ttdeci">NodeID getValueNode(const SVFValue *value) const</div><div class="ttdoc">Wrappers used internally, not expose to Andersen Pass.</div><div class="ttdef"><b>Definition:</b> <a href="ConsG_8h_source.html#l00077">ConsG.h:77</a></div></div>
|
|
537
537
|
<div class="ttc" id="anamespaceSVF_html_a43a65e0d33af3c743294f7a1139d2301"><div class="ttname"><a href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">SVF::NodeID</a></div><div class="ttdeci">unsigned NodeID</div><div class="ttdef"><b>Definition:</b> <a href="svf-llvm_2tools_2MTA_2MTAResultValidator_8h_source.html#l00020">MTAResultValidator.h:20</a></div></div>
|
|
538
538
|
<div class="ttc" id="aclassSVF_1_1ConstraintGraph_html_a48a71f212e368769218a6f332822c976"><div class="ttname"><a href="classSVF_1_1ConstraintGraph.html#a48a71f212e368769218a6f332822c976">SVF::ConstraintGraph::getIndirectCallsites</a></div><div class="ttdeci">const SVFIR::CallSiteToFunPtrMap & getIndirectCallsites() const</div><div class="ttdoc">Wrappers for invoking SVFIR methods.</div><div class="ttdef"><b>Definition:</b> <a href="ConsG_8h_source.html#l00302">ConsG.h:302</a></div></div>
|
|
539
539
|
<div class="ttc" id="aclassSVF_1_1MemObj_html_a51be7ad70bc2c6a4230bd2f6b86bdc88"><div class="ttname"><a href="classSVF_1_1MemObj.html#a51be7ad70bc2c6a4230bd2f6b86bdc88">SVF::MemObj::getMaxFieldOffsetLimit</a></div><div class="ttdeci">u32_t getMaxFieldOffsetLimit() const</div><div class="ttdoc">Get max field offset limit.</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00453">SymbolTableInfo.cpp:453</a></div></div>
|
|
@@ -375,7 +375,7 @@ $(function() {
|
|
|
375
375
|
<div class="line"><a name="l00344"></a><span class="lineno"> 344</span>  <span class="keywordflow">if</span> (gepobj != <span class="keyword">nullptr</span>)</div>
|
|
376
376
|
<div class="line"><a name="l00345"></a><span class="lineno"> 345</span>  {</div>
|
|
377
377
|
<div class="line"><a name="l00346"></a><span class="lineno"> 346</span>  assert(SVFUtil::isa<DummyObjVar>(<a class="code" href="classSVF_1_1DDAVFSolver.html#a5521918cc06c182c821b9fae8136e4fe">_pag</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(gepobj-><a class="code" href="classSVF_1_1GepObjVar.html#a4c5e346db61f7e04c15bf8527d8eff3c">getBaseNode</a>()))</div>
|
|
378
|
-
<div class="line"><a name="l00347"></a><span class="lineno"> 347</span>  && <span class="stringliteral">"
|
|
378
|
+
<div class="line"><a name="l00347"></a><span class="lineno"> 347</span>  && <span class="stringliteral">"empty refVal in a gep object whose base is a non-dummy object"</span>);</div>
|
|
379
379
|
<div class="line"><a name="l00348"></a><span class="lineno"> 348</span>  }</div>
|
|
380
380
|
<div class="line"><a name="l00349"></a><span class="lineno"> 349</span>  <span class="keywordflow">else</span></div>
|
|
381
381
|
<div class="line"><a name="l00350"></a><span class="lineno"> 350</span>  {</div>
|
|
@@ -365,7 +365,7 @@ $(function() {
|
|
|
365
365
|
<div class="ttc" id="aclassSVF_1_1FSMPTA_html_a6850ae40363e49f7167a23aee3cd63fb"><div class="ttname"><a href="classSVF_1_1FSMPTA.html#a6850ae40363e49f7167a23aee3cd63fb">SVF::FSMPTA::~FSMPTA</a></div><div class="ttdeci">~FSMPTA()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> <a href="FSMPTA_8h_source.html#l00214">FSMPTA.h:214</a></div></div>
|
|
366
366
|
<div class="ttc" id="aclassSVF_1_1MTASVFGBuilder_html_a26f850fc0fe434f1972c151d7c3ad9fd"><div class="ttname"><a href="classSVF_1_1MTASVFGBuilder.html#a26f850fc0fe434f1972c151d7c3ad9fd">SVF::MTASVFGBuilder::prevset</a></div><div class="ttdeci">Map< const StmtSVFGNode *, SVFGNodeIDSet > prevset</div><div class="ttdef"><b>Definition:</b> <a href="FSMPTA_8h_source.html#l00177">FSMPTA.h:177</a></div></div>
|
|
367
367
|
<div class="ttc" id="aPointsTo_8h_html"><div class="ttname"><a href="PointsTo_8h.html">PointsTo.h</a></div></div>
|
|
368
|
-
<div class="ttc" id="aclassSVF_1_1FSMPTA_html_a8a2d1c846f8b6aead8d9426e1effa426"><div class="ttname"><a href="classSVF_1_1FSMPTA.html#a8a2d1c846f8b6aead8d9426e1effa426">SVF::FSMPTA::createFSMPTA</a></div><div class="ttdeci">static FSMPTA * createFSMPTA(SVFModule *module, MHP *m, LockAnalysis *la)</div><div class="ttdoc">Create
|
|
368
|
+
<div class="ttc" id="aclassSVF_1_1FSMPTA_html_a8a2d1c846f8b6aead8d9426e1effa426"><div class="ttname"><a href="classSVF_1_1FSMPTA.html#a8a2d1c846f8b6aead8d9426e1effa426">SVF::FSMPTA::createFSMPTA</a></div><div class="ttdeci">static FSMPTA * createFSMPTA(SVFModule *module, MHP *m, LockAnalysis *la)</div><div class="ttdoc">Create single instance of flow-sensitive pointer analysis.</div><div class="ttdef"><b>Definition:</b> <a href="FSMPTA_8h_source.html#l00227">FSMPTA.h:227</a></div></div>
|
|
369
369
|
<div class="ttc" id="aclassSVF_1_1MTASVFGBuilder_html_a1c0de33bba2f05f14140d872c345ab38"><div class="ttname"><a href="classSVF_1_1MTASVFGBuilder.html#a1c0de33bba2f05f14140d872c345ab38">SVF::MTASVFGBuilder::edge2pts</a></div><div class="ttdeci">Map< NodeIDPair, PointsTo > edge2pts</div><div class="ttdef"><b>Definition:</b> <a href="FSMPTA_8h_source.html#l00174">FSMPTA.h:174</a></div></div>
|
|
370
370
|
<div class="ttc" id="aclassSVF_1_1VFGNode_html"><div class="ttname"><a href="classSVF_1_1VFGNode.html">SVF::VFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00046">VFGNode.h:46</a></div></div>
|
|
371
371
|
<div class="ttc" id="aclassSVF_1_1MTASVFGBuilder_html_a1010ef4fc52e312f2b22867a63a5810d"><div class="ttname"><a href="classSVF_1_1MTASVFGBuilder.html#a1010ef4fc52e312f2b22867a63a5810d">SVF::MTASVFGBuilder::connectMHPEdges</a></div><div class="ttdeci">void connectMHPEdges(PointerAnalysis *pta)</div><div class="ttdoc">Connect MHP indirect value-flow edges for two nodes that may-happen-in-parallel.</div><div class="ttdef"><b>Definition:</b> <a href="FSMPTA_8cpp_source.html#l00706">FSMPTA.cpp:706</a></div></div>
|
|
@@ -490,7 +490,7 @@ $(function() {
|
|
|
490
490
|
<div class="ttc" id="aclassSVF_1_1FlowSensitive_html_a74f35ec76e2c7cf39355e0c148d973be"><div class="ttname"><a href="classSVF_1_1FlowSensitive.html#a74f35ec76e2c7cf39355e0c148d973be">SVF::FlowSensitive::getSVFG</a></div><div class="ttdeci">SVFG * getSVFG() const</div><div class="ttdoc">Return SVFG.</div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitive_8h_source.html#l00135">FlowSensitive.h:135</a></div></div>
|
|
491
491
|
<div class="ttc" id="aclassSVF_1_1FlowSensitive_html_a808dc8a242f168174339d7ca3196bb58"><div class="ttname"><a href="classSVF_1_1FlowSensitive.html#a808dc8a242f168174339d7ca3196bb58">SVF::FlowSensitive::getDFOutPtsSet</a></div><div class="ttdeci">const PointsTo & getDFOutPtsSet(const SVFGNode *stmt, const NodeID node)</div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitive_8h_source.html#l00252">FlowSensitive.h:252</a></div></div>
|
|
492
492
|
<div class="ttc" id="anamespaceSVF_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#l00051">SVFType.h:51</a></div></div>
|
|
493
|
-
<div class="ttc" id="aclassSVF_1_1FlowSensitive_html_af21aa66bc41607d8c93faf1acea1f3be"><div class="ttname"><a href="classSVF_1_1FlowSensitive.html#af21aa66bc41607d8c93faf1acea1f3be">SVF::FlowSensitive::createFSWPA</a></div><div class="ttdeci">static FlowSensitive * createFSWPA(SVFIR *_pag)</div><div class="ttdoc">Create
|
|
493
|
+
<div class="ttc" id="aclassSVF_1_1FlowSensitive_html_af21aa66bc41607d8c93faf1acea1f3be"><div class="ttname"><a href="classSVF_1_1FlowSensitive.html#af21aa66bc41607d8c93faf1acea1f3be">SVF::FlowSensitive::createFSWPA</a></div><div class="ttdeci">static FlowSensitive * createFSWPA(SVFIR *_pag)</div><div class="ttdoc">Create single instance of flow-sensitive pointer analysis.</div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitive_8h_source.html#l00079">FlowSensitive.h:79</a></div></div>
|
|
494
494
|
<div class="ttc" id="anamespaceSVF_html_a221270d70aa99a37738c0f919519a73d"><div class="ttname"><a href="namespaceSVF.html#a221270d70aa99a37738c0f919519a73d">SVF::WPASVFGFSSolver</a></div><div class="ttdeci">WPAFSSolver< SVFG * > WPASVFGFSSolver</div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitive_8h_source.html#l00043">FlowSensitive.h:43</a></div></div>
|
|
495
495
|
<div class="ttc" id="aclassSVF_1_1DFPTData_html_acee5fb134d3153ae6eb91c15cd2cff66"><div class="ttname"><a href="classSVF_1_1DFPTData.html#acee5fb134d3153ae6eb91c15cd2cff66">SVF::DFPTData::updateDFOutFromIn</a></div><div class="ttdeci">virtual bool updateDFOutFromIn(LocID srcLoc, const Key &srcVar, LocID dstLoc, const Key &dstVar)=0</div><div class="ttdoc">Union (OUT[dstLoc:dstVar], IN[srcLoc:srcVar]).</div></div>
|
|
496
496
|
<!-- start footer part -->
|
|
@@ -160,7 +160,7 @@ $(function() {
|
|
|
160
160
|
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  }</div>
|
|
161
161
|
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>  </div>
|
|
162
162
|
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>  <span class="comment">// non-standard operators, these may not need be bridged but seems it's</span></div>
|
|
163
|
-
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>  <span class="comment">//
|
|
163
|
+
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>  <span class="comment">// prudent to do so...</span></div>
|
|
164
164
|
<div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="classllvm_1_1generic__bridge__gep__type__iterator.html#a7407c9a10bc872bcf03a2a4e67c2c188"> 93</a></span>  <a class="code" href="namespaceSVF.html#a1d008c0666c145622b81d427be64c52d">Type</a>* <a class="code" href="classllvm_1_1generic__bridge__gep__type__iterator.html#a7407c9a10bc872bcf03a2a4e67c2c188">operator-></a>()<span class="keyword"> const</span></div>
|
|
165
165
|
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> <span class="keyword"> </span>{</div>
|
|
166
166
|
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>  <span class="keywordflow">return</span> <a class="code" href="classllvm_1_1generic__bridge__gep__type__iterator.html#aef8babf0bd09f63692e99d3ec563b193">operator*</a>();</div>
|
|
@@ -473,7 +473,7 @@ $(function() {
|
|
|
473
473
|
<div class="line"><a name="l00460"></a><span class="lineno"> 460</span>  </div>
|
|
474
474
|
<div class="line"><a name="l00461"></a><span class="lineno"> 461</span> <span class="comment">/* !</span></div>
|
|
475
475
|
<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> <span class="comment"> * GenericGraphTraits specializations for generic graph algorithms.</span></div>
|
|
476
|
-
<div class="line"><a name="l00463"></a><span class="lineno"> 463</span> <span class="comment"> * Provide graph traits for
|
|
476
|
+
<div class="line"><a name="l00463"></a><span class="lineno"> 463</span> <span class="comment"> * Provide graph traits for traversing from a node using standard graph traversals.</span></div>
|
|
477
477
|
<div class="line"><a name="l00464"></a><span class="lineno"> 464</span> <span class="comment"> */</span></div>
|
|
478
478
|
<div class="line"><a name="l00465"></a><span class="lineno"> 465</span> <span class="keyword">namespace </span><a class="code" href="namespaceSVF.html">SVF</a></div>
|
|
479
479
|
<div class="line"><a name="l00466"></a><span class="lineno"> 466</span> {</div>
|
|
@@ -650,7 +650,7 @@ $(function() {
|
|
|
650
650
|
<div class="ttc" id="aclassSVF_1_1GenericNode_html_a391e996d695b114530120723da1d003e"><div class="ttname"><a href="classSVF_1_1GenericNode.html#a391e996d695b114530120723da1d003e">SVF::GenericNode::getNodeKind</a></div><div class="ttdeci">GNodeK getNodeKind() const</div><div class="ttdoc">Get node kind.</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00186">GenericGraph.h:186</a></div></div>
|
|
651
651
|
<div class="ttc" id="aclassSVF_1_1mapped__iter_html_a1c166c16e98b4bb82d986d459abea89f"><div class="ttname"><a href="classSVF_1_1mapped__iter.html#a1c166c16e98b4bb82d986d459abea89f">SVF::mapped_iter::operator*</a></div><div class="ttdeci">FuncReturnTy operator*() const</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00489">GenericGraph.h:489</a></div></div>
|
|
652
652
|
<div class="ttc" id="aclassSVF_1_1GenericNode_html_a3f20339b5295e11beb0f9adb95c7aa5b"><div class="ttname"><a href="classSVF_1_1GenericNode.html#a3f20339b5295e11beb0f9adb95c7aa5b">SVF::GenericNode::GNodeK</a></div><div class="ttdeci">s64_t GNodeK</div><div class="ttdoc">Edge kind.</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00150">GenericGraph.h:150</a></div></div>
|
|
653
|
-
<div class="ttc" id="aclassSVF_1_1GenericNode_html_aa0e258d3a92dae367f2809a6f16c80db"><div class="ttname"><a href="classSVF_1_1GenericNode.html#aa0e258d3a92dae367f2809a6f16c80db">SVF::GenericNode::directOutEdgeBegin</a></div><div class="ttdeci">virtual iterator directOutEdgeBegin()</div><div class="ttdoc">Iterators used for SCC detection, overwrite it in child class if
|
|
653
|
+
<div class="ttc" id="aclassSVF_1_1GenericNode_html_aa0e258d3a92dae367f2809a6f16c80db"><div class="ttname"><a href="classSVF_1_1GenericNode.html#aa0e258d3a92dae367f2809a6f16c80db">SVF::GenericNode::directOutEdgeBegin</a></div><div class="ttdeci">virtual iterator directOutEdgeBegin()</div><div class="ttdoc">Iterators used for SCC detection, overwrite it in child class if necessary.</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00253">GenericGraph.h:253</a></div></div>
|
|
654
654
|
<div class="ttc" id="aclassSVF_1_1GenericGraph_html_a4bef15157423cef48dc7333a803cd27d"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a4bef15157423cef48dc7333a803cd27d">SVF::GenericGraph::end</a></div><div class="ttdeci">iterator end()</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00384">GenericGraph.h:384</a></div></div>
|
|
655
655
|
<div class="ttc" id="aclassSVF_1_1GenericNode_html_a93d217b0c9fd8008a2989ca2b4f3fbfb"><div class="ttname"><a href="classSVF_1_1GenericNode.html#a93d217b0c9fd8008a2989ca2b4f3fbfb">SVF::GenericNode::addIncomingEdge</a></div><div class="ttdeci">bool addIncomingEdge(EdgeType *inEdge)</div><div class="ttdoc">Add incoming and outgoing edges.</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00290">GenericGraph.h:290</a></div></div>
|
|
656
656
|
<div class="ttc" id="aclassSVF_1_1GenericEdge_html_a20d8b844fc4bb0bb776d290b4e477fc5"><div class="ttname"><a href="classSVF_1_1GenericEdge.html#a20d8b844fc4bb0bb776d290b4e477fc5">SVF::GenericEdge::getEdgeKindWithoutMask</a></div><div class="ttdeci">GEdgeKind getEdgeKindWithoutMask() const</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00093">GenericGraph.h:93</a></div></div>
|
|
@@ -78,7 +78,7 @@ $(function() {
|
|
|
78
78
|
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment">//===----------------------------------------------------------------------===//</span></div>
|
|
79
79
|
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment">//</span></div>
|
|
80
80
|
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment">// This file defines the little GenericGraphTraits<X> template class that should be</span></div>
|
|
81
|
-
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment">// specialized by classes that want to be
|
|
81
|
+
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment">// specialized by classes that want to be iterable by generic graph iterators.</span></div>
|
|
82
82
|
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment">//</span></div>
|
|
83
83
|
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment">// This file also defines the marker class Inverse that is used to iterate over</span></div>
|
|
84
84
|
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment">// graphs in a graph defined, inverse ordering...</span></div>
|
|
@@ -370,7 +370,7 @@ $(function() {
|
|
|
370
370
|
<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>  <span class="keyword">const</span> <span class="keywordtype">void</span> *DestNodeID, <span class="keywordtype">int</span> DestNodePort,</div>
|
|
371
371
|
<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>  <span class="keyword">const</span> <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> &Attrs)</div>
|
|
372
372
|
<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>  {</div>
|
|
373
|
-
<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>  <span class="keywordflow">if</span> (SrcNodePort > 64) <span class="keywordflow">return</span>; <span class="comment">//
|
|
373
|
+
<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>  <span class="keywordflow">if</span> (SrcNodePort > 64) <span class="keywordflow">return</span>; <span class="comment">// Emanating from truncated part?</span></div>
|
|
374
374
|
<div class="line"><a name="l00305"></a><span class="lineno"> 305</span>  <span class="keywordflow">if</span> (DestNodePort > 64) DestNodePort = 64; <span class="comment">// Targeting the truncated part?</span></div>
|
|
375
375
|
<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>  </div>
|
|
376
376
|
<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>  <a class="code" href="classSVF_1_1GraphWriter.html#a2e882c9af39ffd3c4a4bac9212e0e82d">O</a> << <span class="stringliteral">"\tNode"</span> << SrcNodeID;</div>
|
|
@@ -110,7 +110,7 @@ $(function() {
|
|
|
110
110
|
<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="classSVF_1_1ICFGBuilder.html#ae66565ee32fff4ef5f0157e867333250"> 42</a></span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1ICFGBuilder.html#ae66565ee32fff4ef5f0157e867333250">ICFGBuilder::build</a>(<a class="code" href="classSVF_1_1SVFModule.html">SVFModule</a>* svfModule)</div>
|
|
111
111
|
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> {</div>
|
|
112
112
|
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>  <a class="code" href="SVFType_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a>(<a class="code" href="SVFType_8h.html#a2c64190a065f342897573a3ef4973adb">DGENERAL</a>, <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">outs</a>() << <a class="code" href="namespaceSVF_1_1SVFUtil.html#a4550f2fb815882edfb666ac818792064">pasMsg</a>(<span class="stringliteral">"\t Building ICFG ...\n"</span>));</div>
|
|
113
|
-
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>  <span class="comment">// Add the
|
|
113
|
+
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>  <span class="comment">// Add the unique global ICFGNode at the entry of a program (before the main method).</span></div>
|
|
114
114
|
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>  icfg->addGlobalICFGNode();</div>
|
|
115
115
|
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>  </div>
|
|
116
116
|
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>  <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#aa7a770b5dd5cd0e37d06a1088f252906">Module</a> &M : <a class="code" href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">LLVMModuleSet::getLLVMModuleSet</a>()->getLLVMModules())</div>
|
|
@@ -144,7 +144,7 @@ $(function() {
|
|
|
144
144
|
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  <span class="keywordflow">for</span> (InstVec::const_iterator nit = insts.begin(), enit = insts.end();</div>
|
|
145
145
|
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  nit != enit; ++nit)</div>
|
|
146
146
|
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  {</div>
|
|
147
|
-
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  <a class="code" href="classSVF_1_1ICFGNode.html">ICFGNode</a>* instNode = getOrAddBlockICFGNode(<a class="code" href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">LLVMModuleSet::getLLVMModuleSet</a>()->getSVFInstruction(*nit)); <span class="comment">//add
|
|
147
|
+
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  <a class="code" href="classSVF_1_1ICFGNode.html">ICFGNode</a>* instNode = getOrAddBlockICFGNode(<a class="code" href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">LLVMModuleSet::getLLVMModuleSet</a>()->getSVFInstruction(*nit)); <span class="comment">//add interprocedural edge</span></div>
|
|
148
148
|
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  icfg->addIntraEdge(<a class="code" href="classSVF_1_1FunEntryICFGNode.html">FunEntryICFGNode</a>, instNode);</div>
|
|
149
149
|
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  worklist.<a class="code" href="classSVF_1_1FIFOWorkList.html#a0df409a67428e528321869d201f2a474">push</a>(*nit);</div>
|
|
150
150
|
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  }</div>
|
|
@@ -335,7 +335,7 @@ $(function() {
|
|
|
335
335
|
<div class="ttc" id="aclassSVF_1_1IRGraph_html_abe0ab797a3da420e4d2f9136d64fb407"><div class="ttname"><a href="classSVF_1_1IRGraph.html#abe0ab797a3da420e4d2f9136d64fb407">SVF::IRGraph::hasNonlabeledEdge</a></div><div class="ttdeci">SVFStmt * hasNonlabeledEdge(SVFVar *src, SVFVar *dst, SVFStmt::PEDGEK kind)</div><div class="ttdef"><b>Definition:</b> <a href="IRGraph_8cpp_source.html#l00060">IRGraph.cpp:60</a></div></div>
|
|
336
336
|
<div class="ttc" id="aclassSVF_1_1SVFStmt_html_a4513c6e66b46c36219ba6d7403f3eb00"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a4513c6e66b46c36219ba6d7403f3eb00">SVF::SVFStmt::makeEdgeFlagWithCallInst</a></div><div class="ttdeci">static GEdgeFlag makeEdgeFlagWithCallInst(GEdgeKind k, const ICFGNode *cs)</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00183">SVFStatements.h:183</a></div></div>
|
|
337
337
|
<div class="ttc" id="astructSVF_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4_html_a74cb51bbb3d84e7148b2ba368d4982b8"><div class="ttname"><a href="structSVF_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4.html#a74cb51bbb3d84e7148b2ba368d4982b8">SVF::DOTGraphTraits< IRGraph * >::NodeType</a></div><div class="ttdeci">SVFVar NodeType</div><div class="ttdef"><b>Definition:</b> <a href="IRGraph_8cpp_source.html#l00125">IRGraph.cpp:125</a></div></div>
|
|
338
|
-
<div class="ttc" id="aclassSVF_1_1SVFVar_html_acf194658d2cbdaf3f26f2af6c325fad7"><div class="ttname"><a href="classSVF_1_1SVFVar.html#acf194658d2cbdaf3f26f2af6c325fad7">SVF::SVFVar::isIsolatedNode</a></div><div class="ttdeci">bool isIsolatedNode() const</div><div class="ttdoc">Whether this is an
|
|
338
|
+
<div class="ttc" id="aclassSVF_1_1SVFVar_html_acf194658d2cbdaf3f26f2af6c325fad7"><div class="ttname"><a href="classSVF_1_1SVFVar.html#acf194658d2cbdaf3f26f2af6c325fad7">SVF::SVFVar::isIsolatedNode</a></div><div class="ttdeci">bool isIsolatedNode() const</div><div class="ttdoc">Whether this is an isolated node on the SVFIR graph.</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8cpp_source.html#l00079">SVFVariables.cpp:79</a></div></div>
|
|
339
339
|
<div class="ttc" id="aIRGraph_8h_html"><div class="ttname"><a href="IRGraph_8h.html">IRGraph.h</a></div></div>
|
|
340
340
|
<div class="ttc" id="aclassSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9">SVF::SVFStmt::PEDGEK</a></div><div class="ttdeci">PEDGEK</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00061">SVFStatements.h:61</a></div></div>
|
|
341
341
|
<div class="ttc" id="aclassSVF_1_1GenericNode_html_a391e996d695b114530120723da1d003e"><div class="ttname"><a href="classSVF_1_1GenericNode.html#a391e996d695b114530120723da1d003e">SVF::GenericNode::getNodeKind</a></div><div class="ttdeci">GNodeK getNodeKind() const</div><div class="ttdoc">Get node kind.</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00186">GenericGraph.h:186</a></div></div>
|
|
@@ -283,7 +283,7 @@ $(function() {
|
|
|
283
283
|
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>  </div>
|
|
284
284
|
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> <span class="comment">/* !</span></div>
|
|
285
285
|
<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> <span class="comment"> * GenericGraphTraits specializations of SVFIR to be used for the generic graph algorithms.</span></div>
|
|
286
|
-
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> <span class="comment"> * Provide graph traits for
|
|
286
|
+
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> <span class="comment"> * Provide graph traits for traversing from a SVFIR node using standard graph traversals.</span></div>
|
|
287
287
|
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> <span class="comment"> */</span></div>
|
|
288
288
|
<div class="line"><a name="l00238"></a><span class="lineno"><a class="line" href="structSVF_1_1GenericGraphTraits_3_01SVF_1_1SVFVar_01_5_01_4.html"> 238</a></span> <span class="keyword">template</span><> <span class="keyword">struct </span><a class="code" href="structSVF_1_1GenericGraphTraits.html">GenericGraphTraits</a><<a class="code" href="namespaceSVF.html">SVF</a>::<a class="code" href="classSVF_1_1SVFVar.html">SVFVar</a>*> : <span class="keyword">public</span> <a class="code" href="structSVF_1_1GenericGraphTraits.html">GenericGraphTraits</a><SVF::GenericNode<SVF::SVFVar,SVF::SVFStmt>* ></div>
|
|
289
289
|
<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> {</div>
|
|
@@ -518,7 +518,7 @@ $(function() {
|
|
|
518
518
|
<div class="ttc" id="aclassSVF_1_1IntervalExeState_html_a7420a7637b62d451babadb852c9c2ac2"><div class="ttname"><a href="classSVF_1_1IntervalExeState.html#a7420a7637b62d451babadb852c9c2ac2">SVF::IntervalExeState::operator[]</a></div><div class="ttdeci">IntervalValue & operator[](u32_t varId)</div><div class="ttdoc">[], call getValueExpr()</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8h_source.html#l00215">IntervalExeState.h:215</a></div></div>
|
|
519
519
|
<div class="ttc" id="aclassSVF_1_1IntervalExeState_html_a3b95a08fa7b123549e732819d9371946"><div class="ttname"><a href="classSVF_1_1IntervalExeState.html#a3b95a08fa7b123549e732819d9371946">SVF::IntervalExeState::LocToValMap</a></div><div class="ttdeci">VarToValMap LocToValMap</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8h_source.html#l00062">IntervalExeState.h:62</a></div></div>
|
|
520
520
|
<div class="ttc" id="aclassSVF_1_1IntervalExeState_html_aa4acf1e8ae7571f527047e36b77dfb58"><div class="ttname"><a href="classSVF_1_1IntervalExeState.html#aa4acf1e8ae7571f527047e36b77dfb58">SVF::IntervalExeState::operator<</a></div><div class="ttdeci">bool operator<(const IntervalExeState &rhs) const</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8h_source.html#l00432">IntervalExeState.h:432</a></div></div>
|
|
521
|
-
<div class="ttc" id="aclassSVF_1_1IntervalExeState_html_a73d2e475625f5b9204cdecb94381c558"><div class="ttname"><a href="classSVF_1_1IntervalExeState.html#a73d2e475625f5b9204cdecb94381c558">SVF::IntervalExeState::createIntervalValue</a></div><div class="ttdeci">IntervalValue createIntervalValue(double lb, double ub, NodeID id)</div><div class="ttdoc">TODO: Create new
|
|
521
|
+
<div class="ttc" id="aclassSVF_1_1IntervalExeState_html_a73d2e475625f5b9204cdecb94381c558"><div class="ttname"><a href="classSVF_1_1IntervalExeState.html#a73d2e475625f5b9204cdecb94381c558">SVF::IntervalExeState::createIntervalValue</a></div><div class="ttdeci">IntervalValue createIntervalValue(double lb, double ub, NodeID id)</div><div class="ttdoc">TODO: Create new interval value.</div><div class="ttdef"><b>Definition:</b> <a href="IntervalExeState_8h_source.html#l00268">IntervalExeState.h:268</a></div></div>
|
|
522
522
|
<div class="ttc" id="anamespaceSVF_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#l00097">SVFType.h:97</a></div></div>
|
|
523
523
|
<div class="ttc" id="aclassSVF_1_1IntervalValue_html_a0df07a2659cbf3a918de5b0d7c407264"><div class="ttname"><a href="classSVF_1_1IntervalValue.html#a0df07a2659cbf3a918de5b0d7c407264">SVF::IntervalValue::lb</a></div><div class="ttdeci">const NumericLiteral & lb() const</div><div class="ttdoc">Return the lower bound.</div><div class="ttdef"><b>Definition:</b> <a href="IntervalValue_8h_source.html#l00218">IntervalValue.h:218</a></div></div>
|
|
524
524
|
<div class="ttc" id="anamespaceSVF_html"><div class="ttname"><a href="namespaceSVF.html">SVF</a></div><div class="ttdoc">for isBitcode</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00065">BasicTypes.h:65</a></div></div>
|
|
@@ -95,7 +95,7 @@ Functions</h2></td></tr>
|
|
|
95
95
|
<tr class="memdesc:ad9d56b31ab074c813b48da4c2e0742aa"><td class="mdescLeft"> </td><td class="mdescRight">Add IntervalValues. <a href="namespaceSVF.html#ad9d56b31ab074c813b48da4c2e0742aa">More...</a><br /></td></tr>
|
|
96
96
|
<tr class="separator:ad9d56b31ab074c813b48da4c2e0742aa"><td class="memSeparator" colspan="2"> </td></tr>
|
|
97
97
|
<tr class="memitem:a4bddb7dbd28d3c0deb3cd35e48179a36"><td class="memItemLeft" align="right" valign="top">IntervalValue </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceSVF.html#a4bddb7dbd28d3c0deb3cd35e48179a36">SVF::operator-</a> (const IntervalValue &lhs, const IntervalValue &rhs)</td></tr>
|
|
98
|
-
<tr class="memdesc:a4bddb7dbd28d3c0deb3cd35e48179a36"><td class="mdescLeft"> </td><td class="mdescRight">
|
|
98
|
+
<tr class="memdesc:a4bddb7dbd28d3c0deb3cd35e48179a36"><td class="mdescLeft"> </td><td class="mdescRight">Subtract IntervalValues. <a href="namespaceSVF.html#a4bddb7dbd28d3c0deb3cd35e48179a36">More...</a><br /></td></tr>
|
|
99
99
|
<tr class="separator:a4bddb7dbd28d3c0deb3cd35e48179a36"><td class="memSeparator" colspan="2"> </td></tr>
|
|
100
100
|
<tr class="memitem:abf0dfb872989751b13069f859ef408e1"><td class="memItemLeft" align="right" valign="top">IntervalValue </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceSVF.html#abf0dfb872989751b13069f859ef408e1">SVF::operator*</a> (const IntervalValue &lhs, const IntervalValue &rhs)</td></tr>
|
|
101
101
|
<tr class="memdesc:abf0dfb872989751b13069f859ef408e1"><td class="mdescLeft"> </td><td class="mdescRight">Multiply IntervalValues. <a href="namespaceSVF.html#abf0dfb872989751b13069f859ef408e1">More...</a><br /></td></tr>
|
|
@@ -954,7 +954,7 @@ $(function() {
|
|
|
954
954
|
<div class="ttc" id="acJSON_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>
|
|
955
955
|
<div class="ttc" id="anamespaceSVF_html_a8ca7e84917358976240bc88c3cceb0c2"><div class="ttname"><a href="namespaceSVF.html#a8ca7e84917358976240bc88c3cceb0c2">SVF::operator&</a></div><div class="ttdeci">IntervalValue operator&(const IntervalValue &lhs, const IntervalValue &rhs)</div><div class="ttdoc">Bitwise AND of IntervalValues.</div><div class="ttdef"><b>Definition:</b> <a href="IntervalValue_8h_source.html#l00793">IntervalValue.h:793</a></div></div>
|
|
956
956
|
<div class="ttc" id="anamespaceSVF_html_a23c136994bc83222e1913d43ec3e7468"><div class="ttname"><a href="namespaceSVF.html#a23c136994bc83222e1913d43ec3e7468">SVF::operator/</a></div><div class="ttdeci">IntervalValue operator/(const IntervalValue &lhs, const IntervalValue &rhs)</div><div class="ttdoc">Divide IntervalValues.</div><div class="ttdef"><b>Definition:</b> <a href="IntervalValue_8h_source.html#l00515">IntervalValue.h:515</a></div></div>
|
|
957
|
-
<div class="ttc" id="anamespaceSVF_html_a4bddb7dbd28d3c0deb3cd35e48179a36"><div class="ttname"><a href="namespaceSVF.html#a4bddb7dbd28d3c0deb3cd35e48179a36">SVF::operator-</a></div><div class="ttdeci">IntervalValue operator-(const IntervalValue &lhs, const IntervalValue &rhs)</div><div class="ttdoc">
|
|
957
|
+
<div class="ttc" id="anamespaceSVF_html_a4bddb7dbd28d3c0deb3cd35e48179a36"><div class="ttname"><a href="namespaceSVF.html#a4bddb7dbd28d3c0deb3cd35e48179a36">SVF::operator-</a></div><div class="ttdeci">IntervalValue operator-(const IntervalValue &lhs, const IntervalValue &rhs)</div><div class="ttdoc">Subtract IntervalValues.</div><div class="ttdef"><b>Definition:</b> <a href="IntervalValue_8h_source.html#l00477">IntervalValue.h:477</a></div></div>
|
|
958
958
|
<div class="ttc" id="aclassSVF_1_1NumericLiteral_html_ab8ea498ca849eb969e721772d432b29d"><div class="ttname"><a href="classSVF_1_1NumericLiteral.html#ab8ea498ca849eb969e721772d432b29d">SVF::NumericLiteral::geq</a></div><div class="ttdeci">bool geq(const NumericLiteral &rhs) const</div><div class="ttdef"><b>Definition:</b> <a href="NumericLiteral_8h_source.html#l00155">NumericLiteral.h:155</a></div></div>
|
|
959
959
|
<div class="ttc" id="aclassSVF_1_1IntervalValue_html_adac2dc2c9f744a071ad3f0175ed40cd9"><div class="ttname"><a href="classSVF_1_1IntervalValue.html#adac2dc2c9f744a071ad3f0175ed40cd9">SVF::IntervalValue::ub</a></div><div class="ttdeci">const NumericLiteral & ub() const</div><div class="ttdoc">Return the upper bound.</div><div class="ttdef"><b>Definition:</b> <a href="IntervalValue_8h_source.html#l00225">IntervalValue.h:225</a></div></div>
|
|
960
960
|
<div class="ttc" id="aclassSVF_1_1IntervalValue_html_acb48e1418d1b6beceb30b1513fde5d9a"><div class="ttname"><a href="classSVF_1_1IntervalValue.html#acb48e1418d1b6beceb30b1513fde5d9a">SVF::IntervalValue::IntervalValue</a></div><div class="ttdeci">IntervalValue(int64_t n)</div><div class="ttdoc">Create the IntervalValue [n, n].</div><div class="ttdef"><b>Definition:</b> <a href="IntervalValue_8h_source.html#l00098">IntervalValue.h:98</a></div></div>
|