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 2105 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2116 public: | 2116 public: |
2117 HLoadElements(HValue* value, HValue* typecheck) { | 2117 HLoadElements(HValue* value, HValue* typecheck) { |
2118 SetOperandAt(0, value); | 2118 SetOperandAt(0, value); |
2119 SetOperandAt(1, typecheck); | 2119 SetOperandAt(1, typecheck); |
2120 set_representation(Representation::Tagged()); | 2120 set_representation(Representation::Tagged()); |
2121 SetFlag(kUseGVN); | 2121 SetFlag(kUseGVN); |
2122 SetGVNFlag(kDependsOnElementsPointer); | 2122 SetGVNFlag(kDependsOnElementsPointer); |
2123 } | 2123 } |
2124 | 2124 |
2125 HValue* value() { return OperandAt(0); } | 2125 HValue* value() { return OperandAt(0); } |
| 2126 HValue* typecheck() { return OperandAt(1); } |
| 2127 |
| 2128 virtual void PrintDataTo(StringStream* stream); |
2126 | 2129 |
2127 virtual Representation RequiredInputRepresentation(int index) { | 2130 virtual Representation RequiredInputRepresentation(int index) { |
2128 return Representation::Tagged(); | 2131 return Representation::Tagged(); |
2129 } | 2132 } |
2130 | 2133 |
2131 DECLARE_CONCRETE_INSTRUCTION(LoadElements) | 2134 DECLARE_CONCRETE_INSTRUCTION(LoadElements) |
2132 | 2135 |
2133 protected: | 2136 protected: |
2134 virtual bool DataEquals(HValue* other) { return true; } | 2137 virtual bool DataEquals(HValue* other) { return true; } |
2135 | 2138 |
(...skipping 3273 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5409 virtual bool IsDeletable() const { return true; } | 5412 virtual bool IsDeletable() const { return true; } |
5410 }; | 5413 }; |
5411 | 5414 |
5412 | 5415 |
5413 #undef DECLARE_INSTRUCTION | 5416 #undef DECLARE_INSTRUCTION |
5414 #undef DECLARE_CONCRETE_INSTRUCTION | 5417 #undef DECLARE_CONCRETE_INSTRUCTION |
5415 | 5418 |
5416 } } // namespace v8::internal | 5419 } } // namespace v8::internal |
5417 | 5420 |
5418 #endif // V8_HYDROGEN_INSTRUCTIONS_H_ | 5421 #endif // V8_HYDROGEN_INSTRUCTIONS_H_ |
OLD | NEW |