Index: src/code-stub-assembler.cc |
diff --git a/src/code-stub-assembler.cc b/src/code-stub-assembler.cc |
index 2102cbe03c7bb2a5051af335e26472b260960643..fb5ce14b1ce7d5a0dfe1de153fe64f8af5e72e01 100644 |
--- a/src/code-stub-assembler.cc |
+++ b/src/code-stub-assembler.cc |
@@ -4685,6 +4685,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>( |