OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef V8_HYDROGEN_INSTRUCTIONS_H_ | 5 #ifndef V8_HYDROGEN_INSTRUCTIONS_H_ |
6 #define V8_HYDROGEN_INSTRUCTIONS_H_ | 6 #define V8_HYDROGEN_INSTRUCTIONS_H_ |
7 | 7 |
8 #include "v8.h" | 8 #include "v8.h" |
9 | 9 |
10 #include "allocation.h" | 10 #include "allocation.h" |
(...skipping 6388 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6399 }; | 6399 }; |
6400 | 6400 |
6401 class ArrayInstructionInterface { | 6401 class ArrayInstructionInterface { |
6402 public: | 6402 public: |
6403 virtual HValue* GetKey() = 0; | 6403 virtual HValue* GetKey() = 0; |
6404 virtual void SetKey(HValue* key) = 0; | 6404 virtual void SetKey(HValue* key) = 0; |
6405 virtual void SetIndexOffset(uint32_t index_offset) = 0; | 6405 virtual void SetIndexOffset(uint32_t index_offset) = 0; |
6406 virtual int MaxIndexOffsetBits() = 0; | 6406 virtual int MaxIndexOffsetBits() = 0; |
6407 virtual bool IsDehoisted() = 0; | 6407 virtual bool IsDehoisted() = 0; |
6408 virtual void SetDehoisted(bool is_dehoisted) = 0; | 6408 virtual void SetDehoisted(bool is_dehoisted) = 0; |
6409 virtual ~ArrayInstructionInterface() { }; | 6409 virtual ~ArrayInstructionInterface() { } |
6410 | 6410 |
6411 static Representation KeyedAccessIndexRequirement(Representation r) { | 6411 static Representation KeyedAccessIndexRequirement(Representation r) { |
6412 return r.IsInteger32() || SmiValuesAre32Bits() | 6412 return r.IsInteger32() || SmiValuesAre32Bits() |
6413 ? Representation::Integer32() : Representation::Smi(); | 6413 ? Representation::Integer32() : Representation::Smi(); |
6414 } | 6414 } |
6415 }; | 6415 }; |
6416 | 6416 |
6417 | 6417 |
6418 enum LoadKeyedHoleMode { | 6418 enum LoadKeyedHoleMode { |
6419 NEVER_RETURN_HOLE, | 6419 NEVER_RETURN_HOLE, |
(...skipping 1288 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7708 virtual bool IsDeletable() const V8_OVERRIDE { return true; } | 7708 virtual bool IsDeletable() const V8_OVERRIDE { return true; } |
7709 }; | 7709 }; |
7710 | 7710 |
7711 | 7711 |
7712 #undef DECLARE_INSTRUCTION | 7712 #undef DECLARE_INSTRUCTION |
7713 #undef DECLARE_CONCRETE_INSTRUCTION | 7713 #undef DECLARE_CONCRETE_INSTRUCTION |
7714 | 7714 |
7715 } } // namespace v8::internal | 7715 } } // namespace v8::internal |
7716 | 7716 |
7717 #endif // V8_HYDROGEN_INSTRUCTIONS_H_ | 7717 #endif // V8_HYDROGEN_INSTRUCTIONS_H_ |
OLD | NEW |