Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit 48781d4

Browse files
author
Thomas G. Lockhart
committed
Support IBM S/390. Patches from Neale Ferguson@softwareAG-usa.com.
1 parent 13dbd02 commit 48781d4

File tree

2 files changed

+32
-2
lines changed

2 files changed

+32
-2
lines changed

doc/src/sgml/installation.sgml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<!-- $Header: /cvsroot/pgsql/doc/src/sgml/installation.sgml,v 1.30 2000/11/30 21:44:07 petere Exp $ -->
1+
<!-- $Header: /cvsroot/pgsql/doc/src/sgml/installation.sgml,v 1.31 2000/12/03 14:41:47 thomas Exp $ -->
22

33
<chapter id="installation">
44
<title><![%flattext-install-include[<productname>PostgreSQL</>]]> Installation Instructions</title>
@@ -1160,6 +1160,13 @@ gunzip -c user.ps.gz \
11601160
<entry>2000-04-12, Tom Lane (<email>tgl@sss.pgh.pa.us</>)</entry>
11611161
<entry>See also <filename>doc/FAQ_HPUX</></>
11621162
</row>
1163+
<row>
1164+
<entry>IBM</entry>
1165+
<entry>S/390</entry>
1166+
<entry>7.1</entry>
1167+
<entry>2000-11-17, Neale Ferguson (<email>Neale.Ferguson@softwareAG-usa.com</>)</entry>
1168+
<entry></>
1169+
</row>
11631170
<row>
11641171
<entry>IRIX 6.5.6f</entry>
11651172
<entry>MIPS</entry>

src/include/storage/s_lock.h

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
*
99
*
1010
* IDENTIFICATION
11-
* $Header: /cvsroot/pgsql/src/include/storage/s_lock.h,v 1.74 2000/11/28 23:27:57 tgl Exp $
11+
* $Header: /cvsroot/pgsql/src/include/storage/s_lock.h,v 1.75 2000/12/03 14:41:42 thomas Exp $
1212
*
1313
*-------------------------------------------------------------------------
1414
*/
@@ -128,6 +128,29 @@ __asm__("swpb %0, %0, [%3]": "=r"(_res), "=m"(*lock):"0"(_res), "r" (lock));
128128

129129
#endif /* __arm__ */
130130

131+
#if defined(__s390__)
132+
/*
133+
* S/390 Linux
134+
*/
135+
#define TAS(lock) tas(lock)
136+
137+
static inline int
138+
tas(volatile slock_t *lock)
139+
{
140+
int _res;
141+
142+
__asm__ __volatile(" la 1,1\n"
143+
" l 2,%2\n"
144+
" slr 0,0\n"
145+
" cs 0,1,0(2)\n"
146+
" lr %1,0"
147+
: "=m" (lock), "=d" (_res)
148+
: "m" (lock)
149+
: "0", "1", "2");
150+
151+
return (_res);
152+
}
153+
#endif /* __s390__ */
131154

132155

133156
#if defined(__sparc__)

0 commit comments

Comments
 (0)