svf-tools 1.0.371 → 1.0.375
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/Dockerfile +1 -1
- package/SVF-doxygen/html/html/AndersenSFR_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +5 -6
- package/SVF-doxygen/html/html/Andersen_8cpp_source.html +10 -10
- package/SVF-doxygen/html/html/CHGBuilder_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/Conditions_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/ConsGEdge_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ConsG_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/ConsG_8h_source.html +7 -7
- package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/DDAClient_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/DDAClient_8h_source.html +1 -1
- package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +15 -15
- package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/FlowSensitiveTBHC_8cpp_source.html +7 -7
- 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/ICFG_8cpp_source.html +4 -10
- package/SVF-doxygen/html/html/IRAnnotator_8h_source.html +3 -3
- package/SVF-doxygen/html/html/IRGraph_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/IRGraph_8h_source.html +2 -2
- package/SVF-doxygen/html/html/LLVMUtil_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/LLVMUtil_8h.html +3 -3
- package/SVF-doxygen/html/html/LLVMUtil_8h_source.html +2 -2
- package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/LocationSet_8cpp_source.html +11 -11
- package/SVF-doxygen/html/html/LocationSet_8h_source.html +10 -11
- package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +10 -10
- package/SVF-doxygen/html/html/OfflineConsG_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/Options_8cpp_source.html +22 -21
- package/SVF-doxygen/html/html/Options_8h_source.html +22 -21
- package/SVF-doxygen/html/html/PAGBuilderFromFile_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/PTAStat_8cpp_source.html +17 -17
- package/SVF-doxygen/html/html/PathCondAllocator_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +8 -8
- package/SVF-doxygen/html/html/PointerAnalysisImpl_8h_source.html +2 -2
- package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +11 -11
- package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +14 -14
- package/SVF-doxygen/html/html/SVFG_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +8 -10
- package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +72 -73
- package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +37 -35
- package/SVF-doxygen/html/html/SVFIR_8h_source.html +66 -68
- package/SVF-doxygen/html/html/SVFModule_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SVFStatements_8h_source.html +5 -5
- package/SVF-doxygen/html/html/SVFUtil_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SVFVariables_8cpp_source.html +18 -19
- package/SVF-doxygen/html/html/SVFVariables_8h_source.html +121 -127
- package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/SrcSnkDDA_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SymbolTableBuilder_8cpp_source.html +39 -30
- package/SVF-doxygen/html/html/SymbolTableBuilder_8h_source.html +10 -7
- package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +93 -53
- package/SVF-doxygen/html/html/SymbolTableInfo_8h_source.html +82 -85
- package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/TypeBasedHeapCloning_8cpp_source.html +17 -16
- package/SVF-doxygen/html/html/TypeBasedHeapCloning_8h_source.html +1 -1
- package/SVF-doxygen/html/html/VFGNode_8h_source.html +2 -2
- package/SVF-doxygen/html/html/VFG_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/VFG_8h_source.html +2 -2
- package/SVF-doxygen/html/html/VersionedFlowSensitiveStat_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +5 -5
- 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_1AliasDDAClient.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +5 -6
- package/SVF-doxygen/html/html/classSVF_1_1ArgumentVFGNode.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +12 -13
- package/SVF-doxygen/html/html/classSVF_1_1BinaryOPVFGNode.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1BranchCondManager.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1BranchStmt.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CHGBuilder.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CloneDummyObjVar-members.html +22 -25
- package/SVF-doxygen/html/html/classSVF_1_1CloneDummyObjVar.html +16 -25
- package/SVF-doxygen/html/html/classSVF_1_1CloneFIObjVar-members.html +22 -25
- package/SVF-doxygen/html/html/classSVF_1_1CloneFIObjVar.html +17 -26
- package/SVF-doxygen/html/html/classSVF_1_1CloneGepObjVar-members.html +23 -26
- package/SVF-doxygen/html/html/classSVF_1_1CloneGepObjVar.html +17 -26
- package/SVF-doxygen/html/html/classSVF_1_1CmpVFGNode.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ConstraintGraph.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1DDAClient.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1DDAVFSolver.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1DummyObjVar-members.html +22 -25
- package/SVF-doxygen/html/html/classSVF_1_1DummyObjVar.html +18 -27
- package/SVF-doxygen/html/html/classSVF_1_1DummyValVar-members.html +21 -24
- package/SVF-doxygen/html/html/classSVF_1_1DummyValVar.html +18 -27
- package/SVF-doxygen/html/html/classSVF_1_1FIObjVar-members.html +22 -25
- package/SVF-doxygen/html/html/classSVF_1_1FIObjVar.html +19 -28
- package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +10 -10
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC.html +17 -17
- 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_1FunptrDDAClient.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1GepObjVar-members.html +24 -27
- package/SVF-doxygen/html/html/classSVF_1_1GepObjVar.html +42 -51
- package/SVF-doxygen/html/html/classSVF_1_1GepStmt.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1GepValVar-members.html +30 -35
- package/SVF-doxygen/html/html/classSVF_1_1GepValVar.html +34 -106
- package/SVF-doxygen/html/html/classSVF_1_1ICFGPrinter.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IRGraph.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1InterPHIVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IntraPHIVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1LocationSet-members.html +15 -16
- package/SVF-doxygen/html/html/classSVF_1_1LocationSet.html +47 -81
- package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1MemObj.html +87 -87
- package/SVF-doxygen/html/html/classSVF_1_1NormalGepCGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1NullPtrVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ObjTypeInfo-members.html +7 -8
- package/SVF-doxygen/html/html/classSVF_1_1ObjTypeInfo.html +162 -211
- package/SVF-doxygen/html/html/classSVF_1_1ObjVar-members.html +22 -25
- package/SVF-doxygen/html/html/classSVF_1_1ObjVar.html +23 -32
- package/SVF-doxygen/html/html/classSVF_1_1OfflineConsG.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1Options-members.html +55 -54
- package/SVF-doxygen/html/html/classSVF_1_1Options.html +47 -21
- package/SVF-doxygen/html/html/classSVF_1_1PAGBuilderFromFile.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1PHIVFGNode.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +18 -18
- package/SVF-doxygen/html/html/classSVF_1_1PathCondAllocator.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +30 -30
- package/SVF-doxygen/html/html/classSVF_1_1RetPN-members.html +22 -25
- package/SVF-doxygen/html/html/classSVF_1_1RetPN.html +18 -27
- package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SVFIR-members.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1SVFIR.html +215 -227
- package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder-members.html +82 -83
- package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +582 -529
- package/SVF-doxygen/html/html/classSVF_1_1SVFModule.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SVFVar-members.html +23 -26
- package/SVF-doxygen/html/html/classSVF_1_1SVFVar.html +54 -151
- package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1StInfo.html +43 -43
- package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder-members.html +10 -7
- package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder.html +182 -72
- package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo-members.html +9 -11
- package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo.html +131 -162
- package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1TypeBasedHeapCloning.html +26 -25
- package/SVF-doxygen/html/html/classSVF_1_1UnaryOPVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1VFG.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1ValVar-members.html +21 -24
- package/SVF-doxygen/html/html/classSVF_1_1ValVar.html +16 -25
- package/SVF-doxygen/html/html/classSVF_1_1VarArgPN-members.html +22 -25
- package/SVF-doxygen/html/html/classSVF_1_1VarArgPN.html +18 -27
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +12 -12
- package/SVF-doxygen/html/html/functions_a.html +24 -24
- package/SVF-doxygen/html/html/functions_c.html +1 -1
- package/SVF-doxygen/html/html/functions_f.html +19 -22
- package/SVF-doxygen/html/html/functions_func.html +24 -24
- package/SVF-doxygen/html/html/functions_func_c.html +1 -1
- package/SVF-doxygen/html/html/functions_func_g.html +20 -23
- package/SVF-doxygen/html/html/functions_func_h.html +1 -1
- package/SVF-doxygen/html/html/functions_func_i.html +11 -17
- package/SVF-doxygen/html/html/functions_func_l.html +2 -2
- package/SVF-doxygen/html/html/functions_func_o.html +4 -4
- package/SVF-doxygen/html/html/functions_func_r.html +5 -2
- package/SVF-doxygen/html/html/functions_g.html +18 -21
- package/SVF-doxygen/html/html/functions_h.html +1 -1
- package/SVF-doxygen/html/html/functions_i.html +12 -21
- package/SVF-doxygen/html/html/functions_l.html +8 -8
- package/SVF-doxygen/html/html/functions_m.html +4 -1
- package/SVF-doxygen/html/html/functions_o.html +22 -18
- package/SVF-doxygen/html/html/functions_p.html +3 -3
- package/SVF-doxygen/html/html/functions_r.html +5 -2
- package/SVF-doxygen/html/html/functions_rela.html +2 -1
- package/SVF-doxygen/html/html/functions_s.html +6 -5
- package/SVF-doxygen/html/html/functions_t.html +4 -4
- package/SVF-doxygen/html/html/functions_v.html +3 -3
- package/SVF-doxygen/html/html/functions_vars_f.html +0 -3
- package/SVF-doxygen/html/html/functions_vars_i.html +3 -6
- package/SVF-doxygen/html/html/functions_vars_m.html +3 -0
- package/SVF-doxygen/html/html/namespaceSVF.html +1 -1
- package/SVF-doxygen/html/html/namespaceSVF_1_1SVFUtil.html +8 -8
- package/SVF-doxygen/html/html/namespacemembers_func.html +1 -1
- package/SVF-doxygen/html/html/namespacemembers_s.html +1 -1
- package/SVF-doxygen/html/html/search/all_1.js +22 -22
- package/SVF-doxygen/html/html/search/all_10.js +4 -4
- package/SVF-doxygen/html/html/search/all_12.js +5 -4
- package/SVF-doxygen/html/html/search/all_13.js +6 -6
- package/SVF-doxygen/html/html/search/all_14.js +4 -4
- package/SVF-doxygen/html/html/search/all_15.js +1 -1
- package/SVF-doxygen/html/html/search/all_16.js +1 -1
- package/SVF-doxygen/html/html/search/all_3.js +1 -1
- package/SVF-doxygen/html/html/search/all_6.js +0 -1
- package/SVF-doxygen/html/html/search/all_7.js +9 -9
- package/SVF-doxygen/html/html/search/all_8.js +1 -1
- package/SVF-doxygen/html/html/search/all_9.js +2 -5
- package/SVF-doxygen/html/html/search/all_c.js +4 -4
- package/SVF-doxygen/html/html/search/all_d.js +1 -0
- package/SVF-doxygen/html/html/search/all_e.js +3 -3
- package/SVF-doxygen/html/html/search/all_f.js +3 -3
- package/SVF-doxygen/html/html/search/functions_0.js +22 -22
- package/SVF-doxygen/html/html/search/functions_10.js +2 -2
- package/SVF-doxygen/html/html/search/functions_2.js +1 -1
- package/SVF-doxygen/html/html/search/functions_6.js +9 -9
- package/SVF-doxygen/html/html/search/functions_7.js +1 -1
- package/SVF-doxygen/html/html/search/functions_8.js +1 -3
- package/SVF-doxygen/html/html/search/functions_a.js +1 -1
- package/SVF-doxygen/html/html/search/functions_d.js +1 -1
- package/SVF-doxygen/html/html/search/functions_e.js +1 -1
- package/SVF-doxygen/html/html/search/functions_f.js +1 -0
- package/SVF-doxygen/html/html/search/related_9.js +1 -1
- package/SVF-doxygen/html/html/search/variables_14.js +2 -2
- package/SVF-doxygen/html/html/search/variables_15.js +1 -1
- package/SVF-doxygen/html/html/search/variables_6.js +0 -1
- package/SVF-doxygen/html/html/search/variables_9.js +1 -2
- package/SVF-doxygen/html/html/search/variables_d.js +1 -0
- package/SVF-doxygen/html/html/search/variables_e.js +2 -2
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html +1 -1
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ICFG_01_5_01_4.html +7 -21
- 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 +1 -1
- package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1LocationSet_01_4.html +4 -4
- package/SVF-doxygen/html/html/svf-ex_8cpp.html +2 -2
- package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +2 -2
- package/include/MemoryModel/LocationSet.h +0 -6
- package/include/MemoryModel/SVFIR.h +5 -37
- package/include/MemoryModel/SVFStatements.h +1 -1
- package/include/MemoryModel/SVFVariables.h +4 -21
- package/include/MemoryModel/SymbolTableInfo.h +8 -24
- package/include/SVF-FE/LLVMUtil.h +1 -1
- package/include/SVF-FE/SVFIRBuilder.h +91 -108
- package/include/SVF-FE/SymbolTableBuilder.h +9 -2
- package/include/Util/Options.h +1 -0
- package/lib/Graphs/ICFG.cpp +1 -47
- package/lib/MemoryModel/LocationSet.cpp +7 -3
- package/lib/MemoryModel/PointerAnalysisImpl.cpp +1 -1
- package/lib/MemoryModel/SVFIR.cpp +67 -19
- package/lib/MemoryModel/SVFVariables.cpp +6 -13
- package/lib/MemoryModel/SymbolTableInfo.cpp +57 -68
- package/lib/SVF-FE/LLVMUtil.cpp +3 -3
- package/lib/SVF-FE/SVFIRBuilder.cpp +83 -136
- package/lib/SVF-FE/SymbolTableBuilder.cpp +81 -23
- package/lib/Util/Options.cpp +6 -0
- package/lib/Util/TypeBasedHeapCloning.cpp +1 -1
- package/lib/WPA/AndersenStat.cpp +1 -1
- package/package.json +1 -1
|
@@ -99,9 +99,6 @@ Public Member Functions</h2></td></tr>
|
|
|
99
99
|
<tr class="memitem:a290c7fe38704552fd66ad06e5deeaca9"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1LocationSet.html#a290c7fe38704552fd66ad06e5deeaca9">LocationSet</a> (const <a class="el" href="classSVF_1_1LocationSet.html">LocationSet</a> &ls)</td></tr>
|
|
100
100
|
<tr class="memdesc:a290c7fe38704552fd66ad06e5deeaca9"><td class="mdescLeft"> </td><td class="mdescRight">Copy Constructor. <a href="#a290c7fe38704552fd66ad06e5deeaca9">More...</a><br /></td></tr>
|
|
101
101
|
<tr class="separator:a290c7fe38704552fd66ad06e5deeaca9"><td class="memSeparator" colspan="2"> </td></tr>
|
|
102
|
-
<tr class="memitem:aa19807a258fc673e6885eafb924ecc91"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1LocationSet.html#aa19807a258fc673e6885eafb924ecc91">LocationSet</a> (const <a class="el" href="classSVF_1_1FlattenedFieldInfo.html">FlattenedFieldInfo</a> &fi)</td></tr>
|
|
103
|
-
<tr class="memdesc:aa19807a258fc673e6885eafb924ecc91"><td class="mdescLeft"> </td><td class="mdescRight">Initialization from <a class="el" href="classSVF_1_1FlattenedFieldInfo.html">FlattenedFieldInfo</a>. <a href="#aa19807a258fc673e6885eafb924ecc91">More...</a><br /></td></tr>
|
|
104
|
-
<tr class="separator:aa19807a258fc673e6885eafb924ecc91"><td class="memSeparator" colspan="2"> </td></tr>
|
|
105
102
|
<tr class="memitem:a00ae12aee8018f1eb88f011e52762be9"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1LocationSet.html#a00ae12aee8018f1eb88f011e52762be9">~LocationSet</a> ()</td></tr>
|
|
106
103
|
<tr class="separator:a00ae12aee8018f1eb88f011e52762be9"><td class="memSeparator" colspan="2"> </td></tr>
|
|
107
104
|
<tr class="memitem:a216afe1a2481c57b278549732d5e185e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#abe09d99af006554a5c00803e9a89f9a6">s64_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1LocationSet.html#a216afe1a2481c57b278549732d5e185e">accumulateConstantOffset</a> () const</td></tr>
|
|
@@ -214,7 +211,7 @@ Friends</h2></td></tr>
|
|
|
214
211
|
</div>
|
|
215
212
|
<h2 class="groupheader">Constructor & Destructor Documentation</h2>
|
|
216
213
|
<a id="a7fb1dbff5cf3ec18977cc92ae9800d47"></a>
|
|
217
|
-
<h2 class="memtitle"><span class="permalink"><a href="#a7fb1dbff5cf3ec18977cc92ae9800d47">◆ </a></span>LocationSet() <span class="overload">[1/
|
|
214
|
+
<h2 class="memtitle"><span class="permalink"><a href="#a7fb1dbff5cf3ec18977cc92ae9800d47">◆ </a></span>LocationSet() <span class="overload">[1/2]</span></h2>
|
|
218
215
|
|
|
219
216
|
<div class="memitem">
|
|
220
217
|
<div class="memproto">
|
|
@@ -240,12 +237,12 @@ Friends</h2></td></tr>
|
|
|
240
237
|
<p>Constructor. </p>
|
|
241
238
|
|
|
242
239
|
<p class="definition">Definition at line <a class="el" href="LocationSet_8h_source.html#l00084">84</a> of file <a class="el" href="LocationSet_8h_source.html">LocationSet.h</a>.</p>
|
|
243
|
-
<div class="fragment"><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  : <a class="code" href="classSVF_1_1LocationSet.html#a1937e1b9513135cb46c7f3f02fbe7d03">fldIdx</a>(o)</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  {}</div><div class="ttc" id="classSVF_1_1LocationSet_html_a1937e1b9513135cb46c7f3f02fbe7d03"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a1937e1b9513135cb46c7f3f02fbe7d03">SVF::LocationSet::fldIdx</a></div><div class="ttdeci">s64_t fldIdx</div><div class="ttdoc">Accumulated Constant Offsets. </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#
|
|
240
|
+
<div class="fragment"><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  : <a class="code" href="classSVF_1_1LocationSet.html#a1937e1b9513135cb46c7f3f02fbe7d03">fldIdx</a>(o)</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  {}</div><div class="ttc" id="classSVF_1_1LocationSet_html_a1937e1b9513135cb46c7f3f02fbe7d03"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a1937e1b9513135cb46c7f3f02fbe7d03">SVF::LocationSet::fldIdx</a></div><div class="ttdeci">s64_t fldIdx</div><div class="ttdoc">Accumulated Constant Offsets. </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00156">LocationSet.h:156</a></div></div>
|
|
244
241
|
</div><!-- fragment -->
|
|
245
242
|
</div>
|
|
246
243
|
</div>
|
|
247
244
|
<a id="a290c7fe38704552fd66ad06e5deeaca9"></a>
|
|
248
|
-
<h2 class="memtitle"><span class="permalink"><a href="#a290c7fe38704552fd66ad06e5deeaca9">◆ </a></span>LocationSet() <span class="overload">[2/
|
|
245
|
+
<h2 class="memtitle"><span class="permalink"><a href="#a290c7fe38704552fd66ad06e5deeaca9">◆ </a></span>LocationSet() <span class="overload">[2/2]</span></h2>
|
|
249
246
|
|
|
250
247
|
<div class="memitem">
|
|
251
248
|
<div class="memproto">
|
|
@@ -271,39 +268,8 @@ Friends</h2></td></tr>
|
|
|
271
268
|
<p>Copy Constructor. </p>
|
|
272
269
|
|
|
273
270
|
<p class="definition">Definition at line <a class="el" href="LocationSet_8h_source.html#l00088">88</a> of file <a class="el" href="LocationSet_8h_source.html">LocationSet.h</a>.</p>
|
|
274
|
-
<div class="fragment"><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  : <a class="code" href="classSVF_1_1LocationSet.html#a1937e1b9513135cb46c7f3f02fbe7d03">fldIdx</a>(ls.fldIdx), <a class="code" href="classSVF_1_1LocationSet.html#a5a2792b8b914557a9ccf0e57d0ed8b30">offsetValues</a>(ls.getOffsetValueVec())</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>  }</div><div class="ttc" id="classSVF_1_1LocationSet_html_a5a2792b8b914557a9ccf0e57d0ed8b30"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a5a2792b8b914557a9ccf0e57d0ed8b30">SVF::LocationSet::offsetValues</a></div><div class="ttdeci">OffsetValueVec offsetValues</div><div class="ttdoc">a vector of actual offset in the form of Values </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#
|
|
275
|
-
<div class="ttc" id="classSVF_1_1LocationSet_html_a1937e1b9513135cb46c7f3f02fbe7d03"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a1937e1b9513135cb46c7f3f02fbe7d03">SVF::LocationSet::fldIdx</a></div><div class="ttdeci">s64_t fldIdx</div><div class="ttdoc">Accumulated Constant Offsets. </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#
|
|
276
|
-
</div><!-- fragment -->
|
|
277
|
-
</div>
|
|
278
|
-
</div>
|
|
279
|
-
<a id="aa19807a258fc673e6885eafb924ecc91"></a>
|
|
280
|
-
<h2 class="memtitle"><span class="permalink"><a href="#aa19807a258fc673e6885eafb924ecc91">◆ </a></span>LocationSet() <span class="overload">[3/3]</span></h2>
|
|
281
|
-
|
|
282
|
-
<div class="memitem">
|
|
283
|
-
<div class="memproto">
|
|
284
|
-
<table class="mlabels">
|
|
285
|
-
<tr>
|
|
286
|
-
<td class="mlabels-left">
|
|
287
|
-
<table class="memname">
|
|
288
|
-
<tr>
|
|
289
|
-
<td class="memname">SVF::LocationSet::LocationSet </td>
|
|
290
|
-
<td>(</td>
|
|
291
|
-
<td class="paramtype">const <a class="el" href="classSVF_1_1FlattenedFieldInfo.html">FlattenedFieldInfo</a> & </td>
|
|
292
|
-
<td class="paramname"><em>fi</em></td><td>)</td>
|
|
293
|
-
<td></td>
|
|
294
|
-
</tr>
|
|
295
|
-
</table>
|
|
296
|
-
</td>
|
|
297
|
-
<td class="mlabels-right">
|
|
298
|
-
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
|
|
299
|
-
</tr>
|
|
300
|
-
</table>
|
|
301
|
-
</div><div class="memdoc">
|
|
302
|
-
|
|
303
|
-
<p>Initialization from <a class="el" href="classSVF_1_1FlattenedFieldInfo.html">FlattenedFieldInfo</a>. </p>
|
|
304
|
-
|
|
305
|
-
<p class="definition">Definition at line <a class="el" href="LocationSet_8h_source.html#l00094">94</a> of file <a class="el" href="LocationSet_8h_source.html">LocationSet.h</a>.</p>
|
|
306
|
-
<div class="fragment"><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>  : <a class="code" href="classSVF_1_1LocationSet.html#a1937e1b9513135cb46c7f3f02fbe7d03">fldIdx</a>(fi.getFlattenFldIdx())</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  {</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>  }</div><div class="ttc" id="classSVF_1_1LocationSet_html_a1937e1b9513135cb46c7f3f02fbe7d03"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a1937e1b9513135cb46c7f3f02fbe7d03">SVF::LocationSet::fldIdx</a></div><div class="ttdeci">s64_t fldIdx</div><div class="ttdoc">Accumulated Constant Offsets. </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00162">LocationSet.h:162</a></div></div>
|
|
271
|
+
<div class="fragment"><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  : <a class="code" href="classSVF_1_1LocationSet.html#a1937e1b9513135cb46c7f3f02fbe7d03">fldIdx</a>(ls.fldIdx), <a class="code" href="classSVF_1_1LocationSet.html#a5a2792b8b914557a9ccf0e57d0ed8b30">offsetValues</a>(ls.getOffsetValueVec())</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>  }</div><div class="ttc" id="classSVF_1_1LocationSet_html_a5a2792b8b914557a9ccf0e57d0ed8b30"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a5a2792b8b914557a9ccf0e57d0ed8b30">SVF::LocationSet::offsetValues</a></div><div class="ttdeci">OffsetValueVec offsetValues</div><div class="ttdoc">a vector of actual offset in the form of Values </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00157">LocationSet.h:157</a></div></div>
|
|
272
|
+
<div class="ttc" id="classSVF_1_1LocationSet_html_a1937e1b9513135cb46c7f3f02fbe7d03"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a1937e1b9513135cb46c7f3f02fbe7d03">SVF::LocationSet::fldIdx</a></div><div class="ttdeci">s64_t fldIdx</div><div class="ttdoc">Accumulated Constant Offsets. </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00156">LocationSet.h:156</a></div></div>
|
|
307
273
|
</div><!-- fragment -->
|
|
308
274
|
</div>
|
|
309
275
|
</div>
|
|
@@ -330,8 +296,8 @@ Friends</h2></td></tr>
|
|
|
330
296
|
</table>
|
|
331
297
|
</div><div class="memdoc">
|
|
332
298
|
|
|
333
|
-
<p class="definition">Definition at line <a class="el" href="LocationSet_8h_source.html#
|
|
334
|
-
<div class="fragment"><div class="line"><a name="
|
|
299
|
+
<p class="definition">Definition at line <a class="el" href="LocationSet_8h_source.html#l00093">93</a> of file <a class="el" href="LocationSet_8h_source.html">LocationSet.h</a>.</p>
|
|
300
|
+
<div class="fragment"><div class="line"><a name="l00093"></a><span class="lineno"> 93</span> {}</div></div><!-- fragment -->
|
|
335
301
|
</div>
|
|
336
302
|
</div>
|
|
337
303
|
<h2 class="groupheader">Member Function Documentation</h2>
|
|
@@ -360,8 +326,8 @@ Friends</h2></td></tr>
|
|
|
360
326
|
|
|
361
327
|
<p>Get methods. </p>
|
|
362
328
|
|
|
363
|
-
<p class="definition">Definition at line <a class="el" href="LocationSet_8h_source.html#
|
|
364
|
-
<div class="fragment"><div class="line"><a name="
|
|
329
|
+
<p class="definition">Definition at line <a class="el" href="LocationSet_8h_source.html#l00114">114</a> of file <a class="el" href="LocationSet_8h_source.html">LocationSet.h</a>.</p>
|
|
330
|
+
<div class="fragment"><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="keywordflow">return</span> <a class="code" href="classSVF_1_1LocationSet.html#a1937e1b9513135cb46c7f3f02fbe7d03">fldIdx</a>;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>  }</div><div class="ttc" id="classSVF_1_1LocationSet_html_a1937e1b9513135cb46c7f3f02fbe7d03"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a1937e1b9513135cb46c7f3f02fbe7d03">SVF::LocationSet::fldIdx</a></div><div class="ttdeci">s64_t fldIdx</div><div class="ttdoc">Accumulated Constant Offsets. </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00156">LocationSet.h:156</a></div></div>
|
|
365
331
|
</div><!-- fragment -->
|
|
366
332
|
</div>
|
|
367
333
|
</div>
|
|
@@ -386,17 +352,17 @@ Friends</h2></td></tr>
|
|
|
386
352
|
<p>"value" is the offset variable (must be a constant) "type" is the location where we want to compute offset Given a vector: [(value1,type1), (value2,type2), (value3,type3)] totalConstOffset = flattenOffset(value1,type1) * flattenOffset(type2,type2) + flattenOffset(type3,type3) For a pointer type (e.g., t1 is PointerType), we will retrieve the pointee type and times the offset, i.e., getElementNum(t1) X off1%5 = getelementptr inbounds struct.Student, struct.Student* %4, i64 1 value1: i64 1 type1: struct.Student* accumulateConstantOffset = 32 %6 = getelementptr inbounds struct.Student, struct.Student* %5, i32 0, i32 1 value1: i32 0 type1: struct.Student* value2: i32 1 type2: struct.Student = type { struct.inner, [10 x [3 x i8]] } accumulateConstantOffset = 2 %7 = getelementptr inbounds [10 x [3 x i8]], [10 x [3 x i8]]* %6, i64 0, i64 3 value1: i64 0 type1: [10 x [3 x i8]]* value2: i64 3 type2: [10 x [3 x i8]] accumulateConstantOffset = 9 %8 = getelementptr inbounds [3 x i8], [3 x i8]* %7, i64 0, i64 2 value1: i64 0 type1: [3 x i8]* value2: i64 2 type2: [3 x i8] accumulateConstantOffset = 2 </p>
|
|
387
353
|
|
|
388
354
|
<p class="definition">Definition at line <a class="el" href="LocationSet_8cpp_source.html#l00111">111</a> of file <a class="el" href="LocationSet_8cpp_source.html">LocationSet.cpp</a>.</p>
|
|
389
|
-
<div class="fragment"><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>  {</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>  <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(<a class="code" href="classSVF_1_1LocationSet.html#a4a9185282308c50f86fdf66f7060373d">isConstantOffset</a>() && <span class="stringliteral">"not a constant offset"</span>);</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span> </div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>  <a class="code" href="namespaceSVF.html#abe09d99af006554a5c00803e9a89f9a6">s64_t</a> totalConstOffset = 0;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  <span class="keywordflow">for</span>(<span class="keywordtype">int</span> i = <a class="code" href="classSVF_1_1LocationSet.html#a5a2792b8b914557a9ccf0e57d0ed8b30">offsetValues</a>.size() - 1; i >= 0; i--){</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>* value = <a class="code" href="classSVF_1_1LocationSet.html#a5a2792b8b914557a9ccf0e57d0ed8b30">offsetValues</a>[i].first;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a1d008c0666c145622b81d427be64c52d">Type</a>* type = <a class="code" href="classSVF_1_1LocationSet.html#a5a2792b8b914557a9ccf0e57d0ed8b30">offsetValues</a>[i].second;</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#adefcb50414ea999d70cea5ccdbcb98d7">ConstantInt</a> *op = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVFUtil::dyn_cast</a><<a class="code" href="namespaceSVF.html#adefcb50414ea999d70cea5ccdbcb98d7">ConstantInt</a>>(value);</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>  <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(op && <span class="stringliteral">"not a constant offset?"</span>);</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>  <span class="keywordflow">if</span>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#aa962cc1d782cc46553251e96b64a754b">PointerType</a>* pty = SVFUtil::dyn_cast<PointerType>(type))</div><div class="line"><a name="
|
|
355
|
+
<div class="fragment"><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>  {</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>  <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(<a class="code" href="classSVF_1_1LocationSet.html#a4a9185282308c50f86fdf66f7060373d">isConstantOffset</a>() && <span class="stringliteral">"not a constant offset"</span>);</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span> </div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>  <a class="code" href="namespaceSVF.html#abe09d99af006554a5c00803e9a89f9a6">s64_t</a> totalConstOffset = 0;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  <span class="keywordflow">for</span>(<span class="keywordtype">int</span> i = <a class="code" href="classSVF_1_1LocationSet.html#a5a2792b8b914557a9ccf0e57d0ed8b30">offsetValues</a>.size() - 1; i >= 0; i--){</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>* value = <a class="code" href="classSVF_1_1LocationSet.html#a5a2792b8b914557a9ccf0e57d0ed8b30">offsetValues</a>[i].first;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a1d008c0666c145622b81d427be64c52d">Type</a>* type = <a class="code" href="classSVF_1_1LocationSet.html#a5a2792b8b914557a9ccf0e57d0ed8b30">offsetValues</a>[i].second;</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#adefcb50414ea999d70cea5ccdbcb98d7">ConstantInt</a> *op = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVFUtil::dyn_cast</a><<a class="code" href="namespaceSVF.html#adefcb50414ea999d70cea5ccdbcb98d7">ConstantInt</a>>(value);</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>  <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(op && <span class="stringliteral">"not a constant offset?"</span>);</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>  <span class="keywordflow">if</span>(type==<span class="keyword">nullptr</span>){</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>  totalConstOffset += op->getSExtValue();</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>  <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>  }</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span> </div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>  <span class="keywordflow">if</span>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#aa962cc1d782cc46553251e96b64a754b">PointerType</a>* pty = SVFUtil::dyn_cast<PointerType>(type))</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>  totalConstOffset += op->getSExtValue() * <a class="code" href="classSVF_1_1LocationSet.html#ac66b56e1fa180be9b09d7bfe653ff311">getElementNum</a>(pty->getElementType());</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>  <span class="keywordflow">else</span>{</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>  <a class="code" href="namespaceSVF.html#abe09d99af006554a5c00803e9a89f9a6">s64_t</a> offset = op->getSExtValue();</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> flattenOffset = <a class="code" href="classSVF_1_1SymbolTableInfo.html#a267169023fc4f8dd66b145f7231fec11">SymbolTableInfo::SymbolInfo</a>()-><a class="code" href="classSVF_1_1SymbolTableInfo.html#a6fe89e9d6c18a6aff6dffc1c78d08dff">getFlattenedElemIdx</a>(type, offset); </div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>  totalConstOffset += flattenOffset;</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>  }</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>  }</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>  <span class="keywordflow">return</span> totalConstOffset;</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span> }</div><div class="ttc" id="classSVF_1_1LocationSet_html_a4a9185282308c50f86fdf66f7060373d"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a4a9185282308c50f86fdf66f7060373d">SVF::LocationSet::isConstantOffset</a></div><div class="ttdeci">bool isConstantOffset() const</div><div class="ttdoc">Return TRUE if this is a constant location set. </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8cpp_source.html#l00049">LocationSet.cpp:49</a></div></div>
|
|
390
356
|
<div class="ttc" id="namespaceSVF_html_a1d008c0666c145622b81d427be64c52d"><div class="ttname"><a href="namespaceSVF.html#a1d008c0666c145622b81d427be64c52d">SVF::Type</a></div><div class="ttdeci">llvm::Type Type</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00075">BasicTypes.h:75</a></div></div>
|
|
391
357
|
<div class="ttc" id="util_8h_html_a07d17d6d5d1074c0969bc5d3c3d1d84a"><div class="ttname"><a href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a></div><div class="ttdeci">#define assert(ex)</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00141">util.h:141</a></div></div>
|
|
392
358
|
<div class="ttc" id="namespaceSVF_html_aa962cc1d782cc46553251e96b64a754b"><div class="ttname"><a href="namespaceSVF.html#aa962cc1d782cc46553251e96b64a754b">SVF::PointerType</a></div><div class="ttdeci">llvm::PointerType PointerType</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00108">BasicTypes.h:108</a></div></div>
|
|
393
359
|
<div class="ttc" id="namespaceSVF_html_adefcb50414ea999d70cea5ccdbcb98d7"><div class="ttname"><a href="namespaceSVF.html#adefcb50414ea999d70cea5ccdbcb98d7">SVF::ConstantInt</a></div><div class="ttdeci">llvm::ConstantInt ConstantInt</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00128">BasicTypes.h:128</a></div></div>
|
|
394
360
|
<div class="ttc" id="namespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00075">SVFBasicTypes.h:75</a></div></div>
|
|
395
361
|
<div class="ttc" id="namespaceSVF_html_abe09d99af006554a5c00803e9a89f9a6"><div class="ttname"><a href="namespaceSVF.html#abe09d99af006554a5c00803e9a89f9a6">SVF::s64_t</a></div><div class="ttdeci">signed s64_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00078">SVFBasicTypes.h:78</a></div></div>
|
|
396
|
-
<div class="ttc" id="classSVF_1_1LocationSet_html_a5a2792b8b914557a9ccf0e57d0ed8b30"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a5a2792b8b914557a9ccf0e57d0ed8b30">SVF::LocationSet::offsetValues</a></div><div class="ttdeci">OffsetValueVec offsetValues</div><div class="ttdoc">a vector of actual offset in the form of Values </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#
|
|
397
|
-
<div class="ttc" id="classSVF_1_1SymbolTableInfo_html_a439024050e7b78021259ca5a2d68a83f"><div class="ttname"><a href="classSVF_1_1SymbolTableInfo.html#a439024050e7b78021259ca5a2d68a83f">SVF::SymbolTableInfo::getFlattenedElemIdxVec</a></div><div class="ttdeci">const std::vector< u32_t > & getFlattenedElemIdxVec(const Type *T)</div><div class="ttdoc">Flatterned element idx of an array or struct by considering stride. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00389">SymbolTableInfo.cpp:389</a></div></div>
|
|
362
|
+
<div class="ttc" id="classSVF_1_1LocationSet_html_a5a2792b8b914557a9ccf0e57d0ed8b30"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a5a2792b8b914557a9ccf0e57d0ed8b30">SVF::LocationSet::offsetValues</a></div><div class="ttdeci">OffsetValueVec offsetValues</div><div class="ttdoc">a vector of actual offset in the form of Values </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00157">LocationSet.h:157</a></div></div>
|
|
398
363
|
<div class="ttc" id="classSVF_1_1LocationSet_html_ac66b56e1fa180be9b09d7bfe653ff311"><div class="ttname"><a href="classSVF_1_1LocationSet.html#ac66b56e1fa180be9b09d7bfe653ff311">SVF::LocationSet::getElementNum</a></div><div class="ttdeci">u32_t getElementNum(const Type *type) const</div><div class="ttdoc">Return element number of a type. </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8cpp_source.html#l00062">LocationSet.cpp:62</a></div></div>
|
|
399
|
-
<div class="ttc" id="classSVF_1_1SymbolTableInfo_html_a267169023fc4f8dd66b145f7231fec11"><div class="ttname"><a href="classSVF_1_1SymbolTableInfo.html#a267169023fc4f8dd66b145f7231fec11">SVF::SymbolTableInfo::SymbolInfo</a></div><div class="ttdeci">static SymbolTableInfo * SymbolInfo()</div><div class="ttdoc">Singleton design here to make sure we only have one instance during any analysis. ...</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#
|
|
364
|
+
<div class="ttc" id="classSVF_1_1SymbolTableInfo_html_a267169023fc4f8dd66b145f7231fec11"><div class="ttname"><a href="classSVF_1_1SymbolTableInfo.html#a267169023fc4f8dd66b145f7231fec11">SVF::SymbolTableInfo::SymbolInfo</a></div><div class="ttdeci">static SymbolTableInfo * SymbolInfo()</div><div class="ttdoc">Singleton design here to make sure we only have one instance during any analysis. ...</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00115">SymbolTableInfo.cpp:115</a></div></div>
|
|
365
|
+
<div class="ttc" id="classSVF_1_1SymbolTableInfo_html_a6fe89e9d6c18a6aff6dffc1c78d08dff"><div class="ttname"><a href="classSVF_1_1SymbolTableInfo.html#a6fe89e9d6c18a6aff6dffc1c78d08dff">SVF::SymbolTableInfo::getFlattenedElemIdx</a></div><div class="ttdeci">u32_t getFlattenedElemIdx(const Type *T, s64_t origId)</div><div class="ttdoc">Flatterned element idx of an array or struct by considering stride. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00409">SymbolTableInfo.cpp:409</a></div></div>
|
|
400
366
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a8182be247907420db00837cef9bcfa70"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVF::SVFUtil::dyn_cast</a></div><div class="ttdeci">LLVM_NODISCARD std::enable_if<!is_simple_type< Y >::value, typename cast_retty< X, const Y >::ret_type >::type dyn_cast(const Y &Val)</div><div class="ttdef"><b>Definition:</b> <a href="Casting_8h_source.html#l00343">Casting.h:343</a></div></div>
|
|
401
367
|
<div class="ttc" id="namespaceSVF_html_a90b263fd2f541eca78135078114cabda"><div class="ttname"><a href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">SVF::Value</a></div><div class="ttdeci">llvm::Value Value</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00078">BasicTypes.h:78</a></div></div>
|
|
402
368
|
</div><!-- fragment -->
|
|
@@ -430,7 +396,7 @@ Friends</h2></td></tr>
|
|
|
430
396
|
<p>Add offset value to vector offsetValues </p>
|
|
431
397
|
|
|
432
398
|
<p class="definition">Definition at line <a class="el" href="LocationSet_8cpp_source.html#l00042">42</a> of file <a class="el" href="LocationSet_8cpp_source.html">LocationSet.cpp</a>.</p>
|
|
433
|
-
<div class="fragment"><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>  <a class="code" href="classSVF_1_1LocationSet.html#a5a2792b8b914557a9ccf0e57d0ed8b30">offsetValues</a>.push_back(std::make_pair(offsetVal,type));</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span> }</div><div class="ttc" id="classSVF_1_1LocationSet_html_a5a2792b8b914557a9ccf0e57d0ed8b30"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a5a2792b8b914557a9ccf0e57d0ed8b30">SVF::LocationSet::offsetValues</a></div><div class="ttdeci">OffsetValueVec offsetValues</div><div class="ttdoc">a vector of actual offset in the form of Values </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#
|
|
399
|
+
<div class="fragment"><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>  <a class="code" href="classSVF_1_1LocationSet.html#a5a2792b8b914557a9ccf0e57d0ed8b30">offsetValues</a>.push_back(std::make_pair(offsetVal,type));</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span> }</div><div class="ttc" id="classSVF_1_1LocationSet_html_a5a2792b8b914557a9ccf0e57d0ed8b30"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a5a2792b8b914557a9ccf0e57d0ed8b30">SVF::LocationSet::offsetValues</a></div><div class="ttdeci">OffsetValueVec offsetValues</div><div class="ttdoc">a vector of actual offset in the form of Values </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00157">LocationSet.h:157</a></div></div>
|
|
434
400
|
</div><!-- fragment -->
|
|
435
401
|
</div>
|
|
436
402
|
</div>
|
|
@@ -470,9 +436,9 @@ Friends</h2></td></tr>
|
|
|
470
436
|
|
|
471
437
|
<p>Check relations of two location sets. </p>
|
|
472
438
|
|
|
473
|
-
<p class="definition">Definition at line <a class="el" href="LocationSet_8cpp_source.html#
|
|
474
|
-
<div class="fragment"><div class="line"><a name="
|
|
475
|
-
<div class="ttc" id="classSVF_1_1LocationSet_html_afc0f702b6cce26861b409130fe5e019f"><div class="ttname"><a href="classSVF_1_1LocationSet.html#afc0f702b6cce26861b409130fe5e019f">SVF::LocationSet::computeAllLocations</a></div><div class="ttdeci">NodeBS computeAllLocations() const</div><div class="ttdoc">Compute all possible locations according to offset and number-stride pairs. </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8cpp_source.html#
|
|
439
|
+
<p class="definition">Definition at line <a class="el" href="LocationSet_8cpp_source.html#l00183">183</a> of file <a class="el" href="LocationSet_8cpp_source.html">LocationSet.cpp</a>.</p>
|
|
440
|
+
<div class="fragment"><div class="line"><a name="l00184"></a><span class="lineno"> 184</span> {</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>  <a class="code" href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">NodeBS</a> lhsLocations = LHS.<a class="code" href="classSVF_1_1LocationSet.html#afc0f702b6cce26861b409130fe5e019f">computeAllLocations</a>();</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>  <a class="code" href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">NodeBS</a> rhsLocations = RHS.<a class="code" href="classSVF_1_1LocationSet.html#afc0f702b6cce26861b409130fe5e019f">computeAllLocations</a>();</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>  <span class="keywordflow">if</span> (lhsLocations.intersects(rhsLocations))</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>  {</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>  <span class="keywordflow">if</span> (lhsLocations == rhsLocations)</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LocationSet.html#a002a0c8ec2528835d809bf7eb3ebc83fa9b2a5e3c7f7873ac4491ff231e0601d2">Same</a>;</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (lhsLocations.contains(rhsLocations))</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LocationSet.html#a002a0c8ec2528835d809bf7eb3ebc83fa2241035beb87cdd725d979371537d500">Superset</a>;</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (rhsLocations.contains(lhsLocations))</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LocationSet.html#a002a0c8ec2528835d809bf7eb3ebc83faf6a3c1bcfe2d3f79b227b649e89edd72">Subset</a>;</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LocationSet.html#a002a0c8ec2528835d809bf7eb3ebc83fa8c76affbe3b39db53e8046cd5d79903c">Overlap</a>;</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>  }</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>  {</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LocationSet.html#a002a0c8ec2528835d809bf7eb3ebc83fafb9c7d6d06f6f3ab60bd575aaca5d14d">NonOverlap</a>;</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>  }</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span> }</div><div class="ttc" id="classSVF_1_1LocationSet_html_a002a0c8ec2528835d809bf7eb3ebc83fa8c76affbe3b39db53e8046cd5d79903c"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a002a0c8ec2528835d809bf7eb3ebc83fa8c76affbe3b39db53e8046cd5d79903c">SVF::LocationSet::Overlap</a></div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00078">LocationSet.h:78</a></div></div>
|
|
441
|
+
<div class="ttc" id="classSVF_1_1LocationSet_html_afc0f702b6cce26861b409130fe5e019f"><div class="ttname"><a href="classSVF_1_1LocationSet.html#afc0f702b6cce26861b409130fe5e019f">SVF::LocationSet::computeAllLocations</a></div><div class="ttdeci">NodeBS computeAllLocations() const</div><div class="ttdoc">Compute all possible locations according to offset and number-stride pairs. </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8cpp_source.html#l00139">LocationSet.cpp:139</a></div></div>
|
|
476
442
|
<div class="ttc" id="classSVF_1_1LocationSet_html_a002a0c8ec2528835d809bf7eb3ebc83faf6a3c1bcfe2d3f79b227b649e89edd72"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a002a0c8ec2528835d809bf7eb3ebc83faf6a3c1bcfe2d3f79b227b649e89edd72">SVF::LocationSet::Subset</a></div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00078">LocationSet.h:78</a></div></div>
|
|
477
443
|
<div class="ttc" id="classSVF_1_1LocationSet_html_a002a0c8ec2528835d809bf7eb3ebc83fa2241035beb87cdd725d979371537d500"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a002a0c8ec2528835d809bf7eb3ebc83fa2241035beb87cdd725d979371537d500">SVF::LocationSet::Superset</a></div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00078">LocationSet.h:78</a></div></div>
|
|
478
444
|
<div class="ttc" id="classSVF_1_1LocationSet_html_a002a0c8ec2528835d809bf7eb3ebc83fa9b2a5e3c7f7873ac4491ff231e0601d2"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a002a0c8ec2528835d809bf7eb3ebc83fa9b2a5e3c7f7873ac4491ff231e0601d2">SVF::LocationSet::Same</a></div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00078">LocationSet.h:78</a></div></div>
|
|
@@ -507,8 +473,8 @@ Friends</h2></td></tr>
|
|
|
507
473
|
<p>Compute all possible locations according to offset and number-stride pairs. </p>
|
|
508
474
|
<p>Compute all possible locations according to offset and number-stride pairs. </p>
|
|
509
475
|
|
|
510
|
-
<p class="definition">Definition at line <a class="el" href="LocationSet_8cpp_source.html#
|
|
511
|
-
<div class="fragment"><div class="line"><a name="
|
|
476
|
+
<p class="definition">Definition at line <a class="el" href="LocationSet_8cpp_source.html#l00139">139</a> of file <a class="el" href="LocationSet_8cpp_source.html">LocationSet.cpp</a>.</p>
|
|
477
|
+
<div class="fragment"><div class="line"><a name="l00140"></a><span class="lineno"> 140</span> {</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>  <a class="code" href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">NodeBS</a> <a class="code" href="cuddInt_8c.html#a8b2e13c78efca330f06b6ddcd7464b41">result</a>;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>  result.set(<a class="code" href="classSVF_1_1LocationSet.html#ab987c41ffdae931d941f89d03ed09146">accumulateConstantFieldIdx</a>());</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>  <span class="keywordflow">return</span> <a class="code" href="cuddInt_8c.html#a8b2e13c78efca330f06b6ddcd7464b41">result</a>;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span> }</div><div class="ttc" id="classSVF_1_1LocationSet_html_ab987c41ffdae931d941f89d03ed09146"><div class="ttname"><a href="classSVF_1_1LocationSet.html#ab987c41ffdae931d941f89d03ed09146">SVF::LocationSet::accumulateConstantFieldIdx</a></div><div class="ttdeci">s64_t accumulateConstantFieldIdx() const</div><div class="ttdoc">Get methods. </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00114">LocationSet.h:114</a></div></div>
|
|
512
478
|
<div class="ttc" id="cuddInt_8c_html_a8b2e13c78efca330f06b6ddcd7464b41"><div class="ttname"><a href="cuddInt_8c.html#a8b2e13c78efca330f06b6ddcd7464b41">result</a></div><div class="ttdeci">static int result</div><div class="ttdef"><b>Definition:</b> <a href="cuddInt_8c_source.html#l07466">cuddInt.c:7466</a></div></div>
|
|
513
479
|
<div class="ttc" id="namespaceSVF_html_a740396763e377643790c8b803ab3e4ea"><div class="ttname"><a href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">SVF::NodeBS</a></div><div class="ttdeci">llvm::SparseBitVector NodeBS</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00086">SVFBasicTypes.h:86</a></div></div>
|
|
514
480
|
</div><!-- fragment -->
|
|
@@ -531,12 +497,12 @@ Friends</h2></td></tr>
|
|
|
531
497
|
|
|
532
498
|
<p>Dump location set. </p>
|
|
533
499
|
|
|
534
|
-
<p class="definition">Definition at line <a class="el" href="LocationSet_8cpp_source.html#
|
|
535
|
-
<div class="fragment"><div class="line"><a name="
|
|
500
|
+
<p class="definition">Definition at line <a class="el" href="LocationSet_8cpp_source.html#l00205">205</a> of file <a class="el" href="LocationSet_8cpp_source.html">LocationSet.cpp</a>.</p>
|
|
501
|
+
<div class="fragment"><div class="line"><a name="l00206"></a><span class="lineno"> 206</span> {</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>  std::string str;</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>  <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span> </div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>  rawstr << <span class="stringliteral">"LocationSet\tField_Index: "</span> << <a class="code" href="classSVF_1_1LocationSet.html#ab987c41ffdae931d941f89d03ed09146">accumulateConstantFieldIdx</a>();</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>  rawstr << <span class="stringliteral">",\tNum-Stride: {"</span>;</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1LocationSet.html#a9bb7e08f7cfb2859d25b0e68e21fec89">OffsetValueVec</a>& vec = <a class="code" href="classSVF_1_1LocationSet.html#a5a5ca0b81da0b34ab426bc6a28ed346c">getOffsetValueVec</a>();</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>  OffsetValueVec::const_iterator it = vec.begin();</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>  OffsetValueVec::const_iterator eit = vec.end();</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>  <span class="keywordflow">for</span> (; it != eit; ++it)</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>  {</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>  rawstr << <span class="stringliteral">" (value: "</span> << <a class="code" href="namespaceSVF_1_1SVFUtil.html#a7486fd8e5350879ed1cbd835c0d4e191">value2String</a>(it->first) << <span class="stringliteral">" type: "</span> << it->second << <span class="stringliteral">")"</span>;</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>  }</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>  rawstr << <span class="stringliteral">" }\n"</span>;</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>  <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span> }</div><div class="ttc" id="classSVF_1_1LocationSet_html_ab987c41ffdae931d941f89d03ed09146"><div class="ttname"><a href="classSVF_1_1LocationSet.html#ab987c41ffdae931d941f89d03ed09146">SVF::LocationSet::accumulateConstantFieldIdx</a></div><div class="ttdeci">s64_t accumulateConstantFieldIdx() const</div><div class="ttdoc">Get methods. </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00114">LocationSet.h:114</a></div></div>
|
|
536
502
|
<div class="ttc" id="classSVF_1_1LocationSet_html_a9bb7e08f7cfb2859d25b0e68e21fec89"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a9bb7e08f7cfb2859d25b0e68e21fec89">SVF::LocationSet::OffsetValueVec</a></div><div class="ttdeci">std::vector< std::pair< const Value *, const Type * > > OffsetValueVec</div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00081">LocationSet.h:81</a></div></div>
|
|
537
503
|
<div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00100">BasicTypes.h:100</a></div></div>
|
|
538
504
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a7486fd8e5350879ed1cbd835c0d4e191"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a7486fd8e5350879ed1cbd835c0d4e191">SVF::SVFUtil::value2String</a></div><div class="ttdeci">const std::string value2String(const Value *value)</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00390">SVFUtil.cpp:390</a></div></div>
|
|
539
|
-
<div class="ttc" id="classSVF_1_1LocationSet_html_a5a5ca0b81da0b34ab426bc6a28ed346c"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a5a5ca0b81da0b34ab426bc6a28ed346c">SVF::LocationSet::getOffsetValueVec</a></div><div class="ttdeci">const OffsetValueVec & getOffsetValueVec() const</div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#
|
|
505
|
+
<div class="ttc" id="classSVF_1_1LocationSet_html_a5a5ca0b81da0b34ab426bc6a28ed346c"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a5a5ca0b81da0b34ab426bc6a28ed346c">SVF::LocationSet::getOffsetValueVec</a></div><div class="ttdeci">const OffsetValueVec & getOffsetValueVec() const</div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00122">LocationSet.h:122</a></div></div>
|
|
540
506
|
</div><!-- fragment -->
|
|
541
507
|
</div>
|
|
542
508
|
</div>
|
|
@@ -561,13 +527,13 @@ Friends</h2></td></tr>
|
|
|
561
527
|
<p>This is a pointer arithmic </p>
|
|
562
528
|
|
|
563
529
|
<p class="definition">Definition at line <a class="el" href="LocationSet_8cpp_source.html#l00062">62</a> of file <a class="el" href="LocationSet_8cpp_source.html">LocationSet.cpp</a>.</p>
|
|
564
|
-
<div class="fragment"><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>  {</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span> </div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>  <span class="keywordflow">if</span>(SVFUtil::isa<ArrayType>(type) || SVFUtil::isa<StructType>(type))</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>  {</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1SymbolTableInfo.html#a267169023fc4f8dd66b145f7231fec11">SymbolTableInfo::SymbolInfo</a>()-><a class="code" href="classSVF_1_1SymbolTableInfo.html#
|
|
530
|
+
<div class="fragment"><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>  {</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span> </div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>  <span class="keywordflow">if</span>(SVFUtil::isa<ArrayType>(type) || SVFUtil::isa<StructType>(type))</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>  {</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1SymbolTableInfo.html#a267169023fc4f8dd66b145f7231fec11">SymbolTableInfo::SymbolInfo</a>()-><a class="code" href="classSVF_1_1SymbolTableInfo.html#aec579894eed558ea89740b68360187aa">getNumOfFlattenElements</a>(type);</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  }</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (type->isSingleValueType())</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>  {</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>  <span class="keywordflow">if</span>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#aa962cc1d782cc46553251e96b64a754b">PointerType</a>* pty = SVFUtil::dyn_cast<PointerType>(type))</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LocationSet.html#ac66b56e1fa180be9b09d7bfe653ff311">getElementNum</a>(pty->getElementType());</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  <span class="keywordflow">return</span> 1;</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>  <span class="keywordflow">else</span>{</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>  <a class="code" href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">SVFUtil::outs</a>() << <span class="stringliteral">"GepIter Type"</span> << *type << <span class="stringliteral">"\n"</span>;</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(<span class="keyword">false</span> && <span class="stringliteral">"What other types for this gep?"</span>);</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  <a class="code" href="util_8h.html#a23c00958edf66c39625a0d535dee57b7">abort</a>();</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  }</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span> }</div><div class="ttc" id="util_8h_html_a07d17d6d5d1074c0969bc5d3c3d1d84a"><div class="ttname"><a href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a></div><div class="ttdeci">#define assert(ex)</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00141">util.h:141</a></div></div>
|
|
565
531
|
<div class="ttc" id="namespaceSVF_html_aa962cc1d782cc46553251e96b64a754b"><div class="ttname"><a href="namespaceSVF.html#aa962cc1d782cc46553251e96b64a754b">SVF::PointerType</a></div><div class="ttdeci">llvm::PointerType PointerType</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00108">BasicTypes.h:108</a></div></div>
|
|
566
532
|
<div class="ttc" id="classSVF_1_1LocationSet_html_ac66b56e1fa180be9b09d7bfe653ff311"><div class="ttname"><a href="classSVF_1_1LocationSet.html#ac66b56e1fa180be9b09d7bfe653ff311">SVF::LocationSet::getElementNum</a></div><div class="ttdeci">u32_t getElementNum(const Type *type) const</div><div class="ttdoc">Return element number of a type. </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8cpp_source.html#l00062">LocationSet.cpp:62</a></div></div>
|
|
567
|
-
<div class="ttc" id="classSVF_1_1SymbolTableInfo_html_a267169023fc4f8dd66b145f7231fec11"><div class="ttname"><a href="classSVF_1_1SymbolTableInfo.html#a267169023fc4f8dd66b145f7231fec11">SVF::SymbolTableInfo::SymbolInfo</a></div><div class="ttdeci">static SymbolTableInfo * SymbolInfo()</div><div class="ttdoc">Singleton design here to make sure we only have one instance during any analysis. ...</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#
|
|
533
|
+
<div class="ttc" id="classSVF_1_1SymbolTableInfo_html_a267169023fc4f8dd66b145f7231fec11"><div class="ttname"><a href="classSVF_1_1SymbolTableInfo.html#a267169023fc4f8dd66b145f7231fec11">SVF::SymbolTableInfo::SymbolInfo</a></div><div class="ttdeci">static SymbolTableInfo * SymbolInfo()</div><div class="ttdoc">Singleton design here to make sure we only have one instance during any analysis. ...</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00115">SymbolTableInfo.cpp:115</a></div></div>
|
|
568
534
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a85ab6b592fefc45a0674d3295e01638f"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">SVF::SVFUtil::outs</a></div><div class="ttdeci">raw_ostream & outs()</div><div class="ttdoc">Overwrite llvm::outs() </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00049">SVFUtil.h:49</a></div></div>
|
|
569
535
|
<div class="ttc" id="util_8h_html_a23c00958edf66c39625a0d535dee57b7"><div class="ttname"><a href="util_8h.html#a23c00958edf66c39625a0d535dee57b7">abort</a></div><div class="ttdeci">VOID_OR_INT abort()</div></div>
|
|
570
|
-
<div class="ttc" id="
|
|
536
|
+
<div class="ttc" id="classSVF_1_1SymbolTableInfo_html_aec579894eed558ea89740b68360187aa"><div class="ttname"><a href="classSVF_1_1SymbolTableInfo.html#aec579894eed558ea89740b68360187aa">SVF::SymbolTableInfo::getNumOfFlattenElements</a></div><div class="ttdeci">u32_t getNumOfFlattenElements(const Type *T)</div><div class="ttdoc">Number of flattenned elements of an array or struct. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00400">SymbolTableInfo.cpp:400</a></div></div>
|
|
571
537
|
</div><!-- fragment -->
|
|
572
538
|
</div>
|
|
573
539
|
</div>
|
|
@@ -594,8 +560,8 @@ Friends</h2></td></tr>
|
|
|
594
560
|
</table>
|
|
595
561
|
</div><div class="memdoc">
|
|
596
562
|
|
|
597
|
-
<p class="definition">Definition at line <a class="el" href="LocationSet_8h_source.html#
|
|
598
|
-
<div class="fragment"><div class="line"><a name="
|
|
563
|
+
<p class="definition">Definition at line <a class="el" href="LocationSet_8h_source.html#l00122">122</a> of file <a class="el" href="LocationSet_8h_source.html">LocationSet.h</a>.</p>
|
|
564
|
+
<div class="fragment"><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>  {</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LocationSet.html#a5a2792b8b914557a9ccf0e57d0ed8b30">offsetValues</a>;</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>  }</div><div class="ttc" id="classSVF_1_1LocationSet_html_a5a2792b8b914557a9ccf0e57d0ed8b30"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a5a2792b8b914557a9ccf0e57d0ed8b30">SVF::LocationSet::offsetValues</a></div><div class="ttdeci">OffsetValueVec offsetValues</div><div class="ttdoc">a vector of actual offset in the form of Values </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00157">LocationSet.h:157</a></div></div>
|
|
599
565
|
</div><!-- fragment -->
|
|
600
566
|
</div>
|
|
601
567
|
</div>
|
|
@@ -625,8 +591,8 @@ Friends</h2></td></tr>
|
|
|
625
591
|
|
|
626
592
|
<p>Return TRUE if we share any location in common with RHS. </p>
|
|
627
593
|
|
|
628
|
-
<p class="definition">Definition at line <a class="el" href="LocationSet_8h_source.html#
|
|
629
|
-
<div class="fragment"><div class="line"><a name="
|
|
594
|
+
<p class="definition">Definition at line <a class="el" href="LocationSet_8h_source.html#l00140">140</a> of file <a class="el" href="LocationSet_8h_source.html">LocationSet.h</a>.</p>
|
|
595
|
+
<div class="fragment"><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>  {</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LocationSet.html#afc0f702b6cce26861b409130fe5e019f">computeAllLocations</a>().intersects(RHS.computeAllLocations());</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>  }</div><div class="ttc" id="classSVF_1_1LocationSet_html_afc0f702b6cce26861b409130fe5e019f"><div class="ttname"><a href="classSVF_1_1LocationSet.html#afc0f702b6cce26861b409130fe5e019f">SVF::LocationSet::computeAllLocations</a></div><div class="ttdeci">NodeBS computeAllLocations() const</div><div class="ttdoc">Compute all possible locations according to offset and number-stride pairs. </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8cpp_source.html#l00139">LocationSet.cpp:139</a></div></div>
|
|
630
596
|
</div><!-- fragment -->
|
|
631
597
|
</div>
|
|
632
598
|
</div>
|
|
@@ -649,7 +615,7 @@ Friends</h2></td></tr>
|
|
|
649
615
|
<p>Return true if all offset values are constants. </p>
|
|
650
616
|
|
|
651
617
|
<p class="definition">Definition at line <a class="el" href="LocationSet_8cpp_source.html#l00049">49</a> of file <a class="el" href="LocationSet_8cpp_source.html">LocationSet.cpp</a>.</p>
|
|
652
|
-
<div class="fragment"><div class="line"><a name="l00050"></a><span class="lineno"> 50</span> {</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>  <span class="keywordflow">for</span>(<span class="keyword">auto</span> it : <a class="code" href="classSVF_1_1LocationSet.html#a5a2792b8b914557a9ccf0e57d0ed8b30">offsetValues</a>){</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>  <span class="keywordflow">if</span>(SVFUtil::isa<ConstantInt>(it.first) == <span class="keyword">false</span>)</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>  }</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span> }</div><div class="ttc" id="classSVF_1_1LocationSet_html_a5a2792b8b914557a9ccf0e57d0ed8b30"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a5a2792b8b914557a9ccf0e57d0ed8b30">SVF::LocationSet::offsetValues</a></div><div class="ttdeci">OffsetValueVec offsetValues</div><div class="ttdoc">a vector of actual offset in the form of Values </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#
|
|
618
|
+
<div class="fragment"><div class="line"><a name="l00050"></a><span class="lineno"> 50</span> {</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>  <span class="keywordflow">for</span>(<span class="keyword">auto</span> it : <a class="code" href="classSVF_1_1LocationSet.html#a5a2792b8b914557a9ccf0e57d0ed8b30">offsetValues</a>){</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>  <span class="keywordflow">if</span>(SVFUtil::isa<ConstantInt>(it.first) == <span class="keyword">false</span>)</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>  }</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span> }</div><div class="ttc" id="classSVF_1_1LocationSet_html_a5a2792b8b914557a9ccf0e57d0ed8b30"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a5a2792b8b914557a9ccf0e57d0ed8b30">SVF::LocationSet::offsetValues</a></div><div class="ttdeci">OffsetValueVec offsetValues</div><div class="ttdoc">a vector of actual offset in the form of Values </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00157">LocationSet.h:157</a></div></div>
|
|
653
619
|
</div><!-- fragment -->
|
|
654
620
|
</div>
|
|
655
621
|
</div>
|
|
@@ -671,10 +637,10 @@ Friends</h2></td></tr>
|
|
|
671
637
|
|
|
672
638
|
<p>Overload operators. </p>
|
|
673
639
|
|
|
674
|
-
<p class="definition">Definition at line <a class="el" href="LocationSet_8cpp_source.html#
|
|
675
|
-
<div class="fragment"><div class="line"><a name="
|
|
640
|
+
<p class="definition">Definition at line <a class="el" href="LocationSet_8cpp_source.html#l00146">146</a> of file <a class="el" href="LocationSet_8cpp_source.html">LocationSet.cpp</a>.</p>
|
|
641
|
+
<div class="fragment"><div class="line"><a name="l00147"></a><span class="lineno"> 147</span> {</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>  <a class="code" href="classSVF_1_1LocationSet.html">LocationSet</a> ls(rhs);</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>  ls.fldIdx += <a class="code" href="classSVF_1_1LocationSet.html#ab987c41ffdae931d941f89d03ed09146">accumulateConstantFieldIdx</a>();</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>  OffsetValueVec::const_iterator it = <a class="code" href="classSVF_1_1LocationSet.html#a5a5ca0b81da0b34ab426bc6a28ed346c">getOffsetValueVec</a>().begin();</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>  OffsetValueVec::const_iterator eit = <a class="code" href="classSVF_1_1LocationSet.html#a5a5ca0b81da0b34ab426bc6a28ed346c">getOffsetValueVec</a>().end();</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>  <span class="keywordflow">for</span> (; it != eit; ++it)</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>  ls.addOffsetValue(it->first, it->second);</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span> </div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>  <span class="keywordflow">return</span> ls;</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span> }</div><div class="ttc" id="classSVF_1_1LocationSet_html_ab987c41ffdae931d941f89d03ed09146"><div class="ttname"><a href="classSVF_1_1LocationSet.html#ab987c41ffdae931d941f89d03ed09146">SVF::LocationSet::accumulateConstantFieldIdx</a></div><div class="ttdeci">s64_t accumulateConstantFieldIdx() const</div><div class="ttdoc">Get methods. </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00114">LocationSet.h:114</a></div></div>
|
|
676
642
|
<div class="ttc" id="classSVF_1_1LocationSet_html"><div class="ttname"><a href="classSVF_1_1LocationSet.html">SVF::LocationSet</a></div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00072">LocationSet.h:72</a></div></div>
|
|
677
|
-
<div class="ttc" id="classSVF_1_1LocationSet_html_a5a5ca0b81da0b34ab426bc6a28ed346c"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a5a5ca0b81da0b34ab426bc6a28ed346c">SVF::LocationSet::getOffsetValueVec</a></div><div class="ttdeci">const OffsetValueVec & getOffsetValueVec() const</div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#
|
|
643
|
+
<div class="ttc" id="classSVF_1_1LocationSet_html_a5a5ca0b81da0b34ab426bc6a28ed346c"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a5a5ca0b81da0b34ab426bc6a28ed346c">SVF::LocationSet::getOffsetValueVec</a></div><div class="ttdeci">const OffsetValueVec & getOffsetValueVec() const</div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00122">LocationSet.h:122</a></div></div>
|
|
678
644
|
</div><!-- fragment -->
|
|
679
645
|
</div>
|
|
680
646
|
</div>
|
|
@@ -694,10 +660,10 @@ Friends</h2></td></tr>
|
|
|
694
660
|
</table>
|
|
695
661
|
</div><div class="memdoc">
|
|
696
662
|
|
|
697
|
-
<p class="definition">Definition at line <a class="el" href="LocationSet_8cpp_source.html#
|
|
698
|
-
<div class="fragment"><div class="line"><a name="
|
|
699
|
-
<div class="ttc" id="classSVF_1_1LocationSet_html_a1937e1b9513135cb46c7f3f02fbe7d03"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a1937e1b9513135cb46c7f3f02fbe7d03">SVF::LocationSet::fldIdx</a></div><div class="ttdeci">s64_t fldIdx</div><div class="ttdoc">Accumulated Constant Offsets. </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#
|
|
700
|
-
<div class="ttc" id="classSVF_1_1LocationSet_html_a5a5ca0b81da0b34ab426bc6a28ed346c"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a5a5ca0b81da0b34ab426bc6a28ed346c">SVF::LocationSet::getOffsetValueVec</a></div><div class="ttdeci">const OffsetValueVec & getOffsetValueVec() const</div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#
|
|
663
|
+
<p class="definition">Definition at line <a class="el" href="LocationSet_8cpp_source.html#l00159">159</a> of file <a class="el" href="LocationSet_8cpp_source.html">LocationSet.cpp</a>.</p>
|
|
664
|
+
<div class="fragment"><div class="line"><a name="l00160"></a><span class="lineno"> 160</span> {</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1LocationSet.html#a1937e1b9513135cb46c7f3f02fbe7d03">fldIdx</a> != rhs.<a class="code" href="classSVF_1_1LocationSet.html#a1937e1b9513135cb46c7f3f02fbe7d03">fldIdx</a>)</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>  <span class="keywordflow">return</span> (<a class="code" href="classSVF_1_1LocationSet.html#a1937e1b9513135cb46c7f3f02fbe7d03">fldIdx</a> < rhs.<a class="code" href="classSVF_1_1LocationSet.html#a1937e1b9513135cb46c7f3f02fbe7d03">fldIdx</a>);</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>  {</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1LocationSet.html#a9bb7e08f7cfb2859d25b0e68e21fec89">OffsetValueVec</a>& pairVec = <a class="code" href="classSVF_1_1LocationSet.html#a5a5ca0b81da0b34ab426bc6a28ed346c">getOffsetValueVec</a>();</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1LocationSet.html#a9bb7e08f7cfb2859d25b0e68e21fec89">OffsetValueVec</a>& rhsPairVec = rhs.<a class="code" href="classSVF_1_1LocationSet.html#a5a5ca0b81da0b34ab426bc6a28ed346c">getOffsetValueVec</a>();</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>  <span class="keywordflow">if</span> (pairVec.size() != rhsPairVec.size())</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>  <span class="keywordflow">return</span> (pairVec.size() < rhsPairVec.size());</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>  {</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>  OffsetValueVec::const_iterator it = pairVec.begin();</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>  OffsetValueVec::const_iterator rhsIt = rhsPairVec.begin();</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>  <span class="keywordflow">for</span> (; it != pairVec.end() && rhsIt != rhsPairVec.end(); ++it, ++rhsIt)</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>  {</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>  <span class="keywordflow">return</span> (*it) < (*rhsIt);</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>  }</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span> </div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>  }</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>  }</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span> }</div><div class="ttc" id="classSVF_1_1LocationSet_html_a9bb7e08f7cfb2859d25b0e68e21fec89"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a9bb7e08f7cfb2859d25b0e68e21fec89">SVF::LocationSet::OffsetValueVec</a></div><div class="ttdeci">std::vector< std::pair< const Value *, const Type * > > OffsetValueVec</div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00081">LocationSet.h:81</a></div></div>
|
|
665
|
+
<div class="ttc" id="classSVF_1_1LocationSet_html_a1937e1b9513135cb46c7f3f02fbe7d03"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a1937e1b9513135cb46c7f3f02fbe7d03">SVF::LocationSet::fldIdx</a></div><div class="ttdeci">s64_t fldIdx</div><div class="ttdoc">Accumulated Constant Offsets. </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00156">LocationSet.h:156</a></div></div>
|
|
666
|
+
<div class="ttc" id="classSVF_1_1LocationSet_html_a5a5ca0b81da0b34ab426bc6a28ed346c"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a5a5ca0b81da0b34ab426bc6a28ed346c">SVF::LocationSet::getOffsetValueVec</a></div><div class="ttdeci">const OffsetValueVec & getOffsetValueVec() const</div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00122">LocationSet.h:122</a></div></div>
|
|
701
667
|
</div><!-- fragment -->
|
|
702
668
|
</div>
|
|
703
669
|
</div>
|
|
@@ -725,9 +691,9 @@ Friends</h2></td></tr>
|
|
|
725
691
|
</table>
|
|
726
692
|
</div><div class="memdoc">
|
|
727
693
|
|
|
728
|
-
<p class="definition">Definition at line <a class="el" href="LocationSet_8h_source.html#
|
|
729
|
-
<div class="fragment"><div class="line"><a name="
|
|
730
|
-
<div class="ttc" id="classSVF_1_1LocationSet_html_a1937e1b9513135cb46c7f3f02fbe7d03"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a1937e1b9513135cb46c7f3f02fbe7d03">SVF::LocationSet::fldIdx</a></div><div class="ttdeci">s64_t fldIdx</div><div class="ttdoc">Accumulated Constant Offsets. </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#
|
|
694
|
+
<p class="definition">Definition at line <a class="el" href="LocationSet_8h_source.html#l00099">99</a> of file <a class="el" href="LocationSet_8h_source.html">LocationSet.h</a>.</p>
|
|
695
|
+
<div class="fragment"><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>  {</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>  <a class="code" href="classSVF_1_1LocationSet.html#a1937e1b9513135cb46c7f3f02fbe7d03">fldIdx</a> = rhs.fldIdx;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  <a class="code" href="classSVF_1_1LocationSet.html#a5a2792b8b914557a9ccf0e57d0ed8b30">offsetValues</a> = rhs.getOffsetValueVec();</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  }</div><div class="ttc" id="classSVF_1_1LocationSet_html_a5a2792b8b914557a9ccf0e57d0ed8b30"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a5a2792b8b914557a9ccf0e57d0ed8b30">SVF::LocationSet::offsetValues</a></div><div class="ttdeci">OffsetValueVec offsetValues</div><div class="ttdoc">a vector of actual offset in the form of Values </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00157">LocationSet.h:157</a></div></div>
|
|
696
|
+
<div class="ttc" id="classSVF_1_1LocationSet_html_a1937e1b9513135cb46c7f3f02fbe7d03"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a1937e1b9513135cb46c7f3f02fbe7d03">SVF::LocationSet::fldIdx</a></div><div class="ttdeci">s64_t fldIdx</div><div class="ttdoc">Accumulated Constant Offsets. </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00156">LocationSet.h:156</a></div></div>
|
|
731
697
|
</div><!-- fragment -->
|
|
732
698
|
</div>
|
|
733
699
|
</div>
|
|
@@ -755,9 +721,9 @@ Friends</h2></td></tr>
|
|
|
755
721
|
</table>
|
|
756
722
|
</div><div class="memdoc">
|
|
757
723
|
|
|
758
|
-
<p class="definition">Definition at line <a class="el" href="LocationSet_8h_source.html#
|
|
759
|
-
<div class="fragment"><div class="line"><a name="
|
|
760
|
-
<div class="ttc" id="classSVF_1_1LocationSet_html_a1937e1b9513135cb46c7f3f02fbe7d03"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a1937e1b9513135cb46c7f3f02fbe7d03">SVF::LocationSet::fldIdx</a></div><div class="ttdeci">s64_t fldIdx</div><div class="ttdoc">Accumulated Constant Offsets. </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#
|
|
724
|
+
<p class="definition">Definition at line <a class="el" href="LocationSet_8h_source.html#l00105">105</a> of file <a class="el" href="LocationSet_8h_source.html">LocationSet.h</a>.</p>
|
|
725
|
+
<div class="fragment"><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>  {</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>  <span class="keywordflow">return</span> this-><a class="code" href="classSVF_1_1LocationSet.html#a1937e1b9513135cb46c7f3f02fbe7d03">fldIdx</a> == rhs.fldIdx</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>  && this-><a class="code" href="classSVF_1_1LocationSet.html#a5a2792b8b914557a9ccf0e57d0ed8b30">offsetValues</a> == rhs.offsetValues;</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  }</div><div class="ttc" id="classSVF_1_1LocationSet_html_a5a2792b8b914557a9ccf0e57d0ed8b30"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a5a2792b8b914557a9ccf0e57d0ed8b30">SVF::LocationSet::offsetValues</a></div><div class="ttdeci">OffsetValueVec offsetValues</div><div class="ttdoc">a vector of actual offset in the form of Values </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00157">LocationSet.h:157</a></div></div>
|
|
726
|
+
<div class="ttc" id="classSVF_1_1LocationSet_html_a1937e1b9513135cb46c7f3f02fbe7d03"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a1937e1b9513135cb46c7f3f02fbe7d03">SVF::LocationSet::fldIdx</a></div><div class="ttdeci">s64_t fldIdx</div><div class="ttdoc">Accumulated Constant Offsets. </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00156">LocationSet.h:156</a></div></div>
|
|
761
727
|
</div><!-- fragment -->
|
|
762
728
|
</div>
|
|
763
729
|
</div>
|
|
@@ -785,8 +751,8 @@ Friends</h2></td></tr>
|
|
|
785
751
|
</table>
|
|
786
752
|
</div><div class="memdoc">
|
|
787
753
|
|
|
788
|
-
<p class="definition">Definition at line <a class="el" href="LocationSet_8h_source.html#
|
|
789
|
-
<div class="fragment"><div class="line"><a name="
|
|
754
|
+
<p class="definition">Definition at line <a class="el" href="LocationSet_8h_source.html#l00118">118</a> of file <a class="el" href="LocationSet_8h_source.html">LocationSet.h</a>.</p>
|
|
755
|
+
<div class="fragment"><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>  {</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>  <a class="code" href="classSVF_1_1LocationSet.html#a1937e1b9513135cb46c7f3f02fbe7d03">fldIdx</a> = idx;</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>  }</div><div class="ttc" id="classSVF_1_1LocationSet_html_a1937e1b9513135cb46c7f3f02fbe7d03"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a1937e1b9513135cb46c7f3f02fbe7d03">SVF::LocationSet::fldIdx</a></div><div class="ttdeci">s64_t fldIdx</div><div class="ttdoc">Accumulated Constant Offsets. </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00156">LocationSet.h:156</a></div></div>
|
|
790
756
|
</div><!-- fragment -->
|
|
791
757
|
</div>
|
|
792
758
|
</div>
|
|
@@ -838,7 +804,7 @@ Friends</h2></td></tr>
|
|
|
838
804
|
|
|
839
805
|
<p>Accumulated Constant Offsets. </p>
|
|
840
806
|
|
|
841
|
-
<p class="definition">Definition at line <a class="el" href="LocationSet_8h_source.html#
|
|
807
|
+
<p class="definition">Definition at line <a class="el" href="LocationSet_8h_source.html#l00156">156</a> of file <a class="el" href="LocationSet_8h_source.html">LocationSet.h</a>.</p>
|
|
842
808
|
|
|
843
809
|
</div>
|
|
844
810
|
</div>
|
|
@@ -864,7 +830,7 @@ Friends</h2></td></tr>
|
|
|
864
830
|
|
|
865
831
|
<p>a vector of actual offset in the form of Values </p>
|
|
866
832
|
|
|
867
|
-
<p class="definition">Definition at line <a class="el" href="LocationSet_8h_source.html#
|
|
833
|
+
<p class="definition">Definition at line <a class="el" href="LocationSet_8h_source.html#l00157">157</a> of file <a class="el" href="LocationSet_8h_source.html">LocationSet.h</a>.</p>
|
|
868
834
|
|
|
869
835
|
</div>
|
|
870
836
|
</div>
|