Commit Graph

260 Commits

Author SHA1 Message Date
爱特每羊队 accc677769 fix(emit): 顶层模块 param_layout.base 改 0 防父槽误判 + regalloc/VM 诊断日志 2026-08-07 17:13:57 +08:00
爱特每羊队 9a47ad7c1f fix(vm): 闭包捕获 let/const 的 cell 未初始化(TDZ)读取抛 ReferenceError 2026-08-07 16:19:35 +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
爱特每羊队 c8979660cb fix(vm): 函数 name 属性与 harness 重复 Test262Error 定义 2026-08-07 12:22:59 +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
爱特每羊队 6c0c30e5d5 feat(vm): 新增 MOV/SPILL/UNSPILL 执行语义 + spill 栈帧边界(D-06/D-07/D-08) 2026-08-06 16:51:01 +08:00
爱特每羊队 c52bf6313e fix(emit): const 声明 STORE_VAR 恒 b=0,修复寄存器复用触发误抛(B011) 2026-08-06 16:03:09 +08:00
爱特每羊队 ab66cb8283 fix(bench): Compiler 改带字段 struct 后 5 处 bench 用 new() 构造
04-03 将 Compiler 从 unit struct 改为带 enable_dce 字段后,
bench 里旧语法 'Compiler.compile(...)' 编译失败(clippy --all-targets
暴露,cargo test 不编 bench)。统一改 Compiler::new().compile(...)。
2026-08-06 12:17:13 +08:00
爱特每羊队 e66e247ea5 fix(vm): 修复 date_to_json 测试时区敏感断言(UTC+8 下用显式 UTC 时间戳) 2026-08-06 01:05:56 +08:00
爱特每羊队 f461235f04 docs: 添加 Rustdoc 注释 2026-08-05 21:46:47 +08:00
爱特每羊队 b611e26f11 fix(compiler): 完善闭包捕获(cell 索引稳定、参数遮蔽、函数/类名捕获、b 槽立即数) 2026-08-05 19:19:29 +08:00
爱特每羊队 c9e4248a02 fix: 修复不符合 JS 语义约束的错误行为测试 2026-08-05 15:44:22 +08:00
爱特每羊队 a4c13c4f6a fix: 接通透传闭包值链路 2026-06-30 23:57:22 +08:00
爱特每羊队 bb16d50f84 perf: IC hit/miss 路径 depth=0 快速路径内联,跳过 proto 遍历函数调用 2026-06-30 23:45:52 +08:00
爱特每羊队 12238ce76f fix: 闭包值传递链路完善 2026-06-30 23:08:11 +08:00
爱特每羊队 a17f98b02d fix: 修复闭包值传递链路 2026-06-30 22:52:25 +08:00
爱特每羊队 b944aa2832 fix: 修复嵌套函数调用并接通闭包捕获链路 2026-06-30 21:52:18 +08:00
爱特每羊队 575d3fdc08 style: 自动格式化 2026-06-30 21:50:37 +08:00
爱特每羊队 66144929eb perf: 字符串拼接消除冗余拷贝 2026-06-30 21:49:41 +08:00
爱特每羊队 7291fb237e perf: 优化调用原型链的 IC 命中加速 2026-06-30 21:41:05 +08:00
爱特每羊队 b6ce0f95bf perf: 复合赋值运算符增加 int 快速路径,跳过 coercion 开销 2026-06-30 21:08:29 +08:00
爱特每羊队 7877aad75d perf: 消除热路径冗余检查 2026-06-30 21:02:45 +08:00
爱特每羊队 4271b7e348 fix: 修复嵌套函数调用并接通闭包捕获链路 2026-06-30 20:49:23 +08:00
爱特每羊队 429cb6d9de style: 自动格式化 2026-06-30 20:04:27 +08:00
爱特每羊队 b915f127ca feat: 搭建闭包捕获基础设施 2026-06-30 19:58:58 +08:00
爱特每羊队 caa50afbe6 fix: count pass 注册顶层 var 名,hoisted 函数声明可解析外层 var 2026-06-30 16:37:50 +08:00
爱特每羊队 b797dcdec0 fix: native 调用保存/恢复 this 寄存器,避免方法内调用后 this 被 callee 覆盖 2026-06-30 16:12:42 +08:00
爱特每羊队 05b149b275 fix: 顶层 count pass 镜像 emit 的函数提升顺序,消除跳转目标漂移导致的死循环 2026-06-30 16:01:00 +08:00
爱特每羊队 c871396300 feat: Reflect.construct 实现正确 construct 语义 2026-06-30 15:47:05 +08:00
爱特每羊队 5feba7c20d style: 修复 clippy --all-targets 告警 2026-06-30 15:18:13 +08:00
爱特每羊队 5ecb428320 perf(vm): 字符串拼接用 push_to_string 消去中间分配, GC阈值 8M→32M
- oxide_runtime_api 新增 push_to_string: 直接将 JsValue 写入 String buffer
- dispatch_add / dispatch_compound_add 复用 Vm::string_buf, 每次concat从4次分配降到1次
- vm_support 新增 new_string_owned 接受 String 转移所有权
- kernel session_gc_threshold 8MB→32MB 减少频繁 GC
- build.sh: make clean 清跨平台 .obj 残留

