Re: [PATCH] Use strchr() to search for a single character
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: David Rowley <dgrowleyml@gmail.com>
Cc: Dmitry Mityugov <d.mityugov@postgrespro.ru>,
Corey Huinker <corey.huinker@gmail.com>, pgsql-hackers@postgresql.org
Date: 2025-07-22T22:36:24Z
Lists: pgsql-hackers
David Rowley <dgrowleyml@gmail.com> writes: > Looking at [1], it seems even ancient versions of gcc and clang > rewrite the strstr() into a strchr() call when the search term is a > single char string. So it might not be worth doing to any trouble > here. I was wondering if that might be true. However, your godbolt results show that MSVC doesn't do this optimization, and the usage in pgmkdirp.c is inside "#ifdef WIN32", so maybe it's worth fixing there. I can't get excited about dmetaphone --- that's about as old and crufty as anything in our tree. If we were going to touch it the first thing I'd want to do is get rid of its non-multibyte-safe upcasing logic (MakeUpper). The "WITZ" business is kind of silly-looking, but the question it brings to my mind is whether the algorithm was mistranscribed; so rather than just delete that line we should do some research. If we care, that is. regards, tom lane
Commits
-
Use strchr instead of strstr for single-char lookups
- 039f7ee0fe9a 19 (unreleased) landed