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 "src/v8.h" | 8 #include "src/v8.h" |
9 | 9 |
10 #include "src/allocation.h" | 10 #include "src/allocation.h" |
(...skipping 6097 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6108 | 6108 |
6109 static HObjectAccess ForAllocationMementoSite() { | 6109 static HObjectAccess ForAllocationMementoSite() { |
6110 return HObjectAccess(kInobject, AllocationMemento::kAllocationSiteOffset); | 6110 return HObjectAccess(kInobject, AllocationMemento::kAllocationSiteOffset); |
6111 } | 6111 } |
6112 | 6112 |
6113 static HObjectAccess ForCounter() { | 6113 static HObjectAccess ForCounter() { |
6114 return HObjectAccess(kExternalMemory, 0, Representation::Integer32(), | 6114 return HObjectAccess(kExternalMemory, 0, Representation::Integer32(), |
6115 Handle<String>::null(), false, false); | 6115 Handle<String>::null(), false, false); |
6116 } | 6116 } |
6117 | 6117 |
| 6118 static HObjectAccess ForExternalUInteger8() { |
| 6119 return HObjectAccess(kExternalMemory, 0, Representation::UInteger8(), |
| 6120 Handle<String>::null(), false, false); |
| 6121 } |
| 6122 |
6118 // Create an access to an offset in a fixed array header. | 6123 // Create an access to an offset in a fixed array header. |
6119 static HObjectAccess ForFixedArrayHeader(int offset); | 6124 static HObjectAccess ForFixedArrayHeader(int offset); |
6120 | 6125 |
6121 // Create an access to an in-object property in a JSObject. | 6126 // Create an access to an in-object property in a JSObject. |
6122 // This kind of access must be used when the object |map| is known and | 6127 // This kind of access must be used when the object |map| is known and |
6123 // in-object properties are being accessed. Accesses of the in-object | 6128 // in-object properties are being accessed. Accesses of the in-object |
6124 // properties can have different semantics depending on whether corresponding | 6129 // properties can have different semantics depending on whether corresponding |
6125 // property was added to the map or not. | 6130 // property was added to the map or not. |
6126 static HObjectAccess ForMapAndOffset(Handle<Map> map, int offset, | 6131 static HObjectAccess ForMapAndOffset(Handle<Map> map, int offset, |
6127 Representation representation = Representation::Tagged()); | 6132 Representation representation = Representation::Tagged()); |
(...skipping 1674 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7802 }; | 7807 }; |
7803 | 7808 |
7804 | 7809 |
7805 | 7810 |
7806 #undef DECLARE_INSTRUCTION | 7811 #undef DECLARE_INSTRUCTION |
7807 #undef DECLARE_CONCRETE_INSTRUCTION | 7812 #undef DECLARE_CONCRETE_INSTRUCTION |
7808 | 7813 |
7809 } } // namespace v8::internal | 7814 } } // namespace v8::internal |
7810 | 7815 |
7811 #endif // V8_HYDROGEN_INSTRUCTIONS_H_ | 7816 #endif // V8_HYDROGEN_INSTRUCTIONS_H_ |
OLD | NEW |