[libcxx-commits] [libcxx] [libc++][format] Updates to Unicode 17. (PR #172560)
via libcxx-commits
libcxx-commits at lists.llvm.org
Tue Dec 16 13:52:27 PST 2025
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-libcxx
Author: Dmitry Atamanov (data-man)
<details>
<summary>Changes</summary>
https://blog.unicode.org/2025/09/unicode-170-release-announcement.html.
---
Patch is 797.12 KiB, truncated to 20.00 KiB below, full version: https://github.com/llvm/llvm-project/pull/172560.diff
12 Files Affected:
- (modified) libcxx/include/__format/escaped_output_table.h (+41-36)
- (modified) libcxx/include/__format/extended_grapheme_cluster_table.h (+114-33)
- (modified) libcxx/include/__format/indic_conjunct_break_table.h (+87-17)
- (modified) libcxx/include/__format/width_estimation_table.h (+12-11)
- (modified) libcxx/test/libcxx/utilities/format/format.string/format.string.std/extended_grapheme_cluster.h (+1498-2479)
- (modified) libcxx/utils/data/unicode/DerivedCoreProperties.txt (+419-180)
- (modified) libcxx/utils/data/unicode/DerivedGeneralCategory.txt (+124-79)
- (modified) libcxx/utils/data/unicode/EastAsianWidth.txt (+72-37)
- (modified) libcxx/utils/data/unicode/GraphemeBreakProperty.txt (+19-9)
- (modified) libcxx/utils/data/unicode/GraphemeBreakTest.txt (+706-1031)
- (modified) libcxx/utils/data/unicode/emoji-data.txt (+48-100)
- (modified) libcxx/utils/generate_escaped_output_table.py (+1-1)
``````````diff
diff --git a/libcxx/include/__format/escaped_output_table.h b/libcxx/include/__format/escaped_output_table.h
index 1401b4637d839..5d6236b0c4e50 100644
--- a/libcxx/include/__format/escaped_output_table.h
+++ b/libcxx/include/__format/escaped_output_table.h
@@ -109,7 +109,7 @@ namespace __escaped_output_table {
/// - bits [14, 31] The lower bound code point of the range. The upper bound of
/// the range is lower bound + size. Note the code expects code units the fit
/// into 18 bits, instead of the 21 bits needed for the full Unicode range.
-_LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[735] = {
+_LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[740] = {
0x00000020 /* 00000000 - 00000020 [ 33] */,
0x001fc021 /* 0000007f - 000000a0 [ 34] */,
0x002b4000 /* 000000ad - 000000ad [ 1] */,
@@ -136,7 +136,7 @@ _LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[735] = {
0x02170001 /* 0000085c - 0000085d [ 2] */,
0x0217c000 /* 0000085f - 0000085f [ 1] */,
0x021ac004 /* 0000086b - 0000086f [ 5] */,
- 0x0223c007 /* 0000088f - 00000896 [ 8] */,
+ 0x02240006 /* 00000890 - 00000896 [ 7] */,
0x02388000 /* 000008e2 - 000008e2 [ 1] */,
0x02610000 /* 00000984 - 00000984 [ 1] */,
0x02634001 /* 0000098d - 0000098e [ 2] */,
@@ -220,7 +220,7 @@ _LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[735] = {
0x03124000 /* 00000c49 - 00000c49 [ 1] */,
0x03138006 /* 00000c4e - 00000c54 [ 7] */,
0x0315c000 /* 00000c57 - 00000c57 [ 1] */,
- 0x0316c001 /* 00000c5b - 00000c5c [ 2] */,
+ 0x0316c000 /* 00000c5b - 00000c5b [ 1] */,
0x03178001 /* 00000c5e - 00000c5f [ 2] */,
0x03190001 /* 00000c64 - 00000c65 [ 2] */,
0x031c0006 /* 00000c70 - 00000c76 [ 7] */,
@@ -232,7 +232,7 @@ _LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[735] = {
0x03314000 /* 00000cc5 - 00000cc5 [ 1] */,
0x03324000 /* 00000cc9 - 00000cc9 [ 1] */,
0x03338006 /* 00000cce - 00000cd4 [ 7] */,
- 0x0335c005 /* 00000cd7 - 00000cdc [ 6] */,
+ 0x0335c004 /* 00000cd7 - 00000cdb [ 5] */,
0x0337c000 /* 00000cdf - 00000cdf [ 1] */,
0x03390001 /* 00000ce4 - 00000ce5 [ 2] */,
0x033c0000 /* 00000cf0 - 00000cf0 [ 1] */,
@@ -330,7 +330,8 @@ _LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[735] = {
0x06a28005 /* 00001a8a - 00001a8f [ 6] */,
0x06a68005 /* 00001a9a - 00001a9f [ 6] */,
0x06ab8001 /* 00001aae - 00001aaf [ 2] */,
- 0x06b3c030 /* 00001acf - 00001aff [ 49] */,
+ 0x06b78001 /* 00001ade - 00001adf [ 2] */,
+ 0x06bb0013 /* 00001aec - 00001aff [ 20] */,
0x06d34000 /* 00001b4d - 00001b4d [ 1] */,
0x06fd0007 /* 00001bf4 - 00001bfb [ 8] */,
0x070e0002 /* 00001c38 - 00001c3a [ 3] */,
@@ -360,13 +361,12 @@ _LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[735] = {
0x081c8001 /* 00002072 - 00002073 [ 2] */,
0x0823c000 /* 0000208f - 0000208f [ 1] */,
0x08274002 /* 0000209d - 0000209f [ 3] */,
- 0x0830400e /* 000020c1 - 000020cf [ 15] */,
+ 0x0830800d /* 000020c2 - 000020cf [ 14] */,
0x083c400e /* 000020f1 - 000020ff [ 15] */,
0x08630003 /* 0000218c - 0000218f [ 4] */,
0x090a8015 /* 0000242a - 0000243f [ 22] */,
0x0912c014 /* 0000244b - 0000245f [ 21] */,
0x0add0001 /* 00002b74 - 00002b75 [ 2] */,
- 0x0ae58000 /* 00002b96 - 00002b96 [ 1] */,
0x0b3d0004 /* 00002cf4 - 00002cf8 [ 5] */,
0x0b498000 /* 00002d26 - 00002d26 [ 1] */,
0x0b4a0004 /* 00002d28 - 00002d2c [ 5] */,
@@ -398,10 +398,7 @@ _LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[735] = {
0x2931c008 /* 0000a4c7 - 0000a4cf [ 9] */,
0x298b0013 /* 0000a62c - 0000a63f [ 20] */,
0x29be0007 /* 0000a6f8 - 0000a6ff [ 8] */,
- 0x29f38001 /* 0000a7ce - 0000a7cf [ 2] */,
- 0x29f48000 /* 0000a7d2 - 0000a7d2 [ 1] */,
- 0x29f50000 /* 0000a7d4 - 0000a7d4 [ 1] */,
- 0x29f74014 /* 0000a7dd - 0000a7f1 [ 21] */,
+ 0x29f74013 /* 0000a7dd - 0000a7f0 [ 20] */,
0x2a0b4002 /* 0000a82d - 0000a82f [ 3] */,
0x2a0e8005 /* 0000a83a - 0000a83f [ 6] */,
0x2a1e0007 /* 0000a878 - 0000a87f [ 8] */,
@@ -437,9 +434,6 @@ _LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[735] = {
0x3ecfc000 /* 0000fb3f - 0000fb3f [ 1] */,
0x3ed08000 /* 0000fb42 - 0000fb42 [ 1] */,
0x3ed14000 /* 0000fb45 - 0000fb45 [ 1] */,
- 0x3ef0c00f /* 0000fbc3 - 0000fbd2 [ 16] */,
- 0x3f640001 /* 0000fd90 - 0000fd91 [ 2] */,
- 0x3f720006 /* 0000fdc8 - 0000fdce [ 7] */,
0x3f74001f /* 0000fdd0 - 0000fdef [ 32] */,
0x3f868005 /* 0000fe1a - 0000fe1f [ 6] */,
0x3f94c000 /* 0000fe53 - 0000fe53 [ 1] */,
@@ -510,7 +504,7 @@ _LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[735] = {
0x423d8004 /* 000108f6 - 000108fa [ 5] */,
0x42470002 /* 0001091c - 0001091e [ 3] */,
0x424e8004 /* 0001093a - 0001093e [ 5] */,
- 0x4250003f /* 00010940 - 0001097f [ 64] */,
+ 0x42568025 /* 0001095a - 0001097f [ 38] */,
0x426e0003 /* 000109b8 - 000109bb [ 4] */,
0x42740001 /* 000109d0 - 000109d1 [ 2] */,
0x42810000 /* 00010a04 - 00010a04 [ 1] */,
@@ -542,7 +536,8 @@ _LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[735] = {
0x43aa8000 /* 00010eaa - 00010eaa [ 1] */,
0x43ab8001 /* 00010eae - 00010eaf [ 2] */,
0x43ac800f /* 00010eb2 - 00010ec1 [ 16] */,
- 0x43b14036 /* 00010ec5 - 00010efb [ 55] */,
+ 0x43b20007 /* 00010ec8 - 00010ecf [ 8] */,
+ 0x43b64020 /* 00010ed9 - 00010ef9 [ 33] */,
0x43ca0007 /* 00010f28 - 00010f2f [ 8] */,
0x43d68015 /* 00010f5a - 00010f6f [ 22] */,
0x43e28025 /* 00010f8a - 00010faf [ 38] */,
@@ -625,7 +620,8 @@ _LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[735] = {
0x46920007 /* 00011a48 - 00011a4f [ 8] */,
0x46a8c00c /* 00011aa3 - 00011aaf [ 13] */,
0x46be4006 /* 00011af9 - 00011aff [ 7] */,
- 0x46c280b5 /* 00011b0a - 00011bbf [ 182] */,
+ 0x46c28055 /* 00011b0a - 00011b5f [ 86] */,
+ 0x46da0057 /* 00011b68 - 00011bbf [ 88] */,
0x46f8800d /* 00011be2 - 00011bef [ 14] */,
0x46fe8005 /* 00011bfa - 00011bff [ 6] */,
0x47024000 /* 00011c09 - 00011c09 [ 1] */,
@@ -647,7 +643,9 @@ _LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[735] = {
0x4763c000 /* 00011d8f - 00011d8f [ 1] */,
0x47648000 /* 00011d92 - 00011d92 [ 1] */,
0x47664006 /* 00011d99 - 00011d9f [ 7] */,
- 0x476a8135 /* 00011daa - 00011edf [ 310] */,
+ 0x476a8005 /* 00011daa - 00011daf [ 6] */,
+ 0x47770003 /* 00011ddc - 00011ddf [ 4] */,
+ 0x477a80f5 /* 00011dea - 00011edf [ 246] */,
0x47be4006 /* 00011ef9 - 00011eff [ 7] */,
0x47c44000 /* 00011f11 - 00011f11 [ 1] */,
0x47cec002 /* 00011f3b - 00011f3d [ 3] */,
@@ -677,15 +675,17 @@ _LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[735] = {
0x5ade0004 /* 00016b78 - 00016b7c [ 5] */,
0x5ae401af /* 00016b90 - 00016d3f [ 432] */,
0x5b5e80c5 /* 00016d7a - 00016e3f [ 198] */,
- 0x5ba6c064 /* 00016e9b - 00016eff [ 101] */,
+ 0x5ba6c004 /* 00016e9b - 00016e9f [ 5] */,
+ 0x5bae4001 /* 00016eb9 - 00016eba [ 2] */,
+ 0x5bb5002b /* 00016ed4 - 00016eff [ 44] */,
0x5bd2c003 /* 00016f4b - 00016f4e [ 4] */,
0x5be20006 /* 00016f88 - 00016f8e [ 7] */,
0x5be8003f /* 00016fa0 - 00016fdf [ 64] */,
0x5bf9400a /* 00016fe5 - 00016fef [ 11] */,
- 0x5bfc800d /* 00016ff2 - 00016fff [ 14] */,
- 0x61fe0007 /* 000187f8 - 000187ff [ 8] */,
+ 0x5bfdc008 /* 00016ff7 - 00016fff [ 9] */,
0x63358028 /* 00018cd6 - 00018cfe [ 41] */,
- 0x634262e6 /* 00018d09 - 0001afef [ 8935] */,
+ 0x6347c060 /* 00018d1f - 00018d7f [ 97] */,
+ 0x637ce1fc /* 00018df3 - 0001afef [ 8701] */,
0x6bfd0000 /* 0001aff4 - 0001aff4 [ 1] */,
0x6bff0000 /* 0001affc - 0001affc [ 1] */,
0x6bffc000 /* 0001afff - 0001afff [ 1] */,
@@ -700,8 +700,10 @@ _LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[735] = {
0x6f224006 /* 0001bc89 - 0001bc8f [ 7] */,
0x6f268001 /* 0001bc9a - 0001bc9b [ 2] */,
0x6f280f5f /* 0001bca0 - 0001cbff [ 3936] */,
- 0x733e8005 /* 0001ccfa - 0001ccff [ 6] */,
- 0x73ad004b /* 0001ceb4 - 0001ceff [ 76] */,
+ 0x733f4002 /* 0001ccfd - 0001ccff [ 3] */,
+ 0x73ad0005 /* 0001ceb4 - 0001ceb9 [ 6] */,
+ 0x73b4400e /* 0001ced1 - 0001cedf [ 15] */,
+ 0x73bc400e /* 0001cef1 - 0001ceff [ 15] */,
0x73cb8001 /* 0001cf2e - 0001cf2f [ 2] */,
0x73d1c008 /* 0001cf47 - 0001cf4f [ 9] */,
0x73f1003b /* 0001cfc4 - 0001cfff [ 60] */,
@@ -755,7 +757,10 @@ _LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[735] = {
0x78c001cf /* 0001e300 - 0001e4cf [ 464] */,
0x793e80d5 /* 0001e4fa - 0001e5cf [ 214] */,
0x797ec003 /* 0001e5fb - 0001e5fe [ 4] */,
- 0x798001df /* 0001e600 - 0001e7df [ 480] */,
+ 0x798000bf /* 0001e600 - 0001e6bf [ 192] */,
+ 0x79b7c000 /* 0001e6df - 0001e6df [ 1] */,
+ 0x79bd8007 /* 0001e6f6 - 0001e6fd [ 8] */,
+ 0x79c000df /* 0001e700 - 0001e7df [ 224] */,
0x79f9c000 /* 0001e7e7 - 0001e7e7 [ 1] */,
0x79fb0000 /* 0001e7ec - 0001e7ec [ 1] */,
0x79fbc000 /* 0001e7ef - 0001e7ef [ 1] */,
@@ -813,10 +818,9 @@ _LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[735] = {
0x7c924006 /* 0001f249 - 0001f24f [ 7] */,
0x7c94800d /* 0001f252 - 0001f25f [ 14] */,
0x7c998099 /* 0001f266 - 0001f2ff [ 154] */,
- 0x7db60003 /* 0001f6d8 - 0001f6db [ 4] */,
+ 0x7db64002 /* 0001f6d9 - 0001f6db [ 3] */,
0x7dbb4002 /* 0001f6ed - 0001f6ef [ 3] */,
0x7dbf4002 /* 0001f6fd - 0001f6ff [ 3] */,
- 0x7dddc003 /* 0001f777 - 0001f77a [ 4] */,
0x7df68005 /* 0001f7da - 0001f7df [ 6] */,
0x7dfb0003 /* 0001f7ec - 0001f7ef [ 4] */,
0x7dfc400e /* 0001f7f1 - 0001f7ff [ 15] */,
@@ -826,21 +830,22 @@ _LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[735] = {
0x7e220007 /* 0001f888 - 0001f88f [ 8] */,
0x7e2b8001 /* 0001f8ae - 0001f8af [ 2] */,
0x7e2f0003 /* 0001f8bc - 0001f8bf [ 4] */,
- 0x7e30803d /* 0001f8c2 - 0001f8ff [ 62] */,
- 0x7e95000b /* 0001fa54 - 0001fa5f [ 12] */,
+ 0x7e30800d /* 0001f8c2 - 0001f8cf [ 14] */,
+ 0x7e364026 /* 0001f8d9 - 0001f8ff [ 39] */,
+ 0x7e960007 /* 0001fa58 - 0001fa5f [ 8] */,
0x7e9b8001 /* 0001fa6e - 0001fa6f [ 2] */,
0x7e9f4002 /* 0001fa7d - 0001fa7f [ 3] */,
- 0x7ea28004 /* 0001fa8a - 0001fa8e [ 5] */,
- 0x7eb1c006 /* 0001fac7 - 0001facd [ 7] */,
+ 0x7ea2c002 /* 0001fa8b - 0001fa8d [ 3] */,
+ 0x7eb1c000 /* 0001fac7 - 0001fac7 [ 1] */,
+ 0x7eb24003 /* 0001fac9 - 0001facc [ 4] */,
0x7eb74001 /* 0001fadd - 0001fade [ 2] */,
- 0x7eba8005 /* 0001faea - 0001faef [ 6] */,
+ 0x7ebac003 /* 0001faeb - 0001faee [ 4] */,
0x7ebe4006 /* 0001faf9 - 0001faff [ 7] */,
0x7ee4c000 /* 0001fb93 - 0001fb93 [ 1] */,
- 0x7efe8405 /* 0001fbfa - 0001ffff [ 1030] */,
+ 0x7efec404 /* 0001fbfb - 0001ffff [ 1029] */,
0xa9b8001f /* 0002a6e0 - 0002a6ff [ 32] */,
- 0xadce8005 /* 0002b73a - 0002b73f [ 6] */,
0xae078001 /* 0002b81e - 0002b81f [ 2] */,
- 0xb3a8800d /* 0002cea2 - 0002ceaf [ 14] */,
+ 0xb3ab8001 /* 0002ceae - 0002ceaf [ 2] */,
0xbaf8400e /* 0002ebe1 - 0002ebef [ 15] */,
0xbb9789a1 /* 0002ee5e - 0002f7ff [ 2466] */,
0xbe8785e1 /* 0002fa1e - 0002ffff [ 1506] */,
@@ -865,7 +870,7 @@ _LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[735] = {
return false;
// The entries at the end.
- if (__code_point >= 0x000323b0)
+ if (__code_point >= 0x0003347a)
return true;
ptrdiff_t __i = std::ranges::upper_bound(__entries, (__code_point << 14) | 0x3fffu) - __entries;
diff --git a/libcxx/include/__format/extended_grapheme_cluster_table.h b/libcxx/include/__format/extended_grapheme_cluster_table.h
index f76e018df7ae1..d6ed6463eb641 100644
--- a/libcxx/include/__format/extended_grapheme_cluster_table.h
+++ b/libcxx/include/__format/extended_grapheme_cluster_table.h
@@ -125,7 +125,7 @@ enum class __property : uint8_t {
/// following benchmark.
/// libcxx/benchmarks/std_format_spec_string_unicode.bench.cpp
// clang-format off
-_LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[1501] = {
+_LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[1582] = {
0x00000091,
0x00005005,
0x00005811,
@@ -354,7 +354,8 @@ _LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[1501] = {
0x00d3685a,
0x00d39892,
0x00d3f802,
- 0x00d581e2,
+ 0x00d582d2,
+ 0x00d700b2,
0x00d80032,
0x00d8200a,
0x00d9a092,
@@ -402,7 +403,6 @@ _LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[1501] = {
0x010d4813,
0x0118d013,
0x01194003,
- 0x011c4003,
0x011e7803,
0x011f48a3,
0x011fc023,
@@ -411,11 +411,49 @@ _LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[1501] = {
0x012db003,
0x012e0003,
0x012fd833,
- 0x01300053,
- 0x013038b3,
- 0x0130a713,
- 0x01348753,
- 0x013840a3,
+ 0x01300043,
+ 0x01307003,
+ 0x01308803,
+ 0x0130a013,
+ 0x0130c003,
+ 0x0130e803,
+ 0x01310003,
+ 0x01311013,
+ 0x01313003,
+ 0x01315003,
+ 0x01317013,
+ 0x0131c023,
+ 0x01320003,
+ 0x01321003,
+ 0x013240b3,
+ 0x0132f813,
+ 0x01331803,
+ 0x01332813,
+ 0x01334003,
+ 0x0133d803,
+ 0x0133f013,
+ 0x01349053,
+ 0x0134c803,
+ 0x0134d813,
+ 0x01350013,
+ 0x01353803,
+ 0x01355013,
+ 0x01358013,
+ 0x0135e813,
+ 0x01362013,
+ 0x01364003,
+ 0x01367013,
+ 0x01368803,
+ 0x01369813,
+ 0x01374813,
+ 0x01378053,
+ 0x0137b833,
+ 0x0137e803,
+ 0x01381003,
+ 0x01382803,
+ 0x01384053,
+ 0x01387803,
+ 0x01389003,
0x0138a003,
0x0138b003,
0x0138e803,
@@ -428,7 +466,7 @@ _LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[1501] = {
0x013a7003,
0x013a9823,
0x013ab803,
- 0x013b1843,
+ 0x013b1813,
0x013ca823,
0x013d0803,
0x013d8003,
@@ -1322,7 +1360,7 @@ _LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[1501] = {
0x08692032,
0x086b4842,
0x08755812,
- 0x0877e032,
+ 0x0877d052,
0x087a30a2,
0x087c1032,
0x0880000a,
@@ -1456,7 +1494,6 @@ _LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[1501] = {
0x08d00892,
0x08d19852,
0x08d1c80a,
- 0x08d1d008,
0x08d1d832,
0x08d23802,
0x08d28852,
@@ -1466,6 +1503,12 @@ _LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[1501] = {
0x08d450c2,
0x08d4b80a,
0x08d4c012,
+ 0x08db0002,
+ 0x08db080a,
+ 0x08db1022,
+ 0x08db280a,
+ 0x08db3002,
+ 0x08db380a,
0x08e1780a,
0x08e18062,
0x08e1c052,
@@ -1543,48 +1586,86 @@ _LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[1501] = {
0x0f176032,
0x0f276032,
0x0f2f7012,
+ 0x0f371802,
+ 0x0f373002,
+ 0x0f377012,
+ 0x0f37a802,
0x0f468062,
0x0f4a2062,
- 0x0f8007f3,
- 0x0f8407f3,
- 0x0f886823,
- 0x0f897803,
- 0x0f8b6053,
+ 0x0f802003,
+ 0x0f816033,
+ 0x0f84a0b3,
+ 0x0f857813,
+ 0x0f860003,
+ 0x0f867813,
+ 0x0f87b093,
+ 0x0f8b8013,
0x0f8bf013,
0x0f8c7003,
0x0f8c8893,
- 0x0f8d6b83,
+ 0x0f8d7373,
0x0f8f3199,
0x0f9008e3,
0x0f90d003,
0x0f917803,
0x0f919083,
0x0f91e033,
- 0x0f924ff3,
- 0x0f964ff3,
- 0x0f9a4ff3,
- 0x0f9e4b13,
+ 0x0f924963,
+ 0x0f9337f3,
+ 0x0f9733b3,
+ 0x0f9926f3,
+ 0x0f9cb013,
+ 0x0f9cc823,
+ 0x0f9cf523,
+ 0x0f9f9823,
+ 0x0f9fb833,
0x0f9fd842,
0x0fa007f3,
- 0x0fa407f3,
- 0x0fa803d3,
- 0x0faa37f3,
- 0x0fae37f3,
- 0x0fb23093,
- 0x0fb407f3,
- 0x0fbba0b3,
- 0x0fbeaaa3,
+ 0x0fa407d3,
+ 0x0fa7fbe3,
+ 0x0faa4853,
+ 0x0faa8173,
+ 0x0fab7813,
+ 0x0fab9873,
+ 0x0fac3803,
+ 0x0fac5033,
+ 0x0fac8003,
+ 0x0faca813,
+ 0x0fad2013,
+ 0x0fad4003,
+ 0x0fad8813,
+ 0x0fade003,
+ 0x0fae1023,
+ 0x0fae8823,
+ 0x0faee023,
+ 0x0faf0803,
+ 0x0faf1803,
+ 0x0faf4003,
+ 0x0faf7803,
+ 0x0faf9803,
+ 0x0fafd553,
+ 0x0fb40453,
+ 0x0fb65873,
+ 0x0fb6a903,
+ 0x0fb74803,
+ 0x0fb75853,
+ 0x0fb798c3,
+ 0x0fbed253,
0x0fc06033,
0x0fc24073,
0x0fc2d053,
0x0fc44073,
- 0x0fc57513,
+ 0x0fc57013,
+ 0x0fc5e033,
+ 0x0fc610d3,
+ 0x0fc6ca63,
0x0fc862e3,
0x0fc9e093,
0x0fca3ff3,
- 0x0fce3ff3,
- 0x0fd23ff3,
- 0x0fd63b83,
+ 0x0fce3b83,
+ 0x0fd2c073,
+ 0x0fd377f3,
+ 0x0fd77113,
0x0fe007f3,
0x0fe407f3,
0x0fe807f3,
diff --git a/libcxx/include/__format/indic_conjunct_break_table.h b/libcxx/include/__format/indic_conjunct_break_table.h
index f48ea625908e9..e55bf1f92264b 100644
--- a/libcxx/include/__format/indic_conjunct_break_table.h
+++ b/libcxx/include/__format/indic_conjunct_break_table.h
@@ -107,7 +107,7 @@ enum class __property : uint8_t {
/// following benchmark.
/// libcxx/benchmarks/std_format_spec_string_unicode.bench.cpp
// clang-format off
-_LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[403] = {
+_LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[473] = {
0x001801bd,
0x00241819,
0x002c88b1,
@@ -248,26 +248,39 @@ _LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[403] = {
0x007c6829,
0x007cc88d,
0x007e3001,
+ 0x008000a8,
0x0081680d,
0x00819015,
- 0x0081c805,
+ 0x0081c802,
+ 0x0081d001,
0x0081e805,
+ 0x0081f800,
+ 0x00828014,
0x0082c005,
+ 0x0082d00c,
0x0082f009,
+ 0x00830800,
+ 0x00832804,
+ 0x00837008,
0x0083880d,
+ 0x0083a830,
0x00841001,
0x00842805,
0x00846801,
+ 0x00847000,
0x0084e801,
0x009ae809,
0x00b8900d,
0x00b99009,
0x00ba9005,
0x00bb9005,
+ 0x00bc00cc,
0x00bda005,
0x00bdb819,
0x00be3001,
- 0x00be4829,
+ 0x00be4821,
+ 0x00be9002,
+ 0x00be9801,
0x00bee801,
0x00c05809,
0x00c07801,
@@ -279,21 +292,32 @@ _LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[403] = {
0x00c9c809,
0x00d0b805,
0x00d0d801,
+ 0x00d100d0,
0x00d2b001,
0x00d2c019,
- 0x00d30001,
+ 0x00d30002,
0x00d31001,
0x00d3281d,
0x00d39825,
0x00d3f801,
- 0x00d58079,
+ 0x00d580b5,
+ 0x00d7002d,
0x00d8000d,
+ 0x00d85804,
+ 0x00d89880,
0x00d9a025,
- 0x00da1009,
+ 0x00da1005,
+ 0x00da2002,
+ 0x00da281c,
0x00db5821,
0x00dc0005,
+ 0x00dc1874,
0x00dd100d,
- 0x00dd4015,
+ 0x00dd4009,
+ 0x00dd5802,
+ 0x00dd6005,
+ 0x00dd7004,
+ 0x00ddd808,
0x00df3001,
0x00df4005,
0x00df6801,
@@ -330,24 +354,35 @@ _LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[403] = {
0x054a3829,
0x054a9801,
0x054c0009,
+ 0x054c4808,
+ 0x054c788c,
0x054d9801,
0x054db00d,
0x054de005,
- 0x054e0001,
+ 0x054e0002,
+ 0x054f0010,
0x054f2801,
+ 0x054f3820,
+ 0x054fd010,
0x05514815,
0x05518805,
0x0551a805,
0x05521801,
0x05526001,
+ 0x0553003c,
+ 0x05538808,
+ 0x0553d000,
0x0553e001,
+ 0x0553f004,
0x05558001,
0x05559009,
0x0555b805,
0x0555f005,
0x05560801,
+ 0x05570028,
0x05576005,
- 0x0557b001,
+ 0x0557b002,
+ 0x055e0068,
0x055f2801,
0x055f4001,
0x055f6801,
@@ -358,16 +393,20 @@ _LIBCPP_HIDE_FROM_ABI inline constexpr uint32_t __entries[403] = {
0x080fe801,
0x08170001,
0x081bb011,
+ 0x08500000,
0x08500809,
0x08502805,
0x0850600d,
+ 0x0850800c,
+ 0x0850a808,
+ 0x0850c870,
0x0851c009,
- 0x0851f801,
+ 0x0851f802,
0x08572805,
0x0869200d,
0x086b4811,
0x08755805,
- 0x0877e00d,
+ 0x0877d015,
0x087a3029,
0x087c100d,
0x08800801,
@@ -379,8 +418,13 @@ _LIB...
[truncated]
``````````
</details>
https://github.com/llvm/llvm-project/pull/172560
More information about the libcxx-commits
mailing list