(cherry picked from commit ad7b044a5a24b23819d783c5419d3e33f936dfc5)
2026-06-30 12:42:57 +08:00
爱特每羊队 05f1056cde perf(test262): +2.4% pass rate via Function .name/.length and ArrayLike support
- Array indexOf/includes/lastIndexOf: ArrayLike receiver + fromIndex + SameValueZero
- Function.prototype methods: add .length property via bind_method_static
- Error objects: add .name property via create_kind_error
- Constructor functions: add .name via make_pair + .length via bind_constructor!
- test262: 8497→9009 pass (+512), 38.3%→40.7% rate

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
(cherry picked from commit af61949e6cab1b149a13e571e29bacc4267d5690)
2026-06-30 12:42:57 +08:00
爱特每羊队 9da0ded18d feat: Symbol.hasInstance 支持 instanceof 双路径分派 2026-06-27 22:53:04 +08:00
爱特每羊队 db8aa7025e fix: Number 静态方法 ToNumber 转换、格式化方法精度/边界修复、常量属性描述符 2026-06-27 22:46:48 +08:00
爱特每羊队 14dc4d04c6 feat: 实现 JSON.stringify replacer/space/toJSON/循环检测和 JSON.parse reviver 2026-06-27 22:41:51 +08:00
爱特每羊队 17fbf16f7e fix: Date set(UTC)*/setYear 无参/NaN 不再越界 panic,按 spec 设为 NaN 2026-06-27 21:49:00 +08:00
爱特每羊队 86e9d6d1b0 fix: Date.prototype.setYear 无参/NaN 不再越界 panic,按 spec 设为 NaN 2026-06-27 21:41:04 +08:00
爱特每羊队 6a77742dad fix: 对齐 ?? 与静态成员复合赋值的 counter/emitter 计数,并加 projected_pc 断言 2026-06-27 21:07:16 +08:00
爱特每羊队 6d52c467e7 fix: 对齐 class 体 counter/emitter 指令条数,修私有方法、计算键、派生构造器字段注入位置的跳转漂移 2026-06-27 20:50:12 +08:00
爱特每羊队 242e94af09 fix: 对齐 counter/emitter 指令条数,修解构参数、数组赋值元素、解构catch、for-init 无初始化的跳转漂移 2026-06-27 20:32:33 +08:00
爱特每羊队 3c92f8368c fix: Error原型属性、规范toString、V8风格stack trace 2026-06-27 20:13:17 +08:00
爱特每羊队 f9297097bf fix: 修复 String 原型方法边界条件 2026-06-27 19:45:18 +08:00