Commit Graph

185 Commits

Author SHA1 Message Date
pjh123 02dabbb845 fix: 计算成员复合赋值保规范求值序 2026-08-14 11:41:50 +08:00
pjh123 1a62af5485 perf: 常量字符串键计算成员折叠走 IC 静态路径 2026-08-14 10:20:32 +08:00
pjh123 cc835f5304 test: 类编译断言更新为新属性描述符字节码布局 2026-08-14 05:45:46 +08:00
pjh123 12ebdb8c0e perf: 对象字面量批量构造键序预建 shape 2026-08-14 04:47:15 +08:00
爱特每羊队 4303462d19 feat: compiler/test262 runner 接线 + 模块顶层 this 绑定
- Compiler::compile_module:Emitter::emit_program_module → 统一 IR 管线(DCE/regalloc/lower/flatten)
- CompiledModule.is_es_module:VM run 时模块顶层 this=undefined(脚本仍为全局对象)
- 全局注册 __moduleLinkGet
- test262 runner:Test262ModuleLoader(相对路径解析 + import attributes 判定 json/text/bytes),is_module 走 compile_module
2026-08-12 17:37:33 +08:00
爱特每羊队 ec2efa7b6b fix: capture object keys and scope loop bindings 2026-08-11 14:17:45 +08:00
爱特每羊队 d3ed1113ef feat: 编译管线/类型层 crate 补全多级日志宏 + 关键路径日志 2026-08-10 17:56:28 +08:00
爱特每羊队 c90c610e15 perf: 子模块树改 Arc 共享,run() 免深拷贝模块树 2026-08-10 17:23:29 +08:00
爱特每羊队 eaf4825e4f perf: 函数调用 bytecode 改 Arc 共享(O(1) 帧切换 + IC 写时复制) 2026-08-10 15:08:51 +08:00
爱特每羊队 56ef0efec5 fix: 结构哈希补全全部变体(消除 code cache 确定性碰撞) 2026-08-10 11:49:50 +08:00
爱特每羊队 915dedb151 feat: class 私有成员语义(字段/方法/访问器 + brand 检查 + 契约修复) 2026-08-09 11:08:36 +08:00
爱特每羊队 3a8bf56a68 fix: 全量单测修复(flatten 健壮性 + 测试链路补 flatten + 断言对齐规范) 2026-08-08 16:03:24 +08:00
爱特每羊队 6c7b10d6c5 feat: 对象字面量 spread({...obj} 展开可枚举自有属性) 2026-08-08 11:24:09 +08:00
爱特每羊队 2777b00c82 feat: 调用实参 spread(f(...args) / new F(...args) / super(...args)) 2026-08-08 10:33:16 +08:00
爱特每羊队 d1675c217d fix(vm): 子模块全局扁平化根治逃逸闭包上下文错位 2026-08-07 10:49:15 +08:00
爱特每羊队 328b8a3ddc docs: 补充注释与格式化 2026-08-06 23:10:27 +08:00
爱特每羊队 a763e7ab75 feat(compiler): 管线接入 liveness/精确DCE/RegAlloc + --no-regalloc flag(D-17/D-18) 2026-08-06 17:56:55 +08:00
爱特每羊队 604ecca793 test(ir): 迁移 lowering 测试到 oxide_ir(测试随实现落位) 2026-08-06 14:11:54 +08:00
爱特每羊队 be52064765 test(compiler): compile_multiple_stmts 锚按 D-11 放宽为存在性断言
DCE 默认开启删除死 '1; 2' 链的 LOAD_CONST,仅剩顶层值 '3'。
精确计数断言 load_count >= 3 实测失败,放宽为 any(LOAD_CONST)。
2026-08-06 12:16:51 +08:00
爱特每羊队 bbba23b93a feat(compiler): Compiler 增加 enable_dce 字段与 with_dce 开关(D-10)
- unit struct 改带字段 struct,new() 默认开启 DCE
- compile 在 emit 与 lower 之间插入 oxide_dce::dce(nested 不递归 D-03)
- Cargo.toml 追加 oxide_dce path 依赖;dev 环经 resolver v2 解析通过
2026-08-06 11:45:26 +08:00
爱特每羊队 f461235f04 docs: 添加 Rustdoc 注释 2026-08-05 21:46:47 +08:00
爱特每羊队 bbdfca1a1c refactor(compiler): 拆分 oxide_emit 为独立 emit pass crate(依赖倒置) 2026-08-05 20:13:18 +08:00
爱特每羊队 9f02985a82 refactor(ir): 拆分 oxide_ir 为独立 crate 2026-08-05 19:34:44 +08:00
爱特每羊队 b93847564e refactor(compiler): 拆分闭包分析与预扫描模块,拆分函数体编译子步骤 2026-08-05 19:29:02 +08:00
爱特每羊队 b611e26f11 fix(compiler): 完善闭包捕获(cell 索引稳定、参数遮蔽、函数/类名捕获、b 槽立即数) 2026-08-05 19:19:29 +08:00
爱特每羊队 3390b61453 fix(compiler): 重写闭包捕获分析为 AST 级,修复 MAKE_CELL 时序 2026-08-05 18:41:48 +08:00
爱特每羊队 845ba2884a chore(compiler): 清理过时 dead_code 标注与空代码块 2026-08-05 18:26:46 +08:00
爱特每羊队 f12c2a451e test(ir): 补 IR 结构测试 2026-08-05 18:03:21 +08:00
爱特每羊队 28ccfce1b7 test(compiler): 补薄弱域字节码断言测试 2026-08-05 18:01:42 +08:00
爱特每羊队 3931d2062e refactor(compiler): 抽取 assemble_ir 共用出口组装 2026-08-05 17:55:32 +08:00
爱特每羊队 1c328f5081 refactor(compiler): 原子切换 emit 产出符号化 IR 2026-08-05 17:52:42 +08:00
爱特每羊队 097153ec08 feat(ir): 实现 IRFunction 到字节码的 lowering 转换 2026-08-05 17:24:35 +08:00
爱特每羊队 2a3a9a1412 feat(ir): 新增 Operand/Inst/IRFunction 类型系统与构造 API 2026-08-05 17:17:51 +08:00
爱特每羊队 22f1275f6b fix: 修复编译阶段缺失的预注册顶层 var 名步骤 2026-08-05 15:21:00 +08:00
爱特每羊队 0d16d509b2 fix: 逐个按顺序处理 field 与 block 以符合 JS 类元素源码顺序语义 2026-08-05 15:04:44 +08:00
爱特每羊队 211cbe2f5d fix: 编译阶段预扫描 builtin 避免寄存器分配问题 2026-08-05 13:28:51 +08:00
爱特每羊队 8ee6781795 refactor(compiler): finalize single pass compilation 2026-08-05 10:27:30 +08:00
爱特每羊队 0f78f341fa refactor(compiler): remove class count helpers 2026-08-05 10:27:29 +08:00
爱特每羊队 fd4172203e refactor(compiler): remove expression count helpers 2026-08-05 10:27:29 +08:00
爱特每羊队 b8bb208825 refactor(compiler): remove iteration count helpers 2026-08-05 10:27:29 +08:00
爱特每羊队 4a2bf09f78 refactor(compiler): remove statement jump count helpers 2026-08-05 10:27:28 +08:00
爱特每羊队 faa326c039 refactor(compiler): remove simple expression count helpers 2026-08-05 10:27:28 +08:00
爱特每羊队 3ce7fd587d refactor(compiler): remove statement count helpers 2026-08-05 10:27:28 +08:00
爱特每羊队 638da1f481 refactor(compiler): compile modules in one pass 2026-08-05 00:49:13 +08:00
爱特每羊队 f4897c30bc refactor(compiler): resolve logical assignments through fixups 2026-08-05 00:42:02 +08:00
爱特每羊队 01bcde2656 refactor(compiler): emit optional chain jumps through fixups 2026-08-05 00:38:11 +08:00
爱特每羊队 58b998a32d refactor(compiler): emit logical jumps through fixups 2026-08-05 00:34:39 +08:00
爱特每羊队 510a0dd96e refactor(compiler): emit loop jumps through fixups 2026-08-05 00:30:45 +08:00
爱特每羊队 ff400c47c2 refactor(compiler): emit control jumps through fixups 2026-08-05 00:24:12 +08:00
爱特每羊队 ac818b0821 feat(compiler): add deferred jump fixups 2026-08-04 21:10:10 +08:00