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

Issue 1175523002: Object pool with support for untagged entries. (Closed)

Created:
5 years, 6 months ago by Florian Schneider
Modified:
5 years, 6 months ago
Reviewers:
srdjan, Ivan Posva
CC:
reviews_dartlang.org, turnidge, Cutch, vm-dev_dartlang.org
Base URL:
git@github.com:dart-lang/sdk.git@master
Target Ref:
refs/heads/master
Visibility:
Public.

Description

Object pool with support for untagged entries. This adds meta-information to object pool entries to allow storing untagged immediates or code addresses (ExternalLabel) directly. This eliminates the need to generate extra code to preserve the LSB when storing immediates as smis (x64, arm64). BUG= Committed: https://github.com/dart-lang/sdk/commit/265a54411a0b949e5577610b15cec084e3ea49cc

Patch Set 1 #

Patch Set 2 : #

Total comments: 1

Patch Set 3 : #

Total comments: 9

Patch Set 4 : addressed comments #

Patch Set 5 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+530 lines, -259 lines) Patch
M runtime/observatory/tests/service/graph_test.dart View 1 chunk +1 line, -1 line 0 comments Download
M runtime/vm/assembler.h View 1 2 3 2 chunks +44 lines, -27 lines 0 comments Download
M runtime/vm/assembler.cc View 1 2 3 1 chunk +60 lines, -27 lines 0 comments Download
M runtime/vm/assembler_arm.h View 1 2 3 4 2 chunks +5 lines, -5 lines 0 comments Download
M runtime/vm/assembler_arm.cc View 1 2 3 2 chunks +3 lines, -3 lines 0 comments Download
M runtime/vm/assembler_arm64.h View 1 2 3 4 2 chunks +5 lines, -6 lines 0 comments Download
M runtime/vm/assembler_arm64.cc View 1 2 3 7 chunks +15 lines, -16 lines 0 comments Download
M runtime/vm/assembler_ia32.h View 1 2 3 2 chunks +5 lines, -5 lines 0 comments Download
M runtime/vm/assembler_mips.h View 1 2 3 3 chunks +7 lines, -7 lines 0 comments Download
M runtime/vm/assembler_mips.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M runtime/vm/assembler_x64.h View 1 2 3 4 2 chunks +6 lines, -6 lines 0 comments Download
M runtime/vm/assembler_x64.cc View 1 2 3 10 chunks +23 lines, -33 lines 0 comments Download
M runtime/vm/code_patcher_arm.cc View 3 chunks +3 lines, -3 lines 0 comments Download
M runtime/vm/code_patcher_arm64.cc View 5 chunks +8 lines, -8 lines 0 comments Download
M runtime/vm/code_patcher_mips.cc View 3 chunks +4 lines, -3 lines 0 comments Download
M runtime/vm/code_patcher_x64.cc View 6 chunks +12 lines, -14 lines 0 comments Download
M runtime/vm/compiler.cc View 1 chunk +2 lines, -9 lines 0 comments Download
M runtime/vm/deferred_objects.cc View 1 chunk +3 lines, -3 lines 0 comments Download
M runtime/vm/deopt_instructions.h View 3 chunks +4 lines, -4 lines 0 comments Download
M runtime/vm/deopt_instructions.cc View 1 2 3 4 chunks +4 lines, -4 lines 0 comments Download
M runtime/vm/instructions_arm.h View 2 chunks +2 lines, -2 lines 0 comments Download
M runtime/vm/instructions_arm.cc View 4 chunks +5 lines, -13 lines 0 comments Download
M runtime/vm/instructions_arm64.h View 2 chunks +2 lines, -2 lines 0 comments Download
M runtime/vm/instructions_arm64.cc View 4 chunks +5 lines, -13 lines 0 comments Download
M runtime/vm/instructions_mips.h View 2 chunks +2 lines, -2 lines 0 comments Download
M runtime/vm/instructions_mips.cc View 4 chunks +5 lines, -13 lines 0 comments Download
M runtime/vm/instructions_x64.h View 2 chunks +2 lines, -2 lines 0 comments Download
M runtime/vm/instructions_x64.cc View 2 chunks +4 lines, -6 lines 0 comments Download
M runtime/vm/object.h View 1 2 3 8 chunks +113 lines, -3 lines 0 comments Download
M runtime/vm/object.cc View 1 2 3 12 chunks +98 lines, -14 lines 0 comments Download
M runtime/vm/raw_object.h View 5 chunks +26 lines, -1 line 0 comments Download
M runtime/vm/raw_object.cc View 1 2 3 2 chunks +25 lines, -0 lines 0 comments Download
M runtime/vm/raw_object_snapshot.cc View 1 chunk +16 lines, -0 lines 0 comments Download
M runtime/vm/stack_frame.h View 1 chunk +1 line, -1 line 0 comments Download
M runtime/vm/stack_frame.cc View 2 chunks +2 lines, -2 lines 0 comments Download
M runtime/vm/stub_code.cc View 2 chunks +6 lines, -0 lines 0 comments Download
M runtime/vm/symbols.h View 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 6 (1 generated)
Florian Schneider
This is a different approach than https://codereview.chromium.org/1147303002/. Complexity-wise this CL is much simpler. The issue ...
5 years, 6 months ago (2015-06-09 13:18:43 UTC) #2
Florian Schneider
https://codereview.chromium.org/1175523002/diff/20001/runtime/vm/raw_object.h File runtime/vm/raw_object.h (right): https://codereview.chromium.org/1175523002/diff/20001/runtime/vm/raw_object.h#newcode1010 runtime/vm/raw_object.h:1010: RawTypedData* info_array_; This int8-array holds the entry-type for each ...
5 years, 6 months ago (2015-06-09 13:23:08 UTC) #3
srdjan
LGTMwC Do you have any data about memory footprint changes? https://codereview.chromium.org/1175523002/diff/40001/runtime/vm/assembler_arm.cc File runtime/vm/assembler_arm.cc (right): https://codereview.chromium.org/1175523002/diff/40001/runtime/vm/assembler_arm.cc#newcode2665 ...
5 years, 6 months ago (2015-06-09 21:49:47 UTC) #4
Florian Schneider
A quick measurement on dart2js memory usage shows a 300K increase for object pool. This ...
5 years, 6 months ago (2015-06-10 08:26:18 UTC) #5
Florian Schneider
5 years, 6 months ago (2015-06-10 09:41:28 UTC) #6
Message was sent while issue was closed.
Committed patchset #5 (id:80001) manually as
265a54411a0b949e5577610b15cec084e3ea49cc.

Powered by Google App Engine
This is Rietveld 408576698