Index: src/code-stub-assembler.cc |
diff --git a/src/code-stub-assembler.cc b/src/code-stub-assembler.cc |
index de61532630689862669238282384ac251b75026e..1efa0ccb11ff79e789a9c8f2ce3dcd8853f2e1cc 100644 |
--- a/src/code-stub-assembler.cc |
+++ b/src/code-stub-assembler.cc |
@@ -3837,6 +3837,9 @@ void CodeStubAssembler::TryLookupElement(Node* object, Node* map, |
} |
Bind(&if_isdictionary); |
{ |
+ // Negative keys must be converted to property names. |
+ GotoIf(IntPtrLessThan(intptr_index, IntPtrConstant(0)), if_bailout); |
+ |
Variable var_entry(this, MachineType::PointerRepresentation()); |
Node* elements = LoadElements(object); |
NumberDictionaryLookup<SeededNumberDictionary>( |