|
Remove deoptimization by patching the call stack.
We go back to patching the code for lazy deoptimization because ICs need the on-stack return address to read/update the IC address/state.
The change also fixes bunch of tests, mostly by adding more deoptimization points.
(We still need to add code to ensure lazy deopt patching does not overwrite ICs and other lazy deopts; this is coming next.)
BUG=
R=bmeurer@chromium.org
Committed: https://code.google.com/p/v8/source/detail?r=23934
Total comments: 1
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+94 lines, -179 lines) |
Patch |
|
M |
src/compiler/ast-graph-builder.cc
|
View
|
|
4 chunks |
+8 lines, -1 line |
0 comments
|
Download
|
|
M |
src/compiler/code-generator.h
|
View
|
|
4 chunks |
+10 lines, -29 lines |
0 comments
|
Download
|
|
M |
src/compiler/code-generator.cc
|
View
|
1
|
11 chunks |
+32 lines, -37 lines |
1 comment
|
Download
|
|
M |
src/compiler/linkage.cc
|
View
|
|
1 chunk |
+3 lines, -1 line |
0 comments
|
Download
|
|
M |
src/deoptimizer.h
|
View
|
2
3
|
1 chunk |
+0 lines, -2 lines |
0 comments
|
Download
|
|
M |
src/deoptimizer.cc
|
View
|
|
4 chunks |
+2 lines, -44 lines |
0 comments
|
Download
|
|
M |
src/objects.cc
|
View
|
2
3
|
1 chunk |
+0 lines, -7 lines |
0 comments
|
Download
|
|
M |
src/safepoint-table.h
|
View
|
|
9 chunks |
+9 lines, -48 lines |
0 comments
|
Download
|
|
M |
src/safepoint-table.cc
|
View
|
|
5 chunks |
+3 lines, -7 lines |
0 comments
|
Download
|
|
M |
test/cctest/compiler/function-tester.h
|
View
|
|
1 chunk |
+3 lines, -0 lines |
0 comments
|
Download
|
|
M |
test/cctest/compiler/test-js-typed-lowering.cc
|
View
|
1
|
3 chunks |
+23 lines, -2 lines |
0 comments
|
Download
|
|
M |
test/mjsunit/regress/poly_count_operation.js
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
Total messages: 4 (1 generated)
|