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

Issue 112082: Fix determining of JS lower stack bottom used in profiler's JS stack tracer to work with Chromium. (Closed)

Created:
11 years, 6 months ago by Mikhail Naganov
Modified:
9 years, 7 months ago
CC:
v8-dev
Visibility:
Public.

Description

Fix determining of JS lower stack bottom used in profiler's JS stack tracer to work with Chromium. My assumption that log initialization happens somewhere near the stack's bottom is true for V8's sample shell but isn't true for Chromium, causing many otherwise valid stack addresses to be thrown out. The solution proposed is to save stack pointer value for the outermost JS function in ThreadLocalTop similar to c_entry_fp. Implemented only for IA-32. Currently I'm not dealing with profiling on ARM and x86-64 anyway. Committed: http://code.google.com/p/v8/source/detail?r=2086

Patch Set 1 #

Total comments: 2
Unified diffs Side-by-side diffs Delta from patch set Stats (+113 lines, -36 lines) Patch
M src/ia32/codegen-ia32.cc View 3 chunks +21 lines, -0 lines 0 comments Download
M src/log.h View 1 chunk +2 lines, -7 lines 0 comments Download
M src/log.cc View 4 chunks +12 lines, -11 lines 0 comments Download
M src/top.h View 3 chunks +20 lines, -0 lines 2 comments Download
M src/top.cc View 1 chunk +3 lines, -0 lines 0 comments Download
M test/cctest/test-log-ia32.cc View 10 chunks +55 lines, -18 lines 0 comments Download

Messages

Total messages: 3 (0 generated)
Mikhail Naganov
Hi Kevin, I would like you to look at this change to be sure that ...
11 years, 6 months ago (2009-06-01 21:04:51 UTC) #1
Søren Thygesen Gjesse
LGTM http://codereview.chromium.org/112082/diff/1/6 File src/top.h (right): http://codereview.chromium.org/112082/diff/1/6#newcode88 Line 88: #define TOP_ADDRESS_LIST(C) \ How about making two ...
11 years, 6 months ago (2009-06-02 09:00:25 UTC) #2
Mikhail Naganov
11 years, 6 months ago (2009-06-02 09:32:32 UTC) #3
Thanks, Søren!

http://codereview.chromium.org/112082/diff/1/6
File src/top.h (right):

http://codereview.chromium.org/112082/diff/1/6#newcode88
Line 88: #define TOP_ADDRESS_LIST(C) \
On 2009/06/02 09:00:25, Søren Gjesse wrote:
> How about making two lists TOP_ADDRESS_LIST_ALWAYS and
> TOP_ADDRESS_LIST_PROFILING? See builtinsh.h and runtime.h where there is a
> separate list for debugger related stuff (in runtime.h there is two _ALWAYS
> lists due to Visual C++ choking on long macros).

Good idea. Done.

Powered by Google App Engine
This is Rietveld 408576698