diff options
author | Thomas G. Lockhart <lockhart@fourpalms.org> | 2000-12-03 14:41:47 +0000 |
---|---|---|
committer | Thomas G. Lockhart <lockhart@fourpalms.org> | 2000-12-03 14:41:47 +0000 |
commit | 48781d44e4b95ec475527e1359ce9e7bb15fd8ec (patch) | |
tree | 482908e5a9df83c34f079180dd327d07eda76d1d | |
parent | 13dbd0276a14a56729f2f94937c7cd02ae483102 (diff) | |
download | postgresql-48781d44e4b95ec475527e1359ce9e7bb15fd8ec.tar.gz postgresql-48781d44e4b95ec475527e1359ce9e7bb15fd8ec.zip |
Support IBM S/390. Patches from Neale Ferguson@softwareAG-usa.com.
-rw-r--r-- | doc/src/sgml/installation.sgml | 9 | ||||
-rw-r--r-- | src/include/storage/s_lock.h | 25 |
2 files changed, 32 insertions, 2 deletions
diff --git a/doc/src/sgml/installation.sgml b/doc/src/sgml/installation.sgml index e0bea34fd8e..71d5fb1e03c 100644 --- a/doc/src/sgml/installation.sgml +++ b/doc/src/sgml/installation.sgml @@ -1,4 +1,4 @@ -<!-- $Header: /cvsroot/pgsql/doc/src/sgml/installation.sgml,v 1.30 2000/11/30 21:44:07 petere Exp $ --> +<!-- $Header: /cvsroot/pgsql/doc/src/sgml/installation.sgml,v 1.31 2000/12/03 14:41:47 thomas Exp $ --> <chapter id="installation"> <title><![%flattext-install-include[<productname>PostgreSQL</>]]> Installation Instructions</title> @@ -1161,6 +1161,13 @@ gunzip -c user.ps.gz \ <entry>See also <filename>doc/FAQ_HPUX</></> </row> <row> + <entry>IBM</entry> + <entry>S/390</entry> + <entry>7.1</entry> + <entry>2000-11-17, Neale Ferguson (<email>Neale.Ferguson@softwareAG-usa.com</>)</entry> + <entry></> + </row> + <row> <entry>IRIX 6.5.6f</entry> <entry>MIPS</entry> <entry>6.5.3</entry> diff --git a/src/include/storage/s_lock.h b/src/include/storage/s_lock.h index d50e3564bb7..863801f8ee3 100644 --- a/src/include/storage/s_lock.h +++ b/src/include/storage/s_lock.h @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/include/storage/s_lock.h,v 1.74 2000/11/28 23:27:57 tgl Exp $ + * $Header: /cvsroot/pgsql/src/include/storage/s_lock.h,v 1.75 2000/12/03 14:41:42 thomas Exp $ * *------------------------------------------------------------------------- */ @@ -128,6 +128,29 @@ __asm__("swpb %0, %0, [%3]": "=r"(_res), "=m"(*lock):"0"(_res), "r" (lock)); #endif /* __arm__ */ +#if defined(__s390__) +/* + * S/390 Linux + */ +#define TAS(lock) tas(lock) + +static inline int +tas(volatile slock_t *lock) +{ + int _res; + + __asm__ __volatile(" la 1,1\n" + " l 2,%2\n" + " slr 0,0\n" + " cs 0,1,0(2)\n" + " lr %1,0" + : "=m" (lock), "=d" (_res) + : "m" (lock) + : "0", "1", "2"); + + return (_res); +} +#endif /* __s390__ */ #if defined(__sparc__) |