| 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 #include "src/assembler.h" |   5 #include "src/assembler.h" | 
|   6 #include "src/code-stubs.h" |   6 #include "src/code-stubs.h" | 
|   7 #include "src/compiler/linkage.h" |   7 #include "src/compiler/linkage.h" | 
|   8 #include "src/compiler/linkage-impl.h" |   8 #include "src/compiler/linkage-impl.h" | 
|   9 #include "src/zone.h" |   9 #include "src/zone.h" | 
|  10  |  10  | 
|  11 namespace v8 { |  11 namespace v8 { | 
|  12 namespace internal { |  12 namespace internal { | 
|  13 namespace compiler { |  13 namespace compiler { | 
|  14  |  14  | 
|  15 struct X87LinkageHelperTraits { |  15 struct X87LinkageHelperTraits { | 
|  16   static Register ReturnValueReg() { return eax; } |  16   static Register ReturnValueReg() { return eax; } | 
|  17   static Register ReturnValue2Reg() { return edx; } |  17   static Register ReturnValue2Reg() { return edx; } | 
|  18   static Register JSCallFunctionReg() { return edi; } |  18   static Register JSCallFunctionReg() { return edi; } | 
|  19   static Register ContextReg() { return esi; } |  19   static Register ContextReg() { return esi; } | 
|  20   static Register RuntimeCallFunctionReg() { return ebx; } |  20   static Register RuntimeCallFunctionReg() { return ebx; } | 
|  21   static Register RuntimeCallArgCountReg() { return eax; } |  21   static Register RuntimeCallArgCountReg() { return eax; } | 
|  22   static RegList CCalleeSaveRegisters() { |  22   static RegList CCalleeSaveRegisters() { | 
|  23     return esi.bit() | edi.bit() | ebx.bit(); |  23     return esi.bit() | edi.bit() | ebx.bit(); | 
|  24   } |  24   } | 
|  25   static Register CRegisterParameter(int i) { return no_reg; } |  25   static Register CRegisterParameter(int i) { return no_reg; } | 
|  26   static int CRegisterParametersLength() { return 0; } |  26   static int CRegisterParametersLength() { return 0; } | 
 |  27   static int CStackBackingStoreLength() { return 0; } | 
|  27 }; |  28 }; | 
|  28  |  29  | 
|  29 typedef LinkageHelper<X87LinkageHelperTraits> LH; |  30 typedef LinkageHelper<X87LinkageHelperTraits> LH; | 
|  30  |  31  | 
|  31 CallDescriptor* Linkage::GetJSCallDescriptor(Zone* zone, bool is_osr, |  32 CallDescriptor* Linkage::GetJSCallDescriptor(Zone* zone, bool is_osr, | 
|  32                                              int parameter_count, |  33                                              int parameter_count, | 
|  33                                              CallDescriptor::Flags flags) { |  34                                              CallDescriptor::Flags flags) { | 
|  34   return LH::GetJSCallDescriptor(zone, is_osr, parameter_count, flags); |  35   return LH::GetJSCallDescriptor(zone, is_osr, parameter_count, flags); | 
|  35 } |  36 } | 
|  36  |  37  | 
| (...skipping 17 matching lines...) Expand all  Loading... | 
|  54  |  55  | 
|  55  |  56  | 
|  56 CallDescriptor* Linkage::GetSimplifiedCDescriptor(Zone* zone, |  57 CallDescriptor* Linkage::GetSimplifiedCDescriptor(Zone* zone, | 
|  57                                                   const MachineSignature* sig) { |  58                                                   const MachineSignature* sig) { | 
|  58   return LH::GetSimplifiedCDescriptor(zone, sig); |  59   return LH::GetSimplifiedCDescriptor(zone, sig); | 
|  59 } |  60 } | 
|  60  |  61  | 
|  61 }  // namespace compiler |  62 }  // namespace compiler | 
|  62 }  // namespace internal |  63 }  // namespace internal | 
|  63 }  // namespace v8 |  64 }  // namespace v8 | 
| OLD | NEW |