Bug 1273955 - Bump the bytecode size limit of Ion to account for increased size of JSScript code length. r=h4writer
☠☠ backed out by a94bd69a8616 ☠ ☠
authorNicolas B. Pierron <nicolas.b.pierron@mozilla.com>
Mon, 23 May 2016 14:27:10 +0000
changeset 298495 16a18faa536392f4a263a1470f177bbeb338c324
parent 298494 91c13e5235077d947cea0e262f13485247750029
child 298496 dc94f1f820843050bcb76e1a53499b0397e85e72
push id77196
push usernpierron@mozilla.com
push dateMon, 23 May 2016 14:27:22 +0000
treeherdermozilla-inbound@16a18faa5363 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersh4writer
bugs1273955
milestone49.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1273955 - Bump the bytecode size limit of Ion to account for increased size of JSScript code length. r=h4writer
js/src/jit/IonOptimizationLevels.cpp
js/src/jit/JitOptions.cpp
--- a/js/src/jit/IonOptimizationLevels.cpp
+++ b/js/src/jit/IonOptimizationLevels.cpp
@@ -35,21 +35,21 @@ OptimizationInfo::initNormalOptimization
     gvn_ = true;
     rangeAnalysis_ = true;
     reordering_ = true;
     sincos_ = true;
     sink_ = true;
 
     registerAllocator_ = RegisterAllocator_Backtracking;
 
-    inlineMaxBytecodePerCallSiteMainThread_ = 500;
-    inlineMaxBytecodePerCallSiteOffThread_ = 1000;
-    inlineMaxCalleeInlinedBytecodeLength_ = 3350;
-    inlineMaxTotalBytecodeLength_ = 80000;
-    inliningMaxCallerBytecodeLength_ = 1500;
+    inlineMaxBytecodePerCallSiteMainThread_ = 550;
+    inlineMaxBytecodePerCallSiteOffThread_ = 1100;
+    inlineMaxCalleeInlinedBytecodeLength_ = 3550;
+    inlineMaxTotalBytecodeLength_ = 85000;
+    inliningMaxCallerBytecodeLength_ = 1600;
     maxInlineDepth_ = 3;
     scalarReplacement_ = true;
     smallFunctionMaxInlineDepth_ = 10;
     compilerWarmUpThreshold_ = CompilerWarmupThreshold;
     compilerSmallFunctionWarmUpThreshold_ = CompilerSmallFunctionWarmupThreshold;
     inliningWarmUpThresholdFactor_ = 0.125;
     inliningRecompileThresholdFactor_ = 4;
 }
--- a/js/src/jit/JitOptions.cpp
+++ b/js/src/jit/JitOptions.cpp
@@ -161,17 +161,17 @@ DefaultJitOptions::DefaultJitOptions()
     // How many actual arguments are accepted on the C stack.
     SET_DEFAULT(maxStackArgs, 4096);
 
     // How many times we will try to enter a script via OSR before
     // invalidating the script.
     SET_DEFAULT(osrPcMismatchesBeforeRecompile, 6000);
 
     // The bytecode length limit for small function.
-    SET_DEFAULT(smallFunctionMaxBytecodeLength_, 120);
+    SET_DEFAULT(smallFunctionMaxBytecodeLength_, 130);
 
     // An artificial testing limit for the maximum supported offset of
     // pc-relative jump and call instructions.
     SET_DEFAULT(jumpThreshold, UINT32_MAX);
 
     // Force how many invocation or loop iterations are needed before compiling
     // a function with the highest ionmonkey optimization level.
     // (i.e. OptimizationLevel_Normal)