DescriptionFix arrow functions requiring context without slots.
This fixes a corner-case where arrow functions that require a context
allocate none, because there are no additional slots allocated. Note
that this didn't happen with true function scopes because they always
had at least the receiver slot.
The outcome was a context chain that no longer was in sync with the
scope chain, hence context slot loads were bogus. This is observable
using the DYNAMIC_LOCAL optimization in all compilers.
R=rossberg@chromium.org,wingo@igalia.com
TEST=mjsunit/harmony/regress/regress-4160
BUG=v8:4160
LOG=N
Committed: https://crrev.com/68beef53c36d8640b453da4169548cbbd61c91a9
Cr-Commit-Position: refs/heads/master@{#28788}
Patch Set 1 #Patch Set 2 : Added one more test. #Patch Set 3 : Cleanup test case. #
Messages
Total messages: 12 (2 generated)
|