Commit Graph

865 Commits

Author SHA1 Message Date
pjh123 6eb8c5aa88 bench: array_index_set 基线更新为当前可复现稳态值(旧条目系冷窗口瞬态读数) 2026-09-11 06:06:47 +00:00
pjh123 105f5085f0 bench: 基线注记生成端同步 retained 内部副本上界与 peak 采样口径 2026-09-11 06:03:12 +00:00
pjh123 b13a379bda doc: 晋升方法补执行外安全点前提注记;基线口径注明 peak 采样点与盲区 2026-09-11 05:54:22 +00:00
pjh123 9800e90a64 test: 新增对象图留存计数数值锚;基线口径注明 retained 至多一份引擎内部副本 2026-09-11 05:53:38 +00:00
pjh123 227dfe008f fix: test262 runner 进程 RSS 无界增长——session 收尾统一释放内建裸堆区/upvalue 别名 + 每测试分配上限 256MiB(任务 116)
- 泄漏修复:KernelSession 收尾(teardown_intrinsic_protos/free_session_upvalues)
  释放内建对象 Box::into_raw 裸堆区(release_raw_heap 四区置空幂等)与
  session upvalue 原件/晋升克隆别名去重释放;bindings 原生盒负载边、
  session_gc 边记录、vm_props 属性区同步收尾
- 失控测试封顶:runner kernel max_alloc_bytes=256MiB(dispatch 采样口径
  run_alloc_bytes/run_alloc_bytes_full),超限计 memory-limit 失败而非拖垮
  进程 RSS(arena 高水位 GB 级 × 多 worker = 宿主 OOM)
- 归属:RSS 泄漏 pre-existing(HEAD 无 WIP 同现);identifiers escaped
  unicode 挂死族另立 B132(pre-existing,supervise 超时自愈)
- 验证:build/clippy/四 crate 测试全绿零新增告警;language 前 5000 测试
  单窗峰值 330MB(旧 ~4.5MB/测试 单调增长→88GB OOM 签名消失),
  窗口间峰值 0.17-1.6GB 有界、逐测试释放回基线
