[Webkit-unassigned] [Bug 248481] New: Alignment assumed by RegisterAtOffsetList does not accurately describe SIMD registers

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Nov 29 11:08:46 PST 2022


https://bugs.webkit.org/show_bug.cgi?id=248481

            Bug ID: 248481
           Summary: Alignment assumed by RegisterAtOffsetList does not
                    accurately describe SIMD registers
           Product: WebKit
           Version: WebKit Nightly Build
          Hardware: Unspecified
                OS: Unspecified
            Status: NEW
          Keywords: InRadar
          Severity: Normal
          Priority: P2
         Component: WebAssembly
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: d_degazio at apple.com

rdar://102515450

The current RegisterAtOffsetList implementation assumes that the alignment of a register's value is the same as the width of that register. However, 128-bit SIMD registers are currently only aligned to eight-byte intervals. This mismatch between RegisterAtOffsetList's size calculation and other locations (such as in RegisterSetBuilder) can cause assertion failure. For example:

    (module
      (type (;0;) (func (result i32 v128)))
      (func (;0;) (type 0) (result i32 v128)
        (local v128)
        i32.const 0
        v128.const i32x4 0x00000000 0x00000000 0x00000000 0x00000000
      )
      (export "foo" (func 0))
    )

...results in:

    ASSERTION FAILED: static_cast<size_t>(offset - startOffset) == sizeOfAreaInBytes

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20221129/f131ec28/attachment.htm>


More information about the webkit-unassigned mailing list