Commit Graph

632 Commits

Author SHA1 Message Date
pjh123 6bcd090b06 feat: 补 BigInt.prototype[Symbol.toStringTag] 数据属性
补 @@toStringTag 数据属性,writable:false、enumerable:false、configurable:true,
使 Object.prototype.toString 与属性描述符符合规范。剩余 built-ins/BigInt 的
Symbol.toStringTag.js verifyProperty 失败仍受 String(Symbol) 支持阻塞。
2026-08-12 03:41:22 +08:00
pjh123 1eadb5ac1b fix: BigInt SUB/MUL 除 0n 不再误抛 Division by zero
binary_arith! 的 is_zero() 守卫无条件生效,x - 0n 与 x * 0n(含包装对象形式)
误抛 RangeError。仅 DIV/MOD 应拒绝 BigInt 零除数,SUB/MUL 正常计算。
test262 language/expressions/subtraction 由 29/6 通过提升到 30/5。
2026-08-12 03:30:03 +08:00
pjh123 1824ef0df1 feat: num-bigint 接入任意精度 BigInt(字面量、算术、toString、asIntN/asUintN) 2026-08-12 03:15:18 +08:00
pjh123 4474702735 fix: Object.prototype.toString 补 Math/JSON/Arguments 标签 2026-08-12 02:29:40 +08:00
pjh123 aa51d57660 feat: BigInt 构造器 ToPrimitive 语义、toString(radix)、asIntN/asUintN 2026-08-12 02:23:27 +08:00
pjh123 a84738cd60 test: 最小 BigInt 落地后从排除列表移除 BigInt 2026-08-12 01:40:18 +08:00
pjh123 bbca9a5c3a feat: PlainDateTime until/since 按规范舍入语义实现 2026-08-12 01:18:34 +08:00
pjh123 47733ae224 feat: PlainDateTime add/subtract 算术 2026-08-11 23:14:42 +08:00
pjh123 fbb3500129 feat: PlainDateTime toString 选项与 ISO 区间解析 2026-08-11 23:07:41 +08:00
pjh123 3cf2c792ba feat: Temporal PlainDateTime 转换与序列化 2026-08-11 22:29:00 +08:00
pjh123 66712e05a5 feat: Temporal PlainDateTime 基础实现 2026-08-11 21:32:15 +08:00
pjh123 90a162d39a feat: Temporal Instant 时区转换 2026-08-11 20:54:25 +08:00
pjh123 b982e964a7 feat: Temporal Instant 序列化 2026-08-11 19:14:24 +08:00
pjh123 59da42fea9 feat: Temporal Instant 差值实现 2026-08-11 18:22:21 +08:00
pjh123 4e2d00fd0f fix: 嵌套内置对象寄存器映射同步 2026-08-11 18:06:42 +08:00
pjh123 e6d70664d3 fix: 模板表达式高位寄存器槽保留 2026-08-11 17:17:30 +08:00
pjh123 7ccedfb0b1 feat: Temporal Instant round 实现 2026-08-11 16:57:53 +08:00
pjh123 1d45a34973 fix: 闭包捕获解构函数参数 2026-08-11 16:57:13 +08:00
pjh123 abc794709e feat: Temporal Instant 算术精确实现 2026-08-11 15:55:05 +08:00
pjh123 930bfa1ac9 feat: Temporal Instant 工厂精确实现 2026-08-11 15:21:28 +08:00
pjh123 33dae0a8c2 fix: 闭包捕获对象键与循环变量绑定 2026-08-11 14:17:45 +08:00
pjh123 0d75e901ff fix: Temporal 时长输入校验 2026-08-11 13:11:51 +08:00
pjh123 b9686e000d feat: Temporal 时长差值与纯日期差值 2026-08-11 12:38:31 +08:00
pjh123 2287f9f4ce fix: 寄存器分配支持高位寄存器槽 2026-08-11 12:37:56 +08:00
pjh123 fab06a233d feat: Temporal ISO 日期解析器(basic/extended/扩展年)与 harness 解锁 2026-08-11 00:20:45 +08:00
pjh123 f96c351cf8 fix: builtin 槽恒等预着色号 >253 时改分配自由色,修复大函数晚引用全局报 too many registers 2026-08-11 00:19:29 +08:00
pjh123 b44bc3d7f2 feat: 新增 DEFINE_ACCESSOR_DYNAMIC opcode 支持计算键对象访问器 2026-08-10 23:28:18 +08:00
pjh123 078688070d feat: 实现最小 BigInt 子集(字面量/算术/比较/构造器,Temporal 前置) 2026-08-10 23:02:31 +08:00
pjh123 9e26a13655 feat: Temporal 解锁 + PlainDate 补齐日期派生字段与 add/subtract/equals/compare 2026-08-10 21:23:00 +08:00
pjh123 973778f181 fix: 块级 let/const/class 预声明 + TDZ 读取运行时抛 ReferenceError 2026-08-10 21:07:39 +08:00
pjh123 a968b89658 fix: 异常兜底路径经 create_from_text 恢复错误类型(不塌缩普通 Error) 2026-08-10 20:19:51 +08:00
pjh123 9ba5821568 fix: Object 内置方法 ToObject 装箱(原始值不再误抛 TypeError) 2026-08-10 20:08:40 +08:00
pjh123 dc6471f96e fix: await 经 promise_resolve 按 constructor 查询包装被等待值 2026-08-10 20:00:52 +08:00
pjh123 924b8fd4e0 feat: Temporal 最小子集(Temporal.Now/Instant/PlainDate/PlainTime) 2026-08-10 18:18:39 +08:00
pjh123 8a53bfb584 feat: 编译管线/类型层 crate 补全多级日志宏 + 关键路径日志 2026-08-10 17:56:28 +08:00
pjh123 9fa8ae5b5f perf: 字符串拼接按操作数字节长预分配容量,免几何 realloc 二次拷贝 2026-08-10 17:40:39 +08:00
pjh123 e2ff2ce4c3 perf: dispatch 主循环 hoist max_steps,免逐指令 config 指针追寻 2026-08-10 17:23:29 +08:00
pjh123 8163a5d25e perf: 子模块树改 Arc 共享,run() 免深拷贝模块树 2026-08-10 17:23:29 +08:00
pjh123 02414144f3 perf: JsString 缓存 UTF-16 length,字符串 length 访问改 O(1) 2026-08-10 17:23:29 +08:00
pjh123 d8952a59fa perf: 数组元素独立存储区,push 改为摊销 O(1) 尾插 2026-08-10 16:01:09 +08:00
pjh123 7efb26bc96 perf: 函数调用 bytecode 改 Arc 共享(O(1) 帧切换 + IC 写时复制) 2026-08-10 15:08:51 +08:00
pjh123 34fb7c8dff perf: 删除 IC 命中热路径无条件 eprintln 调试残留 2026-08-10 14:30:38 +08:00
pjh123 ea98752e9f refactor: 移除 SuspendedFrame 已无必要的 dead_code 豁免 2026-08-10 14:28:09 +08:00
pjh123 46e7bceb07 refactor: save/restore 收敛为字段表宏单一登记,补齐 accessor_frame_target_reg 2026-08-10 14:18:58 +08:00
pjh123 b95e7b1628 refactor: VM 统一 GC 遍历 for_each_value/rewrite_values(双子清单收敛三处手写清单) 2026-08-10 13:57:13 +08:00
pjh123 71c6c1532e refactor: AsyncGeneratorState 收敛到 SuspendedFrame(save/restore/GC 遍历/string 边/深拷贝) 2026-08-10 13:49:05 +08:00
pjh123 d536617f23 refactor: AsyncState 收敛到 SuspendedFrame(save/restore/GC 遍历/string 边/深拷贝) 2026-08-10 13:36:34 +08:00
pjh123 9d18eb2533 refactor: GeneratorState 收敛到 SuspendedFrame(save/restore/GC 遍历/string 边) 2026-08-10 13:28:14 +08:00
pjh123 7318f8f2eb refactor: 新增 SuspendedFrame 共享挂起快照(save/restore/GC 遍历/深拷贝/记账) 2026-08-10 13:05:27 +08:00
pjh123 a1e6c27fa2 fix: GC 根清单补齐信号字段与 pending_completion 重写(收敛前置) 2026-08-10 13:00:15 +08:00