postgresql/src/include/storage
Tom Lane 3da9c060fc Fix s_lock.h PPC assembly code to be compatible with native AIX assembler.
On recent AIX it's necessary to configure gcc to use the native assembler
(because the GNU assembler hasn't been updated to handle AIX 6+).  This
caused PG builds to fail with assembler syntax errors, because we'd try
to compile s_lock.h's gcc asm fragment for PPC, and that assembly code
relied on GNU-style local labels.  We can't substitute normal labels
because it would fail in any file containing more than one inlined use of
tas().  Fortunately, that code is stable enough, and the PPC ISA is simple
enough, that it doesn't seem like too much of a maintenance burden to just
hand-code the branch offsets, removing the need for any labels.

Note that the AIX assembler only accepts "$" for the location counter
pseudo-symbol.  The usual GNU convention is "."; but it appears that all
versions of gas for PPC also accept "$", so in theory this patch will not
break any other PPC platforms.

This has been reported by a few people, but Steve Underwood gets the credit
for being the first to pursue the problem far enough to understand why it
was failing.  Thanks also to Noah Misch for additional testing.
2015-08-29 16:09:25 -04:00
..
backendid.h Update copyright for 2014 2014-01-07 16:05:30 -05:00
barrier.h Mark x86's memory barrier inline assembly as clobbering the cpu flags. 2014-09-19 17:13:07 +02:00
block.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
buf.h Update copyright for 2014 2014-01-07 16:05:30 -05:00
buf_internals.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
buffile.h Update copyright for 2014 2014-01-07 16:05:30 -05:00
bufmgr.h Fix race condition between hot standby and restoring a full-page image. 2014-11-13 20:02:09 +02:00
bufpage.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
checksum.h Update copyright for 2014 2014-01-07 16:05:30 -05:00
checksum_impl.h Update copyright for 2014 2014-01-07 16:05:30 -05:00
copydir.h Update copyright for 2014 2014-01-07 16:05:30 -05:00
dsm.h "Pin", rather than "keep", dynamic shared memory mappings and segments. 2014-10-30 11:44:22 -04:00
dsm_impl.h "Pin", rather than "keep", dynamic shared memory mappings and segments. 2014-10-30 11:44:22 -04:00
fd.h Fix fsync-at-startup code to not treat errors as fatal. 2015-05-28 17:33:03 -04:00
freespace.h Update copyright for 2014 2014-01-07 16:05:30 -05:00
fsm_internals.h Update copyright for 2014 2014-01-07 16:05:30 -05:00
indexfsm.h Update copyright for 2014 2014-01-07 16:05:30 -05:00
ipc.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
item.h Update copyright for 2014 2014-01-07 16:05:30 -05:00
itemid.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
itemptr.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
large_object.h Add defenses against running with a wrong selection of LOBLKSIZE. 2014-06-05 11:31:06 -04:00
latch.h Update copyright for 2014 2014-01-07 16:05:30 -05:00
lmgr.h Setup error context callback for transaction lock waits 2014-03-19 15:10:36 -03:00
lock.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
lwlock.h Fix calculation of PREDICATELOCK_MANAGER_LWLOCK_OFFSET. 2014-06-19 08:52:16 -05:00
off.h Update copyright for 2014 2014-01-07 16:05:30 -05:00
pg_sema.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
pg_shmem.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
pmsignal.h Update copyright for 2014 2014-01-07 16:05:30 -05:00
pos.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
predicate.h Update copyright for 2014 2014-01-07 16:05:30 -05:00
predicate_internals.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
proc.h Don't skip SQL backends in logical decoding for visibility computation. 2014-12-02 23:52:44 +01:00
procarray.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
procsignal.h Export set_latch_on_sigusr1 symbol for Windows. 2014-01-17 12:48:23 -05:00
reinit.h Update copyright for 2014 2014-01-07 16:05:30 -05:00
relfilenode.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
s_lock.h Fix s_lock.h PPC assembly code to be compatible with native AIX assembler. 2015-08-29 16:09:25 -04:00
shm_mq.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
shm_toc.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
shmem.h Update copyright for 2014 2014-01-07 16:05:30 -05:00
sinval.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
sinvaladt.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
smgr.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
spin.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
standby.h Logging running transactions every 15 seconds. 2014-01-15 12:41:20 -05:00