[fullcodegen] Remove --stress-fullcodegen flag.

This is in preparation to the removal of the FullCodeGenerator, we no
longer need the ability to stress the underlying implementation.

R=rmcilroy@chromium.org
BUG=v8:6409

Cq-Include-Trybots: master.tryserver.v8:v8_linux_noi18n_rel_ng
Change-Id: Iad3177d6de4a68b57c12a770b6e85ed7a9710254
Reviewed-on: https://chromium-review.googlesource.com/584747
Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
Commit-Queue: Michael Starzinger <mstarzinger@chromium.org>
Cr-Commit-Position: refs/heads/master@{#47276}
This commit is contained in:
Michael Starzinger 2017-08-10 09:54:33 +02:00 committed by Commit Bot
parent d09f9c424f
commit 45b4522e40
92 changed files with 71 additions and 223 deletions

View File

@ -601,7 +601,7 @@ bool AstNumberingVisitor::Renumber(FunctionLiteral* node) {
}
if (disable_fullcodegen_reason_ != kNoReason) {
node->set_must_use_ignition();
if (FLAG_trace_opt && FLAG_stress_fullcodegen) {
if (FLAG_trace_opt && scope->asm_function()) {
// TODO(leszeks): This is a quick'n'dirty fix to allow the debug name of
// the function to be accessed in the below print. This DCHECK will fail
// if we move ast numbering off the main thread, but that won't be before

View File

@ -197,8 +197,6 @@ bool CompilerDispatcher::CanEnqueue() {
}
bool CompilerDispatcher::CanEnqueue(Handle<SharedFunctionInfo> function) {
DCHECK_IMPLIES(IsEnabled(), !FLAG_stress_fullcodegen);
if (!CanEnqueue()) return false;
// We only handle functions (no eval / top-level code / wasm) that are

View File

@ -268,8 +268,8 @@ bool ShouldUseFullCodegen(FunctionLiteral* literal) {
// Use full-codegen for asm.js functions.
if (literal->scope()->asm_function()) return true;
// If stressing full-codegen then use it for all functions it can support.
return FLAG_stress_fullcodegen;
// Disabled by default.
return false;
}
bool UseAsmWasm(FunctionLiteral* literal,

View File

@ -310,10 +310,6 @@ DEFINE_VALUE_IMPLICATION(optimize_for_size, max_semi_space_size, 1)
DEFINE_BOOL(unbox_double_arrays, true, "automatically unbox arrays of doubles")
DEFINE_BOOL(string_slices, true, "use string slices")
// Flags for Full-codegen.
DEFINE_BOOL(stress_fullcodegen, false,
"use fullcodegen compiler for all functions it can support")
// Flags for Ignition.
DEFINE_BOOL(ignition_osr, true, "enable support for OSR from ignition code")
DEFINE_BOOL(ignition_elide_noneffectful_bytecodes, true,
@ -474,7 +470,6 @@ DEFINE_BOOL(turbo_experimental, false,
DEFINE_BOOL(minimal, false,
"simplifies execution model to make porting "
"easier (e.g. always use Ignition, never optimize)")
DEFINE_NEG_IMPLICATION(minimal, stress_fullcodegen)
DEFINE_NEG_IMPLICATION(minimal, opt)
DEFINE_NEG_IMPLICATION(minimal, use_ic)

View File

@ -75,7 +75,6 @@ class BytecodeGraphTester {
BytecodeGraphTester(Isolate* isolate, const char* script,
const char* filter = kFunctionName)
: isolate_(isolate), script_(script) {
i::FLAG_stress_fullcodegen = false;
i::FLAG_always_opt = false;
i::FLAG_allow_natives_syntax = true;
i::FLAG_loop_assignment_analysis = false;

View File

@ -29,7 +29,6 @@ static void InstallIsOptimizedHelper(v8::Isolate* isolate) {
TEST(DeoptSimple) {
FLAG_stress_fullcodegen = false;
FLAG_allow_natives_syntax = true;
FunctionTester T(
@ -47,7 +46,6 @@ TEST(DeoptSimple) {
TEST(DeoptSimpleInExpr) {
FLAG_stress_fullcodegen = false;
FLAG_allow_natives_syntax = true;
FunctionTester T(
@ -66,7 +64,6 @@ TEST(DeoptSimpleInExpr) {
TEST(DeoptExceptionHandlerCatch) {
FLAG_stress_fullcodegen = false;
FLAG_allow_natives_syntax = true;
FunctionTester T(
@ -86,7 +83,6 @@ TEST(DeoptExceptionHandlerCatch) {
TEST(DeoptExceptionHandlerFinally) {
FLAG_stress_fullcodegen = false;
FLAG_allow_natives_syntax = true;
FunctionTester T(
@ -106,7 +102,6 @@ TEST(DeoptExceptionHandlerFinally) {
TEST(DeoptTrivial) {
FLAG_stress_fullcodegen = false;
FLAG_allow_natives_syntax = true;
FunctionTester T(

View File

@ -10,7 +10,6 @@ namespace internal {
namespace compiler {
TEST(Throw) {
FLAG_stress_fullcodegen = false;
FunctionTester T("(function(a,b) { if (a) { throw b; } else { return b; }})");
T.CheckThrows(T.true_value(), T.NewObject("new Error"));
@ -19,7 +18,6 @@ TEST(Throw) {
TEST(ThrowMessagePosition) {
FLAG_stress_fullcodegen = false;
static const char* src =
"(function(a, b) { \n"
" if (a == 1) throw 1; \n"
@ -46,7 +44,6 @@ TEST(ThrowMessagePosition) {
TEST(ThrowMessageDirectly) {
FLAG_stress_fullcodegen = false;
static const char* src =
"(function(a, b) {"
" if (a) { throw b; } else { throw new Error(b); }"
@ -65,7 +62,6 @@ TEST(ThrowMessageDirectly) {
TEST(ThrowMessageIndirectly) {
FLAG_stress_fullcodegen = false;
static const char* src =
"(function(a, b) {"
" try {"
@ -88,7 +84,6 @@ TEST(ThrowMessageIndirectly) {
TEST(Catch) {
FLAG_stress_fullcodegen = false;
const char* src =
"(function(a,b) {"
" var r = '-';"
@ -107,7 +102,6 @@ TEST(Catch) {
TEST(CatchNested) {
FLAG_stress_fullcodegen = false;
const char* src =
"(function(a,b) {"
" var r = '-';"
@ -131,7 +125,6 @@ TEST(CatchNested) {
TEST(CatchBreak) {
FLAG_stress_fullcodegen = false;
const char* src =
"(function(a,b) {"
" var r = '-';"
@ -156,7 +149,6 @@ TEST(CatchBreak) {
TEST(CatchCall) {
FLAG_stress_fullcodegen = false;
const char* src =
"(function(fun) {"
" var r = '-';"
@ -178,7 +170,6 @@ TEST(CatchCall) {
TEST(Finally) {
FLAG_stress_fullcodegen = false;
const char* src =
"(function(a,b) {"
" var r = '-';"
@ -196,7 +187,6 @@ TEST(Finally) {
TEST(FinallyBreak) {
FLAG_stress_fullcodegen = false;
const char* src =
"(function(a,b) {"
" var r = '-';"
@ -220,7 +210,6 @@ TEST(FinallyBreak) {
TEST(DeoptTry) {
FLAG_stress_fullcodegen = false;
const char* src =
"(function f(a) {"
" try {"
@ -237,7 +226,6 @@ TEST(DeoptTry) {
TEST(DeoptCatch) {
FLAG_stress_fullcodegen = false;
const char* src =
"(function f(a) {"
" try {"
@ -254,7 +242,6 @@ TEST(DeoptCatch) {
TEST(DeoptFinallyReturn) {
FLAG_stress_fullcodegen = false;
const char* src =
"(function f(a) {"
" try {"
@ -271,7 +258,6 @@ TEST(DeoptFinallyReturn) {
TEST(DeoptFinallyReThrow) {
FLAG_stress_fullcodegen = false;
const char* src =
"(function f(a) {"
" try {"

View File

@ -387,7 +387,6 @@ TEST(PropertyKeyedDelete) {
TEST(GlobalLoad) {
FLAG_stress_fullcodegen = false;
FunctionTester T("(function() { return g; })");
T.CheckThrows(T.undefined(), T.undefined());
@ -397,7 +396,6 @@ TEST(GlobalLoad) {
TEST(GlobalStoreStrict) {
FLAG_stress_fullcodegen = false;
FunctionTester T("(function(a,b) { 'use strict'; g = a + b; return g; })");
T.CheckThrows(T.Val(22), T.Val(11));

View File

@ -10,7 +10,6 @@ namespace internal {
namespace compiler {
TEST(TerminateAtMethodEntry) {
FLAG_stress_fullcodegen = false;
FunctionTester T("(function(a,b) { return 23; })");
T.CheckCall(T.Val(23));

View File

@ -66,35 +66,30 @@ static void RunVariableTests(const char* source, const char* tests[]) {
TEST(StackLoadVariables) {
FLAG_stress_fullcodegen = false;
const char* source = "(function(a,r) { %s; return r; })";
RunVariableTests(source, load_tests);
}
TEST(ContextLoadVariables) {
FLAG_stress_fullcodegen = false;
const char* source = "(function(a,r) { %s; function f() {x} return r; })";
RunVariableTests(source, load_tests);
}
TEST(StackStoreVariables) {
FLAG_stress_fullcodegen = false;
const char* source = "(function(a,r) { %s; return r; })";
RunVariableTests(source, store_tests);
}
TEST(ContextStoreVariables) {
FLAG_stress_fullcodegen = false;
const char* source = "(function(a,r) { %s; function f() {x} return r; })";
RunVariableTests(source, store_tests);
}
TEST(SelfReferenceVariable) {
FLAG_stress_fullcodegen = false;
FunctionTester T("(function self() { return self; })");
T.CheckCall(T.function);

View File

@ -4019,7 +4019,7 @@ TEST(ObjectsInOptimizedCodeAreWeak) {
}
TEST(NewSpaceObjectsInOptimizedCode) {
if (FLAG_always_opt || !FLAG_opt || !FLAG_stress_fullcodegen) return;
if (FLAG_always_opt || !FLAG_opt) return;
FLAG_allow_natives_syntax = true;
CcTest::InitializeVM();
Isolate* isolate = CcTest::i_isolate();

View File

@ -302,7 +302,6 @@ void ProgramOptions::PrintHeader(std::ostream& stream) const { // NOLINT
V8InitializationScope::V8InitializationScope(const char* exec_path)
: platform_(v8::platform::CreateDefaultPlatform()) {
i::FLAG_stress_fullcodegen = false;
i::FLAG_always_opt = false;
i::FLAG_allow_natives_syntax = true;

View File

@ -23,7 +23,6 @@ InterpreterTester::InterpreterTester(
source_(source),
bytecode_(bytecode),
feedback_metadata_(feedback_metadata) {
i::FLAG_stress_fullcodegen = false;
i::FLAG_always_opt = false;
}

View File

@ -72,7 +72,6 @@ static const char* kGoldenFileDirectory =
class InitializedIgnitionHandleScope : public InitializedHandleScope {
public:
InitializedIgnitionHandleScope() {
i::FLAG_stress_fullcodegen = false;
i::FLAG_always_opt = false;
i::FLAG_allow_natives_syntax = true;
}

View File

@ -110,15 +110,12 @@ class OptimizedBytecodeSourcePositionTester final {
explicit OptimizedBytecodeSourcePositionTester(Isolate* isolate)
: isolate_(isolate) {
SaveOptimizationFlags();
saved_flag_stress_fullcodegen_ = FLAG_stress_fullcodegen;
FLAG_stress_fullcodegen = false;
saved_flag_always_opt_ = FLAG_always_opt;
FLAG_always_opt = false;
}
~OptimizedBytecodeSourcePositionTester() {
RestoreOptimizationFlags();
FLAG_stress_fullcodegen = saved_flag_stress_fullcodegen_;
FLAG_always_opt = saved_flag_always_opt_;
}
@ -143,7 +140,6 @@ class OptimizedBytecodeSourcePositionTester final {
Isolate* isolate_;
int saved_optimization_bitmap_;
bool saved_flag_stress_fullcodegen_;
bool saved_flag_always_opt_;
};

View File

@ -22106,11 +22106,6 @@ const char* kMegamorphicTestProgram =
void TestStubCache(bool primary) {
using namespace i;
// The test does not work with interpreter because bytecode handlers taken
// from the snapshot already refer to ICs with disabled counters and there
// is no way to trigger bytecode handlers recompilation.
if (!FLAG_stress_fullcodegen) return;
FLAG_native_code_counters = true;
if (primary) {
FLAG_test_primary_stub_cache = true;
@ -23061,11 +23056,6 @@ TEST(AccessCheckThrows) {
TEST(AccessCheckInIC) {
using namespace i;
// The test does not work with interpreter because bytecode handlers taken
// from the snapshot already refer to ICs with disabled counters and there
// is no way to trigger bytecode handlers recompilation.
if (!FLAG_stress_fullcodegen) return;
FLAG_native_code_counters = true;
FLAG_opt = false;

View File

@ -6583,14 +6583,9 @@ TEST(DebugGetPossibleBreakpointsReturnLocations) {
++returns_count;
}
}
if (i::FLAG_stress_fullcodegen) {
// With fullcodegen we generate one return location.
CHECK(returns_count == 1);
} else {
// With Ignition we generate one return location per return statement,
// each has line = 5, column = 0 as statement position.
CHECK(returns_count == 4);
}
// With Ignition we generate one return location per return statement,
// each has line = 5, column = 0 as statement position.
CHECK(returns_count == 4);
}
TEST(DebugEvaluateNoSideEffect) {

View File

@ -1326,10 +1326,6 @@ TEST(CodeSerializerLargeCodeObjectWithIncrementalMarking) {
FLAG_stress_incremental_marking = false;
FLAG_serialize_toplevel = true;
FLAG_always_opt = false;
// This test relies on (full-codegen) code objects going to large object
// space. Once FCG goes away, it must either be redesigned (to put some
// other large deserialized object into LO space), or it can be deleted.
FLAG_stress_fullcodegen = true;
const char* filter_flag = "--turbo-filter=NOTHING";
FlagList::SetFlagsFromString(filter_flag, StrLength(filter_flag));
FLAG_black_allocation = true;
@ -1345,7 +1341,7 @@ TEST(CodeSerializerLargeCodeObjectWithIncrementalMarking) {
Vector<const uint8_t> source = ConstructSource(
STATIC_CHAR_VECTOR("var j=1; if (j == 0) {"),
STATIC_CHAR_VECTOR("for (var i = 0; i < Object.prototype; i++);"),
STATIC_CHAR_VECTOR("} j=7; var s = 'happy_hippo'; j"), 2200);
STATIC_CHAR_VECTOR("} j=7; var s = 'happy_hippo'; j"), 10000);
Handle<String> source_str =
isolate->factory()->NewStringFromOneByte(source).ToHandleChecked();
@ -1967,61 +1963,6 @@ TEST(CodeSerializerWithHarmonyScoping) {
isolate2->Dispose();
}
TEST(CodeSerializerEagerCompilationAndPreAge) {
if (!FLAG_stress_fullcodegen) return;
FLAG_lazy = true;
FLAG_serialize_toplevel = true;
FLAG_serialize_age_code = true;
FLAG_serialize_eager = true;
static const char* source =
"function f() {"
" function g() {"
" return 1;"
" }"
" return g();"
"}"
"'abcdef';";
v8::ScriptCompiler::CachedData* cache = ProduceCache(source);
v8::Isolate::CreateParams create_params;
create_params.array_buffer_allocator = CcTest::array_buffer_allocator();
v8::Isolate* isolate2 = v8::Isolate::New(create_params);
{
v8::Isolate::Scope iscope(isolate2);
v8::HandleScope scope(isolate2);
v8::Local<v8::Context> context = v8::Context::New(isolate2);
v8::Context::Scope context_scope(context);
v8::Local<v8::String> source_str = v8_str(source);
v8::ScriptOrigin origin(v8_str("test"));
v8::ScriptCompiler::Source source(source_str, origin, cache);
v8::Local<v8::UnboundScript> unbound =
v8::ScriptCompiler::CompileUnboundScript(
isolate2, &source, v8::ScriptCompiler::kConsumeCodeCache)
.ToLocalChecked();
CHECK(!cache->rejected);
Isolate* i_isolate = reinterpret_cast<Isolate*>(isolate2);
HandleScope i_scope(i_isolate);
Handle<SharedFunctionInfo> toplevel = v8::Utils::OpenHandle(*unbound);
Handle<Script> script(Script::cast(toplevel->script()));
// Every function has been pre-compiled from the code cache.
int count = 0;
SharedFunctionInfo::ScriptIterator iterator(script);
while (SharedFunctionInfo* shared = iterator.Next()) {
CHECK(shared->is_compiled());
CHECK_EQ(Code::kPreAgedCodeAge, shared->code()->GetAge());
count++;
}
CHECK_EQ(3, count);
}
isolate2->Dispose();
}
TEST(Regress503552) {
if (!FLAG_incremental_marking) return;
// Test that the code serializer can deal with weak cells that form a linked

View File

@ -2,8 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --no-stress-fullcodegen
// Test that asynchronous features do not work with
// side-effect free debug-evaluate.

View File

@ -2,8 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --no-stress-fullcodegen
Debug = debug.Debug
var exception = null;

View File

@ -2,8 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --no-stress-fullcodegen
Debug = debug.Debug
var exception = null;

View File

@ -2,8 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --no-stress-fullcodegen
Debug = debug.Debug
var exception = null;

View File

@ -2,8 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --no-stress-fullcodegen
// Test that declaring local variables in IIFEs works with
// side-effect free debug-evaluate.

View File

@ -2,8 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --no-stress-fullcodegen
Debug = debug.Debug
var exception = null;

View File

@ -2,8 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --no-stress-fullcodegen
Debug = debug.Debug
var exception = null;

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --opt --no-always-opt --no-stress-fullcodegen
// Flags: --opt --no-always-opt
var Debug = debug.Debug;

View File

@ -2,7 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --no-stress-fullcodegen
// The functions used for testing backtraces. They are at the top to make the
// testing of source line/column easier.

View File

@ -2,8 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --no-stress-fullcodegen
function f() {
throw new Error();
}

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --allow-natives-syntax --no-always-opt --opt --no-stress-fullcodegen --block-coverage
// Flags: --allow-natives-syntax --no-always-opt --opt --block-coverage
var source =
`

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --allow-natives-syntax --no-always-opt --opt --no-stress-fullcodegen
// Flags: --allow-natives-syntax --no-always-opt --opt
var source =
`

View File

@ -2,8 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --no-stress-fullcodegen
let {session, contextGroup, Protocol} = InspectorTest.start('Checks Debugger.getPossibleBreakpoints');
var source = utils.read('test/inspector/debugger/resources/break-locations.js');

View File

@ -2,7 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --no-stress-fullcodegen
let {session, contextGroup, Protocol} = InspectorTest.start('Tests side-effect-free evaluation');
contextGroup.addScript(`

View File

@ -2,8 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --no-stress-fullcodegen
let {session, contextGroup, Protocol} = InspectorTest.start('Checks possible break locations.');
session.setupScriptMap();

View File

@ -25,8 +25,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
// Flags: --allow-natives-syntax --expose-gc
// Flags: --opt --no-always-opt --no-stress-fullcodegen
// Flags: --allow-natives-syntax --expose-gc --opt --no-always-opt
var elements_kind = {
fast_smi_only : 'fast smi only elements',

View File

@ -25,8 +25,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
// Flags: --allow-natives-syntax --expose-gc
// Flags: --no-always-opt --opt --no-stress-fullcodegen
// Flags: --allow-natives-syntax --expose-gc --no-always-opt --opt
// Test element kind of objects.

View File

@ -25,8 +25,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
// Flags: --allow-natives-syntax --expose-gc
// Flags: --opt --no-always-opt --no-stress-fullcodegen
// Flags: --allow-natives-syntax --expose-gc --opt --no-always-opt
// Verify that cross context calls work
(function (){

View File

@ -25,8 +25,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
// Flags: --allow-natives-syntax --expose-gc
// Flags: --opt --no-always-opt --no-stress-fullcodegen
// Flags: --allow-natives-syntax --expose-gc --opt --no-always-opt
var elements_kind = {
packed_smi : 'packed smi elements',

View File

@ -26,7 +26,7 @@
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
// Flags: --allow-natives-syntax --expose-gc --ignition-osr --no-always-opt
// Flags: --opt --no-stress-fullcodegen
// Flags: --opt
// IC and Crankshaft support for smi-only elements in dynamic array literals.
function get(foo) { return foo; } // Used to generate dynamic values.

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --allow-natives-syntax --opt --no-always-opt --no-stress-fullcodegen
// Flags: --allow-natives-syntax --opt --no-always-opt
var v = 0;

View File

@ -25,7 +25,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
// Flags: --allow-natives-syntax --opt --no-always-opt --no-stress-fullcodegen
// Flags: --allow-natives-syntax --opt --no-always-opt
// Verifies that the KeyedStoreIC correctly handles out-of-bounds stores
// to an array that grow it by a single element. Test functions are

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --validate-asm --no-stress-fullcodegen --lazy-inner-functions
// Flags: --validate-asm --lazy-inner-functions
function outer() {
"use asm";

View File

@ -3,7 +3,7 @@
// found in the LICENSE file.
// Flags: --allow-natives-syntax --no-always-opt --block-coverage
// Flags: --no-stress-fullcodegen --harmony-async-iteration --no-opt
// Flags: --harmony-async-iteration --no-opt
// Files: test/mjsunit/code-coverage-utils.js
%DebugToggleBlockCoverage(true);

View File

@ -3,7 +3,7 @@
// found in the LICENSE file.
// Flags: --allow-natives-syntax --no-always-opt --block-coverage
// Flags: --no-stress-fullcodegen --harmony-async-iteration --opt
// Flags: --harmony-async-iteration --opt
// Files: test/mjsunit/code-coverage-utils.js
%DebugToggleBlockCoverage(true);

View File

@ -3,7 +3,7 @@
// found in the LICENSE file.
// Flags: --allow-natives-syntax --no-always-opt --block-coverage
// Flags: --no-stress-fullcodegen --harmony-async-iteration
// Flags: --harmony-async-iteration
// Files: test/mjsunit/code-coverage-utils.js
%DebugToggleBlockCoverage(true);

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --allow-natives-syntax --no-always-opt --no-stress-fullcodegen
// Flags: --allow-natives-syntax --no-always-opt
// Files: test/mjsunit/code-coverage-utils.js
// Test precise code coverage.

View File

@ -25,7 +25,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
// Flags: --allow-natives-syntax --opt --no-always-opt --no-stress-fullcodegen
// Flags: --allow-natives-syntax --opt --no-always-opt
var global = this;

View File

@ -25,7 +25,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
// Flags: --allow-natives-syntax --opt --no-always-opt --no-stress-fullcodegen
// Flags: --allow-natives-syntax --opt --no-always-opt
function f() {
Array.prototype[10] = 2;

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --allow-natives-syntax --opt --no-always-opt --no-stress-fullcodegen
// Flags: --allow-natives-syntax --opt --no-always-opt
function foo(i, deopt = false) {
if (i == 0) {

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --allow-natives-syntax --opt --no-always-opt --no-stress-fullcodegen
// Flags: --allow-natives-syntax --opt --no-always-opt
function foo(i, deopt = false) {
if (i == 0) {

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --allow-natives-syntax --opt --no-always-opt --no-stress-fullcodegen
// Flags: --allow-natives-syntax --opt --no-always-opt
function foo(i, deopt = false, deoptobj = null) {

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --allow-natives-syntax --opt --no-always-opt --no-stress-fullcodegen
// Flags: --allow-natives-syntax --opt --no-always-opt
function foo() {}

View File

@ -25,7 +25,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
// Flags: --allow-natives-syntax --opt --no-always-opt --no-stress-fullcodegen
// Flags: --allow-natives-syntax --opt --no-always-opt
deopt_trigger = 0;
side_effect = 0;

View File

@ -3,7 +3,7 @@
// found in the LICENSE file.
// Flags: --allow-natives-syntax --noverify-heap --noenable-slow-asserts
// Flags: --opt --no-always-opt --no-stress-fullcodegen
// Flags: --opt --no-always-opt
// --noverify-heap and --noenable-slow-asserts are set because the test is too
// slow with it on.

View File

@ -3,7 +3,7 @@
// found in the LICENSE file.
// Flags: --allow-natives-syntax --nostress-opt --track-field-types
// Flags: --opt --no-always-opt --no-stress-fullcodegen
// Flags: --opt --no-always-opt
(function() {
var o = { text: "Hello World!" };

View File

@ -25,7 +25,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
// Flags: --allow-natives-syntax --noalways-opt --opt --no-stress-fullcodegen
// Flags: --allow-natives-syntax --noalways-opt --opt
// It's nice to run this in other browsers too.
var standalone = false;

View File

@ -2,8 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --harmony-do-expressions --allow-natives-syntax --no-always-opt
// Flags: --opt --no-stress-fullcodegen
// Flags: --harmony-do-expressions --allow-natives-syntax --no-always-opt --opt
function returnValue(v) { return v; }
function MyError() {}

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --no-stress-fullcodegen --trace-ignition-dispatches
// Flags: --trace-ignition-dispatches
assertEquals(typeof getIgnitionDispatchCounters, "function");

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --allow-natives-syntax --no-stress-fullcodegen --ignition-osr
// Flags: --allow-natives-syntax --ignition-osr
function f() {
for (var i = 0; i < 10; i++) {

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --no-stress-fullcodegen --verify-heap --expose-gc
// Flags: --verify-heap --expose-gc
// Tests that verify heap works for BytecodeArrays in the large object space.

View File

@ -2,8 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --no-stress-fullcodegen
function foo() {
if (this.Worker) {
function __f_0() { this.s = a; }

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --opt --allow-natives-syntax --no-always-opt --no-stress-fullcodegen
// Flags: --opt --allow-natives-syntax --no-always-opt
function f(b) {
if (b == 1) {

View File

@ -2,8 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --allow-natives-syntax
// Flags: --no-stress-opt --opt --no-always-opt --no-stress-fullcodegen
// Flags: --allow-natives-syntax --no-stress-opt --opt --no-always-opt
// --nostress-opt is specified because the test corrupts the "pristine"
// array prototype chain by storing an element, and this is tracked

View File

@ -25,7 +25,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
// Flags: --allow-natives-syntax --opt --no-always-opt --no-stress-fullcodegen
// Flags: --allow-natives-syntax --opt --no-always-opt
var s = Symbol("foo");

View File

@ -28,7 +28,7 @@
// Tests the Object.seal and Object.isSealed methods - ES 19.1.2.17 and
// ES 19.1.2.13
// Flags: --allow-natives-syntax --opt --noalways-opt --no-stress-fullcodegen
// Flags: --allow-natives-syntax --opt --noalways-opt
// Test that we return obj if non-object is passed as argument
var non_objects = new Array(undefined, null, 1, -1, 0, 42.43, Symbol("test"));

View File

@ -3,7 +3,7 @@
// found in the LICENSE file.
// Flags: --allow-natives-syntax --expose-gc --turbo-inline-array-builtins
// Flags: --opt --no-always-opt --no-stress-fullcodegen
// Flags: --opt --no-always-opt
var a = [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,0,0];
var b = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25];

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --allow-natives-syntax --opt --no-stress-fullcodegen
// Flags: --allow-natives-syntax --opt
function foo(a) {
for (var d in a) {

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --allow-natives-syntax --opt --no-always-opt --no-stress-fullcodegen
// Flags: --allow-natives-syntax --opt --no-always-opt
function getobj() {
return { bar : function() { return 0}};

View File

@ -25,7 +25,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
// Flags: --allow-natives-syntax --opt --no-always-opt --no-stress-fullcodegen
// Flags: --allow-natives-syntax --opt --no-always-opt
var calls = 0;

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --allow-natives-syntax --no-stress-fullcodegen --ignition-osr
// Flags: --allow-natives-syntax --ignition-osr
(function TestNonLoopyLoop() {
function f() {

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --no-stress-fullcodegen --ignition-osr --allow-natives-syntax
// Flags: --ignition-osr --allow-natives-syntax
function g() { return 23 }
function h() { return 42 }

View File

@ -2,8 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --no-stress-fullcodegen
function function_with_m_args(m) {
var source = '(function f() { return; })(';
for (var arg = 0; arg < m ; arg++) {

View File

@ -2,8 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --no-stress-fullcodegen
function* foo() { yield 42 }
function* goo() { yield 42 }
var f = foo();

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --no-stress-fullcodegen --always-opt --allow-natives-syntax
// Flags: --always-opt --allow-natives-syntax
try {
} catch(e) {; }

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --allow-natives-syntax --es-staging --no-stress-fullcodegen
// Flags: --allow-natives-syntax --es-staging
"use strict";

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --allow-natives-syntax --no-stress-fullcodegen
// Flags: --allow-natives-syntax
// This is to test if 'this' gets correctly initialized when inlining
// constructors in turbofan.

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --no-stress-fullcodegen --stack-size=100
// Flags: --stack-size=100
function Module(stdlib) {
"use asm";

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --no-stress-fullcodegen --ignition-osr
// Flags: --ignition-osr
function osr() {
for (var i = 0; i < 50000; ++i) Math.random();

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --allow-natives-syntax --no-stress-fullcodegen --turbo-filter=f
// Flags: --allow-natives-syntax --turbo-filter=f
function f(x) { return x + 23 }
function g(x) { return f(x) + 42 }

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --allow-natives-syntax --expose-gc --no-stress-fullcodegen --no-lazy
// Flags: --allow-natives-syntax --expose-gc --no-lazy
function f() {
for (var i = 0; i < 10; i++) if (i == 5) %OptimizeOsr();

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --no-stress-fullcodegen --validate-asm --always-opt
// Flags: --validate-asm --always-opt
function Module() {
"use asm";

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --allow-natives-syntax --no-stress-fullcodegen
// Flags: --allow-natives-syntax
class Base {}
class Subclass extends Base {

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --allow-natives-syntax --no-stress-fullcodegen
// Flags: --allow-natives-syntax
function f() {
for (var i = 0; i < 3; ++i) {

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --allow-natives-syntax --stack-size=100 --no-stress-fullcodegen
// Flags: --allow-natives-syntax --stack-size=100
var source = "return 1" + new Array(2048).join(' + a') + "";
eval("function g(a) {" + source + "}");

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --no-stress-fullcodegen --always-opt
// Flags: --always-opt
function f () {
var x = "";

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --allow-natives-syntax --no-stress-fullcodegen
// Flags: --allow-natives-syntax
// The {f} function is compiled using TurboFan.
// 1) The call to {Reflect.set} has no arguments adaptation.

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --allow-natives-syntax --no-stress-fullcodegen
// Flags: --allow-natives-syntax
function g() {
return g.arguments;

View File

@ -3,7 +3,7 @@
// found in the LICENSE file.
//
// Flags: --mark-shared-functions-for-tier-up --allow-natives-syntax
// Flags: --no-stress-fullcodegen --opt --no-always-opt --turbo-filter=*
// Flags: --opt --no-always-opt --turbo-filter=*
// If we are always or never optimizing it is useless.
assertFalse(isAlwaysOptimize());

View File

@ -25,7 +25,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
// Flags: --allow-natives-syntax --opt --noalways-opt --no-stress-fullcodegen
// Flags: --allow-natives-syntax --opt --noalways-opt
function check(func, input, expected) {
func(-1);

View File

@ -25,7 +25,7 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
// Flags: --allow-natives-syntax --opt --noalways-opt --no-stress-fullcodegen
// Flags: --allow-natives-syntax --opt --noalways-opt
function mul(a, b) {
return a * b;

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --type-profile --no-stress-fullcodegen --allow-natives-syntax
// Flags: --type-profile --allow-natives-syntax
function check_collect_types(name, expected) {
const type_profile = %TypeProfile(name);
@ -36,7 +36,7 @@ testFunction(123, true);
testFunction('hello');
testFunction(123);
expected = `{\"519\":[\"Object\",\"number\",\"string\",\"number\"],\"526\":[\"undefined\",\"boolean\",\"undefined\",\"undefined\"],\"715\":[\"Object\",\"number\",\"string\",\"number\"]}`;
expected = `{\"495\":[\"Object\",\"number\",\"string\",\"number\"],\"502\":[\"undefined\",\"boolean\",\"undefined\",\"undefined\"],\"691\":[\"Object\",\"number\",\"string\",\"number\"]}`;
check_collect_types(testFunction, expected);
testFunction(undefined);
@ -45,7 +45,7 @@ testFunction({x: 12}, true);
testFunction({x: 12});
testFunction(new MyClass());
expected = `{\"519\":[\"Object\",\"number\",\"string\",\"number\",\"undefined\",\"string\",\"Object\",\"Object\",\"MyClass\"],\"526\":[\"undefined\",\"boolean\",\"undefined\",\"undefined\",\"undefined\",\"boolean\",\"boolean\",\"undefined\",\"undefined\"],\"715\":[\"Object\",\"number\",\"string\",\"number\",\"undefined\",\"string\",\"Object\",\"Object\",\"MyClass\"]}`;
expected = `{\"495\":[\"Object\",\"number\",\"string\",\"number\",\"undefined\",\"string\",\"Object\",\"Object\",\"MyClass\"],\"502\":[\"undefined\",\"boolean\",\"undefined\",\"undefined\",\"undefined\",\"boolean\",\"boolean\",\"undefined\",\"undefined\"],\"691\":[\"Object\",\"number\",\"string\",\"number\",\"undefined\",\"string\",\"Object\",\"Object\",\"MyClass\"]}`;
check_collect_types(testFunction, expected);
@ -53,7 +53,7 @@ function testReturnOfNonVariable() {
return 32;
}
testReturnOfNonVariable();
expected = `{\"1748\":[\"number\"]}`;
expected = `{\"1724\":[\"number\"]}`;
check_collect_types(testReturnOfNonVariable, expected);
// Return statement is reached but its expression is never really returned.
@ -65,7 +65,7 @@ function try_finally() {
}
}
try_finally();
expected = `{\"2050\":[\"string\"]}`;
expected = `{\"2026\":[\"string\"]}`;
check_collect_types(try_finally, expected);
// Fall-off return.
@ -73,7 +73,7 @@ function fall_off() {
//nothing
}
fall_off();
expected = `{\"2204\":[\"undefined\"]}`;
expected = `{\"2180\":[\"undefined\"]}`;
check_collect_types(fall_off, expected);
// Do not collect types when the function is never run.
@ -86,5 +86,5 @@ function several_params(a, b, c, d) {
//nothing
}
several_params(2, 'foo', {}, new MyClass());
expected = `{\"2472\":[\"number\"],\"2475\":[\"string\"],\"2478\":[\"Object\"],\"2481\":[\"MyClass\"],\"2498\":[\"undefined\"]}`;
expected = `{\"2448\":[\"number\"],\"2451\":[\"string\"],\"2454\":[\"Object\"],\"2457\":[\"MyClass\"],\"2474\":[\"undefined\"]}`;
check_collect_types(several_params, expected);

View File

@ -43,7 +43,6 @@ class CompilerDispatcherTestFlags {
CHECK_NULL(save_flags_);
save_flags_ = new SaveFlags();
FLAG_single_threaded = true;
FLAG_stress_fullcodegen = false;
FlagList::EnforceFlagImplications();
FLAG_compiler_dispatcher = true;
}

View File

@ -32,7 +32,6 @@ class UnoptimizedCompileJobTest : public TestWithContext {
static void SetUpTestCase() {
CHECK_NULL(save_flags_);
save_flags_ = new SaveFlags();
FLAG_stress_fullcodegen = false;
TestWithContext::SetUpTestCase();
}