Index: src/debug/debug-evaluate.cc |
diff --git a/src/debug/debug-evaluate.cc b/src/debug/debug-evaluate.cc |
index 51b3b516b0b182f192fefacfea6b2ff95e66ffef..c6fafa557b7da20e706578f89ee89b5cc8ef5eef 100644 |
--- a/src/debug/debug-evaluate.cc |
+++ b/src/debug/debug-evaluate.cc |
@@ -271,12 +271,14 @@ bool IntrinsicHasNoSideEffect(Runtime::FunctionId id) { |
case Runtime::kInlineToString: |
case Runtime::kToLength: |
case Runtime::kInlineToLength: |
+ case Runtime::kToNumber: |
// Type checks. |
case Runtime::kIsJSReceiver: |
case Runtime::kInlineIsJSReceiver: |
case Runtime::kIsSmi: |
case Runtime::kInlineIsSmi: |
case Runtime::kIsArray: |
+ case Runtime::kInlineIsArray: |
case Runtime::kIsFunction: |
case Runtime::kIsDate: |
case Runtime::kIsJSProxy: |
@@ -284,6 +286,12 @@ bool IntrinsicHasNoSideEffect(Runtime::FunctionId id) { |
case Runtime::kIsTypedArray: |
// Loads. |
case Runtime::kLoadLookupSlotForCall: |
+ // Arrays. |
+ case Runtime::kArraySpeciesConstructor: |
+ case Runtime::kNormalizeElements: |
+ case Runtime::kGetArrayKeys: |
+ case Runtime::kHasComplexElements: |
+ case Runtime::kEstimateNumberOfElements: |
// Errors. |
case Runtime::kReThrow: |
case Runtime::kThrowReferenceError: |
@@ -371,6 +379,7 @@ bool BytecodeHasNoSideEffect(interpreter::Bytecode bytecode) { |
case Bytecode::kCreateUnmappedArguments: |
// Conversions. |
case Bytecode::kToObject: |
+ case Bytecode::kToNumber: |
// Misc. |
case Bytecode::kForInPrepare: |
case Bytecode::kForInContinue: |
@@ -397,7 +406,13 @@ bool BuiltinHasNoSideEffect(Builtins::Name id) { |
switch (id) { |
// Whitelist for builtins. |
// Array builtins. |
+ case Builtins::kArrayCode: |
+ case Builtins::kArrayIndexOf: |
case Builtins::kArrayPrototypeValues: |
+ case Builtins::kArrayIncludes: |
+ case Builtins::kArrayPrototypeEntries: |
+ case Builtins::kArrayPrototypeKeys: |
+ case Builtins::kArrayForEach: |
// Math builtins. |
case Builtins::kMathAbs: |
case Builtins::kMathAcos: |
@@ -470,6 +485,12 @@ bool BuiltinHasNoSideEffect(Builtins::Name id) { |
// JSON builtins. |
case Builtins::kJsonParse: |
case Builtins::kJsonStringify: |
+ // Error builtins. |
+ case Builtins::kMakeError: |
+ case Builtins::kMakeTypeError: |
+ case Builtins::kMakeSyntaxError: |
+ case Builtins::kMakeRangeError: |
+ case Builtins::kMakeURIError: |
return true; |
default: |
if (FLAG_trace_side_effect_free_debug_evaluate) { |