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/macro-assembler.h" | 8 #include "src/macro-assembler.h" |
9 | 9 |
10 namespace v8 { | 10 namespace v8 { |
(...skipping 449 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
460 GetContextualMode(target()->extra_ic_state())); | 460 GetContextualMode(target()->extra_ic_state())); |
461 | 461 |
462 IC::set_target(code); | 462 IC::set_target(code); |
463 } | 463 } |
464 | 464 |
465 virtual Handle<Code> slow_stub() const { | 465 virtual Handle<Code> slow_stub() const { |
466 return isolate()->builtins()->LoadIC_Slow(); | 466 return isolate()->builtins()->LoadIC_Slow(); |
467 } | 467 } |
468 | 468 |
469 virtual Handle<Code> megamorphic_stub(); | 469 virtual Handle<Code> megamorphic_stub(); |
| 470 virtual Handle<Code> generic_stub() const; |
470 | 471 |
471 // Update the inline cache and the global stub cache based on the | 472 // Update the inline cache and the global stub cache based on the |
472 // lookup result. | 473 // lookup result. |
473 void UpdateCaches(LookupResult* lookup, | 474 void UpdateCaches(LookupResult* lookup, |
474 Handle<Object> object, | 475 Handle<Object> object, |
475 Handle<String> name); | 476 Handle<String> name); |
476 | 477 |
477 virtual Handle<Code> CompileHandler(LookupResult* lookup, | 478 virtual Handle<Code> CompileHandler(LookupResult* lookup, |
478 Handle<Object> object, | 479 Handle<Object> object, |
479 Handle<String> name, | 480 Handle<String> name, |
(...skipping 546 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1026 DECLARE_RUNTIME_FUNCTION(ElementsTransitionAndStoreIC_Miss); | 1027 DECLARE_RUNTIME_FUNCTION(ElementsTransitionAndStoreIC_Miss); |
1027 DECLARE_RUNTIME_FUNCTION(BinaryOpIC_Miss); | 1028 DECLARE_RUNTIME_FUNCTION(BinaryOpIC_Miss); |
1028 DECLARE_RUNTIME_FUNCTION(BinaryOpIC_MissWithAllocationSite); | 1029 DECLARE_RUNTIME_FUNCTION(BinaryOpIC_MissWithAllocationSite); |
1029 DECLARE_RUNTIME_FUNCTION(CompareNilIC_Miss); | 1030 DECLARE_RUNTIME_FUNCTION(CompareNilIC_Miss); |
1030 DECLARE_RUNTIME_FUNCTION(ToBooleanIC_Miss); | 1031 DECLARE_RUNTIME_FUNCTION(ToBooleanIC_Miss); |
1031 | 1032 |
1032 | 1033 |
1033 } } // namespace v8::internal | 1034 } } // namespace v8::internal |
1034 | 1035 |
1035 #endif // V8_IC_H_ | 1036 #endif // V8_IC_H_ |
OLD | NEW |