InterfaceDescriptor becomes CallInterfaceDescriptor.
authormvstanton@chromium.org <mvstanton@chromium.org>
Mon, 1 Sep 2014 12:15:25 +0000 (12:15 +0000)
committermvstanton@chromium.org <mvstanton@chromium.org>
Mon, 1 Sep 2014 12:15:25 +0000 (12:15 +0000)
There was no difference between these two classes in a hierarchical
relationship.

R=yangguo@chromium.org

Review URL: https://codereview.chromium.org/532473002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23560 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

15 files changed:
src/arm/interface-descriptors-arm.cc
src/arm/lithium-arm.cc
src/arm/lithium-arm.h
src/arm64/interface-descriptors-arm64.cc
src/arm64/lithium-arm64.cc
src/arm64/lithium-arm64.h
src/hydrogen-instructions.h
src/ia32/interface-descriptors-ia32.cc
src/ia32/lithium-ia32.cc
src/ia32/lithium-ia32.h
src/interface-descriptors.cc
src/interface-descriptors.h
src/x64/interface-descriptors-x64.cc
src/x64/lithium-x64.cc
src/x64/lithium-x64.h

index 6a5f12de0be737d22babf802220b00446204f18e..969d4ae95786f64666fea03ee49d871701663e25 100644 (file)
@@ -11,7 +11,7 @@
 namespace v8 {
 namespace internal {
 
-const Register InterfaceDescriptor::ContextRegister() { return cp; }
+const Register CallInterfaceDescriptor::ContextRegister() { return cp; }
 
 
 void CallDescriptors::InitializeForIsolate(Isolate* isolate) {
index 39b33938c5f5432010fc3c48d3e1504325392423..55b1a127e22f9832cd97e78c5329535715f704b8 100644 (file)
@@ -1082,7 +1082,7 @@ LInstruction* LChunkBuilder::DoCallJSFunction(
 
 LInstruction* LChunkBuilder::DoCallWithDescriptor(
     HCallWithDescriptor* instr) {
-  const InterfaceDescriptor* descriptor = instr->descriptor();
+  const CallInterfaceDescriptor* descriptor = instr->descriptor();
 
   LOperand* target = UseRegisterOrConstantAtStart(instr->target());
   ZoneList<LOperand*> ops(instr->OperandCount(), zone());
index 16f522e5b6a0334cbd647e99379a2584583f7974..2c840221809e353286134825f8f62ae321871b23 100644 (file)
@@ -1874,18 +1874,17 @@ class LCallJSFunction V8_FINAL : public LTemplateInstruction<1, 1, 0> {
 
 class LCallWithDescriptor V8_FINAL : public LTemplateResultInstruction<1> {
  public:
-  LCallWithDescriptor(const InterfaceDescriptor* descriptor,
-                      const ZoneList<LOperand*>& operands,
-                      Zone* zone)
-    : descriptor_(descriptor),
-      inputs_(descriptor->GetRegisterParameterCount() + 1, zone) {
+  LCallWithDescriptor(const CallInterfaceDescriptor* descriptor,
+                      const ZoneList<LOperand*>& operands, Zone* zone)
+      : descriptor_(descriptor),
+        inputs_(descriptor->GetRegisterParameterCount() + 1, zone) {
     DCHECK(descriptor->GetRegisterParameterCount() + 1 == operands.length());
     inputs_.AddAll(operands, zone);
   }
 
   LOperand* target() const { return inputs_[0]; }
 
-  const InterfaceDescriptor* descriptor() { return descriptor_; }
+  const CallInterfaceDescriptor* descriptor() { return descriptor_; }
 
  private:
   DECLARE_CONCRETE_INSTRUCTION(CallWithDescriptor, "call-with-descriptor")
@@ -1895,7 +1894,7 @@ class LCallWithDescriptor V8_FINAL : public LTemplateResultInstruction<1> {
 
   int arity() const { return hydrogen()->argument_count() - 1; }
 
-  const InterfaceDescriptor* descriptor_;
+  const CallInterfaceDescriptor* descriptor_;
   ZoneList<LOperand*> inputs_;
 
   // Iterator support.
index 1bea2bae0a1c16c858197eb344db54383289cad6..fb490a7d39e89a3fac167b6294eef80badbb9bf5 100644 (file)
@@ -11,7 +11,7 @@
 namespace v8 {
 namespace internal {
 
-const Register InterfaceDescriptor::ContextRegister() { return cp; }
+const Register CallInterfaceDescriptor::ContextRegister() { return cp; }
 
 
 void CallDescriptors::InitializeForIsolate(Isolate* isolate) {
index 1f670cc71c62e2ee8296e9f341bbff0d6bc98795..92c18a7c5635b4c18fba53c5054431e8b71710bb 100644 (file)
@@ -1036,7 +1036,7 @@ LInstruction* LChunkBuilder::DoCallJSFunction(
 
 LInstruction* LChunkBuilder::DoCallWithDescriptor(
     HCallWithDescriptor* instr) {
-  const InterfaceDescriptor* descriptor = instr->descriptor();
+  const CallInterfaceDescriptor* descriptor = instr->descriptor();
 
   LOperand* target = UseRegisterOrConstantAtStart(instr->target());
   ZoneList<LOperand*> ops(instr->OperandCount(), zone());
index a5a3eb0b911ef9bfca07e3b730c488e84ebd6136..4e6f26ccbbcd43bbd22f0d09ce9e4220f6b10966 100644 (file)
@@ -1523,18 +1523,17 @@ class LInteger32ToDouble V8_FINAL : public LTemplateInstruction<1, 1, 0> {
 
 class LCallWithDescriptor V8_FINAL : public LTemplateResultInstruction<1> {
  public:
-  LCallWithDescriptor(const InterfaceDescriptor* descriptor,
-                      const ZoneList<LOperand*>& operands,
-                      Zone* zone)
-    : descriptor_(descriptor),
-      inputs_(descriptor->GetRegisterParameterCount() + 1, zone) {
+  LCallWithDescriptor(const CallInterfaceDescriptor* descriptor,
+                      const ZoneList<LOperand*>& operands, Zone* zone)
+      : descriptor_(descriptor),
+        inputs_(descriptor->GetRegisterParameterCount() + 1, zone) {
     DCHECK(descriptor->GetRegisterParameterCount() + 1 == operands.length());
     inputs_.AddAll(operands, zone);
   }
 
   LOperand* target() const { return inputs_[0]; }
 
-  const InterfaceDescriptor* descriptor() { return descriptor_; }
+  const CallInterfaceDescriptor* descriptor() { return descriptor_; }
 
  private:
   DECLARE_CONCRETE_INSTRUCTION(CallWithDescriptor, "call-with-descriptor")
@@ -1544,7 +1543,7 @@ class LCallWithDescriptor V8_FINAL : public LTemplateResultInstruction<1> {
 
   int arity() const { return hydrogen()->argument_count() - 1; }
 
-  const InterfaceDescriptor* descriptor_;
+  const CallInterfaceDescriptor* descriptor_;
   ZoneList<LOperand*> inputs_;
 
   // Iterator support.
index 06d2bb48b0ef1dc8f6e3c6a3a506ef148e5b1766..b80c7c50ab072ed8ee990b5ea3c76389204a043c 100644 (file)
@@ -2318,11 +2318,10 @@ class HCallJSFunction V8_FINAL : public HCall<1> {
 
 class HCallWithDescriptor V8_FINAL : public HInstruction {
  public:
-  static HCallWithDescriptor* New(Zone* zone, HValue* context,
-      HValue* target,
-      int argument_count,
-      const InterfaceDescriptor* descriptor,
-      const Vector<HValue*>& operands) {
+  static HCallWithDescriptor* New(Zone* zone, HValue* context, HValue* target,
+                                  int argument_count,
+                                  const CallInterfaceDescriptor* descriptor,
+                                  const Vector<HValue*>& operands) {
     DCHECK(operands.length() == descriptor->GetEnvironmentLength());
     HCallWithDescriptor* res =
         new(zone) HCallWithDescriptor(target, argument_count,
@@ -2362,9 +2361,7 @@ class HCallWithDescriptor V8_FINAL : public HInstruction {
     return -argument_count_;
   }
 
-  const InterfaceDescriptor* descriptor() const {
-    return descriptor_;
-  }
+  const CallInterfaceDescriptor* descriptor() const { return descriptor_; }
 
   HValue* target() {
     return OperandAt(0);
@@ -2374,13 +2371,11 @@ class HCallWithDescriptor V8_FINAL : public HInstruction {
 
  private:
   // The argument count includes the receiver.
-  HCallWithDescriptor(HValue* target,
-                      int argument_count,
-                      const InterfaceDescriptor* descriptor,
-                      const Vector<HValue*>& operands,
-                      Zone* zone)
-    : descriptor_(descriptor),
-      values_(descriptor->GetEnvironmentLength() + 1, zone) {
+  HCallWithDescriptor(HValue* target, int argument_count,
+                      const CallInterfaceDescriptor* descriptor,
+                      const Vector<HValue*>& operands, Zone* zone)
+      : descriptor_(descriptor),
+        values_(descriptor->GetEnvironmentLength() + 1, zone) {
     argument_count_ = argument_count;
     AddOperand(target, zone);
     for (int i = 0; i < operands.length(); i++) {
@@ -2400,7 +2395,7 @@ class HCallWithDescriptor V8_FINAL : public HInstruction {
     values_[index] = value;
   }
 
-  const InterfaceDescriptor* descriptor_;
+  const CallInterfaceDescriptor* descriptor_;
   ZoneList<HValue*> values_;
   int argument_count_;
 };
index 9f7cf263e4f61b6bd3dc081341a0ecbec854d95f..ca2c12616f600b67c75e80d19274c9b5de1611a2 100644 (file)
@@ -12,7 +12,7 @@
 namespace v8 {
 namespace internal {
 
-const Register InterfaceDescriptor::ContextRegister() { return esi; }
+const Register CallInterfaceDescriptor::ContextRegister() { return esi; }
 
 
 void CallDescriptors::InitializeForIsolate(Isolate* isolate) {
index 4569dc55988d0a4a29ef9926750acf9a7e4177cd..d68524075045fafee85bcce1bb306a7a5b4a2b87 100644 (file)
@@ -1123,7 +1123,7 @@ LInstruction* LChunkBuilder::DoCallJSFunction(
 
 LInstruction* LChunkBuilder::DoCallWithDescriptor(
     HCallWithDescriptor* instr) {
-  const InterfaceDescriptor* descriptor = instr->descriptor();
+  const CallInterfaceDescriptor* descriptor = instr->descriptor();
   LOperand* target = UseRegisterOrConstantAtStart(instr->target());
   ZoneList<LOperand*> ops(instr->OperandCount(), zone());
   ops.Add(target, zone());
index 4206482de75c5c73a365a9eef31f02c2aad6ccd3..730975a9c35a972e31f2626c916c6114cb809992 100644 (file)
@@ -1891,10 +1891,9 @@ class LCallJSFunction V8_FINAL : public LTemplateInstruction<1, 1, 0> {
 
 class LCallWithDescriptor V8_FINAL : public LTemplateResultInstruction<1> {
  public:
-  LCallWithDescriptor(const InterfaceDescriptor* descriptor,
-                      const ZoneList<LOperand*>& operands,
-                      Zone* zone)
-    : inputs_(descriptor->GetRegisterParameterCount() + 1, zone) {
+  LCallWithDescriptor(const CallInterfaceDescriptor* descriptor,
+                      const ZoneList<LOperand*>& operands, Zone* zone)
+      : inputs_(descriptor->GetRegisterParameterCount() + 1, zone) {
     DCHECK(descriptor->GetRegisterParameterCount() + 1 == operands.length());
     inputs_.AddAll(operands, zone);
   }
index 2324c62eda5447a1f0ffad894a05a8b752c8c0e7..2661b09bc6d347853529319a1a2700f2e88942c1 100644 (file)
 namespace v8 {
 namespace internal {
 
-InterfaceDescriptor::InterfaceDescriptor() : register_param_count_(-1) {}
-
-
-void InterfaceDescriptor::Initialize(
+void CallInterfaceDescriptor::Initialize(
     int register_parameter_count, Register* registers,
     Representation* register_param_representations,
     PlatformInterfaceDescriptor* platform_descriptor) {
@@ -45,20 +42,11 @@ void InterfaceDescriptor::Initialize(
 }
 
 
-void CallInterfaceDescriptor::Initialize(
-    int register_parameter_count, Register* registers,
-    Representation* param_representations,
-    PlatformInterfaceDescriptor* platform_descriptor) {
-  InterfaceDescriptor::Initialize(register_parameter_count, registers,
-                                  param_representations, platform_descriptor);
-}
-
-
 void CallDescriptors::InitializeForIsolateAllPlatforms(Isolate* isolate) {
   {
     CallInterfaceDescriptor* descriptor =
         isolate->call_descriptor(CallDescriptorKey::LoadICCall);
-    Register registers[] = {InterfaceDescriptor::ContextRegister(),
+    Register registers[] = {CallInterfaceDescriptor::ContextRegister(),
                             LoadConvention::ReceiverRegister(),
                             LoadConvention::NameRegister()};
     descriptor->Initialize(arraysize(registers), registers, NULL);
@@ -66,7 +54,7 @@ void CallDescriptors::InitializeForIsolateAllPlatforms(Isolate* isolate) {
   {
     CallInterfaceDescriptor* descriptor =
         isolate->call_descriptor(CallDescriptorKey::StoreICCall);
-    Register registers[] = {InterfaceDescriptor::ContextRegister(),
+    Register registers[] = {CallInterfaceDescriptor::ContextRegister(),
                             StoreConvention::ReceiverRegister(),
                             StoreConvention::NameRegister(),
                             StoreConvention::ValueRegister()};
@@ -76,7 +64,7 @@ void CallDescriptors::InitializeForIsolateAllPlatforms(Isolate* isolate) {
     CallInterfaceDescriptor* descriptor = isolate->call_descriptor(
         CallDescriptorKey::ElementTransitionAndStoreCall);
     Register registers[] = {
-        InterfaceDescriptor::ContextRegister(),
+        CallInterfaceDescriptor::ContextRegister(),
         StoreConvention::ValueRegister(), StoreConvention::MapRegister(),
         StoreConvention::NameRegister(), StoreConvention::ReceiverRegister()};
     descriptor->Initialize(arraysize(registers), registers, NULL);
@@ -84,7 +72,7 @@ void CallDescriptors::InitializeForIsolateAllPlatforms(Isolate* isolate) {
   {
     CallInterfaceDescriptor* descriptor =
         isolate->call_descriptor(CallDescriptorKey::InstanceofCall);
-    Register registers[] = {InterfaceDescriptor::ContextRegister(),
+    Register registers[] = {CallInterfaceDescriptor::ContextRegister(),
                             InstanceofConvention::left(),
                             InstanceofConvention::right()};
     descriptor->Initialize(arraysize(registers), registers, NULL);
@@ -92,7 +80,7 @@ void CallDescriptors::InitializeForIsolateAllPlatforms(Isolate* isolate) {
   {
     CallInterfaceDescriptor* descriptor =
         isolate->call_descriptor(CallDescriptorKey::VectorLoadICCall);
-    Register registers[] = {InterfaceDescriptor::ContextRegister(),
+    Register registers[] = {CallInterfaceDescriptor::ContextRegister(),
                             FullVectorLoadConvention::ReceiverRegister(),
                             FullVectorLoadConvention::NameRegister(),
                             FullVectorLoadConvention::SlotRegister(),
index 639b1f0a887d2d598ee3a9565a712be70142bccf..5b552e892b530cafafd2e2e8d8f717ab7439f76d 100644 (file)
@@ -13,8 +13,21 @@ namespace internal {
 
 class PlatformInterfaceDescriptor;
 
-class InterfaceDescriptor {
+class CallInterfaceDescriptor {
  public:
+  CallInterfaceDescriptor() : register_param_count_(-1) {}
+
+  // A copy of the passed in registers and param_representations is made
+  // and owned by the CallInterfaceDescriptor.
+
+  // TODO(mvstanton): Instead of taking parallel arrays register and
+  // param_representations, how about a struct that puts the representation
+  // and register side by side (eg, RegRep(r1, Representation::Tagged()).
+  // The same should go for the CodeStubInterfaceDescriptor class.
+  void Initialize(int register_parameter_count, Register* registers,
+                  Representation* param_representations,
+                  PlatformInterfaceDescriptor* platform_descriptor = NULL);
+
   bool IsInitialized() const { return register_param_count_ >= 0; }
 
   int GetEnvironmentLength() const { return register_param_count_; }
@@ -55,14 +68,6 @@ class InterfaceDescriptor {
 
   static const Register ContextRegister();
 
- protected:
-  InterfaceDescriptor();
-  virtual ~InterfaceDescriptor() {}
-
-  void Initialize(int register_parameter_count, Register* registers,
-                  Representation* register_param_representations,
-                  PlatformInterfaceDescriptor* platform_descriptor = NULL);
-
  private:
   int register_param_count_;
 
@@ -79,7 +84,7 @@ class InterfaceDescriptor {
 
   PlatformInterfaceDescriptor* platform_specific_descriptor_;
 
-  DISALLOW_COPY_AND_ASSIGN(InterfaceDescriptor);
+  DISALLOW_COPY_AND_ASSIGN(CallInterfaceDescriptor);
 };
 
 
@@ -118,23 +123,6 @@ enum CallDescriptorKey {
 };
 
 
-class CallInterfaceDescriptor : public InterfaceDescriptor {
- public:
-  CallInterfaceDescriptor() {}
-
-  // A copy of the passed in registers and param_representations is made
-  // and owned by the CallInterfaceDescriptor.
-
-  // TODO(mvstanton): Instead of taking parallel arrays register and
-  // param_representations, how about a struct that puts the representation
-  // and register side by side (eg, RegRep(r1, Representation::Tagged()).
-  // The same should go for the CodeStubInterfaceDescriptor class.
-  void Initialize(int register_parameter_count, Register* registers,
-                  Representation* param_representations,
-                  PlatformInterfaceDescriptor* platform_descriptor = NULL);
-};
-
-
 class CallDescriptors {
  public:
   static void InitializeForIsolate(Isolate* isolate);
index dfb8c4df88ff5a149a8436713b99ebe5045e80c8..e8908843b74cd03ba8987e3a270a8cc1e052d670 100644 (file)
@@ -11,7 +11,7 @@
 namespace v8 {
 namespace internal {
 
-const Register InterfaceDescriptor::ContextRegister() { return rsi; }
+const Register CallInterfaceDescriptor::ContextRegister() { return rsi; }
 
 
 void CallDescriptors::InitializeForIsolate(Isolate* isolate) {
index 14da898eeefbcf6852ce39e1f358cc85f42a55af..2bcb49133256fe116e006ce16ddd6bdf449e2d4e 100644 (file)
@@ -1102,7 +1102,7 @@ LInstruction* LChunkBuilder::DoCallJSFunction(
 
 LInstruction* LChunkBuilder::DoCallWithDescriptor(
     HCallWithDescriptor* instr) {
-  const InterfaceDescriptor* descriptor = instr->descriptor();
+  const CallInterfaceDescriptor* descriptor = instr->descriptor();
 
   LOperand* target = UseRegisterOrConstantAtStart(instr->target());
   ZoneList<LOperand*> ops(instr->OperandCount(), zone());
index a1c563f8825adeb1eb6ad80614ef7b5a16f24696..b652d349298b63b1d537cba47f1a16b558104260 100644 (file)
@@ -1877,10 +1877,9 @@ class LCallJSFunction V8_FINAL : public LTemplateInstruction<1, 1, 0> {
 
 class LCallWithDescriptor V8_FINAL : public LTemplateResultInstruction<1> {
  public:
-  LCallWithDescriptor(const InterfaceDescriptor* descriptor,
-                      const ZoneList<LOperand*>& operands,
-                      Zone* zone)
-    : inputs_(descriptor->GetRegisterParameterCount() + 1, zone) {
+  LCallWithDescriptor(const CallInterfaceDescriptor* descriptor,
+                      const ZoneList<LOperand*>& operands, Zone* zone)
+      : inputs_(descriptor->GetRegisterParameterCount() + 1, zone) {
     DCHECK(descriptor->GetRegisterParameterCount() + 1 == operands.length());
     inputs_.AddAll(operands, zone);
   }