]> granicus.if.org Git - postgresql/commit
Use mutex hint bit in PPC LWARX instructions, where possible.
authorTom Lane <tgl@sss.pgh.pa.us>
Mon, 2 Jan 2012 03:39:59 +0000 (22:39 -0500)
committerTom Lane <tgl@sss.pgh.pa.us>
Mon, 2 Jan 2012 05:02:00 +0000 (00:02 -0500)
commit5cfa8dd3007d7e953c6a03b0fa2215d97c581b0c
tree39ee2902ec30be8467b91a25f3f02c7a89f70507
parent6b6137e4efebcd767a349099b3e048fbc7755cca
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.
configure
configure.in
src/include/pg_config.h.in
src/include/pg_config_manual.h
src/include/storage/s_lock.h