svf-tools 1.0.794 → 1.0.796
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/SVF-doxygen/html/AccessPath_8cpp_source.html +167 -161
- package/SVF-doxygen/html/AccessPath_8h_source.html +51 -51
- package/SVF-doxygen/html/AndersenSCD_8cpp_source.html +1 -1
- package/SVF-doxygen/html/AndersenStat_8cpp_source.html +1 -1
- package/SVF-doxygen/html/AndersenWaveDiff_8cpp_source.html +1 -1
- package/SVF-doxygen/html/Andersen_8cpp_source.html +6 -6
- package/SVF-doxygen/html/CDG_8h_source.html +27 -28
- package/SVF-doxygen/html/CFBasicBlockGBuilder_8cpp_source.html +3 -3
- package/SVF-doxygen/html/CFBasicBlockGBuilder_8h_source.html +1 -1
- package/SVF-doxygen/html/CFBasicBlockG_8h_source.html +308 -310
- package/SVF-doxygen/html/CFLAlias_8cpp_source.html +5 -5
- package/SVF-doxygen/html/CFLAlias_8h_source.html +3 -3
- package/SVF-doxygen/html/CFLBase_8cpp_source.html +1 -1
- package/SVF-doxygen/html/CHGBuilder_8cpp_source.html +4 -4
- package/SVF-doxygen/html/ConsG_8cpp_source.html +1 -1
- package/SVF-doxygen/html/ContextDDA_8cpp_source.html +5 -5
- package/SVF-doxygen/html/ContextDDA_8h_source.html +2 -2
- package/SVF-doxygen/html/CxtStmt_8h_source.html +1 -1
- package/SVF-doxygen/html/DDAClient_8cpp_source.html +5 -5
- package/SVF-doxygen/html/DDAPass_8cpp_source.html +2 -2
- package/SVF-doxygen/html/DDAPass_8h_source.html +1 -1
- package/SVF-doxygen/html/DDAStat_8cpp_source.html +1 -1
- package/SVF-doxygen/html/DDAVFSolver_8h_source.html +4 -4
- package/SVF-doxygen/html/FSMPTA_8cpp_source.html +3 -3
- package/SVF-doxygen/html/FlowDDA_8cpp_source.html +5 -5
- package/SVF-doxygen/html/FlowDDA_8h_source.html +2 -2
- package/SVF-doxygen/html/FlowSensitiveStat_8cpp_source.html +1 -1
- package/SVF-doxygen/html/FlowSensitive_8cpp_source.html +5 -5
- package/SVF-doxygen/html/ICFGBuilder_8cpp_source.html +2 -2
- package/SVF-doxygen/html/ICFG_8cpp_source.html +1 -1
- package/SVF-doxygen/html/IRGraph_8cpp_source.html +2 -2
- package/SVF-doxygen/html/LLVMLoopAnalysis_8cpp_source.html +2 -2
- package/SVF-doxygen/html/LLVMModule_8cpp_source.html +10 -10
- package/SVF-doxygen/html/LLVMUtil_8cpp_source.html +40 -27
- package/SVF-doxygen/html/LeakChecker_8cpp_source.html +1 -1
- package/SVF-doxygen/html/LockAnalysis_8cpp_source.html +5 -5
- package/SVF-doxygen/html/LockAnalysis_8h_source.html +2 -2
- package/SVF-doxygen/html/LockResultValidator_8cpp_source.html +1 -1
- package/SVF-doxygen/html/MHP_8cpp_source.html +6 -6
- package/SVF-doxygen/html/MTAAnnotator_8cpp_source.html +2 -2
- package/SVF-doxygen/html/MTA_8cpp_source.html +5 -5
- package/SVF-doxygen/html/MemRegion_8cpp_source.html +7 -7
- package/SVF-doxygen/html/MemRegion_8h_source.html +1 -1
- package/SVF-doxygen/html/MemSSA_8cpp_source.html +4 -4
- package/SVF-doxygen/html/NodeIDAllocator_8cpp_source.html +2 -2
- package/SVF-doxygen/html/PCG_8cpp_source.html +2 -2
- package/SVF-doxygen/html/PointerAnalysisImpl_8cpp_source.html +3 -3
- package/SVF-doxygen/html/PointerAnalysisImpl_8h_source.html +4 -4
- package/SVF-doxygen/html/PointerAnalysis_8cpp_source.html +7 -7
- package/SVF-doxygen/html/PointerAnalysis_8h_source.html +1 -1
- package/SVF-doxygen/html/ProgSlice_8cpp_source.html +2 -2
- package/SVF-doxygen/html/SVFFileSystem_8cpp_source.html +6 -6
- package/SVF-doxygen/html/SVFFileSystem_8h_source.html +6 -6
- package/SVF-doxygen/html/SVFGBuilder_8cpp_source.html +2 -2
- package/SVF-doxygen/html/SVFGOPT_8cpp_source.html +2 -2
- package/SVF-doxygen/html/SVFGStat_8cpp_source.html +1 -1
- package/SVF-doxygen/html/SVFG_8cpp_source.html +2 -2
- package/SVF-doxygen/html/SVFIR2ConsExeState_8cpp_source.html +3 -3
- package/SVF-doxygen/html/SVFIR2ItvExeState_8cpp_source.html +773 -777
- package/SVF-doxygen/html/SVFIR2ItvExeState_8h_source.html +20 -20
- package/SVF-doxygen/html/SVFIRBuilder_8cpp_source.html +5 -5
- package/SVF-doxygen/html/SVFIRExtAPI_8cpp_source.html +1 -1
- package/SVF-doxygen/html/SVFStat_8cpp_source.html +1 -1
- package/SVF-doxygen/html/SVFStatements_8cpp_source.html +1 -1
- package/SVF-doxygen/html/SVFStatements_8h_source.html +5 -5
- package/SVF-doxygen/html/SVFType_8cpp.html +2 -2
- package/SVF-doxygen/html/SVFType_8cpp_source.html +70 -61
- package/SVF-doxygen/html/SVFType_8h.html +23 -23
- package/SVF-doxygen/html/SVFType_8h_source.html +401 -378
- package/SVF-doxygen/html/SVFUtil_8h_source.html +1 -1
- package/SVF-doxygen/html/SVFValue_8cpp_source.html +4 -4
- package/SVF-doxygen/html/SVFValue_8h_source.html +3 -3
- package/SVF-doxygen/html/SVFVariables_8cpp_source.html +2 -2
- package/SVF-doxygen/html/SaberCondAllocator_8cpp_source.html +3 -3
- package/SVF-doxygen/html/SaberSVFGBuilder_8cpp_source.html +2 -2
- package/SVF-doxygen/html/SrcSnkDDA_8cpp_source.html +3 -3
- package/SVF-doxygen/html/Steensgaard_8cpp_source.html +5 -5
- package/SVF-doxygen/html/SymbolTableBuilder_8cpp_source.html +4 -4
- package/SVF-doxygen/html/SymbolTableInfo_8cpp_source.html +7 -7
- package/SVF-doxygen/html/SymbolTableInfo_8h_source.html +1 -1
- package/SVF-doxygen/html/TCT_8cpp_source.html +2 -2
- package/SVF-doxygen/html/ThreadCallGraph_8cpp_source.html +2 -2
- package/SVF-doxygen/html/VFG_8cpp_source.html +2 -2
- package/SVF-doxygen/html/VersionedFlowSensitiveStat_8cpp_source.html +1 -1
- package/SVF-doxygen/html/VersionedFlowSensitive_8cpp_source.html +1 -1
- package/SVF-doxygen/html/WPAPass_8cpp_source.html +4 -4
- package/SVF-doxygen/html/WPAPass_8h_source.html +2 -2
- package/SVF-doxygen/html/WTO_8h_source.html +2 -2
- package/SVF-doxygen/html/classSVF_1_1AccessPath-members.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1AccessPath.html +167 -161
- package/SVF-doxygen/html/classSVF_1_1ActualINSVFGNode.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1ActualOUTSVFGNode.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1AddrStmt.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1AliasDDAClient.html +2 -2
- package/SVF-doxygen/html/classSVF_1_1Andersen.html +5 -5
- package/SVF-doxygen/html/classSVF_1_1AndersenBase.html +2 -2
- package/SVF-doxygen/html/classSVF_1_1AndersenSCD.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1AndersenStat.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1AndersenWaveDiff.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1BVDataPTAImpl.html +2 -2
- package/SVF-doxygen/html/classSVF_1_1BinaryOPStmt.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1BinaryOPVFGNode.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1BranchStmt.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1CDG.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1CFBasicBlockGBuilder.html +2 -2
- package/SVF-doxygen/html/classSVF_1_1CFBasicBlockGWTO.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1CFBasicBlockGWTO_1_1TailBuilder.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1CFBasicBlockGraph.html +91 -91
- package/SVF-doxygen/html/classSVF_1_1CFBasicBlockNode.html +24 -27
- package/SVF-doxygen/html/classSVF_1_1CFLAlias.html +7 -7
- package/SVF-doxygen/html/classSVF_1_1CFLBase.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1CHGBuilder.html +4 -4
- package/SVF-doxygen/html/classSVF_1_1CallCFGEdge.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1CallPE.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1CmpStmt.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1CmpVFGNode.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1CondPTAImpl.html +3 -3
- package/SVF-doxygen/html/classSVF_1_1ContextDDA.html +5 -5
- package/SVF-doxygen/html/classSVF_1_1CopyStmt.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1CxtStmt.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1CxtThread.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1CxtThreadStmt.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1DDAClient.html +3 -3
- package/SVF-doxygen/html/classSVF_1_1DDAPass.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1DDAStat.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1DDAVFSolver.html +4 -4
- package/SVF-doxygen/html/classSVF_1_1DoubleFreeChecker.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1FIObjVar.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1FlowDDA.html +5 -5
- package/SVF-doxygen/html/classSVF_1_1FlowSensitive.html +5 -5
- package/SVF-doxygen/html/classSVF_1_1FlowSensitiveStat.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1ForkJoinAnalysis.html +3 -3
- package/SVF-doxygen/html/classSVF_1_1GepObjVar.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1GepStmt-members.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1GepStmt.html +9 -10
- package/SVF-doxygen/html/classSVF_1_1GepValVar.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1ICFG.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1ICFGBuilder.html +2 -2
- package/SVF-doxygen/html/classSVF_1_1IRGraph.html +2 -2
- package/SVF-doxygen/html/classSVF_1_1InterMSSAPHISVFGNode.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1InterPHIVFGNode.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1IntraCFGEdge.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1IntraICFGNode.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1IntraPHIVFGNode.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1LLVMLoopAnalysis.html +2 -2
- package/SVF-doxygen/html/classSVF_1_1LLVMModuleSet.html +10 -10
- package/SVF-doxygen/html/classSVF_1_1LeakChecker.html +2 -2
- package/SVF-doxygen/html/classSVF_1_1LoadStmt.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1LockAnalysis.html +5 -5
- package/SVF-doxygen/html/classSVF_1_1LockResultValidator.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1MHP.html +6 -6
- package/SVF-doxygen/html/classSVF_1_1MRGenerator.html +6 -6
- package/SVF-doxygen/html/classSVF_1_1MTA.html +5 -5
- package/SVF-doxygen/html/classSVF_1_1MTAAnnotator.html +2 -2
- package/SVF-doxygen/html/classSVF_1_1MTAResultValidator.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1MTASVFGBuilder.html +3 -3
- package/SVF-doxygen/html/classSVF_1_1MemObj.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1MemSSA.html +4 -4
- package/SVF-doxygen/html/classSVF_1_1MemSSAStat.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1NodeIDAllocator_1_1Clusterer.html +2 -2
- package/SVF-doxygen/html/classSVF_1_1ObjTypeInfo.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1ObjVar.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1PCG.html +2 -2
- package/SVF-doxygen/html/classSVF_1_1PHIVFGNode.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1PhiStmt.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1PointerAnalysis.html +7 -7
- package/SVF-doxygen/html/classSVF_1_1ProgSlice.html +2 -2
- package/SVF-doxygen/html/classSVF_1_1RetCFGEdge.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1RetPE.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1SVFArrayType-members.html +11 -7
- package/SVF-doxygen/html/classSVF_1_1SVFArrayType.html +65 -27
- package/SVF-doxygen/html/classSVF_1_1SVFFunction.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1SVFFunctionType-members.html +30 -27
- package/SVF-doxygen/html/classSVF_1_1SVFFunctionType.html +28 -22
- package/SVF-doxygen/html/classSVF_1_1SVFG.html +2 -2
- package/SVF-doxygen/html/classSVF_1_1SVFGBuilder.html +2 -2
- package/SVF-doxygen/html/classSVF_1_1SVFGOPT.html +2 -2
- package/SVF-doxygen/html/classSVF_1_1SVFGStat.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1SVFIR2ConsExeState.html +2 -2
- package/SVF-doxygen/html/classSVF_1_1SVFIR2ItvExeState-members.html +2 -2
- package/SVF-doxygen/html/classSVF_1_1SVFIR2ItvExeState.html +749 -769
- package/SVF-doxygen/html/classSVF_1_1SVFIRBuilder.html +6 -6
- package/SVF-doxygen/html/classSVF_1_1SVFIntegerType-members.html +30 -27
- package/SVF-doxygen/html/classSVF_1_1SVFIntegerType.html +32 -26
- package/SVF-doxygen/html/classSVF_1_1SVFOtherType-members.html +32 -29
- package/SVF-doxygen/html/classSVF_1_1SVFOtherType.html +33 -27
- package/SVF-doxygen/html/classSVF_1_1SVFPointerType-members.html +30 -27
- package/SVF-doxygen/html/classSVF_1_1SVFPointerType.html +28 -22
- package/SVF-doxygen/html/classSVF_1_1SVFStat.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1SVFStructType-members.html +32 -29
- package/SVF-doxygen/html/classSVF_1_1SVFStructType.html +33 -27
- package/SVF-doxygen/html/classSVF_1_1SVFType-members.html +27 -24
- package/SVF-doxygen/html/classSVF_1_1SVFType.html +120 -23
- package/SVF-doxygen/html/classSVF_1_1SVFValue.html +23 -23
- package/SVF-doxygen/html/classSVF_1_1SVFVar.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1SaberCondAllocator.html +3 -3
- package/SVF-doxygen/html/classSVF_1_1SaberSVFGBuilder.html +2 -2
- package/SVF-doxygen/html/classSVF_1_1SelectStmt.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1SrcSnkDDA.html +3 -3
- package/SVF-doxygen/html/classSVF_1_1Steensgaard.html +5 -5
- package/SVF-doxygen/html/classSVF_1_1StoreStmt.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1SymbolTableBuilder.html +4 -4
- package/SVF-doxygen/html/classSVF_1_1SymbolTableInfo.html +5 -5
- package/SVF-doxygen/html/classSVF_1_1TCT.html +3 -3
- package/SVF-doxygen/html/classSVF_1_1TDForkPE.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1TDJoinPE.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1ThreadCallGraph.html +2 -2
- package/SVF-doxygen/html/classSVF_1_1UnaryOPStmt.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1UnaryOPVFGNode.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1VFG.html +2 -2
- package/SVF-doxygen/html/classSVF_1_1ValVar.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1VersionedFlowSensitive.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1VersionedFlowSensitiveStat.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1WPAPass.html +3 -3
- package/SVF-doxygen/html/functions_a.html +1 -1
- package/SVF-doxygen/html/functions_c.html +1 -1
- package/SVF-doxygen/html/functions_func.html +1 -1
- package/SVF-doxygen/html/functions_func_c.html +1 -1
- package/SVF-doxygen/html/functions_func_g.html +24 -18
- package/SVF-doxygen/html/functions_func_i.html +17 -11
- package/SVF-doxygen/html/functions_g.html +25 -19
- package/SVF-doxygen/html/functions_i.html +16 -10
- package/SVF-doxygen/html/functions_p.html +19 -23
- package/SVF-doxygen/html/functions_r.html +5 -5
- package/SVF-doxygen/html/functions_s.html +14 -12
- package/SVF-doxygen/html/functions_t.html +7 -7
- package/SVF-doxygen/html/functions_v.html +3 -3
- package/SVF-doxygen/html/globals_func_t.html +3 -0
- package/SVF-doxygen/html/globals_t.html +3 -0
- package/SVF-doxygen/html/namespaceSVF.html +46 -37
- package/SVF-doxygen/html/namespacemembers.html +1 -1
- package/SVF-doxygen/html/namespacemembers_func.html +1 -1
- package/SVF-doxygen/html/search/all_0.js +1 -1
- package/SVF-doxygen/html/search/all_1.js +1 -1
- package/SVF-doxygen/html/search/all_10.js +324 -324
- package/SVF-doxygen/html/search/all_11.js +224 -224
- package/SVF-doxygen/html/search/all_12.js +541 -541
- package/SVF-doxygen/html/search/all_13.js +191 -190
- package/SVF-doxygen/html/search/all_14.js +67 -67
- package/SVF-doxygen/html/search/all_15.js +170 -170
- package/SVF-doxygen/html/search/all_16.js +63 -63
- package/SVF-doxygen/html/search/all_17.js +1 -1
- package/SVF-doxygen/html/search/all_18.js +1 -1
- package/SVF-doxygen/html/search/all_19.js +11 -11
- package/SVF-doxygen/html/search/all_1a.js +172 -172
- package/SVF-doxygen/html/search/all_3.js +1 -1
- package/SVF-doxygen/html/search/all_7.js +457 -455
- package/SVF-doxygen/html/search/all_8.js +194 -194
- package/SVF-doxygen/html/search/all_9.js +610 -608
- package/SVF-doxygen/html/search/all_a.js +46 -46
- package/SVF-doxygen/html/search/all_b.js +26 -26
- package/SVF-doxygen/html/search/all_c.js +116 -116
- package/SVF-doxygen/html/search/all_d.js +196 -196
- package/SVF-doxygen/html/search/all_e.js +207 -207
- package/SVF-doxygen/html/search/all_f.js +116 -116
- package/SVF-doxygen/html/search/classes_0.js +26 -26
- package/SVF-doxygen/html/search/classes_1.js +9 -9
- package/SVF-doxygen/html/search/classes_10.js +73 -73
- package/SVF-doxygen/html/search/classes_11.js +15 -15
- package/SVF-doxygen/html/search/classes_12.js +2 -2
- package/SVF-doxygen/html/search/classes_13.js +10 -10
- package/SVF-doxygen/html/search/classes_14.js +14 -14
- package/SVF-doxygen/html/search/classes_15.js +1 -1
- package/SVF-doxygen/html/search/classes_2.js +80 -80
- package/SVF-doxygen/html/search/classes_3.js +37 -37
- package/SVF-doxygen/html/search/classes_4.js +9 -9
- package/SVF-doxygen/html/search/classes_5.js +28 -28
- package/SVF-doxygen/html/search/classes_6.js +104 -104
- package/SVF-doxygen/html/search/classes_7.js +33 -33
- package/SVF-doxygen/html/search/classes_8.js +56 -56
- package/SVF-doxygen/html/search/classes_9.js +1 -1
- package/SVF-doxygen/html/search/classes_a.js +12 -12
- package/SVF-doxygen/html/search/classes_b.js +29 -29
- package/SVF-doxygen/html/search/classes_c.js +6 -6
- package/SVF-doxygen/html/search/classes_d.js +18 -18
- package/SVF-doxygen/html/search/classes_e.js +36 -36
- package/SVF-doxygen/html/search/classes_f.js +25 -25
- package/SVF-doxygen/html/search/defines_0.js +3 -3
- package/SVF-doxygen/html/search/defines_1.js +2 -2
- package/SVF-doxygen/html/search/defines_2.js +30 -30
- package/SVF-doxygen/html/search/defines_3.js +21 -21
- package/SVF-doxygen/html/search/defines_4.js +2 -2
- package/SVF-doxygen/html/search/defines_5.js +4 -4
- package/SVF-doxygen/html/search/defines_6.js +2 -2
- package/SVF-doxygen/html/search/defines_7.js +5 -5
- package/SVF-doxygen/html/search/defines_8.js +11 -11
- package/SVF-doxygen/html/search/defines_9.js +9 -9
- package/SVF-doxygen/html/search/defines_a.js +2 -2
- package/SVF-doxygen/html/search/defines_b.js +1 -1
- package/SVF-doxygen/html/search/defines_c.js +3 -3
- package/SVF-doxygen/html/search/defines_d.js +2 -2
- package/SVF-doxygen/html/search/defines_e.js +7 -7
- package/SVF-doxygen/html/search/defines_f.js +3 -3
- package/SVF-doxygen/html/search/enums_0.js +3 -3
- package/SVF-doxygen/html/search/enums_1.js +2 -2
- package/SVF-doxygen/html/search/enums_10.js +1 -1
- package/SVF-doxygen/html/search/enums_11.js +1 -1
- package/SVF-doxygen/html/search/enums_2.js +8 -8
- package/SVF-doxygen/html/search/enums_3.js +1 -1
- package/SVF-doxygen/html/search/enums_4.js +3 -3
- package/SVF-doxygen/html/search/enums_5.js +1 -1
- package/SVF-doxygen/html/search/enums_6.js +2 -2
- package/SVF-doxygen/html/search/enums_7.js +2 -2
- package/SVF-doxygen/html/search/enums_8.js +4 -4
- package/SVF-doxygen/html/search/enums_9.js +1 -1
- package/SVF-doxygen/html/search/enums_a.js +1 -1
- package/SVF-doxygen/html/search/enums_b.js +7 -7
- package/SVF-doxygen/html/search/enums_c.js +1 -1
- package/SVF-doxygen/html/search/enums_d.js +4 -4
- package/SVF-doxygen/html/search/enums_e.js +2 -2
- package/SVF-doxygen/html/search/enums_f.js +4 -4
- package/SVF-doxygen/html/search/enumvalues_0.js +14 -14
- package/SVF-doxygen/html/search/enumvalues_1.js +14 -14
- package/SVF-doxygen/html/search/enumvalues_10.js +35 -35
- package/SVF-doxygen/html/search/enumvalues_11.js +3 -3
- package/SVF-doxygen/html/search/enumvalues_12.js +10 -10
- package/SVF-doxygen/html/search/enumvalues_13.js +1 -1
- package/SVF-doxygen/html/search/enumvalues_14.js +1 -1
- package/SVF-doxygen/html/search/enumvalues_15.js +3 -3
- package/SVF-doxygen/html/search/enumvalues_2.js +36 -36
- package/SVF-doxygen/html/search/enumvalues_3.js +13 -13
- package/SVF-doxygen/html/search/enumvalues_4.js +2 -2
- package/SVF-doxygen/html/search/enumvalues_5.js +47 -47
- package/SVF-doxygen/html/search/enumvalues_6.js +6 -6
- package/SVF-doxygen/html/search/enumvalues_7.js +9 -9
- package/SVF-doxygen/html/search/enumvalues_8.js +23 -23
- package/SVF-doxygen/html/search/enumvalues_9.js +6 -6
- package/SVF-doxygen/html/search/enumvalues_a.js +15 -15
- package/SVF-doxygen/html/search/enumvalues_b.js +11 -11
- package/SVF-doxygen/html/search/enumvalues_c.js +5 -5
- package/SVF-doxygen/html/search/enumvalues_d.js +18 -18
- package/SVF-doxygen/html/search/enumvalues_e.js +9 -9
- package/SVF-doxygen/html/search/enumvalues_f.js +45 -45
- package/SVF-doxygen/html/search/files_0.js +13 -13
- package/SVF-doxygen/html/search/files_1.js +7 -7
- package/SVF-doxygen/html/search/files_10.js +8 -8
- package/SVF-doxygen/html/search/files_11.js +8 -8
- package/SVF-doxygen/html/search/files_12.js +2 -2
- package/SVF-doxygen/html/search/files_2.js +55 -55
- package/SVF-doxygen/html/search/files_3.js +14 -14
- package/SVF-doxygen/html/search/files_4.js +5 -5
- package/SVF-doxygen/html/search/files_5.js +13 -13
- package/SVF-doxygen/html/search/files_6.js +9 -9
- package/SVF-doxygen/html/search/files_7.js +14 -14
- package/SVF-doxygen/html/search/files_8.js +13 -13
- package/SVF-doxygen/html/search/files_9.js +18 -18
- package/SVF-doxygen/html/search/files_a.js +3 -3
- package/SVF-doxygen/html/search/files_b.js +2 -2
- package/SVF-doxygen/html/search/files_c.js +20 -20
- package/SVF-doxygen/html/search/files_d.js +4 -4
- package/SVF-doxygen/html/search/files_e.js +62 -62
- package/SVF-doxygen/html/search/files_f.js +8 -8
- package/SVF-doxygen/html/search/functions_0.js +12 -12
- package/SVF-doxygen/html/search/functions_1.js +359 -359
- package/SVF-doxygen/html/search/functions_10.js +140 -140
- package/SVF-doxygen/html/search/functions_11.js +138 -138
- package/SVF-doxygen/html/search/functions_12.js +276 -276
- package/SVF-doxygen/html/search/functions_13.js +59 -58
- package/SVF-doxygen/html/search/functions_14.js +39 -39
- package/SVF-doxygen/html/search/functions_15.js +71 -71
- package/SVF-doxygen/html/search/functions_16.js +32 -32
- package/SVF-doxygen/html/search/functions_17.js +3 -3
- package/SVF-doxygen/html/search/functions_18.js +172 -172
- package/SVF-doxygen/html/search/functions_2.js +86 -86
- package/SVF-doxygen/html/search/functions_3.js +257 -257
- package/SVF-doxygen/html/search/functions_4.js +75 -75
- package/SVF-doxygen/html/search/functions_5.js +53 -53
- package/SVF-doxygen/html/search/functions_6.js +59 -59
- package/SVF-doxygen/html/search/functions_7.js +851 -849
- package/SVF-doxygen/html/search/functions_8.js +146 -146
- package/SVF-doxygen/html/search/functions_9.js +428 -426
- package/SVF-doxygen/html/search/functions_a.js +30 -30
- package/SVF-doxygen/html/search/functions_b.js +2 -2
- package/SVF-doxygen/html/search/functions_c.js +26 -26
- package/SVF-doxygen/html/search/functions_d.js +77 -77
- package/SVF-doxygen/html/search/functions_e.js +35 -35
- package/SVF-doxygen/html/search/functions_f.js +56 -56
- package/SVF-doxygen/html/search/namespaces_0.js +1 -1
- package/SVF-doxygen/html/search/namespaces_1.js +7 -7
- package/SVF-doxygen/html/search/related_0.js +2 -2
- package/SVF-doxygen/html/search/related_1.js +2 -2
- package/SVF-doxygen/html/search/related_2.js +2 -2
- package/SVF-doxygen/html/search/related_3.js +2 -2
- package/SVF-doxygen/html/search/related_4.js +2 -2
- package/SVF-doxygen/html/search/related_5.js +1 -1
- package/SVF-doxygen/html/search/related_6.js +2 -2
- package/SVF-doxygen/html/search/related_7.js +4 -4
- package/SVF-doxygen/html/search/related_8.js +2 -2
- package/SVF-doxygen/html/search/related_9.js +4 -4
- package/SVF-doxygen/html/search/related_a.js +19 -19
- package/SVF-doxygen/html/search/related_b.js +4 -4
- package/SVF-doxygen/html/search/related_c.js +1 -1
- package/SVF-doxygen/html/search/related_d.js +11 -11
- package/SVF-doxygen/html/search/related_e.js +2 -2
- package/SVF-doxygen/html/search/related_f.js +2 -2
- package/SVF-doxygen/html/search/typedefs_0.js +18 -18
- package/SVF-doxygen/html/search/typedefs_1.js +26 -26
- package/SVF-doxygen/html/search/typedefs_10.js +61 -61
- package/SVF-doxygen/html/search/typedefs_11.js +13 -13
- package/SVF-doxygen/html/search/typedefs_12.js +11 -11
- package/SVF-doxygen/html/search/typedefs_13.js +35 -35
- package/SVF-doxygen/html/search/typedefs_14.js +8 -8
- package/SVF-doxygen/html/search/typedefs_2.js +129 -129
- package/SVF-doxygen/html/search/typedefs_3.js +39 -39
- package/SVF-doxygen/html/search/typedefs_4.js +17 -17
- package/SVF-doxygen/html/search/typedefs_5.js +41 -41
- package/SVF-doxygen/html/search/typedefs_6.js +55 -55
- package/SVF-doxygen/html/search/typedefs_7.js +42 -42
- package/SVF-doxygen/html/search/typedefs_8.js +1 -1
- package/SVF-doxygen/html/search/typedefs_9.js +6 -6
- package/SVF-doxygen/html/search/typedefs_a.js +29 -29
- package/SVF-doxygen/html/search/typedefs_b.js +29 -29
- package/SVF-doxygen/html/search/typedefs_c.js +41 -41
- package/SVF-doxygen/html/search/typedefs_d.js +15 -15
- package/SVF-doxygen/html/search/typedefs_e.js +52 -52
- package/SVF-doxygen/html/search/typedefs_f.js +14 -14
- package/SVF-doxygen/html/search/variables_0.js +151 -151
- package/SVF-doxygen/html/search/variables_1.js +75 -75
- package/SVF-doxygen/html/search/variables_10.js +97 -97
- package/SVF-doxygen/html/search/variables_11.js +46 -46
- package/SVF-doxygen/html/search/variables_12.js +92 -92
- package/SVF-doxygen/html/search/variables_13.js +75 -75
- package/SVF-doxygen/html/search/variables_14.js +14 -14
- package/SVF-doxygen/html/search/variables_15.js +48 -48
- package/SVF-doxygen/html/search/variables_16.js +9 -9
- package/SVF-doxygen/html/search/variables_17.js +1 -1
- package/SVF-doxygen/html/search/variables_18.js +2 -2
- package/SVF-doxygen/html/search/variables_2.js +37 -37
- package/SVF-doxygen/html/search/variables_3.js +142 -142
- package/SVF-doxygen/html/search/variables_4.js +55 -55
- package/SVF-doxygen/html/search/variables_5.js +39 -39
- package/SVF-doxygen/html/search/variables_6.js +66 -66
- package/SVF-doxygen/html/search/variables_7.js +33 -33
- package/SVF-doxygen/html/search/variables_8.js +7 -7
- package/SVF-doxygen/html/search/variables_9.js +77 -77
- package/SVF-doxygen/html/search/variables_a.js +4 -4
- package/SVF-doxygen/html/search/variables_b.js +10 -10
- package/SVF-doxygen/html/search/variables_c.js +45 -45
- package/SVF-doxygen/html/search/variables_d.js +56 -56
- package/SVF-doxygen/html/search/variables_e.js +123 -123
- package/SVF-doxygen/html/search/variables_f.js +30 -30
- package/SVF-doxygen/html/structSVF_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html +1 -1
- package/SVF-doxygen/html/structSVF_1_1DOTGraphTraits_3_01SVF_1_1CDG_01_5_01_4.html +19 -20
- package/SVF-doxygen/html/structSVF_1_1DOTGraphTraits_3_01SVF_1_1CFBasicBlockGraph_01_5_01_4.html +102 -102
- package/SVF-doxygen/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1CFBasicBlockNode_01_5_01_4_01_4.html +1 -1
- package/SVF-doxygen/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1CFBasicBlockGraph_01_5_01_4.html +2 -2
- package/SVF-doxygen/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1CFBasicBlockNode_01_5_01_4.html +1 -1
- package/SVF-doxygen/html/structSVF_1_1Hash_3_01NodePair_01_4.html +11 -11
- package/SVF-doxygen/html/structstd_1_1hash_3_01SVF_1_1AccessPath_01_4.html +8 -8
- package/SVF-doxygen/html/structstd_1_1hash_3_01SVF_1_1NodePair_01_4.html +11 -11
- package/SVF-doxygen/html/structstd_1_1hash_3_01SVF_1_1SparseBitVector_3_01N_01_4_01_4.html +7 -7
- package/SVF-doxygen/html/structstd_1_1hash_3_01std_1_1vector_3_01T_01_4_01_4.html +14 -14
- package/SVF-doxygen/html/svf-ex_8cpp.html +235 -125
- package/SVF-doxygen/html/svf-ex_8cpp_source.html +234 -144
- package/package.json +1 -1
- package/svf/include/AbstractExecution/SVFIR2ItvExeState.h +5 -5
- package/svf/include/Graphs/CDG.h +2 -3
- package/svf/include/Graphs/CFBasicBlockG.h +3 -5
- package/svf/include/MemoryModel/AccessPath.h +24 -6
- package/svf/include/SVFIR/SVFStatements.h +2 -2
- package/svf/include/SVFIR/SVFType.h +19 -0
- package/svf/lib/AbstractExecution/SVFIR2ItvExeState.cpp +16 -21
- package/svf/lib/MemoryModel/AccessPath.cpp +15 -14
- package/svf/lib/SVFIR/SVFType.cpp +7 -0
- package/svf-llvm/lib/LLVMUtil.cpp +10 -0
- package/svf-llvm/tools/Example/svf-ex.cpp +65 -0
|
@@ -149,201 +149,207 @@ $(function() {
|
|
|
149
149
|
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  }</div>
|
|
150
150
|
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> }</div>
|
|
151
151
|
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  </div>
|
|
152
|
-
<div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="classSVF_1_1AccessPath.html#
|
|
152
|
+
<div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="classSVF_1_1AccessPath.html#a43dc770c4458c6ac58c591974b93fc57"> 97</a></span> <a class="code" href="namespaceSVF.html#a5c4820681ef340339ddded756eb82ae1">APOffset</a> <a class="code" href="classSVF_1_1AccessPath.html#a43dc770c4458c6ac58c591974b93fc57">AccessPath::computeConstantByteOffset</a>()<span class="keyword"> const</span></div>
|
|
153
153
|
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> <span class="keyword"></span>{</div>
|
|
154
154
|
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>  assert(isConstantOffset() && <span class="stringliteral">"not a constant offset"</span>);</div>
|
|
155
155
|
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>  </div>
|
|
156
|
-
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>  <
|
|
157
|
-
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> 
|
|
158
|
-
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> 
|
|
159
|
-
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> 
|
|
160
|
-
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> 
|
|
161
|
-
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> 
|
|
162
|
-
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>  <span class="keyword">const</span> <a class="code" href="
|
|
163
|
-
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> 
|
|
164
|
-
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> 
|
|
165
|
-
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> 
|
|
166
|
-
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>  <span class="keywordflow">if</span>(<a class="code" href="
|
|
156
|
+
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>  <a class="code" href="namespaceSVF.html#a5c4820681ef340339ddded756eb82ae1">APOffset</a> totalConstOffset = 0;</div>
|
|
157
|
+
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  <span class="keywordflow">for</span>(<span class="keywordtype">int</span> i = offsetVarAndGepTypePairs.size() - 1; i >= 0; i--)</div>
|
|
158
|
+
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>  {</div>
|
|
159
|
+
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFValue.html">SVFValue</a>* value = offsetVarAndGepTypePairs[i].first->getValue();</div>
|
|
160
|
+
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFType.html">SVFType</a>* <a class="code" href="cJSON_8cpp.html#a3f9a0d3265a6254722587175dac3e4dc">type</a> = offsetVarAndGepTypePairs[i].second;</div>
|
|
161
|
+
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFType.html">SVFType</a>* type2 = <a class="code" href="cJSON_8cpp.html#a3f9a0d3265a6254722587175dac3e4dc">type</a>;</div>
|
|
162
|
+
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>  <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFArrayType.html">SVFArrayType</a>* arrType = SVFUtil::dyn_cast<SVFArrayType>(<a class="code" href="cJSON_8cpp.html#a3f9a0d3265a6254722587175dac3e4dc">type</a>))</div>
|
|
163
|
+
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>  {</div>
|
|
164
|
+
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  type2 = arrType->getTypeOfElement();</div>
|
|
165
|
+
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>  }</div>
|
|
166
|
+
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFPointerType.html">SVFPointerType</a>* ptrType = SVFUtil::dyn_cast<SVFPointerType>(<a class="code" href="cJSON_8cpp.html#a3f9a0d3265a6254722587175dac3e4dc">type</a>))</div>
|
|
167
167
|
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>  {</div>
|
|
168
|
-
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> 
|
|
169
|
-
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> 
|
|
170
|
-
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> 
|
|
171
|
-
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  </div>
|
|
172
|
-
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>  <span class="keywordflow">if</span>(<span class="keyword">const</span> <a class="code" href="
|
|
173
|
-
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> 
|
|
174
|
-
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> 
|
|
175
|
-
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> 
|
|
176
|
-
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> 
|
|
177
|
-
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> 
|
|
178
|
-
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> 
|
|
179
|
-
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> 
|
|
180
|
-
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> 
|
|
181
|
-
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> 
|
|
182
|
-
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> 
|
|
183
|
-
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> 
|
|
184
|
-
<div class="line"><a name="
|
|
185
|
-
<div class="line"><a name="
|
|
186
|
-
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> <span class="comment">// struct
|
|
187
|
-
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> <span class="comment">//
|
|
188
|
-
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> 
|
|
189
|
-
<div class="line"><a name="
|
|
190
|
-
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> <span class="keyword"
|
|
191
|
-
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> 
|
|
192
|
-
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> 
|
|
193
|
-
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> 
|
|
194
|
-
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> 
|
|
195
|
-
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> 
|
|
196
|
-
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>  </div>
|
|
197
|
-
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> 
|
|
198
|
-
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>  <
|
|
199
|
-
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> 
|
|
200
|
-
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> 
|
|
201
|
-
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>  <span class="keyword">const</span> <a class="code" href="
|
|
202
|
-
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>  <span class="keyword">const</span> <a class="code" href="
|
|
203
|
-
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> 
|
|
204
|
-
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>  <span class="
|
|
205
|
-
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> 
|
|
206
|
-
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> 
|
|
207
|
-
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> 
|
|
208
|
-
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> 
|
|
209
|
-
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> 
|
|
210
|
-
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> 
|
|
211
|
-
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> 
|
|
212
|
-
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> 
|
|
213
|
-
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> 
|
|
214
|
-
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> 
|
|
215
|
-
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>  <
|
|
216
|
-
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> 
|
|
217
|
-
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> 
|
|
218
|
-
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> 
|
|
219
|
-
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> 
|
|
220
|
-
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> 
|
|
221
|
-
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> 
|
|
222
|
-
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> 
|
|
223
|
-
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> 
|
|
224
|
-
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> 
|
|
225
|
-
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> 
|
|
226
|
-
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> 
|
|
227
|
-
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> 
|
|
228
|
-
<div class="line"><a name="
|
|
229
|
-
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> <span class="keyword"
|
|
230
|
-
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> 
|
|
231
|
-
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> 
|
|
232
|
-
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> 
|
|
233
|
-
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> 
|
|
234
|
-
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> 
|
|
235
|
-
<div class="line"><a name="l00206"></a><span class="lineno"
|
|
236
|
-
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> <span class="keyword"
|
|
237
|
-
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> 
|
|
238
|
-
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> 
|
|
239
|
-
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> 
|
|
240
|
-
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> 
|
|
241
|
-
<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>  </div>
|
|
242
|
-
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> 
|
|
243
|
-
<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> 
|
|
244
|
-
<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> 
|
|
245
|
-
<div class="line"><a name="l00216"></a><span class="lineno"
|
|
246
|
-
<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> <span class="keyword"
|
|
247
|
-
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> 
|
|
248
|
-
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> 
|
|
249
|
-
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> 
|
|
250
|
-
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> 
|
|
251
|
-
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> 
|
|
252
|
-
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1AccessPath.html#a73ba2fd20ff0e21a2f09a3396f2596f8">OffsetVarAndGepTypePairs</a>&
|
|
253
|
-
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>  <span class="
|
|
254
|
-
<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> 
|
|
255
|
-
<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> 
|
|
256
|
-
<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> 
|
|
257
|
-
<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> 
|
|
258
|
-
<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>  OffsetVarAndGepTypePairs::const_iterator
|
|
259
|
-
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> 
|
|
260
|
-
<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> 
|
|
261
|
-
<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> 
|
|
262
|
-
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> 
|
|
263
|
-
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> 
|
|
264
|
-
<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> 
|
|
265
|
-
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> 
|
|
266
|
-
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> 
|
|
267
|
-
<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> }</div>
|
|
268
|
-
<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> 
|
|
269
|
-
<div class="line"><a name="l00240"></a><span class="lineno"
|
|
270
|
-
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> 
|
|
271
|
-
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> 
|
|
272
|
-
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>  <a class="code" href="classSVF_1_1SparseBitVector.html">NodeBS</a>
|
|
273
|
-
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>  <
|
|
274
|
-
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> 
|
|
275
|
-
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> 
|
|
276
|
-
<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> 
|
|
277
|
-
<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> 
|
|
278
|
-
<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> 
|
|
279
|
-
<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> 
|
|
280
|
-
<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> 
|
|
281
|
-
<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> 
|
|
282
|
-
<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> 
|
|
283
|
-
<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> 
|
|
284
|
-
<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> 
|
|
285
|
-
<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> 
|
|
286
|
-
<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> 
|
|
287
|
-
<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> 
|
|
288
|
-
<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> }</div>
|
|
289
|
-
<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> 
|
|
290
|
-
<div class="line"><a name="
|
|
291
|
-
<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> <span class="keyword"
|
|
292
|
-
<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> 
|
|
293
|
-
<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>  std::
|
|
294
|
-
<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> 
|
|
295
|
-
<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> 
|
|
296
|
-
<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>  rawstr << <span class="stringliteral">"
|
|
297
|
-
<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> 
|
|
298
|
-
<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>  OffsetVarAndGepTypePairs
|
|
299
|
-
<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>  OffsetVarAndGepTypePairs::const_iterator
|
|
300
|
-
<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> 
|
|
301
|
-
<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> 
|
|
302
|
-
<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> 
|
|
303
|
-
<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> 
|
|
304
|
-
<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> 
|
|
305
|
-
<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> 
|
|
306
|
-
<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>  <span class="
|
|
307
|
-
<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> 
|
|
168
|
+
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>  type2 = ptrType->getPtrElementType();</div>
|
|
169
|
+
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>  }</div>
|
|
170
|
+
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>  </div>
|
|
171
|
+
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFConstantInt.html">SVFConstantInt</a>* op = SVFUtil::dyn_cast<SVFConstantInt>(value);</div>
|
|
172
|
+
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>  <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFStructType.html">SVFStructType</a>* structType = SVFUtil::dyn_cast<SVFStructType>(<a class="code" href="cJSON_8cpp.html#a3f9a0d3265a6254722587175dac3e4dc">type</a>))</div>
|
|
173
|
+
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>  {</div>
|
|
174
|
+
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>  type2 = structType-><a class="code" href="classSVF_1_1SVFType.html#a05850c17c2dbe42e5602dc8c9a70f3bd">getTypeInfo</a>()-><a class="code" href="classSVF_1_1StInfo.html#a055697f565cb9d73b41110090fe50159">getOriginalElemType</a>(op-><a class="code" href="classSVF_1_1SVFConstantInt.html#a73f04bdfc19261b65164b98787bc2ed4">getSExtValue</a>());</div>
|
|
175
|
+
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>  totalConstOffset += type2-><a class="code" href="classSVF_1_1SVFType.html#a0091b8b186ad359a1b54ac7e0ee1e5d0">getLLVMByteSize</a>();</div>
|
|
176
|
+
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>  }</div>
|
|
177
|
+
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>  <span class="keywordflow">else</span></div>
|
|
178
|
+
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>  {</div>
|
|
179
|
+
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>  totalConstOffset += op-><a class="code" href="classSVF_1_1SVFConstantInt.html#a73f04bdfc19261b65164b98787bc2ed4">getSExtValue</a>() * type2-><a class="code" href="classSVF_1_1SVFType.html#a0091b8b186ad359a1b54ac7e0ee1e5d0">getLLVMByteSize</a>();</div>
|
|
180
|
+
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>  }</div>
|
|
181
|
+
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>  }</div>
|
|
182
|
+
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>  <span class="keywordflow">return</span> totalConstOffset;</div>
|
|
183
|
+
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> }</div>
|
|
184
|
+
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>  </div>
|
|
185
|
+
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>  </div>
|
|
186
|
+
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> <span class="comment">// struct inner{ int rollNumber; float percentage;};</span></div>
|
|
187
|
+
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> <span class="comment">// struct Student { struct inner rollNumber; char studentName[10][3];}</span></div>
|
|
188
|
+
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> <span class="comment">// char x = studentRecord[1].studentName[3][2];</span></div>
|
|
189
|
+
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>  </div>
|
|
190
|
+
<div class="line"><a name="l00158"></a><span class="lineno"><a class="line" href="classSVF_1_1AccessPath.html#ae746362c42da05a641ae062658e40651"> 158</a></span> <a class="code" href="namespaceSVF.html#a5c4820681ef340339ddded756eb82ae1">APOffset</a> <a class="code" href="classSVF_1_1AccessPath.html#ae746362c42da05a641ae062658e40651">AccessPath::computeConstantOffset</a>()<span class="keyword"> const</span></div>
|
|
191
|
+
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> <span class="keyword"></span>{</div>
|
|
192
|
+
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>  </div>
|
|
193
|
+
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>  assert(isConstantOffset() && <span class="stringliteral">"not a constant offset"</span>);</div>
|
|
194
|
+
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>  </div>
|
|
195
|
+
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>  <span class="keywordflow">if</span>(offsetVarAndGepTypePairs.empty())</div>
|
|
196
|
+
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>  <span class="keywordflow">return</span> getConstantFieldIdx();</div>
|
|
197
|
+
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>  </div>
|
|
198
|
+
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>  <a class="code" href="namespaceSVF.html#a5c4820681ef340339ddded756eb82ae1">APOffset</a> totalConstOffset = 0;</div>
|
|
199
|
+
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>  <span class="keywordflow">for</span>(<span class="keywordtype">int</span> i = offsetVarAndGepTypePairs.size() - 1; i >= 0; i--)</div>
|
|
200
|
+
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>  {</div>
|
|
201
|
+
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFValue.html">SVFValue</a>* value = offsetVarAndGepTypePairs[i].first->getValue();</div>
|
|
202
|
+
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFType.html">SVFType</a>* <a class="code" href="cJSON_8cpp.html#a3f9a0d3265a6254722587175dac3e4dc">type</a> = offsetVarAndGepTypePairs[i].second;</div>
|
|
203
|
+
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFConstantInt.html">SVFConstantInt</a>* op = SVFUtil::dyn_cast<SVFConstantInt>(value);</div>
|
|
204
|
+
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>  assert(op && <span class="stringliteral">"not a constant offset?"</span>);</div>
|
|
205
|
+
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>  <span class="keywordflow">if</span>(<a class="code" href="cJSON_8cpp.html#a3f9a0d3265a6254722587175dac3e4dc">type</a>==<span class="keyword">nullptr</span>)</div>
|
|
206
|
+
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>  {</div>
|
|
207
|
+
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>  totalConstOffset += op-><a class="code" href="classSVF_1_1SVFConstantInt.html#a73f04bdfc19261b65164b98787bc2ed4">getSExtValue</a>();</div>
|
|
208
|
+
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>  <span class="keywordflow">continue</span>;</div>
|
|
209
|
+
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>  }</div>
|
|
210
|
+
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>  </div>
|
|
211
|
+
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>  <span class="keywordflow">if</span>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFPointerType.html">SVFPointerType</a>* pty = SVFUtil::dyn_cast<SVFPointerType>(<a class="code" href="cJSON_8cpp.html#a3f9a0d3265a6254722587175dac3e4dc">type</a>))</div>
|
|
212
|
+
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>  totalConstOffset += op-><a class="code" href="classSVF_1_1SVFConstantInt.html#a73f04bdfc19261b65164b98787bc2ed4">getSExtValue</a>() * getElementNum(pty->getPtrElementType());</div>
|
|
213
|
+
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>  <span class="keywordflow">else</span></div>
|
|
214
|
+
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>  {</div>
|
|
215
|
+
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>  <a class="code" href="namespaceSVF.html#a5c4820681ef340339ddded756eb82ae1">APOffset</a> <a class="code" href="cJSON_8cpp.html#a95bf816579e97b6f33bdb5e25ed6d5de">offset</a> = op-><a class="code" href="classSVF_1_1SVFConstantInt.html#a73f04bdfc19261b65164b98787bc2ed4">getSExtValue</a>();</div>
|
|
216
|
+
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>  <span class="keywordflow">if</span> (<a class="code" href="cJSON_8cpp.html#a95bf816579e97b6f33bdb5e25ed6d5de">offset</a> >= 0)</div>
|
|
217
|
+
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>  {</div>
|
|
218
|
+
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> flattenOffset =</div>
|
|
219
|
+
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>  <a class="code" href="classSVF_1_1SymbolTableInfo.html#a267169023fc4f8dd66b145f7231fec11">SymbolTableInfo::SymbolInfo</a>()-><a class="code" href="classSVF_1_1SymbolTableInfo.html#a24df52313f8093bb651ae9da972cd663">getFlattenedElemIdx</a>(<a class="code" href="cJSON_8cpp.html#a3f9a0d3265a6254722587175dac3e4dc">type</a>,</div>
|
|
220
|
+
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>  <a class="code" href="cJSON_8cpp.html#a95bf816579e97b6f33bdb5e25ed6d5de">offset</a>);</div>
|
|
221
|
+
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>  totalConstOffset += flattenOffset;</div>
|
|
222
|
+
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>  }</div>
|
|
223
|
+
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>  <span class="keywordflow">else</span></div>
|
|
224
|
+
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>  totalConstOffset += <a class="code" href="cJSON_8cpp.html#a95bf816579e97b6f33bdb5e25ed6d5de">offset</a>;</div>
|
|
225
|
+
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>  }</div>
|
|
226
|
+
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>  }</div>
|
|
227
|
+
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>  <span class="keywordflow">return</span> totalConstOffset;</div>
|
|
228
|
+
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> }</div>
|
|
229
|
+
<div class="line"><a name="l00200"></a><span class="lineno"><a class="line" href="classSVF_1_1AccessPath.html#a76222b6571e46e8a8bd5c8c597c8ffaf"> 200</a></span> <a class="code" href="classSVF_1_1SparseBitVector.html">NodeBS</a> <a class="code" href="classSVF_1_1AccessPath.html#a76222b6571e46e8a8bd5c8c597c8ffaf">AccessPath::computeAllLocations</a>()<span class="keyword"> const</span></div>
|
|
230
|
+
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> <span class="keyword"></span>{</div>
|
|
231
|
+
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>  <a class="code" href="classSVF_1_1SparseBitVector.html">NodeBS</a> result;</div>
|
|
232
|
+
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>  result.<a class="code" href="classSVF_1_1SparseBitVector.html#a61bd86909a141f9de873d92c0f904832">set</a>(getConstantFieldIdx());</div>
|
|
233
|
+
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>  <span class="keywordflow">return</span> result;</div>
|
|
234
|
+
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> }</div>
|
|
235
|
+
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>  </div>
|
|
236
|
+
<div class="line"><a name="l00207"></a><span class="lineno"><a class="line" href="classSVF_1_1AccessPath.html#a6591b6092a829b0c874754b649087aa2"> 207</a></span> <a class="code" href="classSVF_1_1AccessPath.html">AccessPath</a> <a class="code" href="classSVF_1_1AccessPath.html#a6591b6092a829b0c874754b649087aa2">AccessPath::operator+</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1AccessPath.html">AccessPath</a>& rhs)<span class="keyword"> const</span></div>
|
|
237
|
+
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> <span class="keyword"></span>{</div>
|
|
238
|
+
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>  <a class="code" href="classSVF_1_1AccessPath.html">AccessPath</a> ap(rhs);</div>
|
|
239
|
+
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>  ap.<a class="code" href="classSVF_1_1AccessPath.html#aa1747064a0833855a5848ebf4a4d65fa">fldIdx</a> += getConstantFieldIdx();</div>
|
|
240
|
+
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> &<a class="code" href="cJSON_8cpp.html#a009ef1d888ab6dbe77e6b42b0b39f1ae">p</a> : ap.<a class="code" href="classSVF_1_1AccessPath.html#ab0641554924d44f16c2831cac63ccf8b">getOffsetVarAndGepTypePairVec</a>())</div>
|
|
241
|
+
<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>  ap.<a class="code" href="classSVF_1_1AccessPath.html#a2358a8194b5e2c4bcbb5218dee7fcbcd">addOffsetVarAndGepTypePair</a>(<a class="code" href="cJSON_8cpp.html#a009ef1d888ab6dbe77e6b42b0b39f1ae">p</a>.first, <a class="code" href="cJSON_8cpp.html#a009ef1d888ab6dbe77e6b42b0b39f1ae">p</a>.second);</div>
|
|
242
|
+
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>  </div>
|
|
243
|
+
<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>  <span class="keywordflow">return</span> ap;</div>
|
|
244
|
+
<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> }</div>
|
|
245
|
+
<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>  </div>
|
|
246
|
+
<div class="line"><a name="l00217"></a><span class="lineno"><a class="line" href="classSVF_1_1AccessPath.html#ae0f38a5f473af89678db2755667c3421"> 217</a></span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1AccessPath.html#ae0f38a5f473af89678db2755667c3421">AccessPath::operator< </a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1AccessPath.html">AccessPath</a>& rhs)<span class="keyword"> const</span></div>
|
|
247
|
+
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> <span class="keyword"></span>{</div>
|
|
248
|
+
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>  <span class="keywordflow">if</span> (fldIdx != rhs.<a class="code" href="classSVF_1_1AccessPath.html#aa1747064a0833855a5848ebf4a4d65fa">fldIdx</a>)</div>
|
|
249
|
+
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>  <span class="keywordflow">return</span> (fldIdx < rhs.<a class="code" href="classSVF_1_1AccessPath.html#aa1747064a0833855a5848ebf4a4d65fa">fldIdx</a>);</div>
|
|
250
|
+
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>  <span class="keywordflow">else</span></div>
|
|
251
|
+
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>  {</div>
|
|
252
|
+
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1AccessPath.html#a73ba2fd20ff0e21a2f09a3396f2596f8">OffsetVarAndGepTypePairs</a>& pairVec = getOffsetVarAndGepTypePairVec();</div>
|
|
253
|
+
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1AccessPath.html#a73ba2fd20ff0e21a2f09a3396f2596f8">OffsetVarAndGepTypePairs</a>& rhsPairVec = rhs.<a class="code" href="classSVF_1_1AccessPath.html#ab0641554924d44f16c2831cac63ccf8b">getOffsetVarAndGepTypePairVec</a>();</div>
|
|
254
|
+
<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>  <span class="keywordflow">if</span> (pairVec.size() != rhsPairVec.size())</div>
|
|
255
|
+
<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>  <span class="keywordflow">return</span> (pairVec.size() < rhsPairVec.size());</div>
|
|
256
|
+
<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>  <span class="keywordflow">else</span></div>
|
|
257
|
+
<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>  {</div>
|
|
258
|
+
<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>  OffsetVarAndGepTypePairs::const_iterator it = pairVec.begin();</div>
|
|
259
|
+
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>  OffsetVarAndGepTypePairs::const_iterator rhsIt = rhsPairVec.begin();</div>
|
|
260
|
+
<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>  <span class="keywordflow">for</span> (; it != pairVec.end() && rhsIt != rhsPairVec.end(); ++it, ++rhsIt)</div>
|
|
261
|
+
<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>  {</div>
|
|
262
|
+
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>  <span class="keywordflow">return</span> (*it) < (*rhsIt);</div>
|
|
263
|
+
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>  }</div>
|
|
264
|
+
<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>  </div>
|
|
265
|
+
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
|
266
|
+
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>  }</div>
|
|
267
|
+
<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>  }</div>
|
|
268
|
+
<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> }</div>
|
|
269
|
+
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>  </div>
|
|
270
|
+
<div class="line"><a name="l00241"></a><span class="lineno"><a class="line" href="classSVF_1_1AccessPath.html#a98b8b3428479259fbafd9e527ecc09bb"> 241</a></span> <a class="code" href="classSVF_1_1AccessPath.html#aabb6c9600fac408f36b9fde013597245">SVF::AccessPath::LSRelation</a> <a class="code" href="classSVF_1_1AccessPath.html#a98b8b3428479259fbafd9e527ecc09bb">AccessPath::checkRelation</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1AccessPath.html">AccessPath</a>& LHS, <span class="keyword">const</span> <a class="code" href="classSVF_1_1AccessPath.html">AccessPath</a>& RHS)</div>
|
|
271
|
+
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> {</div>
|
|
272
|
+
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>  <a class="code" href="classSVF_1_1SparseBitVector.html">NodeBS</a> lhsLocations = LHS.<a class="code" href="classSVF_1_1AccessPath.html#a76222b6571e46e8a8bd5c8c597c8ffaf">computeAllLocations</a>();</div>
|
|
273
|
+
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>  <a class="code" href="classSVF_1_1SparseBitVector.html">NodeBS</a> rhsLocations = RHS.<a class="code" href="classSVF_1_1AccessPath.html#a76222b6571e46e8a8bd5c8c597c8ffaf">computeAllLocations</a>();</div>
|
|
274
|
+
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>  <span class="keywordflow">if</span> (lhsLocations.<a class="code" href="classSVF_1_1SparseBitVector.html#a16756e0545fd3d50ab89f45a2e83bb79">intersects</a>(rhsLocations))</div>
|
|
275
|
+
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>  {</div>
|
|
276
|
+
<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>  <span class="keywordflow">if</span> (lhsLocations == rhsLocations)</div>
|
|
277
|
+
<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>  <span class="keywordflow">return</span> Same;</div>
|
|
278
|
+
<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (lhsLocations.<a class="code" href="classSVF_1_1SparseBitVector.html#abbd0e0cf759fad7858224ed8a63aade8">contains</a>(rhsLocations))</div>
|
|
279
|
+
<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>  <span class="keywordflow">return</span> Superset;</div>
|
|
280
|
+
<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (rhsLocations.<a class="code" href="classSVF_1_1SparseBitVector.html#abbd0e0cf759fad7858224ed8a63aade8">contains</a>(lhsLocations))</div>
|
|
281
|
+
<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>  <span class="keywordflow">return</span> Subset;</div>
|
|
282
|
+
<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>  <span class="keywordflow">else</span></div>
|
|
283
|
+
<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>  <span class="keywordflow">return</span> Overlap;</div>
|
|
284
|
+
<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>  }</div>
|
|
285
|
+
<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>  <span class="keywordflow">else</span></div>
|
|
286
|
+
<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>  {</div>
|
|
287
|
+
<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>  <span class="keywordflow">return</span> NonOverlap;</div>
|
|
288
|
+
<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>  }</div>
|
|
289
|
+
<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> }</div>
|
|
290
|
+
<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>  </div>
|
|
291
|
+
<div class="line"><a name="l00263"></a><span class="lineno"><a class="line" href="classSVF_1_1AccessPath.html#a4519477605a58d5821d05951a88abcd0"> 263</a></span> <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1AccessPath.html#a4519477605a58d5821d05951a88abcd0">AccessPath::dump</a>()<span class="keyword"> const</span></div>
|
|
292
|
+
<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> <span class="keyword"></span>{</div>
|
|
293
|
+
<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div>
|
|
294
|
+
<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>  std::stringstream rawstr(str);</div>
|
|
295
|
+
<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>  </div>
|
|
296
|
+
<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>  rawstr << <span class="stringliteral">"AccessPath\tField_Index: "</span> << getConstantFieldIdx();</div>
|
|
297
|
+
<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>  rawstr << <span class="stringliteral">",\tNum-Stride: {"</span>;</div>
|
|
298
|
+
<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1AccessPath.html#a73ba2fd20ff0e21a2f09a3396f2596f8">OffsetVarAndGepTypePairs</a>& vec = getOffsetVarAndGepTypePairVec();</div>
|
|
299
|
+
<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>  OffsetVarAndGepTypePairs::const_iterator it = vec.begin();</div>
|
|
300
|
+
<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>  OffsetVarAndGepTypePairs::const_iterator eit = vec.end();</div>
|
|
301
|
+
<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>  <span class="keywordflow">for</span> (; it != eit; ++it)</div>
|
|
302
|
+
<div class="line"><a name="l00274"></a><span class="lineno"> 274</span>  {</div>
|
|
303
|
+
<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFType.html">SVFType</a>* ty = it->second;</div>
|
|
304
|
+
<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>  rawstr << <span class="stringliteral">" (Svf var: "</span> << it->first-><a class="code" href="classSVF_1_1SVFType.html#a9035ac13134de4647d63507cd80ca3d6">toString</a>() << <span class="stringliteral">", Iter type: "</span> << *ty << <span class="stringliteral">")"</span>;</div>
|
|
305
|
+
<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>  }</div>
|
|
306
|
+
<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>  rawstr << <span class="stringliteral">" }\n"</span>;</div>
|
|
307
|
+
<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>  <span class="keywordflow">return</span> rawstr.str();</div>
|
|
308
|
+
<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> }</div>
|
|
308
309
|
</div><!-- fragment --></div><!-- contents -->
|
|
309
310
|
<div class="ttc" id="anamespaceSVF_html_a5c4820681ef340339ddded756eb82ae1"><div class="ttname"><a href="namespaceSVF.html#a5c4820681ef340339ddded756eb82ae1">SVF::APOffset</a></div><div class="ttdeci">s64_t APOffset</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00061">SVFType.h:61</a></div></div>
|
|
310
311
|
<div class="ttc" id="aclassSVF_1_1SparseBitVector_html_a16756e0545fd3d50ab89f45a2e83bb79"><div class="ttname"><a href="classSVF_1_1SparseBitVector.html#a16756e0545fd3d50ab89f45a2e83bb79">SVF::SparseBitVector::intersects</a></div><div class="ttdeci">bool intersects(const SparseBitVector< ElementSize > *RHS) const</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l01031">SparseBitVector.h:1031</a></div></div>
|
|
311
312
|
<div class="ttc" id="aclassSVF_1_1SparseBitVector_html_abbd0e0cf759fad7858224ed8a63aade8"><div class="ttname"><a href="classSVF_1_1SparseBitVector.html#abbd0e0cf759fad7858224ed8a63aade8">SVF::SparseBitVector::contains</a></div><div class="ttdeci">bool contains(const SparseBitVector< ElementSize > &RHS) const</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l01073">SparseBitVector.h:1073</a></div></div>
|
|
312
313
|
<div class="ttc" id="acJSON_8cpp_html_a009ef1d888ab6dbe77e6b42b0b39f1ae"><div class="ttname"><a href="cJSON_8cpp.html#a009ef1d888ab6dbe77e6b42b0b39f1ae">p</a></div><div class="ttdeci">cJSON * p</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8cpp_source.html#l02559">cJSON.cpp:2559</a></div></div>
|
|
313
314
|
<div class="ttc" id="aclassSVF_1_1AccessPath_html_a73ba2fd20ff0e21a2f09a3396f2596f8"><div class="ttname"><a href="classSVF_1_1AccessPath.html#a73ba2fd20ff0e21a2f09a3396f2596f8">SVF::AccessPath::OffsetVarAndGepTypePairs</a></div><div class="ttdeci">std::vector< VarAndGepTypePair > OffsetVarAndGepTypePairs</div><div class="ttdef"><b>Definition:</b> <a href="AccessPath_8h_source.html#l00065">AccessPath.h:65</a></div></div>
|
|
314
|
-
<div class="ttc" id="aclassSVF_1_1SVFPointerType_html"><div class="ttname"><a href="classSVF_1_1SVFPointerType.html">SVF::SVFPointerType</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#
|
|
315
|
+
<div class="ttc" id="aclassSVF_1_1SVFPointerType_html"><div class="ttname"><a href="classSVF_1_1SVFPointerType.html">SVF::SVFPointerType</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00344">SVFType.h:344</a></div></div>
|
|
315
316
|
<div class="ttc" id="anamespaceSVF_html"><div class="ttname"><a href="namespaceSVF.html">SVF</a></div><div class="ttdoc">for isBitcode</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00065">BasicTypes.h:65</a></div></div>
|
|
316
317
|
<div class="ttc" id="aclassSVF_1_1SparseBitVector_html_a61bd86909a141f9de873d92c0f904832"><div class="ttname"><a href="classSVF_1_1SparseBitVector.html#a61bd86909a141f9de873d92c0f904832">SVF::SparseBitVector::set</a></div><div class="ttdeci">void set(unsigned Idx)</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00747">SparseBitVector.h:747</a></div></div>
|
|
317
|
-
<div class="ttc" id="aclassSVF_1_1AccessPath_html_afca303a7a5bde9a8ef56ae728d414553"><div class="ttname"><a href="classSVF_1_1AccessPath.html#afca303a7a5bde9a8ef56ae728d414553">SVF::AccessPath::computeConstantByteOffset</a></div><div class="ttdeci">APOffset computeConstantByteOffset(u32_t elemBytesize) const</div><div class="ttdef"><b>Definition:</b> <a href="AccessPath_8cpp_source.html#l00097">AccessPath.cpp:97</a></div></div>
|
|
318
318
|
<div class="ttc" id="aAccessPath_8h_html"><div class="ttname"><a href="AccessPath_8h.html">AccessPath.h</a></div></div>
|
|
319
|
-
<div class="ttc" id="aclassSVF_1_1AccessPath_html_ae0f38a5f473af89678db2755667c3421"><div class="ttname"><a href="classSVF_1_1AccessPath.html#ae0f38a5f473af89678db2755667c3421">SVF::AccessPath::operator<</a></div><div class="ttdeci">bool operator<(const AccessPath &rhs) const</div><div class="ttdef"><b>Definition:</b> <a href="AccessPath_8cpp_source.html#
|
|
319
|
+
<div class="ttc" id="aclassSVF_1_1AccessPath_html_ae0f38a5f473af89678db2755667c3421"><div class="ttname"><a href="classSVF_1_1AccessPath.html#ae0f38a5f473af89678db2755667c3421">SVF::AccessPath::operator<</a></div><div class="ttdeci">bool operator<(const AccessPath &rhs) const</div><div class="ttdef"><b>Definition:</b> <a href="AccessPath_8cpp_source.html#l00217">AccessPath.cpp:217</a></div></div>
|
|
320
320
|
<div class="ttc" id="aclassSVF_1_1AccessPath_html_a2358a8194b5e2c4bcbb5218dee7fcbcd"><div class="ttname"><a href="classSVF_1_1AccessPath.html#a2358a8194b5e2c4bcbb5218dee7fcbcd">SVF::AccessPath::addOffsetVarAndGepTypePair</a></div><div class="ttdeci">bool addOffsetVarAndGepTypePair(const SVFVar *var, const SVFType *gepIterType)</div><div class="ttdef"><b>Definition:</b> <a href="AccessPath_8cpp_source.html#l00042">AccessPath.cpp:42</a></div></div>
|
|
321
321
|
<div class="ttc" id="aclassSVF_1_1SparseBitVector_html"><div class="ttname"><a href="classSVF_1_1SparseBitVector.html">SVF::SparseBitVector</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00459">SparseBitVector.h:459</a></div></div>
|
|
322
|
-
<div class="ttc" id="aclassSVF_1_1AccessPath_html_a76222b6571e46e8a8bd5c8c597c8ffaf"><div class="ttname"><a href="classSVF_1_1AccessPath.html#a76222b6571e46e8a8bd5c8c597c8ffaf">SVF::AccessPath::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="AccessPath_8cpp_source.html#
|
|
322
|
+
<div class="ttc" id="aclassSVF_1_1AccessPath_html_a76222b6571e46e8a8bd5c8c597c8ffaf"><div class="ttname"><a href="classSVF_1_1AccessPath.html#a76222b6571e46e8a8bd5c8c597c8ffaf">SVF::AccessPath::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="AccessPath_8cpp_source.html#l00200">AccessPath.cpp:200</a></div></div>
|
|
323
323
|
<div class="ttc" id="aclassSVF_1_1AccessPath_html_a3c98f0c5f07109f9da0a8a897aa51d18"><div class="ttname"><a href="classSVF_1_1AccessPath.html#a3c98f0c5f07109f9da0a8a897aa51d18">SVF::AccessPath::getElementNum</a></div><div class="ttdeci">u32_t getElementNum(const SVFType *type) const</div><div class="ttdoc">Return element number of a type.</div><div class="ttdef"><b>Definition:</b> <a href="AccessPath_8cpp_source.html#l00063">AccessPath.cpp:63</a></div></div>
|
|
324
324
|
<div class="ttc" id="aSVFUtil_8h_html"><div class="ttname"><a href="SVFUtil_8h.html">SVFUtil.h</a></div></div>
|
|
325
325
|
<div class="ttc" id="aOptions_8h_html"><div class="ttname"><a href="Options_8h.html">Options.h</a></div></div>
|
|
326
326
|
<div class="ttc" id="aclassSVF_1_1SymbolTableInfo_html_a24df52313f8093bb651ae9da972cd663"><div class="ttname"><a href="classSVF_1_1SymbolTableInfo.html#a24df52313f8093bb651ae9da972cd663">SVF::SymbolTableInfo::getFlattenedElemIdx</a></div><div class="ttdeci">u32_t getFlattenedElemIdx(const SVFType *T, u32_t origId)</div><div class="ttdoc">Flattened element idx of an array or struct by considering stride.</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00181">SymbolTableInfo.cpp:181</a></div></div>
|
|
327
|
-
<div class="ttc" id="aclassSVF_1_1AccessPath_html_a98b8b3428479259fbafd9e527ecc09bb"><div class="ttname"><a href="classSVF_1_1AccessPath.html#a98b8b3428479259fbafd9e527ecc09bb">SVF::AccessPath::checkRelation</a></div><div class="ttdeci">LSRelation checkRelation(const AccessPath &LHS, const AccessPath &RHS)</div><div class="ttdoc">Check relations of two location sets.</div><div class="ttdef"><b>Definition:</b> <a href="AccessPath_8cpp_source.html#
|
|
327
|
+
<div class="ttc" id="aclassSVF_1_1AccessPath_html_a98b8b3428479259fbafd9e527ecc09bb"><div class="ttname"><a href="classSVF_1_1AccessPath.html#a98b8b3428479259fbafd9e527ecc09bb">SVF::AccessPath::checkRelation</a></div><div class="ttdeci">LSRelation checkRelation(const AccessPath &LHS, const AccessPath &RHS)</div><div class="ttdoc">Check relations of two location sets.</div><div class="ttdef"><b>Definition:</b> <a href="AccessPath_8cpp_source.html#l00241">AccessPath.cpp:241</a></div></div>
|
|
328
328
|
<div class="ttc" id="aclassSVF_1_1SVFValue_html"><div class="ttname"><a href="classSVF_1_1SVFValue.html">SVF::SVFValue</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00177">SVFValue.h:177</a></div></div>
|
|
329
329
|
<div class="ttc" id="acJSON_8h_html_ad4c68ea99a26b0a98ad9a79982960458"><div class="ttname"><a href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">string</a></div><div class="ttdeci">const char *const string</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00172">cJSON.h:172</a></div></div>
|
|
330
|
+
<div class="ttc" id="aclassSVF_1_1SVFArrayType_html"><div class="ttname"><a href="classSVF_1_1SVFArrayType.html">SVF::SVFArrayType</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00455">SVFType.h:455</a></div></div>
|
|
331
|
+
<div class="ttc" id="aclassSVF_1_1SVFType_html_a0091b8b186ad359a1b54ac7e0ee1e5d0"><div class="ttname"><a href="classSVF_1_1SVFType.html#a0091b8b186ad359a1b54ac7e0ee1e5d0">SVF::SVFType::getLLVMByteSize</a></div><div class="ttdeci">u32_t getLLVMByteSize() const</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l01272">LLVMUtil.cpp:1272</a></div></div>
|
|
330
332
|
<div class="ttc" id="aclassSVF_1_1AccessPath_html"><div class="ttname"><a href="classSVF_1_1AccessPath.html">SVF::AccessPath</a></div><div class="ttdef"><b>Definition:</b> <a href="AccessPath_8h_source.html#l00052">AccessPath.h:52</a></div></div>
|
|
331
333
|
<div class="ttc" id="acJSON_8cpp_html_a3f9a0d3265a6254722587175dac3e4dc"><div class="ttname"><a href="cJSON_8cpp.html#a3f9a0d3265a6254722587175dac3e4dc">type</a></div><div class="ttdeci">newitem type</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8cpp_source.html#l02739">cJSON.cpp:2739</a></div></div>
|
|
332
334
|
<div class="ttc" id="aclassSVF_1_1SVFType_html"><div class="ttname"><a href="classSVF_1_1SVFType.html">SVF::SVFType</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00242">SVFType.h:242</a></div></div>
|
|
333
|
-
<div class="ttc" id="
|
|
335
|
+
<div class="ttc" id="aclassSVF_1_1SVFStructType_html"><div class="ttname"><a href="classSVF_1_1SVFStructType.html">SVF::SVFStructType</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00422">SVFType.h:422</a></div></div>
|
|
336
|
+
<div class="ttc" id="aclassSVF_1_1AccessPath_html_ae746362c42da05a641ae062658e40651"><div class="ttname"><a href="classSVF_1_1AccessPath.html#ae746362c42da05a641ae062658e40651">SVF::AccessPath::computeConstantOffset</a></div><div class="ttdeci">APOffset computeConstantOffset() const</div><div class="ttdoc">For example,.</div><div class="ttdef"><b>Definition:</b> <a href="AccessPath_8cpp_source.html#l00158">AccessPath.cpp:158</a></div></div>
|
|
334
337
|
<div class="ttc" id="aclassSVF_1_1SVFConstantInt_html"><div class="ttname"><a href="classSVF_1_1SVFConstantInt.html">SVF::SVFConstantInt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00955">SVFValue.h:955</a></div></div>
|
|
335
338
|
<div class="ttc" id="aclassSVF_1_1SVFVar_html"><div class="ttname"><a href="classSVF_1_1SVFVar.html">SVF::SVFVar</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00045">SVFVariables.h:45</a></div></div>
|
|
336
339
|
<div class="ttc" id="aclassSVF_1_1SVFType_html_a9035ac13134de4647d63507cd80ca3d6"><div class="ttname"><a href="classSVF_1_1SVFType.html#a9035ac13134de4647d63507cd80ca3d6">SVF::SVFType::toString</a></div><div class="ttdeci">std::string toString() const</div></div>
|
|
337
340
|
<div class="ttc" id="aclassSVF_1_1AccessPath_html_ab0641554924d44f16c2831cac63ccf8b"><div class="ttname"><a href="classSVF_1_1AccessPath.html#ab0641554924d44f16c2831cac63ccf8b">SVF::AccessPath::getOffsetVarAndGepTypePairVec</a></div><div class="ttdeci">const OffsetVarAndGepTypePairs & getOffsetVarAndGepTypePairVec() const</div><div class="ttdef"><b>Definition:</b> <a href="AccessPath_8h_source.html#l00106">AccessPath.h:106</a></div></div>
|
|
338
341
|
<div class="ttc" id="aclassSVF_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#l00081">SymbolTableInfo.cpp:81</a></div></div>
|
|
339
|
-
<div class="ttc" id="
|
|
342
|
+
<div class="ttc" id="aclassSVF_1_1SVFType_html_a05850c17c2dbe42e5602dc8c9a70f3bd"><div class="ttname"><a href="classSVF_1_1SVFType.html#a05850c17c2dbe42e5602dc8c9a70f3bd">SVF::SVFType::getTypeInfo</a></div><div class="ttdeci">StInfo * getTypeInfo()</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00309">SVFType.h:309</a></div></div>
|
|
343
|
+
<div class="ttc" id="aclassSVF_1_1AccessPath_html_a6591b6092a829b0c874754b649087aa2"><div class="ttname"><a href="classSVF_1_1AccessPath.html#a6591b6092a829b0c874754b649087aa2">SVF::AccessPath::operator+</a></div><div class="ttdeci">AccessPath operator+(const AccessPath &rhs) const</div><div class="ttdoc">Overload operators.</div><div class="ttdef"><b>Definition:</b> <a href="AccessPath_8cpp_source.html#l00207">AccessPath.cpp:207</a></div></div>
|
|
340
344
|
<div class="ttc" id="acJSON_8cpp_html_a95bf816579e97b6f33bdb5e25ed6d5de"><div class="ttname"><a href="cJSON_8cpp.html#a95bf816579e97b6f33bdb5e25ed6d5de">offset</a></div><div class="ttdeci">buffer offset</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8cpp_source.html#l01113">cJSON.cpp:1113</a></div></div>
|
|
341
345
|
<div class="ttc" id="anamespaceSVF_1_1SVFUtil_html_aed0b0b9f035057552a6a82154fd88e61"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVF::SVFUtil::outs</a></div><div class="ttdeci">std::ostream & outs()</div><div class="ttdoc">Overwrite llvm::outs()</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00050">SVFUtil.h:50</a></div></div>
|
|
342
346
|
<div class="ttc" id="aclassSVF_1_1AccessPath_html_a403312192a96a9fd5e7d071481592a7f"><div class="ttname"><a href="classSVF_1_1AccessPath.html#a403312192a96a9fd5e7d071481592a7f">SVF::AccessPath::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="AccessPath_8cpp_source.html#l00049">AccessPath.cpp:49</a></div></div>
|
|
343
|
-
<div class="ttc" id="aclassSVF_1_1AccessPath_html_aa1747064a0833855a5848ebf4a4d65fa"><div class="ttname"><a href="classSVF_1_1AccessPath.html#aa1747064a0833855a5848ebf4a4d65fa">SVF::AccessPath::fldIdx</a></div><div class="ttdeci">APOffset fldIdx</div><div class="ttdoc">Accumulated Constant Offsets.</div><div class="ttdef"><b>Definition:</b> <a href="AccessPath_8h_source.html#
|
|
344
|
-
<div class="ttc" id="aclassSVF_1_1AccessPath_html_a4519477605a58d5821d05951a88abcd0"><div class="ttname"><a href="classSVF_1_1AccessPath.html#a4519477605a58d5821d05951a88abcd0">SVF::AccessPath::dump</a></div><div class="ttdeci">std::string dump() const</div><div class="ttdoc">Dump location set.</div><div class="ttdef"><b>Definition:</b> <a href="AccessPath_8cpp_source.html#
|
|
347
|
+
<div class="ttc" id="aclassSVF_1_1AccessPath_html_aa1747064a0833855a5848ebf4a4d65fa"><div class="ttname"><a href="classSVF_1_1AccessPath.html#aa1747064a0833855a5848ebf4a4d65fa">SVF::AccessPath::fldIdx</a></div><div class="ttdeci">APOffset fldIdx</div><div class="ttdoc">Accumulated Constant Offsets.</div><div class="ttdef"><b>Definition:</b> <a href="AccessPath_8h_source.html#l00165">AccessPath.h:165</a></div></div>
|
|
348
|
+
<div class="ttc" id="aclassSVF_1_1AccessPath_html_a4519477605a58d5821d05951a88abcd0"><div class="ttname"><a href="classSVF_1_1AccessPath.html#a4519477605a58d5821d05951a88abcd0">SVF::AccessPath::dump</a></div><div class="ttdeci">std::string dump() const</div><div class="ttdoc">Dump location set.</div><div class="ttdef"><b>Definition:</b> <a href="AccessPath_8cpp_source.html#l00263">AccessPath.cpp:263</a></div></div>
|
|
345
349
|
<div class="ttc" id="aclassSVF_1_1AccessPath_html_aabb6c9600fac408f36b9fde013597245"><div class="ttname"><a href="classSVF_1_1AccessPath.html#aabb6c9600fac408f36b9fde013597245">SVF::AccessPath::LSRelation</a></div><div class="ttdeci">LSRelation</div><div class="ttdef"><b>Definition:</b> <a href="AccessPath_8h_source.html#l00059">AccessPath.h:59</a></div></div>
|
|
350
|
+
<div class="ttc" id="aclassSVF_1_1StInfo_html_a055697f565cb9d73b41110090fe50159"><div class="ttname"><a href="classSVF_1_1StInfo.html#a055697f565cb9d73b41110090fe50159">SVF::StInfo::getOriginalElemType</a></div><div class="ttdeci">const SVFType * getOriginalElemType(u32_t fldIdx) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8cpp_source.html#l00026">SVFValue.cpp:26</a></div></div>
|
|
346
351
|
<div class="ttc" id="aclassSVF_1_1SVFConstantInt_html_a73f04bdfc19261b65164b98787bc2ed4"><div class="ttname"><a href="classSVF_1_1SVFConstantInt.html#a73f04bdfc19261b65164b98787bc2ed4">SVF::SVFConstantInt::getSExtValue</a></div><div class="ttdeci">s64_t getSExtValue() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00983">SVFValue.h:983</a></div></div>
|
|
352
|
+
<div class="ttc" id="aclassSVF_1_1AccessPath_html_a43dc770c4458c6ac58c591974b93fc57"><div class="ttname"><a href="classSVF_1_1AccessPath.html#a43dc770c4458c6ac58c591974b93fc57">SVF::AccessPath::computeConstantByteOffset</a></div><div class="ttdeci">APOffset computeConstantByteOffset() const</div><div class="ttdef"><b>Definition:</b> <a href="AccessPath_8cpp_source.html#l00097">AccessPath.cpp:97</a></div></div>
|
|
347
353
|
<div class="ttc" id="anamespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00051">SVFType.h:51</a></div></div>
|
|
348
354
|
<div class="ttc" id="aclassSVF_1_1SymbolTableInfo_html_a811a3489df0f793c7a5482d31d470a4c"><div class="ttname"><a href="classSVF_1_1SymbolTableInfo.html#a811a3489df0f793c7a5482d31d470a4c">SVF::SymbolTableInfo::getNumOfFlattenElements</a></div><div class="ttdeci">u32_t getNumOfFlattenElements(const SVFType *T)</div><div class="ttdoc">Number of flattened elements of an array or struct.</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00172">SymbolTableInfo.cpp:172</a></div></div>
|
|
349
355
|
<!-- start footer part -->
|