| Index: src/objects-inl.h
|
| diff --git a/src/objects-inl.h b/src/objects-inl.h
|
| index 5ff72651c106a4bdb6eb916f47a8523c60bad098..a629326262070db710ebf4981d9bd3a788623c9d 100644
|
| --- a/src/objects-inl.h
|
| +++ b/src/objects-inl.h
|
| @@ -5885,7 +5885,7 @@ DebugInfo* SharedFunctionInfo::GetDebugInfo() {
|
|
|
|
|
| bool SharedFunctionInfo::HasDebugCode() {
|
| - return HasBytecodeArray() ||
|
| + return IsInterpreted() ||
|
| (code()->kind() == Code::FUNCTION && code()->has_debug_break_slots());
|
| }
|
|
|
| @@ -5909,6 +5909,15 @@ bool SharedFunctionInfo::HasBytecodeArray() {
|
| return function_data()->IsBytecodeArray();
|
| }
|
|
|
| +bool SharedFunctionInfo::IsInterpreted() {
|
| + // Currently, having bytecode does not mean the function is actually being
|
| + // interpreted. However, the debugger has to know precisely what is going to
|
| + // be executed.
|
| + // TODO(yangguo,mstarzinger): make this a synonym of HasBytecodeArray().
|
| + return code() ==
|
| + GetIsolate()->builtins()->builtin(
|
| + Builtins::kInterpreterEntryTrampoline);
|
| +}
|
|
|
| BytecodeArray* SharedFunctionInfo::bytecode_array() {
|
| DCHECK(HasBytecodeArray());
|
|
|