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

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

Issue 546733003: MIPS: To aid vector-based load ic work, we need to be able to handle the megamorphic load case in h… (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 6 years, 3 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/mips/lithium-codegen-mips.cc ('k') | src/mips/lithium-mips.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_MIPS_LITHIUM_MIPS_H_ 5 #ifndef V8_MIPS_LITHIUM_MIPS_H_
6 #define V8_MIPS_LITHIUM_MIPS_H_ 6 #define V8_MIPS_LITHIUM_MIPS_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 134 matching lines...) Expand 10 before | Expand all | Expand 10 after
145 V(StoreKeyed) \ 145 V(StoreKeyed) \
146 V(StoreKeyedGeneric) \ 146 V(StoreKeyedGeneric) \
147 V(StoreNamedField) \ 147 V(StoreNamedField) \
148 V(StoreNamedGeneric) \ 148 V(StoreNamedGeneric) \
149 V(StringAdd) \ 149 V(StringAdd) \
150 V(StringCharCodeAt) \ 150 V(StringCharCodeAt) \
151 V(StringCharFromCode) \ 151 V(StringCharFromCode) \
152 V(StringCompareAndBranch) \ 152 V(StringCompareAndBranch) \
153 V(SubI) \ 153 V(SubI) \
154 V(TaggedToI) \ 154 V(TaggedToI) \
155 V(TailCallThroughMegamorphicCache) \
155 V(ThisFunction) \ 156 V(ThisFunction) \
156 V(ToFastProperties) \ 157 V(ToFastProperties) \
157 V(TransitionElementsKind) \ 158 V(TransitionElementsKind) \
158 V(TrapAllocationMemento) \ 159 V(TrapAllocationMemento) \
159 V(Typeof) \ 160 V(Typeof) \
160 V(TypeofIsAndBranch) \ 161 V(TypeofIsAndBranch) \
161 V(Uint32ToDouble) \ 162 V(Uint32ToDouble) \
162 V(UnknownOSRValue) \ 163 V(UnknownOSRValue) \
163 V(WrapReceiver) 164 V(WrapReceiver)
164 165
(...skipping 309 matching lines...) Expand 10 before | Expand all | Expand 10 after
474 inputs_[0] = context; 475 inputs_[0] = context;
475 } 476 }
476 477
477 LOperand* context() { return inputs_[0]; } 478 LOperand* context() { return inputs_[0]; }
478 479
479 DECLARE_CONCRETE_INSTRUCTION(CallStub, "call-stub") 480 DECLARE_CONCRETE_INSTRUCTION(CallStub, "call-stub")
480 DECLARE_HYDROGEN_ACCESSOR(CallStub) 481 DECLARE_HYDROGEN_ACCESSOR(CallStub)
481 }; 482 };
482 483
483 484
485 class LTailCallThroughMegamorphicCache FINAL
486 : public LTemplateInstruction<0, 3, 0> {
487 public:
488 explicit LTailCallThroughMegamorphicCache(LOperand* context,
489 LOperand* receiver,
490 LOperand* name) {
491 inputs_[0] = context;
492 inputs_[1] = receiver;
493 inputs_[2] = name;
494 }
495
496 LOperand* context() { return inputs_[0]; }
497 LOperand* receiver() { return inputs_[1]; }
498 LOperand* name() { return inputs_[2]; }
499
500 DECLARE_CONCRETE_INSTRUCTION(TailCallThroughMegamorphicCache,
501 "tail-call-through-megamorphic-cache")
502 DECLARE_HYDROGEN_ACCESSOR(TailCallThroughMegamorphicCache)
503 };
504
505
484 class LUnknownOSRValue FINAL : public LTemplateInstruction<1, 0, 0> { 506 class LUnknownOSRValue FINAL : public LTemplateInstruction<1, 0, 0> {
485 public: 507 public:
486 virtual bool HasInterestingComment(LCodeGen* gen) const OVERRIDE { 508 virtual bool HasInterestingComment(LCodeGen* gen) const OVERRIDE {
487 return false; 509 return false;
488 } 510 }
489 DECLARE_CONCRETE_INSTRUCTION(UnknownOSRValue, "unknown-osr-value") 511 DECLARE_CONCRETE_INSTRUCTION(UnknownOSRValue, "unknown-osr-value")
490 }; 512 };
491 513
492 514
493 template<int I, int T> 515 template<int I, int T>
(...skipping 2360 matching lines...) Expand 10 before | Expand all | Expand 10 after
2854 2876
2855 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); 2877 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder);
2856 }; 2878 };
2857 2879
2858 #undef DECLARE_HYDROGEN_ACCESSOR 2880 #undef DECLARE_HYDROGEN_ACCESSOR
2859 #undef DECLARE_CONCRETE_INSTRUCTION 2881 #undef DECLARE_CONCRETE_INSTRUCTION
2860 2882
2861 } } // namespace v8::internal 2883 } } // namespace v8::internal
2862 2884
2863 #endif // V8_MIPS_LITHIUM_MIPS_H_ 2885 #endif // V8_MIPS_LITHIUM_MIPS_H_
OLDNEW
« no previous file with comments | « src/mips/lithium-codegen-mips.cc ('k') | src/mips/lithium-mips.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698