Index: src/code-stub-assembler.cc |
diff --git a/src/code-stub-assembler.cc b/src/code-stub-assembler.cc |
index 248d8a80e6783ecf4161fad2dde15c9a300e399a..41d3565516ba68f0e89a0711f4afd72b603b5e8f 100644 |
--- a/src/code-stub-assembler.cc |
+++ b/src/code-stub-assembler.cc |
@@ -5084,6 +5084,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>( |