svf-tools 1.0.459 → 1.0.460
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/SVF-doxygen/html/html/AndersenSCD_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/AndersenSFR_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/Andersen_8cpp_source.html +10 -10
- package/SVF-doxygen/html/html/Andersen_8h_source.html +2 -2
- package/SVF-doxygen/html/html/Annotator_8h_source.html +1 -1
- package/SVF-doxygen/html/html/BreakConstantExpr_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/CHGBuilder_8cpp_source.html +12 -12
- package/SVF-doxygen/html/html/CHGBuilder_8h_source.html +3 -3
- package/SVF-doxygen/html/html/CHG_8cpp.html +2 -2
- package/SVF-doxygen/html/html/CHG_8cpp_source.html +8 -8
- package/SVF-doxygen/html/html/CHG_8h_source.html +2 -2
- package/SVF-doxygen/html/html/CPPUtil_8cpp_source.html +13 -13
- package/SVF-doxygen/html/html/CallGraphBuilder_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/ConsG_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/ConsG_8h_source.html +3 -3
- package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/ContextDDA_8h_source.html +1 -1
- package/SVF-doxygen/html/html/CxtStmt_8h_source.html +2 -2
- package/SVF-doxygen/html/html/DCHG_8cpp_source.html +17 -17
- package/SVF-doxygen/html/html/DCHG_8h_source.html +8 -8
- package/SVF-doxygen/html/html/DDAClient_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/DDAStat_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +8 -8
- package/SVF-doxygen/html/html/DataFlowUtil_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/DataFlowUtil_8h_source.html +6 -6
- package/SVF-doxygen/html/html/ExeState_8cpp.html +1 -0
- package/SVF-doxygen/html/html/ExeState_8cpp_source.html +26 -25
- package/SVF-doxygen/html/html/ExeState_8h_source.html +13 -13
- package/SVF-doxygen/html/html/ExtAPI_8h_source.html +3 -3
- package/SVF-doxygen/html/html/FSMPTA_8h_source.html +1 -1
- package/SVF-doxygen/html/html/FileChecker_8h_source.html +1 -1
- package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/FlowDDA_8h_source.html +1 -1
- package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/FlowSensitiveTBHC_8cpp.html +2 -2
- package/SVF-doxygen/html/html/FlowSensitiveTBHC_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/FlowSensitiveTBHC_8h_source.html +2 -2
- package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/Graph2Json_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/ICFGBuilder_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/ICFGBuilder_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ICFGNode_8h_source.html +2 -2
- package/SVF-doxygen/html/html/ICFG_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/ICFG_8h_source.html +1 -1
- package/SVF-doxygen/html/html/IRAnnotator_8h_source.html +5 -5
- package/SVF-doxygen/html/html/IRGraph_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/IRGraph_8h_source.html +21 -21
- package/SVF-doxygen/html/html/LLVMModule_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/LLVMModule_8h_source.html +3 -3
- package/SVF-doxygen/html/html/LLVMUtil_8cpp_source.html +9 -9
- package/SVF-doxygen/html/html/LLVMUtil_8h_source.html +6 -6
- package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/LeakChecker_8h_source.html +1 -1
- package/SVF-doxygen/html/html/LocationSet_8cpp.html +1 -0
- package/SVF-doxygen/html/html/LocationSet_8cpp_source.html +14 -13
- package/SVF-doxygen/html/html/LocationSet_8h_source.html +10 -10
- package/SVF-doxygen/html/html/LockAnalysis_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/LockAnalysis_8h_source.html +1 -1
- package/SVF-doxygen/html/html/LockResultValidator_8cpp_source.html +8 -8
- package/SVF-doxygen/html/html/LockResultValidator_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MHP_8cpp.html +2 -2
- package/SVF-doxygen/html/html/MHP_8cpp_source.html +46 -46
- package/SVF-doxygen/html/html/MHP_8h.html +1 -0
- package/SVF-doxygen/html/html/MHP_8h_source.html +102 -101
- package/SVF-doxygen/html/html/MSSAMuChi_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MTAAnnotator_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/MTAAnnotator_8h_source.html +3 -3
- package/SVF-doxygen/html/html/MTAResultValidator_8cpp_source.html +11 -11
- package/SVF-doxygen/html/html/MTAResultValidator_8h_source.html +8 -8
- package/SVF-doxygen/html/html/MTAStat_8cpp_source.html +9 -9
- package/SVF-doxygen/html/html/MTAStat_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MTA_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/MTA_8h_source.html +3 -3
- package/SVF-doxygen/html/html/MemPartition_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/MemPartition_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +12 -12
- package/SVF-doxygen/html/html/MemRegion_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/MemSSA_8h_source.html +3 -3
- package/SVF-doxygen/html/html/OfflineConsG_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/PAGBuilderFromFile_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/PCG_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/PCG_8h_source.html +1 -1
- 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/PTAStat_8cpp_source.html +18 -18
- package/SVF-doxygen/html/html/PathCondAllocator_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/PathCondAllocator_8h_source.html +3 -3
- package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/PointerAnalysisImpl_8h_source.html +2 -2
- package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +19 -19
- package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +6 -6
- package/SVF-doxygen/html/html/SVF-FE_2BasicTypes_8h.html +68 -50
- package/SVF-doxygen/html/html/SVF-FE_2BasicTypes_8h_source.html +51 -50
- package/SVF-doxygen/html/html/SVFBasicTypes_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFGBuilder_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/SVFGBuilder_8h_source.html +2 -2
- package/SVF-doxygen/html/html/SVFGNode_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFGOPT_8h_source.html +2 -2
- package/SVF-doxygen/html/html/SVFG_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/SVFG_8h_source.html +2 -2
- package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +46 -46
- package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +36 -36
- package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +19 -19
- package/SVF-doxygen/html/html/SVFIR_8h_source.html +19 -19
- package/SVF-doxygen/html/html/SVFModule_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/SVFModule_8h_source.html +2 -2
- package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/SVFStatements_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFUtil_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/SVFUtil_8h_source.html +3 -3
- package/SVF-doxygen/html/html/SVFVariables_8cpp.html +1 -0
- package/SVF-doxygen/html/html/SVFVariables_8cpp_source.html +35 -32
- package/SVF-doxygen/html/html/SVFVariables_8h.html +0 -1
- package/SVF-doxygen/html/html/SVFVariables_8h_source.html +140 -142
- package/SVF-doxygen/html/html/SaberAnnotator_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/SaberCheckerAPI_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/SaberSVFGBuilder_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SrcSnkDDA_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SymbolTableBuilder_8cpp_source.html +50 -50
- package/SVF-doxygen/html/html/SymbolTableBuilder_8h_source.html +3 -3
- package/SVF-doxygen/html/html/SymbolTableInfo_8cpp.html +1 -0
- package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +95 -91
- package/SVF-doxygen/html/html/SymbolTableInfo_8h.html +0 -1
- package/SVF-doxygen/html/html/SymbolTableInfo_8h_source.html +141 -143
- package/SVF-doxygen/html/html/TCT_8cpp.html +1 -0
- package/SVF-doxygen/html/html/TCT_8cpp_source.html +41 -40
- package/SVF-doxygen/html/html/TCT_8h_source.html +7 -7
- package/SVF-doxygen/html/html/ThreadAPI_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/ThreadAPI_8h_source.html +4 -4
- package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/ThreadCallGraph_8h_source.html +1 -1
- package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/TypeBasedHeapCloning_8cpp_source.html +22 -22
- package/SVF-doxygen/html/html/TypeBasedHeapCloning_8h_source.html +4 -4
- package/SVF-doxygen/html/html/Util_2BasicTypes_8h.html +0 -2
- package/SVF-doxygen/html/html/Util_2BasicTypes_8h_source.html +61 -62
- package/SVF-doxygen/html/html/VFGNode_8h_source.html +3 -3
- package/SVF-doxygen/html/html/VFG_8cpp_source.html +10 -10
- package/SVF-doxygen/html/html/VFG_8h_source.html +3 -3
- package/SVF-doxygen/html/html/VersionedFlowSensitiveStat_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/WPAPass_8h_source.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ActualParmVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ActualRetVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1AddrCGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1AliasDDAClient.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +10 -10
- package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1Annotator.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ArgumentVFGNode.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1BinaryOPVFGNode.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1BranchStmt.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1BreakConstantGEPs.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CHGBuilder.html +18 -18
- package/SVF-doxygen/html/html/classSVF_1_1CHGraph.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1CallGraphBuilder.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CallSite.html +41 -41
- package/SVF-doxygen/html/html/classSVF_1_1CloneDummyObjVar-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CloneDummyObjVar.html +15 -15
- package/SVF-doxygen/html/html/classSVF_1_1CloneFIObjVar-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CloneFIObjVar.html +16 -16
- package/SVF-doxygen/html/html/classSVF_1_1CloneGepObjVar-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CloneGepObjVar.html +16 -16
- package/SVF-doxygen/html/html/classSVF_1_1CmpVFGNode.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +11 -11
- package/SVF-doxygen/html/html/classSVF_1_1DCHGraph.html +50 -50
- package/SVF-doxygen/html/html/classSVF_1_1DDAClient.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1DDAStat.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1DDAVFSolver.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1DistinctMRG.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1DummyObjVar-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1DummyObjVar.html +20 -20
- package/SVF-doxygen/html/html/classSVF_1_1DummyValVar-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1DummyValVar.html +18 -18
- package/SVF-doxygen/html/html/classSVF_1_1ExeState.html +40 -40
- package/SVF-doxygen/html/html/classSVF_1_1FIObjVar-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FIObjVar.html +22 -22
- package/SVF-doxygen/html/html/classSVF_1_1FSMPTA.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC.html +9 -9
- package/SVF-doxygen/html/html/classSVF_1_1ForkJoinAnalysis.html +183 -183
- 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_1GepObjVar-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1GepObjVar.html +45 -45
- package/SVF-doxygen/html/html/classSVF_1_1GepStmt.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1GepValVar-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1GepValVar.html +29 -29
- package/SVF-doxygen/html/html/classSVF_1_1ICFG.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ICFGBuilder.html +9 -9
- package/SVF-doxygen/html/html/classSVF_1_1ICFGPrinter.html +10 -10
- package/SVF-doxygen/html/html/classSVF_1_1IRGraph.html +21 -21
- package/SVF-doxygen/html/html/classSVF_1_1InterDisjointMRG.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1InterPHIVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IntraDisjointMRG.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IntraPHIVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1IteratedDominanceFrontier.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1LocationSet.html +27 -27
- package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +20 -20
- package/SVF-doxygen/html/html/classSVF_1_1LockResultValidator.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1MHP.html +177 -177
- package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +16 -16
- package/SVF-doxygen/html/html/classSVF_1_1MTA.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1MTAResultValidator.html +22 -22
- package/SVF-doxygen/html/html/classSVF_1_1MTAStat.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1MemObj.html +91 -91
- package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +9 -9
- package/SVF-doxygen/html/html/classSVF_1_1MemSSADF.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1NullPtrVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ObjTypeInfo.html +98 -98
- package/SVF-doxygen/html/html/classSVF_1_1ObjVar-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ObjVar.html +35 -35
- package/SVF-doxygen/html/html/classSVF_1_1PAGBuilderFromFile.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1PCG.html +9 -9
- package/SVF-doxygen/html/html/classSVF_1_1PHIVFGNode.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1PTACFInfoBuilder.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1PTACallGraph.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +19 -19
- package/SVF-doxygen/html/html/classSVF_1_1PathCondAllocator.html +9 -9
- package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +31 -31
- package/SVF-doxygen/html/html/classSVF_1_1RaceResultValidator.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1RetPN-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1RetPN.html +19 -19
- package/SVF-doxygen/html/html/classSVF_1_1SVFBasicBlock.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1SVFFunction.html +27 -27
- package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1SVFGlobal.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1SVFIR.html +62 -62
- package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +66 -66
- package/SVF-doxygen/html/html/classSVF_1_1SVFModule.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1SVFVar-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SVFVar.html +98 -106
- package/SVF-doxygen/html/html/classSVF_1_1SaberAnnotator.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1SelectStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1StInfo.html +38 -38
- package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder.html +78 -78
- package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo-members.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo.html +224 -240
- package/SVF-doxygen/html/html/classSVF_1_1TCT.html +88 -88
- package/SVF-doxygen/html/html/classSVF_1_1ThreadAPI.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraphBuilder.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1TypeBasedHeapCloning.html +36 -36
- package/SVF-doxygen/html/html/classSVF_1_1UnaryOPVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1VFG.html +13 -13
- package/SVF-doxygen/html/html/classSVF_1_1ValVar-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ValVar.html +24 -24
- package/SVF-doxygen/html/html/classSVF_1_1VarArgPN-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1VarArgPN.html +19 -19
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +2 -2
- package/SVF-doxygen/html/html/functions_func_g.html +1 -1
- package/SVF-doxygen/html/html/functions_func_h.html +1 -1
- package/SVF-doxygen/html/html/functions_func_i.html +1 -1
- package/SVF-doxygen/html/html/functions_g.html +1 -1
- package/SVF-doxygen/html/html/functions_h.html +1 -1
- package/SVF-doxygen/html/html/functions_i.html +1 -1
- package/SVF-doxygen/html/html/globals_c.html +103 -100
- package/SVF-doxygen/html/html/globals_s.html +9 -7
- package/SVF-doxygen/html/html/globals_type.html +3 -0
- package/SVF-doxygen/html/html/namespaceSVF.html +25 -43
- package/SVF-doxygen/html/html/namespaceSVF_1_1SVFUtil.html +14 -14
- package/SVF-doxygen/html/html/namespaceSVF_1_1cppUtil.html +23 -23
- package/SVF-doxygen/html/html/namespacemembers_c.html +0 -3
- package/SVF-doxygen/html/html/namespacemembers_type.html +0 -3
- package/SVF-doxygen/html/html/search/all_13.js +3 -3
- package/SVF-doxygen/html/html/search/all_3.js +1 -1
- package/SVF-doxygen/html/html/search/all_7.js +1 -1
- package/SVF-doxygen/html/html/search/all_8.js +1 -1
- package/SVF-doxygen/html/html/search/all_9.js +1 -1
- package/SVF-doxygen/html/html/search/functions_6.js +1 -1
- package/SVF-doxygen/html/html/search/functions_7.js +1 -1
- package/SVF-doxygen/html/html/search/functions_8.js +1 -1
- package/SVF-doxygen/html/html/search/typedefs_2.js +1 -1
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html +3 -3
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4.html +3 -3
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01OfflineConsG_01_5_01_4.html +3 -3
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01PTACallGraph_01_5_01_4.html +1 -1
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01TCT_01_5_01_4.html +14 -14
- package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CallSite_01_4.html +3 -3
- package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CxtProc_01_4.html +1 -1
- package/SVF-doxygen/html/html/svf-ex_8cpp.html +4 -4
- package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +3 -3
- package/include/MTA/MHP.h +1 -0
- package/include/MemoryModel/SVFVariables.h +1 -8
- package/include/MemoryModel/SymbolTableInfo.h +2 -22
- package/include/SVF-FE/BasicTypes.h +1 -0
- package/include/Util/BasicTypes.h +0 -1
- package/lib/MTA/TCT.cpp +1 -0
- package/lib/MemoryModel/LocationSet.cpp +1 -0
- package/lib/MemoryModel/SVFVariables.cpp +10 -1
- package/lib/MemoryModel/SymbolTableInfo.cpp +26 -0
- package/lib/Util/ExeState.cpp +1 -0
- package/package.json +1 -1
|
@@ -66,14 +66,14 @@ $(function() {
|
|
|
66
66
|
<div class="title">MTAAnnotator.h</div> </div>
|
|
67
67
|
</div><!--header-->
|
|
68
68
|
<div class="contents">
|
|
69
|
-
<a href="MTAAnnotator_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">/*</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * MTAAnnotator.h</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * Created on: May 4, 2014</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * Author: Peng Di</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> */</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span> </div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="preprocessor">#ifndef MTAANNOTATOR_H_</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="preprocessor">#define MTAANNOTATOR_H_</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span> </div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="preprocessor">#include "<a class="code" href="Util_2BasicTypes_8h.html">Util/BasicTypes.h</a>"</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="preprocessor">#include "<a class="code" href="Annotator_8h.html">Util/Annotator.h</a>"</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="preprocessor">#include "<a class="code" href="MHP_8h.html">MTA/MHP.h</a>"</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span> </div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="keyword">namespace </span><a class="code" href="namespaceSVF.html">SVF</a></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span> {</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span> </div><div class="line"><a name="l00021"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html"> 21</a></span> <span class="keyword">class </span><a class="code" href="classSVF_1_1MTAAnnotator.html">MTAAnnotator</a>: <span class="keyword">public</span> <a class="code" href="classSVF_1_1Annotator.html">Annotator</a></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span> {</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span> </div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="keyword">public</span>:</div><div class="line"><a name="l00025"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#a95f4607624dac40e9d62f37e6b16fcf0"> 25</a></span>  <span class="keyword">typedef</span> <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set<const Instruction*></a> <a class="code" href="classSVF_1_1MTAAnnotator.html#a95f4607624dac40e9d62f37e6b16fcf0">InstSet</a>;</div><div class="line"><a name="l00027"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#a37ae5e04b0f5560d0f6c2f143b325cd4"> 27</a></span>  <a class="code" href="classSVF_1_1MTAAnnotator.html#a37ae5e04b0f5560d0f6c2f143b325cd4">MTAAnnotator</a>(): <a class="code" href="classSVF_1_1MTAAnnotator.html#a94d7a3fd9166126c052fca28f9a4c825">mhp</a>(nullptr),<a class="code" href="classSVF_1_1MTAAnnotator.html#a42a5c0eac879be5e300583aa7d07beb0">lsa</a>(nullptr)</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>  {</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>  <a class="code" href="classSVF_1_1MTAAnnotator.html#aa0149b932b4148b14b36e2c5cf9b614b">numOfAllSt</a> = 0;</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>  <a class="code" href="classSVF_1_1MTAAnnotator.html#a5c1743a40d54fdbde2f9dadb612de608">numOfAllLd</a> = 0;</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>  <a class="code" href="classSVF_1_1MTAAnnotator.html#a3c07f9964623b3895b1bab59a63dccfb">numOfNonLocalSt</a> = 0;</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>  <a class="code" href="classSVF_1_1MTAAnnotator.html#ad53ac0cec797f84d3bc14bdb6bab1ab3">numOfNonLocalLd</a> = 0;</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>  <a class="code" href="classSVF_1_1MTAAnnotator.html#a71178ddc585c9ca7c9e5c3b52378cd7d">numOfAliasSt</a> = 0;</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>  <a class="code" href="classSVF_1_1MTAAnnotator.html#aa1572c2a9f260ff66c9da661fd669a5f">numOfAliasLd</a> = 0;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>  <a class="code" href="classSVF_1_1MTAAnnotator.html#a3a53e90b4f361d1298983bc89795b3d2">numOfMHPSt</a> = 0;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>  <a class="code" href="classSVF_1_1MTAAnnotator.html#a29e0123620ab072fddc45331c6aa46e8">numOfMHPLd</a> = 0;</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>  <a class="code" href="classSVF_1_1MTAAnnotator.html#afbb8c25a126362ab0a4101866b4fc0ee">numOfAnnotatedSt</a> = 0;</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>  <a class="code" href="classSVF_1_1MTAAnnotator.html#a57df091dbdd4fc947cc5e7aaec123700">numOfAnnotatedLd</a> = 0;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>  }</div><div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#a1dc12d846adf07265a9b6a5c2694c84d"> 41</a></span>  <span class="keyword">virtual</span> <a class="code" href="classSVF_1_1MTAAnnotator.html#a1dc12d846adf07265a9b6a5c2694c84d">~MTAAnnotator</a>()</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>  {</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span> </div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>  }</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span> </div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>  <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1MTAAnnotator.html#a5513a9f2a5b89ab5f90549552fb2b20f">annotateDRCheck</a>(<a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a>* inst);</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span> </div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>  <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1MTAAnnotator.html#a108616cc98f15af3010ca45b91f32c04">initialize</a>(<a class="code" href="classSVF_1_1MHP.html">MHP</a>* <a class="code" href="classSVF_1_1MTAAnnotator.html#a94d7a3fd9166126c052fca28f9a4c825">mhp</a>, <a class="code" href="classSVF_1_1LockAnalysis.html">LockAnalysis</a>* <a class="code" href="classSVF_1_1MTAAnnotator.html#a42a5c0eac879be5e300583aa7d07beb0">lsa</a>);</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span> </div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>  <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1MTAAnnotator.html#af469d79fcc3bebd9360f72696a242d4e">pruneThreadLocal</a>(<a class="code" href="classSVF_1_1PointerAnalysis.html">PointerAnalysis</a>*pta);</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span> </div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>  <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1MTAAnnotator.html#a0ed08b6a94483a750c95eef6c2523dc6">pruneAliasMHP</a>(<a class="code" href="classSVF_1_1PointerAnalysis.html">PointerAnalysis</a>* pta);</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span> </div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>  <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1MTAAnnotator.html#a4e25b3ef3e4e91f14c35841d0138d888">performAnnotate</a>();</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span> </div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>  <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1MTAAnnotator.html#ab84e4295f1137090bdf9e0608a4c2077">collectLoadStoreInst</a>(<a class="code" href="classSVF_1_1SVFModule.html">SVFModule</a>* mod);</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span> </div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>* <a class="code" href="classSVF_1_1MTAAnnotator.html#a49434afd0d7beb9f5d6580e8f672889c">getStoreOperand</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a>* inst);</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>* <a class="code" href="classSVF_1_1MTAAnnotator.html#a399e53d065bc34af428a1ba89a04972b">getLoadOperand</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a>* inst);</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span> </div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span> </div><div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#a36eb47b716c3b44ba5c459052bb0ed93"> 71</a></span>  <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1MTAAnnotator.html#a36eb47b716c3b44ba5c459052bb0ed93">isMemset</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a> *I)</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  {</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* <a class="code" href="CFLGrammar_8txt.html#acc7b4cf736579c4d83be2316d5a9e5f2">F</a> =<a class="code" href="namespaceSVF_1_1SVFUtil.html#a145abbd2958629718fbca41d25c3124d">SVFUtil::getCallee</a>(I)-><a class="code" href="classSVF_1_1SVFFunction.html#ac4ae917ae35ac6fca652fe2dd90a8ac2">getLLVMFun</a>();</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  <span class="keywordflow">return</span> F && F->getName().find(<span class="stringliteral">"llvm.memset"</span>) != std::string::npos;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  }</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span> </div><div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#aee9e5ebac543d9a2aab511410b047898"> 78</a></span>  <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1MTAAnnotator.html#aee9e5ebac543d9a2aab511410b047898">isMemcpy</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a> *I)</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  {</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* <a class="code" href="CFLGrammar_8txt.html#acc7b4cf736579c4d83be2316d5a9e5f2">F</a> =<a class="code" href="namespaceSVF_1_1SVFUtil.html#a145abbd2958629718fbca41d25c3124d">SVFUtil::getCallee</a>(I);</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  <span class="keywordflow">return</span> F && <a class="code" href="classSVF_1_1ExtAPI.html#aaf94c82d98f8ed1514ee49c9881a4094a54aa3d7051aab7d65ee1154538bfbb48">ExtAPI::EFT_L_A0__A0R_A1R</a> == <a class="code" href="classSVF_1_1ExtAPI.html#a86508e03ca1c2e37fc9414cb2335c3ec">ExtAPI::getExtAPI</a>()-><a class="code" href="classSVF_1_1ExtAPI.html#a90b433cf855adcf34c6ef7f7e5be62b1">get_type</a>(F);</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  }</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span> </div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="keyword">private</span>:</div><div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#a94d7a3fd9166126c052fca28f9a4c825"> 85</a></span>  <a class="code" href="classSVF_1_1MHP.html">MHP</a>* <a class="code" href="classSVF_1_1MTAAnnotator.html#a94d7a3fd9166126c052fca28f9a4c825">mhp</a>;</div><div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#a42a5c0eac879be5e300583aa7d07beb0"> 86</a></span>  <a class="code" href="classSVF_1_1LockAnalysis.html">LockAnalysis</a>* <a class="code" href="classSVF_1_1MTAAnnotator.html#a42a5c0eac879be5e300583aa7d07beb0">lsa</a>;</div><div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#a469851829bf1105fe8faac44b4abbfdd"> 87</a></span>  InstSet <a class="code" href="classSVF_1_1MTAAnnotator.html#a469851829bf1105fe8faac44b4abbfdd">loadset</a>;</div><div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#a37df9f2416685c535be2faa01e162f3a"> 88</a></span>  InstSet <a class="code" href="classSVF_1_1MTAAnnotator.html#a37df9f2416685c535be2faa01e162f3a">storeset</a>;</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span> </div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span> </div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="comment">// RCMemoryPartitioning mp;</span></div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span> </div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="keyword">public</span>:</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span> </div><div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#aa0149b932b4148b14b36e2c5cf9b614b"> 95</a></span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1MTAAnnotator.html#aa0149b932b4148b14b36e2c5cf9b614b">numOfAllSt</a>;</div><div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#a5c1743a40d54fdbde2f9dadb612de608"> 96</a></span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1MTAAnnotator.html#a5c1743a40d54fdbde2f9dadb612de608">numOfAllLd</a>;</div><div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#a3c07f9964623b3895b1bab59a63dccfb"> 97</a></span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1MTAAnnotator.html#a3c07f9964623b3895b1bab59a63dccfb">numOfNonLocalSt</a>;</div><div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#ad53ac0cec797f84d3bc14bdb6bab1ab3"> 98</a></span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1MTAAnnotator.html#ad53ac0cec797f84d3bc14bdb6bab1ab3">numOfNonLocalLd</a>;</div><div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#a71178ddc585c9ca7c9e5c3b52378cd7d"> 99</a></span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1MTAAnnotator.html#a71178ddc585c9ca7c9e5c3b52378cd7d">numOfAliasSt</a>;</div><div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#aa1572c2a9f260ff66c9da661fd669a5f"> 100</a></span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1MTAAnnotator.html#aa1572c2a9f260ff66c9da661fd669a5f">numOfAliasLd</a>;</div><div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#a3a53e90b4f361d1298983bc89795b3d2"> 101</a></span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1MTAAnnotator.html#a3a53e90b4f361d1298983bc89795b3d2">numOfMHPSt</a>;</div><div class="line"><a name="l00102"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#a29e0123620ab072fddc45331c6aa46e8"> 102</a></span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1MTAAnnotator.html#a29e0123620ab072fddc45331c6aa46e8">numOfMHPLd</a>;</div><div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#afbb8c25a126362ab0a4101866b4fc0ee"> 103</a></span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1MTAAnnotator.html#afbb8c25a126362ab0a4101866b4fc0ee">numOfAnnotatedSt</a>;</div><div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#a57df091dbdd4fc947cc5e7aaec123700"> 104</a></span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1MTAAnnotator.html#a57df091dbdd4fc947cc5e7aaec123700">numOfAnnotatedLd</a>;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span> </div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span> </div><div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#a4e10dbbb742125ebcbdc079ad647b87b"> 108</a></span>  <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1MTAAnnotator.html#a4e10dbbb742125ebcbdc079ad647b87b">ANNO_MHP</a>= 0x04;</div><div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#a27f54c50256fc4a2f96fa2305ad04eb1"> 109</a></span>  <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1MTAAnnotator.html#a27f54c50256fc4a2f96fa2305ad04eb1">ANNO_ALIAS</a>= 0x02;</div><div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#aded5add82485d493d57e293fd59bf960"> 110</a></span>  <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1MTAAnnotator.html#aded5add82485d493d57e293fd59bf960">ANNO_LOCAL</a>= 0x01;</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span> };</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span> </div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span> } <span class="comment">// End namespace SVF</span></div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span> </div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <span class="preprocessor">#endif </span><span class="comment">/* MTAANNOTATOR_H_ */</span><span class="preprocessor"></span></div><div class="ttc" id="classSVF_1_1MHP_html"><div class="ttname"><a href="classSVF_1_1MHP.html">SVF::MHP</a></div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00023">MHP.h:23</a></div></div>
|
|
69
|
+
<a href="MTAAnnotator_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">/*</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * MTAAnnotator.h</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * Created on: May 4, 2014</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * Author: Peng Di</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> */</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span> </div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="preprocessor">#ifndef MTAANNOTATOR_H_</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="preprocessor">#define MTAANNOTATOR_H_</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span> </div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="preprocessor">#include "<a class="code" href="Util_2BasicTypes_8h.html">Util/BasicTypes.h</a>"</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="preprocessor">#include "<a class="code" href="Annotator_8h.html">Util/Annotator.h</a>"</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="preprocessor">#include "<a class="code" href="MHP_8h.html">MTA/MHP.h</a>"</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span> </div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="keyword">namespace </span><a class="code" href="namespaceSVF.html">SVF</a></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span> {</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span> </div><div class="line"><a name="l00021"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html"> 21</a></span> <span class="keyword">class </span><a class="code" href="classSVF_1_1MTAAnnotator.html">MTAAnnotator</a>: <span class="keyword">public</span> <a class="code" href="classSVF_1_1Annotator.html">Annotator</a></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span> {</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span> </div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="keyword">public</span>:</div><div class="line"><a name="l00025"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#a95f4607624dac40e9d62f37e6b16fcf0"> 25</a></span>  <span class="keyword">typedef</span> <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set<const Instruction*></a> <a class="code" href="classSVF_1_1MTAAnnotator.html#a95f4607624dac40e9d62f37e6b16fcf0">InstSet</a>;</div><div class="line"><a name="l00027"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#a37ae5e04b0f5560d0f6c2f143b325cd4"> 27</a></span>  <a class="code" href="classSVF_1_1MTAAnnotator.html#a37ae5e04b0f5560d0f6c2f143b325cd4">MTAAnnotator</a>(): <a class="code" href="classSVF_1_1MTAAnnotator.html#a94d7a3fd9166126c052fca28f9a4c825">mhp</a>(nullptr),<a class="code" href="classSVF_1_1MTAAnnotator.html#a42a5c0eac879be5e300583aa7d07beb0">lsa</a>(nullptr)</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>  {</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>  <a class="code" href="classSVF_1_1MTAAnnotator.html#aa0149b932b4148b14b36e2c5cf9b614b">numOfAllSt</a> = 0;</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>  <a class="code" href="classSVF_1_1MTAAnnotator.html#a5c1743a40d54fdbde2f9dadb612de608">numOfAllLd</a> = 0;</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>  <a class="code" href="classSVF_1_1MTAAnnotator.html#a3c07f9964623b3895b1bab59a63dccfb">numOfNonLocalSt</a> = 0;</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>  <a class="code" href="classSVF_1_1MTAAnnotator.html#ad53ac0cec797f84d3bc14bdb6bab1ab3">numOfNonLocalLd</a> = 0;</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>  <a class="code" href="classSVF_1_1MTAAnnotator.html#a71178ddc585c9ca7c9e5c3b52378cd7d">numOfAliasSt</a> = 0;</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>  <a class="code" href="classSVF_1_1MTAAnnotator.html#aa1572c2a9f260ff66c9da661fd669a5f">numOfAliasLd</a> = 0;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>  <a class="code" href="classSVF_1_1MTAAnnotator.html#a3a53e90b4f361d1298983bc89795b3d2">numOfMHPSt</a> = 0;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>  <a class="code" href="classSVF_1_1MTAAnnotator.html#a29e0123620ab072fddc45331c6aa46e8">numOfMHPLd</a> = 0;</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>  <a class="code" href="classSVF_1_1MTAAnnotator.html#afbb8c25a126362ab0a4101866b4fc0ee">numOfAnnotatedSt</a> = 0;</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>  <a class="code" href="classSVF_1_1MTAAnnotator.html#a57df091dbdd4fc947cc5e7aaec123700">numOfAnnotatedLd</a> = 0;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>  }</div><div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#a1dc12d846adf07265a9b6a5c2694c84d"> 41</a></span>  <span class="keyword">virtual</span> <a class="code" href="classSVF_1_1MTAAnnotator.html#a1dc12d846adf07265a9b6a5c2694c84d">~MTAAnnotator</a>()</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>  {</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span> </div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>  }</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span> </div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>  <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1MTAAnnotator.html#a5513a9f2a5b89ab5f90549552fb2b20f">annotateDRCheck</a>(<a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a>* inst);</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span> </div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>  <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1MTAAnnotator.html#a108616cc98f15af3010ca45b91f32c04">initialize</a>(<a class="code" href="classSVF_1_1MHP.html">MHP</a>* <a class="code" href="classSVF_1_1MTAAnnotator.html#a94d7a3fd9166126c052fca28f9a4c825">mhp</a>, <a class="code" href="classSVF_1_1LockAnalysis.html">LockAnalysis</a>* <a class="code" href="classSVF_1_1MTAAnnotator.html#a42a5c0eac879be5e300583aa7d07beb0">lsa</a>);</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span> </div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>  <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1MTAAnnotator.html#af469d79fcc3bebd9360f72696a242d4e">pruneThreadLocal</a>(<a class="code" href="classSVF_1_1PointerAnalysis.html">PointerAnalysis</a>*pta);</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span> </div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>  <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1MTAAnnotator.html#a0ed08b6a94483a750c95eef6c2523dc6">pruneAliasMHP</a>(<a class="code" href="classSVF_1_1PointerAnalysis.html">PointerAnalysis</a>* pta);</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span> </div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>  <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1MTAAnnotator.html#a4e25b3ef3e4e91f14c35841d0138d888">performAnnotate</a>();</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span> </div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>  <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1MTAAnnotator.html#ab84e4295f1137090bdf9e0608a4c2077">collectLoadStoreInst</a>(<a class="code" href="classSVF_1_1SVFModule.html">SVFModule</a>* mod);</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span> </div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>* <a class="code" href="classSVF_1_1MTAAnnotator.html#a49434afd0d7beb9f5d6580e8f672889c">getStoreOperand</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a>* inst);</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>* <a class="code" href="classSVF_1_1MTAAnnotator.html#a399e53d065bc34af428a1ba89a04972b">getLoadOperand</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a>* inst);</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span> </div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span> </div><div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#a36eb47b716c3b44ba5c459052bb0ed93"> 71</a></span>  <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1MTAAnnotator.html#a36eb47b716c3b44ba5c459052bb0ed93">isMemset</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a> *I)</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  {</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* <a class="code" href="CFLGrammar_8txt.html#acc7b4cf736579c4d83be2316d5a9e5f2">F</a> =<a class="code" href="namespaceSVF_1_1SVFUtil.html#a145abbd2958629718fbca41d25c3124d">SVFUtil::getCallee</a>(I)-><a class="code" href="classSVF_1_1SVFFunction.html#ac4ae917ae35ac6fca652fe2dd90a8ac2">getLLVMFun</a>();</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  <span class="keywordflow">return</span> F && F->getName().find(<span class="stringliteral">"llvm.memset"</span>) != std::string::npos;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  }</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span> </div><div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#aee9e5ebac543d9a2aab511410b047898"> 78</a></span>  <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1MTAAnnotator.html#aee9e5ebac543d9a2aab511410b047898">isMemcpy</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a> *I)</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  {</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* <a class="code" href="CFLGrammar_8txt.html#acc7b4cf736579c4d83be2316d5a9e5f2">F</a> =<a class="code" href="namespaceSVF_1_1SVFUtil.html#a145abbd2958629718fbca41d25c3124d">SVFUtil::getCallee</a>(I);</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  <span class="keywordflow">return</span> F && <a class="code" href="classSVF_1_1ExtAPI.html#aaf94c82d98f8ed1514ee49c9881a4094a54aa3d7051aab7d65ee1154538bfbb48">ExtAPI::EFT_L_A0__A0R_A1R</a> == <a class="code" href="classSVF_1_1ExtAPI.html#a86508e03ca1c2e37fc9414cb2335c3ec">ExtAPI::getExtAPI</a>()-><a class="code" href="classSVF_1_1ExtAPI.html#a90b433cf855adcf34c6ef7f7e5be62b1">get_type</a>(F);</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  }</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span> </div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="keyword">private</span>:</div><div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#a94d7a3fd9166126c052fca28f9a4c825"> 85</a></span>  <a class="code" href="classSVF_1_1MHP.html">MHP</a>* <a class="code" href="classSVF_1_1MTAAnnotator.html#a94d7a3fd9166126c052fca28f9a4c825">mhp</a>;</div><div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#a42a5c0eac879be5e300583aa7d07beb0"> 86</a></span>  <a class="code" href="classSVF_1_1LockAnalysis.html">LockAnalysis</a>* <a class="code" href="classSVF_1_1MTAAnnotator.html#a42a5c0eac879be5e300583aa7d07beb0">lsa</a>;</div><div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#a469851829bf1105fe8faac44b4abbfdd"> 87</a></span>  InstSet <a class="code" href="classSVF_1_1MTAAnnotator.html#a469851829bf1105fe8faac44b4abbfdd">loadset</a>;</div><div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#a37df9f2416685c535be2faa01e162f3a"> 88</a></span>  InstSet <a class="code" href="classSVF_1_1MTAAnnotator.html#a37df9f2416685c535be2faa01e162f3a">storeset</a>;</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span> </div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span> </div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="comment">// RCMemoryPartitioning mp;</span></div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span> </div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="keyword">public</span>:</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span> </div><div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#aa0149b932b4148b14b36e2c5cf9b614b"> 95</a></span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1MTAAnnotator.html#aa0149b932b4148b14b36e2c5cf9b614b">numOfAllSt</a>;</div><div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#a5c1743a40d54fdbde2f9dadb612de608"> 96</a></span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1MTAAnnotator.html#a5c1743a40d54fdbde2f9dadb612de608">numOfAllLd</a>;</div><div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#a3c07f9964623b3895b1bab59a63dccfb"> 97</a></span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1MTAAnnotator.html#a3c07f9964623b3895b1bab59a63dccfb">numOfNonLocalSt</a>;</div><div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#ad53ac0cec797f84d3bc14bdb6bab1ab3"> 98</a></span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1MTAAnnotator.html#ad53ac0cec797f84d3bc14bdb6bab1ab3">numOfNonLocalLd</a>;</div><div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#a71178ddc585c9ca7c9e5c3b52378cd7d"> 99</a></span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1MTAAnnotator.html#a71178ddc585c9ca7c9e5c3b52378cd7d">numOfAliasSt</a>;</div><div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#aa1572c2a9f260ff66c9da661fd669a5f"> 100</a></span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1MTAAnnotator.html#aa1572c2a9f260ff66c9da661fd669a5f">numOfAliasLd</a>;</div><div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#a3a53e90b4f361d1298983bc89795b3d2"> 101</a></span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1MTAAnnotator.html#a3a53e90b4f361d1298983bc89795b3d2">numOfMHPSt</a>;</div><div class="line"><a name="l00102"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#a29e0123620ab072fddc45331c6aa46e8"> 102</a></span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1MTAAnnotator.html#a29e0123620ab072fddc45331c6aa46e8">numOfMHPLd</a>;</div><div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#afbb8c25a126362ab0a4101866b4fc0ee"> 103</a></span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1MTAAnnotator.html#afbb8c25a126362ab0a4101866b4fc0ee">numOfAnnotatedSt</a>;</div><div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#a57df091dbdd4fc947cc5e7aaec123700"> 104</a></span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1MTAAnnotator.html#a57df091dbdd4fc947cc5e7aaec123700">numOfAnnotatedLd</a>;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span> </div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span> </div><div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#a4e10dbbb742125ebcbdc079ad647b87b"> 108</a></span>  <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1MTAAnnotator.html#a4e10dbbb742125ebcbdc079ad647b87b">ANNO_MHP</a>= 0x04;</div><div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#a27f54c50256fc4a2f96fa2305ad04eb1"> 109</a></span>  <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1MTAAnnotator.html#a27f54c50256fc4a2f96fa2305ad04eb1">ANNO_ALIAS</a>= 0x02;</div><div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="classSVF_1_1MTAAnnotator.html#aded5add82485d493d57e293fd59bf960"> 110</a></span>  <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1MTAAnnotator.html#aded5add82485d493d57e293fd59bf960">ANNO_LOCAL</a>= 0x01;</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span> };</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span> </div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span> } <span class="comment">// End namespace SVF</span></div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span> </div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <span class="preprocessor">#endif </span><span class="comment">/* MTAANNOTATOR_H_ */</span><span class="preprocessor"></span></div><div class="ttc" id="classSVF_1_1MHP_html"><div class="ttname"><a href="classSVF_1_1MHP.html">SVF::MHP</a></div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00024">MHP.h:24</a></div></div>
|
|
70
70
|
<div class="ttc" id="classSVF_1_1MTAAnnotator_html_ab84e4295f1137090bdf9e0608a4c2077"><div class="ttname"><a href="classSVF_1_1MTAAnnotator.html#ab84e4295f1137090bdf9e0608a4c2077">SVF::MTAAnnotator::collectLoadStoreInst</a></div><div class="ttdeci">void collectLoadStoreInst(SVFModule *mod)</div><div class="ttdoc">Collect all load and store instruction. </div><div class="ttdef"><b>Definition:</b> <a href="MTAAnnotator_8cpp_source.html#l00037">MTAAnnotator.cpp:37</a></div></div>
|
|
71
71
|
<div class="ttc" id="classSVF_1_1Annotator_html"><div class="ttname"><a href="classSVF_1_1Annotator.html">SVF::Annotator</a></div><div class="ttdef"><b>Definition:</b> <a href="Annotator_8h_source.html#l00020">Annotator.h:20</a></div></div>
|
|
72
72
|
<div class="ttc" id="classSVF_1_1MTAAnnotator_html_a469851829bf1105fe8faac44b4abbfdd"><div class="ttname"><a href="classSVF_1_1MTAAnnotator.html#a469851829bf1105fe8faac44b4abbfdd">SVF::MTAAnnotator::loadset</a></div><div class="ttdeci">InstSet loadset</div><div class="ttdef"><b>Definition:</b> <a href="MTAAnnotator_8h_source.html#l00087">MTAAnnotator.h:87</a></div></div>
|
|
73
73
|
<div class="ttc" id="MHP_8h_html"><div class="ttname"><a href="MHP_8h.html">MHP.h</a></div></div>
|
|
74
74
|
<div class="ttc" id="classSVF_1_1MTAAnnotator_html_a49434afd0d7beb9f5d6580e8f672889c"><div class="ttname"><a href="classSVF_1_1MTAAnnotator.html#a49434afd0d7beb9f5d6580e8f672889c">SVF::MTAAnnotator::getStoreOperand</a></div><div class="ttdeci">const Value * getStoreOperand(const Instruction *inst)</div><div class="ttdoc">Get operand of store and load. </div><div class="ttdef"><b>Definition:</b> <a href="MTAAnnotator_8cpp_source.html#l00071">MTAAnnotator.cpp:71</a></div></div>
|
|
75
75
|
<div class="ttc" id="Util_2BasicTypes_8h_html"><div class="ttname"><a href="Util_2BasicTypes_8h.html">BasicTypes.h</a></div></div>
|
|
76
|
-
<div class="ttc" id="classSVF_1_1SVFFunction_html"><div class="ttname"><a href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a></div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#
|
|
76
|
+
<div class="ttc" id="classSVF_1_1SVFFunction_html"><div class="ttname"><a href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a></div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00132">BasicTypes.h:132</a></div></div>
|
|
77
77
|
<div class="ttc" id="Annotator_8h_html"><div class="ttname"><a href="Annotator_8h.html">Annotator.h</a></div></div>
|
|
78
78
|
<div class="ttc" id="classSVF_1_1MTAAnnotator_html_a29e0123620ab072fddc45331c6aa46e8"><div class="ttname"><a href="classSVF_1_1MTAAnnotator.html#a29e0123620ab072fddc45331c6aa46e8">SVF::MTAAnnotator::numOfMHPLd</a></div><div class="ttdeci">u32_t numOfMHPLd</div><div class="ttdef"><b>Definition:</b> <a href="MTAAnnotator_8h_source.html#l00102">MTAAnnotator.h:102</a></div></div>
|
|
79
79
|
<div class="ttc" id="classSVF_1_1MTAAnnotator_html_aee9e5ebac543d9a2aab511410b047898"><div class="ttname"><a href="classSVF_1_1MTAAnnotator.html#aee9e5ebac543d9a2aab511410b047898">SVF::MTAAnnotator::isMemcpy</a></div><div class="ttdeci">bool isMemcpy(const Instruction *I)</div><div class="ttdoc">Check if Function "F" is memcpy. </div><div class="ttdef"><b>Definition:</b> <a href="MTAAnnotator_8h_source.html#l00078">MTAAnnotator.h:78</a></div></div>
|
|
@@ -103,7 +103,7 @@ $(function() {
|
|
|
103
103
|
<div class="ttc" id="CFLGrammar_8txt_html_acc7b4cf736579c4d83be2316d5a9e5f2"><div class="ttname"><a href="CFLGrammar_8txt.html#acc7b4cf736579c4d83be2316d5a9e5f2">F</a></div><div class="ttdeci">V Fbar V F</div><div class="ttdef"><b>Definition:</b> <a href="CFLGrammar_8txt_source.html#l00008">CFLGrammar.txt:8</a></div></div>
|
|
104
104
|
<div class="ttc" id="classSVF_1_1MTAAnnotator_html_aa0149b932b4148b14b36e2c5cf9b614b"><div class="ttname"><a href="classSVF_1_1MTAAnnotator.html#aa0149b932b4148b14b36e2c5cf9b614b">SVF::MTAAnnotator::numOfAllSt</a></div><div class="ttdeci">u32_t numOfAllSt</div><div class="ttdef"><b>Definition:</b> <a href="MTAAnnotator_8h_source.html#l00095">MTAAnnotator.h:95</a></div></div>
|
|
105
105
|
<div class="ttc" id="classSVF_1_1ExtAPI_html_a86508e03ca1c2e37fc9414cb2335c3ec"><div class="ttname"><a href="classSVF_1_1ExtAPI.html#a86508e03ca1c2e37fc9414cb2335c3ec">SVF::ExtAPI::getExtAPI</a></div><div class="ttdeci">static ExtAPI * getExtAPI()</div><div class="ttdoc">Singleton design here to make sure we only have one instance during whole analysis. </div><div class="ttdef"><b>Definition:</b> <a href="ExtAPI_8h_source.html#l00114">ExtAPI.h:114</a></div></div>
|
|
106
|
-
<div class="ttc" id="classSVF_1_1SVFFunction_html_ac4ae917ae35ac6fca652fe2dd90a8ac2"><div class="ttname"><a href="classSVF_1_1SVFFunction.html#ac4ae917ae35ac6fca652fe2dd90a8ac2">SVF::SVFFunction::getLLVMFun</a></div><div class="ttdeci">Function * getLLVMFun() const</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#
|
|
106
|
+
<div class="ttc" id="classSVF_1_1SVFFunction_html_ac4ae917ae35ac6fca652fe2dd90a8ac2"><div class="ttname"><a href="classSVF_1_1SVFFunction.html#ac4ae917ae35ac6fca652fe2dd90a8ac2">SVF::SVFFunction::getLLVMFun</a></div><div class="ttdeci">Function * getLLVMFun() const</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00148">BasicTypes.h:148</a></div></div>
|
|
107
107
|
<div class="ttc" id="namespaceSVF_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="CFGNormalizer_8h_source.html#l00035">CFGNormalizer.h:35</a></div></div>
|
|
108
108
|
<div class="ttc" id="classSVF_1_1ExtAPI_html_aaf94c82d98f8ed1514ee49c9881a4094a54aa3d7051aab7d65ee1154538bfbb48"><div class="ttname"><a href="classSVF_1_1ExtAPI.html#aaf94c82d98f8ed1514ee49c9881a4094a54aa3d7051aab7d65ee1154538bfbb48">SVF::ExtAPI::EFT_L_A0__A0R_A1R</a></div><div class="ttdef"><b>Definition:</b> <a href="ExtAPI_8h_source.html#l00065">ExtAPI.h:65</a></div></div>
|
|
109
109
|
<div class="ttc" id="classSVF_1_1MTAAnnotator_html_a4e10dbbb742125ebcbdc079ad647b87b"><div class="ttname"><a href="classSVF_1_1MTAAnnotator.html#a4e10dbbb742125ebcbdc079ad647b87b">SVF::MTAAnnotator::ANNO_MHP</a></div><div class="ttdeci">static const u32_t ANNO_MHP</div><div class="ttdoc">Constant INTERLEV_FLAG values. </div><div class="ttdef"><b>Definition:</b> <a href="MTAAnnotator_8h_source.html#l00108">MTAAnnotator.h:108</a></div></div>
|