Use mutex hint bit in PPC LWARX instructions, where possible.

Tom Lane <tgl@sss.pgh.pa.us>

Commit: 5cfa8dd3007d7e953c6a03b0fa2215d97c581b0c
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date: 2012-01-02T05:02:00Z
Releases: 9.2.0
Use mutex hint bit in PPC LWARX instructions, where possible.

The hint bit makes for a small but measurable performance improvement
in access to contended spinlocks.

On the other hand, some PPC chips give an illegal-instruction failure.
There doesn't seem to be a completely bulletproof way to tell whether the
hint bit will cause an illegal-instruction failure other than by trying
it; but most if not all 64-bit PPC machines should accept it, so follow
the Linux kernel's lead and assume it's okay to use it in 64-bit builds.
Of course we must also check whether the assembler accepts the command,
since even with a recent CPU the toolchain could be old.

Patch by Manabu Ori, significantly modified by me.

Files

PathChange+/−
configure modified +61 −1
configure.in modified +17 −1
src/include/pg_config.h.in modified +4 −1
src/include/pg_config_manual.h modified +18 −0
src/include/storage/s_lock.h modified +4 −0