清理了 t.CVoid

This commit is contained in:
TermiNexus committed 2026-09-16 16:06:48 +08:00
1 parent 9a191daa8d
commit cb0836de8a
43 files changed
+274 -355

No files matched your search

+3 -6
View File
@@ -569,8 +569,7 @@ def run_llc_parallel(tasks: bytes, task_count: int, max_threads: int) -> int:
# --phase2command 模式:不 spawn 线程,把 opt(ASan)+ llc 命令全部写入 bat
if _phase2_cmd_path is not None:
for pi2 in range(task_count):
tsk_p: LlcTask | t.CPtr = (LlcTask | t.CPtr)(t.CVoid(
uint64(tasks) + sizet(pi2) * LlcTask.__sizeof__(), t.CPtr))
tsk_p: LlcTask | t.CPtr = (LlcTask | t.CPtr)(uint64(tasks) + sizet(pi2) * LlcTask.__sizeof__())
if tsk_p is None:
continue
if tsk_p.OptCmd is not None:
@@ -596,8 +595,7 @@ def run_llc_parallel(tasks: bytes, task_count: int, max_threads: int) -> int:
batch_n = task_count - batch_start
# 本批 spawn
for j in range(batch_n):
tsk: LlcTask | t.CPtr = (LlcTask | t.CPtr)(t.CVoid(
uint64(tasks) + sizet(batch_start + j) * slot_size, t.CPtr))
tsk: LlcTask | t.CPtr = (LlcTask | t.CPtr)(uint64(tasks) + sizet(batch_start + j) * slot_size)
th: vthreading.Thread | t.CPtr = vthreading.Thread(_llc_task_worker, t.CPtr(tsk))
th.start()
# start() 后立即取出句柄(Thread 对象栈地址可能被后续构造复用,
@@ -611,8 +609,7 @@ def run_llc_parallel(tasks: bytes, task_count: int, max_threads: int) -> int:
w32.win32base.CloseHandle(h_j)
# 本批结果检查
for j in range(batch_n):
tsk2: LlcTask | t.CPtr = (LlcTask | t.CPtr)(t.CVoid(
uint64(tasks) + sizet(batch_start + j) * slot_size, t.CPtr))
tsk2: LlcTask | t.CPtr = (LlcTask | t.CPtr)(uint64(tasks) + sizet(batch_start + j) * slot_size)
if tsk2 is not None and tsk2.Result != 0:
# 失败:打印模块 sha1 + 退出码 + 完整命令(.ll 路径即命令末参数)
VLogger.error(f"llc 编译失败: {(tsk2.ModuleSha1 if tsk2.ModuleSha1 is not None else "?")} (exit={tsk2.ExitCode} cmd={(tsk2.LlcCmd if tsk2.LlcCmd is not None else "?")})", "LLC")