| 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 701 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 712 LOperand* left() { return inputs_[1]; } | 712 LOperand* left() { return inputs_[1]; } |
| 713 LOperand* right() { return inputs_[2]; } | 713 LOperand* right() { return inputs_[2]; } |
| 714 Token::Value op() const { return op_; } | 714 Token::Value op() const { return op_; } |
| 715 | 715 |
| 716 Opcode opcode() const override { return LInstruction::kArithmeticT; } | 716 Opcode opcode() const override { return LInstruction::kArithmeticT; } |
| 717 void CompileToNative(LCodeGen* generator) override; | 717 void CompileToNative(LCodeGen* generator) override; |
| 718 const char* Mnemonic() const override; | 718 const char* Mnemonic() const override; |
| 719 | 719 |
| 720 DECLARE_HYDROGEN_ACCESSOR(BinaryOperation) | 720 DECLARE_HYDROGEN_ACCESSOR(BinaryOperation) |
| 721 | 721 |
| 722 LanguageMode language_mode() { return hydrogen()->language_mode(); } | 722 Strength strength() { return hydrogen()->strength(); } |
| 723 | 723 |
| 724 private: | 724 private: |
| 725 Token::Value op_; | 725 Token::Value op_; |
| 726 }; | 726 }; |
| 727 | 727 |
| 728 | 728 |
| 729 class LBoundsCheck final : public LTemplateInstruction<0, 2, 0> { | 729 class LBoundsCheck final : public LTemplateInstruction<0, 2, 0> { |
| 730 public: | 730 public: |
| 731 explicit LBoundsCheck(LOperand* index, LOperand* length) { | 731 explicit LBoundsCheck(LOperand* index, LOperand* length) { |
| 732 inputs_[0] = index; | 732 inputs_[0] = index; |
| (...skipping 421 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1154 inputs_[2] = right; | 1154 inputs_[2] = right; |
| 1155 } | 1155 } |
| 1156 | 1156 |
| 1157 LOperand* context() { return inputs_[0]; } | 1157 LOperand* context() { return inputs_[0]; } |
| 1158 LOperand* left() { return inputs_[1]; } | 1158 LOperand* left() { return inputs_[1]; } |
| 1159 LOperand* right() { return inputs_[2]; } | 1159 LOperand* right() { return inputs_[2]; } |
| 1160 | 1160 |
| 1161 DECLARE_CONCRETE_INSTRUCTION(CmpT, "cmp-t") | 1161 DECLARE_CONCRETE_INSTRUCTION(CmpT, "cmp-t") |
| 1162 DECLARE_HYDROGEN_ACCESSOR(CompareGeneric) | 1162 DECLARE_HYDROGEN_ACCESSOR(CompareGeneric) |
| 1163 | 1163 |
| 1164 LanguageMode language_mode() { return hydrogen()->language_mode(); } | 1164 Strength strength() { return hydrogen()->strength(); } |
| 1165 | 1165 |
| 1166 Token::Value op() const { return hydrogen()->token(); } | 1166 Token::Value op() const { return hydrogen()->token(); } |
| 1167 }; | 1167 }; |
| 1168 | 1168 |
| 1169 | 1169 |
| 1170 class LCompareMinusZeroAndBranch final : public LControlInstruction<1, 1> { | 1170 class LCompareMinusZeroAndBranch final : public LControlInstruction<1, 1> { |
| 1171 public: | 1171 public: |
| 1172 LCompareMinusZeroAndBranch(LOperand* value, LOperand* temp) { | 1172 LCompareMinusZeroAndBranch(LOperand* value, LOperand* temp) { |
| 1173 inputs_[0] = value; | 1173 inputs_[0] = value; |
| 1174 temps_[0] = temp; | 1174 temps_[0] = temp; |
| (...skipping 2058 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3233 | 3233 |
| 3234 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); | 3234 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); |
| 3235 }; | 3235 }; |
| 3236 | 3236 |
| 3237 #undef DECLARE_HYDROGEN_ACCESSOR | 3237 #undef DECLARE_HYDROGEN_ACCESSOR |
| 3238 #undef DECLARE_CONCRETE_INSTRUCTION | 3238 #undef DECLARE_CONCRETE_INSTRUCTION |
| 3239 | 3239 |
| 3240 } } // namespace v8::internal | 3240 } } // namespace v8::internal |
| 3241 | 3241 |
| 3242 #endif // V8_ARM64_LITHIUM_ARM64_H_ | 3242 #endif // V8_ARM64_LITHIUM_ARM64_H_ |
| OLD | NEW |