|
Generate specialized constructor code for constructing simple objects.
For objects which only have simple assignments of the form this.x = ...; a
specialized constructor stub is now generated. This generated code allocates the
object and fills in the initial properties directly. If this fails for some
reason code continues in the generic constructor stub which in turn might pass
control to the runtime system.
Added counter to see how many objects are constructed using a specialized stub.
The specialized stub is only implemented for ia32 architecture in this change.
For x64 and ARM the generic construct stub is used.
This is change is identical to http://codereview.chromium.org/174392 (committed in r2753 and reverted in r2754) except that a few parts have already been committed from http://codereview.chromium.org/173469 (committed in r2762).
Committed: http://code.google.com/p/v8/source/detail?r=2764
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+327 lines, -13 lines) |
Patch |
|
M |
src/arm/stub-cache-arm.cc
|
View
|
|
1 chunk |
+12 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/debug-delay.js
|
View
|
|
1 chunk |
+7 lines, -2 lines |
0 comments
|
Download
|
|
M |
src/ia32/builtins-ia32.cc
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
src/ia32/stub-cache-ia32.cc
|
View
|
|
1 chunk |
+140 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/objects.h
|
View
|
|
2 chunks |
+6 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/objects.cc
|
View
|
|
2 chunks |
+38 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/runtime.h
|
View
|
|
1 chunk |
+2 lines, -1 line |
0 comments
|
Download
|
|
M |
src/runtime.cc
|
View
|
|
6 chunks |
+39 lines, -7 lines |
0 comments
|
Download
|
|
M |
src/stub-cache.h
|
View
|
|
1 chunk |
+11 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/stub-cache.cc
|
View
|
|
1 chunk |
+7 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/v8-counters.h
|
View
|
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
src/x64/stub-cache-x64.cc
|
View
|
|
1 chunk |
+12 lines, -0 lines |
0 comments
|
Download
|
|
M |
test/mjsunit/debug-stepin-constructor.js
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
test/mjsunit/simple-constructor.js
|
View
|
|
2 chunks |
+47 lines, -2 lines |
0 comments
|
Download
|
Total messages: 2 (0 generated)
|