|
ushort[]? casingTable = s_casingTable[pageNumber]; |
has a dependency on the large array which is unnecessary. The whole array is about
25k 2k and aggressively allocated in the static constructor but it needs to actually store only 32 bytes of data. Please replaced the multi-dimensional array with simple binary map (0 for existing null, 1 for s_noCasingPage).
runtime/src/libraries/System.Private.CoreLib/src/System/Globalization/OrdinalCasing.Icu.cs
Line 88 in 43bc8e8
25k2k and aggressively allocated in the static constructor but it needs to actually store only 32 bytes of data. Please replaced the multi-dimensional array with simple binary map (0 for existing null, 1 for s_noCasingPage).