DescriptionVectorICs: keyed element loads were kicking out non-smi keys unnecessarily
Handlers should be in charge of this work. The change uncovered a bug in
vector-ics related to keyed loads into strings. It's important for
StringCharCodeAtGenerator, a helper used in full code and in
LoadIndexedStringStub (a handler) to protect the vector and slot registers
when it makes a runtime call to convert a HeapNumber to a Smi.
It's still possible for the handler to MISS after this call, perhaps due
to out of bounds access. In that case, the vector and slot registers need
to be delivered safely to the MISS handler.
BUG=
Committed: https://crrev.com/6689cc27ebe60685c025de9ae1f09919093f8213
Cr-Commit-Position: refs/heads/master@{#27377}
Patch Set 1 : Patch one. #Patch Set 2 : Turn off --vector-ics flag. #
Total comments: 8
Patch Set 3 : code comments. #Patch Set 4 : Bugfix. #Patch Set 5 : REBASE. #Patch Set 6 : Disable assert. #
Messages
Total messages: 15 (7 generated)
|