diff --git a/App/lib/Phase/BuildPipeline.vp b/App/lib/Phase/BuildPipeline.vp index e76b20c..c8a6326 100644 --- a/App/lib/Phase/BuildPipeline.vp +++ b/App/lib/Phase/BuildPipeline.vp @@ -19,12 +19,12 @@ import lib.core.VLogger as VLogger import lib.core.Handles.HandlesTranslator as HandlesTranslator import lib.core.Handles.HandlesExpr as HandlesExpr import lib.core.Handles.HandlesExprCall as HandlesExprCall -import lib.core.StubMerger as StubMerger -import lib.StubGen.Converter as StubConverter +import lib.Stub.StubMerger as StubMerger +import lib.Stub.StubGen.Converter as StubConverter import lib.Projectrans.Config as Config import lib.core.Gen.Generator as GenGenerator import lib.core.Gen.ExprGenCls as ExprGenCls -import lib.core.StubMergerCollect as StubMergerCollect +import lib.Stub.StubMerger.StubMergerCollect as StubMergerCollect # ============================================================ # BuildPipeline - 编译管线 diff --git a/App/lib/Phase/Phase1/Phase1Main.vp b/App/lib/Phase/Phase1/Phase1Main.vp index 4d1ab96..1f4accb 100644 --- a/App/lib/Phase/Phase1/Phase1Main.vp +++ b/App/lib/Phase/Phase1/Phase1Main.vp @@ -1,4 +1,3 @@ -import lib.core.Gen.GenApi as GenApi import t, c from stdint import * import string @@ -14,21 +13,23 @@ import lib.core.VLogger as VLogger import lib.core.Handles.HandlesTranslator as HandlesTranslator import lib.core.Handles.HandlesExprCall as HandlesExprCall import lib.core.IncludesScanner as IncludesScanner -import lib.core.StubMerger as StubMerger +import lib.Stub.StubMerger as StubMerger import lib.core.Gen.Generator as GenGenerator import lib.core.CompilerFactory as CompilerFactory -import lib.core.BuildPipeline as BuildPipeline +import lib.Phase.BuildPipeline as BuildPipeline import lib.Projectrans.Config as Config -import lib.StubGen.Converter as StubConverter -import lib.core.StubMergerBuild as StubMergerBuild -import lib.core.StubMergerCollect as StubMergerCollect -import lib.core.StubMergerIR as StubMergerIR -import lib.core.StubMergerStore as StubMergerStore +import lib.Stub.StubGen.Converter as StubConverter +import lib.Stub.StubMerger.StubMergerBuild as StubMergerBuild +import lib.Stub.StubMerger.StubMergerCollect as StubMergerCollect +import lib.Stub.StubMerger.StubMergerIR as StubMergerIR +import lib.Stub.StubMerger.StubMergerStore as StubMergerStore +import lib.Phase.Phase1.Phase1Scan as Phase1Scan +import lib.Phase.Phase1.Phase1Topo as Phase1Topo +import lib.Phase.Phase1 as Phase1 + +import lib.core.Gen.GenApi as GenApi -import lib.core.Phase1Scan as Phase1Scan -import lib.core.Phase1Topo as Phase1Topo -import lib.core.Phase1 as Phase1 # ============================================================ # Phase1Main - Phase1 拆分(阶段 E):Phase1Main diff --git a/App/lib/Phase/Phase1/Phase1Scan.vp b/App/lib/Phase/Phase1/Phase1Scan.vp index fdcff1d..ef137bd 100644 --- a/App/lib/Phase/Phase1/Phase1Scan.vp +++ b/App/lib/Phase/Phase1/Phase1Scan.vp @@ -1,4 +1,3 @@ -import lib.core.Gen.GenApi as GenApi import t, c from stdint import * import string @@ -14,21 +13,23 @@ import lib.core.VLogger as VLogger import lib.core.Handles.HandlesTranslator as HandlesTranslator import lib.core.Handles.HandlesExprCall as HandlesExprCall import lib.core.IncludesScanner as IncludesScanner -import lib.core.StubMerger as StubMerger +import lib.Stub.StubMerger as StubMerger import lib.core.Gen.Generator as GenGenerator import lib.core.CompilerFactory as CompilerFactory -import lib.core.BuildPipeline as BuildPipeline +import lib.Phase.BuildPipeline as BuildPipeline import lib.Projectrans.Config as Config -import lib.StubGen.Converter as StubConverter -import lib.core.StubMergerBuild as StubMergerBuild -import lib.core.StubMergerCollect as StubMergerCollect -import lib.core.StubMergerIR as StubMergerIR -import lib.core.StubMergerStore as StubMergerStore +import lib.Stub.StubGen.Converter as StubConverter +import lib.Stub.StubMerger.StubMergerBuild as StubMergerBuild +import lib.Stub.StubMerger.StubMergerCollect as StubMergerCollect +import lib.Stub.StubMerger.StubMergerIR as StubMergerIR +import lib.Stub.StubMerger.StubMergerStore as StubMergerStore +import lib.Phase.Phase1.Phase1Scan as Phase1Scan +import lib.Phase.Phase1.Phase1Topo as Phase1Topo +import lib.Phase.Phase1 as Phase1 + +import lib.core.Gen.GenApi as GenApi -import lib.core.Phase1Topo as Phase1Topo -import lib.core.Phase1Main as Phase1Main -import lib.core.Phase1 as Phase1 # ============================================================ # Phase1Scan - Phase1 拆分(阶段 E):Phase1Scan diff --git a/App/lib/Phase/Phase1/Phase1Topo.vp b/App/lib/Phase/Phase1/Phase1Topo.vp index b92b19b..26ecb62 100644 --- a/App/lib/Phase/Phase1/Phase1Topo.vp +++ b/App/lib/Phase/Phase1/Phase1Topo.vp @@ -13,21 +13,20 @@ import lib.core.VLogger as VLogger import lib.core.Handles.HandlesTranslator as HandlesTranslator import lib.core.Handles.HandlesExprCall as HandlesExprCall import lib.core.IncludesScanner as IncludesScanner -import lib.core.StubMerger as StubMerger +import lib.Stub.StubMerger as StubMerger import lib.core.Gen.Generator as GenGenerator import lib.core.CompilerFactory as CompilerFactory -import lib.core.BuildPipeline as BuildPipeline +import lib.Phase.BuildPipeline as BuildPipeline import lib.Projectrans.Config as Config -import lib.StubGen.Converter as StubConverter -import lib.core.StubMergerBuild as StubMergerBuild -import lib.core.StubMergerCollect as StubMergerCollect -import lib.core.StubMergerIR as StubMergerIR -import lib.core.StubMergerStore as StubMergerStore +import lib.Stub.StubGen.Converter as StubConverter +import lib.Stub.StubMerger.StubMergerBuild as StubMergerBuild +import lib.Stub.StubMerger.StubMergerCollect as StubMergerCollect +import lib.Stub.StubMerger.StubMergerIR as StubMergerIR +import lib.Stub.StubMerger.StubMergerStore as StubMergerStore - -import lib.core.Phase1Scan as Phase1Scan -import lib.core.Phase1Main as Phase1Main -import lib.core.Phase1 as Phase1 +import lib.Phase.Phase1.Phase1Scan as Phase1Scan +import lib.Phase.Phase1.Phase1Topo as Phase1Topo +import lib.Phase.Phase1 as Phase1 # ============================================================ # Phase1Topo - Phase1 拆分(阶段 E):Phase1Topo diff --git a/App/lib/Phase/Phase1/Phase1.vp b/App/lib/Phase/Phase1/__init__.vp similarity index 67% rename from App/lib/Phase/Phase1/Phase1.vp rename to App/lib/Phase/Phase1/__init__.vp index dda7c58..9389798 100644 --- a/App/lib/Phase/Phase1/Phase1.vp +++ b/App/lib/Phase/Phase1/__init__.vp @@ -13,16 +13,16 @@ import lib.core.VLogger as VLogger import lib.core.Handles.HandlesTranslator as HandlesTranslator import lib.core.Handles.HandlesExprCall as HandlesExprCall import lib.core.IncludesScanner as IncludesScanner -import lib.core.StubMerger as StubMerger +import lib.Stub.StubMerger as StubMerger import lib.core.Gen.Generator as GenGenerator import lib.core.CompilerFactory as CompilerFactory -import lib.core.BuildPipeline as BuildPipeline +import lib.Phase.BuildPipeline as BuildPipeline import lib.Projectrans.Config as Config -import lib.StubGen.Converter as StubConverter -import lib.core.StubMergerBuild as StubMergerBuild -import lib.core.StubMergerCollect as StubMergerCollect -import lib.core.StubMergerIR as StubMergerIR -import lib.core.StubMergerStore as StubMergerStore +import lib.Stub.StubGen.Converter as StubConverter +import lib.Stub.StubMerger.StubMergerBuild as StubMergerBuild +import lib.Stub.StubMerger.StubMergerCollect as StubMergerCollect +import lib.Stub.StubMerger.StubMergerIR as StubMergerIR +import lib.Stub.StubMerger.StubMergerStore as StubMergerStore # 全局 mbuddy 指针 _mbuddy: memhub.MemBuddy | t.CPtr diff --git a/App/lib/Phase/Phase2/Phase2.vp b/App/lib/Phase/Phase2/__init__.vp similarity index 97% rename from App/lib/Phase/Phase2/Phase2.vp rename to App/lib/Phase/Phase2/__init__.vp index a34c7fc..7f85b8c 100644 --- a/App/lib/Phase/Phase2/Phase2.vp +++ b/App/lib/Phase/Phase2/__init__.vp @@ -17,17 +17,17 @@ import argparse import lib.core.VLogger as VLogger import lib.core.Handles.HandlesTranslator as HandlesTranslator import lib.core.Handles.HandlesExprCall as HandlesExprCall -import lib.core.BuildPipeline as BuildPipeline +import lib.Phase.BuildPipeline as BuildPipeline import lib.core.IncludesScanner as IncludesScanner import lib.core.CompilerFactory as CompilerFactory -import lib.core.StubMerger as StubMerger +import lib.Stub.StubMerger as StubMerger import lib.Projectrans.Utils as Utils import lib.Projectrans.Config as Config -import lib.core.StubMergerBuild as StubMergerBuild -import lib.core.StubMergerCollect as StubMergerCollect -import lib.core.StubMergerIR as StubMergerIR -import lib.core.StubMergerStore as StubMergerStore -import lib.core.StubMergerTopo as StubMergerTopo +import lib.Stub.StubMerger.StubMergerBuild as StubMergerBuild +import lib.Stub.StubMerger.StubMergerCollect as StubMergerCollect +import lib.Stub.StubMerger.StubMergerIR as StubMergerIR +import lib.Stub.StubMerger.StubMergerStore as StubMergerStore +import lib.Stub.StubMerger.StubMergerTopo as StubMergerTopo # 全局 mbuddy 指针 _mbuddy: memhub.MemBuddy | t.CPtr diff --git a/App/lib/StubGen/Converter.vp b/App/lib/Stub/StubGen/Converter.vp similarity index 100% rename from App/lib/StubGen/Converter.vp rename to App/lib/Stub/StubGen/Converter.vp diff --git a/App/lib/StubGen/VpiReader.vp b/App/lib/Stub/StubGen/VpiReader.vp similarity index 97% rename from App/lib/StubGen/VpiReader.vp rename to App/lib/Stub/StubGen/VpiReader.vp index 873f246..7961fa2 100644 --- a/App/lib/StubGen/VpiReader.vp +++ b/App/lib/Stub/StubGen/VpiReader.vp @@ -14,7 +14,7 @@ import w32.fileio as fileio import lib.core.VLogger as VLogger import lib.core.Handles.HandlesExprCall as HandlesExprCall import lib.core.Handles.HandlesTranslator as HT -import lib.core.StubMergerStore as StubMergerStore +import lib.Stub.StubMerger.StubMergerStore as StubMergerStore import lib.core.Handles.ExprCallTable as ExprCallTable diff --git a/App/lib/StubGen/__init__.vp b/App/lib/Stub/StubGen/__init__.vp similarity index 100% rename from App/lib/StubGen/__init__.vp rename to App/lib/Stub/StubGen/__init__.vp diff --git a/App/lib/StubMerger/StubMergerBuild.vp b/App/lib/Stub/StubMerger/StubMergerBuild.vp similarity index 97% rename from App/lib/StubMerger/StubMergerBuild.vp rename to App/lib/Stub/StubMerger/StubMergerBuild.vp index 56d55fa..74606d3 100644 --- a/App/lib/StubMerger/StubMergerBuild.vp +++ b/App/lib/Stub/StubMerger/StubMergerBuild.vp @@ -14,17 +14,17 @@ import ast import lib.core.VLogger as VLogger import lib.core.IncludesScanner as IncludesScanner import lib.core.Handles.HandlesTranslator as HandlesTranslator -import lib.core.BuildPipeline as BuildPipeline -import lib.StubGen.VpiReader as VpiReader +import lib.Phase.BuildPipeline as BuildPipeline +import lib.Stub.StubGen.VpiReader as VpiReader import lib.Projectrans.Utils as Utils import lib.Projectrans.Config as Config -import lib.core.StubMergerCollect as StubMergerCollect -import lib.core.StubMergerStore as StubMergerStore -import lib.core.StubMergerTopo as StubMergerTopo -import lib.core.StubMergerIR as StubMergerIR -import lib.core.StubMerger as StubMerger +import lib.Stub.StubMerger.StubMergerCollect as StubMergerCollect +import lib.Stub.StubMerger.StubMergerStore as StubMergerStore +import lib.Stub.StubMerger.StubMergerTopo as StubMergerTopo +import lib.Stub.StubMerger.StubMergerIR as StubMergerIR +import lib.Stub.StubMerger as StubMerger # ============================================================ # StubMergerBuild - StubMerger 拆分(阶段 E):StubMergerBuild diff --git a/App/lib/StubMerger/StubMergerCollect.vp b/App/lib/Stub/StubMerger/StubMergerCollect.vp similarity index 94% rename from App/lib/StubMerger/StubMergerCollect.vp rename to App/lib/Stub/StubMerger/StubMergerCollect.vp index 1d4fb34..f8f6400 100644 --- a/App/lib/StubMerger/StubMergerCollect.vp +++ b/App/lib/Stub/StubMerger/StubMergerCollect.vp @@ -13,17 +13,17 @@ import ast import lib.core.VLogger as VLogger import lib.core.IncludesScanner as IncludesScanner import lib.core.Handles.HandlesTranslator as HandlesTranslator -import lib.core.BuildPipeline as BuildPipeline -import lib.StubGen.VpiReader as VpiReader +import lib.Phase.BuildPipeline as BuildPipeline +import lib.Stub.StubGen.VpiReader as VpiReader import lib.Projectrans.Utils as Utils import lib.Projectrans.Config as Config -import lib.core.StubMergerStore as StubMergerStore -import lib.core.StubMergerTopo as StubMergerTopo -import lib.core.StubMergerIR as StubMergerIR -import lib.core.StubMergerBuild as StubMergerBuild -import lib.core.StubMerger as StubMerger +import lib.Stub.StubMerger.StubMergerStore as StubMergerStore +import lib.Stub.StubMerger.StubMergerTopo as StubMergerTopo +import lib.Stub.StubMerger.StubMergerIR as StubMergerIR +import lib.Stub.StubMerger.StubMergerBuild as StubMergerBuild +import lib.Stub.StubMerger as StubMerger # ============================================================ # StubMergerCollect - StubMerger 拆分(阶段 E):StubMergerCollect diff --git a/App/lib/StubMerger/StubMergerIR.vp b/App/lib/Stub/StubMerger/StubMergerIR.vp similarity index 95% rename from App/lib/StubMerger/StubMergerIR.vp rename to App/lib/Stub/StubMerger/StubMergerIR.vp index a01a5d0..51830d9 100644 --- a/App/lib/StubMerger/StubMergerIR.vp +++ b/App/lib/Stub/StubMerger/StubMergerIR.vp @@ -14,17 +14,17 @@ import ast import lib.core.VLogger as VLogger import lib.core.IncludesScanner as IncludesScanner import lib.core.Handles.HandlesTranslator as HandlesTranslator -import lib.core.BuildPipeline as BuildPipeline -import lib.StubGen.VpiReader as VpiReader +import lib.Phase.BuildPipeline as BuildPipeline +import lib.Stub.StubGen.VpiReader as VpiReader import lib.Projectrans.Utils as Utils import lib.Projectrans.Config as Config -import lib.core.StubMergerCollect as StubMergerCollect -import lib.core.StubMergerStore as StubMergerStore -import lib.core.StubMergerTopo as StubMergerTopo -import lib.core.StubMergerBuild as StubMergerBuild -import lib.core.StubMerger as StubMerger +import lib.Stub.StubMerger.StubMergerCollect as StubMergerCollect +import lib.Stub.StubMerger.StubMergerStore as StubMergerStore +import lib.Stub.StubMerger.StubMergerTopo as StubMergerTopo +import lib.Stub.StubMerger.StubMergerBuild as StubMergerBuild +import lib.Stub.StubMerger as StubMerger # ============================================================ # StubMergerIR - StubMerger 拆分(阶段 E):StubMergerIR diff --git a/App/lib/StubMerger/StubMergerStore.vp b/App/lib/Stub/StubMerger/StubMergerStore.vp similarity index 96% rename from App/lib/StubMerger/StubMergerStore.vp rename to App/lib/Stub/StubMerger/StubMergerStore.vp index b2a6970..af5c955 100644 --- a/App/lib/StubMerger/StubMergerStore.vp +++ b/App/lib/Stub/StubMerger/StubMergerStore.vp @@ -13,17 +13,17 @@ import ast import lib.core.VLogger as VLogger import lib.core.IncludesScanner as IncludesScanner import lib.core.Handles.HandlesTranslator as HandlesTranslator -import lib.core.BuildPipeline as BuildPipeline -import lib.StubGen.VpiReader as VpiReader +import lib.Phase.BuildPipeline as BuildPipeline +import lib.Stub.StubGen.VpiReader as VpiReader import lib.Projectrans.Utils as Utils import lib.Projectrans.Config as Config -import lib.core.StubMergerCollect as StubMergerCollect -import lib.core.StubMergerTopo as StubMergerTopo -import lib.core.StubMergerIR as StubMergerIR -import lib.core.StubMergerBuild as StubMergerBuild -import lib.core.StubMerger as StubMerger +import lib.Stub.StubMerger.StubMergerCollect as StubMergerCollect +import lib.Stub.StubMerger.StubMergerTopo as StubMergerTopo +import lib.Stub.StubMerger.StubMergerIR as StubMergerIR +import lib.Stub.StubMerger.StubMergerBuild as StubMergerBuild +import lib.Stub.StubMerger as StubMerger # ============================================================ # StubMergerStore - StubMerger 拆分(阶段 E):StubMergerStore diff --git a/App/lib/StubMerger/StubMergerTopo.vp b/App/lib/Stub/StubMerger/StubMergerTopo.vp similarity index 92% rename from App/lib/StubMerger/StubMergerTopo.vp rename to App/lib/Stub/StubMerger/StubMergerTopo.vp index e4a816f..175a874 100644 --- a/App/lib/StubMerger/StubMergerTopo.vp +++ b/App/lib/Stub/StubMerger/StubMergerTopo.vp @@ -13,17 +13,17 @@ import ast import lib.core.VLogger as VLogger import lib.core.IncludesScanner as IncludesScanner import lib.core.Handles.HandlesTranslator as HandlesTranslator -import lib.core.BuildPipeline as BuildPipeline -import lib.StubGen.VpiReader as VpiReader +import lib.Phase.BuildPipeline as BuildPipeline +import lib.Stub.StubGen.VpiReader as VpiReader import lib.Projectrans.Utils as Utils import lib.Projectrans.Config as Config -import lib.core.StubMergerCollect as StubMergerCollect -import lib.core.StubMergerStore as StubMergerStore -import lib.core.StubMergerIR as StubMergerIR -import lib.core.StubMergerBuild as StubMergerBuild -import lib.core.StubMerger as StubMerger +import lib.Stub.StubMerger.StubMergerCollect as StubMergerCollect +import lib.Stub.StubMerger.StubMergerStore as StubMergerStore +import lib.Stub.StubMerger.StubMergerIR as StubMergerIR +import lib.Stub.StubMerger.StubMergerBuild as StubMergerBuild +import lib.Stub.StubMerger as StubMerger # ============================================================ # StubMergerTopo - StubMerger 拆分(阶段 E):StubMergerTopo diff --git a/App/lib/StubMerger/StubMerger.vp b/App/lib/Stub/StubMerger/__init__.vp similarity index 95% rename from App/lib/StubMerger/StubMerger.vp rename to App/lib/Stub/StubMerger/__init__.vp index 229ab7c..5b228c7 100644 --- a/App/lib/StubMerger/StubMerger.vp +++ b/App/lib/Stub/StubMerger/__init__.vp @@ -13,8 +13,8 @@ import ast import lib.core.VLogger as VLogger import lib.core.IncludesScanner as IncludesScanner import lib.core.Handles.HandlesTranslator as HandlesTranslator -import lib.core.BuildPipeline as BuildPipeline -import lib.StubGen.VpiReader as VpiReader +import lib.Phase.BuildPipeline as BuildPipeline +import lib.Stub.StubGen.VpiReader as VpiReader import lib.Projectrans.Utils as Utils import lib.Projectrans.Config as Config diff --git a/App/lib/core/Handles/ExprCallTable.vp b/App/lib/core/Handles/ExprCallTable.vp index 32afb1a..176642a 100644 --- a/App/lib/core/Handles/ExprCallTable.vp +++ b/App/lib/core/Handles/ExprCallTable.vp @@ -15,7 +15,7 @@ import lib.core.VLogger as VLogger import lib.core.Handles.HandlesBase as HandlesBase import lib.core.Handles.HandlesTranslator as HT import lib.core.Handles.HandlesExpr as HandlesExpr -import lib.core.StubMerger as StubMerger +import lib.Stub.StubMerger as StubMerger import lib.core.Handles.HandlesExprCall as HandlesExprCall diff --git a/App/lib/core/Handles/HandlesExpr.vp b/App/lib/core/Handles/HandlesExpr.vp index 27c26a3..960ff53 100644 --- a/App/lib/core/Handles/HandlesExpr.vp +++ b/App/lib/core/Handles/HandlesExpr.vp @@ -21,7 +21,7 @@ import w32.fileio as fileio import lib.core.Handles.HandlesBase as HandlesBase import lib.core.Handles.HandlesTranslator as HT import lib.core.Handles.HandlesExprCall as HandlesExprCall -import lib.core.StubMerger as StubMerger +import lib.Stub.StubMerger as StubMerger import lib.core.VLogger as VLogger import lib.Projectrans.Config as Config import lib.Projectrans.Utils as Utils diff --git a/App/lib/core/Handles/HandlesTranslator.vp b/App/lib/core/Handles/HandlesTranslator.vp index 2d2e9b9..645b8f7 100644 --- a/App/lib/core/Handles/HandlesTranslator.vp +++ b/App/lib/core/Handles/HandlesTranslator.vp @@ -14,7 +14,7 @@ import lib.core.VLogger as VLogger import lib.core.Handles.HandlesExprCall as HandlesExprCall import lib.core.Handles.HandlesExpr as HandlesExpr import lib.Projectrans.Config as Config -import lib.core.StubMergerBuild as StubMergerBuild +import lib.Stub.StubMerger.StubMergerBuild as StubMergerBuild import lib.core.Handles.ExprCallTable as ExprCallTable import lib.core.Handles.HandlesTranslator as HT import lib.core.Gen.Generator as Generator @@ -532,7 +532,6 @@ class Translator: # 将函数 declare 声明注入到当前模块,解决跨模块函数调用找不到函数的问题 # 严格保证 declare_only == 0 时才注入(避免 Phase A-pre-inc 死锁) if self._imported_modules is not None: - import lib.core.StubMerger as StubMerger # 错误上下文帧:当前模块触发依赖 stub 加载的 import 位置 GenApi.push_trace(GenApi.get_current_file(), cur_imp_lineno) StubMergerBuild.LoadDepVpiIntoModule(