mirror of
https://github.com/postgres/postgres.git
synced 2025-09-02 04:21:28 +03:00
Remove HP-UX port.
HP-UX hardware is no longer produced, build farm coverage recently ended, and there are no known active maintainers targeting this OS. Since there is a major rewrite of the build system in the pipeline for PostgreSQL 16, and that requires development, testing and maintainance for each OS and tool chain, it seems like a good time to drop support for: * HP-UX, the operating system. * HP aCC, the HP-UX native compiler. Reviewed-by: Tom Lane <tgl@sss.pgh.pa.us> Reviewed-by: Andres Freund <andres@anarazel.de> Reviewed-by: Peter Eisentraut <peter.eisentraut@enterprisedb.com> Discussion: https://postgr.es/m/1415825.1656893299%40sss.pgh.pa.us
This commit is contained in:
@@ -1,40 +0,0 @@
|
||||
/*
|
||||
* tas() for HPPA.
|
||||
*
|
||||
* To generate tas.s using this template:
|
||||
* 1. cc +O2 -S -c tas.c
|
||||
* 2. edit tas.s:
|
||||
* - replace the LDW with LDCWX
|
||||
* 3. install as src/backend/port/tas/hpux_hppa.s.
|
||||
*
|
||||
* For details about the LDCWX instruction, see the "Precision
|
||||
* Architecture and Instruction Reference Manual" (09740-90014 of June
|
||||
* 1987), p. 5-38.
|
||||
*/
|
||||
|
||||
int
|
||||
tas(lock)
|
||||
int *lock; /* LDCWX is a word instruction */
|
||||
{
|
||||
/*
|
||||
* LDCWX requires that we align the "semaphore" to a 16-byte
|
||||
* boundary. The actual datum is a single word (4 bytes).
|
||||
*/
|
||||
lock = ((uintptr_t) lock + 15) & ~15;
|
||||
|
||||
/*
|
||||
* The LDCWX instruction atomically clears the target word and
|
||||
* returns the previous value. Hence, if the instruction returns
|
||||
* 0, someone else has already acquired the lock before we tested
|
||||
* it (i.e., we have failed).
|
||||
*
|
||||
* Notice that this means that we actually clear the word to set
|
||||
* the lock and set the word to clear the lock. This is the
|
||||
* opposite behavior from the SPARC LDSTUB instruction. For some
|
||||
* reason everything that H-P does is rather baroque...
|
||||
*/
|
||||
if (*lock) { /* this generates the LDW */
|
||||
return(0); /* success */
|
||||
}
|
||||
return(1); /* failure */
|
||||
}
|
@@ -1,28 +0,0 @@
|
||||
|
||||
.SPACE $TEXT$,SORT=8
|
||||
.SUBSPA $CODE$,QUAD=0,ALIGN=4,ACCESS=44,CODE_ONLY,SORT=24
|
||||
tas
|
||||
.PROC
|
||||
.CALLINFO CALLER,FRAME=0,ENTRY_SR=3
|
||||
.ENTRY
|
||||
LDO 15(%r26),%r31 ;offset 0x0
|
||||
DEPI 0,31,4,%r31 ;offset 0x4
|
||||
LDCWX 0(0,%r31),%r23 ;offset 0x8
|
||||
COMICLR,= 0,%r23,%r0 ;offset 0xc
|
||||
DEP,TR %r0,31,32,%r28 ;offset 0x10
|
||||
$00000001
|
||||
LDI 1,%r28 ;offset 0x14
|
||||
$L0
|
||||
.EXIT
|
||||
BV,N %r0(%r2) ;offset 0x18
|
||||
.PROCEND ;in=26;out=28;
|
||||
|
||||
|
||||
.SPACE $TEXT$
|
||||
.SUBSPA $CODE$
|
||||
.SPACE $PRIVATE$,SORT=16
|
||||
.SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31,SORT=16
|
||||
.SPACE $TEXT$
|
||||
.SUBSPA $CODE$
|
||||
.EXPORT tas,ENTRY,PRIV_LEV=3,ARGW0=GR,RTNVAL=GR
|
||||
.END
|
Reference in New Issue
Block a user