| 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 6798 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6809 return StoringValueNeedsWriteBarrier(value()) && | 6809 return StoringValueNeedsWriteBarrier(value()) && |
| 6810 ReceiverObjectNeedsWriteBarrier(object(), value(), | 6810 ReceiverObjectNeedsWriteBarrier(object(), value(), |
| 6811 new_space_dominator()); | 6811 new_space_dominator()); |
| 6812 } | 6812 } |
| 6813 | 6813 |
| 6814 bool NeedsWriteBarrierForMap() { | 6814 bool NeedsWriteBarrierForMap() { |
| 6815 return ReceiverObjectNeedsWriteBarrier(object(), transition(), | 6815 return ReceiverObjectNeedsWriteBarrier(object(), transition(), |
| 6816 new_space_dominator()); | 6816 new_space_dominator()); |
| 6817 } | 6817 } |
| 6818 | 6818 |
| 6819 SmiCheck SmiCheckForWriteBarrier() const { |
| 6820 if (field_representation().IsHeapObject()) return OMIT_SMI_CHECK; |
| 6821 if (value()->IsHeapObject()) return OMIT_SMI_CHECK; |
| 6822 return INLINE_SMI_CHECK; |
| 6823 } |
| 6824 |
| 6819 Representation field_representation() const { | 6825 Representation field_representation() const { |
| 6820 return access_.representation(); | 6826 return access_.representation(); |
| 6821 } | 6827 } |
| 6822 | 6828 |
| 6823 void UpdateValue(HValue* value) { | 6829 void UpdateValue(HValue* value) { |
| 6824 SetOperandAt(1, value); | 6830 SetOperandAt(1, value); |
| 6825 } | 6831 } |
| 6826 | 6832 |
| 6827 bool CanBeReplacedWith(HStoreNamedField* that) const { | 6833 bool CanBeReplacedWith(HStoreNamedField* that) const { |
| 6828 if (!this->access().Equals(that->access())) return false; | 6834 if (!this->access().Equals(that->access())) return false; |
| (...skipping 974 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7803 virtual bool IsDeletable() const V8_OVERRIDE { return true; } | 7809 virtual bool IsDeletable() const V8_OVERRIDE { return true; } |
| 7804 }; | 7810 }; |
| 7805 | 7811 |
| 7806 | 7812 |
| 7807 #undef DECLARE_INSTRUCTION | 7813 #undef DECLARE_INSTRUCTION |
| 7808 #undef DECLARE_CONCRETE_INSTRUCTION | 7814 #undef DECLARE_CONCRETE_INSTRUCTION |
| 7809 | 7815 |
| 7810 } } // namespace v8::internal | 7816 } } // namespace v8::internal |
| 7811 | 7817 |
| 7812 #endif // V8_HYDROGEN_INSTRUCTIONS_H_ | 7818 #endif // V8_HYDROGEN_INSTRUCTIONS_H_ |
| OLD | NEW |