diff options
author | mwahab <mwahab@138bc75d-0d04-0410-961f-82ee72b054a4> | 2015-09-22 09:41:15 +0000 |
---|---|---|
committer | mwahab <mwahab@138bc75d-0d04-0410-961f-82ee72b054a4> | 2015-09-22 09:41:15 +0000 |
commit | eeae6940a4b25ee6270e8e06a67229eef09f0dbc (patch) | |
tree | 59c5a33c77435f868488239bdf21d29239bee1be /gcc/ChangeLog | |
parent | b8a8b19c3622f5945ca6da03d0531228f0c4b78c (diff) | |
download | gcc-eeae6940a4b25ee6270e8e06a67229eef09f0dbc.tar.gz |
[AArch64] Use atomic load-operate instructions for update-fetch patterns.
2015-09-22 Matthew Wahab <matthew.wahab@arm.com>
* config/aarch64/aarch64-protos.h (aarch64_gen_atomic_ldop):
Adjust declaration.
* config/aarch64/aarch64.c (aarch64_emit_bic): New.
(aarch64_gen_atomic_ldop): Adjust comment. Add parameter
out_result. Update to support update-fetch operations.
* config/aarch64/atomics.md (aarch64_atomic_exchange<mode>_lse):
Adjust for change to aarch64_gen_atomic_ldop.
(aarch64_atomic_<atomic_optab><mode>_lse): Likewise.
(aarch64_atomic_fetch_<atomic_optab><mode>_lse): Likewise.
(atomic_<atomic_optab>_fetch<mode>): Change to an expander.
(aarch64_atomic_<atomic_optab>_fetch<mode>): New.
(aarch64_atomic_<atomic_optab>_fetch<mode>_lse): New.
gcc/testsuite
2015-09-22 Matthew Wahab <matthew.wahab@arm.com>
* gcc.target/aarch64/atomic-inst-ldadd.c: Add tests for
update-fetch operations.
* gcc.target/aarch64/atomic-inst-ldlogic.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@228002 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ChangeLog')
-rw-r--r-- | gcc/ChangeLog | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ad6ec7f0353..50a950ec3f0 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,20 @@ 2015-09-22 Matthew Wahab <matthew.wahab@arm.com> + * config/aarch64/aarch64-protos.h (aarch64_gen_atomic_ldop): + Adjust declaration. + * config/aarch64/aarch64.c (aarch64_emit_bic): New. + (aarch64_gen_atomic_ldop): Adjust comment. Add parameter + out_result. Update to support update-fetch operations. + * config/aarch64/atomics.md (aarch64_atomic_exchange<mode>_lse): + Adjust for change to aarch64_gen_atomic_ldop. + (aarch64_atomic_<atomic_optab><mode>_lse): Likewise. + (aarch64_atomic_fetch_<atomic_optab><mode>_lse): Likewise. + (atomic_<atomic_optab>_fetch<mode>): Change to an expander. + (aarch64_atomic_<atomic_optab>_fetch<mode>): New. + (aarch64_atomic_<atomic_optab>_fetch<mode>_lse): New. + +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. |