| 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 |