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 123 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
134 V(Parameter) \ | 134 V(Parameter) \ |
135 V(PixelArrayLength) \ | 135 V(PixelArrayLength) \ |
136 V(Power) \ | 136 V(Power) \ |
137 V(PushArgument) \ | 137 V(PushArgument) \ |
138 V(RegExpLiteral) \ | 138 V(RegExpLiteral) \ |
139 V(Return) \ | 139 V(Return) \ |
140 V(ShiftI) \ | 140 V(ShiftI) \ |
141 V(SmiTag) \ | 141 V(SmiTag) \ |
142 V(SmiUntag) \ | 142 V(SmiUntag) \ |
143 V(StackCheck) \ | 143 V(StackCheck) \ |
| 144 V(StoreContextSlot) \ |
144 V(StoreGlobal) \ | 145 V(StoreGlobal) \ |
145 V(StoreKeyedFastElement) \ | 146 V(StoreKeyedFastElement) \ |
146 V(StoreKeyedGeneric) \ | 147 V(StoreKeyedGeneric) \ |
147 V(StoreNamedField) \ | 148 V(StoreNamedField) \ |
148 V(StoreNamedGeneric) \ | 149 V(StoreNamedGeneric) \ |
149 V(StorePixelArrayElement) \ | 150 V(StorePixelArrayElement) \ |
150 V(StringCharCodeAt) \ | 151 V(StringCharCodeAt) \ |
151 V(StringLength) \ | 152 V(StringLength) \ |
152 V(SubI) \ | 153 V(SubI) \ |
153 V(TaggedToI) \ | 154 V(TaggedToI) \ |
(...skipping 1085 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1239 DECLARE_CONCRETE_INSTRUCTION(LoadContextSlot, "load-context-slot") | 1240 DECLARE_CONCRETE_INSTRUCTION(LoadContextSlot, "load-context-slot") |
1240 DECLARE_HYDROGEN_ACCESSOR(LoadContextSlot) | 1241 DECLARE_HYDROGEN_ACCESSOR(LoadContextSlot) |
1241 | 1242 |
1242 LOperand* context() { return InputAt(0); } | 1243 LOperand* context() { return InputAt(0); } |
1243 int slot_index() { return hydrogen()->slot_index(); } | 1244 int slot_index() { return hydrogen()->slot_index(); } |
1244 | 1245 |
1245 virtual void PrintDataTo(StringStream* stream); | 1246 virtual void PrintDataTo(StringStream* stream); |
1246 }; | 1247 }; |
1247 | 1248 |
1248 | 1249 |
| 1250 class LStoreContextSlot: public LTemplateInstruction<0, 2, 0> { |
| 1251 public: |
| 1252 LStoreContextSlot(LOperand* context, LOperand* value) { |
| 1253 inputs_[0] = context; |
| 1254 inputs_[1] = value; |
| 1255 } |
| 1256 |
| 1257 DECLARE_CONCRETE_INSTRUCTION(StoreContextSlot, "store-context-slot") |
| 1258 DECLARE_HYDROGEN_ACCESSOR(StoreContextSlot) |
| 1259 |
| 1260 LOperand* context() { return InputAt(0); } |
| 1261 LOperand* value() { return InputAt(1); } |
| 1262 int slot_index() { return hydrogen()->slot_index(); } |
| 1263 int needs_write_barrier() { return hydrogen()->NeedsWriteBarrier(); } |
| 1264 |
| 1265 virtual void PrintDataTo(StringStream* stream); |
| 1266 }; |
| 1267 |
| 1268 |
1249 class LPushArgument: public LTemplateInstruction<0, 1, 0> { | 1269 class LPushArgument: public LTemplateInstruction<0, 1, 0> { |
1250 public: | 1270 public: |
1251 explicit LPushArgument(LOperand* value) { | 1271 explicit LPushArgument(LOperand* value) { |
1252 inputs_[0] = value; | 1272 inputs_[0] = value; |
1253 } | 1273 } |
1254 | 1274 |
1255 DECLARE_CONCRETE_INSTRUCTION(PushArgument, "push-argument") | 1275 DECLARE_CONCRETE_INSTRUCTION(PushArgument, "push-argument") |
1256 }; | 1276 }; |
1257 | 1277 |
1258 | 1278 |
(...skipping 756 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2015 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); | 2035 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); |
2016 }; | 2036 }; |
2017 | 2037 |
2018 #undef DECLARE_HYDROGEN_ACCESSOR | 2038 #undef DECLARE_HYDROGEN_ACCESSOR |
2019 #undef DECLARE_INSTRUCTION | 2039 #undef DECLARE_INSTRUCTION |
2020 #undef DECLARE_CONCRETE_INSTRUCTION | 2040 #undef DECLARE_CONCRETE_INSTRUCTION |
2021 | 2041 |
2022 } } // namespace v8::int | 2042 } } // namespace v8::int |
2023 | 2043 |
2024 #endif // V8_X64_LITHIUM_X64_H_ | 2044 #endif // V8_X64_LITHIUM_X64_H_ |
OLD | NEW |