From c3746b43882af343d5d58dab7311c13255eee1f6 Mon Sep 17 00:00:00 2001 From: "mvstanton@chromium.org" Date: Mon, 21 Jan 2013 16:15:08 +0000 Subject: [PATCH] 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= Review URL: https://codereview.chromium.org/12049003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13456 ce2b1a6d-e550-0410-aec6-3dcde31c8c00 --- test/mjsunit/allocation-site-info.js | 74 +++++++++++++++--------------------- test/mjsunit/regress/regress-2185.js | 2 + 2 files changed, 33 insertions(+), 43 deletions(-) diff --git a/test/mjsunit/allocation-site-info.js b/test/mjsunit/allocation-site-info.js index 851ad41..f4263af 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 diff --git a/test/mjsunit/regress/regress-2185.js b/test/mjsunit/regress/regress-2185.js index 895f322..9b91066 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++) { -- 2.7.4