Reviewers: danno, ulan, Michael Starzinger,
Message:
I've mostly been experimenting on microbenchmarks. I didn't see a
significant
improvement on the V8 benchmark, but I don't think object/array literals are
used that heavily there. Since the write barrier should never be executed in
this case, this mainly just reduces code size.
Description:
Update ReceiverObjectNeedsWriteBarrier to include HFastLiteral
This will prevent unnecessary write barriers for literals.
BUG=none
TEST=none
Committed: https://code.google.com/p/v8/source/detail?r=12823
Please review this at https://codereview.chromium.org/11143005/
SVN Base: http://v8.googlecode.com/svn/branches/bleeding_edge/
Affected files:
M AUTHORS
M src/hydrogen-instructions.h
Index: AUTHORS
===================================================================
--- AUTHORS (revision 12502)
+++ AUTHORS (working copy)
@@ -20,6 +20,7 @@
Craig Schlenter <[email protected]>
Daniel Andersson <[email protected]>
Daniel James <[email protected]>
+Derek J Conrod <[email protected]>
Dineel D Sule <[email protected]>
Erich Ocean <[email protected]>
Fedor Indutny <[email protected]>
Index: src/hydrogen-instructions.h
===================================================================
--- src/hydrogen-instructions.h (revision 12502)
+++ src/hydrogen-instructions.h (working copy)
@@ -3835,7 +3835,8 @@
inline bool ReceiverObjectNeedsWriteBarrier(HValue* object,
HValue* new_space_dominator) {
- return !object->IsAllocateObject() || (object != new_space_dominator);
+ return (!object->IsAllocateObject() && !object->IsFastLiteral()) ||
+ object != new_space_dominator;
}
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev