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

Issue 10173008: Simplify representation of stack frames. Remove the special types DartFrame/StubFrame and instead u… (Closed)

Created:
8 years, 8 months ago by siva
Modified:
8 years, 8 months ago
Reviewers:
srdjan
CC:
reviews_dartlang.org, vm-dev_dartlang.org
Visibility:
Public.

Description

Simplify representation of stack frames. Remove the special types DartFrame/StubFrame and instead use StackFrame with methods IsDartFrame and IsStubFrame for frames representing Dart or Stub Code. This eliminates all the complexity that was added to ensure that we always see only one stub frame before hitting a dart frame during iteration. Fixes bug 6380625 which was another case when we had two stub frames before hitting the dart frame. Committed: https://code.google.com/p/dart/source/detail?r=6920

Patch Set 1 #

Patch Set 2 : #

Patch Set 3 : #

Patch Set 4 : #

Total comments: 4

Patch Set 5 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+169 lines, -349 lines) Patch
M vm/assembler_ia32.h View 1 2 3 4 1 chunk +1 line, -2 lines 0 comments Download
M vm/assembler_ia32.cc View 1 2 3 4 1 chunk +2 lines, -7 lines 0 comments Download
M vm/assembler_x64.h View 1 2 3 4 1 chunk +1 line, -2 lines 0 comments Download
M vm/assembler_x64.cc View 1 2 3 4 1 chunk +2 lines, -7 lines 0 comments Download
M vm/code_generator.cc View 1 2 3 4 8 chunks +16 lines, -15 lines 0 comments Download
M vm/code_generator_ia32.cc View 1 2 3 4 2 chunks +2 lines, -2 lines 0 comments Download
M vm/code_generator_x64.cc View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M vm/debugger.cc View 1 2 3 4 1 chunk +2 lines, -2 lines 0 comments Download
M vm/exceptions.cc View 1 2 3 4 2 chunks +3 lines, -4 lines 0 comments Download
M vm/flow_graph_compiler_x64.cc View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M vm/native_entry_test.cc View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M vm/object.h View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M vm/raw_object.h View 1 2 3 4 1 chunk +1 line, -2 lines 0 comments Download
M vm/runtime_entry.h View 1 2 3 4 1 chunk +1 line, -2 lines 0 comments Download
M vm/runtime_entry_arm.cc View 1 2 3 4 1 chunk +1 line, -5 lines 0 comments Download
M vm/runtime_entry_ia32.cc View 1 2 3 4 1 chunk +2 lines, -14 lines 0 comments Download
M vm/runtime_entry_x64.cc View 1 2 3 4 1 chunk +2 lines, -14 lines 0 comments Download
M vm/stack_frame.h View 1 2 3 4 7 chunks +19 lines, -71 lines 0 comments Download
M vm/stack_frame.cc View 1 2 3 4 6 chunks +57 lines, -53 lines 0 comments Download
M vm/stack_frame_ia32.cc View 1 2 3 4 3 chunks +0 lines, -13 lines 0 comments Download
M vm/stack_frame_test.cc View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M vm/stack_frame_x64.cc View 1 2 3 4 3 chunks +0 lines, -13 lines 0 comments Download
M vm/stub_code.h View 1 2 3 4 2 chunks +1 line, -4 lines 0 comments Download
M vm/stub_code.cc View 1 2 3 4 1 chunk +0 lines, -9 lines 0 comments Download
M vm/stub_code_ia32.cc View 1 2 3 4 24 chunks +25 lines, -51 lines 0 comments Download
M vm/stub_code_ia32_test.cc View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M vm/stub_code_x64.cc View 1 2 3 4 23 chunks +24 lines, -50 lines 0 comments Download
M vm/stub_code_x64_test.cc View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download

Messages

Total messages: 3 (0 generated)
siva
8 years, 8 months ago (2012-04-24 22:22:33 UTC) #1
srdjan
LGTM https://chromiumcodereview.appspot.com/10173008/diff/11033/vm/code_generator.cc File vm/code_generator.cc (right): https://chromiumcodereview.appspot.com/10173008/diff/11033/vm/code_generator.cc#newcode348 vm/code_generator.cc:348: ASSERT(caller_frame != NULL); Should we add here and ...
8 years, 8 months ago (2012-04-24 23:19:41 UTC) #2
siva
8 years, 8 months ago (2012-04-25 01:14:20 UTC) #3
https://chromiumcodereview.appspot.com/10173008/diff/11033/vm/code_generator.cc
File vm/code_generator.cc (right):

https://chromiumcodereview.appspot.com/10173008/diff/11033/vm/code_generator....
vm/code_generator.cc:348: ASSERT(caller_frame != NULL);
On 2012/04/24 23:19:41, srdjan wrote:
> Should we add here and elsewhere an assert that caller_frame IsDartFrame?

Done.

https://chromiumcodereview.appspot.com/10173008/diff/11033/vm/stack_frame.cc
File vm/stack_frame.cc (right):

https://chromiumcodereview.appspot.com/10173008/diff/11033/vm/stack_frame.cc#...
vm/stack_frame.cc:130: if (code != Code::null() && code->ptr()->function_ !=
Function::null()) {
On 2012/04/24 23:19:41, srdjan wrote:
> Parenthesis needed

Done.

Powered by Google App Engine
This is Rietveld 408576698