Move deoptimizer files

Bug: v8:9247
Change-Id: I6287907edb8a36225bfa9fe864305ea59c20dd8b
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1617667
Commit-Queue: Yang Guo <yangguo@chromium.org>
Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Reviewed-by: Jaroslav Sevcik <jarin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#61648}
This commit is contained in:
Yang Guo 2019-05-20 12:55:42 +02:00 committed by Commit Bot
parent 6a7fd05df3
commit 61523c45a3
64 changed files with 97 additions and 144 deletions

View File

@ -2164,10 +2164,10 @@ v8_source_set("v8_base_without_compiler") {
"src/debug/interface-types.h",
"src/debug/liveedit.cc",
"src/debug/liveedit.h",
"src/deoptimize-reason.cc",
"src/deoptimize-reason.h",
"src/deoptimizer.cc",
"src/deoptimizer.h",
"src/deoptimizer/deoptimize-reason.cc",
"src/deoptimizer/deoptimize-reason.h",
"src/deoptimizer/deoptimizer.cc",
"src/deoptimizer/deoptimizer.h",
"src/detachable-vector.cc",
"src/detachable-vector.h",
"src/diagnostics/basic-block-profiler.cc",

View File

@ -6,7 +6,7 @@
#include "src/api/api-inl.h"
#include "src/contexts.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/execution.h"
#include "src/frames-inl.h"
#include "src/heap/factory.h"

View File

@ -35,7 +35,7 @@
#include "src/debug/debug-type-profile.h"
#include "src/debug/debug.h"
#include "src/debug/liveedit.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/detachable-vector.h"
#include "src/diagnostics/gdb-jit.h"
#include "src/execution.h"

View File

@ -42,7 +42,7 @@
#include "src/assembler-inl.h"
#include "src/base/bits.h"
#include "src/base/cpu.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/macro-assembler.h"
#include "src/objects-inl.h"
#include "src/string-constants.h"

View File

@ -3,7 +3,7 @@
// found in the LICENSE file.
#include "src/assembler-inl.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/macro-assembler.h"
#include "src/objects-inl.h"
#include "src/register-configuration.h"

View File

@ -5,7 +5,7 @@
#include "src/api/api.h"
#include "src/arm64/assembler-arm64-inl.h"
#include "src/arm64/macro-assembler-arm64-inl.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/frame-constants.h"
#include "src/register-configuration.h"
#include "src/safepoint-table.h"

View File

@ -35,7 +35,7 @@
#include "src/assembler.h"
#include "src/assembler-inl.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/diagnostics/disassembler.h"
#include "src/heap/heap-inl.h" // For MemoryAllocator. TODO(jkummerow): Drop.
#include "src/isolate.h"

View File

@ -39,7 +39,7 @@
#include "src/code-comments.h"
#include "src/cpu-features.h"
#include "src/deoptimize-reason.h"
#include "src/deoptimizer/deoptimize-reason.h"
#include "src/external-reference.h"
#include "src/flags.h"
#include "src/globals.h"

View File

@ -7,7 +7,7 @@
#include "src/api/api-arguments.h"
#include "src/code-factory.h"
#include "src/debug/debug.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/frame-constants.h"
#include "src/frames.h"
#include "src/logging/counters.h"

View File

@ -7,7 +7,7 @@
#include "src/api/api-arguments.h"
#include "src/code-factory.h"
#include "src/debug/debug.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/frame-constants.h"
#include "src/frames.h"
#include "src/logging/counters.h"

View File

@ -8,7 +8,7 @@
#include "src/base/adapters.h"
#include "src/code-factory.h"
#include "src/debug/debug.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/frame-constants.h"
#include "src/frames.h"
#include "src/logging/counters.h"

View File

@ -7,7 +7,7 @@
#include "src/api/api-arguments.h"
#include "src/code-factory.h"
#include "src/debug/debug.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/frame-constants.h"
#include "src/frames.h"
#include "src/logging/counters.h"

View File

@ -7,7 +7,7 @@
#include "src/api/api-arguments.h"
#include "src/code-factory.h"
#include "src/debug/debug.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/frame-constants.h"
#include "src/frames.h"
#include "src/logging/counters.h"

View File

@ -7,7 +7,7 @@
#include "src/api/api-arguments.h"
#include "src/code-factory.h"
#include "src/debug/debug.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/frame-constants.h"
#include "src/frames.h"
#include "src/logging/counters.h"

View File

@ -7,7 +7,7 @@
#include "src/api/api-arguments.h"
#include "src/code-factory.h"
#include "src/debug/debug.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/frame-constants.h"
#include "src/frames.h"
#include "src/logging/counters.h"

View File

@ -7,7 +7,7 @@
#include "src/api/api-arguments.h"
#include "src/base/adapters.h"
#include "src/code-factory.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/frame-constants.h"
#include "src/frames.h"
#include "src/logging/counters.h"

View File

@ -10,7 +10,7 @@
#include "src/compiler/backend/instruction.h"
#include "src/compiler/backend/unwinding-info-writer.h"
#include "src/compiler/osr.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/macro-assembler.h"
#include "src/safepoint-table.h"
#include "src/source-position-table.h"

View File

@ -14,7 +14,7 @@
#include "src/compiler/pipeline.h"
#include "src/compiler/schedule.h"
#include "src/compiler/state-values-utils.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
namespace v8 {
namespace internal {

View File

@ -7,7 +7,7 @@
#include "src/base/compiler-specific.h"
#include "src/compiler/frame-states.h"
#include "src/deoptimize-reason.h"
#include "src/deoptimizer/deoptimize-reason.h"
#include "src/globals.h"
#include "src/machine-type.h"
#include "src/reloc-info.h"

View File

@ -9,7 +9,7 @@
#include "src/compiler/frame-states.h"
#include "src/compiler/graph-reducer.h"
#include "src/compiler/node-properties.h"
#include "src/deoptimize-reason.h"
#include "src/deoptimizer/deoptimize-reason.h"
namespace v8 {
namespace internal {

View File

@ -7,7 +7,7 @@
#include "src/base/flags.h"
#include "src/compiler/graph-reducer.h"
#include "src/deoptimize-reason.h"
#include "src/deoptimizer/deoptimize-reason.h"
#include "src/objects/map.h"
namespace v8 {

View File

@ -7,7 +7,7 @@
#include "src/base/flags.h"
#include "src/compiler/graph-reducer.h"
#include "src/deoptimize-reason.h"
#include "src/deoptimizer/deoptimize-reason.h"
#include "src/handles.h"
namespace v8 {

View File

@ -11,7 +11,7 @@
#include "src/compiler/operator.h"
#include "src/compiler/types.h"
#include "src/compiler/write-barrier-kind.h"
#include "src/deoptimize-reason.h"
#include "src/deoptimizer/deoptimize-reason.h"
#include "src/globals.h"
#include "src/handles.h"
#include "src/machine-type.h"

View File

@ -8,7 +8,7 @@
#include "src/ast/ast.h"
#include "src/base/hashmap.h"
#include "src/debug/debug.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/frames-inl.h"
#include "src/isolate.h"
#include "src/objects.h"

View File

@ -5,7 +5,7 @@
#ifndef V8_DEBUG_DEBUG_FRAMES_H_
#define V8_DEBUG_DEBUG_FRAMES_H_
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/frames.h"
#include "src/isolate.h"
#include "src/objects.h"

View File

@ -17,7 +17,7 @@
#include "src/compiler.h"
#include "src/debug/debug-evaluate.h"
#include "src/debug/liveedit.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/execution.h"
#include "src/frames-inl.h"
#include "src/global-handles.h"

5
src/deoptimizer/OWNERS Normal file
View File

@ -0,0 +1,5 @@
bmeurer@chromium.org
jarin@chromium.org
mstarzinger@chromium.org
sigurds@chromium.org
tebbi@chromium.org

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "src/deoptimize-reason.h"
#include "src/deoptimizer/deoptimize-reason.h"
namespace v8 {
namespace internal {

View File

@ -2,8 +2,8 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef V8_DEOPTIMIZE_REASON_H_
#define V8_DEOPTIMIZE_REASON_H_
#ifndef V8_DEOPTIMIZER_DEOPTIMIZE_REASON_H_
#define V8_DEOPTIMIZER_DEOPTIMIZE_REASON_H_
#include "src/globals.h"
@ -74,4 +74,4 @@ V8_EXPORT_PRIVATE char const* DeoptimizeReasonToString(DeoptimizeReason reason);
} // namespace internal
} // namespace v8
#endif // V8_DEOPTIMIZE_REASON_H_
#endif // V8_DEOPTIMIZER_DEOPTIMIZE_REASON_H_

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include <memory>
@ -142,7 +142,6 @@ DeoptimizerData::DeoptimizerData(Heap* heap) : heap_(heap), current_(nullptr) {
heap_->RegisterStrongRoots(FullObjectSlot(start), FullObjectSlot(end));
}
DeoptimizerData::~DeoptimizerData() {
Code* start = &deopt_entry_code_[0];
heap_->UnregisterStrongRoots(FullObjectSlot(start));
@ -172,7 +171,6 @@ Code Deoptimizer::FindDeoptimizingCode(Address addr) {
return Code();
}
// We rely on this function not causing a GC. It is called from generated code
// without having a real stack frame in place.
Deoptimizer* Deoptimizer::New(Address raw_function, DeoptimizeKind kind,
@ -195,9 +193,7 @@ Deoptimizer* Deoptimizer::Grab(Isolate* isolate) {
}
DeoptimizedFrameInfo* Deoptimizer::DebuggerInspectableFrame(
JavaScriptFrame* frame,
int jsframe_index,
Isolate* isolate) {
JavaScriptFrame* frame, int jsframe_index, Isolate* isolate) {
CHECK(frame->is_optimized());
TranslatedState translated_values(frame);
@ -284,8 +280,8 @@ void Deoptimizer::DeoptimizeMarkedCodeForContext(Context context) {
// Make sure all activations of optimized code can deopt at their current PC.
// The topmost optimized code has special handling because it cannot be
// deoptimized due to weak object dependency.
for (StackFrameIterator it(isolate, isolate->thread_local_top());
!it.done(); it.Advance()) {
for (StackFrameIterator it(isolate, isolate->thread_local_top()); !it.done();
it.Advance()) {
StackFrame::Type type = it.frame()->type();
if (type == StackFrame::OPTIMIZED) {
Code code = it.frame()->LookupCode();
@ -363,7 +359,6 @@ void Deoptimizer::DeoptimizeMarkedCodeForContext(Context context) {
}
}
void Deoptimizer::DeoptimizeAll(Isolate* isolate) {
RuntimeCallTimerScope runtimeTimer(isolate,
RuntimeCallCounterId::kDeoptimizeCode);
@ -385,7 +380,6 @@ void Deoptimizer::DeoptimizeAll(Isolate* isolate) {
}
}
void Deoptimizer::DeoptimizeMarkedCode(Isolate* isolate) {
RuntimeCallTimerScope runtimeTimer(isolate,
RuntimeCallCounterId::kDeoptimizeCode);
@ -530,13 +524,12 @@ Code Deoptimizer::FindOptimizedCode() {
: isolate_->FindCodeObject(from_);
}
void Deoptimizer::PrintFunctionName() {
if (function_->IsHeapObject() && function_->IsJSFunction()) {
function_->ShortPrint(trace_scope_->file());
} else {
PrintF(trace_scope_->file(),
"%s", Code::Kind2String(compiled_code_->kind()));
PrintF(trace_scope_->file(), "%s",
Code::Kind2String(compiled_code_->kind()));
}
}
@ -553,7 +546,6 @@ Deoptimizer::~Deoptimizer() {
delete trace_scope_;
}
void Deoptimizer::DeleteFrameDescriptions() {
delete input_;
for (int i = 0; i < output_count_; ++i) {
@ -1965,7 +1957,6 @@ void Translation::BeginConstructStubFrame(BailoutId bailout_id, int literal_id,
buffer_->Add(height);
}
void Translation::BeginArgumentsAdaptorFrame(int literal_id, unsigned height) {
buffer_->Add(ARGUMENTS_ADAPTOR_FRAME);
buffer_->Add(literal_id);
@ -1999,19 +1990,16 @@ void Translation::BeginCapturedObject(int length) {
buffer_->Add(length);
}
void Translation::DuplicateObject(int object_index) {
buffer_->Add(DUPLICATED_OBJECT);
buffer_->Add(object_index);
}
void Translation::StoreRegister(Register reg) {
buffer_->Add(REGISTER);
buffer_->Add(reg.code());
}
void Translation::StoreInt32Register(Register reg) {
buffer_->Add(INT32_REGISTER);
buffer_->Add(reg.code());
@ -2027,7 +2015,6 @@ void Translation::StoreUint32Register(Register reg) {
buffer_->Add(reg.code());
}
void Translation::StoreBoolRegister(Register reg) {
buffer_->Add(BOOL_REGISTER);
buffer_->Add(reg.code());
@ -2043,13 +2030,11 @@ void Translation::StoreDoubleRegister(DoubleRegister reg) {
buffer_->Add(reg.code());
}
void Translation::StoreStackSlot(int index) {
buffer_->Add(STACK_SLOT);
buffer_->Add(index);
}
void Translation::StoreInt32StackSlot(int index) {
buffer_->Add(INT32_STACK_SLOT);
buffer_->Add(index);
@ -2065,7 +2050,6 @@ void Translation::StoreUint32StackSlot(int index) {
buffer_->Add(index);
}
void Translation::StoreBoolStackSlot(int index) {
buffer_->Add(BOOL_STACK_SLOT);
buffer_->Add(index);
@ -2081,7 +2065,6 @@ void Translation::StoreDoubleStackSlot(int index) {
buffer_->Add(index);
}
void Translation::StoreLiteral(int literal_id) {
buffer_->Add(LITERAL);
buffer_->Add(literal_id);
@ -2137,21 +2120,19 @@ int Translation::NumberOfOperandsFor(Opcode opcode) {
return -1;
}
#if defined(OBJECT_PRINT) || defined(ENABLE_DISASSEMBLER)
const char* Translation::StringFor(Opcode opcode) {
#define TRANSLATION_OPCODE_CASE(item) case item: return #item;
switch (opcode) {
TRANSLATION_OPCODE_LIST(TRANSLATION_OPCODE_CASE)
}
#define TRANSLATION_OPCODE_CASE(item) \
case item: \
return #item;
switch (opcode) { TRANSLATION_OPCODE_LIST(TRANSLATION_OPCODE_CASE) }
#undef TRANSLATION_OPCODE_CASE
UNREACHABLE();
}
#endif
Handle<FixedArray> MaterializedObjectStore::Get(Address fp) {
int index = StackIdToIndex(fp);
if (index == -1) {
@ -2162,7 +2143,6 @@ Handle<FixedArray> MaterializedObjectStore::Get(Address fp) {
return Handle<FixedArray>::cast(Handle<Object>(array->get(index), isolate()));
}
void MaterializedObjectStore::Set(Address fp,
Handle<FixedArray> materialized_objects) {
int index = StackIdToIndex(fp);
@ -2175,7 +2155,6 @@ void MaterializedObjectStore::Set(Address fp,
array->set(index, *materialized_objects);
}
bool MaterializedObjectStore::Remove(Address fp) {
auto it = std::find(frame_fps_.begin(), frame_fps_.end(), fp);
if (it == frame_fps_.end()) return false;
@ -2193,7 +2172,6 @@ bool MaterializedObjectStore::Remove(Address fp) {
return true;
}
int MaterializedObjectStore::StackIdToIndex(Address fp) {
auto it = std::find(frame_fps_.begin(), frame_fps_.end(), fp);
return it == frame_fps_.end()
@ -2201,13 +2179,11 @@ int MaterializedObjectStore::StackIdToIndex(Address fp) {
: static_cast<int>(std::distance(frame_fps_.begin(), it));
}
Handle<FixedArray> MaterializedObjectStore::GetStackEntries() {
return Handle<FixedArray>(isolate()->heap()->materialized_objects(),
isolate());
}
Handle<FixedArray> MaterializedObjectStore::EnsureStackEntries(int length) {
Handle<FixedArray> array = GetStackEntries();
if (array->length() >= length) {
@ -2326,7 +2302,6 @@ Deoptimizer::DeoptInfo Deoptimizer::GetDeoptInfo(Code code, Address pc) {
return DeoptInfo(last_position, last_reason, last_deopt_id);
}
// static
int Deoptimizer::ComputeSourcePositionFromBytecodeArray(
SharedFunctionInfo shared, BailoutId node_id) {
@ -2344,7 +2319,6 @@ TranslatedValue TranslatedValue::NewDeferredObject(TranslatedState* container,
return slot;
}
// static
TranslatedValue TranslatedValue::NewDuplicateObject(TranslatedState* container,
int id) {
@ -2353,7 +2327,6 @@ TranslatedValue TranslatedValue::NewDuplicateObject(TranslatedState* container,
return slot;
}
// static
TranslatedValue TranslatedValue::NewFloat(TranslatedState* container,
Float32 value) {
@ -2370,7 +2343,6 @@ TranslatedValue TranslatedValue::NewDouble(TranslatedState* container,
return slot;
}
// static
TranslatedValue TranslatedValue::NewInt32(TranslatedState* container,
int32_t value) {
@ -2395,7 +2367,6 @@ TranslatedValue TranslatedValue::NewUInt32(TranslatedState* container,
return slot;
}
// static
TranslatedValue TranslatedValue::NewBool(TranslatedState* container,
uint32_t value) {
@ -2404,7 +2375,6 @@ TranslatedValue TranslatedValue::NewBool(TranslatedState* container,
return slot;
}
// static
TranslatedValue TranslatedValue::NewTagged(TranslatedState* container,
Object literal) {
@ -2418,7 +2388,6 @@ TranslatedValue TranslatedValue::NewInvalid(TranslatedState* container) {
return TranslatedValue(container, kInvalid);
}
Isolate* TranslatedValue::isolate() const { return container_->isolate(); }
Object TranslatedValue::raw_literal() const {
@ -2451,13 +2420,11 @@ Float64 TranslatedValue::double_value() const {
return double_value_;
}
int TranslatedValue::object_length() const {
DCHECK_EQ(kind(), kCapturedObject);
return materialization_info_.length_;
}
int TranslatedValue::object_index() const {
DCHECK(kind() == kCapturedObject || kind() == kDuplicatedObject);
return materialization_info_.id_;
@ -2619,7 +2586,6 @@ void TranslatedValue::MaterializeSimple() {
}
}
bool TranslatedValue::IsMaterializedObject() const {
switch (kind()) {
case kCapturedObject:
@ -2744,7 +2710,6 @@ int TranslatedFrame::GetValueCount() {
UNREACHABLE();
}
void TranslatedFrame::Handlify() {
if (!raw_shared_info_.is_null()) {
shared_info_ = Handle<SharedFunctionInfo>(raw_shared_info_,
@ -3370,8 +3335,8 @@ void TranslatedState::Init(Isolate* isolate, Address input_frame_pointer,
if (trace_file != nullptr) {
if (nested_counts.empty()) {
// For top level values, print the value number.
PrintF(trace_file, " %3i: ",
frame.GetValueCount() - values_to_process);
PrintF(trace_file,
" %3i: ", frame.GetValueCount() - values_to_process);
} else {
// Take care of indenting for nested values.
PrintF(trace_file, " ");
@ -3403,9 +3368,8 @@ void TranslatedState::Init(Isolate* isolate, Address input_frame_pointer,
}
}
CHECK(!iterator->HasNext() ||
static_cast<Translation::Opcode>(iterator->Next()) ==
Translation::BEGIN);
CHECK(!iterator->HasNext() || static_cast<Translation::Opcode>(
iterator->Next()) == Translation::BEGIN);
}
void TranslatedState::Prepare(Address stack_frame_pointer) {

View File

@ -2,8 +2,8 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef V8_DEOPTIMIZER_H_
#define V8_DEOPTIMIZER_H_
#ifndef V8_DEOPTIMIZER_DEOPTIMIZER_H_
#define V8_DEOPTIMIZER_DEOPTIMIZER_H_
#include <stack>
#include <vector>
@ -12,7 +12,7 @@
#include "src/base/macros.h"
#include "src/boxed-float.h"
#include "src/code-tracer.h"
#include "src/deoptimize-reason.h"
#include "src/deoptimizer/deoptimize-reason.h"
#include "src/feedback-vector.h"
#include "src/frame-constants.h"
#include "src/frames.h"
@ -154,7 +154,6 @@ class TranslatedValue {
int object_index() const;
};
class TranslatedFrame {
public:
enum Kind {
@ -284,7 +283,6 @@ class TranslatedFrame {
ValuesContainer values_;
};
// Auxiliary class for translating deoptimization values.
// Typical usage sequence:
//
@ -506,7 +504,6 @@ class Deoptimizer : public Malloced {
void QueueValueForMaterialization(Address output_address, Object obj,
const TranslatedFrame::iterator& iterator);
Deoptimizer(Isolate* isolate, JSFunction function, DeoptimizeKind kind,
unsigned bailout_id, Address from, int fp_to_sp_delta);
Code FindOptimizedCode();
@ -616,7 +613,6 @@ class Deoptimizer : public Malloced {
friend class DeoptimizedFrameInfo;
};
class RegisterValues {
public:
intptr_t GetRegister(unsigned n) const {
@ -667,7 +663,6 @@ class RegisterValues {
Float64 double_registers_[DoubleRegister::kNumRegisters];
};
class FrameDescription {
public:
explicit FrameDescription(uint32_t frame_size, int parameter_count = 0);
@ -678,13 +673,9 @@ class FrameDescription {
return malloc(size + frame_size - kSystemPointerSize);
}
void operator delete(void* pointer, uint32_t frame_size) {
free(pointer);
}
void operator delete(void* pointer, uint32_t frame_size) { free(pointer); }
void operator delete(void* description) {
free(description);
}
void operator delete(void* description) { free(description); }
uint32_t GetFrameSize() const {
USE(frame_content_);
@ -809,12 +800,11 @@ class FrameDescription {
intptr_t* GetFrameSlotPointer(unsigned offset) {
DCHECK(offset < frame_size_);
return reinterpret_cast<intptr_t*>(
reinterpret_cast<Address>(this) + frame_content_offset() + offset);
return reinterpret_cast<intptr_t*>(reinterpret_cast<Address>(this) +
frame_content_offset() + offset);
}
};
class DeoptimizerData {
public:
explicit DeoptimizerData(Heap* heap);
@ -907,8 +897,7 @@ class Translation {
public:
#define DECLARE_TRANSLATION_OPCODE_ENUM(item) item,
enum Opcode {
TRANSLATION_OPCODE_LIST(DECLARE_TRANSLATION_OPCODE_ENUM)
LAST = LITERAL
TRANSLATION_OPCODE_LIST(DECLARE_TRANSLATION_OPCODE_ENUM) LAST = LITERAL
};
#undef DECLARE_TRANSLATION_OPCODE_ENUM
@ -973,11 +962,9 @@ class Translation {
Zone* zone_;
};
class MaterializedObjectStore {
public:
explicit MaterializedObjectStore(Isolate* isolate) : isolate_(isolate) {
}
explicit MaterializedObjectStore(Isolate* isolate) : isolate_(isolate) {}
Handle<FixedArray> Get(Address fp);
void Set(Address fp, Handle<FixedArray> materialized_objects);
@ -994,7 +981,6 @@ class MaterializedObjectStore {
std::vector<Address> frame_fps_;
};
// Class used to represent an unoptimized frame when the debugger
// needs to inspect a frame that is part of an optimized frame. The
// internally used FrameDescription objects are not GC safe so for use
@ -1030,9 +1016,7 @@ class DeoptimizedFrameInfo : public Malloced {
return expression_stack_[index];
}
int GetSourcePosition() {
return source_position_;
}
int GetSourcePosition() { return source_position_; }
private:
// Set an incoming argument.
@ -1059,4 +1043,4 @@ class DeoptimizedFrameInfo : public Malloced {
} // namespace internal
} // namespace v8
#endif // V8_DEOPTIMIZER_H_
#endif // V8_DEOPTIMIZER_DEOPTIMIZER_H_

View File

@ -12,7 +12,7 @@
#include "src/code-comments.h"
#include "src/code-reference.h"
#include "src/debug/debug.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/diagnostics/disasm.h"
#include "src/ic/ic.h"
#include "src/isolate-data.h"

View File

@ -10,7 +10,7 @@
#include "src/cpu-features.h"
#include "src/date/date.h"
#include "src/debug/debug.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/hash-seed-inl.h"
#include "src/heap/heap.h"
#include "src/logging/counters.h"

View File

@ -8,7 +8,7 @@
#include <sstream>
#include "src/base/bits.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/frames-inl.h"
#include "src/ic/ic-stats.h"
#include "src/macro-assembler.h"

View File

@ -17,7 +17,7 @@
#include "src/base/utils/random-number-generator.h"
#include "src/compilation-cache.h"
#include "src/debug/debug.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/feedback-vector.h"
#include "src/global-handles.h"
#include "src/heap/array-buffer-collector.h"

View File

@ -9,7 +9,7 @@
#include "src/base/utils/random-number-generator.h"
#include "src/cancelable-task.h"
#include "src/compilation-cache.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/execution.h"
#include "src/frames-inl.h"
#include "src/global-handles.h"

View File

@ -50,7 +50,7 @@
#include "src/assembler-inl.h"
#include "src/base/bits.h"
#include "src/base/cpu.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/diagnostics/disassembler.h"
#include "src/macro-assembler.h"
#include "src/numbers/conversions-inl.h"

View File

@ -4,7 +4,7 @@
#if V8_TARGET_ARCH_IA32
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/frame-constants.h"
#include "src/macro-assembler.h"
#include "src/register-configuration.h"

View File

@ -31,7 +31,7 @@
#include "src/date/date.h"
#include "src/debug/debug-frames.h"
#include "src/debug/debug.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/frames-inl.h"
#include "src/hash-seed-inl.h"
#include "src/heap/heap-inl.h"

View File

@ -11,7 +11,7 @@
#include "src/api/api-inl.h"
#include "src/bailout-reason.h"
#include "src/base/platform/platform.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/diagnostics/perf-jit.h"
#include "src/global-handles.h"
#include "src/init/bootstrapper.h"

View File

@ -38,7 +38,7 @@
#include "src/base/bits.h"
#include "src/base/cpu.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/mips/assembler-mips-inl.h"
#include "src/objects/heap-number-inl.h"
#include "src/string-constants.h"

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/macro-assembler.h"
#include "src/register-configuration.h"
#include "src/safepoint-table.h"

View File

@ -37,7 +37,7 @@
#if V8_TARGET_ARCH_MIPS64
#include "src/base/cpu.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/mips64/assembler-mips64-inl.h"
#include "src/objects/heap-number-inl.h"
#include "src/string-constants.h"

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/macro-assembler.h"
#include "src/register-configuration.h"
#include "src/safepoint-table.h"

View File

@ -8,7 +8,7 @@
#include "src/assembler-inl.h"
#include "src/cpu-features.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/interpreter/bytecode-array-iterator.h"
#include "src/interpreter/bytecode-decoder.h"
#include "src/interpreter/interpreter.h"

View File

@ -4,7 +4,7 @@
#include "src/objects/lookup.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/init/bootstrapper.h"
#include "src/isolate-inl.h"
#include "src/logging/counters.h"

View File

@ -40,7 +40,7 @@
#include "src/base/bits.h"
#include "src/base/cpu.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/macro-assembler.h"
#include "src/ppc/assembler-ppc-inl.h"
#include "src/string-constants.h"

View File

@ -3,7 +3,7 @@
// found in the LICENSE file.
#include "src/assembler-inl.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/macro-assembler.h"
#include "src/register-configuration.h"
#include "src/safepoint-table.h"

View File

@ -4,7 +4,7 @@
#include "src/profiler/profiler-listener.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/handles-inl.h"
#include "src/objects-inl.h"
#include "src/objects/code-inl.h"

View File

@ -6,8 +6,8 @@
#include "src/assembler-inl.h"
#include "src/code-reference.h"
#include "src/deoptimize-reason.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimize-reason.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/heap/heap-write-barrier-inl.h"
#include "src/objects/code-inl.h"
#include "src/snapshot/snapshot.h"

View File

@ -6,7 +6,7 @@
#include "src/asmjs/asm-js.h"
#include "src/compiler-dispatcher/optimizing-compile-dispatcher.h"
#include "src/compiler.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/frames-inl.h"
#include "src/isolate-inl.h"
#include "src/message-template.h"

View File

@ -7,7 +7,7 @@
#include "src/accessors.h"
#include "src/arguments-inl.h"
#include "src/ast/scopes.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/frames-inl.h"
#include "src/heap/heap-inl.h" // For ToBoolean. TODO(jkummerow): Drop.
#include "src/init/bootstrapper.h"

View File

@ -13,7 +13,7 @@
#include "src/base/platform/mutex.h"
#include "src/compiler-dispatcher/optimizing-compile-dispatcher.h"
#include "src/compiler.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/frames-inl.h"
#include "src/heap/heap-inl.h" // For ToBoolean. TODO(jkummerow): Drop.
#include "src/heap/heap-write-barrier-inl.h"

View File

@ -47,7 +47,7 @@
#include "src/base/bits.h"
#include "src/base/cpu.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/macro-assembler.h"
#include "src/s390/assembler-s390-inl.h"
#include "src/string-constants.h"

View File

@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/macro-assembler.h"
#include "src/register-configuration.h"
#include "src/safepoint-table.h"

View File

@ -5,7 +5,7 @@
#include "src/safepoint-table.h"
#include "src/assembler-inl.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/diagnostics/disasm.h"
#include "src/frames-inl.h"
#include "src/macro-assembler.h"

View File

@ -7,7 +7,7 @@
#include "src/api/api.h"
#include "src/code-tracer.h"
#include "src/contexts.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/global-handles.h"
#include "src/heap/heap-inl.h"
#include "src/heap/read-only-heap.h"

View File

@ -12,7 +12,7 @@
#include "src/base/platform/platform.h"
#include "src/cpu-features.h"
#include "src/debug/debug.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/frames.h"
#include "src/init/bootstrapper.h"
#include "src/interface-descriptors.h"

View File

@ -18,7 +18,7 @@
#include "src/assembler-inl.h"
#include "src/base/bits.h"
#include "src/base/cpu.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/macro-assembler.h"
#include "src/string-constants.h"
#include "src/v8.h"

View File

@ -4,7 +4,7 @@
#if V8_TARGET_ARCH_X64
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/macro-assembler.h"
#include "src/objects-inl.h"
#include "src/register-configuration.h"

View File

@ -32,7 +32,7 @@
#include "src/assembler-inl.h"
#include "src/compilation-cache.h"
#include "src/debug/debug.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/execution.h"
#include "src/global-handles.h"
#include "src/hash-seed-inl.h"

View File

@ -35,7 +35,7 @@
#include "include/v8-profiler.h"
#include "src/api/api-inl.h"
#include "src/base/platform/platform.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/libplatform/default-platform.h"
#include "src/logging/log.h"
#include "src/objects-inl.h"

View File

@ -33,7 +33,7 @@
#include "src/compilation-cache.h"
#include "src/debug/debug-interface.h"
#include "src/debug/debug.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/frames.h"
#include "src/objects-inl.h"
#include "src/snapshot/natives.h"

View File

@ -33,7 +33,7 @@
#include "src/base/platform/platform.h"
#include "src/compilation-cache.h"
#include "src/debug/debug.h"
#include "src/deoptimizer.h"
#include "src/deoptimizer/deoptimizer.h"
#include "src/isolate.h"
#include "src/objects-inl.h"
#include "test/cctest/cctest.h"