pgsql: Remove duplicate reads from the inner loops in generic atomic op

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Remove duplicate reads from the inner loops in generic atomic op
Date: 2017-09-06 18:21:53
Message-ID: E1dpexV-0002qN-Hy@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Remove duplicate reads from the inner loops in generic atomic ops.

The pg_atomic_compare_exchange_xxx functions are defined to update
*expected to whatever they read from the target variable. Therefore,
there's no need to do additional explicit reads after we've initialized
the "old" variable. The actual benefit of this is somewhat debatable,
but it seems fairly unlikely to hurt anything, especially since we
will override the generic implementations in most performance-sensitive
cases.

Yura Sokolov, reviewed by Jesper Pedersen and myself

Discussion: https://postgr.es/m/7f65886daca545067f82bf2b463b218d@postgrespro.ru

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/e530be96859eb0a0e0bab98a79029268ddc98a1d

Modified Files
--------------
src/include/port/atomics/generic.h | 72 +++++++++++++-------------------------
1 file changed, 24 insertions(+), 48 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2017-09-06 18:37:30 Re: [COMMITTERS] pgsql: Add psql variables showing server version and psql version.
Previous Message Fabien COELHO 2017-09-06 17:53:40 Re: [COMMITTERS] pgsql: Add psql variables showing server version and psql version.