[Webkit-unassigned] [Bug 160588] Refactor MathIC compilation process in Baseline and DFG to turn temporary registers usage more flexible

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Jan 2 20:42:21 PST 2017


--- Comment #45 from Caio Lima <ticaiolima at gmail.com> ---
View in context: https://bugs.webkit.org/attachment.cgi?id=297820&action=review

>> Source/JavaScriptCore/dfg/DFGSpeculativeJIT.cpp:3572
>> +            scratchGPR[i] = InvalidGPRReg;
> Is this side of the branch ever taken? It seems like we should almost assert against it, and if a generator knows how to handle using the tags, it should just *always* do that and report that it needs fewer registers.

The problem here actually isn't the DG version, but the Baseline version on JITArithmetic.cpp. Take a look at https://github.com/caiolima/webkit/blob/math-ic-scratch/Source/JavaScriptCore/jit/JITArithmetic.cpp#L761
In this case, resultRegs = leftRegs, which makes impossible use resultRegs.tagGPR in that case. This way, we really need this mechanism to make sure that Api works across DFG and Baseline.

You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.webkit.org/pipermail/webkit-unassigned/attachments/20170103/e5686205/attachment.html>

More information about the webkit-unassigned mailing list