Commit Graph

  • beccb36b66 feat(codegen): 单目 & 支持对构造调用/函数调用结果取址 TermiNexus 2026-09-27 15:15:59 +08:00
  • 4255ab9d32 fix(fstr): f-string 改回每站点栈缓冲 + 禁止逃逸,逃逸点改 stdlib 拷贝 TermiNexus 2026-09-27 14:45:28 +08:00
  • 72a3c483e4 fix(fstr): f-string 结果缓冲改为模块级全局,修 return f-string 的悬空栈指针 TermiNexus 2026-09-27 14:32:46 +08:00
  • ca5473304f fix(gen): 结构体字段表与 LLVM 槽位一致性 fail-fast 护栏 TermiNexus 2026-09-27 14:00:18 +08:00
  • 12bd7b7a16 fix(gen): 收敛 static 跨模块拦截为独立方法,消除类型推断污染 TermiNexus 2026-09-27 13:12:22 +08:00
  • dd56580855 feat(gen,static): static 符号禁止跨模块使用(定义侧登记 + 引用侧三处拦截) TermiNexus 2026-09-27 12:58:51 +08:00
  • 424dbd7379 chore(gen): 加 [MODSHA1] 临时诊断定位 string.split 模块名解析失败(定位后删除) TermiNexus 2026-09-27 12:52:03 +08:00
  • 87f5b1026c chore(gen): 删除 CallGenDispatch 的 [MDISP] 临时探针及其专用 import stdio TermiNexus 2026-09-27 12:32:52 +08:00
  • 9455db0eec feat(gen,type): callable[] / callable[[]] / callable[[A,B],R] 与 t.Callable 逐点等价 TermiNexus 2026-09-27 12:30:47 +08:00
  • a76cf55a2d feat(gen,type): 注解位置的小写裸名 callable 等价 t.Callable(i8*) TermiNexus 2026-09-27 12:28:58 +08:00
  • c387926977 feat(gen,type): 支持无签名函数指针 t.Callable / t.Callable[] / t.Callable[[]] TermiNexus 2026-09-27 12:25:52 +08:00
  • 7c53a8744d fix(gen,match): 穷尽 match 不再误报流程掉出末尾;default 臂直译不再经 def_arr 反查 TermiNexus 2026-09-27 12:17:14 +08:00
  • cf815b17de feat(gen): volatile 构造写入落 LLVM volatile(逐字段 store + 构造三方法屏障) TermiNexus 2026-09-27 12:01:22 +08:00
  • 7d28c9649e feat(gen,err): CastError 定位到出错表达式;vpi 生成 fail-fast;函数属性接受直接形态 TermiNexus 2026-09-27 11:41:11 +08:00
  • f084da7c01 feat(gen): 重复声明改为无条件失败(不再比较类型),global 后再注解同样报错 TermiNexus 2026-09-27 08:55:08 +08:00
  • 78fc7313fb feat(gen): 同名全局 + 注解冲突优先报重复定义 TermiNexus 2026-09-27 08:50:18 +08:00
  • f0309e4904 fix(gen,renum): 指针操作符目标写入落盘 + REnum tag 三侧口径统一,修 kind() CastError TermiNexus 2026-09-27 00:19:44 +08:00
  • bcf66edebe fix(vpi): 防环访问表表满不再静默丢标记,改为 ×2 扩容 + fail-fast TermiNexus 2026-09-26 21:25:23 +08:00
  • 373a20c3e5 perf(prof,gen): 编译热点优化 + 内存池 OOM 诊断接线 + REnum 指针载荷修正 TermiNexus 2026-09-26 19:27:23 +08:00
  • 676c19c362 feat(asm,err,typedef): 支持 __asm__/__llvmir__ 裸名与 typedef 语法糖;解析报错统一 Python 风格 traceback TermiNexus 2026-09-25 13:11:16 +08:00
  • a7af34bd7e 修正了部分代码的表达方式,最后可用版本,mlirlite 已基本完善 TermiNexus 2026-09-23 17:41:49 +08:00
  • 951b89be36 修正了部分代码的表达方式,最后可用版本,正在为 mlirlite 做准备 TermiNexus 2026-09-23 16:09:32 +08:00
  • a5ceb3d4eb 增加 JIT REPL TermiNexus 2026-09-21 16:17:19 +08:00
  • 9910e05760 修复了一些错误,更改了一点语法 TermiNexus 2026-09-18 20:00:40 +08:00
  • 9e2ccbfab7 将部分 | t.CPtr 修正为 rawptr[T] TermiNexus 2026-09-18 17:56:24 +08:00
  • eb01a45024 修复了一些问题 TermiNexus 2026-09-17 14:51:18 +08:00
  • cb0836de8a 清理了 t.CVoid TermiNexus 2026-09-16 16:06:48 +08:00
  • 9a191daa8d 错拼 rowptr 改为 rawptr TermiNexus 2026-09-16 11:42:28 +08:00
  • 7cba4cbc95 chore: 清理超长历史注释,并一并提交并行会话的代码改动 TermiNexus 2026-09-16 11:27:05 +08:00
  • b28f20cce7 chore: 清理调试打印与失效 import TermiNexus 2026-09-16 10:32:40 +08:00
  • 429de97083 fix(call): 泛型特化类跨模块 declare 按模板 vpi 注解对齐形参口径 TermiNexus 2026-09-16 09:31:57 +08:00
  • a83d183abb fix(gen/call): 跨模块调用 SSA 整型实参按定义侧形参扩宽 TermiNexus 2026-09-15 23:58:40 +08:00
  • 31b8dccffd fix(stub): declare 侧识别 t.CPtr[...] 段,与定义侧指针层级口径对齐 TermiNexus 2026-09-15 23:58:39 +08:00
  • de86a1ed70 fix(gen/for): 负数字面量 stop 的 range 循环退回有符号谓词,修复 _find_provider 死循环 TermiNexus 2026-09-15 22:45:28 +08:00
  • 296f6a739e fix(gen/renum): REnum 补齐 Assign 形式无载荷变体的变体表注册 TermiNexus 2026-09-15 22:45:28 +08:00
  • 617d4ea911 fix(gen/assign): 模块级与 nonlocal 分支补写赋值注解上下文通道 TermiNexus 2026-09-15 21:52:42 +08:00
  • 5a59432733 fix(gen): 泛型裸名构造补齐注解上下文与关键字实参两条推断来源 TermiNexus 2026-09-15 21:52:41 +08:00
  • 6394ea30e2 fix(call): 泛型类裸名构造按 __init__ 签名对齐类型实参并禁止静默默认 int TermiNexus 2026-09-15 21:33:54 +08:00
  • b27633c86e fix(Gen/Type): long/unsigned long 按目标平台取宽,Windows 对齐 TPC LLP64(ULONG/LONG => i32) TermiNexus 2026-09-15 20:56:52 +08:00
  • 813f0157e3 fix(Gen/Expr): 类名不再被当模块级全局变量制造引用,消除 ASan 构建 undefined symbol TermiNexus 2026-09-15 20:47:15 +08:00
  • 592400a1ea fix(asan): 并行 llc 任务在 ASan 模式下改用插桩后的 .asan.ll 作输入 TermiNexus 2026-09-15 20:47:14 +08:00
  • 8312e653e8 fix(CodeGen): 裸结构体形参按 C ABI 按值、修正 |t.CPtr 指针层级,对齐 TPC 并消除签名发散 TermiNexus 2026-09-15 20:47:14 +08:00
  • 31df298341 fix(gen): 修 REnum match case 静默丢弃与 CDefine 负 64 位常量截断,补 void 注解放行、移植类型定义前移 TermiNexus 2026-09-15 19:11:54 +08:00
  • 60100fa6af fix(type): 联合类型 A|t.CPtr 判据由白名单改为解析成功即保留,stub 侧同步 TermiNexus 2026-09-15 13:52:21 +08:00
  • c1859a111c fix(tpv): 撤销 llc 输出重定向,回归继承父控制台并保留 GetLastError 与退出码诊断 TermiNexus 2026-09-14 23:02:59 +08:00
  • 05d5bfbf37 fix(tpv): 修 CreateProcessA 重定向未启动外部命令,并把捕获输出移到 error 之前 TermiNexus 2026-09-14 22:14:45 +08:00
  • 82f16127c0 fix(tpv): llc 日志文件句柄初始化改用 NULL,避免整数常量赋给指针类型 TermiNexus 2026-09-14 21:19:20 +08:00
  • 785741026f fix(tpv): llc 失败日志附带 stderr|stdout、退出码与完整命令 TermiNexus 2026-09-14 20:21:57 +08:00
  • 51daf28297 fix(expr): 三元表达式 else 分支按 then 的指针类型下传目标类型 TermiNexus 2026-09-14 19:26:46 +08:00
  • 7fabf886fc fix(vpi): 返回注解索引重建的键长常量拼写修正为 VPI_KEY_LEN TermiNexus 2026-09-14 16:54:36 +08:00
  • a46391bf42 fix(expr): coerce_to_type 拓宽方向判定改传 builder.Pool,修正未定义实参 pool TermiNexus 2026-09-14 15:48:09 +08:00
  • b918321f77 perf(callgen): text.ll 存在性改属性查询 + 返回类型按模块一次性缓存 TermiNexus 2026-09-14 15:26:10 +08:00
  • ce612c8e57 perf(lookup): 恢复名字索引可信未命中即确无的短路(Ty 索引保持停用) TermiNexus 2026-09-14 12:59:27 +08:00
  • 4ed7f3909a fix(lookup): 索引未命中一律回退原线性扫描,停用不可信的 Ty 索引判定 TermiNexus 2026-09-14 12:41:27 +08:00
  • e7f47735ed perf(callgen): find_func_in_module 以 function_get_name_len 替代 strlen 热点 TermiNexus 2026-09-14 08:26:18 +08:00
  • cb430bf00a perf(gen): 结构体/CTypedef 查名加索引,热点线性查名补首字符预筛 TermiNexus 2026-09-14 04:15:36 +08:00
  • e8db102b9e perf(gen): 结构体按模块查找与 ctypedef 跨度查找加首字节预筛 TermiNexus 2026-09-14 00:09:06 +08:00
  • 16472a61d9 perf(lookup): 热点线性查找表加开放寻址名索引,O(n) 降为期望 O(1) TermiNexus 2026-09-14 00:05:12 +08:00
  • a9819e4123 fix(gen): 方法分派与 list 内建判定改用接收者实际特化名,根治 list[int].get 截断 TermiNexus 2026-09-13 21:11:33 +08:00
  • 76df3f0225 perf(gen): 结构体/类型查找去线性化并守卫全量遍历残量 TermiNexus 2026-09-13 18:56:16 +08:00
  • 0dd7511a9b fix(tpv): 修常量折成0致alloc(0)与多处fail-fast,并落地热点优化 TermiNexus 2026-09-13 17:50:03 +08:00
  • af2c66e7d7 chore(tpv): 永久池扩容至 1 GiB TermiNexus 2026-09-12 23:14:52 +08:00
  • eef84657a1 fix(tpv): 修正 REnum 表按名查找与 match 分派,恢复 str() 指针强转 TermiNexus 2026-09-12 23:14:23 +08:00
  • e0e024ee93 fix(tpv): 注解裸名按 from-import 归属查找(D26 闭环) TermiNexus 2026-09-12 19:37:55 +08:00
  • ea2abba574 refactor(tpv): 删除 _deps_pending 置位面与 Phase A pending 多遍收敛机制 TermiNexus 2026-09-12 19:24:52 +08:00
  • 17f109e204 fix(tpv): 修复 vpi 重导出包前缀与 D25 变量名悬垂,补齐 fatal_error 刷盘 TermiNexus 2026-09-12 19:00:19 +08:00
  • 626f79cbd1 fix(tpv): vpi 相对导入补回包前缀(D26) TermiNexus 2026-09-12 15:59:37 +08:00
  • 3c45895878 fix(tpv): alloca 退化守卫收窄到「裸泛型模板基类」形态(避免误杀同名重声明换类型) TermiNexus 2026-09-12 15:24:23 +08:00
  • 590a6a2bbe fix(tpv): 复用的 alloca 与注解类型不一致时 fail-fast(D25 alloca 退化根治) TermiNexus 2026-09-12 15:13:41 +08:00
  • b206e7d9c1 fix(tpv): 泛型类型实参禁止静默默认 int(D25 fail-fast 两处) TermiNexus 2026-09-12 14:52:23 +08:00
  • ced50bd78b fix(tpv): 注解 mangled 名算键统一——补回丢失的 from_imports(D25 根因第 1 步) TermiNexus 2026-09-12 14:32:57 +08:00
  • 967095df5b refactor(tpv): _deps_pending 置位收敛到唯一入口 _MarkDepsPending(S4 第一步) TermiNexus 2026-09-12 13:53:20 +08:00
  • 7e68e76ec4 refactor(tpv): SHA1 前缀判定收敛到 GenApi 唯一真源(C10/D3 收尾) TermiNexus 2026-09-12 12:59:01 +08:00
  • 471bedbcf4 fix(tpv): 去掉条目指针数组往返,改上界/量长直写(修自举 ASan strcat -1 崩溃) TermiNexus 2026-09-12 12:43:08 +08:00
  • 82eea2719f refactor(tpv): rowptr[T] 迁移 + D 表定长缓冲改精确分配 + SHA1 前缀判定收敛(D1/D3/D4/D5/D6/D7/C10) TermiNexus 2026-09-12 11:09:35 +08:00
  • 7471cc64f9 docs(tpv): 精简 CompilerFactory 装配设计注释块 TermiNexus 2026-09-12 10:52:00 +08:00
  • 679758c05b refactor(tpv): 删无符号判定的旧字符串兜底,真源唯一(S4 去字符串化收尾) TermiNexus 2026-09-12 10:26:51 +08:00
  • cc17a8f8db refactor(tpv): 去掉函数内懒导入,改用顶层 import TermiNexus 2026-09-12 10:23:08 +08:00
  • 7fbf69ae63 fix(tpv): InternSpec 表满改为 fatal(不再返回 None 静默丢类型信息) TermiNexus 2026-09-12 10:21:27 +08:00
  • 1039969f69 refactor(tpv): CPtr 标记语义定为注解基名精确比较(第 5 处收敛) TermiNexus 2026-09-12 10:12:01 +08:00
  • ae63f4f6ab refactor(tpv): 容器判断改基名精确比较(SpecTypeNameBaseIs) TermiNexus 2026-09-12 10:10:14 +08:00
  • 19fca19ca7 refactor(tpv): get_llvm_type_bits 双副本收敛到 TSpec.SpecTypeBits TermiNexus 2026-09-11 23:14:51 +08:00
  • 41c5908c5e refactor(tpv): Y 类兜底改 fail-fast(vpi 声明返回/形参 + vpi 类型文本) TermiNexus 2026-09-11 22:46:39 +08:00
  • db8220801c refactor(tpv): Z 类兜底改 fail-fast(返回类型/模块级变量/枚举成员) TermiNexus 2026-09-11 22:17:45 +08:00
  • cc3359faea refactor(tpv): 形参类型注解解析失败改 fail-fast(不再静默用 i32) TermiNexus 2026-09-11 22:14:10 +08:00
  • 22c71388d4 docs(tpv): 更新 TypeSpec 注释(IsPtrElement 已删,仅容器种类待后续) TermiNexus 2026-09-11 22:09:32 +08:00
  • a4bc5dc0ce refactor(tpv): 删除 IsPtrElement 字段,指针元素语义承载于 Spec.ElemBits TermiNexus 2026-09-11 22:09:18 +08:00
  • e55ec5fde0 docs(tpv): 更新 TypeSpec 设计注释至 S4 现状(TypeStr/AnnotClassName 已删) TermiNexus 2026-09-11 22:06:20 +08:00
  • 9e461d21cb refactor(tpv): 删除 AnnotClassName 字段,注解类名统一承载于 Spec.SourceName TermiNexus 2026-09-11 22:06:00 +08:00
  • 95133d8483 refactor(tpv): 变量/字段注解类名读取统一走 Spec.SourceName 封装 TermiNexus 2026-09-11 22:02:28 +08:00
  • 8aad248c25 fix(tpv): SpecWithSign 不复制 SourceName,避免驻留表来源名污染 TermiNexus 2026-09-11 21:54:29 +08:00
  • 029a423f55 feat(tpv): Spec 增 SourceName 承接注解来源名(类名块基础设施) TermiNexus 2026-09-11 21:54:10 +08:00
  • 7028399366 refactor(tpv): 无符号判定切读 Spec(条目级 TS_UINT 优先) TermiNexus 2026-09-11 21:51:11 +08:00
  • 7fedf8daad feat(tpv): Spec 注解侧填符号性(SpecWithSign + 变量/字段接入) TermiNexus 2026-09-11 21:48:23 +08:00
  • 0a108e6289 refactor(tpv): 删除 FuncEntry.TypeStr 旧路径,函数类型文本改由 Spec 派生 TermiNexus 2026-09-11 21:33:58 +08:00
  • a173ba0296 refactor(tpv): ClassGenVTable vtable 类型文本切到 SpecToLLVMText TermiNexus 2026-09-11 21:21:01 +08:00
  • 0e973d5f23 feat(tpv): SpecToLLVMText 格式化器与函数签名一致性闸门,并修驻留键静默截断 TermiNexus 2026-09-11 21:13:28 +08:00
  • ff7caa57e8 feat(tpv): S3 条目双写接线,三个唯一创建点填 TypeSpec TermiNexus 2026-09-11 20:43:17 +08:00
  • f0deff931d refactor(tpv): S3 无符号判定切读真源,指针层级收拢到 TypeSpec TermiNexus 2026-09-11 20:40:26 +08:00
  • b7100e9dc1 feat(tpv): S2 落无符号判定双写闸门,并修 i8 拓宽丢符号与 WCHARPTR 旧判 TermiNexus 2026-09-11 20:32:55 +08:00