[ic] Do not convert undefined key to undefined_string.
In the special case of KeyedLoadIC, where the key is always undefined, LowerCheckEqualsInternalizedString fails and triggers deoptimization loops. It's because {exp}, which is undefined_string, does not match {val}, which is undefined_value. This patch drops the convertion from undefined_value to undefined_string for undefined key in KeyedLoadIC. It makes undefined key be able to pass LowerCheckEqualsInternalizedString and avoids the deoptimization loops. Bug: Change-Id: Ie15358e705490fb2e4907f4d37a3ef7921f74844 Reviewed-on: https://chromium-review.googlesource.com/789613 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#49779}
Showing
Please
register
or
sign in
to comment