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

Issue 10458031: In generated code for x64 don't load object's class directly from class_ field. (Closed)

Created:
8 years, 6 months ago by Vyacheslav Egorov (Google)
Modified:
8 years, 6 months ago
Reviewers:
srdjan, Ivan Posva
CC:
reviews_dartlang.org
Visibility:
Public.

Description

In generated code for x64 don't load object's class directly from class_ field. Instead look it up in class table by class index taken from object's tags. R=iposva@google.com Committed: https://code.google.com/p/dart/source/detail?r=8159

Patch Set 1 #

Total comments: 14

Patch Set 2 : Address Srdjan suggestions. #

Patch Set 3 : Handle to ZoneHandle #

Patch Set 4 : CoreClass in flow_graph_compiler_x64.cc should return RawClass* #

Total comments: 7

Patch Set 5 : Major renaming on ia32/x64, more class id centered methods (CheckClassIds) #

Patch Set 6 : Eliminate CoreClass helpers on ia32/x64 and use class ids for array classes. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+150 lines, -170 lines) Patch
M runtime/vm/assembler_ia32.h View 1 2 3 4 1 chunk +6 lines, -6 lines 0 comments Download
M runtime/vm/assembler_ia32.cc View 1 2 3 4 2 chunks +18 lines, -18 lines 0 comments Download
M runtime/vm/assembler_x64.h View 1 2 3 4 1 chunk +11 lines, -0 lines 0 comments Download
M runtime/vm/assembler_x64.cc View 1 2 3 4 1 chunk +31 lines, -0 lines 0 comments Download
M runtime/vm/code_generator_ia32.cc View 1 2 3 4 5 10 chunks +12 lines, -29 lines 0 comments Download
M runtime/vm/flow_graph_compiler_x64.h View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M runtime/vm/flow_graph_compiler_x64.cc View 1 2 3 4 5 9 chunks +36 lines, -63 lines 0 comments Download
M runtime/vm/intermediate_language_x64.cc View 1 2 3 4 7 chunks +5 lines, -12 lines 0 comments Download
M runtime/vm/intrinsifier_ia32.cc View 1 2 3 4 6 chunks +5 lines, -12 lines 0 comments Download
M runtime/vm/opt_code_generator_ia32.cc View 1 2 3 4 5 11 chunks +10 lines, -13 lines 0 comments Download
M runtime/vm/stub_code_ia32.cc View 1 2 3 4 5 chunks +4 lines, -5 lines 0 comments Download
M runtime/vm/stub_code_x64.cc View 1 2 3 4 8 chunks +11 lines, -11 lines 0 comments Download

Messages

Total messages: 12 (0 generated)
Vyacheslav Egorov (Google)
Please take a look.
8 years, 6 months ago (2012-05-30 16:11:54 UTC) #1
srdjan
DBC http://codereview.chromium.org/10458031/diff/1/runtime/vm/assembler_x64.cc File runtime/vm/assembler_x64.cc (right): http://codereview.chromium.org/10458031/diff/1/runtime/vm/assembler_x64.cc#newcode1564 runtime/vm/assembler_x64.cc:1564: Register scratch) { You do not need to ...
8 years, 6 months ago (2012-05-30 16:44:00 UTC) #2
Vyacheslav Egorov (Google)
Thanks Srdjan! Comments addressed, CL updated.
8 years, 6 months ago (2012-05-30 17:11:06 UTC) #3
Ivan Posva
Mostly comments about naming, more to come. -Ivan http://codereview.chromium.org/10458031/diff/1/runtime/vm/assembler_x64.h File runtime/vm/assembler_x64.h (right): http://codereview.chromium.org/10458031/diff/1/runtime/vm/assembler_x64.h#newcode524 runtime/vm/assembler_x64.h:524: void ...
8 years, 6 months ago (2012-05-30 17:13:42 UTC) #4
Vyacheslav Egorov (Google)
http://codereview.chromium.org/10458031/diff/1/runtime/vm/assembler_x64.h File runtime/vm/assembler_x64.h (right): http://codereview.chromium.org/10458031/diff/1/runtime/vm/assembler_x64.h#newcode524 runtime/vm/assembler_x64.h:524: void LoadClassIndexOfObject(Register result, Register object); On 2012/05/30 17:13:42, Ivan ...
8 years, 6 months ago (2012-05-30 17:29:57 UTC) #5
Vyacheslav Egorov (Google)
http://codereview.chromium.org/10458031/diff/1/runtime/vm/flow_graph_compiler_x64.cc File runtime/vm/flow_graph_compiler_x64.cc (right): http://codereview.chromium.org/10458031/diff/1/runtime/vm/flow_graph_compiler_x64.cc#newcode142 runtime/vm/flow_graph_compiler_x64.cc:142: Library::CoreImplLibrary()).LookupClass(class_name)); On 2012/05/30 17:13:42, Ivan Posva wrote: > On ...
8 years, 6 months ago (2012-05-30 17:52:36 UTC) #6
Ivan Posva
http://codereview.chromium.org/10458031/diff/1/runtime/vm/assembler_x64.h File runtime/vm/assembler_x64.h (right): http://codereview.chromium.org/10458031/diff/1/runtime/vm/assembler_x64.h#newcode524 runtime/vm/assembler_x64.h:524: void LoadClassIndexOfObject(Register result, Register object); On 2012/05/30 17:29:57, Vyacheslav ...
8 years, 6 months ago (2012-05-30 18:00:30 UTC) #7
Ivan Posva
Probably last set of comments... -Ivan http://codereview.chromium.org/10458031/diff/7008/runtime/vm/flow_graph_compiler_x64.cc File runtime/vm/flow_graph_compiler_x64.cc (right): http://codereview.chromium.org/10458031/diff/7008/runtime/vm/flow_graph_compiler_x64.cc#newcode238 runtime/vm/flow_graph_compiler_x64.cc:238: // R10: instance ...
8 years, 6 months ago (2012-05-30 18:15:19 UTC) #8
Vyacheslav Egorov (Google)
Renamed assembler methods on both ia32 and x64. Made methods more id centric (CompareClassId vs. ...
8 years, 6 months ago (2012-05-30 18:30:47 UTC) #9
Vyacheslav Egorov (Google)
Killed CoreClass both on ia32/x64 and switched to class ids for array classes.
8 years, 6 months ago (2012-05-30 19:01:09 UTC) #10
Vyacheslav Egorov (Google)
ping
8 years, 6 months ago (2012-05-31 08:49:02 UTC) #11
Ivan Posva
8 years, 6 months ago (2012-05-31 12:50:55 UTC) #12
LGTM -ip

Powered by Google App Engine
This is Rietveld 408576698