Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(695)

Side by Side Diff: src/arm/lithium-arm.h

Issue 384403002: StubCallInterfaceDescriptor takes a context register. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Code comments and ports. Created 6 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « src/arm/code-stubs-arm.cc ('k') | src/arm/lithium-arm.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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_ARM_LITHIUM_ARM_H_ 5 #ifndef V8_ARM_LITHIUM_ARM_H_
6 #define V8_ARM_LITHIUM_ARM_H_ 6 #define V8_ARM_LITHIUM_ARM_H_
7 7
8 #include "src/hydrogen.h" 8 #include "src/hydrogen.h"
9 #include "src/lithium.h" 9 #include "src/lithium.h"
10 #include "src/lithium-allocator.h" 10 #include "src/lithium-allocator.h"
(...skipping 1832 matching lines...) Expand 10 before | Expand all | Expand 10 after
1843 DECLARE_HYDROGEN_ACCESSOR(CallJSFunction) 1843 DECLARE_HYDROGEN_ACCESSOR(CallJSFunction)
1844 1844
1845 virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; 1845 virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE;
1846 1846
1847 int arity() const { return hydrogen()->argument_count() - 1; } 1847 int arity() const { return hydrogen()->argument_count() - 1; }
1848 }; 1848 };
1849 1849
1850 1850
1851 class LCallWithDescriptor V8_FINAL : public LTemplateResultInstruction<1> { 1851 class LCallWithDescriptor V8_FINAL : public LTemplateResultInstruction<1> {
1852 public: 1852 public:
1853 LCallWithDescriptor(const CallInterfaceDescriptor* descriptor, 1853 LCallWithDescriptor(const InterfaceDescriptor* descriptor,
1854 const ZoneList<LOperand*>& operands, 1854 const ZoneList<LOperand*>& operands,
1855 Zone* zone) 1855 Zone* zone)
1856 : descriptor_(descriptor), 1856 : descriptor_(descriptor),
1857 inputs_(descriptor->environment_length() + 1, zone) { 1857 inputs_(descriptor->GetRegisterParameterCount() + 1, zone) {
1858 ASSERT(descriptor->environment_length() + 1 == operands.length()); 1858 ASSERT(descriptor->GetRegisterParameterCount() + 1 == operands.length());
1859 inputs_.AddAll(operands, zone); 1859 inputs_.AddAll(operands, zone);
1860 } 1860 }
1861 1861
1862 LOperand* target() const { return inputs_[0]; } 1862 LOperand* target() const { return inputs_[0]; }
1863 1863
1864 const CallInterfaceDescriptor* descriptor() { return descriptor_; } 1864 const InterfaceDescriptor* descriptor() { return descriptor_; }
1865 1865
1866 private: 1866 private:
1867 DECLARE_CONCRETE_INSTRUCTION(CallWithDescriptor, "call-with-descriptor") 1867 DECLARE_CONCRETE_INSTRUCTION(CallWithDescriptor, "call-with-descriptor")
1868 DECLARE_HYDROGEN_ACCESSOR(CallWithDescriptor) 1868 DECLARE_HYDROGEN_ACCESSOR(CallWithDescriptor)
1869 1869
1870 virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; 1870 virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE;
1871 1871
1872 int arity() const { return hydrogen()->argument_count() - 1; } 1872 int arity() const { return hydrogen()->argument_count() - 1; }
1873 1873
1874 const CallInterfaceDescriptor* descriptor_; 1874 const InterfaceDescriptor* descriptor_;
1875 ZoneList<LOperand*> inputs_; 1875 ZoneList<LOperand*> inputs_;
1876 1876
1877 // Iterator support. 1877 // Iterator support.
1878 virtual int InputCount() V8_FINAL V8_OVERRIDE { return inputs_.length(); } 1878 virtual int InputCount() V8_FINAL V8_OVERRIDE { return inputs_.length(); }
1879 virtual LOperand* InputAt(int i) V8_FINAL V8_OVERRIDE { return inputs_[i]; } 1879 virtual LOperand* InputAt(int i) V8_FINAL V8_OVERRIDE { return inputs_[i]; }
1880 1880
1881 virtual int TempCount() V8_FINAL V8_OVERRIDE { return 0; } 1881 virtual int TempCount() V8_FINAL V8_OVERRIDE { return 0; }
1882 virtual LOperand* TempAt(int i) V8_FINAL V8_OVERRIDE { return NULL; } 1882 virtual LOperand* TempAt(int i) V8_FINAL V8_OVERRIDE { return NULL; }
1883 }; 1883 };
1884 1884
(...skipping 987 matching lines...) Expand 10 before | Expand all | Expand 10 after
2872 2872
2873 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); 2873 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder);
2874 }; 2874 };
2875 2875
2876 #undef DECLARE_HYDROGEN_ACCESSOR 2876 #undef DECLARE_HYDROGEN_ACCESSOR
2877 #undef DECLARE_CONCRETE_INSTRUCTION 2877 #undef DECLARE_CONCRETE_INSTRUCTION
2878 2878
2879 } } // namespace v8::internal 2879 } } // namespace v8::internal
2880 2880
2881 #endif // V8_ARM_LITHIUM_ARM_H_ 2881 #endif // V8_ARM_LITHIUM_ARM_H_
OLDNEW
« no previous file with comments | « src/arm/code-stubs-arm.cc ('k') | src/arm/lithium-arm.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698