| Summary: | REGRESSION(r189585): run-perf-tests Speedometer fails with a console error | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | WebKit | Reporter: | Ryosuke Niwa <rniwa> | ||||||
| Component: | JavaScriptCore | Assignee: | Filip Pizlo <fpizlo> | ||||||
| Status: | RESOLVED FIXED | ||||||||
| Severity: | Normal | CC: | barraclough, benjamin, cdumez, fpizlo, ggaren, mark.lam, mhahnenb, msaboff, nrotem, oliver, saam, sam, webkit-bug-importer | ||||||
| Priority: | P1 | Keywords: | InRadar, Regression | ||||||
| Version: | WebKit Nightly Build | ||||||||
| Hardware: | Unspecified | ||||||||
| OS: | Unspecified | ||||||||
| Attachments: |
|
||||||||
|
Description
Ryosuke Niwa
2015-09-11 08:13:42 PDT
Looking at this now. Created attachment 261047 [details]
the patch
Test case:
//@ runMiscNoCJITTest("--useLLInt=false", "--useDFGJIT=false")
function foo(o) {
return o.i7;
}
var o = {};
for (var i = 0; i < 100; ++i)
o["i" + i] = i;
for (var i = 0; i < 100; i+=2)
delete o["i" + i];
for (var i = 0; i < 100; ++i) {
var result = foo(o);
if (result != 7)
throw "Error: bad result: " + result;
}
Created attachment 261048 [details]
the patch
And now, with a test.
Comment on attachment 261048 [details] the patch View in context: https://bugs.webkit.org/attachment.cgi?id=261048&action=review > Source/JavaScriptCore/jit/Repatch.cpp:214 > +static bool forceICFailure(ExecState*) Why the unused ExecState* parameter? > Source/JavaScriptCore/llint/LLIntSlowPaths.cpp:289 > +inline bool shouldJIT(ExecState* exec, CodeBlock*) Why the unused CodeBlock* parameter? (In reply to comment #6) > Comment on attachment 261048 [details] > the patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=261048&action=review > > > Source/JavaScriptCore/jit/Repatch.cpp:214 > > +static bool forceICFailure(ExecState*) > > Why the unused ExecState* parameter? > > > Source/JavaScriptCore/llint/LLIntSlowPaths.cpp:289 > > +inline bool shouldJIT(ExecState* exec, CodeBlock*) > > Why the unused CodeBlock* parameter? So it's easier to insert bisecting code based on code block or the current code origin. Comment on attachment 261048 [details] the patch View in context: https://bugs.webkit.org/attachment.cgi?id=261048&action=review r=me > Source/JavaScriptCore/ChangeLog:21 > + Debugging bugs like these requires adding ad hoc bisection code in various places. We already > + had the basic hooks for this. This patch makes those hooks a bit more useful. Add that the two unused parameter additions are for this reason. (In reply to comment #8) > Comment on attachment 261048 [details] > the patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=261048&action=review > > r=me > > > Source/JavaScriptCore/ChangeLog:21 > > + Debugging bugs like these requires adding ad hoc bisection code in various places. We already > > + had the basic hooks for this. This patch makes those hooks a bit more useful. > > Add that the two unused parameter additions are for this reason. Done. Thanks! Landed in http://trac.webkit.org/changeset/189658 |