From 76759319bfda26ef07e97706d58edc5c6c300684 Mon Sep 17 00:00:00 2001
From: jumormt <jumormt@163.com>
Date: Fri, 10 Jan 2025 11:06:23 +1100
Subject: [PATCH] change position of param to make it more logical

---
 svf-llvm/lib/SVFIRBuilder.cpp    |  4 ++--
 svf/include/SVFIR/SVFIR.h        |  5 ++---
 svf/include/SVFIR/SVFVariables.h |  4 ++--
 svf/lib/SVFIR/SVFVariables.cpp   | 10 +++++-----
 4 files changed, 11 insertions(+), 12 deletions(-)

diff --git a/svf-llvm/lib/SVFIRBuilder.cpp b/svf-llvm/lib/SVFIRBuilder.cpp
index 173ba2f52..67a8eda0a 100644
--- a/svf-llvm/lib/SVFIRBuilder.cpp
+++ b/svf-llvm/lib/SVFIRBuilder.cpp
@@ -246,9 +246,9 @@ void SVFIRBuilder::initialiseNodes()
             pag->addFunValNode(cgn, iter->second, icfgNode);
         } else if (auto argval = SVFUtil::dyn_cast<Argument>(llvmValue)) {
             pag->addArgValNode(
+                iter->second, argval->getArgNo(), icfgNode,
                 llvmModuleSet()->getCallGraphNode(argval->getParent()),
-                argval->getArgNo(), LLVMUtil::isArgOfUncalledFunction(argval), iter->second,
-                icfgNode);
+                LLVMUtil::isArgOfUncalledFunction(argval));
             llvmModuleSet()->addToLLVMVal2SVFVarMap(
                 argval, pag->getGNode(iter->second));
         }
diff --git a/svf/include/SVFIR/SVFIR.h b/svf/include/SVFIR/SVFIR.h
index 36970934d..f4f04d904 100644
--- a/svf/include/SVFIR/SVFIR.h
+++ b/svf/include/SVFIR/SVFIR.h
@@ -578,10 +578,9 @@ class SVFIR : public IRGraph
         return addValNode(nullptr, node, i);
     }
 
-    NodeID addArgValNode(const CallGraphNode* callGraphNode, u32_t argNo,
-                         bool isUncalled, NodeID i, const ICFGNode* icfgNode) {
+    NodeID addArgValNode(NodeID i, u32_t argNo, const ICFGNode* icfgNode, const CallGraphNode* callGraphNode, bool isUncalled) {
         ArgValVar* node =
-            new ArgValVar(i, callGraphNode, argNo, isUncalled, icfgNode);
+            new ArgValVar(i, argNo, icfgNode, callGraphNode, isUncalled);
         return addValNode(nullptr, node, i);
     }
 
diff --git a/svf/include/SVFIR/SVFVariables.h b/svf/include/SVFIR/SVFVariables.h
index 9f2df3a89..d8cb33679 100644
--- a/svf/include/SVFIR/SVFVariables.h
+++ b/svf/include/SVFIR/SVFVariables.h
@@ -428,8 +428,8 @@ class ArgValVar: public ValVar {
     //@}
 
     /// Constructor
-    ArgValVar(NodeID i, const CallGraphNode* callGraphNode, u32_t argNo,
-              bool isUncalled, const ICFGNode* icn, PNODEK ty = ArgNode);
+    ArgValVar(NodeID i, u32_t argNo, const ICFGNode* icn, const CallGraphNode* callGraphNode,
+              bool isUncalled = false, PNODEK ty = ArgNode);
 
     /// Return name of a LLVM value
     inline const std::string getValueName() const
diff --git a/svf/lib/SVFIR/SVFVariables.cpp b/svf/lib/SVFIR/SVFVariables.cpp
index 0e109a53f..f70053d31 100644
--- a/svf/lib/SVFIR/SVFVariables.cpp
+++ b/svf/lib/SVFIR/SVFVariables.cpp
@@ -145,11 +145,11 @@ const std::string ObjVar::toString() const
     return rawstr.str();
 }
 
-ArgValVar::ArgValVar(SVF::NodeID i, const SVF::CallGraphNode* callGraphNode,
-                     SVF::u32_t argNo, bool isUncalled,
-                     const SVF::ICFGNode* icn, SVF::SVFVar::PNODEK ty)
-    : ValVar(callGraphNode->getFunction()->getArg(argNo), i, ty, icn), cgNode(callGraphNode),
-      argNo(argNo), uncalled(isUncalled)
+ArgValVar::ArgValVar(NodeID i, u32_t argNo, const ICFGNode* icn,
+                     const SVF::CallGraphNode* callGraphNode, bool isUncalled,
+                     SVF::SVFVar::PNODEK ty)
+    : ValVar(callGraphNode->getFunction()->getArg(argNo), i, ty, icn),
+      cgNode(callGraphNode), argNo(argNo), uncalled(isUncalled)
 {
     isPtr =
         callGraphNode->getFunction()->getArg(argNo)->getType()->isPointerTy();