OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 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_CALL_INTERFACE_DESCRIPTOR_H_ | 5 #ifndef V8_CALL_INTERFACE_DESCRIPTOR_H_ |
6 #define V8_CALL_INTERFACE_DESCRIPTOR_H_ | 6 #define V8_CALL_INTERFACE_DESCRIPTOR_H_ |
7 | 7 |
8 #include <memory> | 8 #include <memory> |
9 | 9 |
10 #include "src/assembler.h" | 10 #include "src/assembler.h" |
(...skipping 288 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
299 DECLARE_DESCRIPTOR_WITH_CUSTOM_FUNCTION_TYPE(LoadDescriptor, | 299 DECLARE_DESCRIPTOR_WITH_CUSTOM_FUNCTION_TYPE(LoadDescriptor, |
300 CallInterfaceDescriptor) | 300 CallInterfaceDescriptor) |
301 | 301 |
302 static const Register ReceiverRegister(); | 302 static const Register ReceiverRegister(); |
303 static const Register NameRegister(); | 303 static const Register NameRegister(); |
304 static const Register SlotRegister(); | 304 static const Register SlotRegister(); |
305 }; | 305 }; |
306 | 306 |
307 class LoadGlobalDescriptor : public CallInterfaceDescriptor { | 307 class LoadGlobalDescriptor : public CallInterfaceDescriptor { |
308 public: | 308 public: |
309 DEFINE_PARAMETERS(kSlot) | 309 DEFINE_PARAMETERS(kName, kSlot) |
310 DECLARE_DESCRIPTOR_WITH_CUSTOM_FUNCTION_TYPE(LoadGlobalDescriptor, | 310 DECLARE_DESCRIPTOR_WITH_CUSTOM_FUNCTION_TYPE(LoadGlobalDescriptor, |
311 CallInterfaceDescriptor) | 311 CallInterfaceDescriptor) |
312 | 312 |
| 313 static const Register NameRegister() { |
| 314 return LoadDescriptor::NameRegister(); |
| 315 } |
| 316 |
313 static const Register SlotRegister() { | 317 static const Register SlotRegister() { |
314 return LoadDescriptor::SlotRegister(); | 318 return LoadDescriptor::SlotRegister(); |
315 } | 319 } |
316 }; | 320 }; |
317 | 321 |
318 class StoreDescriptor : public CallInterfaceDescriptor { | 322 class StoreDescriptor : public CallInterfaceDescriptor { |
319 public: | 323 public: |
320 DEFINE_PARAMETERS(kReceiver, kName, kValue, kSlot) | 324 DEFINE_PARAMETERS(kReceiver, kName, kValue, kSlot) |
321 DECLARE_DESCRIPTOR_WITH_CUSTOM_FUNCTION_TYPE(StoreDescriptor, | 325 DECLARE_DESCRIPTOR_WITH_CUSTOM_FUNCTION_TYPE(StoreDescriptor, |
322 CallInterfaceDescriptor) | 326 CallInterfaceDescriptor) |
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
393 public: | 397 public: |
394 DEFINE_PARAMETERS(kReceiver, kName, kSlot, kVector, kHandler) | 398 DEFINE_PARAMETERS(kReceiver, kName, kSlot, kVector, kHandler) |
395 DECLARE_DESCRIPTOR_WITH_CUSTOM_FUNCTION_TYPE(LoadICProtoArrayDescriptor, | 399 DECLARE_DESCRIPTOR_WITH_CUSTOM_FUNCTION_TYPE(LoadICProtoArrayDescriptor, |
396 LoadWithVectorDescriptor) | 400 LoadWithVectorDescriptor) |
397 | 401 |
398 static const Register HandlerRegister(); | 402 static const Register HandlerRegister(); |
399 }; | 403 }; |
400 | 404 |
401 class LoadGlobalWithVectorDescriptor : public LoadGlobalDescriptor { | 405 class LoadGlobalWithVectorDescriptor : public LoadGlobalDescriptor { |
402 public: | 406 public: |
403 DEFINE_PARAMETERS(kSlot, kVector) | 407 DEFINE_PARAMETERS(kName, kSlot, kVector) |
404 DECLARE_DESCRIPTOR_WITH_CUSTOM_FUNCTION_TYPE(LoadGlobalWithVectorDescriptor, | 408 DECLARE_DESCRIPTOR_WITH_CUSTOM_FUNCTION_TYPE(LoadGlobalWithVectorDescriptor, |
405 LoadGlobalDescriptor) | 409 LoadGlobalDescriptor) |
406 | 410 |
407 static const Register VectorRegister() { | 411 static const Register VectorRegister() { |
408 return LoadWithVectorDescriptor::VectorRegister(); | 412 return LoadWithVectorDescriptor::VectorRegister(); |
409 } | 413 } |
410 }; | 414 }; |
411 | 415 |
412 class FastNewClosureDescriptor : public CallInterfaceDescriptor { | 416 class FastNewClosureDescriptor : public CallInterfaceDescriptor { |
413 public: | 417 public: |
(...skipping 423 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
837 } // namespace v8 | 841 } // namespace v8 |
838 | 842 |
839 | 843 |
840 #if V8_TARGET_ARCH_ARM64 | 844 #if V8_TARGET_ARCH_ARM64 |
841 #include "src/arm64/interface-descriptors-arm64.h" | 845 #include "src/arm64/interface-descriptors-arm64.h" |
842 #elif V8_TARGET_ARCH_ARM | 846 #elif V8_TARGET_ARCH_ARM |
843 #include "src/arm/interface-descriptors-arm.h" | 847 #include "src/arm/interface-descriptors-arm.h" |
844 #endif | 848 #endif |
845 | 849 |
846 #endif // V8_CALL_INTERFACE_DESCRIPTOR_H_ | 850 #endif // V8_CALL_INTERFACE_DESCRIPTOR_H_ |
OLD | NEW |