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

Issue 1379793004: [Interpreter] Add support for new local function context creation. (Closed)

Created:
5 years, 2 months ago by rmcilroy
Modified:
5 years, 2 months ago
CC:
v8-reviews_googlegroups.com, danno
Base URL:
https://chromium.googlesource.com/v8/v8.git@int_decl
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

[Interpreter] Add support for new local function context creation. Adds support for creation of new local function contexts (or script context for top-level code). As part of this, also adds support for context push/pop operations using a ContextScope object in BytecodeGenerator. Adds the following bytecodes: - PushContext - PopContext Support for inner contexts and loading from / storing to context allocated variables will come in a future CL. BUG=v8:4280 LOG=N Committed: https://crrev.com/c0185b7d984419eb11dd290476c62deb977bfa9f Cr-Commit-Position: refs/heads/master@{#31238}

Patch Set 1 #

Patch Set 2 : Rebase #

Patch Set 3 : Fix ia32 #

Total comments: 9

Patch Set 4 : Review comments #

Patch Set 5 : Fix interpreter-assembler-unittest #

Unified diffs Side-by-side diffs Delta from patch set Stats (+383 lines, -113 lines) Patch
M src/compiler/bytecode-graph-builder.cc View 1 2 3 1 chunk +12 lines, -0 lines 0 comments Download
M src/compiler/interpreter-assembler.h View 3 chunks +5 lines, -2 lines 0 comments Download
M src/compiler/interpreter-assembler.cc View 1 2 3 9 chunks +16 lines, -19 lines 0 comments Download
M src/compiler/linkage.cc View 1 2 1 chunk +7 lines, -5 lines 0 comments Download
M src/ia32/builtins-ia32.cc View 1 2 1 chunk +12 lines, -11 lines 0 comments Download
M src/ia32/macro-assembler-ia32.h View 1 2 1 chunk +1 line, -2 lines 0 comments Download
M src/interpreter/bytecode-array-builder.h View 1 2 3 3 chunks +15 lines, -1 line 0 comments Download
M src/interpreter/bytecode-array-builder.cc View 1 2 3 4 chunks +35 lines, -2 lines 0 comments Download
M src/interpreter/bytecode-generator.h View 1 3 chunks +14 lines, -6 lines 0 comments Download
M src/interpreter/bytecode-generator.cc View 1 2 3 12 chunks +104 lines, -21 lines 0 comments Download
M src/interpreter/bytecodes.h View 1 2 3 2 chunks +8 lines, -0 lines 0 comments Download
M src/interpreter/bytecodes.cc View 3 chunks +17 lines, -1 line 0 comments Download
M src/interpreter/interpreter.cc View 1 2 3 1 chunk +23 lines, -0 lines 0 comments Download
M src/x87/builtins-x87.cc View 1 2 1 chunk +12 lines, -11 lines 0 comments Download
M src/x87/macro-assembler-x87.h View 1 2 1 chunk +1 line, -2 lines 0 comments Download
M test/cctest/interpreter/test-bytecode-generator.cc View 1 2 3 4 chunks +98 lines, -29 lines 0 comments Download
M test/unittests/interpreter/bytecode-array-builder-unittest.cc View 1 2 3 1 chunk +3 lines, -1 line 0 comments Download

Messages

Total messages: 30 (12 generated)
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1379793004/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1379793004/1
5 years, 2 months ago (2015-10-06 11:57:32 UTC) #2
rmcilroy
Orion, Michi, could you please take a look, thanks.
5 years, 2 months ago (2015-10-06 11:57:57 UTC) #4
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: v8_linux64_asan_rel on tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_linux64_asan_rel/builds/8639) v8_linux_arm_rel on ...
5 years, 2 months ago (2015-10-06 11:58:32 UTC) #6
oth
lgtm
5 years, 2 months ago (2015-10-08 09:30:35 UTC) #8
oth
lgtm
5 years, 2 months ago (2015-10-08 09:30:38 UTC) #9
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1379793004/60001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1379793004/60001
5 years, 2 months ago (2015-10-08 09:43:37 UTC) #11
rmcilroy
+Benedikt: As discussed offline, I've needed to modify the ia32/x87 ports to move the context ...
5 years, 2 months ago (2015-10-08 09:45:32 UTC) #13
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
5 years, 2 months ago (2015-10-08 10:04:41 UTC) #15
rmcilroy
Ping?
5 years, 2 months ago (2015-10-09 10:49:47 UTC) #16
rmcilroy
Michi / Benedikt, could you take a look please? My follow-on CLs depend on this ...
5 years, 2 months ago (2015-10-13 09:13:59 UTC) #17
Michael Starzinger
https://codereview.chromium.org/1379793004/diff/60001/src/compiler/interpreter-assembler.cc File src/compiler/interpreter-assembler.cc (right): https://codereview.chromium.org/1379793004/diff/60001/src/compiler/interpreter-assembler.cc#newcode341 src/compiler/interpreter-assembler.cc:341: args[3] = LoadObjectField(function, JSFunction::kContextOffset); Hmm, I think loading the ...
5 years, 2 months ago (2015-10-13 09:38:43 UTC) #18
rmcilroy
https://codereview.chromium.org/1379793004/diff/60001/src/compiler/interpreter-assembler.cc File src/compiler/interpreter-assembler.cc (right): https://codereview.chromium.org/1379793004/diff/60001/src/compiler/interpreter-assembler.cc#newcode341 src/compiler/interpreter-assembler.cc:341: args[3] = LoadObjectField(function, JSFunction::kContextOffset); On 2015/10/13 09:38:43, Michael Starzinger ...
5 years, 2 months ago (2015-10-13 10:35:22 UTC) #19
Michael Starzinger
LGTM. https://codereview.chromium.org/1379793004/diff/60001/src/interpreter/bytecode-generator.cc File src/interpreter/bytecode-generator.cc (right): https://codereview.chromium.org/1379793004/diff/60001/src/interpreter/bytecode-generator.cc#newcode154 src/interpreter/bytecode-generator.cc:154: builder()->set_context_count(info->num_heap_slots() > 0 ? 1 : 0); On ...
5 years, 2 months ago (2015-10-13 11:12:13 UTC) #20
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1379793004/80001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1379793004/80001
5 years, 2 months ago (2015-10-13 12:23:40 UTC) #23
commit-bot: I haz the power
Try jobs failed on following builders: v8_mac_rel on tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_mac_rel/builds/10611)
5 years, 2 months ago (2015-10-13 12:34:03 UTC) #25
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1379793004/100001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1379793004/100001
5 years, 2 months ago (2015-10-13 12:47:33 UTC) #28
commit-bot: I haz the power
Committed patchset #5 (id:100001)
5 years, 2 months ago (2015-10-13 13:09:53 UTC) #29
commit-bot: I haz the power
5 years, 2 months ago (2015-10-13 13:10:12 UTC) #30
Message was sent while issue was closed.
Patchset 5 (id:??) landed as
https://crrev.com/c0185b7d984419eb11dd290476c62deb977bfa9f
Cr-Commit-Position: refs/heads/master@{#31238}

Powered by Google App Engine
This is Rietveld 408576698