Refactors to isolate strcoll, wcscoll, and ucol_strcoll into
pg_locale.c which seems like a better place. Most of the buffer
manipulation and equality optimizations are still left in varlena.c.
Patch attached.
I'm not able to easily test on windows, but it should be close to
correct as I just moved some code around.
Is there a good way to look for regressions (perf or correctness) when
making changes in this area, especially on windows and/or with strange
collation rules? What I did doesn't look like a problem, but there's
always a chance of a regression.
--
Jeff Davis
PostgreSQL Contributor Team - AWS