RESOLVED FIXED 160110
MathICs should be able to emit only a jump along the inline path when they don't have any type data
https://bugs.webkit.org/show_bug.cgi?id=160110
Summary MathICs should be able to emit only a jump along the inline path when they do...
Saam Barati
Reported 2016-07-22 18:29:00 PDT
And we should repatch them on first execution
Attachments
WIP (12.31 KB, patch)
2016-07-25 15:38 PDT, Saam Barati
no flags
patch (12.94 KB, patch)
2016-07-26 17:21 PDT, Saam Barati
mark.lam: review+
patch for landing (13.07 KB, patch)
2016-07-27 11:39 PDT, Saam Barati
no flags
Saam Barati
Comment 1 2016-07-25 15:38:52 PDT
Created attachment 284532 [details] WIP almsot done
WebKit Commit Bot
Comment 2 2016-07-25 15:40:21 PDT
Attachment 284532 [details] did not pass style-queue: ERROR: Source/JavaScriptCore/jit/JITMathIC.h:112: Place brace on its own line for function definitions. [whitespace/braces] [4] ERROR: Source/JavaScriptCore/jit/JITMathIC.h:124: Place brace on its own line for function definitions. [whitespace/braces] [4] Total errors found: 2 in 8 files If any of these errors are false positives, please file a bug against check-webkit-style.
Saam Barati
Comment 3 2016-07-26 17:21:20 PDT
WebKit Commit Bot
Comment 4 2016-07-26 17:23:41 PDT
Attachment 284656 [details] did not pass style-queue: ERROR: Source/JavaScriptCore/jit/JITMathIC.h:122: Place brace on its own line for function definitions. [whitespace/braces] [4] ERROR: Source/JavaScriptCore/jit/JITMathIC.h:134: Place brace on its own line for function definitions. [whitespace/braces] [4] Total errors found: 2 in 6 files If any of these errors are false positives, please file a bug against check-webkit-style.
Mark Lam
Comment 5 2016-07-27 08:52:11 PDT
Comment on attachment 284656 [details] patch View in context: https://bugs.webkit.org/attachment.cgi?id=284656&action=review r=me with fixes. > Source/JavaScriptCore/jit/JITMathIC.h:74 > + // It looks like the MathIC has yet to execute. We don't want to emit code in this > + // case for a couple reasons. First, the operation may never execute, so if we don't emit > + // code, it's a win. Second, if the operation does execute, we can emit better code > + // once we have an idea about the types of lhs and rhs. nice! > Source/JavaScriptCore/jit/JITMathIC.h:81 > + ASSERT(static_cast<ptrdiff_t>(inlineSize) <= MacroAssembler::maxJumpReplacementSize()); I think you should use ASSERT_UNUSED(inlineSize, ...) here to fix the build breakage. > Source/JavaScriptCore/jit/JITMathICInlineResult.h:34 > + DelayFastPath, I don't see this used anywhere. Can remove?
Saam Barati
Comment 6 2016-07-27 10:34:47 PDT
Comment on attachment 284656 [details] patch View in context: https://bugs.webkit.org/attachment.cgi?id=284656&action=review >> Source/JavaScriptCore/jit/JITMathICInlineResult.h:34 >> + DelayFastPath, > > I don't see this used anywhere. Can remove? Yeah. I forgot to remove this. I had this in the original patch but forgot to remove it after I refactored.
Saam Barati
Comment 7 2016-07-27 11:39:00 PDT
Created attachment 284712 [details] patch for landing
WebKit Commit Bot
Comment 8 2016-07-27 11:40:57 PDT
Attachment 284712 [details] did not pass style-queue: ERROR: Source/JavaScriptCore/jit/JITMathIC.h:122: Place brace on its own line for function definitions. [whitespace/braces] [4] ERROR: Source/JavaScriptCore/jit/JITMathIC.h:134: Place brace on its own line for function definitions. [whitespace/braces] [4] Total errors found: 2 in 5 files If any of these errors are false positives, please file a bug against check-webkit-style.
WebKit Commit Bot
Comment 9 2016-07-27 12:57:41 PDT
Comment on attachment 284712 [details] patch for landing Clearing flags on attachment: 284712 Committed r203786: <http://trac.webkit.org/changeset/203786>
WebKit Commit Bot
Comment 10 2016-07-27 12:57:46 PDT
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.