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

Issue 10868106: Print reason for disabling optimization. Kill --trace-bailout flag. (Closed)

Created:
8 years, 3 months ago by Sven Panne
Modified:
8 years, 3 months ago
CC:
v8-dev
Visibility:
Public.

Description

Print reason for disabling optimization. Kill --trace-bailout flag. The reason for disabling optimization of a given function is carried around in CompilationInfo. The new mechanism is general enough that --trace-opt now subsumes everything --trace-bailout could print, so we nuked the latter flag. Committed: https://code.google.com/p/v8/source/detail?r=12391

Patch Set 1 #

Patch Set 2 : Play safe and initialize reason. #

Patch Set 3 : Removed dead code. #

Patch Set 4 : Simplified #

Total comments: 2

Patch Set 5 : Rebased. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+60 lines, -123 lines) Patch
M src/arm/lithium-arm.h View 1 chunk +1 line, -1 line 0 comments Download
M src/arm/lithium-arm.cc View 1 chunk +2 lines, -11 lines 0 comments Download
M src/arm/lithium-codegen-arm.h View 1 chunk +1 line, -1 line 0 comments Download
M src/arm/lithium-codegen-arm.cc View 1 chunk +2 lines, -11 lines 0 comments Download
M src/compiler.h View 1 2 3 4 chunks +7 lines, -1 line 0 comments Download
M src/compiler.cc View 1 2 3 4 5 chunks +17 lines, -6 lines 0 comments Download
M src/flag-definitions.h View 1 chunk +0 lines, -2 lines 0 comments Download
M src/hydrogen.cc View 3 chunks +3 lines, -7 lines 0 comments Download
M src/ia32/lithium-codegen-ia32.h View 1 chunk +1 line, -1 line 0 comments Download
M src/ia32/lithium-codegen-ia32.cc View 1 chunk +2 lines, -11 lines 0 comments Download
M src/ia32/lithium-ia32.h View 1 chunk +1 line, -1 line 0 comments Download
M src/ia32/lithium-ia32.cc View 1 chunk +2 lines, -11 lines 0 comments Download
M src/lithium.cc View 1 2 3 4 1 chunk +4 lines, -7 lines 0 comments Download
M src/mips/lithium-codegen-mips.h View 1 chunk +1 line, -1 line 0 comments Download
M src/mips/lithium-codegen-mips.cc View 2 chunks +3 lines, -12 lines 0 comments Download
M src/mips/lithium-mips.h View 1 chunk +1 line, -1 line 0 comments Download
M src/mips/lithium-mips.cc View 1 chunk +2 lines, -11 lines 0 comments Download
M src/objects.h View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M src/objects.cc View 1 2 3 4 2 chunks +3 lines, -2 lines 0 comments Download
M src/x64/lithium-codegen-x64.h View 1 chunk +1 line, -1 line 0 comments Download
M src/x64/lithium-codegen-x64.cc View 1 chunk +2 lines, -11 lines 0 comments Download
M src/x64/lithium-x64.h View 1 chunk +1 line, -1 line 0 comments Download
M src/x64/lithium-x64.cc View 1 chunk +2 lines, -11 lines 0 comments Download

Messages

Total messages: 4 (0 generated)
Sven Panne
8 years, 3 months ago (2012-08-27 14:06:07 UTC) #1
Jakob Kummerow
LGTM with an idea for further simplification. http://codereview.chromium.org/10868106/diff/4001/src/lithium.cc File src/lithium.cc (right): http://codereview.chromium.org/10868106/diff/4001/src/lithium.cc#newcode393 src/lithium.cc:393: LChunk* LChunk::NewChunk(HGraph* ...
8 years, 3 months ago (2012-08-27 14:26:02 UTC) #2
Vyacheslav Egorov (Google)
qq: does it correctly attribute bailout that happened inside one of the function we are ...
8 years, 3 months ago (2012-08-27 14:33:43 UTC) #3
Sven Panne
8 years, 3 months ago (2012-08-28 07:17:07 UTC) #4
Regarding inlined functions: Crankshaft keeps a stack of FunctionStates with an
entry for each inlining level, and each state has its own CompilationInfo.
Therefore we don't attribute things to the wrong level, but I think we might
lose some info when popping the stack. But I have to admit that I can't come up
with a good repro. :-)

Landing...

http://codereview.chromium.org/10868106/diff/4001/src/lithium.cc
File src/lithium.cc (right):

http://codereview.chromium.org/10868106/diff/4001/src/lithium.cc#newcode393
src/lithium.cc:393: LChunk* LChunk::NewChunk(HGraph* graph, CompilationInfo*
info) {
On 2012/08/27 14:26:02, Jakob wrote:
> Instead of passing in |info|, can't you just use graph->info() (as line 403
does
> anyway)?

Good point, I missed that one after refactoring back and forth. Not needing
another argument is a good sign that CompilationInfo is indeed the right place
to keep the bailout reason. Done.

Powered by Google App Engine
This is Rietveld 408576698