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

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

Issue 403393008: MIPS: Introduce FLAG_vector_ics. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 6 years, 5 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/mips64/lithium-codegen-mips64.cc ('k') | src/mips64/lithium-mips64.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 1527 matching lines...) Expand 10 before | Expand all | Expand 10 after
1538 inputs_[0] = object; 1538 inputs_[0] = object;
1539 } 1539 }
1540 1540
1541 LOperand* object() { return inputs_[0]; } 1541 LOperand* object() { return inputs_[0]; }
1542 1542
1543 DECLARE_CONCRETE_INSTRUCTION(LoadNamedField, "load-named-field") 1543 DECLARE_CONCRETE_INSTRUCTION(LoadNamedField, "load-named-field")
1544 DECLARE_HYDROGEN_ACCESSOR(LoadNamedField) 1544 DECLARE_HYDROGEN_ACCESSOR(LoadNamedField)
1545 }; 1545 };
1546 1546
1547 1547
1548 class LLoadNamedGeneric V8_FINAL : public LTemplateInstruction<1, 2, 0> { 1548 class LLoadNamedGeneric V8_FINAL : public LTemplateInstruction<1, 2, 1> {
1549 public: 1549 public:
1550 LLoadNamedGeneric(LOperand* context, LOperand* object) { 1550 LLoadNamedGeneric(LOperand* context, LOperand* object, LOperand* vector) {
1551 inputs_[0] = context; 1551 inputs_[0] = context;
1552 inputs_[1] = object; 1552 inputs_[1] = object;
1553 temps_[0] = vector;
1553 } 1554 }
1554 1555
1555 LOperand* context() { return inputs_[0]; } 1556 LOperand* context() { return inputs_[0]; }
1556 LOperand* object() { return inputs_[1]; } 1557 LOperand* object() { return inputs_[1]; }
1558 LOperand* temp_vector() { return temps_[0]; }
1557 1559
1558 DECLARE_CONCRETE_INSTRUCTION(LoadNamedGeneric, "load-named-generic") 1560 DECLARE_CONCRETE_INSTRUCTION(LoadNamedGeneric, "load-named-generic")
1559 DECLARE_HYDROGEN_ACCESSOR(LoadNamedGeneric) 1561 DECLARE_HYDROGEN_ACCESSOR(LoadNamedGeneric)
1560 1562
1561 Handle<Object> name() const { return hydrogen()->name(); } 1563 Handle<Object> name() const { return hydrogen()->name(); }
1562 }; 1564 };
1563 1565
1564 1566
1565 class LLoadFunctionPrototype V8_FINAL : public LTemplateInstruction<1, 1, 0> { 1567 class LLoadFunctionPrototype V8_FINAL : public LTemplateInstruction<1, 1, 0> {
1566 public: 1568 public:
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
1607 } 1609 }
1608 1610
1609 DECLARE_CONCRETE_INSTRUCTION(LoadKeyed, "load-keyed") 1611 DECLARE_CONCRETE_INSTRUCTION(LoadKeyed, "load-keyed")
1610 DECLARE_HYDROGEN_ACCESSOR(LoadKeyed) 1612 DECLARE_HYDROGEN_ACCESSOR(LoadKeyed)
1611 1613
1612 virtual void PrintDataTo(StringStream* stream); 1614 virtual void PrintDataTo(StringStream* stream);
1613 uint32_t base_offset() const { return hydrogen()->base_offset(); } 1615 uint32_t base_offset() const { return hydrogen()->base_offset(); }
1614 }; 1616 };
1615 1617
1616 1618
1617 class LLoadKeyedGeneric V8_FINAL : public LTemplateInstruction<1, 3, 0> { 1619 class LLoadKeyedGeneric V8_FINAL : public LTemplateInstruction<1, 3, 1> {
1618 public: 1620 public:
1619 LLoadKeyedGeneric(LOperand* context, LOperand* object, LOperand* key) { 1621 LLoadKeyedGeneric(LOperand* context, LOperand* object, LOperand* key,
1622 LOperand* vector) {
1620 inputs_[0] = context; 1623 inputs_[0] = context;
1621 inputs_[1] = object; 1624 inputs_[1] = object;
1622 inputs_[2] = key; 1625 inputs_[2] = key;
1626 temps_[0] = vector;
1623 } 1627 }
1624 1628
1625 LOperand* context() { return inputs_[0]; } 1629 LOperand* context() { return inputs_[0]; }
1626 LOperand* object() { return inputs_[1]; } 1630 LOperand* object() { return inputs_[1]; }
1627 LOperand* key() { return inputs_[2]; } 1631 LOperand* key() { return inputs_[2]; }
1632 LOperand* temp_vector() { return temps_[0]; }
1628 1633
1629 DECLARE_CONCRETE_INSTRUCTION(LoadKeyedGeneric, "load-keyed-generic") 1634 DECLARE_CONCRETE_INSTRUCTION(LoadKeyedGeneric, "load-keyed-generic")
1635 DECLARE_HYDROGEN_ACCESSOR(LoadKeyedGeneric)
1630 }; 1636 };
1631 1637
1632 1638
1633 class LLoadGlobalCell V8_FINAL : public LTemplateInstruction<1, 0, 0> { 1639 class LLoadGlobalCell V8_FINAL : public LTemplateInstruction<1, 0, 0> {
1634 public: 1640 public:
1635 DECLARE_CONCRETE_INSTRUCTION(LoadGlobalCell, "load-global-cell") 1641 DECLARE_CONCRETE_INSTRUCTION(LoadGlobalCell, "load-global-cell")
1636 DECLARE_HYDROGEN_ACCESSOR(LoadGlobalCell) 1642 DECLARE_HYDROGEN_ACCESSOR(LoadGlobalCell)
1637 }; 1643 };
1638 1644
1639 1645
1640 class LLoadGlobalGeneric V8_FINAL : public LTemplateInstruction<1, 2, 0> { 1646 class LLoadGlobalGeneric V8_FINAL : public LTemplateInstruction<1, 2, 1> {
1641 public: 1647 public:
1642 LLoadGlobalGeneric(LOperand* context, LOperand* global_object) { 1648 LLoadGlobalGeneric(LOperand* context, LOperand* global_object,
1649 LOperand* vector) {
1643 inputs_[0] = context; 1650 inputs_[0] = context;
1644 inputs_[1] = global_object; 1651 inputs_[1] = global_object;
1652 temps_[0] = vector;
1645 } 1653 }
1646 1654
1647 LOperand* context() { return inputs_[0]; } 1655 LOperand* context() { return inputs_[0]; }
1648 LOperand* global_object() { return inputs_[1]; } 1656 LOperand* global_object() { return inputs_[1]; }
1657 LOperand* temp_vector() { return temps_[0]; }
1649 1658
1650 DECLARE_CONCRETE_INSTRUCTION(LoadGlobalGeneric, "load-global-generic") 1659 DECLARE_CONCRETE_INSTRUCTION(LoadGlobalGeneric, "load-global-generic")
1651 DECLARE_HYDROGEN_ACCESSOR(LoadGlobalGeneric) 1660 DECLARE_HYDROGEN_ACCESSOR(LoadGlobalGeneric)
1652 1661
1653 Handle<Object> name() const { return hydrogen()->name(); } 1662 Handle<Object> name() const { return hydrogen()->name(); }
1654 bool for_typeof() const { return hydrogen()->for_typeof(); } 1663 bool for_typeof() const { return hydrogen()->for_typeof(); }
1655 }; 1664 };
1656 1665
1657 1666
1658 class LStoreGlobalCell V8_FINAL : public LTemplateInstruction<0, 1, 1> { 1667 class LStoreGlobalCell V8_FINAL : public LTemplateInstruction<0, 1, 1> {
(...skipping 1153 matching lines...) Expand 10 before | Expand all | Expand 10 after
2812 2821
2813 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); 2822 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder);
2814 }; 2823 };
2815 2824
2816 #undef DECLARE_HYDROGEN_ACCESSOR 2825 #undef DECLARE_HYDROGEN_ACCESSOR
2817 #undef DECLARE_CONCRETE_INSTRUCTION 2826 #undef DECLARE_CONCRETE_INSTRUCTION
2818 2827
2819 } } // namespace v8::internal 2828 } } // namespace v8::internal
2820 2829
2821 #endif // V8_MIPS_LITHIUM_MIPS_H_ 2830 #endif // V8_MIPS_LITHIUM_MIPS_H_
OLDNEW
« no previous file with comments | « src/mips64/lithium-codegen-mips64.cc ('k') | src/mips64/lithium-mips64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698