爱特每羊队
|
504ffaf126
|
feat: Set/Map 构造器接收可迭代实参 + size 访问器 + ES2024 set-methods
|
2026-08-08 18:01:00 +08:00 |
|
爱特每羊队
|
6e5bbe718b
|
feat: 实现 Array.from 与 Array.of 静态方法
- Array.from:可迭代(迭代协议)与 array-like 双路径,支持 mapFn/thisArg,
构造器 this 支持(new C),CreateDataPropertyOrThrow 写入,IteratorClose
- Array.of:以参数为元素,this 构造器 + CreateDataProperty + Set length
- iterator.rs:get_iterator 改为 Option 返回,新增 try_make_iterator 与
peek_iterator_method(GetMethod 只读判定,不调用迭代器)
|
2026-08-08 13:13:08 +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 |
|
爱特每羊队
|
a82e4cd204
|
feat: Function 构造器(动态编译字符串生成函数)
|
2026-08-08 03:07:26 +08:00 |
|
爱特每羊队
|
ce86fcfb73
|
fix: delete 真正删除属性(shape 链重建 + 数组元素 hole 标记)
字节码 delete 原先只清值为 undefined,属性残留在 shape 链,hasOwnProperty/
keys/枚举仍可见。统一走共享 delete_own_property(与 Reflect.deleteProperty
一致):
- 命名属性经 shape 链重建移除,数组重建前保存并恢复元素区
- 数组下标元素标记为 hole(PropMetaEntry.hole),length 不变,
存在性检查(resolve_property/get_own_property_slot/ordinary_get/for-in)
判 hole,重赋值自动清除标记
- 不可配置属性统一返回 false(sloppy 语义,strict 抛错留待 emit 追踪严格模式)
- set_or_create_prop_value 数组下标键路由元素区,修复 delete 后重赋值误入
shape 链
test262 Object +212 PASS/-102 FAIL,Array +149 PASS/-60 FAIL,无回归。
|
2026-08-08 02:25:13 +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 |
|
爱特每羊队
|
ca938e0655
|
fix(vm): 数组属性存储机制(array_prop_count 显式元素数 + shape 属性偏移 + IC/prop_forge 对齐)
|
2026-08-07 21:53:45 +08:00 |
|
爱特每羊队
|
cbb139e956
|
fix: native 构造器可构造性标志(OBJ_TYPE_CONSTRUCTOR)+ Reflect.construct/new 校验
|
2026-08-07 20:44:04 +08:00 |
|
爱特每羊队
|
0d42207a1c
|
fix(regexp): 正则字面量编译期语法校验(非法抛 SyntaxError)+ CREATE_REGEXP 保留错误类型
|
2026-08-07 20:02:11 +08:00 |
|
爱特每羊队
|
45925b8701
|
fix(vm): SUPER_CALL 后构造实例 proto 设为 new.target.prototype(子类化内建)
|
2026-08-07 18:41:34 +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 |
|
爱特每羊队
|
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 |
|
爱特每羊队
|
f461235f04
|
docs: 添加 Rustdoc 注释
|
2026-08-05 21:46:47 +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 |
|
爱特每羊队
|
b797dcdec0
|
fix: native 调用保存/恢复 this 寄存器,避免方法内调用后 this 被 callee 覆盖
|
2026-06-30 16:12:42 +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 |
|