[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:
parent
d09f9c424f
commit
45b4522e40
@ -601,7 +601,7 @@ bool AstNumberingVisitor::Renumber(FunctionLiteral* node) {
|
|||||||
}
|
}
|
||||||
if (disable_fullcodegen_reason_ != kNoReason) {
|
if (disable_fullcodegen_reason_ != kNoReason) {
|
||||||
node->set_must_use_ignition();
|
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
|
// 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
|
// 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
|
// if we move ast numbering off the main thread, but that won't be before
|
||||||
|
@ -197,8 +197,6 @@ bool CompilerDispatcher::CanEnqueue() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
bool CompilerDispatcher::CanEnqueue(Handle<SharedFunctionInfo> function) {
|
bool CompilerDispatcher::CanEnqueue(Handle<SharedFunctionInfo> function) {
|
||||||
DCHECK_IMPLIES(IsEnabled(), !FLAG_stress_fullcodegen);
|
|
||||||
|
|
||||||
if (!CanEnqueue()) return false;
|
if (!CanEnqueue()) return false;
|
||||||
|
|
||||||
// We only handle functions (no eval / top-level code / wasm) that are
|
// We only handle functions (no eval / top-level code / wasm) that are
|
||||||
|
@ -268,8 +268,8 @@ bool ShouldUseFullCodegen(FunctionLiteral* literal) {
|
|||||||
// Use full-codegen for asm.js functions.
|
// Use full-codegen for asm.js functions.
|
||||||
if (literal->scope()->asm_function()) return true;
|
if (literal->scope()->asm_function()) return true;
|
||||||
|
|
||||||
// If stressing full-codegen then use it for all functions it can support.
|
// Disabled by default.
|
||||||
return FLAG_stress_fullcodegen;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool UseAsmWasm(FunctionLiteral* literal,
|
bool UseAsmWasm(FunctionLiteral* literal,
|
||||||
|
@ -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(unbox_double_arrays, true, "automatically unbox arrays of doubles")
|
||||||
DEFINE_BOOL(string_slices, true, "use string slices")
|
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.
|
// Flags for Ignition.
|
||||||
DEFINE_BOOL(ignition_osr, true, "enable support for OSR from ignition code")
|
DEFINE_BOOL(ignition_osr, true, "enable support for OSR from ignition code")
|
||||||
DEFINE_BOOL(ignition_elide_noneffectful_bytecodes, true,
|
DEFINE_BOOL(ignition_elide_noneffectful_bytecodes, true,
|
||||||
@ -474,7 +470,6 @@ DEFINE_BOOL(turbo_experimental, false,
|
|||||||
DEFINE_BOOL(minimal, false,
|
DEFINE_BOOL(minimal, false,
|
||||||
"simplifies execution model to make porting "
|
"simplifies execution model to make porting "
|
||||||
"easier (e.g. always use Ignition, never optimize)")
|
"easier (e.g. always use Ignition, never optimize)")
|
||||||
DEFINE_NEG_IMPLICATION(minimal, stress_fullcodegen)
|
|
||||||
DEFINE_NEG_IMPLICATION(minimal, opt)
|
DEFINE_NEG_IMPLICATION(minimal, opt)
|
||||||
DEFINE_NEG_IMPLICATION(minimal, use_ic)
|
DEFINE_NEG_IMPLICATION(minimal, use_ic)
|
||||||
|
|
||||||
|
@ -75,7 +75,6 @@ class BytecodeGraphTester {
|
|||||||
BytecodeGraphTester(Isolate* isolate, const char* script,
|
BytecodeGraphTester(Isolate* isolate, const char* script,
|
||||||
const char* filter = kFunctionName)
|
const char* filter = kFunctionName)
|
||||||
: isolate_(isolate), script_(script) {
|
: isolate_(isolate), script_(script) {
|
||||||
i::FLAG_stress_fullcodegen = false;
|
|
||||||
i::FLAG_always_opt = false;
|
i::FLAG_always_opt = false;
|
||||||
i::FLAG_allow_natives_syntax = true;
|
i::FLAG_allow_natives_syntax = true;
|
||||||
i::FLAG_loop_assignment_analysis = false;
|
i::FLAG_loop_assignment_analysis = false;
|
||||||
|
@ -29,7 +29,6 @@ static void InstallIsOptimizedHelper(v8::Isolate* isolate) {
|
|||||||
|
|
||||||
|
|
||||||
TEST(DeoptSimple) {
|
TEST(DeoptSimple) {
|
||||||
FLAG_stress_fullcodegen = false;
|
|
||||||
FLAG_allow_natives_syntax = true;
|
FLAG_allow_natives_syntax = true;
|
||||||
|
|
||||||
FunctionTester T(
|
FunctionTester T(
|
||||||
@ -47,7 +46,6 @@ TEST(DeoptSimple) {
|
|||||||
|
|
||||||
|
|
||||||
TEST(DeoptSimpleInExpr) {
|
TEST(DeoptSimpleInExpr) {
|
||||||
FLAG_stress_fullcodegen = false;
|
|
||||||
FLAG_allow_natives_syntax = true;
|
FLAG_allow_natives_syntax = true;
|
||||||
|
|
||||||
FunctionTester T(
|
FunctionTester T(
|
||||||
@ -66,7 +64,6 @@ TEST(DeoptSimpleInExpr) {
|
|||||||
|
|
||||||
|
|
||||||
TEST(DeoptExceptionHandlerCatch) {
|
TEST(DeoptExceptionHandlerCatch) {
|
||||||
FLAG_stress_fullcodegen = false;
|
|
||||||
FLAG_allow_natives_syntax = true;
|
FLAG_allow_natives_syntax = true;
|
||||||
|
|
||||||
FunctionTester T(
|
FunctionTester T(
|
||||||
@ -86,7 +83,6 @@ TEST(DeoptExceptionHandlerCatch) {
|
|||||||
|
|
||||||
|
|
||||||
TEST(DeoptExceptionHandlerFinally) {
|
TEST(DeoptExceptionHandlerFinally) {
|
||||||
FLAG_stress_fullcodegen = false;
|
|
||||||
FLAG_allow_natives_syntax = true;
|
FLAG_allow_natives_syntax = true;
|
||||||
|
|
||||||
FunctionTester T(
|
FunctionTester T(
|
||||||
@ -106,7 +102,6 @@ TEST(DeoptExceptionHandlerFinally) {
|
|||||||
|
|
||||||
|
|
||||||
TEST(DeoptTrivial) {
|
TEST(DeoptTrivial) {
|
||||||
FLAG_stress_fullcodegen = false;
|
|
||||||
FLAG_allow_natives_syntax = true;
|
FLAG_allow_natives_syntax = true;
|
||||||
|
|
||||||
FunctionTester T(
|
FunctionTester T(
|
||||||
|
@ -10,7 +10,6 @@ namespace internal {
|
|||||||
namespace compiler {
|
namespace compiler {
|
||||||
|
|
||||||
TEST(Throw) {
|
TEST(Throw) {
|
||||||
FLAG_stress_fullcodegen = false;
|
|
||||||
FunctionTester T("(function(a,b) { if (a) { throw b; } else { return b; }})");
|
FunctionTester T("(function(a,b) { if (a) { throw b; } else { return b; }})");
|
||||||
|
|
||||||
T.CheckThrows(T.true_value(), T.NewObject("new Error"));
|
T.CheckThrows(T.true_value(), T.NewObject("new Error"));
|
||||||
@ -19,7 +18,6 @@ TEST(Throw) {
|
|||||||
|
|
||||||
|
|
||||||
TEST(ThrowMessagePosition) {
|
TEST(ThrowMessagePosition) {
|
||||||
FLAG_stress_fullcodegen = false;
|
|
||||||
static const char* src =
|
static const char* src =
|
||||||
"(function(a, b) { \n"
|
"(function(a, b) { \n"
|
||||||
" if (a == 1) throw 1; \n"
|
" if (a == 1) throw 1; \n"
|
||||||
@ -46,7 +44,6 @@ TEST(ThrowMessagePosition) {
|
|||||||
|
|
||||||
|
|
||||||
TEST(ThrowMessageDirectly) {
|
TEST(ThrowMessageDirectly) {
|
||||||
FLAG_stress_fullcodegen = false;
|
|
||||||
static const char* src =
|
static const char* src =
|
||||||
"(function(a, b) {"
|
"(function(a, b) {"
|
||||||
" if (a) { throw b; } else { throw new Error(b); }"
|
" if (a) { throw b; } else { throw new Error(b); }"
|
||||||
@ -65,7 +62,6 @@ TEST(ThrowMessageDirectly) {
|
|||||||
|
|
||||||
|
|
||||||
TEST(ThrowMessageIndirectly) {
|
TEST(ThrowMessageIndirectly) {
|
||||||
FLAG_stress_fullcodegen = false;
|
|
||||||
static const char* src =
|
static const char* src =
|
||||||
"(function(a, b) {"
|
"(function(a, b) {"
|
||||||
" try {"
|
" try {"
|
||||||
@ -88,7 +84,6 @@ TEST(ThrowMessageIndirectly) {
|
|||||||
|
|
||||||
|
|
||||||
TEST(Catch) {
|
TEST(Catch) {
|
||||||
FLAG_stress_fullcodegen = false;
|
|
||||||
const char* src =
|
const char* src =
|
||||||
"(function(a,b) {"
|
"(function(a,b) {"
|
||||||
" var r = '-';"
|
" var r = '-';"
|
||||||
@ -107,7 +102,6 @@ TEST(Catch) {
|
|||||||
|
|
||||||
|
|
||||||
TEST(CatchNested) {
|
TEST(CatchNested) {
|
||||||
FLAG_stress_fullcodegen = false;
|
|
||||||
const char* src =
|
const char* src =
|
||||||
"(function(a,b) {"
|
"(function(a,b) {"
|
||||||
" var r = '-';"
|
" var r = '-';"
|
||||||
@ -131,7 +125,6 @@ TEST(CatchNested) {
|
|||||||
|
|
||||||
|
|
||||||
TEST(CatchBreak) {
|
TEST(CatchBreak) {
|
||||||
FLAG_stress_fullcodegen = false;
|
|
||||||
const char* src =
|
const char* src =
|
||||||
"(function(a,b) {"
|
"(function(a,b) {"
|
||||||
" var r = '-';"
|
" var r = '-';"
|
||||||
@ -156,7 +149,6 @@ TEST(CatchBreak) {
|
|||||||
|
|
||||||
|
|
||||||
TEST(CatchCall) {
|
TEST(CatchCall) {
|
||||||
FLAG_stress_fullcodegen = false;
|
|
||||||
const char* src =
|
const char* src =
|
||||||
"(function(fun) {"
|
"(function(fun) {"
|
||||||
" var r = '-';"
|
" var r = '-';"
|
||||||
@ -178,7 +170,6 @@ TEST(CatchCall) {
|
|||||||
|
|
||||||
|
|
||||||
TEST(Finally) {
|
TEST(Finally) {
|
||||||
FLAG_stress_fullcodegen = false;
|
|
||||||
const char* src =
|
const char* src =
|
||||||
"(function(a,b) {"
|
"(function(a,b) {"
|
||||||
" var r = '-';"
|
" var r = '-';"
|
||||||
@ -196,7 +187,6 @@ TEST(Finally) {
|
|||||||
|
|
||||||
|
|
||||||
TEST(FinallyBreak) {
|
TEST(FinallyBreak) {
|
||||||
FLAG_stress_fullcodegen = false;
|
|
||||||
const char* src =
|
const char* src =
|
||||||
"(function(a,b) {"
|
"(function(a,b) {"
|
||||||
" var r = '-';"
|
" var r = '-';"
|
||||||
@ -220,7 +210,6 @@ TEST(FinallyBreak) {
|
|||||||
|
|
||||||
|
|
||||||
TEST(DeoptTry) {
|
TEST(DeoptTry) {
|
||||||
FLAG_stress_fullcodegen = false;
|
|
||||||
const char* src =
|
const char* src =
|
||||||
"(function f(a) {"
|
"(function f(a) {"
|
||||||
" try {"
|
" try {"
|
||||||
@ -237,7 +226,6 @@ TEST(DeoptTry) {
|
|||||||
|
|
||||||
|
|
||||||
TEST(DeoptCatch) {
|
TEST(DeoptCatch) {
|
||||||
FLAG_stress_fullcodegen = false;
|
|
||||||
const char* src =
|
const char* src =
|
||||||
"(function f(a) {"
|
"(function f(a) {"
|
||||||
" try {"
|
" try {"
|
||||||
@ -254,7 +242,6 @@ TEST(DeoptCatch) {
|
|||||||
|
|
||||||
|
|
||||||
TEST(DeoptFinallyReturn) {
|
TEST(DeoptFinallyReturn) {
|
||||||
FLAG_stress_fullcodegen = false;
|
|
||||||
const char* src =
|
const char* src =
|
||||||
"(function f(a) {"
|
"(function f(a) {"
|
||||||
" try {"
|
" try {"
|
||||||
@ -271,7 +258,6 @@ TEST(DeoptFinallyReturn) {
|
|||||||
|
|
||||||
|
|
||||||
TEST(DeoptFinallyReThrow) {
|
TEST(DeoptFinallyReThrow) {
|
||||||
FLAG_stress_fullcodegen = false;
|
|
||||||
const char* src =
|
const char* src =
|
||||||
"(function f(a) {"
|
"(function f(a) {"
|
||||||
" try {"
|
" try {"
|
||||||
|
@ -387,7 +387,6 @@ TEST(PropertyKeyedDelete) {
|
|||||||
|
|
||||||
|
|
||||||
TEST(GlobalLoad) {
|
TEST(GlobalLoad) {
|
||||||
FLAG_stress_fullcodegen = false;
|
|
||||||
FunctionTester T("(function() { return g; })");
|
FunctionTester T("(function() { return g; })");
|
||||||
|
|
||||||
T.CheckThrows(T.undefined(), T.undefined());
|
T.CheckThrows(T.undefined(), T.undefined());
|
||||||
@ -397,7 +396,6 @@ TEST(GlobalLoad) {
|
|||||||
|
|
||||||
|
|
||||||
TEST(GlobalStoreStrict) {
|
TEST(GlobalStoreStrict) {
|
||||||
FLAG_stress_fullcodegen = false;
|
|
||||||
FunctionTester T("(function(a,b) { 'use strict'; g = a + b; return g; })");
|
FunctionTester T("(function(a,b) { 'use strict'; g = a + b; return g; })");
|
||||||
|
|
||||||
T.CheckThrows(T.Val(22), T.Val(11));
|
T.CheckThrows(T.Val(22), T.Val(11));
|
||||||
|
@ -10,7 +10,6 @@ namespace internal {
|
|||||||
namespace compiler {
|
namespace compiler {
|
||||||
|
|
||||||
TEST(TerminateAtMethodEntry) {
|
TEST(TerminateAtMethodEntry) {
|
||||||
FLAG_stress_fullcodegen = false;
|
|
||||||
FunctionTester T("(function(a,b) { return 23; })");
|
FunctionTester T("(function(a,b) { return 23; })");
|
||||||
|
|
||||||
T.CheckCall(T.Val(23));
|
T.CheckCall(T.Val(23));
|
||||||
|
@ -66,35 +66,30 @@ static void RunVariableTests(const char* source, const char* tests[]) {
|
|||||||
|
|
||||||
|
|
||||||
TEST(StackLoadVariables) {
|
TEST(StackLoadVariables) {
|
||||||
FLAG_stress_fullcodegen = false;
|
|
||||||
const char* source = "(function(a,r) { %s; return r; })";
|
const char* source = "(function(a,r) { %s; return r; })";
|
||||||
RunVariableTests(source, load_tests);
|
RunVariableTests(source, load_tests);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
TEST(ContextLoadVariables) {
|
TEST(ContextLoadVariables) {
|
||||||
FLAG_stress_fullcodegen = false;
|
|
||||||
const char* source = "(function(a,r) { %s; function f() {x} return r; })";
|
const char* source = "(function(a,r) { %s; function f() {x} return r; })";
|
||||||
RunVariableTests(source, load_tests);
|
RunVariableTests(source, load_tests);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
TEST(StackStoreVariables) {
|
TEST(StackStoreVariables) {
|
||||||
FLAG_stress_fullcodegen = false;
|
|
||||||
const char* source = "(function(a,r) { %s; return r; })";
|
const char* source = "(function(a,r) { %s; return r; })";
|
||||||
RunVariableTests(source, store_tests);
|
RunVariableTests(source, store_tests);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
TEST(ContextStoreVariables) {
|
TEST(ContextStoreVariables) {
|
||||||
FLAG_stress_fullcodegen = false;
|
|
||||||
const char* source = "(function(a,r) { %s; function f() {x} return r; })";
|
const char* source = "(function(a,r) { %s; function f() {x} return r; })";
|
||||||
RunVariableTests(source, store_tests);
|
RunVariableTests(source, store_tests);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
TEST(SelfReferenceVariable) {
|
TEST(SelfReferenceVariable) {
|
||||||
FLAG_stress_fullcodegen = false;
|
|
||||||
FunctionTester T("(function self() { return self; })");
|
FunctionTester T("(function self() { return self; })");
|
||||||
|
|
||||||
T.CheckCall(T.function);
|
T.CheckCall(T.function);
|
||||||
|
@ -4019,7 +4019,7 @@ TEST(ObjectsInOptimizedCodeAreWeak) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
TEST(NewSpaceObjectsInOptimizedCode) {
|
TEST(NewSpaceObjectsInOptimizedCode) {
|
||||||
if (FLAG_always_opt || !FLAG_opt || !FLAG_stress_fullcodegen) return;
|
if (FLAG_always_opt || !FLAG_opt) return;
|
||||||
FLAG_allow_natives_syntax = true;
|
FLAG_allow_natives_syntax = true;
|
||||||
CcTest::InitializeVM();
|
CcTest::InitializeVM();
|
||||||
Isolate* isolate = CcTest::i_isolate();
|
Isolate* isolate = CcTest::i_isolate();
|
||||||
|
@ -302,7 +302,6 @@ void ProgramOptions::PrintHeader(std::ostream& stream) const { // NOLINT
|
|||||||
|
|
||||||
V8InitializationScope::V8InitializationScope(const char* exec_path)
|
V8InitializationScope::V8InitializationScope(const char* exec_path)
|
||||||
: platform_(v8::platform::CreateDefaultPlatform()) {
|
: platform_(v8::platform::CreateDefaultPlatform()) {
|
||||||
i::FLAG_stress_fullcodegen = false;
|
|
||||||
i::FLAG_always_opt = false;
|
i::FLAG_always_opt = false;
|
||||||
i::FLAG_allow_natives_syntax = true;
|
i::FLAG_allow_natives_syntax = true;
|
||||||
|
|
||||||
|
@ -23,7 +23,6 @@ InterpreterTester::InterpreterTester(
|
|||||||
source_(source),
|
source_(source),
|
||||||
bytecode_(bytecode),
|
bytecode_(bytecode),
|
||||||
feedback_metadata_(feedback_metadata) {
|
feedback_metadata_(feedback_metadata) {
|
||||||
i::FLAG_stress_fullcodegen = false;
|
|
||||||
i::FLAG_always_opt = false;
|
i::FLAG_always_opt = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -72,7 +72,6 @@ static const char* kGoldenFileDirectory =
|
|||||||
class InitializedIgnitionHandleScope : public InitializedHandleScope {
|
class InitializedIgnitionHandleScope : public InitializedHandleScope {
|
||||||
public:
|
public:
|
||||||
InitializedIgnitionHandleScope() {
|
InitializedIgnitionHandleScope() {
|
||||||
i::FLAG_stress_fullcodegen = false;
|
|
||||||
i::FLAG_always_opt = false;
|
i::FLAG_always_opt = false;
|
||||||
i::FLAG_allow_natives_syntax = true;
|
i::FLAG_allow_natives_syntax = true;
|
||||||
}
|
}
|
||||||
|
@ -110,15 +110,12 @@ class OptimizedBytecodeSourcePositionTester final {
|
|||||||
explicit OptimizedBytecodeSourcePositionTester(Isolate* isolate)
|
explicit OptimizedBytecodeSourcePositionTester(Isolate* isolate)
|
||||||
: isolate_(isolate) {
|
: isolate_(isolate) {
|
||||||
SaveOptimizationFlags();
|
SaveOptimizationFlags();
|
||||||
saved_flag_stress_fullcodegen_ = FLAG_stress_fullcodegen;
|
|
||||||
FLAG_stress_fullcodegen = false;
|
|
||||||
saved_flag_always_opt_ = FLAG_always_opt;
|
saved_flag_always_opt_ = FLAG_always_opt;
|
||||||
FLAG_always_opt = false;
|
FLAG_always_opt = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
~OptimizedBytecodeSourcePositionTester() {
|
~OptimizedBytecodeSourcePositionTester() {
|
||||||
RestoreOptimizationFlags();
|
RestoreOptimizationFlags();
|
||||||
FLAG_stress_fullcodegen = saved_flag_stress_fullcodegen_;
|
|
||||||
FLAG_always_opt = saved_flag_always_opt_;
|
FLAG_always_opt = saved_flag_always_opt_;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -143,7 +140,6 @@ class OptimizedBytecodeSourcePositionTester final {
|
|||||||
|
|
||||||
Isolate* isolate_;
|
Isolate* isolate_;
|
||||||
int saved_optimization_bitmap_;
|
int saved_optimization_bitmap_;
|
||||||
bool saved_flag_stress_fullcodegen_;
|
|
||||||
bool saved_flag_always_opt_;
|
bool saved_flag_always_opt_;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -22106,11 +22106,6 @@ const char* kMegamorphicTestProgram =
|
|||||||
void TestStubCache(bool primary) {
|
void TestStubCache(bool primary) {
|
||||||
using namespace i;
|
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_native_code_counters = true;
|
||||||
if (primary) {
|
if (primary) {
|
||||||
FLAG_test_primary_stub_cache = true;
|
FLAG_test_primary_stub_cache = true;
|
||||||
@ -23061,11 +23056,6 @@ TEST(AccessCheckThrows) {
|
|||||||
TEST(AccessCheckInIC) {
|
TEST(AccessCheckInIC) {
|
||||||
using namespace i;
|
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_native_code_counters = true;
|
||||||
FLAG_opt = false;
|
FLAG_opt = false;
|
||||||
|
|
||||||
|
@ -6583,14 +6583,9 @@ TEST(DebugGetPossibleBreakpointsReturnLocations) {
|
|||||||
++returns_count;
|
++returns_count;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (i::FLAG_stress_fullcodegen) {
|
// With Ignition we generate one return location per return statement,
|
||||||
// With fullcodegen we generate one return location.
|
// each has line = 5, column = 0 as statement position.
|
||||||
CHECK(returns_count == 1);
|
CHECK(returns_count == 4);
|
||||||
} else {
|
|
||||||
// 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) {
|
TEST(DebugEvaluateNoSideEffect) {
|
||||||
|
@ -1326,10 +1326,6 @@ TEST(CodeSerializerLargeCodeObjectWithIncrementalMarking) {
|
|||||||
FLAG_stress_incremental_marking = false;
|
FLAG_stress_incremental_marking = false;
|
||||||
FLAG_serialize_toplevel = true;
|
FLAG_serialize_toplevel = true;
|
||||||
FLAG_always_opt = false;
|
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";
|
const char* filter_flag = "--turbo-filter=NOTHING";
|
||||||
FlagList::SetFlagsFromString(filter_flag, StrLength(filter_flag));
|
FlagList::SetFlagsFromString(filter_flag, StrLength(filter_flag));
|
||||||
FLAG_black_allocation = true;
|
FLAG_black_allocation = true;
|
||||||
@ -1345,7 +1341,7 @@ TEST(CodeSerializerLargeCodeObjectWithIncrementalMarking) {
|
|||||||
Vector<const uint8_t> source = ConstructSource(
|
Vector<const uint8_t> source = ConstructSource(
|
||||||
STATIC_CHAR_VECTOR("var j=1; if (j == 0) {"),
|
STATIC_CHAR_VECTOR("var j=1; if (j == 0) {"),
|
||||||
STATIC_CHAR_VECTOR("for (var i = 0; i < Object.prototype; i++);"),
|
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 =
|
Handle<String> source_str =
|
||||||
isolate->factory()->NewStringFromOneByte(source).ToHandleChecked();
|
isolate->factory()->NewStringFromOneByte(source).ToHandleChecked();
|
||||||
|
|
||||||
@ -1967,61 +1963,6 @@ TEST(CodeSerializerWithHarmonyScoping) {
|
|||||||
isolate2->Dispose();
|
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) {
|
TEST(Regress503552) {
|
||||||
if (!FLAG_incremental_marking) return;
|
if (!FLAG_incremental_marking) return;
|
||||||
// Test that the code serializer can deal with weak cells that form a linked
|
// Test that the code serializer can deal with weak cells that form a linked
|
||||||
|
@ -2,8 +2,6 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --no-stress-fullcodegen
|
|
||||||
|
|
||||||
// Test that asynchronous features do not work with
|
// Test that asynchronous features do not work with
|
||||||
// side-effect free debug-evaluate.
|
// side-effect free debug-evaluate.
|
||||||
|
|
||||||
|
@ -2,8 +2,6 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --no-stress-fullcodegen
|
|
||||||
|
|
||||||
Debug = debug.Debug
|
Debug = debug.Debug
|
||||||
|
|
||||||
var exception = null;
|
var exception = null;
|
||||||
|
@ -2,8 +2,6 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --no-stress-fullcodegen
|
|
||||||
|
|
||||||
Debug = debug.Debug
|
Debug = debug.Debug
|
||||||
|
|
||||||
var exception = null;
|
var exception = null;
|
||||||
|
@ -2,8 +2,6 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --no-stress-fullcodegen
|
|
||||||
|
|
||||||
Debug = debug.Debug
|
Debug = debug.Debug
|
||||||
|
|
||||||
var exception = null;
|
var exception = null;
|
||||||
|
@ -2,8 +2,6 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --no-stress-fullcodegen
|
|
||||||
|
|
||||||
// Test that declaring local variables in IIFEs works with
|
// Test that declaring local variables in IIFEs works with
|
||||||
// side-effect free debug-evaluate.
|
// side-effect free debug-evaluate.
|
||||||
|
|
||||||
|
@ -2,8 +2,6 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --no-stress-fullcodegen
|
|
||||||
|
|
||||||
Debug = debug.Debug
|
Debug = debug.Debug
|
||||||
|
|
||||||
var exception = null;
|
var exception = null;
|
||||||
|
@ -2,8 +2,6 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --no-stress-fullcodegen
|
|
||||||
|
|
||||||
Debug = debug.Debug
|
Debug = debug.Debug
|
||||||
|
|
||||||
var exception = null;
|
var exception = null;
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --opt --no-always-opt --no-stress-fullcodegen
|
// Flags: --opt --no-always-opt
|
||||||
|
|
||||||
var Debug = debug.Debug;
|
var Debug = debug.Debug;
|
||||||
|
|
||||||
|
@ -2,7 +2,6 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --no-stress-fullcodegen
|
|
||||||
// The functions used for testing backtraces. They are at the top to make the
|
// The functions used for testing backtraces. They are at the top to make the
|
||||||
// testing of source line/column easier.
|
// testing of source line/column easier.
|
||||||
|
|
||||||
|
@ -2,8 +2,6 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --no-stress-fullcodegen
|
|
||||||
|
|
||||||
function f() {
|
function f() {
|
||||||
throw new Error();
|
throw new Error();
|
||||||
}
|
}
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// 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 =
|
var source =
|
||||||
`
|
`
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// 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 =
|
var source =
|
||||||
`
|
`
|
||||||
|
@ -2,8 +2,6 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --no-stress-fullcodegen
|
|
||||||
|
|
||||||
let {session, contextGroup, Protocol} = InspectorTest.start('Checks Debugger.getPossibleBreakpoints');
|
let {session, contextGroup, Protocol} = InspectorTest.start('Checks Debugger.getPossibleBreakpoints');
|
||||||
|
|
||||||
var source = utils.read('test/inspector/debugger/resources/break-locations.js');
|
var source = utils.read('test/inspector/debugger/resources/break-locations.js');
|
||||||
|
@ -2,7 +2,6 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --no-stress-fullcodegen
|
|
||||||
let {session, contextGroup, Protocol} = InspectorTest.start('Tests side-effect-free evaluation');
|
let {session, contextGroup, Protocol} = InspectorTest.start('Tests side-effect-free evaluation');
|
||||||
|
|
||||||
contextGroup.addScript(`
|
contextGroup.addScript(`
|
||||||
|
@ -2,8 +2,6 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --no-stress-fullcodegen
|
|
||||||
|
|
||||||
let {session, contextGroup, Protocol} = InspectorTest.start('Checks possible break locations.');
|
let {session, contextGroup, Protocol} = InspectorTest.start('Checks possible break locations.');
|
||||||
|
|
||||||
session.setupScriptMap();
|
session.setupScriptMap();
|
||||||
|
@ -25,8 +25,7 @@
|
|||||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
// Flags: --allow-natives-syntax --expose-gc
|
// Flags: --allow-natives-syntax --expose-gc --opt --no-always-opt
|
||||||
// Flags: --opt --no-always-opt --no-stress-fullcodegen
|
|
||||||
|
|
||||||
var elements_kind = {
|
var elements_kind = {
|
||||||
fast_smi_only : 'fast smi only elements',
|
fast_smi_only : 'fast smi only elements',
|
||||||
|
@ -25,8 +25,7 @@
|
|||||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
// Flags: --allow-natives-syntax --expose-gc
|
// Flags: --allow-natives-syntax --expose-gc --no-always-opt --opt
|
||||||
// Flags: --no-always-opt --opt --no-stress-fullcodegen
|
|
||||||
|
|
||||||
// Test element kind of objects.
|
// Test element kind of objects.
|
||||||
|
|
||||||
|
@ -25,8 +25,7 @@
|
|||||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
// Flags: --allow-natives-syntax --expose-gc
|
// Flags: --allow-natives-syntax --expose-gc --opt --no-always-opt
|
||||||
// Flags: --opt --no-always-opt --no-stress-fullcodegen
|
|
||||||
|
|
||||||
// Verify that cross context calls work
|
// Verify that cross context calls work
|
||||||
(function (){
|
(function (){
|
||||||
|
@ -25,8 +25,7 @@
|
|||||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
// Flags: --allow-natives-syntax --expose-gc
|
// Flags: --allow-natives-syntax --expose-gc --opt --no-always-opt
|
||||||
// Flags: --opt --no-always-opt --no-stress-fullcodegen
|
|
||||||
|
|
||||||
var elements_kind = {
|
var elements_kind = {
|
||||||
packed_smi : 'packed smi elements',
|
packed_smi : 'packed smi elements',
|
||||||
|
@ -26,7 +26,7 @@
|
|||||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
// Flags: --allow-natives-syntax --expose-gc --ignition-osr --no-always-opt
|
// 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.
|
// IC and Crankshaft support for smi-only elements in dynamic array literals.
|
||||||
function get(foo) { return foo; } // Used to generate dynamic values.
|
function get(foo) { return foo; } // Used to generate dynamic values.
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// 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;
|
var v = 0;
|
||||||
|
|
||||||
|
@ -25,7 +25,7 @@
|
|||||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
// 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
|
// Verifies that the KeyedStoreIC correctly handles out-of-bounds stores
|
||||||
// to an array that grow it by a single element. Test functions are
|
// to an array that grow it by a single element. Test functions are
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --validate-asm --no-stress-fullcodegen --lazy-inner-functions
|
// Flags: --validate-asm --lazy-inner-functions
|
||||||
|
|
||||||
function outer() {
|
function outer() {
|
||||||
"use asm";
|
"use asm";
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --allow-natives-syntax --no-always-opt --block-coverage
|
// 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
|
// Files: test/mjsunit/code-coverage-utils.js
|
||||||
|
|
||||||
%DebugToggleBlockCoverage(true);
|
%DebugToggleBlockCoverage(true);
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --allow-natives-syntax --no-always-opt --block-coverage
|
// 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
|
// Files: test/mjsunit/code-coverage-utils.js
|
||||||
|
|
||||||
%DebugToggleBlockCoverage(true);
|
%DebugToggleBlockCoverage(true);
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --allow-natives-syntax --no-always-opt --block-coverage
|
// 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
|
// Files: test/mjsunit/code-coverage-utils.js
|
||||||
|
|
||||||
%DebugToggleBlockCoverage(true);
|
%DebugToggleBlockCoverage(true);
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// 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
|
// Files: test/mjsunit/code-coverage-utils.js
|
||||||
|
|
||||||
// Test precise code coverage.
|
// Test precise code coverage.
|
||||||
|
@ -25,7 +25,7 @@
|
|||||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
// 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;
|
var global = this;
|
||||||
|
|
||||||
|
@ -25,7 +25,7 @@
|
|||||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
// 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() {
|
function f() {
|
||||||
Array.prototype[10] = 2;
|
Array.prototype[10] = 2;
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// 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) {
|
function foo(i, deopt = false) {
|
||||||
if (i == 0) {
|
if (i == 0) {
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// 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) {
|
function foo(i, deopt = false) {
|
||||||
if (i == 0) {
|
if (i == 0) {
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// 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) {
|
function foo(i, deopt = false, deoptobj = null) {
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// 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() {}
|
function foo() {}
|
||||||
|
|
||||||
|
@ -25,7 +25,7 @@
|
|||||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
// 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;
|
deopt_trigger = 0;
|
||||||
side_effect = 0;
|
side_effect = 0;
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --allow-natives-syntax --noverify-heap --noenable-slow-asserts
|
// 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
|
// --noverify-heap and --noenable-slow-asserts are set because the test is too
|
||||||
// slow with it on.
|
// slow with it on.
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --allow-natives-syntax --nostress-opt --track-field-types
|
// Flags: --allow-natives-syntax --nostress-opt --track-field-types
|
||||||
// Flags: --opt --no-always-opt --no-stress-fullcodegen
|
// Flags: --opt --no-always-opt
|
||||||
|
|
||||||
(function() {
|
(function() {
|
||||||
var o = { text: "Hello World!" };
|
var o = { text: "Hello World!" };
|
||||||
|
@ -25,7 +25,7 @@
|
|||||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
// 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.
|
// It's nice to run this in other browsers too.
|
||||||
var standalone = false;
|
var standalone = false;
|
||||||
|
@ -2,8 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --harmony-do-expressions --allow-natives-syntax --no-always-opt
|
// Flags: --harmony-do-expressions --allow-natives-syntax --no-always-opt --opt
|
||||||
// Flags: --opt --no-stress-fullcodegen
|
|
||||||
|
|
||||||
function returnValue(v) { return v; }
|
function returnValue(v) { return v; }
|
||||||
function MyError() {}
|
function MyError() {}
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --no-stress-fullcodegen --trace-ignition-dispatches
|
// Flags: --trace-ignition-dispatches
|
||||||
|
|
||||||
assertEquals(typeof getIgnitionDispatchCounters, "function");
|
assertEquals(typeof getIgnitionDispatchCounters, "function");
|
||||||
|
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --allow-natives-syntax --no-stress-fullcodegen --ignition-osr
|
// Flags: --allow-natives-syntax --ignition-osr
|
||||||
|
|
||||||
function f() {
|
function f() {
|
||||||
for (var i = 0; i < 10; i++) {
|
for (var i = 0; i < 10; i++) {
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// 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.
|
// Tests that verify heap works for BytecodeArrays in the large object space.
|
||||||
|
|
||||||
|
@ -2,8 +2,6 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --no-stress-fullcodegen
|
|
||||||
|
|
||||||
function foo() {
|
function foo() {
|
||||||
if (this.Worker) {
|
if (this.Worker) {
|
||||||
function __f_0() { this.s = a; }
|
function __f_0() { this.s = a; }
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// 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) {
|
function f(b) {
|
||||||
if (b == 1) {
|
if (b == 1) {
|
||||||
|
@ -2,8 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --allow-natives-syntax
|
// Flags: --allow-natives-syntax --no-stress-opt --opt --no-always-opt
|
||||||
// Flags: --no-stress-opt --opt --no-always-opt --no-stress-fullcodegen
|
|
||||||
|
|
||||||
// --nostress-opt is specified because the test corrupts the "pristine"
|
// --nostress-opt is specified because the test corrupts the "pristine"
|
||||||
// array prototype chain by storing an element, and this is tracked
|
// array prototype chain by storing an element, and this is tracked
|
||||||
|
@ -25,7 +25,7 @@
|
|||||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
// 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");
|
var s = Symbol("foo");
|
||||||
|
|
||||||
|
@ -28,7 +28,7 @@
|
|||||||
// Tests the Object.seal and Object.isSealed methods - ES 19.1.2.17 and
|
// Tests the Object.seal and Object.isSealed methods - ES 19.1.2.17 and
|
||||||
// ES 19.1.2.13
|
// 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
|
// 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"));
|
var non_objects = new Array(undefined, null, 1, -1, 0, 42.43, Symbol("test"));
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --allow-natives-syntax --expose-gc --turbo-inline-array-builtins
|
// 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 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];
|
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];
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --allow-natives-syntax --opt --no-stress-fullcodegen
|
// Flags: --allow-natives-syntax --opt
|
||||||
|
|
||||||
function foo(a) {
|
function foo(a) {
|
||||||
for (var d in a) {
|
for (var d in a) {
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// 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() {
|
function getobj() {
|
||||||
return { bar : function() { return 0}};
|
return { bar : function() { return 0}};
|
||||||
|
@ -25,7 +25,7 @@
|
|||||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
// 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;
|
var calls = 0;
|
||||||
|
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --allow-natives-syntax --no-stress-fullcodegen --ignition-osr
|
// Flags: --allow-natives-syntax --ignition-osr
|
||||||
|
|
||||||
(function TestNonLoopyLoop() {
|
(function TestNonLoopyLoop() {
|
||||||
function f() {
|
function f() {
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// 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 g() { return 23 }
|
||||||
function h() { return 42 }
|
function h() { return 42 }
|
||||||
|
@ -2,8 +2,6 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --no-stress-fullcodegen
|
|
||||||
|
|
||||||
function function_with_m_args(m) {
|
function function_with_m_args(m) {
|
||||||
var source = '(function f() { return; })(';
|
var source = '(function f() { return; })(';
|
||||||
for (var arg = 0; arg < m ; arg++) {
|
for (var arg = 0; arg < m ; arg++) {
|
||||||
|
@ -2,8 +2,6 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --no-stress-fullcodegen
|
|
||||||
|
|
||||||
function* foo() { yield 42 }
|
function* foo() { yield 42 }
|
||||||
function* goo() { yield 42 }
|
function* goo() { yield 42 }
|
||||||
var f = foo();
|
var f = foo();
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --no-stress-fullcodegen --always-opt --allow-natives-syntax
|
// Flags: --always-opt --allow-natives-syntax
|
||||||
|
|
||||||
try {
|
try {
|
||||||
} catch(e) {; }
|
} catch(e) {; }
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --allow-natives-syntax --es-staging --no-stress-fullcodegen
|
// Flags: --allow-natives-syntax --es-staging
|
||||||
|
|
||||||
"use strict";
|
"use strict";
|
||||||
|
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// 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
|
// This is to test if 'this' gets correctly initialized when inlining
|
||||||
// constructors in turbofan.
|
// constructors in turbofan.
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --no-stress-fullcodegen --stack-size=100
|
// Flags: --stack-size=100
|
||||||
|
|
||||||
function Module(stdlib) {
|
function Module(stdlib) {
|
||||||
"use asm";
|
"use asm";
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --no-stress-fullcodegen --ignition-osr
|
// Flags: --ignition-osr
|
||||||
|
|
||||||
function osr() {
|
function osr() {
|
||||||
for (var i = 0; i < 50000; ++i) Math.random();
|
for (var i = 0; i < 50000; ++i) Math.random();
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// 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 f(x) { return x + 23 }
|
||||||
function g(x) { return f(x) + 42 }
|
function g(x) { return f(x) + 42 }
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// 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() {
|
function f() {
|
||||||
for (var i = 0; i < 10; i++) if (i == 5) %OptimizeOsr();
|
for (var i = 0; i < 10; i++) if (i == 5) %OptimizeOsr();
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --no-stress-fullcodegen --validate-asm --always-opt
|
// Flags: --validate-asm --always-opt
|
||||||
|
|
||||||
function Module() {
|
function Module() {
|
||||||
"use asm";
|
"use asm";
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --allow-natives-syntax --no-stress-fullcodegen
|
// Flags: --allow-natives-syntax
|
||||||
|
|
||||||
class Base {}
|
class Base {}
|
||||||
class Subclass extends Base {
|
class Subclass extends Base {
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --allow-natives-syntax --no-stress-fullcodegen
|
// Flags: --allow-natives-syntax
|
||||||
|
|
||||||
function f() {
|
function f() {
|
||||||
for (var i = 0; i < 3; ++i) {
|
for (var i = 0; i < 3; ++i) {
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// 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') + "";
|
var source = "return 1" + new Array(2048).join(' + a') + "";
|
||||||
eval("function g(a) {" + source + "}");
|
eval("function g(a) {" + source + "}");
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --no-stress-fullcodegen --always-opt
|
// Flags: --always-opt
|
||||||
|
|
||||||
function f () {
|
function f () {
|
||||||
var x = "";
|
var x = "";
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --allow-natives-syntax --no-stress-fullcodegen
|
// Flags: --allow-natives-syntax
|
||||||
|
|
||||||
// The {f} function is compiled using TurboFan.
|
// The {f} function is compiled using TurboFan.
|
||||||
// 1) The call to {Reflect.set} has no arguments adaptation.
|
// 1) The call to {Reflect.set} has no arguments adaptation.
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
|
|
||||||
// Flags: --allow-natives-syntax --no-stress-fullcodegen
|
// Flags: --allow-natives-syntax
|
||||||
|
|
||||||
function g() {
|
function g() {
|
||||||
return g.arguments;
|
return g.arguments;
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// found in the LICENSE file.
|
// found in the LICENSE file.
|
||||||
//
|
//
|
||||||
// Flags: --mark-shared-functions-for-tier-up --allow-natives-syntax
|
// 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.
|
// If we are always or never optimizing it is useless.
|
||||||
assertFalse(isAlwaysOptimize());
|
assertFalse(isAlwaysOptimize());
|
||||||
|
@ -25,7 +25,7 @@
|
|||||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
// 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) {
|
function check(func, input, expected) {
|
||||||
func(-1);
|
func(-1);
|
||||||
|
@ -25,7 +25,7 @@
|
|||||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
// 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) {
|
function mul(a, b) {
|
||||||
return a * b;
|
return a * b;
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
// Use of this source code is governed by a BSD-style license that can be
|
// Use of this source code is governed by a BSD-style license that can be
|
||||||
// found in the LICENSE file.
|
// 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) {
|
function check_collect_types(name, expected) {
|
||||||
const type_profile = %TypeProfile(name);
|
const type_profile = %TypeProfile(name);
|
||||||
@ -36,7 +36,7 @@ testFunction(123, true);
|
|||||||
testFunction('hello');
|
testFunction('hello');
|
||||||
testFunction(123);
|
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);
|
check_collect_types(testFunction, expected);
|
||||||
|
|
||||||
testFunction(undefined);
|
testFunction(undefined);
|
||||||
@ -45,7 +45,7 @@ testFunction({x: 12}, true);
|
|||||||
testFunction({x: 12});
|
testFunction({x: 12});
|
||||||
testFunction(new MyClass());
|
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);
|
check_collect_types(testFunction, expected);
|
||||||
|
|
||||||
|
|
||||||
@ -53,7 +53,7 @@ function testReturnOfNonVariable() {
|
|||||||
return 32;
|
return 32;
|
||||||
}
|
}
|
||||||
testReturnOfNonVariable();
|
testReturnOfNonVariable();
|
||||||
expected = `{\"1748\":[\"number\"]}`;
|
expected = `{\"1724\":[\"number\"]}`;
|
||||||
check_collect_types(testReturnOfNonVariable, expected);
|
check_collect_types(testReturnOfNonVariable, expected);
|
||||||
|
|
||||||
// Return statement is reached but its expression is never really returned.
|
// Return statement is reached but its expression is never really returned.
|
||||||
@ -65,7 +65,7 @@ function try_finally() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
try_finally();
|
try_finally();
|
||||||
expected = `{\"2050\":[\"string\"]}`;
|
expected = `{\"2026\":[\"string\"]}`;
|
||||||
check_collect_types(try_finally, expected);
|
check_collect_types(try_finally, expected);
|
||||||
|
|
||||||
// Fall-off return.
|
// Fall-off return.
|
||||||
@ -73,7 +73,7 @@ function fall_off() {
|
|||||||
//nothing
|
//nothing
|
||||||
}
|
}
|
||||||
fall_off();
|
fall_off();
|
||||||
expected = `{\"2204\":[\"undefined\"]}`;
|
expected = `{\"2180\":[\"undefined\"]}`;
|
||||||
check_collect_types(fall_off, expected);
|
check_collect_types(fall_off, expected);
|
||||||
|
|
||||||
// Do not collect types when the function is never run.
|
// Do not collect types when the function is never run.
|
||||||
@ -86,5 +86,5 @@ function several_params(a, b, c, d) {
|
|||||||
//nothing
|
//nothing
|
||||||
}
|
}
|
||||||
several_params(2, 'foo', {}, new MyClass());
|
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);
|
check_collect_types(several_params, expected);
|
||||||
|
@ -43,7 +43,6 @@ class CompilerDispatcherTestFlags {
|
|||||||
CHECK_NULL(save_flags_);
|
CHECK_NULL(save_flags_);
|
||||||
save_flags_ = new SaveFlags();
|
save_flags_ = new SaveFlags();
|
||||||
FLAG_single_threaded = true;
|
FLAG_single_threaded = true;
|
||||||
FLAG_stress_fullcodegen = false;
|
|
||||||
FlagList::EnforceFlagImplications();
|
FlagList::EnforceFlagImplications();
|
||||||
FLAG_compiler_dispatcher = true;
|
FLAG_compiler_dispatcher = true;
|
||||||
}
|
}
|
||||||
|
@ -32,7 +32,6 @@ class UnoptimizedCompileJobTest : public TestWithContext {
|
|||||||
static void SetUpTestCase() {
|
static void SetUpTestCase() {
|
||||||
CHECK_NULL(save_flags_);
|
CHECK_NULL(save_flags_);
|
||||||
save_flags_ = new SaveFlags();
|
save_flags_ = new SaveFlags();
|
||||||
FLAG_stress_fullcodegen = false;
|
|
||||||
TestWithContext::SetUpTestCase();
|
TestWithContext::SetUpTestCase();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user