outlining integration in compiler
This commit is contained in:
Родитель
5955301625
Коммит
3a1a48bb74
4
emcc
4
emcc
|
@ -1596,6 +1596,10 @@ try:
|
|||
logging.debug('running post-closure post-opts')
|
||||
js_optimizer_queue += ['simplifyExpressionsPost']
|
||||
|
||||
if shared.Settings.OUTLINING_LIMIT > 0:
|
||||
js_optimizer_queue += ['outline']
|
||||
js_optimizer_extra_info['sizeToOutline'] = shared.Settings.OUTLINING_LIMIT
|
||||
|
||||
if (not closure or shared.Settings.ASM_JS) and shared.Settings.RELOOP and debug_level < 3:
|
||||
js_optimizer_queue += ['registerize']
|
||||
|
||||
|
|
|
@ -125,6 +125,11 @@ var INLINING_LIMIT = 0; // A limit on inlining. If 0, we will inline normally i
|
|||
// we will prevent inlining of functions of this size or larger
|
||||
// in closure. 50 is a reasonable setting if you do not want
|
||||
// inlining
|
||||
var OUTLINING_LIMIT = 0; // A function size above which we try to automatically break up
|
||||
// functions into smaller ones, to avoid the downsides of very
|
||||
// large functions (JS engines often compile them very slowly,
|
||||
// compile them with lower optimizations, or do not optimize them
|
||||
// at all). If 0, we do not perform outlining at all.
|
||||
|
||||
// Generated code debugging options
|
||||
var SAFE_HEAP = 0; // Check each write to the heap, for example, this will give a clear
|
||||
|
|
Загрузка…
Ссылка в новой задаче