Bug 204866 - Fix a broken assertion in GetByStatus::computeForStubInfoWithoutExitSiteFeedback().
Summary: Fix a broken assertion in GetByStatus::computeForStubInfoWithoutExitSiteFeedb...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Mark Lam
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2019-12-04 17:19 PST by Mark Lam
Modified: 2019-12-04 17:39 PST (History)
6 users (show)

See Also:


Attachments
proposed patch. (2.88 KB, patch)
2019-12-04 17:25 PST, Mark Lam
saam: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Mark Lam 2019-12-04 17:19:18 PST
The assertion wrong assumes that access.offset() cannot be invalid unless the access.type() is a Miss.  However, if the AccessCase is a Custom value or accessor, the offset is always invalid.  We'll fix the assertion.
Comment 1 Mark Lam 2019-12-04 17:25:01 PST
Created attachment 384868 [details]
proposed patch.
Comment 2 Saam Barati 2019-12-04 17:28:29 PST
Comment on attachment 384868 [details]
proposed patch.

View in context: https://bugs.webkit.org/attachment.cgi?id=384868&action=review

> Source/JavaScriptCore/bytecode/GetByStatus.cpp:295
> +                ASSERT(access.isCustom() || ((AccessCase::Miss == access.type()) == (access.offset() == invalidOffset)));

you could also do:
ASSERT(((AccessCase::Miss == access.type() || access.isCustom()) == (access.offset() == invalidOffset)));
Comment 3 Mark Lam 2019-12-04 17:38:06 PST
(In reply to Saam Barati from comment #2)
> you could also do:
> ASSERT(((AccessCase::Miss == access.type() || access.isCustom()) ==
> (access.offset() == invalidOffset)));

Thanks for the review.  I've applied this change.

Landed in r253136: <http://trac.webkit.org/r253136>.
Comment 4 Radar WebKit Bug Importer 2019-12-04 17:39:22 PST
<rdar://problem/57648868>