postgresql/src/backend
Andres Freund de6429a8fd Provide a generic fallback for pg_compiler_barrier using an extern function.
If the compiler/arch combination does not provide compiler barriers,
provide a fallback. That fallback simply consists out of a function
call into a externally defined function.  That should guarantee
compiler barrierer semantics except for compilers that do inter
translation unit/global optimization - those better provide an actual
compiler barrier.

Hopefully this fixes Tom's report of linker failures due to
pg_compiler_barrier_impl not being provided.

I'm not backpatching this commit as it builds on the new atomics
infrastructure. If we decide an equivalent fix needs to be
backpatched, I'll do so in a separate commit.

Discussion: 27746.1420930690@sss.pgh.pa.us

Per report from Tom Lane.
2015-01-11 01:15:29 +01:00
..
access Don't open a WAL segment for writing at end of recovery. 2015-01-07 16:20:20 +02:00
bootstrap Update copyright for 2015 2015-01-06 11:43:47 -05:00
catalog Update copyright for 2015 2015-01-06 11:43:47 -05:00
commands Fix logging of pages skipped due to pins during vacuum. 2015-01-08 12:57:09 +01:00
executor Fix typo in execMain.c 2015-01-09 11:07:35 -05:00
foreign Update copyright for 2015 2015-01-06 11:43:47 -05:00
lib Update copyright for 2015 2015-01-06 11:43:47 -05:00
libpq Update copyright for 2015 2015-01-06 11:43:47 -05:00
main Always set the six locale category environment variables in main(). 2015-01-07 22:34:57 -05:00
nodes Update copyright for 2015 2015-01-06 11:43:47 -05:00
optimizer Update copyright for 2015 2015-01-06 11:43:47 -05:00
parser Update copyright for 2015 2015-01-06 11:43:47 -05:00
po Translation updates 2014-12-15 00:25:35 -05:00
port Provide a generic fallback for pg_compiler_barrier using an extern function. 2015-01-11 01:15:29 +01:00
postmaster On Darwin, refuse postmaster startup when multithreaded. 2015-01-07 22:46:59 -05:00
regex Update copyright for 2015 2015-01-06 11:43:47 -05:00
replication Update copyright for 2015 2015-01-06 11:43:47 -05:00
rewrite Update copyright for 2015 2015-01-06 11:43:47 -05:00
snowball Update copyright for 2015 2015-01-06 11:43:47 -05:00
storage Remove comment that was intended to have been removed before commit. 2015-01-08 13:16:31 +01:00
tcop Update copyright for 2015 2015-01-06 11:43:47 -05:00
tsearch Update copyright for 2015 2015-01-06 11:43:47 -05:00
utils Fix namespace handling in xpath function 2015-01-06 23:06:13 -05:00
.gitignore Add gitignore for mingw/cygwin build outputs 2011-06-09 18:11:47 +02:00
common.mk Remove maintainer-check target, fold into normal build 2013-10-10 20:11:56 -04:00
Makefile Update copyright for 2015 2015-01-06 11:43:47 -05:00
nls.mk xlogreader.c: Fix report_invalid_record translatability flag 2015-01-09 12:34:25 -03:00