Index: src/debug/debug-evaluate.cc |
diff --git a/src/debug/debug-evaluate.cc b/src/debug/debug-evaluate.cc |
index bb9a99e5c94bc2867caf1a1725948456159ed45f..9fcd652662c63304cff7f14a00b50d2a84e736b0 100644 |
--- a/src/debug/debug-evaluate.cc |
+++ b/src/debug/debug-evaluate.cc |
@@ -315,6 +315,7 @@ bool IntrinsicHasNoSideEffect(Runtime::FunctionId id) { |
case Runtime::kCall: |
case Runtime::kInlineMaxSmi: |
case Runtime::kMaxSmi: |
+ case Runtime::kHasInPrototypeChain: |
return true; |
default: |
if (FLAG_trace_side_effect_free_debug_evaluate) { |
@@ -379,6 +380,7 @@ bool BytecodeHasNoSideEffect(interpreter::Bytecode bytecode) { |
// Conversions. |
case Bytecode::kToObject: |
case Bytecode::kToNumber: |
+ case Bytecode::kToName: |
// Misc. |
case Bytecode::kForInPrepare: |
case Bytecode::kForInContinue: |
@@ -405,7 +407,22 @@ bool BuiltinHasNoSideEffect(Builtins::Name id) { |
switch (id) { |
// Whitelist for builtins. |
// Object builtins. |
+ case Builtins::kObjectCreate: |
+ case Builtins::kObjectEntries: |
+ case Builtins::kObjectGetOwnPropertyDescriptor: |
+ case Builtins::kObjectGetOwnPropertyDescriptors: |
+ case Builtins::kObjectGetOwnPropertyNames: |
+ case Builtins::kObjectGetOwnPropertySymbols: |
+ case Builtins::kObjectGetPrototypeOf: |
+ case Builtins::kObjectIs: |
+ case Builtins::kObjectIsExtensible: |
+ case Builtins::kObjectIsFrozen: |
+ case Builtins::kObjectIsSealed: |
case Builtins::kObjectPrototypeValueOf: |
+ case Builtins::kObjectValues: |
+ case Builtins::kObjectHasOwnProperty: |
+ case Builtins::kObjectPrototypePropertyIsEnumerable: |
+ case Builtins::kObjectProtoToString: |
// Array builtins. |
case Builtins::kArrayCode: |
case Builtins::kArrayIndexOf: |
@@ -485,6 +502,12 @@ bool BuiltinHasNoSideEffect(Builtins::Name id) { |
case Builtins::kStringPrototypeTrimLeft: |
case Builtins::kStringPrototypeTrimRight: |
case Builtins::kStringPrototypeValueOf: |
+ // Symbol builtins. |
+ case Builtins::kSymbolConstructor: |
+ case Builtins::kSymbolKeyFor: |
+ case Builtins::kSymbolPrototypeToString: |
+ case Builtins::kSymbolPrototypeValueOf: |
+ case Builtins::kSymbolPrototypeToPrimitive: |
// JSON builtins. |
case Builtins::kJsonParse: |
case Builtins::kJsonStringify: |