• Georg Neis's avatar
    Reland "Fix "this" value in lazily-parsed module functions." · 585b39f5
    Georg Neis authored
    This is a reland of c3bd741e
    Original change's description:
    > Fix "this" value in lazily-parsed module functions.
    >
    > When preparsing top-level functions in a module, we didn't track
    > unresolved variables. Consequently, "this" ended up referencing
    > the global "this", which has the wrong value (in a module "this"
    > is supposed to be the undefined value).
    >
    > This patch fixes that. This also lets us stop forcing context
    > allocation of all variables in module scopes, which the patch
    > takes care of as well.
    >
    > Bug: chromium:791334
    > Change-Id: Ifac1f1adc033f3facfb3d29dd4bca32ee27bffcf
    > Reviewed-on: https://chromium-review.googlesource.com/808938
    > Reviewed-by: Marja Hölttä <marja@chromium.org>
    > Reviewed-by: Adam Klein <adamk@chromium.org>
    > Reviewed-by: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org>
    > Commit-Queue: Georg Neis <neis@chromium.org>
    > Cr-Commit-Position: refs/heads/master@{#50025}
    
    TBR=adamk@chromium.org
    TBR=kozyatinskiy@chromium.org
    
    Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel
    
    Bug: chromium:791334
    Change-Id: I57acc7b84a345565b36cbb55924fa2ff9b449eec
    Reviewed-on: https://chromium-review.googlesource.com/822341
    Commit-Queue: Georg Neis <neis@chromium.org>
    Reviewed-by: 's avatarGeorg Neis <neis@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#50045}
    585b39f5
Name
Last commit
Last update
..
ArrayLiterals.golden Loading commit data...
AssignmentsInBinaryExpression.golden Loading commit data...
AsyncGenerators.golden Loading commit data...
BasicBlockToBoolean.golden Loading commit data...
BasicLoops.golden Loading commit data...
BreakableBlocks.golden Loading commit data...
CallAndSpread.golden Loading commit data...
CallGlobal.golden Loading commit data...
CallLookupSlot.golden Loading commit data...
CallNew.golden Loading commit data...
CallRuntime.golden Loading commit data...
ClassAndSuperClass.golden Loading commit data...
ClassDeclarations.golden Loading commit data...
ClassFields.golden Loading commit data...
CompareNil.golden Loading commit data...
CompareTypeOf.golden Loading commit data...
CompoundExpressions.golden Loading commit data...
Conditional.golden Loading commit data...
ConstVariable.golden Loading commit data...
ConstVariableContextSlot.golden Loading commit data...
ContextParameters.golden Loading commit data...
ContextVariables.golden Loading commit data...
CountOperators.golden Loading commit data...
CreateArguments.golden Loading commit data...
CreateRestParameter.golden Loading commit data...
DeadCodeRemoval.golden Loading commit data...
DeclareGlobals.golden Loading commit data...
Delete.golden Loading commit data...
DeleteLookupSlotInEval.golden Loading commit data...
DoDebugger.golden Loading commit data...
DoExpression.golden Loading commit data...
Eval.golden Loading commit data...
ForAwaitOf.golden Loading commit data...
ForIn.golden Loading commit data...
ForOf.golden Loading commit data...
ForOfLoop.golden Loading commit data...
FunctionLiterals.golden Loading commit data...
GenerateTestUndetectable.golden Loading commit data...
Generators.golden Loading commit data...
GlobalCompoundExpressions.golden Loading commit data...
GlobalCountOperators.golden Loading commit data...
GlobalDelete.golden Loading commit data...
HeapNumberConstants.golden Loading commit data...
IfConditions.golden Loading commit data...
IntegerConstants.golden Loading commit data...
LetVariable.golden Loading commit data...
LetVariableContextSlot.golden Loading commit data...
LoadGlobal.golden Loading commit data...
LogicalExpressions.golden Loading commit data...
LookupSlot.golden Loading commit data...
LookupSlotInEval.golden Loading commit data...
Modules.golden Loading commit data...
NewAndSpread.golden Loading commit data...
NewTarget.golden Loading commit data...
ObjectLiterals.golden Loading commit data...
OuterContextVariables.golden Loading commit data...
Parameters.golden Loading commit data...
PrimitiveExpressions.golden Loading commit data...
PrimitiveReturnStatements.golden Loading commit data...
PropertyCall.golden Loading commit data...
PropertyLoads.golden Loading commit data...
PropertyStores.golden Loading commit data...
RegExpLiterals.golden Loading commit data...
RemoveRedundantLdar.golden Loading commit data...
StandardForLoop.golden Loading commit data...
StoreGlobal.golden Loading commit data...
StringConcat.golden Loading commit data...
StringConstants.golden Loading commit data...
SuperCallAndSpread.golden Loading commit data...
Switch.golden Loading commit data...
ThisFunction.golden Loading commit data...
Throw.golden Loading commit data...
TopLevelObjectLiterals.golden Loading commit data...
TryCatch.golden Loading commit data...
TryFinally.golden Loading commit data...
Typeof.golden Loading commit data...
UnaryOperators.golden Loading commit data...
WideRegisters.golden Loading commit data...
WithStatement.golden Loading commit data...