RESOLVED FIXED 227159
[DFG] Untyped branches should eliminate checks based on results from the AbstractInterpreter
https://bugs.webkit.org/show_bug.cgi?id=227159
Summary [DFG] Untyped branches should eliminate checks based on results from the Abst...
Robin Morisset
Reported 2021-06-17 23:09:41 PDT
We currently emit a ton of code for Untyped branches, as we use branchIfTruthy which does not know anything about the abstract interpreter. Even worse: we call branchIfTruthy after emitting some fast paths, and branchIfTruthy replicates these fast paths (Int32 and Booleans).
Attachments
Patch (14.57 KB, patch)
2021-06-17 23:20 PDT, Robin Morisset
no flags
Robin Morisset
Comment 1 2021-06-17 23:20:34 PDT
Filip Pizlo
Comment 2 2021-06-18 10:12:40 PDT
Comment on attachment 431757 [details] Patch Did the FTL have a similar problem?
EWS
Comment 3 2021-06-18 10:17:52 PDT
Committed r279041 (238961@main): <https://commits.webkit.org/238961@main> All reviewed patches have been landed. Closing bug and clearing flags on attachment 431757 [details].
Radar WebKit Bug Importer
Comment 4 2021-06-18 10:18:27 PDT
Robin Morisset
Comment 5 2021-06-18 12:46:51 PDT
(In reply to Filip Pizlo from comment #2) > Comment on attachment 431757 [details] > Patch > > Did the FTL have a similar problem? No, it calls boolify() which implements almost exactly the same logic as I added here to the DFG.
Note You need to log in before you can comment on or make changes to this bug.