• mvstanton's avatar
    Revert of Type Feedback Vector lives in the closure (patchset #2 id:20001 of... · a7027851
    mvstanton authored
    Revert of Type Feedback Vector lives in the closure (patchset #2 id:20001 of https://codereview.chromium.org/1642613002/ )
    
    Reason for revert:
    Bug: failing to use write barrier when writing code entry into closure.
    
    Original issue's description:
    > Reland of Type Feedback Vector lives in the closure
    >
    > (Fixed a bug found by nosnap builds.)
    >
    > We get less "pollution" of type feedback if we have one vector per native
    > context, rather than one for the whole system. This CL moves the vector
    > appropriately.
    >
    > We rely more heavily on the Optimized Code Map in the SharedFunctionInfo. The
    > vector actually lives in the first slot of the literals array (indeed there is
    > great commonality between those arrays, they can be thought of as the same
    > thing). So we make greater effort to ensure there is a valid literals array
    > after compilation.
    >
    > This meant, for performance reasons, that we needed to extend
    > FastNewClosureStub to support creating closures with literals. And ultimately,
    > it drove us to move the optimized code map lookup out of FastNewClosureStub
    > and into the compile lazy builtin.
    >
    > The heap change is trivial so I TBR Hannes for it...
    >
    > TBR=hpayer@chromium.org
    > BUG=
    >
    > Committed: https://crrev.com/d984b3b0ce91e55800f5323b4bb32a06f8a5aab1
    > Cr-Commit-Position: refs/heads/master@{#33548}
    
    TBR=bmeurer@chromium.org,yangguo@chromium.org
    # Skipping CQ checks because original CL landed less than 1 days ago.
    NOPRESUBMIT=true
    NOTREECHECKS=true
    NOTRY=true
    BUG=
    
    Review URL: https://codereview.chromium.org/1643533003
    
    Cr-Commit-Position: refs/heads/master@{#33556}
    a7027851
builtins-arm64.cc 95.9 KB