summaryrefslogtreecommitdiff
path: root/chromium/v8/src/objects/lookup.cc
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2020-10-12 14:27:29 +0200
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2020-10-13 09:35:20 +0000
commitc30a6232df03e1efbd9f3b226777b07e087a1122 (patch)
treee992f45784689f373bcc38d1b79a239ebe17ee23 /chromium/v8/src/objects/lookup.cc
parent7b5b123ac58f58ffde0f4f6e488bcd09aa4decd3 (diff)
downloadqtwebengine-chromium-85-based.tar.gz
BASELINE: Update Chromium to 85.0.4183.14085-based
Change-Id: Iaa42f4680837c57725b1344f108c0196741f6057 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'chromium/v8/src/objects/lookup.cc')
-rw-r--r--chromium/v8/src/objects/lookup.cc13
1 files changed, 8 insertions, 5 deletions
diff --git a/chromium/v8/src/objects/lookup.cc b/chromium/v8/src/objects/lookup.cc
index d5fbf7c894a..0361b6dfd78 100644
--- a/chromium/v8/src/objects/lookup.cc
+++ b/chromium/v8/src/objects/lookup.cc
@@ -14,6 +14,8 @@
#include "src/objects/hash-table-inl.h"
#include "src/objects/heap-number-inl.h"
#include "src/objects/struct-inl.h"
+#include "torque-generated/exported-class-definitions-tq-inl.h"
+#include "torque-generated/exported-class-definitions-tq.h"
namespace v8 {
namespace internal {
@@ -763,13 +765,14 @@ void LookupIterator::TransitionToAccessorPair(Handle<Object> pair,
receiver->RequireSlowElements(*dictionary);
if (receiver->HasSlowArgumentsElements(isolate_)) {
- FixedArray parameter_map = FixedArray::cast(receiver->elements(isolate_));
- uint32_t length = parameter_map.length() - 2;
+ SloppyArgumentsElements parameter_map =
+ SloppyArgumentsElements::cast(receiver->elements(isolate_));
+ uint32_t length = parameter_map.length();
if (number_.is_found() && number_.as_uint32() < length) {
- parameter_map.set(number_.as_int() + 2,
- ReadOnlyRoots(isolate_).the_hole_value());
+ parameter_map.set_mapped_entries(
+ number_.as_int(), ReadOnlyRoots(isolate_).the_hole_value());
}
- FixedArray::cast(receiver->elements(isolate_)).set(1, *dictionary);
+ parameter_map.set_arguments(*dictionary);
} else {
receiver->set_elements(*dictionary);
}