[Webkit-unassigned] [Bug 68593] DFG JIT should infer which uses of a variable are not aliased

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Sep 27 14:58:01 PDT 2011


https://bugs.webkit.org/show_bug.cgi?id=68593





--- Comment #8 from Filip Pizlo <fpizlo at apple.com>  2011-09-27 14:58:01 PST ---
It should be noted that this patch significantly ruggedizes our tiered compilation:

- Previously OSR entry would verify a prediction at the head of a basic block even if the variable was dead at the head, because it had no way of distinguishing between a variable being dead at the tail or dead at the head (if it was live at either, it would assume it was live at both).

- Previously if a virtual register was reused for a different purpose in the middle of a function, we would get mixed predictins between the different uses of the variable.  Now we get separate predictions.

It also serves as a stepping stone for two other improvements:

- Currently we do not consider flow sensitivity for variable predictions.  This patch does not do this yet, but gives us a facility for doing so, by separating how a variable is stored (i.e. its virtual register) from how it's predicted.

- Currently if we tried to do inlining of two functions that have different types in their variables (which is almost certainly going to be the case if they are different functions) then the predictions will get mixed.  This patch ensures that once we implement inlining, we will not mix predictions just because the variables got assigned the same virtual registers.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list