OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 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 1251 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1262 }; | 1262 }; |
1263 | 1263 |
1264 | 1264 |
1265 class LLoadGlobal: public LTemplateInstruction<1, 0, 0> { | 1265 class LLoadGlobal: public LTemplateInstruction<1, 0, 0> { |
1266 public: | 1266 public: |
1267 DECLARE_CONCRETE_INSTRUCTION(LoadGlobal, "load-global") | 1267 DECLARE_CONCRETE_INSTRUCTION(LoadGlobal, "load-global") |
1268 DECLARE_HYDROGEN_ACCESSOR(LoadGlobal) | 1268 DECLARE_HYDROGEN_ACCESSOR(LoadGlobal) |
1269 }; | 1269 }; |
1270 | 1270 |
1271 | 1271 |
1272 class LStoreGlobal: public LTemplateInstruction<0, 1, 0> { | 1272 class LStoreGlobal: public LTemplateInstruction<0, 1, 1> { |
1273 public: | 1273 public: |
1274 explicit LStoreGlobal(LOperand* value) { | 1274 explicit LStoreGlobal(LOperand* value, LOperand* temp) { |
1275 inputs_[0] = value; | 1275 inputs_[0] = value; |
| 1276 temps_[0] = temp; |
1276 } | 1277 } |
1277 | 1278 |
1278 DECLARE_CONCRETE_INSTRUCTION(StoreGlobal, "store-global") | 1279 DECLARE_CONCRETE_INSTRUCTION(StoreGlobal, "store-global") |
1279 DECLARE_HYDROGEN_ACCESSOR(StoreGlobal) | 1280 DECLARE_HYDROGEN_ACCESSOR(StoreGlobal) |
1280 }; | 1281 }; |
1281 | 1282 |
1282 | 1283 |
1283 class LLoadContextSlot: public LTemplateInstruction<1, 0, 0> { | 1284 class LLoadContextSlot: public LTemplateInstruction<1, 0, 0> { |
1284 public: | 1285 public: |
1285 DECLARE_CONCRETE_INSTRUCTION(LoadContextSlot, "load-context-slot") | 1286 DECLARE_CONCRETE_INSTRUCTION(LoadContextSlot, "load-context-slot") |
(...skipping 309 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1595 public: | 1596 public: |
1596 explicit LCheckFunction(LOperand* value) { | 1597 explicit LCheckFunction(LOperand* value) { |
1597 inputs_[0] = value; | 1598 inputs_[0] = value; |
1598 } | 1599 } |
1599 | 1600 |
1600 DECLARE_CONCRETE_INSTRUCTION(CheckFunction, "check-function") | 1601 DECLARE_CONCRETE_INSTRUCTION(CheckFunction, "check-function") |
1601 DECLARE_HYDROGEN_ACCESSOR(CheckFunction) | 1602 DECLARE_HYDROGEN_ACCESSOR(CheckFunction) |
1602 }; | 1603 }; |
1603 | 1604 |
1604 | 1605 |
1605 class LCheckInstanceType: public LTemplateInstruction<0, 1, 1> { | 1606 class LCheckInstanceType: public LTemplateInstruction<0, 1, 0> { |
1606 public: | 1607 public: |
1607 LCheckInstanceType(LOperand* value, LOperand* temp) { | 1608 explicit LCheckInstanceType(LOperand* value) { |
1608 inputs_[0] = value; | 1609 inputs_[0] = value; |
1609 temps_[0] = temp; | |
1610 } | 1610 } |
1611 | 1611 |
1612 DECLARE_CONCRETE_INSTRUCTION(CheckInstanceType, "check-instance-type") | 1612 DECLARE_CONCRETE_INSTRUCTION(CheckInstanceType, "check-instance-type") |
1613 DECLARE_HYDROGEN_ACCESSOR(CheckInstanceType) | 1613 DECLARE_HYDROGEN_ACCESSOR(CheckInstanceType) |
1614 }; | 1614 }; |
1615 | 1615 |
1616 | 1616 |
1617 class LCheckMap: public LTemplateInstruction<0, 1, 0> { | 1617 class LCheckMap: public LTemplateInstruction<0, 1, 0> { |
1618 public: | 1618 public: |
1619 explicit LCheckMap(LOperand* value) { | 1619 explicit LCheckMap(LOperand* value) { |
(...skipping 367 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1987 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); | 1987 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); |
1988 }; | 1988 }; |
1989 | 1989 |
1990 #undef DECLARE_HYDROGEN_ACCESSOR | 1990 #undef DECLARE_HYDROGEN_ACCESSOR |
1991 #undef DECLARE_INSTRUCTION | 1991 #undef DECLARE_INSTRUCTION |
1992 #undef DECLARE_CONCRETE_INSTRUCTION | 1992 #undef DECLARE_CONCRETE_INSTRUCTION |
1993 | 1993 |
1994 } } // namespace v8::int | 1994 } } // namespace v8::int |
1995 | 1995 |
1996 #endif // V8_X64_LITHIUM_X64_H_ | 1996 #endif // V8_X64_LITHIUM_X64_H_ |
OLD | NEW |