|
Pretenure call new support.
When FLAG_pretenure_call_new is on, we emit mementos on new object creation
in full code, and consume the feedback in crankshaft. A key difference in the
generated code for stubs is the allocation of an additional type vector slot for the
CallNew AST node, which simplifies the CallConstructStub and CallFunctionStub
considerably.
Some performance tuning still needs to be addressed, therefore the flag is off at
this moment, though fully functional. The goal is to remove the flag as soon as
possible, which allows much code deletion (yay).
R=hpayer@chromium.org
Committed: https://code.google.com/p/v8/source/detail?r=20076
Total comments: 12
Total comments: 30
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+765 lines, -260 lines) |
Patch |
|
M |
src/a64/builtins-a64.cc
|
View
|
1
2
3
4
5
6
7
8
9
|
7 chunks |
+66 lines, -9 lines |
0 comments
|
Download
|
|
M |
src/a64/code-stubs-a64.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
|
3 chunks |
+55 lines, -40 lines |
0 comments
|
Download
|
|
M |
src/a64/full-codegen-a64.cc
|
View
|
1
2
3
4
5
6
7
8
9
|
1 chunk |
+7 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/arm/builtins-arm.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
|
7 chunks |
+81 lines, -10 lines |
0 comments
|
Download
|
|
M |
src/arm/code-stubs-arm.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
|
3 chunks |
+53 lines, -40 lines |
0 comments
|
Download
|
|
M |
src/arm/full-codegen-arm.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
|
1 chunk |
+7 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/ast.h
|
View
|
1
2
3
4
5
6
7
8
|
2 chunks |
+8 lines, -2 lines |
0 comments
|
Download
|
|
M |
src/ast.cc
|
View
|
1
2
3
4
5
6
7
8
|
1 chunk |
+4 lines, -1 line |
0 comments
|
Download
|
|
M |
src/factory.h
|
View
|
1
2
3
4
5
6
7
|
1 chunk |
+3 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/factory.cc
|
View
|
1
2
3
4
5
6
7
8
9
|
1 chunk |
+11 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/hydrogen.h
|
View
|
1
2
3
4
5
6
7
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/hydrogen.cc
|
View
|
1
2
3
4
5
6
7
8
9
|
1 chunk |
+18 lines, -5 lines |
0 comments
|
Download
|
|
M |
src/ia32/builtins-ia32.cc
|
View
|
1
2
3
4
5
6
7
8
|
5 chunks |
+76 lines, -10 lines |
0 comments
|
Download
|
|
M |
src/ia32/code-stubs-ia32.cc
|
View
|
1
2
3
4
5
6
7
8
|
3 chunks |
+62 lines, -47 lines |
0 comments
|
Download
|
|
M |
src/ia32/full-codegen-ia32.cc
|
View
|
1
2
3
4
5
6
7
8
|
1 chunk |
+7 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/objects-inl.h
|
View
|
1
2
3
4
5
6
7
8
9
10
|
2 chunks |
+5 lines, -3 lines |
0 comments
|
Download
|
|
M |
src/runtime.h
|
View
|
1
2
3
4
5
6
7
8
9
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
src/runtime.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
|
3 chunks |
+37 lines, -7 lines |
0 comments
|
Download
|
|
M |
src/type-info.cc
|
View
|
1
2
3
4
5
6
7
8
|
2 chunks |
+15 lines, -9 lines |
0 comments
|
Download
|
|
M |
src/x64/builtins-x64.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
|
7 chunks |
+75 lines, -10 lines |
0 comments
|
Download
|
|
M |
src/x64/code-stubs-x64.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
|
4 chunks |
+62 lines, -49 lines |
0 comments
|
Download
|
|
M |
src/x64/full-codegen-x64.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
|
1 chunk |
+7 lines, -0 lines |
0 comments
|
Download
|
|
M |
test/cctest/test-heap.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
|
2 chunks |
+39 lines, -0 lines |
0 comments
|
Download
|
|
M |
test/cctest/test-mementos.cc
|
View
|
1
2
3
4
5
6
7
|
1 chunk |
+44 lines, -0 lines |
0 comments
|
Download
|
|
M |
test/mjsunit/allocation-site-info.js
|
View
|
1
2
3
4
5
6
7
8
|
1 chunk |
+4 lines, -5 lines |
0 comments
|
Download
|
|
M |
test/mjsunit/array-constructor-feedback.js
|
View
|
1
2
3
4
5
6
7
8
|
3 chunks |
+16 lines, -13 lines |
0 comments
|
Download
|
Total messages: 8 (0 generated)
|