diff options
author | Matthew Wahab <matthew.wahab@arm.com> | 2015-09-22 09:35:17 +0000 |
---|---|---|
committer | Matthew Wahab <mwahab@gcc.gnu.org> | 2015-09-22 09:35:17 +0000 |
commit | 641c2f8b69f799a00d0fda696d480e10505257c3 (patch) | |
tree | 2220bcca76e385fc63c24283ae19a9119a3f587b /gcc/rtl.c | |
parent | 6380d2bc38237e00e3d460882b4b0938bbb068b9 (diff) | |
download | gcc-641c2f8b69f799a00d0fda696d480e10505257c3.zip gcc-641c2f8b69f799a00d0fda696d480e10505257c3.tar.gz gcc-641c2f8b69f799a00d0fda696d480e10505257c3.tar.bz2 |
[AArch64] Use atomic load-operate instructions for fetch-update patterns.
gcc/
2015-09-22 Matthew Wahab <matthew.wahab@arm.com>
* config/aarch64/aarch64-protos.h
(aarch64_atomic_ldop_supported_p): Declare.
* config/aarch64/aarch64.c (aarch64_atomic_ldop_supported_p): New.
(enum aarch64_atomic_load_op_code): New.
(aarch64_emit_atomic_load_op): New.
(aarch64_gen_atomic_ldop): Update to support load-operate
patterns.
* config/aarch64/atomics.md (atomic_<atomic_optab><mode>): Change
to an expander.
(aarch64_atomic_<atomic_optab><mode>): New.
(aarch64_atomic_<atomic_optab><mode>_lse): New.
(atomic_fetch_<atomic_optab><mode>): Change to an expander.
(aarch64_atomic_fetch_<atomic_optab><mode>): New.
(aarch64_atomic_fetch_<atomic_optab><mode>_lse): New.
gcc/testsuite/
2015-09-22 Matthew Wahab <matthew.wahab@arm.com>
* gcc.target/aarch64/atomic-inst-ldadd.c: New.
* gcc.target/aarch64/atomic-inst-ldlogic.c: New.
From-SVN: r228001
Diffstat (limited to 'gcc/rtl.c')
0 files changed, 0 insertions, 0 deletions