| OLD | NEW |
| 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 1567 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1578 inputs_[0] = object; | 1578 inputs_[0] = object; |
| 1579 } | 1579 } |
| 1580 | 1580 |
| 1581 LOperand* object() { return inputs_[0]; } | 1581 LOperand* object() { return inputs_[0]; } |
| 1582 | 1582 |
| 1583 DECLARE_CONCRETE_INSTRUCTION(LoadNamedField, "load-named-field") | 1583 DECLARE_CONCRETE_INSTRUCTION(LoadNamedField, "load-named-field") |
| 1584 DECLARE_HYDROGEN_ACCESSOR(LoadNamedField) | 1584 DECLARE_HYDROGEN_ACCESSOR(LoadNamedField) |
| 1585 }; | 1585 }; |
| 1586 | 1586 |
| 1587 | 1587 |
| 1588 class LLoadNamedGeneric V8_FINAL : public LTemplateInstruction<1, 2, 0> { | 1588 class LLoadNamedGeneric V8_FINAL : public LTemplateInstruction<1, 2, 1> { |
| 1589 public: | 1589 public: |
| 1590 LLoadNamedGeneric(LOperand* context, LOperand* object) { | 1590 LLoadNamedGeneric(LOperand* context, LOperand* object, LOperand* vector) { |
| 1591 inputs_[0] = context; | 1591 inputs_[0] = context; |
| 1592 inputs_[1] = object; | 1592 inputs_[1] = object; |
| 1593 temps_[0] = vector; |
| 1593 } | 1594 } |
| 1594 | 1595 |
| 1595 LOperand* context() { return inputs_[0]; } | 1596 LOperand* context() { return inputs_[0]; } |
| 1596 LOperand* object() { return inputs_[1]; } | 1597 LOperand* object() { return inputs_[1]; } |
| 1598 LOperand* temp_vector() { return temps_[0]; } |
| 1597 | 1599 |
| 1598 DECLARE_CONCRETE_INSTRUCTION(LoadNamedGeneric, "load-named-generic") | 1600 DECLARE_CONCRETE_INSTRUCTION(LoadNamedGeneric, "load-named-generic") |
| 1599 DECLARE_HYDROGEN_ACCESSOR(LoadNamedGeneric) | 1601 DECLARE_HYDROGEN_ACCESSOR(LoadNamedGeneric) |
| 1600 | 1602 |
| 1601 Handle<Object> name() const { return hydrogen()->name(); } | 1603 Handle<Object> name() const { return hydrogen()->name(); } |
| 1602 }; | 1604 }; |
| 1603 | 1605 |
| 1604 | 1606 |
| 1605 class LLoadFunctionPrototype V8_FINAL : public LTemplateInstruction<1, 1, 0> { | 1607 class LLoadFunctionPrototype V8_FINAL : public LTemplateInstruction<1, 1, 0> { |
| 1606 public: | 1608 public: |
| (...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1647 } | 1649 } |
| 1648 | 1650 |
| 1649 DECLARE_CONCRETE_INSTRUCTION(LoadKeyed, "load-keyed") | 1651 DECLARE_CONCRETE_INSTRUCTION(LoadKeyed, "load-keyed") |
| 1650 DECLARE_HYDROGEN_ACCESSOR(LoadKeyed) | 1652 DECLARE_HYDROGEN_ACCESSOR(LoadKeyed) |
| 1651 | 1653 |
| 1652 virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; | 1654 virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
| 1653 uint32_t base_offset() const { return hydrogen()->base_offset(); } | 1655 uint32_t base_offset() const { return hydrogen()->base_offset(); } |
| 1654 }; | 1656 }; |
| 1655 | 1657 |
| 1656 | 1658 |
| 1657 class LLoadKeyedGeneric V8_FINAL : public LTemplateInstruction<1, 3, 0> { | 1659 class LLoadKeyedGeneric V8_FINAL : public LTemplateInstruction<1, 3, 1> { |
| 1658 public: | 1660 public: |
| 1659 LLoadKeyedGeneric(LOperand* context, LOperand* object, LOperand* key) { | 1661 LLoadKeyedGeneric(LOperand* context, LOperand* object, LOperand* key, |
| 1662 LOperand* vector) { |
| 1660 inputs_[0] = context; | 1663 inputs_[0] = context; |
| 1661 inputs_[1] = object; | 1664 inputs_[1] = object; |
| 1662 inputs_[2] = key; | 1665 inputs_[2] = key; |
| 1666 temps_[0] = vector; |
| 1663 } | 1667 } |
| 1664 | 1668 |
| 1665 LOperand* context() { return inputs_[0]; } | 1669 LOperand* context() { return inputs_[0]; } |
| 1666 LOperand* object() { return inputs_[1]; } | 1670 LOperand* object() { return inputs_[1]; } |
| 1667 LOperand* key() { return inputs_[2]; } | 1671 LOperand* key() { return inputs_[2]; } |
| 1672 LOperand* temp_vector() { return temps_[0]; } |
| 1668 | 1673 |
| 1669 DECLARE_CONCRETE_INSTRUCTION(LoadKeyedGeneric, "load-keyed-generic") | 1674 DECLARE_CONCRETE_INSTRUCTION(LoadKeyedGeneric, "load-keyed-generic") |
| 1675 DECLARE_HYDROGEN_ACCESSOR(LoadKeyedGeneric) |
| 1670 }; | 1676 }; |
| 1671 | 1677 |
| 1672 | 1678 |
| 1673 class LLoadGlobalCell V8_FINAL : public LTemplateInstruction<1, 0, 0> { | 1679 class LLoadGlobalCell V8_FINAL : public LTemplateInstruction<1, 0, 0> { |
| 1674 public: | 1680 public: |
| 1675 DECLARE_CONCRETE_INSTRUCTION(LoadGlobalCell, "load-global-cell") | 1681 DECLARE_CONCRETE_INSTRUCTION(LoadGlobalCell, "load-global-cell") |
| 1676 DECLARE_HYDROGEN_ACCESSOR(LoadGlobalCell) | 1682 DECLARE_HYDROGEN_ACCESSOR(LoadGlobalCell) |
| 1677 }; | 1683 }; |
| 1678 | 1684 |
| 1679 | 1685 |
| 1680 class LLoadGlobalGeneric V8_FINAL : public LTemplateInstruction<1, 2, 0> { | 1686 class LLoadGlobalGeneric V8_FINAL : public LTemplateInstruction<1, 2, 1> { |
| 1681 public: | 1687 public: |
| 1682 LLoadGlobalGeneric(LOperand* context, LOperand* global_object) { | 1688 LLoadGlobalGeneric(LOperand* context, LOperand* global_object, |
| 1689 LOperand* vector) { |
| 1683 inputs_[0] = context; | 1690 inputs_[0] = context; |
| 1684 inputs_[1] = global_object; | 1691 inputs_[1] = global_object; |
| 1692 temps_[0] = vector; |
| 1685 } | 1693 } |
| 1686 | 1694 |
| 1687 LOperand* context() { return inputs_[0]; } | 1695 LOperand* context() { return inputs_[0]; } |
| 1688 LOperand* global_object() { return inputs_[1]; } | 1696 LOperand* global_object() { return inputs_[1]; } |
| 1697 LOperand* temp_vector() { return temps_[0]; } |
| 1689 | 1698 |
| 1690 DECLARE_CONCRETE_INSTRUCTION(LoadGlobalGeneric, "load-global-generic") | 1699 DECLARE_CONCRETE_INSTRUCTION(LoadGlobalGeneric, "load-global-generic") |
| 1691 DECLARE_HYDROGEN_ACCESSOR(LoadGlobalGeneric) | 1700 DECLARE_HYDROGEN_ACCESSOR(LoadGlobalGeneric) |
| 1692 | 1701 |
| 1693 Handle<Object> name() const { return hydrogen()->name(); } | 1702 Handle<Object> name() const { return hydrogen()->name(); } |
| 1694 bool for_typeof() const { return hydrogen()->for_typeof(); } | 1703 bool for_typeof() const { return hydrogen()->for_typeof(); } |
| 1695 }; | 1704 }; |
| 1696 | 1705 |
| 1697 | 1706 |
| 1698 class LStoreGlobalCell V8_FINAL : public LTemplateInstruction<0, 1, 1> { | 1707 class LStoreGlobalCell V8_FINAL : public LTemplateInstruction<0, 1, 1> { |
| (...skipping 1173 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2872 | 2881 |
| 2873 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); | 2882 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); |
| 2874 }; | 2883 }; |
| 2875 | 2884 |
| 2876 #undef DECLARE_HYDROGEN_ACCESSOR | 2885 #undef DECLARE_HYDROGEN_ACCESSOR |
| 2877 #undef DECLARE_CONCRETE_INSTRUCTION | 2886 #undef DECLARE_CONCRETE_INSTRUCTION |
| 2878 | 2887 |
| 2879 } } // namespace v8::internal | 2888 } } // namespace v8::internal |
| 2880 | 2889 |
| 2881 #endif // V8_ARM_LITHIUM_ARM_H_ | 2890 #endif // V8_ARM_LITHIUM_ARM_H_ |
| OLD | NEW |