Xcode 15.3 adds a new linker flag (`-no_huge`) which allows the loader to use zero-fill sections to reserve the areas currently being reserved by the preloader.
This means the preloader is no longer needed (a good thing, since it's heavily dependent on private APIs).
The preloader will still be used when Xcode <15.3 is being used, or when building for i386 (32-bit for 10.14 and earlier).
I've also tested a 64-bit wineloader built with Xcode 15.3 on macOS 10.13 and found that it works correctly.
The only user-visible change I've found is that `setprogname()` now correctly changes the process name, so a `ps` listing will now show (for example) `C:\windows\regedit.exe` (as it does on Linux) instead of `/Users/bshanks/wine/build64/loader/wine-preloader C:\windows\regedit.exe`.