Commit Graph

  • 2777b00c82 feat: 调用实参 spread(f(...args) / new F(...args) / super(...args)) 爱特每羊队 2026-08-08 10:33:16 +08:00
  • ea86a2c0ac feat: 数组字面量 spread([...a] 展开为 for-of 追加) 爱特每羊队 2026-08-08 09:29:37 +08:00
  • a82e4cd204 feat: Function 构造器(动态编译字符串生成函数) 爱特每羊队 2026-08-08 03:07:26 +08:00
  • ce86fcfb73 fix: delete 真正删除属性(shape 链重建 + 数组元素 hole 标记) 爱特每羊队 2026-08-08 02:25:13 +08:00
  • e91d8ecaf2 fix: defineProperty 描述符字段按 ToPropertyDescriptor 语义解析(原型链 + accessor getter) 爱特每羊队 2026-08-08 01:39:12 +08:00
  • 3b13b111c4 fix: defineProperty 内部错误不触发 unwind + enumerable/configurable 缺省回填 爱特每羊队 2026-08-08 01:18:21 +08:00
  • d36949aa00 fix: Error 家族构造器可构造标志 + 数组回调异常透传原始对象 爱特每羊队 2026-08-08 00:19:05 +08:00
  • a206d0ef82 feat(vm): arguments 对象绑定(CREATE_ARGUMENTS + 帧实参 spill 区) 爱特每羊队 2026-08-08 00:01:22 +08:00
  • 820de00d79 fix(vm): 数组元素写入越过元素区时搬移属性区 + defineProperty 数组索引走元素区 爱特每羊队 2026-08-07 23:20:32 +08:00
  • f0f45c4ae0 fix: Object.prototype.toString 类型标签([object Array] 等)+ array_push 维护数组元素数 爱特每羊队 2026-08-07 22:06:09 +08:00
  • ca938e0655 fix(vm): 数组属性存储机制(array_prop_count 显式元素数 + shape 属性偏移 + IC/prop_forge 对齐) 爱特每羊队 2026-08-07 21:53:45 +08:00
  • bf4d4a508d feat(regexp): 迁移到 regress 引擎(backref/lookaround/命名组/v-flag)+ 手动 \$ 展开 replace + exec 捕获组数组 爱特每羊队 2026-08-07 21:29:22 +08:00
  • cbb139e956 fix: native 构造器可构造性标志(OBJ_TYPE_CONSTRUCTOR)+ Reflect.construct/new 校验 爱特每羊队 2026-08-07 20:44:04 +08:00
  • fec6b68ecb fix(emit): 括号包裹的匿名函数参与 name 推断(is_anonymous_function_definition) 爱特每羊队 2026-08-07 20:27:49 +08:00
  • b64849cdb0 chore(test262): 收窄运行时 skip(删除断言失败消息误当 skip)+ 正则依赖 lock 爱特每羊队 2026-08-07 20:19:44 +08:00
  • b49ac29414 fix(emit): 默认参数/解构默认值函数名推断(SetFunctionName) 爱特每羊队 2026-08-07 20:15:35 +08:00
  • 5b70a21832 fix(emit): 赋值表达式与对象属性函数名推断(function/class/arrow) 爱特每羊队 2026-08-07 20:10:06 +08:00
  • b291a68528 fix(emit): 变量声明赋值 class 表达式参与函数名推断 爱特每羊队 2026-08-07 20:05:43 +08:00
  • 0d42207a1c fix(regexp): 正则字面量编译期语法校验(非法抛 SyntaxError)+ CREATE_REGEXP 保留错误类型 爱特每羊队 2026-08-07 20:02:11 +08:00
  • e815a56fb9 fix(string): String.prototype 方法 null/undefined this 抛 TypeError 爱特每羊队 2026-08-07 19:57:24 +08:00
  • ca619d7c06 fix(object): Object() 对原始值创建 boxed 对象 + String 方法 this 完整转换 爱特每羊队 2026-08-07 19:52:35 +08:00
  • 8ac630b4e0 fix(string): String() 对象参数走 ToString 完整转换(数组→join 等) 爱特每羊队 2026-08-07 19:39:18 +08:00
  • 82e15f32f6 fix(emit): 参数默认值 emit 前完成捕获分析 + 类方法支持 upvalue 捕获 爱特每羊队 2026-08-07 19:18:38 +08:00
  • 11852e76af fix(emit): 闭包捕获/upvalue 分析纳入参数默认值表达式(含嵌套函数声明) 爱特每羊队 2026-08-07 19:04:25 +08:00
  • 45925b8701 fix(vm): SUPER_CALL 后构造实例 proto 设为 new.target.prototype(子类化内建) 爱特每羊队 2026-08-07 18:41:34 +08:00
  • f015e1c428 fix(emit): 闭包捕获分析补扫 catch 参数解构模式的表达式引用 爱特每羊队 2026-08-07 18:32:05 +08:00
  • eebee1b624 feat(typedarray): 实现整数索引读取与 for-of 迭代(get_iterator 支持) 爱特每羊队 2026-08-07 18:10:19 +08:00
  • 33690fb803 fix(vm): REST_OBJECT 提前消费 ext 字防 ToObject 早返回后 pc 错位 爱特每羊队 2026-08-07 18:00:59 +08:00
  • 3dee6fa21c fix(vm): REST_OBJECT 对原始类型 ToObject(number/boolean/symbol 空对象,string 索引字符) 爱特每羊队 2026-08-07 17:50:49 +08:00
  • 4a0de6212c fix(regalloc): builtin 槽 vreg 预着色恒等排除出可分配集防 prologue 覆写 爱特每羊队 2026-08-07 17:40:09 +08:00
  • accc677769 fix(emit): 顶层模块 param_layout.base 改 0 防父槽误判 + regalloc/VM 诊断日志 爱特每羊队 2026-08-07 17:13:57 +08:00
  • 70536e3e2f fix(emit): catch 参数支持解构 pattern(数组/对象/默认值) 爱特每羊队 2026-08-07 16:27:48 +08:00
  • 9a47ad7c1f fix(vm): 闭包捕获 let/const 的 cell 未初始化(TDZ)读取抛 ReferenceError 爱特每羊队 2026-08-07 16:19:35 +08:00
  • e9d1bc822c fix(emit): LOAD_UPVALUE 的 uv_idx 改 Imm 编码避免被 RegAlloc 重写 爱特每羊队 2026-08-07 16:09:17 +08:00
  • 04a6aa10f7 feat(emit): 实现默认参数(形参 initializer 与解构默认值) 爱特每羊队 2026-08-07 15:26:25 +08:00
  • 6ed0d42489 fix(vm): 数组元素访问器属性触发 getter 并透传异常 爱特每羊队 2026-08-07 15:05:44 +08:00
  • f4d95f373e fix(vm): 链式 upvalue 捕获支持多层嵌套函数引用深层变量 爱特每羊队 2026-08-07 14:56:51 +08:00
  • 543f88ce86 fix(vm): 闭包 upvalue cell 占位稳定化修复错读调用方表 爱特每羊队 2026-08-07 14:38:47 +08:00
  • 4bc6db4fa4 fix(vm): Function.prototype.call 的 native 错误转 JS 异常可被捕获 爱特每羊队 2026-08-07 13:45:39 +08:00
  • ddb3ba1990 chore(deps): 锁定 oxc_semantic 依赖 爱特每羊队 2026-08-07 12:27:32 +08:00
  • c8979660cb fix(vm): 函数 name 属性与 harness 重复 Test262Error 定义 爱特每羊队 2026-08-07 12:22:59 +08:00
  • be9b96dfae feat(parser): 引入 oxc_semantic 早期错误检查与 onlyStrict 注入 爱特每羊队 2026-08-07 12:04:46 +08:00
  • dd291250e2 feat(iter): 迭代协议支持对象字面量 computed key 与 upvalue 捕获 爱特每羊队 2026-08-07 10:49:24 +08:00
  • d1675c217d fix(vm): 子模块全局扁平化根治逃逸闭包上下文错位 爱特每羊队 2026-08-07 10:49:15 +08:00
  • 4fa21d85d8 fix(vm): CREATE_CLOSURE 越界改运行时错误防进程中断 爱特每羊队 2026-08-07 00:42:33 +08:00
  • f1362f86e5 fix(vm): new 构造入口补齐 sub_modules 上下文切换 爱特每羊队 2026-08-07 00:38:50 +08:00
  • c59518e899 fix(vm): inline 回调支持 upvalue 闭包上下文 爱特每羊队 2026-08-07 00:23:35 +08:00
  • f57cb0f051 fix(vm): new 构造 cell_stack 失衡与子模块 immutables 缓存失步 爱特每羊队 2026-08-07 00:15:09 +08:00
  • 328b8a3ddc docs: 补充注释与格式化 爱特每羊队 2026-08-06 23:10:27 +08:00
  • 4e0fd762c2 refactor(regalloc): 清除 color() 冗余干涉图构建 + use_points 改用精确 use 判定 爱特每羊队 2026-08-06 20:41:01 +08:00
  • d8aa902ff0 fix(regalloc): nested 子模块引用父槽无预着色保护致读错物理槽(B014) 爱特每羊队 2026-08-06 20:34:55 +08:00
  • e667d5a329 test(regalloc): B005 复现 + n_registers 汇总断言(REG-04 验收) 爱特每羊队 2026-08-06 19:33:16 +08:00
  • 8317c03edb fix(emit): 调用参数打包连续寄存器 + 捕获参数建 cell + TEMPLATE_STR ext 重映射(修复 JSON/closures/template 回归) 爱特每羊队 2026-08-06 19:33:05 +08:00
  • a763e7ab75 feat(compiler): 管线接入 liveness/精确DCE/RegAlloc + --no-regalloc flag(D-17/D-18) 爱特每羊队 2026-08-06 17:56:55 +08:00
  • a2afae670d feat(regalloc): 指令改写 + 元数据回写 + alloc 入口,RegAlloc on/off 运行时等价(D-16/D-20) 爱特每羊队 2026-08-06 17:44:31 +08:00
  • 31bba82912 feat(regalloc): 新增 oxide_regalloc crate,干涉图 + graph coloring + spill 拆分(D-09/D-10/D-11) 爱特每羊队 2026-08-06 17:13:27 +08:00
  • f4e0fdf14e feat(dce): liveness 驱动的精确二轮 dce_precise + is_top_level 标志(D-17/D-19/D-20) 爱特每羊队 2026-08-06 16:55:26 +08:00
  • 6c0c30e5d5 feat(vm): 新增 MOV/SPILL/UNSPILL 执行语义 + spill 栈帧边界(D-06/D-07/D-08) 爱特每羊队 2026-08-06 16:51:01 +08:00
  • de558f7a99 feat(liveness): 新增 oxide_liveness crate,CFG 数据流 liveness + 逐指令 live range(D-15) 爱特每羊队 2026-08-06 16:41:57 +08:00
  • fc4924c2c9 feat(ir): 新增 MOV/SPILL/UNSPILL opcode 登记 + 构造 API + 契约层(D-06/D-07) 爱特每羊队 2026-08-06 16:34:25 +08:00
  • 38d6c7a60e refactor(emit): 寄存器号 u8→u32 全链放宽,vreg 化去 checkpoint/reg_overflow(B005) 爱特每羊队 2026-08-06 16:31:16 +08:00
  • c52bf6313e fix(emit): const 声明 STORE_VAR 恒 b=0,修复寄存器复用触发误抛(B011) 爱特每羊队 2026-08-06 16:03:09 +08:00
  • 68afc72871 fix(emit): upvalue_captures 按名字排序,修复 HashSet 非确定顺序致 LOAD_UPVALUE 错位 爱特每羊队 2026-08-06 14:29:04 +08:00
  • 604ecca793 test(ir): 迁移 lowering 测试到 oxide_ir(测试随实现落位) 爱特每羊队 2026-08-06 14:11:54 +08:00
  • ca46cf842e test(cfg): 各 Pass 模块补模块级单测,测试随实现拆分 爱特每羊队 2026-08-06 14:09:03 +08:00
  • f7111b4658 refactor(ir): 拆分寄存器契约(def/use/is_pure)为 contract 独立模块 爱特每羊队 2026-08-06 14:05:53 +08:00
  • 0e7c3208d5 refactor(dce): 拆分单文件为三 Pass 独立模块(可达性/迭代删除/重建) 爱特每羊队 2026-08-06 14:01:31 +08:00
  • 50216d7d00 fix(dce): STORE_VAR 一律判有副作用,修复顶层变量赋值被误删 爱特每羊队 2026-08-06 13:29:07 +08:00
  • ab66cb8283 fix(bench): Compiler 改带字段 struct 后 5 处 bench 用 new() 构造 爱特每羊队 2026-08-06 12:17:13 +08:00
  • 095e20cf84 fix(dce): label 目标与 nested 逃逸变量槽保活,修复两处误删 爱特每羊队 2026-08-06 12:17:06 +08:00
  • eb65a26142 fix(cfg): 无条件 JMP 后继位置切成块头,修复跳转边丢失 爱特每羊队 2026-08-06 12:16:58 +08:00
  • be52064765 test(compiler): compile_multiple_stmts 锚按 D-11 放宽为存在性断言 爱特每羊队 2026-08-06 12:16:51 +08:00
  • ce72469e00 chore(compiler): 更新 Cargo.lock 记录 oxide_compiler → oxide_dce 依赖 爱特每羊队 2026-08-06 11:49:26 +08:00
  • 1a235f748b feat(cli): compile 子命令新增 --no-dce flag 透传 Compiler(D-10) 爱特每羊队 2026-08-06 11:48:30 +08:00
  • bbba23b93a feat(compiler): Compiler 增加 enable_dce 字段与 with_dce 开关(D-10) 爱特每羊队 2026-08-06 11:45:26 +08:00
  • 319610ec7b test(dce): 新增运行时等价对比集成测试(D-08 主验证) 爱特每羊队 2026-08-06 11:43:39 +08:00
  • 7c87953b63 test(dce): 补全 Pass C 单测与不动域断言(D-13/D-14/D-04/D-03) 爱特每羊队 2026-08-06 11:35:58 +08:00
  • 1a8e7ca9f5 feat(dce): 实现 Pass A 可达性 + Pass B use 计数迭代删除 爱特每羊队 2026-08-06 11:33:27 +08:00
  • c2a64a2df8 feat(dce): 新建 oxide_dce crate 骨架并接入 workspace 爱特每羊队 2026-08-06 11:27:44 +08:00
  • d33ec31532 feat(ir): 实现 is_pure 精确纯表(Pattern 1 全表 + LOAD_VAR/STORE_VAR 特判) 爱特每羊队 2026-08-06 10:50:18 +08:00
  • c7b5df23ea test(ir): 新增 is_pure 纯表单测(Pattern 1 各族正负例 + 特判分支) 爱特每羊队 2026-08-06 10:49:08 +08:00
  • 2e74124ba0 feat(ir): 实现 def_reg/use_regs 寄存器扫描契约(Pattern 2 全表) 爱特每羊队 2026-08-06 10:47:56 +08:00
  • 69d139af74 test(ir): 新增 def_reg/use_regs 契约单测(Pattern 2 反直觉槽位) 爱特每羊队 2026-08-06 10:45:10 +08:00
  • a9f63b9200 refactor(cfg): 拆分 build_cfg 四阶段为独立模块纯函数链 爱特每羊队 2026-08-06 01:10:56 +08:00
  • e66e247ea5 fix(vm): 修复 date_to_json 测试时区敏感断言(UTC+8 下用显式 UTC 时间戳) 爱特每羊队 2026-08-06 01:05:56 +08:00
  • f2e0bef405 test(cfg): 新增真实编译产物集成回归锚(parse→emit→build_cfg) 爱特每羊队 2026-08-06 00:49:07 +08:00
  • 8711b51af7 fix(emit): 修复 clippy 阻塞(doc comment 空行 + single_match_else) 爱特每羊队 2026-08-06 00:45:49 +08:00
  • 1bd7a82e8f feat(cfg): 新建 oxide_cfg crate(BB 划分 + CFG 构建 pass) 爱特每羊队 2026-08-06 00:45:48 +08:00
  • 91badd6af9 fix(test262): 修复 main.rs:20 悬空 doc comment 恢复 workspace 构建 爱特每羊队 2026-08-06 00:39:33 +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