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 5472 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5483 return Representation::None(); | 5483 return Representation::None(); |
5484 } | 5484 } |
5485 | 5485 |
5486 virtual Representation observed_input_representation(int index) { | 5486 virtual Representation observed_input_representation(int index) { |
5487 return RequiredInputRepresentation(index); | 5487 return RequiredInputRepresentation(index); |
5488 } | 5488 } |
5489 | 5489 |
5490 virtual void PrintDataTo(StringStream* stream); | 5490 virtual void PrintDataTo(StringStream* stream); |
5491 | 5491 |
5492 bool UsesMustHandleHole() const; | 5492 bool UsesMustHandleHole() const; |
| 5493 bool AllUsesCanTreatHoleAsNaN() const; |
5493 bool RequiresHoleCheck() const; | 5494 bool RequiresHoleCheck() const; |
5494 | 5495 |
5495 virtual Range* InferRange(Zone* zone); | 5496 virtual Range* InferRange(Zone* zone); |
5496 | 5497 |
5497 DECLARE_CONCRETE_INSTRUCTION(LoadKeyed) | 5498 DECLARE_CONCRETE_INSTRUCTION(LoadKeyed) |
5498 | 5499 |
5499 protected: | 5500 protected: |
5500 virtual bool DataEquals(HValue* other) { | 5501 virtual bool DataEquals(HValue* other) { |
5501 if (!other->IsLoadKeyed()) return false; | 5502 if (!other->IsLoadKeyed()) return false; |
5502 HLoadKeyed* other_load = HLoadKeyed::cast(other); | 5503 HLoadKeyed* other_load = HLoadKeyed::cast(other); |
(...skipping 1056 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6559 virtual bool IsDeletable() const { return true; } | 6560 virtual bool IsDeletable() const { return true; } |
6560 }; | 6561 }; |
6561 | 6562 |
6562 | 6563 |
6563 #undef DECLARE_INSTRUCTION | 6564 #undef DECLARE_INSTRUCTION |
6564 #undef DECLARE_CONCRETE_INSTRUCTION | 6565 #undef DECLARE_CONCRETE_INSTRUCTION |
6565 | 6566 |
6566 } } // namespace v8::internal | 6567 } } // namespace v8::internal |
6567 | 6568 |
6568 #endif // V8_HYDROGEN_INSTRUCTIONS_H_ | 6569 #endif // V8_HYDROGEN_INSTRUCTIONS_H_ |
OLD | NEW |