Commit Graph

26 Commits

Author SHA1 Message Date
爱特每羊队 da586082cc feat: rest 参数(function f(...args)),实参区收集数组 2026-08-10 00:33:25 +08:00
爱特每羊队 0d9e6eabc9 feat: async/await 语法支持(AWAIT 帧快照挂起/恢复 + 微任务驱动 + AsyncFunction intrinsics) 2026-08-09 22:02:15 +08:00
爱特每羊队 c4e7080883 feat: 实现 yield* 委托语法(内层迭代器 next/return/throw 转发) 2026-08-09 20:00:16 +08:00
爱特每羊队 6f80c12ac9 feat: 生成器基础支持(YIELD 帧快照挂起/恢复 + GeneratorPrototype next/return/throw)
- 新增 YIELD/SUSPEND_BODY opcode;function* 识别与 yield emit
- GeneratorState 全量快照 VM 执行上下文(regs/pc/bytecode/spill/save/try/cell 栈段/迭代器)
- 调用时参数初始化(默认值/解构副作用与异常在 g() 时刻生效)
- %GeneratorPrototype%/%GeneratorFunction.prototype% 内建对象与 next/return/throw
- session GC trace 生成器状态 JsValues;闭包捕获分析补 yield/赋值目标扫描
2026-08-09 18:02:08 +08:00
爱特每羊队 c65d7e0373 feat: 函数 length 属性(字节码函数/bind 包装器)+ getter/setter name 前缀 2026-08-09 15:38:45 +08:00
爱特每羊队 e1f0d578fa fix: opcode IC ext words 计数断言更新(新 opcode 增长) 2026-08-09 09:40:04 +08:00
爱特每羊队 38abdfd9ab feat: class 公有字段 define 语义 + computed key 类定义期求值一次 2026-08-09 09:35:24 +08:00
爱特每羊队 2f8f1c3b71 feat: with 语句、成员位/移位复合赋值、CALL_NATIVE 无目标修复
with 语句:新增 emit 支持,with 体内自由标识符动态解析(对象属性优先,
回退外层),支持读/写/复合赋值/自增自减/delete/var 初始化动态化,
TO_OBJECT opcode 处理原始值对象,顶层 this 绑定全局对象。

复合赋值:新增 6 个 COMPOUND_MEMBER_BIT_* opcode 支持成员位/移位复合赋值,
修复 computed member 复合赋值覆盖 bug,with 内标识符复合赋值动态化。

CALL_NATIVE:实现全局 isNaN/isFinite 并绑定,用户覆盖 builtin 名时
回退通用调用路径而非报错,局部遮蔽 builtin 名走普通 CALL。

test262: with 34 pass(基线 0),compound-assignment 320 pass(基线 223)
2026-08-09 07:22:46 +08:00
爱特每羊队 a814dd0700 fix: try/finally 支持 break/continue/return 穿越 finally(completion 机制) 2026-08-08 12:38:25 +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
爱特每羊队 a206d0ef82 feat(vm): arguments 对象绑定(CREATE_ARGUMENTS + 帧实参 spill 区) 2026-08-08 00:01:22 +08:00
爱特每羊队 f4d95f373e fix(vm): 链式 upvalue 捕获支持多层嵌套函数引用深层变量 2026-08-07 14:56:51 +08:00
爱特每羊队 d1675c217d fix(vm): 子模块全局扁平化根治逃逸闭包上下文错位 2026-08-07 10:49:15 +08:00
爱特每羊队 328b8a3ddc docs: 补充注释与格式化 2026-08-06 23:10:27 +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
爱特每羊队 f461235f04 docs: 添加 Rustdoc 注释 2026-08-05 21:46:47 +08:00
爱特每羊队 b915f127ca feat: 搭建闭包捕获基础设施 2026-06-30 19:58:58 +08:00
爱特每羊队 93326a6f31 refactor: 用 define_opcodes! 宏统一生成 OpCode 枚举/TryFrom/Display 2026-06-25 18:12:37 +08:00
爱特每羊队 06f769c4e0 perf: 不可变常量改 OnceLock 一次性缓存,删 Constant 死变体并移出 GC 根 2026-06-25 14:32:49 +08:00
爱特每羊队 1ef8349208 feat: 增加 CreateRegExp 字节码,正则字面量每次执行创建新对象 2026-06-25 10:28:35 +08:00
爱特每羊队 5007e7af7c feat: 增加 CreateClosure 字节码,函数字面量每次执行创建新闭包 2026-06-25 10:16:32 +08:00
爱特每羊队 38657d2171 refactor: 移除代码注释中的文档内部编号引用 2026-06-24 16:03:53 +08:00
爱特每羊队 6bf5daa1af refactor: 清理未使用符号,合并bind_constructor宏,统一init/rebind绑定列表,bind_number改为表驱动 2026-06-24 12:12:44 +08:00
爱特每羊队 dbc15f6d1f refactor: 拆分 bytecode/cache crate 并模块化 counter 2026-06-23 17:06:39 +08:00