svf-lib 1.0.2525 → 1.0.2527
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-linux-aarch64/bin/ae +0 -0
- package/SVF-linux-aarch64/include/AE/Svfexe/AbstractInterpretation.h +5 -4
- package/SVF-linux-aarch64/lib/libSvfCore.so.3.3 +0 -0
- package/SVF-linux-x86_64/bin/ae +0 -0
- package/SVF-linux-x86_64/include/AE/Svfexe/AbstractInterpretation.h +5 -4
- package/SVF-linux-x86_64/lib/libSvfCore.so.3.3 +0 -0
- package/package.json +1 -1
package/SVF-linux-aarch64/bin/ae
CHANGED
|
Binary file
|
|
@@ -156,9 +156,10 @@ private:
|
|
|
156
156
|
/// Initialize abstract state for the global ICFG node and process global statements
|
|
157
157
|
virtual void handleGlobalNode();
|
|
158
158
|
|
|
159
|
-
///
|
|
160
|
-
|
|
161
|
-
|
|
159
|
+
/// Pull-based state merge: read abstractTrace[pred] for each predecessor,
|
|
160
|
+
/// apply branch refinement for conditional IntraCFGEdges, and join into
|
|
161
|
+
/// abstractTrace[node]. Returns true if at least one predecessor had state.
|
|
162
|
+
bool mergeStatesFromPredecessors(const ICFGNode* node);
|
|
162
163
|
|
|
163
164
|
/// Check if the branch on intraEdge is feasible under abstract state as
|
|
164
165
|
bool isBranchFeasible(const IntraCFGEdge* intraEdge, AbstractState& as);
|
|
@@ -242,7 +243,7 @@ private:
|
|
|
242
243
|
// there data should be shared with subclasses
|
|
243
244
|
Map<std::string, std::function<void(const CallICFGNode*)>> func_map;
|
|
244
245
|
|
|
245
|
-
Map<const ICFGNode*, AbstractState> abstractTrace; // abstract states for nodes
|
|
246
|
+
Map<const ICFGNode*, AbstractState> abstractTrace; // abstract states for nodes
|
|
246
247
|
Set<const ICFGNode*> allAnalyzedNodes; // All nodes ever analyzed (across all entry points)
|
|
247
248
|
std::string moduleName;
|
|
248
249
|
|
|
Binary file
|
package/SVF-linux-x86_64/bin/ae
CHANGED
|
Binary file
|
|
@@ -156,9 +156,10 @@ private:
|
|
|
156
156
|
/// Initialize abstract state for the global ICFG node and process global statements
|
|
157
157
|
virtual void handleGlobalNode();
|
|
158
158
|
|
|
159
|
-
///
|
|
160
|
-
|
|
161
|
-
|
|
159
|
+
/// Pull-based state merge: read abstractTrace[pred] for each predecessor,
|
|
160
|
+
/// apply branch refinement for conditional IntraCFGEdges, and join into
|
|
161
|
+
/// abstractTrace[node]. Returns true if at least one predecessor had state.
|
|
162
|
+
bool mergeStatesFromPredecessors(const ICFGNode* node);
|
|
162
163
|
|
|
163
164
|
/// Check if the branch on intraEdge is feasible under abstract state as
|
|
164
165
|
bool isBranchFeasible(const IntraCFGEdge* intraEdge, AbstractState& as);
|
|
@@ -242,7 +243,7 @@ private:
|
|
|
242
243
|
// there data should be shared with subclasses
|
|
243
244
|
Map<std::string, std::function<void(const CallICFGNode*)>> func_map;
|
|
244
245
|
|
|
245
|
-
Map<const ICFGNode*, AbstractState> abstractTrace; // abstract states for nodes
|
|
246
|
+
Map<const ICFGNode*, AbstractState> abstractTrace; // abstract states for nodes
|
|
246
247
|
Set<const ICFGNode*> allAnalyzedNodes; // All nodes ever analyzed (across all entry points)
|
|
247
248
|
std::string moduleName;
|
|
248
249
|
|
|
Binary file
|