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

Issue 668193002: Remove isolate pointer from context objects. (Closed)

Created:
6 years, 2 months ago by Florian Schneider
Modified:
6 years, 2 months ago
CC:
reviews_dartlang.org, vm-dev_dartlang.org, Ivan Posva
Visibility:
Public.

Description

Remove isolate pointer from context objects. By moving all stubs that do runtime calls into the isolate we don't need to cache the current isolate in each context object. This saves space on each context at the cost of duplicating stubs in each isolate. Most stubs are already isolate-specific and the total number of stubs is small enough for this to be a good trade-off. R=vegorov@google.com Committed: https://code.google.com/p/dart/source/detail?r=41279

Patch Set 1 #

Total comments: 1

Patch Set 2 : #

Patch Set 3 : fixed initialization order bug #

Total comments: 2

Patch Set 4 : addressed comments #

Patch Set 5 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+124 lines, -194 lines) Patch
M runtime/vm/assembler_arm64.cc View 1 chunk +8 lines, -8 lines 0 comments Download
M runtime/vm/assembler_x64.cc View 1 chunk +8 lines, -8 lines 0 comments Download
M runtime/vm/dart_entry.cc View 1 chunk +0 lines, -1 line 0 comments Download
M runtime/vm/debugger_arm.cc View 2 chunks +4 lines, -3 lines 0 comments Download
M runtime/vm/debugger_ia32.cc View 2 chunks +4 lines, -3 lines 0 comments Download
M runtime/vm/debugger_mips.cc View 2 chunks +4 lines, -3 lines 0 comments Download
M runtime/vm/gc_marker.cc View 1 chunk +2 lines, -1 line 0 comments Download
M runtime/vm/intermediate_language_arm.cc View 1 chunk +0 lines, -4 lines 0 comments Download
M runtime/vm/intermediate_language_arm64.cc View 1 chunk +0 lines, -4 lines 0 comments Download
M runtime/vm/intermediate_language_ia32.cc View 1 chunk +0 lines, -4 lines 0 comments Download
M runtime/vm/intermediate_language_mips.cc View 1 chunk +0 lines, -4 lines 0 comments Download
M runtime/vm/intermediate_language_x64.cc View 1 chunk +0 lines, -4 lines 0 comments Download
M runtime/vm/object.h View 3 4 2 chunks +0 lines, -8 lines 0 comments Download
M runtime/vm/object.cc View 1 2 3 13 chunks +16 lines, -19 lines 0 comments Download
M runtime/vm/object_test.cc View 1 chunk +0 lines, -3 lines 0 comments Download
M runtime/vm/raw_object.h View 1 chunk +0 lines, -1 line 0 comments Download
M runtime/vm/raw_object_snapshot.cc View 1 chunk +0 lines, -3 lines 0 comments Download
M runtime/vm/runtime_entry_arm.cc View 1 chunk +1 line, -1 line 0 comments Download
M runtime/vm/runtime_entry_arm64.cc View 1 chunk +1 line, -1 line 0 comments Download
M runtime/vm/runtime_entry_ia32.cc View 1 chunk +1 line, -1 line 0 comments Download
M runtime/vm/runtime_entry_mips.cc View 1 chunk +1 line, -1 line 0 comments Download
M runtime/vm/runtime_entry_x64.cc View 1 chunk +1 line, -1 line 0 comments Download
M runtime/vm/stub_code.h View 1 6 chunks +31 lines, -18 lines 0 comments Download
M runtime/vm/stub_code.cc View 1 1 chunk +17 lines, -5 lines 0 comments Download
M runtime/vm/stub_code_arm.cc View 7 chunks +5 lines, -19 lines 0 comments Download
M runtime/vm/stub_code_arm64.cc View 6 chunks +5 lines, -16 lines 0 comments Download
M runtime/vm/stub_code_arm64_test.cc View 1 chunk +0 lines, -1 line 0 comments Download
M runtime/vm/stub_code_arm_test.cc View 1 chunk +0 lines, -1 line 0 comments Download
M runtime/vm/stub_code_ia32.cc View 6 chunks +5 lines, -15 lines 0 comments Download
M runtime/vm/stub_code_ia32_test.cc View 1 chunk +0 lines, -1 line 0 comments Download
M runtime/vm/stub_code_mips.cc View 6 chunks +5 lines, -15 lines 0 comments Download
M runtime/vm/stub_code_mips_test.cc View 1 chunk +0 lines, -1 line 0 comments Download
M runtime/vm/stub_code_x64.cc View 6 chunks +5 lines, -15 lines 0 comments Download
M runtime/vm/stub_code_x64_test.cc View 1 chunk +0 lines, -1 line 0 comments Download

Messages

Total messages: 8 (1 generated)
Florian Schneider
6 years, 2 months ago (2014-10-22 14:36:35 UTC) #2
Vyacheslav Egorov (Google)
lgtm https://codereview.chromium.org/668193002/diff/1/runtime/vm/stub_code.cc File runtime/vm/stub_code.cc (right): https://codereview.chromium.org/668193002/diff/1/runtime/vm/stub_code.cc#newcode68 runtime/vm/stub_code.cc:68: void StubCode::GenerateOtherStubsFor(Isolate* init) { I find the name ...
6 years, 2 months ago (2014-10-22 15:45:45 UTC) #3
Florian Schneider
I need to fix an assertion failure with the constant pool for the assembler of ...
6 years, 2 months ago (2014-10-22 16:28:20 UTC) #4
Florian Schneider
All stubs that call into runtime are per-isolate. In order to be able to generate ...
6 years, 2 months ago (2014-10-22 17:57:52 UTC) #5
Vyacheslav Egorov (Google)
lgtm with InitBootstrapStubs moved into Object::Init* I would like Ivan or Siva to check this ...
6 years, 2 months ago (2014-10-24 10:58:08 UTC) #6
Florian Schneider
https://codereview.chromium.org/668193002/diff/40001/runtime/vm/dart.cc File runtime/vm/dart.cc (right): https://codereview.chromium.org/668193002/diff/40001/runtime/vm/dart.cc#newcode212 runtime/vm/dart.cc:212: StubCode::InitBootstrapStubs(isolate); On 2014/10/24 10:58:08, Vyacheslav Egorov (Google) wrote: > ...
6 years, 2 months ago (2014-10-24 11:24:39 UTC) #7
Florian Schneider
6 years, 2 months ago (2014-10-24 12:19:42 UTC) #8
Message was sent while issue was closed.
Committed patchset #5 (id:80001) manually as r41279 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698