[test] Rename flag for forcing slow path.

TBR=jgruber@chromium.org

Bug: v8:7120
Change-Id: I50b852a4526103d56b3a2c60c4a88b5ecaecf9bb
Reviewed-on: https://chromium-review.googlesource.com/801270
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#49771}
This commit is contained in:
Michal Majewski 2017-11-30 19:00:08 +01:00 committed by Commit Bot
parent fc50e2c4c9
commit d96edb59d7
8 changed files with 25 additions and 26 deletions

View File

@ -89,8 +89,8 @@ declare_args() {
# Sets -dV8_CONCURRENT_MARKING
v8_enable_concurrent_marking = true
# Sets -dV8_ENABLE_SLOWFAST_SWITCH
v8_enable_slow_fast_switch = ""
# Sets -dV8_ENABLE_FORCE_SLOW_PATH
v8_enable_force_slow_path = ""
# Build the snapshot with unwinding information for perf.
# Sets -dV8_USE_SNAPSHOT_WITH_UNWINDING_INFO.
@ -152,8 +152,8 @@ if (v8_enable_disassembler == "") {
if (v8_enable_trace_maps == "") {
v8_enable_trace_maps = is_debug
}
if (v8_enable_slow_fast_switch == "") {
v8_enable_slow_fast_switch = is_debug
if (v8_enable_force_slow_path == "") {
v8_enable_force_slow_path = is_debug
}
if (v8_enable_v8_checks == "") {
v8_enable_v8_checks = is_debug
@ -281,8 +281,8 @@ config("features") {
if (v8_enable_trace_feedback_updates) {
defines += [ "V8_TRACE_FEEDBACK_UPDATES" ]
}
if (v8_enable_slow_fast_switch) {
defines += [ "V8_ENABLE_SLOWFAST_SWITCH" ]
if (v8_enable_force_slow_path) {
defines += [ "V8_ENABLE_FORCE_SLOW_PATH" ]
}
if (v8_enable_v8_checks) {
defines += [ "V8_ENABLE_CHECKS" ]

View File

@ -429,7 +429,7 @@
'gn_release_x64_trybot': [
'gn', 'release_trybot', 'x64', 'swarming'],
'gn_release_x64_test_features_trybot': [
'gn', 'release_trybot', 'x64', 'swarming', 'v8_enable_slow_fast_switch'],
'gn', 'release_trybot', 'x64', 'swarming', 'v8_enable_force_slow_path'],
'gn_release_x64_tsan': [
'gn', 'release_bot', 'x64', 'tsan', 'swarming'],
'gn_release_x64_tsan_concurrent_marking': [
@ -557,7 +557,7 @@
},
'asan': {
'mixins': ['v8_enable_slow_fast_switch'],
'mixins': ['v8_enable_force_slow_path'],
'gn_args': 'is_asan=true',
'gyp_defines': 'clang=1 asan=1',
},
@ -568,14 +568,14 @@
},
'cfi': {
'mixins': ['v8_enable_slow_fast_switch'],
'mixins': ['v8_enable_force_slow_path'],
'gn_args': ('is_cfi=true use_cfi_cast=true use_cfi_diag=true '
'use_cfi_recover=false'),
'gyp_defines': 'cfi_vptr=1 cfi_diag=1',
},
'cfi_clusterfuzz': {
'mixins': ['v8_enable_slow_fast_switch'],
'mixins': ['v8_enable_force_slow_path'],
'gn_args': ('is_cfi=true use_cfi_cast=true use_cfi_diag=true '
'use_cfi_recover=true'),
'gyp_defines': 'cfi_vptr=1 cfi_diag=1',
@ -652,7 +652,7 @@
},
'lsan': {
'mixins': ['v8_enable_slow_fast_switch'],
'mixins': ['v8_enable_force_slow_path'],
'gn_args': 'is_lsan=true',
'gyp_defines': 'lsan=1',
},
@ -668,13 +668,13 @@
},
'msan': {
'mixins': ['v8_enable_slow_fast_switch'],
'mixins': ['v8_enable_force_slow_path'],
'gn_args': ('is_msan=true msan_track_origins=2 '
'use_prebuilt_instrumented_libraries=true'),
},
'msan_no_origins': {
'mixins': ['v8_enable_slow_fast_switch'],
'mixins': ['v8_enable_force_slow_path'],
'gn_args': ('is_msan=true msan_track_origins=0 '
'use_prebuilt_instrumented_libraries=true'),
},
@ -764,13 +764,13 @@
},
'tsan': {
'mixins': ['v8_enable_slow_fast_switch'],
'mixins': ['v8_enable_force_slow_path'],
'gn_args': 'is_tsan=true',
'gyp_defines': 'clang=1 tsan=1',
},
'ubsan_vptr': {
'mixins': ['v8_enable_slow_fast_switch'],
'mixins': ['v8_enable_force_slow_path'],
# TODO(krasin): Remove is_ubsan_no_recover=true when
# https://llvm.org/bugs/show_bug.cgi?id=25569 is fixed and just use
# ubsan_vptr instead.
@ -778,7 +778,7 @@
},
'ubsan_vptr_recover': {
'mixins': ['v8_enable_slow_fast_switch'],
'mixins': ['v8_enable_force_slow_path'],
# Ubsan vptr with recovery.
'gn_args': 'is_ubsan_vptr=true is_ubsan_no_recover=false',
},
@ -793,7 +793,7 @@
},
'v8_correctness_fuzzer': {
'mixins': ['v8_enable_slow_fast_switch'],
'mixins': ['v8_enable_force_slow_path'],
'gn_args': 'v8_correctness_fuzzer=true v8_multi_arch_build=true',
},
@ -807,8 +807,8 @@
'gyp_defines': 'v8_enable_slow_dchecks=1',
},
'v8_enable_slow_fast_switch': {
'gn_args': 'v8_enable_slow_fast_switch=true',
'v8_enable_force_slow_path': {
'gn_args': 'v8_enable_force_slow_path=true',
},
'v8_enable_verify_predictable': {

View File

@ -834,7 +834,7 @@ Node* RegExpBuiltinsAssembler::IsFastRegExpNoPrototype(Node* const context,
Label out(this);
VARIABLE(var_result, MachineRepresentation::kWord32);
#if defined(DEBUG) || defined(ENABLE_FASTSLOW_SWITCH)
#ifdef V8_ENABLE_FORCE_SLOW_PATH
var_result.Bind(Int32Constant(0));
GotoIfForceSlowPath(&out);
#endif

View File

@ -898,7 +898,7 @@ void CodeStubAssembler::BranchIfFastJSArrayForCopy(Node* object, Node* context,
}
void CodeStubAssembler::GotoIfForceSlowPath(Label* if_true) {
#if defined(DEBUG) || defined(ENABLE_FASTSLOW_SWITCH)
#ifdef V8_ENABLE_FORCE_SLOW_PATH
Node* const force_slow_path_addr =
ExternalConstant(ExternalReference::force_slow_path(isolate()));
Node* const force_slow = Load(MachineType::Uint8(), force_slow_path_addr);

View File

@ -417,8 +417,7 @@ class V8_EXPORT_PRIVATE CodeStubAssembler : public compiler::CodeAssembler {
// It's used for testing to ensure that slow path implementation behave
// equivalent to corresponding fast paths (where applicable).
//
// Works only in DEBUG mode or with ENABLE_FASTSLOW_SWITCH compile time flag.
// Nop otherwise.
// Works only with V8_ENABLE_FORCE_SLOW_PATH compile time flag. Nop otherwise.
void GotoIfForceSlowPath(Label* if_true);
// Load value from current frame by given offset in bytes.

View File

@ -3273,7 +3273,7 @@ class TypedElementsAccessor
DisallowHeapAllocation no_gc;
DisallowJavascriptExecution no_js(isolate);
#if defined(V8_ENABLE_SLOWFAST_SWITCH)
#ifdef V8_ENABLE_FORCE_SLOW_PATH
if (isolate->force_slow_path()) return true;
#endif

View File

@ -2613,7 +2613,7 @@ bool Object::IterationHasObservableEffects() {
JSArray* array = JSArray::cast(this);
Isolate* isolate = array->GetIsolate();
#if defined(V8_ENABLE_SLOWFAST_SWITCH)
#ifdef V8_ENABLE_FORCE_SLOW_PATH
if (isolate->force_slow_path()) return true;
#endif

View File

@ -134,7 +134,7 @@ bool RegExpUtils::IsUnmodifiedRegExp(Isolate* isolate, Handle<Object> obj) {
// TODO(ishell): Update this check once map changes for constant field
// tracking are landing.
#if defined(V8_ENABLE_SLOWFAST_SWITCH)
#ifdef V8_ENABLE_FORCE_SLOW_PATH
if (isolate->force_slow_path()) return false;
#endif