postgresql/src/include/storage
Tom Lane 068e08eebb Use __sync_lock_test_and_set() for spinlocks on ARM, if available.
Historically we've used the SWPB instruction for TAS() on ARM, but this
is deprecated and not available on ARMv6 and later.  Instead, make use
of a GCC builtin if available.  We'll still fall back to SWPB if not,
so as not to break existing ports using older GCC versions.

Eventually we might want to try using __sync_lock_test_and_set() on some
other architectures too, but for now that seems to present only risk and
not reward.

Back-patch to all supported versions, since people might want to use any
of them on more recent ARM chips.

Martin Pitt
2012-01-07 15:38:59 -05:00
..
backendid.h pgindent run before PG 9.1 beta 1. 2011-04-10 11:42:00 -04:00
block.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
buf.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
buf_internals.h pgindent run before PG 9.1 beta 1. 2011-04-10 11:42:00 -04:00
buffile.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
bufmgr.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
bufpage.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
copydir.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
fd.h Use "transient" files for blind writes, take 2 2011-06-10 13:43:02 -04:00
freespace.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
fsm_internals.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
indexfsm.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
ipc.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
item.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
itemid.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
itemptr.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
large_object.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
latch.h Documentation improvement and minor code cleanups for the latch facility. 2011-08-09 15:30:51 -04:00
lmgr.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
lock.h Add transaction-level advisory locks. 2011-02-18 14:05:12 +09:00
lwlock.h Efficient transaction-controlled synchronous replication. 2011-03-06 22:49:16 +00:00
off.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
pg_sema.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
pg_shmem.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
pmsignal.h pgindent run before PG 9.1 beta 1. 2011-04-10 11:42:00 -04:00
pos.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
predicate.h Remove pointless const qualifiers from function arguments in the SSI code. 2011-06-22 12:21:34 +03:00
predicate_internals.h SSI has a race condition, where the order of commit sequence numbers of 2011-07-07 23:32:25 +03:00
proc.h Fix #include problems in 9.1 branch. 2011-09-04 19:10:09 -04:00
procarray.h Derive oldestActiveXid at correct time for Hot Standby. 2011-11-02 08:53:40 +00:00
procsignal.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
reinit.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
relfilenode.h pgindent run before PG 9.1 beta 1. 2011-04-10 11:42:00 -04:00
s_lock.h Use __sync_lock_test_and_set() for spinlocks on ARM, if available. 2012-01-07 15:38:59 -05:00
shmem.h Increase SHMEM_INDEX_SIZE from 32 to 64. We're currently at 40 entries in 2011-03-31 13:37:01 +03:00
sinval.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
sinvaladt.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
smgr.h Use "transient" files for blind writes, take 2 2011-06-10 13:43:02 -04:00
spin.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
standby.h Derive oldestActiveXid at correct time for Hot Standby. 2011-11-02 08:53:40 +00:00