[Webkit-unassigned] [Bug 232058] New: Add missing overflow check to DFGIntegerRangeOptimizationPhase::filterConstant()

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Oct 20 17:23:37 PDT 2021


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

            Bug ID: 232058
           Summary: Add missing overflow check to
                    DFGIntegerRangeOptimizationPhase::filterConstant()
           Product: WebKit
           Version: WebKit Nightly Build
          Hardware: Unspecified
                OS: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: JavaScriptCore
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: msaboff at apple.com

>From code review, it appears that an overflow check is needed when creating a more specific Relationship.

Consider the current code:
   ...
        if (sumOverflows<int>(otherRight, other.m_offset))
            return *this;

        int otherEffectiveRight = otherRight + other.m_offset;

        switch (other.m_kind) {
        case Equal:
            // Return a version of *this that is Equal to other's constant.
            return Relationship(m_left, m_right, Equal, otherEffectiveRight - thisRight);
    ...

We check if other's value + offset overflows, but what about the case where otherEffectiveRight - thisRight might overflow?

-- 
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/20211021/b74c910d/attachment.htm>


More information about the webkit-unassigned mailing list