Index: src/compiler/access-builder.cc |
diff --git a/src/compiler/access-builder.cc b/src/compiler/access-builder.cc |
index 146279e94dbf3f092268de7feb045854899630d5..76e8b0688e644f843c4d181c1daed944b826bd3a 100644 |
--- a/src/compiler/access-builder.cc |
+++ b/src/compiler/access-builder.cc |
@@ -131,6 +131,14 @@ FieldAccess AccessBuilder::ForStringLength(Zone* zone) { |
// static |
+FieldAccess AccessBuilder::ForGlobalObjectNativeContext() { |
+ FieldAccess access = {kTaggedBase, GlobalObject::kNativeContextOffset, |
+ Handle<Name>(), Type::Any(), kMachAnyTagged}; |
+ return access; |
+} |
+ |
+ |
+// static |
FieldAccess AccessBuilder::ForValue() { |
FieldAccess access = {kTaggedBase, JSValue::kValueOffset, Handle<Name>(), |
Type::Any(), kMachAnyTagged}; |
@@ -139,6 +147,25 @@ FieldAccess AccessBuilder::ForValue() { |
// static |
+FieldAccess AccessBuilder::ForArgumentsLength() { |
+ int offset = |
+ JSObject::kHeaderSize + Heap::kArgumentsLengthIndex * kPointerSize; |
+ FieldAccess access = {kTaggedBase, offset, Handle<Name>(), Type::Any(), |
+ kMachAnyTagged}; |
+ return access; |
+} |
+ |
+ |
+// static |
+FieldAccess AccessBuilder::ForFixedArraySlot(size_t index) { |
+ int offset = FixedArray::OffsetOfElementAt(static_cast<int>(index)); |
+ FieldAccess access = {kTaggedBase, offset, Handle<Name>(), Type::Any(), |
+ kMachAnyTagged}; |
+ return access; |
+} |
+ |
+ |
+// static |
FieldAccess AccessBuilder::ForContextSlot(size_t index) { |
int offset = Context::kHeaderSize + static_cast<int>(index) * kPointerSize; |
DCHECK_EQ(offset, |