Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(69)

Issue 1643533003: Revert of Type Feedback Vector lives in the closure (Closed)

Created:
4 years, 11 months ago by mvstanton
Modified:
4 years, 11 months ago
Reviewers:
Benedikt Meurer, Yang
CC:
v8-reviews_googlegroups.com, v8-x87-ports_googlegroups.com, v8-ppc-ports_googlegroups.com, Yang, v8-mips-ports_googlegroups.com, rmcilroy, Hannes Payer (out of office), ulan, oth
Base URL:
https://chromium.googlesource.com/v8/v8.git@master
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

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= Committed: https://crrev.com/a702785156ec32e970c3c744cc7a6c25b086a5e1 Cr-Commit-Position: refs/heads/master@{#33556}

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+558 lines, -1265 lines) Patch
M src/arm/builtins-arm.cc View 1 chunk +0 lines, -145 lines 0 comments Download
M src/arm/macro-assembler-arm.cc View 1 chunk +3 lines, -2 lines 0 comments Download
M src/arm64/builtins-arm64.cc View 1 chunk +0 lines, -129 lines 0 comments Download
M src/arm64/macro-assembler-arm64.cc View 1 chunk +3 lines, -2 lines 0 comments Download
M src/code-stubs.cc View 1 chunk +5 lines, -1 line 0 comments Download
M src/code-stubs-hydrogen.cc View 3 chunks +203 lines, -10 lines 0 comments Download
M src/compiler.h View 2 chunks +4 lines, -4 lines 0 comments Download
M src/compiler.cc View 15 chunks +27 lines, -37 lines 0 comments Download
M src/compiler/access-builder.h View 2 chunks +2 lines, -5 lines 0 comments Download
M src/compiler/access-builder.cc View 1 chunk +2 lines, -9 lines 0 comments Download
M src/compiler/ast-graph-builder.cc View 2 chunks +4 lines, -4 lines 0 comments Download
M src/compiler/bytecode-graph-builder.cc View 2 chunks +4 lines, -5 lines 0 comments Download
M src/compiler/interpreter-assembler.cc View 1 chunk +3 lines, -2 lines 0 comments Download
M src/compiler/js-inlining.cc View 1 chunk +0 lines, -3 lines 0 comments Download
M src/compiler/js-typed-lowering.cc View 1 chunk +2 lines, -2 lines 0 comments Download
M src/crankshaft/hydrogen.h View 1 chunk +1 line, -4 lines 0 comments Download
M src/crankshaft/hydrogen.cc View 2 chunks +2 lines, -5 lines 0 comments Download
M src/crankshaft/typing.cc View 2 chunks +2 lines, -1 line 0 comments Download
M src/debug/debug.cc View 2 chunks +4 lines, -3 lines 0 comments Download
M src/debug/liveedit.h View 1 chunk +1 line, -1 line 0 comments Download
M src/debug/liveedit.cc View 7 chunks +15 lines, -23 lines 0 comments Download
M src/deoptimizer.h View 1 chunk +1 line, -0 lines 0 comments Download
M src/factory.h View 1 chunk +1 line, -1 line 0 comments Download
M src/factory.cc View 4 chunks +10 lines, -8 lines 0 comments Download
M src/full-codegen/arm/full-codegen-arm.cc View 1 chunk +5 lines, -2 lines 0 comments Download
M src/full-codegen/arm64/full-codegen-arm64.cc View 1 chunk +5 lines, -2 lines 0 comments Download
M src/full-codegen/full-codegen.cc View 1 chunk +1 line, -1 line 0 comments Download
M src/full-codegen/ia32/full-codegen-ia32.cc View 1 chunk +5 lines, -2 lines 0 comments Download
M src/full-codegen/mips/full-codegen-mips.cc View 1 chunk +5 lines, -2 lines 0 comments Download
M src/full-codegen/mips64/full-codegen-mips64.cc View 1 chunk +5 lines, -2 lines 0 comments Download
M src/full-codegen/x64/full-codegen-x64.cc View 1 chunk +5 lines, -2 lines 0 comments Download
M src/heap/heap.h View 2 chunks +1 line, -1 line 0 comments Download
M src/heap/heap.cc View 1 chunk +0 lines, -8 lines 0 comments Download
M src/heap/objects-visiting-inl.h View 2 chunks +3 lines, -4 lines 0 comments Download
M src/ia32/builtins-ia32.cc View 1 chunk +0 lines, -138 lines 0 comments Download
M src/ia32/macro-assembler-ia32.cc View 1 chunk +2 lines, -2 lines 0 comments Download
M src/interpreter/bytecode-generator.cc View 1 chunk +1 line, -1 line 0 comments Download
M src/interpreter/interpreter.cc View 1 chunk +1 line, -1 line 0 comments Download
M src/mips/builtins-mips.cc View 1 chunk +0 lines, -140 lines 0 comments Download
M src/mips/macro-assembler-mips.cc View 1 chunk +3 lines, -2 lines 0 comments Download
M src/mips64/builtins-mips64.cc View 1 chunk +0 lines, -140 lines 0 comments Download
M src/mips64/macro-assembler-mips64.cc View 1 chunk +3 lines, -2 lines 0 comments Download
M src/objects.h View 11 chunks +15 lines, -32 lines 0 comments Download
M src/objects.cc View 5 chunks +11 lines, -43 lines 0 comments Download
M src/objects-debug.cc View 1 chunk +1 line, -1 line 0 comments Download
M src/objects-inl.h View 5 chunks +7 lines, -39 lines 0 comments Download
M src/objects-printer.cc View 1 chunk +2 lines, -2 lines 0 comments Download
M src/profiler/heap-snapshot-generator.cc View 1 chunk +3 lines, -3 lines 0 comments Download
M src/runtime-profiler.cc View 5 chunks +11 lines, -9 lines 0 comments Download
M src/runtime/runtime.h View 3 chunks +2 lines, -1 line 0 comments Download
M src/runtime/runtime-compiler.cc View 2 chunks +0 lines, -17 lines 0 comments Download
M src/runtime/runtime-function.cc View 2 chunks +8 lines, -6 lines 0 comments Download
M src/runtime/runtime-scopes.cc View 1 chunk +0 lines, -7 lines 0 comments Download
M src/runtime/runtime-test.cc View 1 chunk +1 line, -1 line 0 comments Download
M src/snapshot/serialize.cc View 1 chunk +2 lines, -9 lines 0 comments Download
M src/type-feedback-vector.h View 2 chunks +2 lines, -4 lines 0 comments Download
M src/type-feedback-vector.cc View 3 chunks +3 lines, -37 lines 0 comments Download
M src/type-feedback-vector-inl.h View 1 chunk +5 lines, -5 lines 0 comments Download
M src/x64/builtins-x64.cc View 1 chunk +0 lines, -126 lines 0 comments Download
M src/x64/macro-assembler-x64.cc View 1 chunk +2 lines, -2 lines 0 comments Download
M test/cctest/cctest.status View 1 chunk +0 lines, -4 lines 0 comments Download
M test/cctest/compiler/function-tester.h View 2 chunks +0 lines, -2 lines 0 comments Download
M test/cctest/compiler/test-run-jscalls.cc View 2 chunks +0 lines, -2 lines 0 comments Download
M test/cctest/heap/test-heap.cc View 14 chunks +97 lines, -18 lines 0 comments Download
M test/cctest/interpreter/test-interpreter.cc View 1 chunk +1 line, -1 line 0 comments Download
M test/cctest/test-compiler.cc View 8 chunks +21 lines, -15 lines 0 comments Download
M test/cctest/test-feedback-vector.cc View 10 chunks +10 lines, -10 lines 0 comments Download
M test/mjsunit/mjsunit.status View 1 chunk +0 lines, -3 lines 0 comments Download
M test/unittests/compiler/interpreter-assembler-unittest.cc View 1 chunk +10 lines, -8 lines 0 comments Download

Messages

Total messages: 5 (1 generated)
mvstanton
Created Revert of Type Feedback Vector lives in the closure
4 years, 11 months ago (2016-01-27 15:03:42 UTC) #1
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1643533003/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1643533003/1
4 years, 11 months ago (2016-01-27 15:03:53 UTC) #2
commit-bot: I haz the power
Committed patchset #1 (id:1)
4 years, 11 months ago (2016-01-27 15:04:18 UTC) #3
commit-bot: I haz the power
4 years, 11 months ago (2016-01-27 15:05:48 UTC) #5
Message was sent while issue was closed.
Patchset 1 (id:??) landed as
https://crrev.com/a702785156ec32e970c3c744cc7a6c25b086a5e1
Cr-Commit-Position: refs/heads/master@{#33556}

Powered by Google App Engine
This is Rietveld 408576698