| OLD | NEW |
| 1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 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_ARM64_LITHIUM_ARM64_H_ | 5 #ifndef V8_ARM64_LITHIUM_ARM64_H_ |
| 6 #define V8_ARM64_LITHIUM_ARM64_H_ | 6 #define V8_ARM64_LITHIUM_ARM64_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 147 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 158 V(StoreKeyedGeneric) \ | 158 V(StoreKeyedGeneric) \ |
| 159 V(StoreNamedField) \ | 159 V(StoreNamedField) \ |
| 160 V(StoreNamedGeneric) \ | 160 V(StoreNamedGeneric) \ |
| 161 V(StringAdd) \ | 161 V(StringAdd) \ |
| 162 V(StringCharCodeAt) \ | 162 V(StringCharCodeAt) \ |
| 163 V(StringCharFromCode) \ | 163 V(StringCharFromCode) \ |
| 164 V(StringCompareAndBranch) \ | 164 V(StringCompareAndBranch) \ |
| 165 V(SubI) \ | 165 V(SubI) \ |
| 166 V(SubS) \ | 166 V(SubS) \ |
| 167 V(TaggedToI) \ | 167 V(TaggedToI) \ |
| 168 V(TailCallThroughMegamorphicCache) \ | |
| 169 V(ThisFunction) \ | 168 V(ThisFunction) \ |
| 170 V(ToFastProperties) \ | 169 V(ToFastProperties) \ |
| 171 V(TransitionElementsKind) \ | 170 V(TransitionElementsKind) \ |
| 172 V(TrapAllocationMemento) \ | 171 V(TrapAllocationMemento) \ |
| 173 V(TruncateDoubleToIntOrSmi) \ | 172 V(TruncateDoubleToIntOrSmi) \ |
| 174 V(Typeof) \ | 173 V(Typeof) \ |
| 175 V(TypeofIsAndBranch) \ | 174 V(TypeofIsAndBranch) \ |
| 176 V(Uint32ToDouble) \ | 175 V(Uint32ToDouble) \ |
| 177 V(UnknownOSRValue) \ | 176 V(UnknownOSRValue) \ |
| 178 V(WrapReceiver) | 177 V(WrapReceiver) |
| (...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 312 private: | 311 private: |
| 313 // Iterator support. | 312 // Iterator support. |
| 314 int InputCount() final { return I; } | 313 int InputCount() final { return I; } |
| 315 LOperand* InputAt(int i) final { return inputs_[i]; } | 314 LOperand* InputAt(int i) final { return inputs_[i]; } |
| 316 | 315 |
| 317 int TempCount() final { return T; } | 316 int TempCount() final { return T; } |
| 318 LOperand* TempAt(int i) final { return temps_[i]; } | 317 LOperand* TempAt(int i) final { return temps_[i]; } |
| 319 }; | 318 }; |
| 320 | 319 |
| 321 | 320 |
| 322 class LTailCallThroughMegamorphicCache final | |
| 323 : public LTemplateInstruction<0, 3, 0> { | |
| 324 public: | |
| 325 LTailCallThroughMegamorphicCache(LOperand* context, LOperand* receiver, | |
| 326 LOperand* name) { | |
| 327 inputs_[0] = context; | |
| 328 inputs_[1] = receiver; | |
| 329 inputs_[2] = name; | |
| 330 } | |
| 331 | |
| 332 LOperand* context() { return inputs_[0]; } | |
| 333 LOperand* receiver() { return inputs_[1]; } | |
| 334 LOperand* name() { return inputs_[2]; } | |
| 335 | |
| 336 DECLARE_CONCRETE_INSTRUCTION(TailCallThroughMegamorphicCache, | |
| 337 "tail-call-through-megamorphic-cache") | |
| 338 DECLARE_HYDROGEN_ACCESSOR(TailCallThroughMegamorphicCache) | |
| 339 }; | |
| 340 | |
| 341 | |
| 342 class LUnknownOSRValue final : public LTemplateInstruction<1, 0, 0> { | 321 class LUnknownOSRValue final : public LTemplateInstruction<1, 0, 0> { |
| 343 public: | 322 public: |
| 344 bool HasInterestingComment(LCodeGen* gen) const override { return false; } | 323 bool HasInterestingComment(LCodeGen* gen) const override { return false; } |
| 345 DECLARE_CONCRETE_INSTRUCTION(UnknownOSRValue, "unknown-osr-value") | 324 DECLARE_CONCRETE_INSTRUCTION(UnknownOSRValue, "unknown-osr-value") |
| 346 }; | 325 }; |
| 347 | 326 |
| 348 | 327 |
| 349 template<int I, int T> | 328 template<int I, int T> |
| 350 class LControlInstruction : public LTemplateInstruction<0, I, T> { | 329 class LControlInstruction : public LTemplateInstruction<0, I, T> { |
| 351 public: | 330 public: |
| (...skipping 2902 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3254 | 3233 |
| 3255 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); | 3234 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); |
| 3256 }; | 3235 }; |
| 3257 | 3236 |
| 3258 #undef DECLARE_HYDROGEN_ACCESSOR | 3237 #undef DECLARE_HYDROGEN_ACCESSOR |
| 3259 #undef DECLARE_CONCRETE_INSTRUCTION | 3238 #undef DECLARE_CONCRETE_INSTRUCTION |
| 3260 | 3239 |
| 3261 } } // namespace v8::internal | 3240 } } // namespace v8::internal |
| 3262 | 3241 |
| 3263 #endif // V8_ARM64_LITHIUM_ARM64_H_ | 3242 #endif // V8_ARM64_LITHIUM_ARM64_H_ |
| OLD | NEW |