Reviewers: Yang,

Message:
Hi Yang, here is the fix for the issues seen on push to trunk.

Description:
allocation-site-info.js broken on arm with new changes. Reverting to previous
version until diagnosed.
Regress-2185.js test takes too long on slow path when allocation site info is
discovered.

BUG=


Please review this at https://codereview.chromium.org/12049003/

SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge

Affected files:
  M test/mjsunit/allocation-site-info.js
  M test/mjsunit/regress/regress-2185.js


Index: test/mjsunit/allocation-site-info.js
diff --git a/test/mjsunit/allocation-site-info.js b/test/mjsunit/allocation-site-info.js index 851ad418a2e5c3ad0289414cb52eab3988ce4dad..f4263aff0c74eec6fe08c022b14a28036d43fb4c 100644
--- a/test/mjsunit/allocation-site-info.js
+++ b/test/mjsunit/allocation-site-info.js
@@ -75,52 +75,40 @@ function assertKind(expected, obj, name_opt) {
 }

 if (support_smi_only_arrays) {
-  function fastliteralcase(literal, value) {
-    // var literal = [1, 2, 3];
-    literal[0] = value;
-    return literal;
-  }
-
-  function get_standard_literal() {
-    var literal = [1, 2, 3];
-    return literal;
-  }
+    function fastliteralcase(value) {
+        var literal = [1, 2, 3];
+        literal[0] = value;
+        return literal;
+    }

-  // Case: [1,2,3] as allocation site
-  obj = fastliteralcase(get_standard_literal(), 1);
-  assertKind(elements_kind.fast_smi_only, obj);
-  obj = fastliteralcase(get_standard_literal(), 1.5);
-  assertKind(elements_kind.fast_double, obj);
-  obj = fastliteralcase(get_standard_literal(), 2);
-  assertKind(elements_kind.fast_double, obj);
+    // Case: [1,2,3] as allocation site
+    obj = fastliteralcase(1);
+    assertKind(elements_kind.fast_smi_only, obj);
+    obj = fastliteralcase(1.5);
+    assertKind(elements_kind.fast_double, obj);
+    obj = fastliteralcase(2);
+    assertKind(elements_kind.fast_double, obj);

-  obj = fastliteralcase([5, 3, 2], 1.5);
-  assertKind(elements_kind.fast_double, obj);
-  obj = fastliteralcase([3, 6, 2], 1.5);
-  assertKind(elements_kind.fast_double, obj);
-  obj = fastliteralcase([2, 6, 3], 2);
-  assertKind(elements_kind.fast_smi_only, obj);
+    // Verify that we will not pretransition the double->fast path.
+    obj = fastliteralcase("elliot");
+    assertKind(elements_kind.fast, obj);

-  // Verify that we will not pretransition the double->fast path.
-  obj = fastliteralcase(get_standard_literal(), "elliot");
-  assertKind(elements_kind.fast, obj);
+    // This fails until we turn off optimistic transitions to the
+    // most general elements kind seen on keyed stores. It's a goal
+    // to turn it off, but for now we need it.
+    // obj = fastliteralcase(3);
+    // assertKind(elements_kind.fast_double, obj);

-  // This fails until we turn off optimistic transitions to the
-  // most general elements kind seen on keyed stores. It's a goal
-  // to turn it off, but for now we need it.
-  // obj = fastliteralcase(3);
-  // assertKind(elements_kind.fast_double, obj);
-
-  function fastliteralcase_smifast(value) {
-    var literal = [1, 2, 3, 4];
-    literal[0] = value;
-    return literal;
-  }
+    function fastliteralcase_smifast(value) {
+        var literal = [1, 2, 3, 4];
+        literal[0] = value;
+        return literal;
+    }

-  obj = fastliteralcase_smifast(1);
-  assertKind(elements_kind.fast_smi_only, obj);
-  obj = fastliteralcase_smifast("carter");
-  assertKind(elements_kind.fast, obj);
-  obj = fastliteralcase_smifast(2);
-  assertKind(elements_kind.fast, obj);
+    obj = fastliteralcase_smifast(1);
+    assertKind(elements_kind.fast_smi_only, obj);
+    obj = fastliteralcase_smifast("carter");
+    assertKind(elements_kind.fast, obj);
+    obj = fastliteralcase_smifast(2);
+    assertKind(elements_kind.fast, obj);
 }
\ No newline at end of file
Index: test/mjsunit/regress/regress-2185.js
diff --git a/test/mjsunit/regress/regress-2185.js b/test/mjsunit/regress/regress-2185.js index 895f322fc63880b2a5c3f0480673d6f01cace9cd..9b91066f33b34feb9de68d6fa61aa24b8423eac4 100644
--- a/test/mjsunit/regress/regress-2185.js
+++ b/test/mjsunit/regress/regress-2185.js
@@ -25,6 +25,8 @@
 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

+// Flags: --noenable-slow-asserts
+
 var a = [];

 for (var i = 0; i < 2; i++) {


--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to