From c887113d933548d0e771c21ebd0989d99b5ba4e6 Mon Sep 17 00:00:00 2001 From: rmcilroy Date: Thu, 3 Nov 2016 04:00:23 -0700 Subject: [PATCH] [Tests] Fix some concurrent optimization tests on Ignition. BUG=v8:4680 Review-Url: https://codereview.chromium.org/2467223004 Cr-Commit-Position: refs/heads/master@{#40718} --- .../compiler/manual-concurrent-recompile.js | 8 +++++- test/mjsunit/mjsunit.status | 26 +++---------------- .../regress/regress-embedded-cons-string.js | 1 + .../regress-prepare-break-while-recompile.js | 2 ++ 4 files changed, 13 insertions(+), 24 deletions(-) diff --git a/test/mjsunit/compiler/manual-concurrent-recompile.js b/test/mjsunit/compiler/manual-concurrent-recompile.js index b2b63988ba..66245ef073 100644 --- a/test/mjsunit/compiler/manual-concurrent-recompile.js +++ b/test/mjsunit/compiler/manual-concurrent-recompile.js @@ -53,9 +53,15 @@ f(g(1)); assertUnoptimized(f); assertUnoptimized(g); +%BaselineFunctionOnNextCall(f); +%BaselineFunctionOnNextCall(g); +f(g(2)); +assertUnoptimized(f); +assertUnoptimized(g); + %OptimizeFunctionOnNextCall(f, "concurrent"); %OptimizeFunctionOnNextCall(g, "concurrent"); -f(g(2)); // Kick off recompilation. +f(g(3)); // Kick off recompilation. assertUnoptimized(f, "no sync"); // Not yet optimized since recompilation assertUnoptimized(g, "no sync"); // is still blocked. diff --git a/test/mjsunit/mjsunit.status b/test/mjsunit/mjsunit.status index bc2c909795..5a874e2bed 100644 --- a/test/mjsunit/mjsunit.status +++ b/test/mjsunit/mjsunit.status @@ -640,18 +640,9 @@ }], # variant == turbofan_opt ############################################################################## -['variant == ignition', { +['variant == ignition or variant == ignition_staging', { + # TODO(5587): fails to liveedit evaled code. 'debug-liveedit-double-call': [FAIL], - - # Might trigger stack overflow. - 'unicode-test': [SKIP], - - # Fails because concurrent compilation is not triggered on bytecode. - # Check in Runtime_OptimizeFunctionOnNextCall. - 'compiler/manual-concurrent-recompile': [FAIL], - 'regress/regress-embedded-cons-string': [FAIL], - 'regress/regress-prepare-break-while-recompile': [FAIL], - }], # variant == ignition ['variant == ignition and msan', { @@ -667,19 +658,9 @@ 'es6/tail-call-megatest*': [SKIP], }], # variant == ignition and msan -############################################################################## -['variant == ignition_staging', { - 'debug-liveedit-double-call': [FAIL], - - # Fails because concurrent compilation is not triggered on bytecode. - # Check in Runtime_OptimizeFunctionOnNextCall. - 'compiler/manual-concurrent-recompile': [FAIL], - 'regress/regress-embedded-cons-string': [FAIL], - 'regress/regress-prepare-break-while-recompile': [FAIL], -}], # variant == ignition_staging - ############################################################################## ['variant == ignition_turbofan', { + # TODO(5587): fails to liveedit evaled code. 'debug-liveedit-double-call': [FAIL], # TODO(rmcilroy,titzer): Times out after @@ -691,7 +672,6 @@ # TODO(rmcilroy): Flaky OOM. 'unicodelctest-no-optimization': [SKIP], - }], # variant == ignition_turbofan ['variant == ignition_turbofan and arch == arm', { diff --git a/test/mjsunit/regress/regress-embedded-cons-string.js b/test/mjsunit/regress/regress-embedded-cons-string.js index b08a94257c..57028b0cef 100644 --- a/test/mjsunit/regress/regress-embedded-cons-string.js +++ b/test/mjsunit/regress/regress-embedded-cons-string.js @@ -36,6 +36,7 @@ if (!%IsConcurrentRecompilationSupported()) { function test(fun) { fun(); + %BaselineFunctionOnNextCall(fun); fun(); // Mark for concurrent optimization. %OptimizeFunctionOnNextCall(fun, "concurrent"); diff --git a/test/mjsunit/regress/regress-prepare-break-while-recompile.js b/test/mjsunit/regress/regress-prepare-break-while-recompile.js index 0673220e4a..528f517148 100644 --- a/test/mjsunit/regress/regress-prepare-break-while-recompile.js +++ b/test/mjsunit/regress/regress-prepare-break-while-recompile.js @@ -45,6 +45,8 @@ function bar() { return x; } +foo(); +%BaselineFunctionOnNextCall(foo); foo(); // Mark and kick off recompilation. %OptimizeFunctionOnNextCall(foo, "concurrent");