mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
We no longer create intermediate NSString copies to compare and hash swift Strings. Instead we call directly into the ICU library. I measured a 1.2 to 2x improvement on dictionary benchmarks as a result of this. The SuperChars benchmark is also about 1.2x faster because of this. Pure ASCII comparison has gotten a little bit slower (20% on a pure comparison micro-benchmark) because we no longer do a memcmp. Doing a memcmp on ASCII is not the same as the default unicode collation. Instead we have to a string scan. The default unicode collation does not order like ASCII does and ignores characters (for example the \0 character). rdar://18992510 Swift SVN r31474
4.2 KiB
4.2 KiB