| 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 142 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 153 V(kUninitializedBoilerplateInFastClone, \ | 153 V(kUninitializedBoilerplateInFastClone, \ |
| 154 "Uninitialized boilerplate in fast clone") \ | 154 "Uninitialized boilerplate in fast clone") \ |
| 155 V(kUninitializedBoilerplateLiterals, "Uninitialized boilerplate literals") \ | 155 V(kUninitializedBoilerplateLiterals, "Uninitialized boilerplate literals") \ |
| 156 V(kUnknownMapInPolymorphicAccess, "Unknown map in polymorphic access") \ | 156 V(kUnknownMapInPolymorphicAccess, "Unknown map in polymorphic access") \ |
| 157 V(kUnknownMapInPolymorphicCall, "Unknown map in polymorphic call") \ | 157 V(kUnknownMapInPolymorphicCall, "Unknown map in polymorphic call") \ |
| 158 V(kUnknownMapInPolymorphicElementAccess, \ | 158 V(kUnknownMapInPolymorphicElementAccess, \ |
| 159 "Unknown map in polymorphic element access") \ | 159 "Unknown map in polymorphic element access") \ |
| 160 V(kUnknownMap, "Unknown map") \ | 160 V(kUnknownMap, "Unknown map") \ |
| 161 V(kValueMismatch, "value mismatch") \ | 161 V(kValueMismatch, "value mismatch") \ |
| 162 V(kWrongInstanceType, "wrong instance type") \ | 162 V(kWrongInstanceType, "wrong instance type") \ |
| 163 V(kWrongMap, "wrong map") | 163 V(kWrongMap, "wrong map") \ |
| 164 V(kUndefinedOrNullInForIn, "null or undefined in for-in") |
| 164 | 165 |
| 165 | 166 |
| 166 class Deoptimizer : public Malloced { | 167 class Deoptimizer : public Malloced { |
| 167 public: | 168 public: |
| 168 enum BailoutType { | 169 enum BailoutType { |
| 169 EAGER, | 170 EAGER, |
| 170 LAZY, | 171 LAZY, |
| 171 SOFT, | 172 SOFT, |
| 172 // This last bailout type is not really a bailout, but used by the | 173 // This last bailout type is not really a bailout, but used by the |
| 173 // debugger to deoptimize stack frames to allow inspection. | 174 // debugger to deoptimize stack frames to allow inspection. |
| (...skipping 874 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1048 Object** parameters_; | 1049 Object** parameters_; |
| 1049 Object** expression_stack_; | 1050 Object** expression_stack_; |
| 1050 int source_position_; | 1051 int source_position_; |
| 1051 | 1052 |
| 1052 friend class Deoptimizer; | 1053 friend class Deoptimizer; |
| 1053 }; | 1054 }; |
| 1054 | 1055 |
| 1055 } } // namespace v8::internal | 1056 } } // namespace v8::internal |
| 1056 | 1057 |
| 1057 #endif // V8_DEOPTIMIZER_H_ | 1058 #endif // V8_DEOPTIMIZER_H_ |
| OLD | NEW |