| 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_IC_H_ | 5 #ifndef V8_IC_H_ |
| 6 #define V8_IC_H_ | 6 #define V8_IC_H_ |
| 7 | 7 |
| 8 #include "src/ic/ic-state.h" | 8 #include "src/ic/ic-state.h" |
| 9 #include "src/macro-assembler.h" | 9 #include "src/macro-assembler.h" |
| 10 #include "src/messages.h" | 10 #include "src/messages.h" |
| (...skipping 192 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 203 } | 203 } |
| 204 | 204 |
| 205 Map* FirstTargetMap() { | 205 Map* FirstTargetMap() { |
| 206 FindTargetMaps(); | 206 FindTargetMaps(); |
| 207 return target_maps_.length() > 0 ? *target_maps_.at(0) : NULL; | 207 return target_maps_.length() > 0 ? *target_maps_.at(0) : NULL; |
| 208 } | 208 } |
| 209 | 209 |
| 210 inline void UpdateTarget(); | 210 inline void UpdateTarget(); |
| 211 | 211 |
| 212 Handle<TypeFeedbackVector> vector() const { return nexus()->vector_handle(); } | 212 Handle<TypeFeedbackVector> vector() const { return nexus()->vector_handle(); } |
| 213 FeedbackVectorICSlot slot() const { return nexus()->slot(); } | 213 FeedbackVectorSlot slot() const { return nexus()->slot(); } |
| 214 State saved_state() const { | 214 State saved_state() const { |
| 215 return state() == PROTOTYPE_FAILURE ? old_state_ : state(); | 215 return state() == PROTOTYPE_FAILURE ? old_state_ : state(); |
| 216 } | 216 } |
| 217 | 217 |
| 218 template <class NexusClass> | 218 template <class NexusClass> |
| 219 NexusClass* casted_nexus() { | 219 NexusClass* casted_nexus() { |
| 220 return static_cast<NexusClass*>(nexus_); | 220 return static_cast<NexusClass*>(nexus_); |
| 221 } | 221 } |
| 222 FeedbackNexus* nexus() const { return nexus_; } | 222 FeedbackNexus* nexus() const { return nexus_; } |
| 223 | 223 |
| (...skipping 458 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 682 | 682 |
| 683 | 683 |
| 684 // Helper for BinaryOpIC and CompareIC. | 684 // Helper for BinaryOpIC and CompareIC. |
| 685 enum InlinedSmiCheck { ENABLE_INLINED_SMI_CHECK, DISABLE_INLINED_SMI_CHECK }; | 685 enum InlinedSmiCheck { ENABLE_INLINED_SMI_CHECK, DISABLE_INLINED_SMI_CHECK }; |
| 686 void PatchInlinedSmiCode(Address address, InlinedSmiCheck check); | 686 void PatchInlinedSmiCode(Address address, InlinedSmiCheck check); |
| 687 | 687 |
| 688 } // namespace internal | 688 } // namespace internal |
| 689 } // namespace v8 | 689 } // namespace v8 |
| 690 | 690 |
| 691 #endif // V8_IC_H_ | 691 #endif // V8_IC_H_ |
| OLD | NEW |