Backport: Fix Object.entries/values with changing elements

Bug: 111274046
Test: m -j proxy_resolver_v8_unittest && adb sync && adb shell \
/data/nativetest64/proxy_resolver_v8_unittest/proxy_resolver_v8_unittest
Change-Id: I705fc512cc5837e9364ed187559cc75d079aa5cb
(cherry picked from commit d8be9a10287afed07705ac8af027d6a46d4def99)

 static uint32_t GetEntryForIndexImpl(Isolate* isolate, JSObject* holder,
 FixedArrayBase* backing_store,
 uint32_t index, PropertyFilter filter) {
 uint32_t length = Subclass::GetMaxIndex(holder, backing_store);
 if (IsHoleyElementsKind(kind())) {
 return index < length &&
 !BackingStore::cast(backing_store)
 ->is_the_hole(isolate, index)
 ? index
 : kMaxUInt32;
 } else {
 return index < length ? index : kMaxUInt32;
 }
 }

 static uint32_t GetEntryForIndexImpl(Isolate* isolate, JSObject* holder,
 FixedArrayBase* backing_store,
 uint32_t index, PropertyFilter filter) {
 uint32_t length = Subclass::GetMaxIndex(holder, backing_store);
 if (IsHoleyElementsKind(kind())) {
 return index < length &&
 !BackingStore::cast(backing_store)
 ->is_the_hole(isolate, index)
 ? index
 : kMaxUInt32;
 } else {
 return index < length ? index : kMaxUInt32;
 }
 }
