Files
ladybird/AK
Aliaksandr Kalenik eb4038fa83 AK: Fix Utf16View::operator<=> code-unit ordering on little-endian
The !has_ascii_storage() && !other.has_ascii_storage() branch did a
byte-wise __builtin_memcmp over a char16_t array, which on little-endian
does not give code-unit order: the low byte is compared first, so
0xD83D (bytes [0x3D, 0xD8]) spuriously compared less than 0x2764
(bytes [0x64, 0x27]) even though the code unit 0xD83D is greater.

No in-tree caller currently uses operator<=> for Utf16View ordering,
so this bug is dormant; the follow-up LibJS change exposes it.

Replace the memcmp branch with a per-code-unit loop, which the compiler
can auto-vectorize and which mirrors what is_code_unit_less_than already
does.
2026-04-22 19:12:54 +02:00
..
2025-11-20 15:44:25 +01:00
2024-12-04 16:45:58 +00:00
2026-04-16 21:01:28 +02:00
2026-02-17 12:38:51 +00:00
2026-01-29 10:10:12 +01:00
2026-02-17 12:38:51 +00:00
2024-11-19 22:07:01 -07:00
2024-11-10 14:48:20 -07:00
2026-03-20 12:03:36 +01:00
2024-12-28 05:39:32 -08:00
2025-08-23 16:04:36 -06:00
2022-12-03 23:52:23 +00:00
2026-02-18 08:02:45 -05:00
2024-02-11 18:53:00 +01:00
2026-02-17 10:48:09 -05:00