OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 1617 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1628 | 1628 |
1629 DECLARE_CONCRETE_INSTRUCTION(SmiUntag, "smi-untag") | 1629 DECLARE_CONCRETE_INSTRUCTION(SmiUntag, "smi-untag") |
1630 | 1630 |
1631 bool needs_check() const { return needs_check_; } | 1631 bool needs_check() const { return needs_check_; } |
1632 | 1632 |
1633 private: | 1633 private: |
1634 bool needs_check_; | 1634 bool needs_check_; |
1635 }; | 1635 }; |
1636 | 1636 |
1637 | 1637 |
1638 class LStoreNamedField: public LTemplateInstruction<0, 2, 1> { | 1638 class LStoreNamedField: public LTemplateInstruction<0, 2, 2> { |
1639 public: | 1639 public: |
1640 LStoreNamedField(LOperand* object, LOperand* value, LOperand* temp) { | 1640 LStoreNamedField(LOperand* object, |
| 1641 LOperand* value, |
| 1642 LOperand* temp, |
| 1643 LOperand* temp_map) { |
1641 inputs_[0] = object; | 1644 inputs_[0] = object; |
1642 inputs_[1] = value; | 1645 inputs_[1] = value; |
1643 temps_[0] = temp; | 1646 temps_[0] = temp; |
| 1647 temps_[1] = temp_map; |
1644 } | 1648 } |
1645 | 1649 |
1646 DECLARE_CONCRETE_INSTRUCTION(StoreNamedField, "store-named-field") | 1650 DECLARE_CONCRETE_INSTRUCTION(StoreNamedField, "store-named-field") |
1647 DECLARE_HYDROGEN_ACCESSOR(StoreNamedField) | 1651 DECLARE_HYDROGEN_ACCESSOR(StoreNamedField) |
1648 | 1652 |
1649 virtual void PrintDataTo(StringStream* stream); | 1653 virtual void PrintDataTo(StringStream* stream); |
1650 | 1654 |
1651 LOperand* object() { return inputs_[0]; } | 1655 LOperand* object() { return inputs_[0]; } |
1652 LOperand* value() { return inputs_[1]; } | 1656 LOperand* value() { return inputs_[1]; } |
1653 | 1657 |
(...skipping 724 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2378 | 2382 |
2379 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); | 2383 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); |
2380 }; | 2384 }; |
2381 | 2385 |
2382 #undef DECLARE_HYDROGEN_ACCESSOR | 2386 #undef DECLARE_HYDROGEN_ACCESSOR |
2383 #undef DECLARE_CONCRETE_INSTRUCTION | 2387 #undef DECLARE_CONCRETE_INSTRUCTION |
2384 | 2388 |
2385 } } // namespace v8::int | 2389 } } // namespace v8::int |
2386 | 2390 |
2387 #endif // V8_X64_LITHIUM_X64_H_ | 2391 #endif // V8_X64_LITHIUM_X64_H_ |
OLD | NEW |