diff options
author | Kyrylo Tkachov <kyrylo.tkachov@arm.com> | 2017-06-02 14:41:52 +0000 |
---|---|---|
committer | Kyrylo Tkachov <ktkachov@gcc.gnu.org> | 2017-06-02 14:41:52 +0000 |
commit | 17f47f8621099fdc4b0fc6681924f97230c8a114 (patch) | |
tree | 2df2a714bac3eab1853d01ddacfcd431129dd2a3 /libgcc | |
parent | e3bd1c68738bd4e67ece407d6aa95811b44f77f9 (diff) | |
download | gcc-17f47f8621099fdc4b0fc6681924f97230c8a114.zip gcc-17f47f8621099fdc4b0fc6681924f97230c8a114.tar.gz gcc-17f47f8621099fdc4b0fc6681924f97230c8a114.tar.bz2 |
[AArch64] Emit tighter strong atomic compare-exchange loop when comparing against zero
* config/aarch64/aarch64.c (aarch64_split_compare_and_swap):
Emit CBNZ inside loop when doing a strong exchange and comparing
against zero. Generate the CC flags after the loop.
* gcc.target/aarch64/atomic_cmp_exchange_zero_strong_1.c: New test.
From-SVN: r248832
Diffstat (limited to 'libgcc')
0 files changed, 0 insertions, 0 deletions