summaryrefslogtreecommitdiff
path: root/chromium/v8/src/compiler/access-builder.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/v8/src/compiler/access-builder.cc')
-rw-r--r--chromium/v8/src/compiler/access-builder.cc38
1 files changed, 38 insertions, 0 deletions
diff --git a/chromium/v8/src/compiler/access-builder.cc b/chromium/v8/src/compiler/access-builder.cc
index e19067f3c1c..656b250a1c2 100644
--- a/chromium/v8/src/compiler/access-builder.cc
+++ b/chromium/v8/src/compiler/access-builder.cc
@@ -17,6 +17,7 @@
#include "src/objects/objects-inl.h"
#include "src/objects/ordered-hash-table.h"
#include "src/objects/source-text-module.h"
+#include "torque-generated/exported-class-definitions-tq.h"
namespace v8 {
namespace internal {
@@ -530,6 +531,26 @@ FieldAccess AccessBuilder::ForFixedArrayLength() {
}
// static
+FieldAccess AccessBuilder::ForSloppyArgumentsElementsContext() {
+ FieldAccess access = {
+ kTaggedBase, SloppyArgumentsElements::kContextOffset,
+ MaybeHandle<Name>(), MaybeHandle<Map>(),
+ Type::Any(), MachineType::TaggedPointer(),
+ kPointerWriteBarrier};
+ return access;
+}
+
+// static
+FieldAccess AccessBuilder::ForSloppyArgumentsElementsArguments() {
+ FieldAccess access = {
+ kTaggedBase, SloppyArgumentsElements::kArgumentsOffset,
+ MaybeHandle<Name>(), MaybeHandle<Map>(),
+ Type::Any(), MachineType::TaggedPointer(),
+ kPointerWriteBarrier};
+ return access;
+}
+
+// static
FieldAccess AccessBuilder::ForPropertyArrayLengthAndHash() {
FieldAccess access = {
kTaggedBase, PropertyArray::kLengthAndHashOffset,
@@ -867,6 +888,14 @@ ElementAccess AccessBuilder::ForFixedArrayElement() {
}
// static
+ElementAccess AccessBuilder::ForSloppyArgumentsElementsMappedEntry() {
+ ElementAccess access = {
+ kTaggedBase, SloppyArgumentsElements::kMappedEntriesOffset, Type::Any(),
+ MachineType::AnyTagged(), kFullWriteBarrier};
+ return access;
+}
+
+// statics
ElementAccess AccessBuilder::ForFixedArrayElement(
ElementsKind kind, LoadSensitivity load_sensitivity) {
ElementAccess access = {kTaggedBase, FixedArray::kHeaderSize,
@@ -1139,6 +1168,15 @@ FieldAccess AccessBuilder::ForDictionaryObjectHashIndex() {
return access;
}
+// static
+FieldAccess AccessBuilder::ForFeedbackCellValue() {
+ FieldAccess access = {kTaggedBase, FeedbackCell::kValueOffset,
+ Handle<Name>(), MaybeHandle<Map>(),
+ Type::Any(), MachineType::TaggedPointer(),
+ kFullWriteBarrier};
+ return access;
+}
+
} // namespace compiler
} // namespace internal
} // namespace v8