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 3971 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3982 switch (tail_call_mode) { | 3982 switch (tail_call_mode) { |
3983 case TailCallMode::kDisallow: | 3983 case TailCallMode::kDisallow: |
3984 return CallBoundFunction(); | 3984 return CallBoundFunction(); |
3985 case TailCallMode::kAllow: | 3985 case TailCallMode::kAllow: |
3986 return TailCallBoundFunction(); | 3986 return TailCallBoundFunction(); |
3987 } | 3987 } |
3988 UNREACHABLE(); | 3988 UNREACHABLE(); |
3989 return Handle<Code>::null(); | 3989 return Handle<Code>::null(); |
3990 } | 3990 } |
3991 | 3991 |
| 3992 Handle<Code> Builtins::InterpreterPushArgsAndCall(TailCallMode tail_call_mode) { |
| 3993 switch (tail_call_mode) { |
| 3994 case TailCallMode::kDisallow: |
| 3995 return InterpreterPushArgsAndCall(); |
| 3996 case TailCallMode::kAllow: |
| 3997 return InterpreterPushArgsAndTailCall(); |
| 3998 } |
| 3999 UNREACHABLE(); |
| 4000 return Handle<Code>::null(); |
| 4001 } |
3992 | 4002 |
3993 namespace { | 4003 namespace { |
3994 | 4004 |
3995 class RelocatableArguments | 4005 class RelocatableArguments |
3996 : public BuiltinArguments<BuiltinExtraArguments::kTarget>, | 4006 : public BuiltinArguments<BuiltinExtraArguments::kTarget>, |
3997 public Relocatable { | 4007 public Relocatable { |
3998 public: | 4008 public: |
3999 RelocatableArguments(Isolate* isolate, int length, Object** arguments) | 4009 RelocatableArguments(Isolate* isolate, int length, Object** arguments) |
4000 : BuiltinArguments<BuiltinExtraArguments::kTarget>(length, arguments), | 4010 : BuiltinArguments<BuiltinExtraArguments::kTarget>(length, arguments), |
4001 Relocatable(isolate) {} | 4011 Relocatable(isolate) {} |
(...skipping 439 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4441 BUILTIN_LIST_C(DEFINE_BUILTIN_ACCESSOR_C) | 4451 BUILTIN_LIST_C(DEFINE_BUILTIN_ACCESSOR_C) |
4442 BUILTIN_LIST_A(DEFINE_BUILTIN_ACCESSOR_A) | 4452 BUILTIN_LIST_A(DEFINE_BUILTIN_ACCESSOR_A) |
4443 BUILTIN_LIST_H(DEFINE_BUILTIN_ACCESSOR_H) | 4453 BUILTIN_LIST_H(DEFINE_BUILTIN_ACCESSOR_H) |
4444 BUILTIN_LIST_DEBUG_A(DEFINE_BUILTIN_ACCESSOR_A) | 4454 BUILTIN_LIST_DEBUG_A(DEFINE_BUILTIN_ACCESSOR_A) |
4445 #undef DEFINE_BUILTIN_ACCESSOR_C | 4455 #undef DEFINE_BUILTIN_ACCESSOR_C |
4446 #undef DEFINE_BUILTIN_ACCESSOR_A | 4456 #undef DEFINE_BUILTIN_ACCESSOR_A |
4447 | 4457 |
4448 | 4458 |
4449 } // namespace internal | 4459 } // namespace internal |
4450 } // namespace v8 | 4460 } // namespace v8 |
OLD | NEW |