| 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 156 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 167 V(StoreNamedField) \ | 167 V(StoreNamedField) \ |
| 168 V(StoreNamedGeneric) \ | 168 V(StoreNamedGeneric) \ |
| 169 V(StringAdd) \ | 169 V(StringAdd) \ |
| 170 V(StringCharCodeAt) \ | 170 V(StringCharCodeAt) \ |
| 171 V(StringCharFromCode) \ | 171 V(StringCharFromCode) \ |
| 172 V(StringLength) \ | 172 V(StringLength) \ |
| 173 V(Sub) \ | 173 V(Sub) \ |
| 174 V(ThisFunction) \ | 174 V(ThisFunction) \ |
| 175 V(Throw) \ | 175 V(Throw) \ |
| 176 V(ToFastProperties) \ | 176 V(ToFastProperties) \ |
| 177 V(ToInt32) \ | |
| 178 V(TransitionElementsKind) \ | 177 V(TransitionElementsKind) \ |
| 179 V(Typeof) \ | 178 V(Typeof) \ |
| 180 V(TypeofIsAndBranch) \ | 179 V(TypeofIsAndBranch) \ |
| 181 V(UnaryMathOperation) \ | 180 V(UnaryMathOperation) \ |
| 182 V(UnknownOSRValue) \ | 181 V(UnknownOSRValue) \ |
| 183 V(UseConst) \ | 182 V(UseConst) \ |
| 184 V(ValueOf) \ | 183 V(ValueOf) \ |
| 185 V(ForInPrepareMap) \ | 184 V(ForInPrepareMap) \ |
| 186 V(ForInCacheArray) \ | 185 V(ForInCacheArray) \ |
| 187 V(CheckMapValue) \ | 186 V(CheckMapValue) \ |
| (...skipping 1048 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1236 return Representation::None(); | 1235 return Representation::None(); |
| 1237 } | 1236 } |
| 1238 | 1237 |
| 1239 DECLARE_CONCRETE_INSTRUCTION(ClampToUint8) | 1238 DECLARE_CONCRETE_INSTRUCTION(ClampToUint8) |
| 1240 | 1239 |
| 1241 protected: | 1240 protected: |
| 1242 virtual bool DataEquals(HValue* other) { return true; } | 1241 virtual bool DataEquals(HValue* other) { return true; } |
| 1243 }; | 1242 }; |
| 1244 | 1243 |
| 1245 | 1244 |
| 1246 class HToInt32: public HUnaryOperation { | |
| 1247 public: | |
| 1248 explicit HToInt32(HValue* value) | |
| 1249 : HUnaryOperation(value) { | |
| 1250 set_representation(Representation::Integer32()); | |
| 1251 SetFlag(kUseGVN); | |
| 1252 SetFlag(kTruncatingToInt32); | |
| 1253 } | |
| 1254 | |
| 1255 virtual Representation RequiredInputRepresentation(int index) { | |
| 1256 return Representation::None(); | |
| 1257 } | |
| 1258 | |
| 1259 virtual HValue* Canonicalize() { | |
| 1260 if (value()->representation().IsInteger32()) { | |
| 1261 return value(); | |
| 1262 } else { | |
| 1263 return this; | |
| 1264 } | |
| 1265 } | |
| 1266 | |
| 1267 DECLARE_CONCRETE_INSTRUCTION(ToInt32) | |
| 1268 | |
| 1269 protected: | |
| 1270 virtual bool DataEquals(HValue* other) { return true; } | |
| 1271 }; | |
| 1272 | |
| 1273 | |
| 1274 class HSimulate: public HInstruction { | 1245 class HSimulate: public HInstruction { |
| 1275 public: | 1246 public: |
| 1276 HSimulate(int ast_id, int pop_count) | 1247 HSimulate(int ast_id, int pop_count) |
| 1277 : ast_id_(ast_id), | 1248 : ast_id_(ast_id), |
| 1278 pop_count_(pop_count), | 1249 pop_count_(pop_count), |
| 1279 values_(2), | 1250 values_(2), |
| 1280 assigned_indexes_(2) {} | 1251 assigned_indexes_(2) {} |
| 1281 virtual ~HSimulate() {} | 1252 virtual ~HSimulate() {} |
| 1282 | 1253 |
| 1283 virtual void PrintDataTo(StringStream* stream); | 1254 virtual void PrintDataTo(StringStream* stream); |
| (...skipping 3520 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4804 DECLARE_CONCRETE_INSTRUCTION(LoadFieldByIndex); | 4775 DECLARE_CONCRETE_INSTRUCTION(LoadFieldByIndex); |
| 4805 }; | 4776 }; |
| 4806 | 4777 |
| 4807 | 4778 |
| 4808 #undef DECLARE_INSTRUCTION | 4779 #undef DECLARE_INSTRUCTION |
| 4809 #undef DECLARE_CONCRETE_INSTRUCTION | 4780 #undef DECLARE_CONCRETE_INSTRUCTION |
| 4810 | 4781 |
| 4811 } } // namespace v8::internal | 4782 } } // namespace v8::internal |
| 4812 | 4783 |
| 4813 #endif // V8_HYDROGEN_INSTRUCTIONS_H_ | 4784 #endif // V8_HYDROGEN_INSTRUCTIONS_H_ |
| OLD | NEW |