2026-09-11 03:55:59 +00:00
pjh123 a5258f2739 fix: intrinsic ctor prototype 属性指向 P 槽唯一实例——消除 Box 释放悬垂与实例 [[Prototype]] identity 分裂 2026-09-11 02:02:41 +00:00
root 81f05b49a2 fix: debug-only 字符串边记录函数加 cfg 门,消除 release 死代码告警 2026-09-10 08:21:43 +00:00
root 1b87e212f9 test: 新增内存占用基准用例与留存内存采集
bench 每轮采集在 workload 后 promote 根持有/会话引用的 epoch 对象并强制
一次 full GC,新增 peak_bytes / retained_bytes / retained_objects 三口径
(原 session_* 字段为执行期累计分配,不反映 workload 后留存);dispatch
循环增加 session 堆高水位采样,VM 暴露 session_bytes_peak 与
collect_session_gc。新增 8 个 mem_* 压力用例(对象图/字符串/闭包链/数组
增删/跨调用保留/Map/Set 保留/字符串拼接),基线扩至 76 条目。
2026-09-10 08:18:52 +00:00
pjh123 31d3f59d2b fix: runner not-defined subkey 剥 vm error: 生产前缀恢复标识符提取,无前缀兜底改形态门防 negative mismatch 漂入 not-defined 桶 2026-09-10 06:42:10 +08:00
pjh123 a5aab0077f fix: for-in var 头撞既有绑定复用槽位消除顶层编译报错,迭代键写不可写全局内置接只读拦截 2026-09-10 05:56:10 +08:00
pjh123 1f37c4c9e6 fix: 全局 var 绑定 0x6F 按 CreateGlobalVarBinding 不更新既有不可写数据描述符,for-in 枚举断言修运算符优先级括号化 2026-09-10 05:55:03 +08:00
pjh123 35e6232ad6 feat: test262 runner 失败报告支持 subkey 提取与目录分组聚合——categorize_fail 双返回 (category, subkey)、not-callable 调用点/not-defined 标识符提取、IC_GET_PROP 独立成桶、目录末 3 级 top 30 + subkey top 20 输出(普通/supervise 统一,碎片桶去消息尾巴) 2026-09-10 05:02:13 +08:00
pjh123 c87edd404a fix: 全局三常量描述符翻可配置,var 重复声明以 builtin 镜像值保留现存值 2026-09-10 04:16:08 +08:00
pjh123 7138c98da8 fix: 顶层只读全局赋值弱断言并入值保持强断言 2026-09-10 02:30:09 +08:00
pjh123 eabd0b3608 fix: 逻辑赋值标识符目标接入不可写全局内置拦截,目标位置内置预登记稳定槽解析 2026-09-10 02:30:09 +08:00
pjh123 479238dc24 fix: 函数对象(含 prototype 子对象)直接 session arena 分配——逃逸写不再克隆分裂 identity,类原型/super 派发完整,epoch 边界前 session 原地晋升 epoch 子引用防悬垂 2026-09-10 01:52:29 +08:00
pjh123 b77a9322e5 fix: 不可写全局内置(undefined/NaN/Infinity)寄存器镜像写编译期拦截——sloppy 静默 no-op、strict 抛 TypeError 2026-09-09 23:17:01 +08:00
pjh123 2457f283fe fix: 顶层 var 全局属性求值前创建(声明定时语义)+ 无初始化 var 声明不再抹槽值 2026-09-09 22:00:29 +08:00
pjh123 bd1427b116 test: TDZ 单测补嵌套块/自引用/hoisted 读形状 + 固化单语句体 lexical 声明解析拒绝契约 2026-09-09 19:52:03 +08:00
pjh123 3f393b6acb fix: eval 脚本 var 声明落全局 configurable:true——is_eval_script 穿透 2026-09-09 19:17:57 +08:00
pjh123 d9c2847730 fix: sloppy 未声明写隐式全局创建 + strict ReferenceError——DEFINE_GLOBAL_PROP_C 0x98 2026-09-09 18:44:38 +08:00
pjh123 c8bcff83f6 fix: sloppy 模式属性赋值静默 no-op——写失败按写方严格模式分派,内置写路径一律按严格 2026-09-09 17:48:33 +08:00
pjh123 64f582d34b chore: rustfmt 全量格式化——CI fmt check 差异清零 2026-09-09 15:14:57 +08:00
pjh123 3cf6618ae7 feat: Temporal.Duration 补全——compare/subtract/equals/sign/blank/toJSON/toLocaleString + relativeTo 相对日历对齐 2026-09-09 15:14:49 +08:00
pjh123 f821f6838f fix: CI 修复——emit_program 测试调用点补 repl_persist 参数 + clippy 告警清零 + 删空 bench_tests 2026-09-09 15:14:39 +08:00
pjh123 8eafdcceaf docs: 新增 CONTRIBUTING 提交信息风格约定 2026-09-09 15:00:23 +08:00
pjh123 9a2579fe9c fix: GET_TEMPLATE_OBJECT 漏登 ext_word_count——ic 缓存扫描错位修复 2026-08-22 11:30:03 +08:00
pjh123 db401ac6a0 chore: test262 补既有失败 skip 白名单(tagged-template 两项) 2026-08-22 11:22:09 +08:00
pjh123 e460a1aea1 feat: DataView getFloat16/setFloat16 2026-08-22 11:15:55 +08:00
pjh123 0ffb5d2cf3 fix: tagged template 语义修正——cooked undefined/this绑定/site缓存/冻结 + groupBy getter 异常传播 + defineGetter setter 保留 2026-08-22 11:15:55 +08:00
pjh123 9eb0944877 fix: Error.prototype.toString 异常传播语义——getter/Symbol/ToString 异常原样上抛
- name/message 读取改 ordinary_get:访问器 getter 触发,抛错经 take_uncaught_value 恢复原值传播
- name/message 转换改 to_string_full:Symbol 抛 TypeError,用户 ToPrimitive 异常原样传播
- 非对象 this 保持抛 TypeError(与现行规范 §20.5.3.4 及 test262 invalid-receiver/called-as-function 一致)
- 单测补 getter 抛错/Symbol name+message/toString 抛错四例
2026-08-22 10:44:48 +08:00
pjh123 c7b54cb181 feat: String.raw/groupBy/withResolvers/f16round/__defineGetter__ 低垂果实批量实现 2026-08-22 10:26:00 +08:00
pjh123 d2572682dc fix: generator/async native 状态 session 字符串 GC 标记修复 2026-08-22 08:50:41 +08:00
pjh123 c66dd81134 perf: BigInt 参与回收——对齐字符串 GC 路径
- SessionGc 新增 live_bigints 集合,mark 阶段扫描根与对象边标记存活 BigInt
- process_edge 扩展 BigInt 值处理,scan_edges_for_mark 透传 live_bigints
- 新增 sweep_session_bigints:按存活标记清扫不活跃 BigInt box
- collect/collect_strings_only 收集流程接入 BigInt 清扫
- should_collect/should_collect_gc/should_collect_strings 纳入 BigInt 存在性判定
- for_each_value 新增 immutables_cache 根扫描,防止常量池 BigInt 被误回收
- 13 个 gc_runtime_tests 全部 PASS,无新增 clippy 警告
2026-08-22 08:46:00 +08:00
pjh123 8e47168168 perf: mark 边收集去临时 Vec、合并双遍遍历 2026-08-22 08:23:31 +08:00
pjh123 469ef7543b perf: GC 字节账目补齐 + is_epoch_ptr O(1) + 分配热路径触发 2026-08-22 08:10:32 +08:00
pjh123 95155ce450 fix: Promise rejection reason 异常值通道配对修复——create_error 辗转路径归正为 create_from_text 2026-08-21 23:34:04 +08:00
pjh123 355230b745 fix: REPL 变量跨轮次丢失 —— let/const 脚本顶层写全局对象 2026-08-21 22:44:48 +08:00
pjh123 cf57285ebb feat: REPL 改进 — 消除全量历史拼接 + 单 VM 持久 2026-08-21 22:31:33 +08:00
pjh123 c514ab35a3 feat: 实现 console 全局对象 (log/warn/error/info/debug/trace) 2026-08-21 22:29:21 +08:00
pjh123 aa523fcd4c chore: 移除单元测试中4个耗时benchmark测试函数 2026-08-21 22:25:23 +08:00
pjh123 8d6742cc16 docs: README 更新 test262 徽章与多 pass 管线特性说明 2026-08-17 04:15:03 +00:00
pjh123 b9680c80aa feat: Temporal.PlainTime round 舍入(真因子校验 + 跨午夜取模) 2026-08-17 06:23:06 +08:00
pjh123 c6f0e76bf8 feat: Temporal.PlainTime add/subtract 时间域叠加 2026-08-17 06:02:06 +08:00
pjh123 0037f0e5ad feat: Temporal.PlainTime until/since 差值计算 2026-08-17 02:40:21 +08:00
pjh123 bed1abd3f3 feat: Temporal.PlainTime equals/compare 比较语义 2026-08-17 02:34:30 +08:00
pjh123 27cc6333f5 feat: Temporal.PlainTime.from 三分支解析(字符串/实例/bag) 2026-08-17 02:19:01 +08:00
pjh123 a8e68a7a45 feat: Temporal.PlainTime toString options 与字符串化族 2026-08-17 02:14:30 +08:00
pjh123 e06071429c feat: ZonedDateTime.round 舍入(day 双路径 + 真因子校验) 2026-08-17 01:55:52 +08:00
pjh123 430f922ef3 feat: ZonedDateTime.compare 跨实例按 epoch 比较(复用 from 解析器,忽略时区/日历) 2026-08-17 01:27:54 +08:00