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_ARGUMENTS_H_ | 5 #ifndef V8_ARGUMENTS_H_ |
6 #define V8_ARGUMENTS_H_ | 6 #define V8_ARGUMENTS_H_ |
7 | 7 |
8 #include "src/allocation.h" | 8 #include "src/allocation.h" |
| 9 #include "src/isolate.h" |
9 | 10 |
10 namespace v8 { | 11 namespace v8 { |
11 namespace internal { | 12 namespace internal { |
12 | 13 |
13 // Arguments provides access to runtime call parameters. | 14 // Arguments provides access to runtime call parameters. |
14 // | 15 // |
15 // It uses the fact that the instance fields of Arguments | 16 // It uses the fact that the instance fields of Arguments |
16 // (length_, arguments_) are "overlayed" with the parameters | 17 // (length_, arguments_) are "overlayed" with the parameters |
17 // (no. of parameters, and the parameter pointer) passed so | 18 // (no. of parameters, and the parameter pointer) passed so |
18 // that inside the C++ function, the parameters passed can | 19 // that inside the C++ function, the parameters passed can |
(...skipping 276 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
295 #define RUNTIME_FUNCTION(Name) RUNTIME_FUNCTION_RETURNS_TYPE(Object*, Name) | 296 #define RUNTIME_FUNCTION(Name) RUNTIME_FUNCTION_RETURNS_TYPE(Object*, Name) |
296 #define RUNTIME_FUNCTION_RETURN_PAIR(Name) \ | 297 #define RUNTIME_FUNCTION_RETURN_PAIR(Name) \ |
297 RUNTIME_FUNCTION_RETURNS_TYPE(ObjectPair, Name) | 298 RUNTIME_FUNCTION_RETURNS_TYPE(ObjectPair, Name) |
298 | 299 |
299 #define RUNTIME_ARGUMENTS(isolate, args) \ | 300 #define RUNTIME_ARGUMENTS(isolate, args) \ |
300 args.length(), args.arguments(), isolate | 301 args.length(), args.arguments(), isolate |
301 | 302 |
302 } } // namespace v8::internal | 303 } } // namespace v8::internal |
303 | 304 |
304 #endif // V8_ARGUMENTS_H_ | 305 #endif // V8_ARGUMENTS_H_ |
OLD | NEW |