Commit a5dfa062 authored by yangguo's avatar yangguo Committed by Commit bot

[unibrow] remove mongolian vowel separator as white space.

Unibrow is currently at Unicode version 7.0.0, which does not
include mongolian vowel separator (\u180E) as white space. In
order to appease test262 at the time however we kept it as a
whitespace.

Test262 has since then been updated. And while this is not an
update of unibrow, we are removing \u180E as white space here.

R=jshin@chromium.org, littledan@chromium.org
BUG=v8:5155

Review-Url: https://codereview.chromium.org/2720953003
Cr-Commit-Position: refs/heads/master@{#43485}
parent 44debc4f
...@@ -3612,8 +3612,8 @@ static const uc32 kRangeEndMarker = 0x110000; ...@@ -3612,8 +3612,8 @@ static const uc32 kRangeEndMarker = 0x110000;
// This covers \s as defined in ECMA-262 5.1, 15.10.2.12, // This covers \s as defined in ECMA-262 5.1, 15.10.2.12,
// which include WhiteSpace (7.2) or LineTerminator (7.3) values. // which include WhiteSpace (7.2) or LineTerminator (7.3) values.
static const int kSpaceRanges[] = { static const int kSpaceRanges[] = {
'\t', '\r' + 1, ' ', ' ' + 1, 0x00A0, 0x00A1, 0x1680, 0x1681, '\t', '\r' + 1, ' ', ' ' + 1, 0x00A0, 0x00A1, 0x1680,
0x180E, 0x180F, 0x2000, 0x200B, 0x2028, 0x202A, 0x202F, 0x2030, 0x1681, 0x2000, 0x200B, 0x2028, 0x202A, 0x202F, 0x2030,
0x205F, 0x2060, 0x3000, 0x3001, 0xFEFF, 0xFF00, kRangeEndMarker}; 0x205F, 0x2060, 0x3000, 0x3001, 0xFEFF, 0xFF00, kRangeEndMarker};
static const int kSpaceRangeCount = arraysize(kSpaceRanges); static const int kSpaceRangeCount = arraysize(kSpaceRanges);
......
...@@ -1284,9 +1284,9 @@ bool ID_Continue::Is(uchar c) { ...@@ -1284,9 +1284,9 @@ bool ID_Continue::Is(uchar c) {
// WhiteSpace: (point.category == 'Zs') or ('JS_White_Space' in // WhiteSpace: (point.category == 'Zs') or ('JS_White_Space' in
// point.properties) // point.properties)
static const uint16_t kWhiteSpaceTable0Size = 7; static const uint16_t kWhiteSpaceTable0Size = 6;
static const int32_t kWhiteSpaceTable0[7] = {9, 1073741835, 12, 32, static const int32_t kWhiteSpaceTable0[6] = {9, 1073741835, 12,
160, 5760, 6158}; // NOLINT 32, 160, 5760}; // NOLINT
static const uint16_t kWhiteSpaceTable1Size = 5; static const uint16_t kWhiteSpaceTable1Size = 5;
static const int32_t kWhiteSpaceTable1[5] = { static const int32_t kWhiteSpaceTable1[5] = {
1073741824, 10, 47, 95, 4096 }; // NOLINT 1073741824, 10, 47, 95, 4096 }; // NOLINT
......
...@@ -19,7 +19,6 @@ var whitespaces = [ ...@@ -19,7 +19,6 @@ var whitespaces = [
// Unicode 6.3.0 whitespaces (category 'Zs') // Unicode 6.3.0 whitespaces (category 'Zs')
0x1680, // Ogham Space Mark 0x1680, // Ogham Space Mark
0x180E, // Mongolian Vowel Separator
0x2000, // EN QUAD 0x2000, // EN QUAD
0x2001, // EM QUAD 0x2001, // EM QUAD
0x2002, // EN SPACE 0x2002, // EN SPACE
......
...@@ -326,18 +326,6 @@ ...@@ -326,18 +326,6 @@
# https://bugs.chromium.org/p/v8/issues/detail?id=5139 # https://bugs.chromium.org/p/v8/issues/detail?id=5139
'annexB/built-ins/Date/prototype/setYear/year-number-relative': [FAIL], 'annexB/built-ins/Date/prototype/setYear/year-number-relative': [FAIL],
# https://bugs.chromium.org/p/v8/issues/detail?id=5155
'language/white-space/mongolian-vowel-separator': [FAIL],
'language/white-space/mongolian-vowel-separator-eval': [FAIL],
'built-ins/RegExp/S15.10.2.12_A2_T1': [FAIL],
'built-ins/RegExp/S15.10.2.12_A1_T1': [FAIL],
'built-ins/parseFloat/S15.1.2.3_A2_T10_U180E': [FAIL],
'built-ins/parseInt/S15.1.2.2_A2_T10_U180E': [FAIL],
'built-ins/String/prototype/trim/u180e': [FAIL],
'built-ins/Number/S9.3.1_A3_T2_U180E': [FAIL],
'built-ins/Number/S9.3.1_A3_T1_U180E': [FAIL],
'built-ins/Number/S9.3.1_A2_U180E': [FAIL],
# https://bugs.chromium.org/p/v8/issues/detail?id=4698 # https://bugs.chromium.org/p/v8/issues/detail?id=4698
'language/expressions/call/tco-call-args': ['--harmony-tailcalls'], 'language/expressions/call/tco-call-args': ['--harmony-tailcalls'],
'language/expressions/call/tco-member-args': ['--harmony-tailcalls'], 'language/expressions/call/tco-member-args': ['--harmony-tailcalls'],
......
...@@ -17,7 +17,6 @@ TEST(CharPredicatesTest, WhiteSpace) { ...@@ -17,7 +17,6 @@ TEST(CharPredicatesTest, WhiteSpace) {
EXPECT_TRUE(WhiteSpace::Is(0x000C)); EXPECT_TRUE(WhiteSpace::Is(0x000C));
EXPECT_TRUE(WhiteSpace::Is(' ')); EXPECT_TRUE(WhiteSpace::Is(' '));
EXPECT_TRUE(WhiteSpace::Is(0x00A0)); EXPECT_TRUE(WhiteSpace::Is(0x00A0));
EXPECT_TRUE(WhiteSpace::Is(0x180E));
EXPECT_TRUE(WhiteSpace::Is(0xFEFF)); EXPECT_TRUE(WhiteSpace::Is(0xFEFF));
} }
...@@ -31,7 +30,6 @@ TEST(CharPredicatesTest, WhiteSpaceOrLineTerminator) { ...@@ -31,7 +30,6 @@ TEST(CharPredicatesTest, WhiteSpaceOrLineTerminator) {
EXPECT_TRUE(WhiteSpaceOrLineTerminator::Is(0x000C)); EXPECT_TRUE(WhiteSpaceOrLineTerminator::Is(0x000C));
EXPECT_TRUE(WhiteSpaceOrLineTerminator::Is(' ')); EXPECT_TRUE(WhiteSpaceOrLineTerminator::Is(' '));
EXPECT_TRUE(WhiteSpaceOrLineTerminator::Is(0x00A0)); EXPECT_TRUE(WhiteSpaceOrLineTerminator::Is(0x00A0));
EXPECT_TRUE(WhiteSpaceOrLineTerminator::Is(0x180E));
EXPECT_TRUE(WhiteSpaceOrLineTerminator::Is(0xFEFF)); EXPECT_TRUE(WhiteSpaceOrLineTerminator::Is(0xFEFF));
// Line terminators // Line terminators
EXPECT_TRUE(WhiteSpaceOrLineTerminator::Is(0x000A)); EXPECT_TRUE(WhiteSpaceOrLineTerminator::Is(0x000A));
......
...@@ -77,7 +77,7 @@ PASS +lf is 0 ...@@ -77,7 +77,7 @@ PASS +lf is 0
PASS +ls is 0 PASS +ls is 0
PASS +ps is 0 PASS +ps is 0
PASS +oghamSpaceMark is 0 PASS +oghamSpaceMark is 0
PASS +mongolianVowelSeparator is 0 FAIL +mongolianVowelSeparator should be 0. Was NaN.
PASS +enQuad is 0 PASS +enQuad is 0
PASS +emQuad is 0 PASS +emQuad is 0
PASS +enSpace is 0 PASS +enSpace is 0
...@@ -101,7 +101,7 @@ PASS +(lf + '1') is 1 ...@@ -101,7 +101,7 @@ PASS +(lf + '1') is 1
PASS +(ls + '1') is 1 PASS +(ls + '1') is 1
PASS +(ps + '1') is 1 PASS +(ps + '1') is 1
PASS +(oghamSpaceMark + '1') is 1 PASS +(oghamSpaceMark + '1') is 1
PASS +(mongolianVowelSeparator + '1') is 1 FAIL +(mongolianVowelSeparator + '1') should be 1. Was NaN.
PASS +(enQuad + '1') is 1 PASS +(enQuad + '1') is 1
PASS +(emQuad + '1') is 1 PASS +(emQuad + '1') is 1
PASS +(enSpace + '1') is 1 PASS +(enSpace + '1') is 1
...@@ -125,7 +125,7 @@ PASS +('1' + lf) is 1 ...@@ -125,7 +125,7 @@ PASS +('1' + lf) is 1
PASS +('1' + ls) is 1 PASS +('1' + ls) is 1
PASS +('1' + ps) is 1 PASS +('1' + ps) is 1
PASS +('1' + oghamSpaceMark) is 1 PASS +('1' + oghamSpaceMark) is 1
PASS +('1' + mongolianVowelSeparator) is 1 FAIL +('1' + mongolianVowelSeparator) should be 1. Was NaN.
PASS +('1' + enQuad) is 1 PASS +('1' + enQuad) is 1
PASS +('1' + emQuad) is 1 PASS +('1' + emQuad) is 1
PASS +('1' + enSpace) is 1 PASS +('1' + enSpace) is 1
......
...@@ -55,7 +55,7 @@ PASS parseFloat(lf + '1') is 1 ...@@ -55,7 +55,7 @@ PASS parseFloat(lf + '1') is 1
PASS parseFloat(ls + '1') is 1 PASS parseFloat(ls + '1') is 1
PASS parseFloat(ps + '1') is 1 PASS parseFloat(ps + '1') is 1
PASS parseFloat(oghamSpaceMark + '1') is 1 PASS parseFloat(oghamSpaceMark + '1') is 1
PASS parseFloat(mongolianVowelSeparator + '1') is 1 FAIL parseFloat(mongolianVowelSeparator + '1') should be 1. Was NaN.
PASS parseFloat(enQuad + '1') is 1 PASS parseFloat(enQuad + '1') is 1
PASS parseFloat(emQuad + '1') is 1 PASS parseFloat(emQuad + '1') is 1
PASS parseFloat(enSpace + '1') is 1 PASS parseFloat(enSpace + '1') is 1
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment