Use out-of-line M68K spinlock code for OpenBSD as well as NetBSD.
authorTom Lane <tgl@sss.pgh.pa.us>
Mon, 20 Nov 2017 23:05:02 +0000 (18:05 -0500)
committerTom Lane <tgl@sss.pgh.pa.us>
Mon, 20 Nov 2017 23:05:17 +0000 (18:05 -0500)
David Carlier (from a patch being carried by OpenBSD packagers)

Discussion: https://postgr.es/m/CA+XhMqzwFSGVU7MEnfhCecc8YdP98tigXzzpd0AAdwaGwaVXEA@mail.gmail.com

src/backend/storage/lmgr/s_lock.c

index 40d8156331feb4e3044bd88a44165292a1a2a8a3..247d7b8199d27b60664daeaa947212e610b42333 100644 (file)
@@ -251,7 +251,7 @@ static void
 tas_dummy()
 {
    __asm__ __volatile__(
-#if defined(__NetBSD__) && defined(__ELF__)
+#if (defined(__NetBSD__) || defined(__OpenBSD__)) && defined(__ELF__)
 /* no underscore for label and % for registers */
                         "\
 .global        tas                 \n\
@@ -276,7 +276,7 @@ _tas:                           \n\
 _success:                      \n\
            moveq   #0,d0       \n\
            rts                 \n"
-#endif                         /* __NetBSD__ && __ELF__ */
+#endif                         /* (__NetBSD__ || __OpenBSD__) && __ELF__ */
        );
 }
 #endif                         /* __m68k__ && !__linux__ */