B3 should run tail duplication at the bitter end
authorfpizlo@apple.com <fpizlo@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 29 Apr 2018 23:41:55 +0000 (23:41 +0000)
committerfpizlo@apple.com <fpizlo@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 29 Apr 2018 23:41:55 +0000 (23:41 +0000)
commit8f4468dd9d2cf4736cfbe1fe97c7498ada76f515
tree98b592d9f80cd7d9d73a4f2992f08d3788666984
parentf4d37312d7f48fe55deaed2765447b928880521e
B3 should run tail duplication at the bitter end
https://bugs.webkit.org/show_bug.cgi?id=185123

Reviewed by Geoffrey Garen.

Also added an option to disable taildup. This appears to be a 1% AsmBench speed-up. It's neutral
everywhere else.

The goal of this change is to allow us to run path specialization after switch lowering but
before tail duplication.

* b3/B3Generate.cpp:
(JSC::B3::generateToAir):
* runtime/Options.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@231154 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/b3/B3Generate.cpp
Source/JavaScriptCore/runtime/Options.h