OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef V8_DEOPTIMIZER_H_ | 5 #ifndef V8_DEOPTIMIZER_H_ |
6 #define V8_DEOPTIMIZER_H_ | 6 #define V8_DEOPTIMIZER_H_ |
7 | 7 |
8 #include "src/v8.h" | 8 #include "src/v8.h" |
9 | 9 |
10 #include "src/allocation.h" | 10 #include "src/allocation.h" |
(...skipping 948 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
959 Handle<Object> GetDeferredObject(Isolate* isolate); | 959 Handle<Object> GetDeferredObject(Isolate* isolate); |
960 }; | 960 }; |
961 | 961 |
962 class MaterializedObjectStore { | 962 class MaterializedObjectStore { |
963 public: | 963 public: |
964 explicit MaterializedObjectStore(Isolate* isolate) : isolate_(isolate) { | 964 explicit MaterializedObjectStore(Isolate* isolate) : isolate_(isolate) { |
965 } | 965 } |
966 | 966 |
967 Handle<FixedArray> Get(Address fp); | 967 Handle<FixedArray> Get(Address fp); |
968 void Set(Address fp, Handle<FixedArray> materialized_objects); | 968 void Set(Address fp, Handle<FixedArray> materialized_objects); |
969 void Remove(Address fp); | 969 bool Remove(Address fp); |
970 | 970 |
971 private: | 971 private: |
972 Isolate* isolate() { return isolate_; } | 972 Isolate* isolate() { return isolate_; } |
973 Handle<FixedArray> GetStackEntries(); | 973 Handle<FixedArray> GetStackEntries(); |
974 Handle<FixedArray> EnsureStackEntries(int size); | 974 Handle<FixedArray> EnsureStackEntries(int size); |
975 | 975 |
976 int StackIdToIndex(Address fp); | 976 int StackIdToIndex(Address fp); |
977 | 977 |
978 Isolate* isolate_; | 978 Isolate* isolate_; |
979 List<Address> frame_fps_; | 979 List<Address> frame_fps_; |
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1054 Object** parameters_; | 1054 Object** parameters_; |
1055 Object** expression_stack_; | 1055 Object** expression_stack_; |
1056 int source_position_; | 1056 int source_position_; |
1057 | 1057 |
1058 friend class Deoptimizer; | 1058 friend class Deoptimizer; |
1059 }; | 1059 }; |
1060 | 1060 |
1061 } } // namespace v8::internal | 1061 } } // namespace v8::internal |
1062 | 1062 |
1063 #endif // V8_DEOPTIMIZER_H_ | 1063 #endif // V8_DEOPTIMIZER_H_ |
OLD | NEW |