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

Issue 3141047: Cleanup the way the debugger stores live registers when entering at a break... (Closed)

Created:
10 years, 4 months ago by Søren Thygesen Gjesse
Modified:
9 years, 7 months ago
Reviewers:
Kasper Lund
CC:
v8-dev
Visibility:
Public.

Description

Cleanup the way the debugger stores live registers when entering at a break The live registers are now only stored to the expression stack with the non pointer values being stored as smis (on the 32-bit platforms these values are assumed to be 31-bit max). This makes the CEntryStub entry/exit code much simpler, and there is no longer any need for a mode (debug or normal) on it. Fix a missing live register when breaking at ARM keyed load. Committed: http://code.google.com/p/v8/source/detail?r=5358

Patch Set 1 #

Total comments: 12

Patch Set 2 : '' #

Unified diffs Side-by-side diffs Delta from patch set Stats (+259 lines, -521 lines) Patch
M src/arm/code-stubs-arm.cc View 2 chunks +2 lines, -2 lines 0 comments Download
M src/arm/debug-arm.cc View 1 9 chunks +52 lines, -36 lines 0 comments Download
M src/arm/frames-arm.h View 1 chunk +1 line, -4 lines 0 comments Download
M src/arm/frames-arm.cc View 1 chunk +3 lines, -7 lines 0 comments Download
M src/arm/macro-assembler-arm.h View 2 chunks +3 lines, -9 lines 0 comments Download
M src/arm/macro-assembler-arm.cc View 4 chunks +3 lines, -83 lines 0 comments Download
M src/codegen.h View 2 chunks +1 line, -5 lines 0 comments Download
M src/codegen.cc View 1 1 chunk +3 lines, -4 lines 0 comments Download
M src/debug.h View 5 chunks +2 lines, -13 lines 0 comments Download
M src/frames.h View 1 chunk +0 lines, -1 line 0 comments Download
M src/ia32/code-stubs-ia32.cc View 4 chunks +4 lines, -4 lines 0 comments Download
M src/ia32/debug-ia32.cc View 1 12 chunks +53 lines, -29 lines 0 comments Download
M src/ia32/frames-ia32.cc View 1 chunk +1 line, -0 lines 0 comments Download
M src/ia32/macro-assembler-ia32.h View 3 chunks +5 lines, -12 lines 0 comments Download
M src/ia32/macro-assembler-ia32.cc View 1 6 chunks +12 lines, -112 lines 0 comments Download
M src/serialize.cc View 1 chunk +0 lines, -10 lines 0 comments Download
M src/x64/code-stubs-x64.cc View 4 chunks +4 lines, -4 lines 0 comments Download
M src/x64/debug-x64.cc View 1 12 chunks +58 lines, -29 lines 0 comments Download
M src/x64/frames-x64.cc View 1 chunk +1 line, -1 line 0 comments Download
M src/x64/macro-assembler-x64.h View 3 chunks +5 lines, -13 lines 0 comments Download
M src/x64/macro-assembler-x64.cc View 5 chunks +11 lines, -123 lines 0 comments Download
M test/cctest/cctest.status View 1 chunk +0 lines, -4 lines 0 comments Download
M test/cctest/test-debug.cc View 1 2 chunks +35 lines, -1 line 0 comments Download
test/cctest/test-serialize.cc View 3 chunks +0 lines, -15 lines 0 comments Download

Messages

Total messages: 3 (0 generated)
Søren Thygesen Gjesse
10 years, 4 months ago (2010-08-26 13:08:45 UTC) #1
Kasper Lund
LGTM! http://codereview.chromium.org/3141047/diff/1/10 File src/debug.h (right): http://codereview.chromium.org/3141047/diff/1/10#newcode332 src/debug.h:332: k_after_break_target_address, Weird naming. Should all be kAfterBreak... right? ...
10 years, 4 months ago (2010-08-26 13:31:04 UTC) #2
Søren Thygesen Gjesse
10 years, 3 months ago (2010-08-27 07:05:51 UTC) #3
http://codereview.chromium.org/3141047/diff/1/10
File src/debug.h (right):

http://codereview.chromium.org/3141047/diff/1/10#newcode332
src/debug.h:332: k_after_break_target_address,
On 2010/08/26 13:31:04, Kasper Lund wrote:
> Weird naming. Should all be kAfterBreak... right? Feel free to keep it for
now.

Yes, I will fix these ugly names in a separate CL.

http://codereview.chromium.org/3141047/diff/1/13
File src/ia32/debug-ia32.cc (right):

http://codereview.chromium.org/3141047/diff/1/13#newcode116
src/ia32/debug-ia32.cc:116: __ SmiTag(reg);
On 2010/08/26 13:31:04, Kasper Lund wrote:
> Is there any way you could add code that checks that we're not losing any
> information by the tagging process (maybe check that the top two bits of reg
are
> 00)? Goes for all platforms.

Added check for top two bits being zero when --debug-code is set. On ARM as
well.

http://codereview.chromium.org/3141047/diff/1/13#newcode136
src/ia32/debug-ia32.cc:136: __ Set(reg, Immediate(1));
On 2010/08/26 13:31:04, Kasper Lund wrote:
> if (FLAG_debug_code)? Use a zap value instead? Use on the other platforms?

Done.

http://codereview.chromium.org/3141047/diff/1/15
File src/ia32/macro-assembler-ia32.cc (right):

http://codereview.chromium.org/3141047/diff/1/15#newcode333
src/ia32/macro-assembler-ia32.cc:333: 
On 2010/08/26 13:31:04, Kasper Lund wrote:
> Extra spacing here.

Done.

http://codereview.chromium.org/3141047/diff/1/15#newcode353
src/ia32/macro-assembler-ia32.cc:353: 
On 2010/08/26 13:31:04, Kasper Lund wrote:
> Extra spacing here.

Done.

http://codereview.chromium.org/3141047/diff/1/24
File test/cctest/test-debug.cc (right):

http://codereview.chromium.org/3141047/diff/1/24#newcode1188
test/cctest/test-debug.cc:1188: v8::Script::Compile(v8::String::New("function
foo(){return new bar(1).x;}"))->Run();
On 2010/08/26 13:31:04, Kasper Lund wrote:
> Line too long.

Done.

Powered by Google App Engine
This is Rietveld 408576698