RESOLVED FIXED 71684
DFG 32_64 - registers cannot be reused arbitrarily if speculation failures are possible
https://bugs.webkit.org/show_bug.cgi?id=71684
Summary DFG 32_64 - registers cannot be reused arbitrarily if speculation failures ar...
Yuqiang Xian
Reported 2011-11-07 06:59:34 PST
Currently in DFG JIT, we try to reuse the physical register of an operand for temporary usage if the current use of the operand is the last use. But sometimes this can be wrong, for example if there are possible speculation failures and we need to fallback to baseline JIT, the value of the operand which is supposed to be hold in the physical register can be modified by register reusing. The fixes the last inspector failures in layout test on Mac 32-bit if switching on DFG. (BTW, I didn't observe the failure in Gtk+ port on Linux ia32 as the inspector tests are skipped in Gtk layout test, and only w/ a 32-bit Mac environment setup today can I notice this failure...)
Attachments
the patch (3.20 KB, patch)
2011-11-07 07:02 PST, Yuqiang Xian
no flags
Yuqiang Xian
Comment 1 2011-11-07 07:02:49 PST
Created attachment 113863 [details] the patch
WebKit Review Bot
Comment 2 2011-11-07 14:14:06 PST
Comment on attachment 113863 [details] the patch Clearing flags on attachment: 113863 Committed r99476: <http://trac.webkit.org/changeset/99476>
WebKit Review Bot
Comment 3 2011-11-07 14:14:10 PST
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.