aboutsummaryrefslogtreecommitdiff
path: root/deps/v8/src/frames.h
diff options
context:
space:
mode:
authorMichaƫl Zasso <targos@protonmail.com>2018-01-24 20:16:06 +0100
committerMyles Borins <mylesborins@google.com>2018-01-24 15:02:20 -0800
commit4c4af643e5042d615a60c6bbc05aee9d81b903e5 (patch)
tree3fb0a97988fe4439ae3ae06f26915d1dcf8cab92 /deps/v8/src/frames.h
parentfa9f31a4fda5a3782c652e56e394465805ebb50f (diff)
downloadandroid-node-v8-4c4af643e5042d615a60c6bbc05aee9d81b903e5.tar.gz
android-node-v8-4c4af643e5042d615a60c6bbc05aee9d81b903e5.tar.bz2
android-node-v8-4c4af643e5042d615a60c6bbc05aee9d81b903e5.zip
deps: update V8 to 6.4.388.40
PR-URL: https://github.com/nodejs/node/pull/17489 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Myles Borins <myles.borins@gmail.com> Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com>
Diffstat (limited to 'deps/v8/src/frames.h')
-rw-r--r--deps/v8/src/frames.h40
1 files changed, 26 insertions, 14 deletions
diff --git a/deps/v8/src/frames.h b/deps/v8/src/frames.h
index ebb7f0c3fd..a72832af06 100644
--- a/deps/v8/src/frames.h
+++ b/deps/v8/src/frames.h
@@ -9,10 +9,14 @@
#include "src/flags.h"
#include "src/handles.h"
#include "src/objects.h"
+#include "src/objects/code.h"
#include "src/safepoint-table.h"
namespace v8 {
namespace internal {
+namespace wasm {
+class WasmCode;
+}
class AbstractCode;
class Debug;
@@ -39,9 +43,6 @@ class InnerPointerToCodeCache {
Flush();
}
- Code* GcSafeFindCodeForInnerPointer(Address inner_pointer);
- Code* GcSafeCastToCode(HeapObject* object, Address inner_pointer);
-
void Flush() {
memset(&cache_[0], 0, sizeof(cache_));
}
@@ -91,6 +92,7 @@ class StackHandler BASE_EMBEDDED {
V(OPTIMIZED, OptimizedFrame) \
V(WASM_COMPILED, WasmCompiledFrame) \
V(WASM_TO_JS, WasmToJsFrame) \
+ V(WASM_TO_WASM, WasmToWasmFrame) \
V(JS_TO_WASM, JsToWasmFrame) \
V(WASM_INTERPRETER_ENTRY, WasmInterpreterEntryFrame) \
V(C_WASM_ENTRY, CWasmEntryFrame) \
@@ -186,7 +188,7 @@ class StackFrame BASE_EMBEDDED {
// (as an iterator usually lives on stack).
StackFrame(const StackFrame& original) {
this->state_ = original.state_;
- this->iterator_ = NULL;
+ this->iterator_ = nullptr;
this->isolate_ = original.isolate_;
}
@@ -527,15 +529,17 @@ class FrameSummary BASE_EMBEDDED {
class WasmCompiledFrameSummary : public WasmFrameSummary {
public:
- WasmCompiledFrameSummary(Isolate*, Handle<WasmInstanceObject>, Handle<Code>,
- int code_offset, bool at_to_number_conversion);
+ WasmCompiledFrameSummary(Isolate*, Handle<WasmInstanceObject>,
+ WasmCodeWrapper, int code_offset,
+ bool at_to_number_conversion);
uint32_t function_index() const;
- Handle<Code> code() const { return code_; }
+ WasmCodeWrapper code() const { return code_; }
int code_offset() const { return code_offset_; }
int byte_offset() const;
+ static int GetWasmSourcePosition(const wasm::WasmCode* code, int offset);
private:
- Handle<Code> code_;
+ WasmCodeWrapper const code_;
int code_offset_;
};
@@ -705,7 +709,6 @@ class JavaScriptFrame : public StandardFrame {
// actual passed arguments are available in an arguments adaptor
// frame below it on the stack.
inline bool has_adapted_arguments() const;
- int GetArgumentsLength() const;
// Garbage collection support.
void Iterate(RootVisitor* v) const override;
@@ -816,7 +819,7 @@ class OptimizedFrame : public JavaScriptFrame {
int LookupExceptionHandlerInTable(
int* data, HandlerTable::CatchPrediction* prediction) override;
- DeoptimizationInputData* GetDeoptimizationData(int* deopt_index) const;
+ DeoptimizationData* GetDeoptimizationData(int* deopt_index) const;
Object* receiver() const override;
@@ -895,8 +898,6 @@ class ArgumentsAdaptorFrame: public JavaScriptFrame {
void Print(StringStream* accumulator, PrintMode mode,
int index) const override;
- static int GetLength(Address fp);
-
protected:
inline explicit ArgumentsAdaptorFrame(StackFrameIteratorBase* iterator);
@@ -1026,6 +1027,17 @@ class JsToWasmFrame : public StubFrame {
friend class StackFrameIteratorBase;
};
+class WasmToWasmFrame : public StubFrame {
+ public:
+ Type type() const override { return WASM_TO_WASM; }
+
+ protected:
+ inline explicit WasmToWasmFrame(StackFrameIteratorBase* iterator);
+
+ private:
+ friend class StackFrameIteratorBase;
+};
+
class CWasmEntryFrame : public StubFrame {
public:
Type type() const override { return C_WASM_ENTRY; }
@@ -1119,7 +1131,7 @@ class StackFrameIteratorBase BASE_EMBEDDED {
public:
Isolate* isolate() const { return isolate_; }
- bool done() const { return frame_ == NULL; }
+ bool done() const { return frame_ == nullptr; }
protected:
// An iterator that iterates over a given thread's stack.
@@ -1140,7 +1152,7 @@ class StackFrameIteratorBase BASE_EMBEDDED {
// Get the type-specific frame singleton in a given state.
StackFrame* SingletonFor(StackFrame::Type type, StackFrame::State* state);
- // A helper function, can return a NULL pointer.
+ // A helper function, can return a nullptr pointer.
StackFrame* SingletonFor(StackFrame::Type type);
private: