While inspecting what 32-bit optimizations we had, I noticed this line in
atomics/arch-x86.h:
#elif defined(_MSC_VER) && defined(__x86_64__)
...which led me to rediscover what Thomas Munro had found a while back [0],
i.e., we aren't using the right x86_64 macro for MSVC in lots of places.
Upon further inspection, all of this pg_spin_delay() stuff seems to have
been unused since it was added in commit b64d92f1a5, so I'm guessing it's
just an implementation artifact that didn't get cleaned up.
Here's a patch to remove that dead code.
[0] https://postgr.es/m/CA%2BhUKGL8Hs-phHPugrWM%3D5dAkcT897rXyazYzLw-Szxnzgx-rA%40mail.gmail.com
--
nathan