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 #include "src/builtins.h" | 5 #include "src/builtins.h" |
6 | 6 |
7 #include "src/api.h" | 7 #include "src/api.h" |
8 #include "src/api-natives.h" | 8 #include "src/api-natives.h" |
9 #include "src/arguments.h" | 9 #include "src/arguments.h" |
10 #include "src/base/once.h" | 10 #include "src/base/once.h" |
(...skipping 4093 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4104 switch (tail_call_mode) { | 4104 switch (tail_call_mode) { |
4105 case TailCallMode::kDisallow: | 4105 case TailCallMode::kDisallow: |
4106 return InterpreterPushArgsAndCall(); | 4106 return InterpreterPushArgsAndCall(); |
4107 case TailCallMode::kAllow: | 4107 case TailCallMode::kAllow: |
4108 return InterpreterPushArgsAndTailCall(); | 4108 return InterpreterPushArgsAndTailCall(); |
4109 } | 4109 } |
4110 UNREACHABLE(); | 4110 UNREACHABLE(); |
4111 return Handle<Code>::null(); | 4111 return Handle<Code>::null(); |
4112 } | 4112 } |
4113 | 4113 |
| 4114 Handle<Code> Builtins::InterpreterPushArgsAndCallIC( |
| 4115 TailCallMode tail_call_mode) { |
| 4116 switch (tail_call_mode) { |
| 4117 case TailCallMode::kDisallow: |
| 4118 return InterpreterPushArgsAndCallIC(); |
| 4119 case TailCallMode::kAllow: |
| 4120 return InterpreterPushArgsAndTailCallIC(); |
| 4121 } |
| 4122 UNREACHABLE(); |
| 4123 return Handle<Code>::null(); |
| 4124 } |
| 4125 |
4114 namespace { | 4126 namespace { |
4115 | 4127 |
4116 class RelocatableArguments | 4128 class RelocatableArguments |
4117 : public BuiltinArguments<BuiltinExtraArguments::kTarget>, | 4129 : public BuiltinArguments<BuiltinExtraArguments::kTarget>, |
4118 public Relocatable { | 4130 public Relocatable { |
4119 public: | 4131 public: |
4120 RelocatableArguments(Isolate* isolate, int length, Object** arguments) | 4132 RelocatableArguments(Isolate* isolate, int length, Object** arguments) |
4121 : BuiltinArguments<BuiltinExtraArguments::kTarget>(length, arguments), | 4133 : BuiltinArguments<BuiltinExtraArguments::kTarget>(length, arguments), |
4122 Relocatable(isolate) {} | 4134 Relocatable(isolate) {} |
4123 | 4135 |
(...skipping 438 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4562 BUILTIN_LIST_C(DEFINE_BUILTIN_ACCESSOR_C) | 4574 BUILTIN_LIST_C(DEFINE_BUILTIN_ACCESSOR_C) |
4563 BUILTIN_LIST_A(DEFINE_BUILTIN_ACCESSOR_A) | 4575 BUILTIN_LIST_A(DEFINE_BUILTIN_ACCESSOR_A) |
4564 BUILTIN_LIST_H(DEFINE_BUILTIN_ACCESSOR_H) | 4576 BUILTIN_LIST_H(DEFINE_BUILTIN_ACCESSOR_H) |
4565 BUILTIN_LIST_DEBUG_A(DEFINE_BUILTIN_ACCESSOR_A) | 4577 BUILTIN_LIST_DEBUG_A(DEFINE_BUILTIN_ACCESSOR_A) |
4566 #undef DEFINE_BUILTIN_ACCESSOR_C | 4578 #undef DEFINE_BUILTIN_ACCESSOR_C |
4567 #undef DEFINE_BUILTIN_ACCESSOR_A | 4579 #undef DEFINE_BUILTIN_ACCESSOR_A |
4568 | 4580 |
4569 | 4581 |
4570 } // namespace internal | 4582 } // namespace internal |
4571 } // namespace v8 | 4583 } // namespace v8 |
OLD | NEW |