OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 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_COMPILER_ACCESS_BUILDER_H_ | 5 #ifndef V8_COMPILER_ACCESS_BUILDER_H_ |
6 #define V8_COMPILER_ACCESS_BUILDER_H_ | 6 #define V8_COMPILER_ACCESS_BUILDER_H_ |
7 | 7 |
8 #include "src/compiler/simplified-operator.h" | 8 #include "src/compiler/simplified-operator.h" |
9 #include "src/elements-kind.h" | 9 #include "src/elements-kind.h" |
10 | 10 |
(...skipping 181 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
192 // Provides access to FixedArray slots. | 192 // Provides access to FixedArray slots. |
193 static FieldAccess ForFixedArraySlot(size_t index); | 193 static FieldAccess ForFixedArraySlot(size_t index); |
194 | 194 |
195 // Provides access to Context slots. | 195 // Provides access to Context slots. |
196 static FieldAccess ForContextSlot(size_t index); | 196 static FieldAccess ForContextSlot(size_t index); |
197 | 197 |
198 // Provides access to PropertyCell::value() field. | 198 // Provides access to PropertyCell::value() field. |
199 static FieldAccess ForPropertyCellValue(); | 199 static FieldAccess ForPropertyCellValue(); |
200 static FieldAccess ForPropertyCellValue(Type* type); | 200 static FieldAccess ForPropertyCellValue(Type* type); |
201 | 201 |
| 202 // Provides access to ContextExtension fields. |
| 203 static FieldAccess ForContextExtensionScopeInfo(); |
| 204 static FieldAccess ForContextExtensionExtension(); |
| 205 |
202 // Provides access to FixedArray elements. | 206 // Provides access to FixedArray elements. |
203 static ElementAccess ForFixedArrayElement(); | 207 static ElementAccess ForFixedArrayElement(); |
204 static ElementAccess ForFixedArrayElement(ElementsKind kind); | 208 static ElementAccess ForFixedArrayElement(ElementsKind kind); |
205 | 209 |
206 // Provides access to FixedDoubleArray elements. | 210 // Provides access to FixedDoubleArray elements. |
207 static ElementAccess ForFixedDoubleArrayElement(); | 211 static ElementAccess ForFixedDoubleArrayElement(); |
208 | 212 |
209 // Provides access to Fixed{type}TypedArray and External{type}Array elements. | 213 // Provides access to Fixed{type}TypedArray and External{type}Array elements. |
210 static ElementAccess ForTypedArrayElement(ExternalArrayType type, | 214 static ElementAccess ForTypedArrayElement(ExternalArrayType type, |
211 bool is_external); | 215 bool is_external); |
212 | 216 |
213 private: | 217 private: |
214 DISALLOW_IMPLICIT_CONSTRUCTORS(AccessBuilder); | 218 DISALLOW_IMPLICIT_CONSTRUCTORS(AccessBuilder); |
215 }; | 219 }; |
216 | 220 |
217 } // namespace compiler | 221 } // namespace compiler |
218 } // namespace internal | 222 } // namespace internal |
219 } // namespace v8 | 223 } // namespace v8 |
220 | 224 |
221 #endif // V8_COMPILER_ACCESS_BUILDER_H_ | 225 #endif // V8_COMPILER_ACCESS_BUILDER_H_ |
OLD | NEW |