- 20 Apr, 2021 1 commit
-
-
Frank Tang authored
Diary https://docs.google.com/document/d/1T60FUG62FuvZ447FNoK81uE1fgJ7bayPf_w-rPqFrFM https://chromium.googlesource.com/chromium/deps/icu.git/+log/81d6568..7e7574bd chrome DEPS rolling https://chromium-review.googlesource.com/c/chromium/src/+/2824939 Bug: chromium:1193795 Change-Id: Ibccb97fe9b6b0601676800dea6c066e0d66a0a6f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2793151Reviewed-by:
Shu-yu Guo <syg@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/master@{#74075}
-
- 10 Dec, 2020 2 commits
-
-
Frank Tang authored
cl for chrome/src/DEPS in https://chromium-review.googlesource.com/c/chromium/src/+/2582536 Bug: v8:10447 Change-Id: I28452cab64f000aa8cc466290ffcc97aa0b41f78 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2583189 Commit-Queue: Shu-yu Guo <syg@chromium.org> Auto-Submit: Frank Tang <ftang@chromium.org> Reviewed-by:
Maya Lekova <mslekova@chromium.org> Reviewed-by:
Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/master@{#71702}
-
Frank Tang authored
This is a reland of c9c3ec4c Original change's description: > [intl] Clean up intl_segmenter flag > > Intl.Segmenter shipped in m87 and launched. > > Bug: v8:11225 > Change-Id: I4213e261e1aea717c1281f19785a8c29ff1bbd8b > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2570461 > Commit-Queue: Frank Tang <ftang@chromium.org> > Reviewed-by: Shu-yu Guo <syg@chromium.org> > Cr-Commit-Position: refs/heads/master@{#71653} Bug: v8:11225, v8:11240 Change-Id: Ibded9038671862d90206d328f8a12db51c40e63c Cq-Include-Trybots: luci.v8.try:v8_linux64_gc_stress_custom_snapshot_dbg_ng,v8_linux_arm64_gc_stress_dbg_ng,v8_linux_gc_stress_dbg_ng,v8_mac64_gc_stress_dbg_ng Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2579043 Commit-Queue: Frank Tang <ftang@chromium.org> Reviewed-by:
Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/master@{#71691}
-
- 08 Dec, 2020 2 commits
-
-
Clemens Backes authored
This reverts commit c9c3ec4c. Reason for revert: Speculative revert for https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Linux64%20GC%20Stress%20-%20custom%20snapshot/34616/overview (looks unrelated, but fails consistently since this CL) Original change's description: > [intl] Clean up intl_segmenter flag > > Intl.Segmenter shipped in m87 and launched. > > Bug: v8:11225 > Change-Id: I4213e261e1aea717c1281f19785a8c29ff1bbd8b > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2570461 > Commit-Queue: Frank Tang <ftang@chromium.org> > Reviewed-by: Shu-yu Guo <syg@chromium.org> > Cr-Commit-Position: refs/heads/master@{#71653} TBR=jkummerow@chromium.org,ftang@chromium.org,syg@chromium.org Change-Id: Ic1d1b02abb9ae7faa41307eee694bb7e40d0fae2 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:11225 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2578979Reviewed-by:
Clemens Backes <clemensb@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#71657}
-
Frank Tang authored
Intl.Segmenter shipped in m87 and launched. Bug: v8:11225 Change-Id: I4213e261e1aea717c1281f19785a8c29ff1bbd8b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2570461 Commit-Queue: Frank Tang <ftang@chromium.org> Reviewed-by:
Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/master@{#71653}
-
- 20 Nov, 2020 1 commit
-
-
Frank Tang authored
LocaleBuilder validates better, it also fixes most cases in transformed-ext-invalid except one. Bug: v8:10447 Change-Id: I6fed6692ca3264198e42ccc3d9ca4bfb54fb0517 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2549688 Commit-Queue: Frank Tang <ftang@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#71300}
-
- 18 Nov, 2020 1 commit
-
-
Frank Tang authored
Bug: v8:9613, v8:10447 Change-Id: Iff43b298c6edaa9b258038ae15406d5df209e8b5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2543266 Commit-Queue: Frank Tang <ftang@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#71267}
-
- 18 Dec, 2019 1 commit
-
-
Frank Tang authored
Implement the ECMA402 localeMatcher: "best fit" option by using ICU LocaleMatcher API. Bug: v8:7051 Change-Id: I3d7c1ee39a5c649a5f500429f2b41329346a1a78 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1943050Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/master@{#65507}
-
- 16 Sep, 2019 1 commit
-
-
Frank Tang authored
Bug: v8:9613 Change-Id: Ie91a5bd39c82b6baf33fd84dee8420d2c4a5f504 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1803783 Commit-Queue: Frank Tang <ftang@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#63815}
-
- 21 Jun, 2019 1 commit
-
-
Frank Tang authored
1. Check resources and not solely depend on res_index.res file 2. Performance is +2-3% for Collator, DateTimeFormat, Locale, -2-3% for PluralRules, RelativeTimeFormat, ListFormat, NumberFormat Consider we improve the performance x3 not long ago, these perf regression could be ignored. Bug: v8:9340 Change-Id: Iab7cd64a77a55a03aae40f4d477523c37b3bcd3d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1655978 Commit-Queue: Frank Tang <ftang@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Jungshik Shin <jshin@chromium.org> Cr-Commit-Position: refs/heads/master@{#62322}
-
- 11 May, 2019 1 commit
-
-
Frank Tang authored
harmony-locale is shipped in m74 and m74 is already out. Remove harmony-locale flag from the code. Bug: v8:8910 Change-Id: If9634b6767cfe449cfa03980bbad26ceb7408c79 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1592465 Commit-Queue: Frank Tang <ftang@chromium.org> Reviewed-by:
Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#61429}
-
- 10 May, 2019 1 commit
-
-
Frank Tang authored
Bug: v8:5751 Change-Id: Icfd4b86499395b49f67a97e46d1b1b87ed9c01eb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1605356Reviewed-by:
Mathias Bynens <mathias@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/master@{#61423}
-
- 23 Jan, 2019 1 commit
-
-
Frank Tang authored
Follow up cl for the change of CanonicalizeLocaleList in https://tc39.github.io/proposal-intl-locale/#sec-canonicalizelocalelist Bug: v8:8655 Change-Id: I2505057e03511806320104974519fd4b97848b53 Reviewed-on: https://chromium-review.googlesource.com/c/1423323Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/master@{#59014}
-
- 15 Jan, 2019 1 commit
-
-
Frank Tang authored
Change the code to reflect https://tc39.github.io/proposal-intl-locale/#sec-canonicalizelocalelist Bug: v8:8655 Change-Id: I114488dee854b7322a5719de13e4fb8b6f18283c Reviewed-on: https://chromium-review.googlesource.com/c/1400851 Commit-Queue: Frank Tang <ftang@chromium.org> Reviewed-by:
Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#58808}
-
- 30 Oct, 2018 1 commit
-
-
Jungshik Shin authored
In Chromium tree, ICU is rolled to 63.1. And, auto-roller will soon try to roll ICU in v8 to 63.1. Due to a nodejs trybot issue, autoroll needs a manual intervention. In the meantime, this CL will get rid of other blocking issues for ICU update. Prepare for the ICU roll by revising test/intl as following: * Line breaking loose mode is now supported in the Chromium's copy of ICU. Adjust the test expectation. * ICU's uloc_* can handle overlong locale ids. Drop tests that are not valid any more. Once ICU is rolled, a couple of TSAN-suppressed tests can be unsuppressed, but that has to be done in a separate CL. Bug: chromium:893196,v8:8272, v8:8110 Test: intl/*, test262/test402/* Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: I17f11457b61376b1e8d41bbbc951fa6cd3355a54 Reviewed-on: https://chromium-review.googlesource.com/c/1289369 Commit-Queue: Jungshik Shin <jshin@chromium.org> Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Reviewed-by:
Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#57105}
-
- 08 Oct, 2018 1 commit
-
-
Sathya Gunasekaran authored
Fix spec non compliance by only trimming the unicode locales and not all extensions. Remove regexp and just use straightforward string manipulation. Bug: v8:5751 Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: Ie95828a8f62834daf8cde189f408e95a14e796fe Reviewed-on: https://chromium-review.googlesource.com/c/1255556 Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by:
Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#56458}
-
- 05 Oct, 2018 1 commit
-
-
Jungshik Shin authored
- Get rid of an unnecessary call to uloc_canonicalize in js-locale. - Do not use regex, but rely on ICU for the structrural validity check with Chrome's ICU or ICU 63 or newer. Otherwise, continue to use regex. This became possible thanks to a couple of bug fixes in ICU ToT that were cherry-picked for Chromium's ICU. Not yet done is to change js-locale to use CanonicalizeLocale(). That will make a few more tests pass. Bug: v8:8135 Test: test262/intl402/Intl/getCanonicalLocales/* Test: test262/intl402/Locale/* Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I45c10b298fb041e0b39a4d96309c68a7966f91c2 Reviewed-on: https://chromium-review.googlesource.com/c/1215223 Commit-Queue: Jungshik Shin <jshin@chromium.org> Reviewed-by:
Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#56399}
-
- 24 Sep, 2018 1 commit
-
-
Sergiy Byelozyorov authored
Rolling v8/third_party/icu: https://chromium.googlesource.com/chromium/deps/icu/+log/7ca3ffa..c52a2a2 This includes fixes from https://crrev.com/c/1240414. TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: I2afd319dbb244356a9bb057eb80c5fb0310b8686 Reviewed-on: https://chromium-review.googlesource.com/1240106Reviewed-by:
Sathya Gunasekaran <gsathya@chromium.org> Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> Cr-Commit-Position: refs/heads/master@{#56181}
-
- 31 Jul, 2018 1 commit
-
-
Jungshik Shin authored
ICU maps a few grandfathered tags to made-up values even when there is no preferred value entry in the IANA language tag registry. [1] 1. Check for grandfathered tags without preferred value upfront and return them as they're. 2. Lowercase the input before structural validity check to simplify check for grandfathered tag without preferred value as well as regexps used in the structural validity check. intl/general/grandfathered_tags_without_preferred_value is added and intl/general/language_tags_with_preferred_values is changed to check for case-insensitive matching of grandfathered tags. [1] https://www.iana.org/assignments/language-subtag-registry/language-subtag-registry Bug: v8:7669 Test: test262/intl402/Intl/getCanonicalLocales/preferred-grandfathered Test: intl/general/grandfathered_tags_without_preferred_value Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: Ie0520de8712928300fd71fe152909789483ec256 Reviewed-on: https://chromium-review.googlesource.com/1156529 Commit-Queue: Jungshik Shin <jshin@chromium.org> Reviewed-by:
Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#54829}
-
- 27 Jul, 2018 1 commit
-
-
Brian Stell authored
Also removed an obsolete test that is covered by test262/intl402 Bug: v8:7954, v8:5751 Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: I41113653cd27c165e6f0a52e4b63bb9ddc553cba Reviewed-on: https://chromium-review.googlesource.com/1150453 Commit-Queue: Jungshik Shin <jshin@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Jungshik Shin <jshin@chromium.org> Cr-Commit-Position: refs/heads/master@{#54757}
-
- 11 Jun, 2018 1 commit
-
-
Brian Stell authored
R=gsathya@chromium.org, littledan@chromium.org Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: Ib3806f2b8d6f8adf61fe0dc8c327c461e1d20304 Reviewed-on: https://chromium-review.googlesource.com/1095558 Commit-Queue: Brian Stell <bstell@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by:
Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#53653}
-
- 26 Apr, 2018 1 commit
-
-
Jungshik Shin authored
Not all 2 or 3 letter language codes are canonical. Some of them need to be canonicalized. Specifically, exclude {jw,ji,iw,in} and all three-letter codes from the fast path except for 'fil'. {jw,ji,iw,in} are deprecated ISO 639 codes for {Javanese, Yiddish, Hebrew, Indonesian}. They should be canonicalized to {jv,yi,he,id}. So, do not return early in the fast path, but pass it down to the full canonicalization. In addition, there are 70+ deprecated 3-letter codes that need to be replaced by their modern equivalents. Instead of checking and replacing in v8, just pass them to ICU to handle. Along with the following ICU change, two more tests will pass. https://chromium-review.googlesource.com/c/chromium/deps/icu/+/1026797 These two tests still fail because of the disagreement between ICU and the test expectations about 5 grandfathered tags with no preferred value (e.g. i-default, zh-min, cel-gaulish). 'intl402/Intl/getCanonicalLocales/canonicalized-tags' 'intl402/Intl/getCanonicalLocales/preferred-grandfathered' Bug: v8:5693, v8:7669 Test: test262/intl402/language-tags-canonicalized.js Test: test262/intl402/Intl/preferred-variants.js Test: intl/general/language_tags_with_preferred_values.js Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: Ide7e9c90ac046859604c7b71c641f84ce9c64be5 Reviewed-on: https://chromium-review.googlesource.com/1023379Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Jungshik Shin <jshin@chromium.org> Cr-Commit-Position: refs/heads/master@{#52823}
-
- 12 Oct, 2017 1 commit
-
-
Jungshik Shin authored
- remove unused Runtime_GetLanguageTagVariants - add test for another related bug (chromium:770452) as well as for chromium:770450 . Bug: chromium:770450, chromium:770452 Test: intl/general/invalid-locale.js Cq-Include-Trybots: master.tryserver.v8:v8_linux_noi18n_rel_ng Change-Id: I4496a4a5421000faa0e37aed85fea21ceb487998 Reviewed-on: https://chromium-review.googlesource.com/710816Reviewed-by:
Adam Klein <adamk@chromium.org> Commit-Queue: Jungshik Shin <jshin@chromium.org> Cr-Commit-Position: refs/heads/master@{#48483}
-
- 02 Aug, 2017 1 commit
-
-
Julien Brianceau authored
Bug: chromium:750830 Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_chromium_rel_ng;master.tryserver.v8:v8_linux_noi18n_rel_ng Change-Id: Icab7b5a1c469d5e77d04df8bfca8319784e92af4 Reviewed-on: https://chromium-review.googlesource.com/595655 Commit-Queue: Julien Brianceau <jbriance@cisco.com> Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Daniel Ehrenberg <littledan@chromium.org> Cr-Commit-Position: refs/heads/master@{#47072}
-
- 29 Jun, 2017 1 commit
-
-
Jungshik Shin authored
icu-case-mapping was shipped a few months ago. By dropping the flag, unibrow's case conversion code won't be included by default because V8_INTL_SUPPORT is on by default. BUG=v8:4477, v8:4476 TEST=test262/{built-ins,intl402}/Strings/*, webkit/fast/js/*, mjsunit/string-case, intl/general/case* Cq-Include-Trybots: master.tryserver.v8:v8_linux_noi18n_rel_ng Change-Id: I78be9cc64b4588bc5af79ecbbadf93af6e84a1df Reviewed-on: https://chromium-review.googlesource.com/534541 Commit-Queue: Jungshik Shin <jshin@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Daniel Ehrenberg <littledan@chromium.org> Cr-Commit-Position: refs/heads/master@{#46304}
-
- 04 May, 2017 1 commit
-
-
Jungshik Shin authored
Bug=v8:6083 Test=intl/general/case-mapping.js Change-Id: I254c54520262298d6843948654d1dc4583b0c245 Reviewed-on: https://chromium-review.googlesource.com/496886Reviewed-by:
Adam Klein <adamk@chromium.org> Commit-Queue: Jungshik Shin <jshin@chromium.org> Cr-Commit-Position: refs/heads/master@{#45115}
-
- 13 Jan, 2017 1 commit
-
-
jshin authored
1. DCHECK in runtime-i18n.cc for case mapping was wrong to assume that the longest primary language tag is 3 characters. BCP 47 actually allows up to 8 characters. 2. GetFlatContent() was called to a string without flattening it first. BUG=680314,680464 TEST=intl/general/case-mapping (see also the bugs) Review-Url: https://codereview.chromium.org/2629763003 Cr-Commit-Position: refs/heads/master@{#42343}
-
- 23 Dec, 2016 1 commit
-
-
littledan authored
ECMA 402 v2 made Intl constructors more strict in terms of how they would initialize objects, refusing to initialize objects which have already been constructed. However, when Chrome tried to ship these semantics, we ran into web compatibility issues. This patch tries to square the circle and implement the simpler v2 object semantics while including a compatibility workaround to allow objects to sort of be initialized later, storing the real underlying Intl object in a symbol-named property. The new semantics are described in this PR against the ECMA 402 spec: https://github.com/tc39/ecma402/pull/84 BUG=v8:4360, v8:4870 LOG=Y Review-Url: https://codereview.chromium.org/2582993002 Cr-Commit-Position: refs/heads/master@{#41943}
-
- 19 Dec, 2016 1 commit
-
-
jshin authored
Use FastAsciiConvert (as used by Unibrow) for i18n-aware case conversion with --icu_case_mapping. Move FastAsciiConvert to src/string-case.cc so that it can be used by both runtime-{string,i18n}. Add more tests. BUG=v8:4477,v8:4476 TEST=intl/general/case* Review-Url: https://codereview.chromium.org/2533983006 Cr-Commit-Position: refs/heads/master@{#41821}
-
- 28 Nov, 2016 1 commit
-
-
jshin authored
Due to a typo in runtime-i18n.js, 'ç'(U+00E7) was not uppercased while '÷'(U+00F7) was incorrectly uppercased to '×'(U+00D7). Add a comprehensive test for Latin-1 supplemental block (U+00A0 ~ U+00FF). (they're special-cased for speed-up and needs to have a test for the range.). TEST=intl/general/case-mapping BUG=v8:5681 Review-Url: https://codereview.chromium.org/2533033003 Cr-Commit-Position: refs/heads/master@{#41331}
-
- 15 Nov, 2016 1 commit
-
-
jshin authored
ICU now supports uppercasing in Greek via its regular uppercasing API. So, there's no need to use a slow transliteration API for uppercasing in Greek. This CL includes rolling ICU to ICU 58.1. Besides, drop intl402/Intl/getCanonicalLocales/weird-cases from test262.status because it passes now with ICU 58.1. BUG=chromium:637001,v8:5012 Review-Url: https://codereview.chromium.org/2491333003 Cr-Commit-Position: refs/heads/master@{#41009}
-
- 18 Aug, 2016 1 commit
-
-
jshin authored
Also add a test for the return object of getCanonicalLocaleList(). See https://github.com/tc39/test262/issues/745 for more details. BUG=v8:5012 TEST=test262/intl402/Intl/getCanonicalLocales/* TEST=intl/general/getCanonicalLocales Review-Url: https://codereview.chromium.org/2239523002 Cr-Commit-Position: refs/heads/master@{#38733}
-
- 11 Aug, 2016 1 commit
-
-
machenbach authored
Revert of Throw when case mapping result > max string length (patchset #3 id:40001 of https://codereview.chromium.org/2236593002/ ) Reason for revert: The test is very flaky and made it on many configurations into the top 10 of the slowest tests: https://build.chromium.org/p/client.v8.ports/builders/V8%20Arm/builds/845 https://build.chromium.org/p/client.v8/builders/V8%20Win32%20-%20nosnap%20-%20shared/builds/15418 https://build.chromium.org/p/client.v8/builders/V8%20Linux/builds/12369/steps/Check/logs/durations Original issue's description: > Throw when case mapping result > max string length > > Throw 'Range Error: invalid string length' when the result of > case mapping is longer than the max string length (kMaxLength in > objects.h = 1 << 28 - 16). > > This is for case mapping with ICU. > > BUG=v8:5271 > TEST=intl/general/case-mapping.js with --icu_case_mapping > > Committed: https://crrev.com/c7a2046670468b900b9dbbb4ce45beb5e0e717fd > Cr-Commit-Position: refs/heads/master@{#38565} TBR=littledan@chromium.org,jshin@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:5271 Review-Url: https://codereview.chromium.org/2236393002 Cr-Commit-Position: refs/heads/master@{#38582}
-
- 10 Aug, 2016 1 commit
-
-
jshin authored
Throw 'Range Error: invalid string length' when the result of case mapping is longer than the max string length (kMaxLength in objects.h = 1 << 28 - 16). This is for case mapping with ICU. BUG=v8:5271 TEST=intl/general/case-mapping.js with --icu_case_mapping Review-Url: https://codereview.chromium.org/2236593002 Cr-Commit-Position: refs/heads/master@{#38565}
-
- 11 May, 2016 1 commit
-
-
jshin authored
When I18N is enabled, use ICU's case conversion API and transliteration API [1] to implement String.prototype.to{Upper,Lower}Case and String.prototype.toLocale{Upper,Lower}Case. * ICU-based case conversion was implemented in runtime-i18n.cc/i18n.js * The above 4 functions are overridden with those in i18n.js when --icu_case_mapping flag is turned on. To control the override by the flag, they're overriden in icu-case-mapping.js Previously, toLocale{U,L}Case just called to{U,L}Case so that they didn't support locale-sensitive case conversion for Turkic languages (az, tr), Greek (el) and Lithuanian (lt). Before ICU APIs for the most general case are called, a fast-path for Latin-1 is tried. It's taken from Blink and adopted as necessary. This fast path is always tried for to{U,L}Case. For toLocale{U,L}Case, it's only taken when a locale (explicitly specified or default) is not in {az, el, lt, tr}. With these changes, a build with --icu_case_mapping=true passes a bunch of tests in test262/intl402/Strings/* and intl/* that failed before. Handling of pure ASCII strings (aligned at word boundary) are not as fast as Unibrow's implementation that uses word-by-word case conversion. OTOH, Latin-1 input handling is faster than Unibrow. General Unicode input handling is slower but more accurate. See https://docs.google.com/spreadsheets/d/1KJCJxKc1FxFXjwmYqABS0_2cNdPetvnd8gY8_HGSbrg/edit?usp=sharing for the benchmark. This CL started with http://crrev.com/1544023002#ps200001 by littledan@, but has changed significantly since. [1] See why transliteration API is needed for uppercasing in Greek. http://bugs.icu-project.org/trac/ticket/10582 R=yangguo BUG=v8:4476,v8:4477 LOG=Y TEST=test262/{built-ins,intl402}/Strings/*, webkit/fast/js/*, mjsunit/string-case, intl/general/case* Review-Url: https://codereview.chromium.org/1812673005 Cr-Commit-Position: refs/heads/master@{#36187}
-
- 10 Oct, 2014 1 commit
-
-
yangguo@chromium.org authored
ES5.1 section 6 ("Source Text"): "Throughout the rest of this document, the phrase “code unit” and the word “character” will be used to refer to a 16-bit unsigned value used to represent a single 16-bit unit of text." This changed in ES6 draft section 10.1 ("Source Text"): "The ECMAScript code is expressed using Unicode, version 5.1 or later. ECMAScript source text is a sequence of code points. All Unicode code point values from U+0000 to U+10FFFF, including surrogate code points, may occur in source text where permitted by the ECMAScript grammars." This patch is to reflect this spec change. BUG=v8:3617 LOG=Y R=jochen@chromium.org Review URL: https://codereview.chromium.org/640193002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24510 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 01 Aug, 2013 1 commit
-
-
jochen@chromium.org authored
R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/21511002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16013 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 10 Jul, 2013 1 commit
-
-
jochen@chromium.org authored
BUG=v8:2745 R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/18687003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15584 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-