svf-lib 1.0.2184 → 1.0.2185
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-osx/Release-build/bin/ae +0 -0
- package/SVF-osx/Release-build/bin/cfl +0 -0
- package/SVF-osx/Release-build/bin/dvf +0 -0
- package/SVF-osx/Release-build/bin/llvm2svf +0 -0
- package/SVF-osx/Release-build/bin/mta +0 -0
- package/SVF-osx/Release-build/bin/saber +0 -0
- package/SVF-osx/Release-build/bin/svf-ex +0 -0
- package/SVF-osx/Release-build/bin/wpa +0 -0
- package/SVF-osx/Release-build/include/SVF-LLVM/LLVMModule.h +4 -4
- package/SVF-osx/Release-build/include/SVF-LLVM/SVFIRBuilder.h +1 -1
- package/SVF-osx/Release-build/include/SVFIR/SVFVariables.h +6 -7
- package/SVF-osx/Release-build/lib/libSvfCore.a +0 -0
- package/SVF-osx/Release-build/lib/libSvfLLVM.a +0 -0
- package/package.json +1 -1
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -190,17 +190,17 @@ public:
|
|
|
190
190
|
inline void addInstructionMap(const Instruction* inst, CallICFGNode* svfInst)
|
|
191
191
|
{
|
|
192
192
|
CSToCallNodeMap[inst] = svfInst;
|
|
193
|
-
|
|
193
|
+
addToSVFVar2LLVMValueMap(inst, svfInst);
|
|
194
194
|
}
|
|
195
195
|
inline void addInstructionMap(const Instruction* inst, RetICFGNode* svfInst)
|
|
196
196
|
{
|
|
197
197
|
CSToRetNodeMap[inst] = svfInst;
|
|
198
|
-
|
|
198
|
+
addToSVFVar2LLVMValueMap(inst, svfInst);
|
|
199
199
|
}
|
|
200
200
|
inline void addInstructionMap(const Instruction* inst, IntraICFGNode* svfInst)
|
|
201
201
|
{
|
|
202
202
|
InstToBlockNodeMap[inst] = svfInst;
|
|
203
|
-
|
|
203
|
+
addToSVFVar2LLVMValueMap(inst, svfInst);
|
|
204
204
|
}
|
|
205
205
|
|
|
206
206
|
inline void addArgumentMap(const Argument* arg, SVFArgument* svfArg)
|
|
@@ -426,7 +426,7 @@ private:
|
|
|
426
426
|
void initSVFBasicBlock(const Function* func);
|
|
427
427
|
void initDomTree(SVFFunction* func, const Function* f);
|
|
428
428
|
void setValueAttr(const Value* val, SVFValue* value);
|
|
429
|
-
void
|
|
429
|
+
void addToSVFVar2LLVMValueMap(const Value* val, SVFBaseNode* svfBaseNode);
|
|
430
430
|
void buildFunToFunMap();
|
|
431
431
|
void buildGlobalDefToRepMap();
|
|
432
432
|
/// Invoke llvm passes to modify module
|
|
@@ -273,7 +273,7 @@ protected:
|
|
|
273
273
|
LLVMContext& cxt = llvmModuleSet()->getContext();
|
|
274
274
|
ConstantPointerNull* constNull = ConstantPointerNull::get(PointerType::getUnqual(cxt));
|
|
275
275
|
NodeID nullPtr = pag->addConstantNullPtrValNode(llvmModuleSet()->getSVFValue(constNull),pag->getNullPtr(), nullptr);
|
|
276
|
-
llvmModuleSet()->
|
|
276
|
+
llvmModuleSet()->addToSVFVar2LLVMValueMap(
|
|
277
277
|
constNull, pag->getGNode(pag->getNullPtr()));
|
|
278
278
|
setCurrentLocation(constNull, nullptr);
|
|
279
279
|
addBlackHoleAddrEdge(pag->getBlkPtr());
|
|
@@ -529,8 +529,7 @@ public:
|
|
|
529
529
|
};
|
|
530
530
|
|
|
531
531
|
/*
|
|
532
|
-
*
|
|
533
|
-
* Each field-insensitive gep obj node represents all fields of a MemObj (base)
|
|
532
|
+
* Base memory object variable (address-taken variables in LLVM-based languages)
|
|
534
533
|
*/
|
|
535
534
|
class BaseObjVar : public ObjVar
|
|
536
535
|
{
|
|
@@ -540,7 +539,7 @@ class BaseObjVar : public ObjVar
|
|
|
540
539
|
private:
|
|
541
540
|
ObjTypeInfo* typeInfo;
|
|
542
541
|
|
|
543
|
-
const
|
|
542
|
+
const ICFGNode* icfgNode; /// ICFGNode related to the creation of this object
|
|
544
543
|
|
|
545
544
|
protected:
|
|
546
545
|
/// Constructor to create empty ObjVar (for SVFIRReader/deserialization)
|
|
@@ -571,7 +570,7 @@ public:
|
|
|
571
570
|
}
|
|
572
571
|
//@}
|
|
573
572
|
|
|
574
|
-
///
|
|
573
|
+
/// Constructor
|
|
575
574
|
BaseObjVar(const SVFValue* val, NodeID i, ObjTypeInfo* ti, PNODEK ty = BaseObjNode)
|
|
576
575
|
: ObjVar(val, i, ty), typeInfo(ti)
|
|
577
576
|
{
|
|
@@ -582,10 +581,10 @@ public:
|
|
|
582
581
|
return this;
|
|
583
582
|
}
|
|
584
583
|
|
|
585
|
-
/// Get the
|
|
586
|
-
inline const
|
|
584
|
+
/// Get the ICFGNode related to the creation of this object
|
|
585
|
+
inline const ICFGNode* getICFGNode() const
|
|
587
586
|
{
|
|
588
|
-
return
|
|
587
|
+
return icfgNode;
|
|
589
588
|
}
|
|
590
589
|
|
|
591
590
|
/// Return name of a LLVM value
|
|
Binary file
|
|
Binary file
|