Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: c90b978eee248e990a39ad9f2b0d954ac51fc47c
      
https://github.com/WebKit/WebKit/commit/c90b978eee248e990a39ad9f2b0d954ac51fc47c
  Author: Anand Srinivasan <[email protected]>
  Date:   2026-05-01 (Fri, 01 May 2026)

  Changed paths:
    A JSTests/wasm/stress/ipint-multimem-zero-page-oob.js
    M Source/JavaScriptCore/llint/InPlaceInterpreter64.asm

  Log Message:
  -----------
  IPInt multimemory bounds check underflows if memory size is 0
https://bugs.webkit.org/show_bug.cgi?id=313789
rdar://175861149

Reviewed by Yusuke Suzuki.

When accessing a memory with a nonzero index that has a size of 0 bytes,
the bounds check computes (memory size - (access size - 1)), which
underflows. This patch rewrites it without the subtraction to avoid the
underflow.

Test: JSTests/wasm/stress/ipint-multimem-zero-page-oob.js

* JSTests/wasm/stress/ipint-multimem-zero-page-oob.js: Added.
(let.wat.module.import.string_appeared_here.string_appeared_here.memory.1.import.string_appeared_here.string_appeared_here.memory.0.1.func.export.string_appeared_here.param.i32.result.i32.local.0.i32.load.1.func.export.string_appeared_here.param.i32.result.i64.local.0.i64.load.1.func.export.string_appeared_here.param.i32.result.i32.local.0.i32.load8_u.1.func.export.string_appeared_here.param.i32.local.0.i32.const.0.i32.store.1.func.export.string_appeared_here.param.i32.local.0.i64.const.0.i64.store.1.func.export.string_appeared_here.param.i32.local.0.i32.const.0.i32.store8.1.async
 test):
* Source/JavaScriptCore/llint/InPlaceInterpreter64.asm:

Canonical link: https://commits.webkit.org/312439@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to