diff --git a/src/debug.cc b/src/debug.cc index 1afbfc1068..5d386cc04b 100644 --- a/src/debug.cc +++ b/src/debug.cc @@ -1787,9 +1787,7 @@ void Debug::FramesHaveBeenDropped(StackFrame::Id new_break_frame_id, thread_local_.frame_drop_mode_ = mode; thread_local_.break_frame_id_ = new_break_frame_id; thread_local_.restarter_frame_function_pointer_ = - // Temporary disabled for failing test investigation. - // restarter_frame_function_pointer; - NULL; + restarter_frame_function_pointer; } diff --git a/src/serialize.cc b/src/serialize.cc index 0e283f4618..3988b4a893 100644 --- a/src/serialize.cc +++ b/src/serialize.cc @@ -237,6 +237,10 @@ void ExternalReferenceTable::PopulateTable() { DEBUG_ADDRESS, Debug::k_debug_break_return_address << kDebugIdShift, "Debug::debug_break_return_address()"); + Add(Debug_Address(Debug::k_restarter_frame_function_pointer).address(), + DEBUG_ADDRESS, + Debug::k_restarter_frame_function_pointer << kDebugIdShift, + "Debug::restarter_frame_function_pointer_address()"); const char* debug_register_format = "Debug::register_address(%i)"; int dr_format_length = StrLength(debug_register_format); for (int i = 0; i < kNumJSCallerSaved; ++i) { @@ -478,6 +482,7 @@ ExternalReferenceEncoder::ExternalReferenceEncoder() uint32_t ExternalReferenceEncoder::Encode(Address key) const { int index = IndexOf(key); + ASSERT(key == NULL || index >= 0); return index >=0 ? ExternalReferenceTable::instance()->code(index) : 0; }