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 719 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
730 | 730 |
731 LOperand* context() { return inputs_[0]; } | 731 LOperand* context() { return inputs_[0]; } |
732 LOperand* left() { return inputs_[1]; } | 732 LOperand* left() { return inputs_[1]; } |
733 LOperand* right() { return inputs_[2]; } | 733 LOperand* right() { return inputs_[2]; } |
734 Token::Value op() const { return op_; } | 734 Token::Value op() const { return op_; } |
735 | 735 |
736 Opcode opcode() const override { return LInstruction::kArithmeticT; } | 736 Opcode opcode() const override { return LInstruction::kArithmeticT; } |
737 void CompileToNative(LCodeGen* generator) override; | 737 void CompileToNative(LCodeGen* generator) override; |
738 const char* Mnemonic() const override; | 738 const char* Mnemonic() const override; |
739 | 739 |
| 740 DECLARE_HYDROGEN_ACCESSOR(BinaryOperation) |
| 741 |
| 742 LanguageMode language_mode() { return hydrogen()->language_mode(); } |
| 743 |
740 private: | 744 private: |
741 Token::Value op_; | 745 Token::Value op_; |
742 }; | 746 }; |
743 | 747 |
744 | 748 |
745 class LBoundsCheck final : public LTemplateInstruction<0, 2, 0> { | 749 class LBoundsCheck final : public LTemplateInstruction<0, 2, 0> { |
746 public: | 750 public: |
747 explicit LBoundsCheck(LOperand* index, LOperand* length) { | 751 explicit LBoundsCheck(LOperand* index, LOperand* length) { |
748 inputs_[0] = index; | 752 inputs_[0] = index; |
749 inputs_[1] = length; | 753 inputs_[1] = length; |
(...skipping 2475 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3225 | 3229 |
3226 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); | 3230 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); |
3227 }; | 3231 }; |
3228 | 3232 |
3229 #undef DECLARE_HYDROGEN_ACCESSOR | 3233 #undef DECLARE_HYDROGEN_ACCESSOR |
3230 #undef DECLARE_CONCRETE_INSTRUCTION | 3234 #undef DECLARE_CONCRETE_INSTRUCTION |
3231 | 3235 |
3232 } } // namespace v8::internal | 3236 } } // namespace v8::internal |
3233 | 3237 |
3234 #endif // V8_ARM64_LITHIUM_ARM64_H_ | 3238 #endif // V8_ARM64_LITHIUM_ARM64_H_ |
OLD | NEW |