mirror of
https://git.postgresql.org/git/postgresql.git
synced 2025-02-23 19:39:53 +08:00
Add support for Motorola 88K to s_lock.h.
Apparently there are still people out there who care about this old architecture. They probably care about dusty versions of Postgres too, so back-patch to all supported branches. David Carlier (from a patch being carried by OpenBSD packagers) Discussion: https://postgr.es/m/CA+XhMqzwFSGVU7MEnfhCecc8YdP98tigXzzpd0AAdwaGwaVXEA@mail.gmail.com
This commit is contained in:
parent
77b76fea94
commit
0245c75f4f
@ -559,6 +559,30 @@ tas(volatile slock_t *lock)
|
||||
#endif /* (__mc68000__ || __m68k__) && __linux__ */
|
||||
|
||||
|
||||
/* Motorola 88k */
|
||||
#if defined(__m88k__)
|
||||
#define HAS_TEST_AND_SET
|
||||
|
||||
typedef unsigned int slock_t;
|
||||
|
||||
#define TAS(lock) tas(lock)
|
||||
|
||||
static __inline__ int
|
||||
tas(volatile slock_t *lock)
|
||||
{
|
||||
register slock_t _res = 1;
|
||||
|
||||
__asm__ __volatile__(
|
||||
" xmem %0, %2, %%r0 \n"
|
||||
: "+r"(_res), "+m"(*lock)
|
||||
: "r"(lock)
|
||||
: "memory");
|
||||
return (int) _res;
|
||||
}
|
||||
|
||||
#endif /* __m88k__ */
|
||||
|
||||
|
||||
/*
|
||||
* VAXen -- even multiprocessor ones
|
||||
* (thanks to Tom Ivar Helbekkmo)
|
||||
|
Loading…
Reference in New Issue
Block a user