Index: src/isolate.h |
diff --git a/src/isolate.h b/src/isolate.h |
index 2d74dc4a63a9b89d4542eb1ec8a8ab24662ddd4d..94c6679aea072222c899baf35d5300e36a023db5 100644 |
--- a/src/isolate.h |
+++ b/src/isolate.h |
@@ -614,6 +614,19 @@ class Isolate { |
return &thread_local_top_.js_entry_sp_; |
} |
+ inline Address interpreter_entry_trampoline_start() { |
+ return interpreter_entry_trampoline_start_; |
Yang
2016/02/25 11:50:43
Do we really need this cache? This requires the co
rmcilroy
2016/02/25 11:55:11
This is not a cache, it is required for safty in t
rmcilroy
2016/02/25 15:06:54
Done.
|
+ } |
+ inline Address interpreter_entry_trampoline_end() { |
+ return interpreter_entry_trampoline_end_; |
+ } |
+ inline Address interpreter_bytecode_dispatch_start() { |
+ return interpreter_bytecode_dispatch_start_; |
+ } |
+ inline Address interpreter_bytecode_dispatch_end() { |
+ return interpreter_bytecode_dispatch_end_; |
+ } |
+ |
// Returns the global object of the current context. It could be |
// a builtin object, or a JS global object. |
inline Handle<JSGlobalObject> global_object(); |
@@ -1315,6 +1328,13 @@ class Isolate { |
Address virtual_handler_register_; |
Address virtual_slot_register_; |
+ // Addresses used in frames.cc to determine if a frame is an interpreter |
+ // frame without looking at heap objects. |
+ Address interpreter_entry_trampoline_start_; |
+ Address interpreter_entry_trampoline_end_; |
+ Address interpreter_bytecode_dispatch_start_; |
+ Address interpreter_bytecode_dispatch_end_; |
+ |
int next_optimization_id_; |
// Counts javascript calls from the API. Wraps around on overflow. |