Index: test/mjsunit/thin-strings.js |
diff --git a/test/mjsunit/thin-strings.js b/test/mjsunit/thin-strings.js |
deleted file mode 100644 |
index c86764259ac93f113fe09ef4939c3564117833e9..0000000000000000000000000000000000000000 |
--- a/test/mjsunit/thin-strings.js |
+++ /dev/null |
@@ -1,90 +0,0 @@ |
-// Copyright 2016 the V8 project authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-// Flags: --allow-natives-syntax |
- |
-function get_thin_string(a, b) { |
- var str = a + b; // Make a ConsString. |
- var o = {}; |
- o[str]; // Turn it into a ThinString. |
- return str; |
-} |
- |
-var str = get_thin_string("foo", "bar"); |
- |
-var re = /.o+ba./; |
-assertEquals(["foobar"], re.exec(str)); |
-assertEquals(["foobar"], re.exec(str)); |
-assertEquals(["foobar"], re.exec(str)); |
- |
-function CheckCS() { |
- assertEquals("o", str.substring(1, 2)); |
- assertEquals("f".charCodeAt(0), str.charCodeAt(0)); |
- assertEquals("f", str.split(/oo/)[0]); |
-} |
-CheckCS(); |
-%OptimizeFunctionOnNextCall(CheckCS); |
-CheckCS(); |
- |
-function CheckTF() { |
- try {} catch(e) {} // Turbofan. |
- assertEquals("o", str.substring(1, 2)); |
- assertEquals("f".charCodeAt(0), str.charCodeAt(0)); |
- assertEquals("f", str.split(/oo/)[0]); |
-} |
-CheckTF(); |
-%OptimizeFunctionOnNextCall(CheckTF); |
-CheckTF(); |
- |
-// Flat cons strings can point to a thin string. |
- |
-function get_cons_thin_string(a, b) { |
- // Make a ConsString. |
- var s = a + b; |
- // Flatten it. |
- s.endsWith("a"); |
- // Internalize the first part. |
- var o = {}; |
- o[s]; |
- return s; |
-} |
- |
-var s = get_cons_thin_string("__________", "@@@@@@@@@@a"); |
-s.match(/.*a/); |
-assertEquals("________", s.substring(0, 8)); |
- |
-function cc1(s) { |
- assertEquals(95, s.charCodeAt(0)); |
- assertEquals(95, s.codePointAt(0)); |
-} |
-cc1(s); |
-cc1(s); |
-%OptimizeFunctionOnNextCall(cc1); |
-cc1(s); |
- |
-// Sliced strings can have a thin string as their parent. |
- |
-function get_sliced_thin_string(a, b) { |
- // Make a long thin string. |
- var s = a + b; |
- // Slice a substring out of it. |
- var slice = s.substring(0, 20); |
- // Make the original string thin. |
- var o = {}; |
- o[s]; |
- return slice; |
-} |
- |
-var t = get_sliced_thin_string("abcdefghijklmnopqrstuvwxyz", |
- "abcdefghijklmnopqrstuvwxyz"); |
-assertEquals("abcdefghijklmnopqrst", decodeURI(t)); |
- |
-function cc2(s) { |
- assertEquals(97, s.charCodeAt(0)); |
- assertEquals(97, s.codePointAt(0)); |
-} |
-cc2(t); |
-cc2(t); |
-%OptimizeFunctionOnNextCall(cc2); |
-cc2(t); |