Reviewers: danno,
Description:
Use simple keyed store again in ArrayPush_JS_Builtin
This reverts the change of array.js in r20839 and recovers 38%
performance regression of DOM-Search case in Browsermark2.0. There is
no performance impact on JavaScript benchmarks (Octane, Kraken and
SunSpider).
BUG=
Please review this at https://codereview.chromium.org/353953002/
SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge
Affected files (+1, -3 lines):
M src/array.js
Index: src/array.js
diff --git a/src/array.js b/src/array.js
index
a16f430d116d31362819af77f3ea124bbd0bab96..e8f7c63c9a743817e65533165a483eacfd5c49c3
100644
--- a/src/array.js
+++ b/src/array.js
@@ -443,9 +443,7 @@ function ArrayPush() {
var m = %_ArgumentsLength();
for (var i = 0; i < m; i++) {
- // Use SetProperty rather than a direct keyed store to ensure that the
store
- // site doesn't become poisened with an elements transition
KeyedStoreIC.
- %SetProperty(array, i+n, %_Arguments(i), 0, kStrictMode);
+ array[i+n] = %_Arguments(i);
}
var new_length = n + m;
--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
---
You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.