diff options
author | Aaron Sawdey <acsawdey@linux.ibm.com> | 2020-04-20 13:01:43 -0500 |
---|---|---|
committer | Aaron Sawdey <acsawdey@linux.ibm.com> | 2020-04-22 12:19:33 -0500 |
commit | 3bcdb5dec72b6d7b197821c2b814bc9fc07f4628 (patch) | |
tree | fc0cf4cab07bd73a5607091c2c158aafbaf92652 /gcc/cp/constraint.cc | |
parent | 464092e0f1123878cda3e2fa37b1cdc6a26ebbd4 (diff) | |
download | gcc-3bcdb5dec72b6d7b197821c2b814bc9fc07f4628.zip gcc-3bcdb5dec72b6d7b197821c2b814bc9fc07f4628.tar.gz gcc-3bcdb5dec72b6d7b197821c2b814bc9fc07f4628.tar.bz2 |
Use plq/pstq for atomic_{load,store}<mode>
For future architecture with prefix instructions, always use plq/pstq
rather than lq/stq for atomic load of quadword. Then we never have to
do the doubleword swap on little endian. Before this fix, -mno-pcrel
would generate lq with the doubleword swap (which was ok) and -mpcrel
would generate plq, also with the doubleword swap, which was wrong.
2020-04-20 Aaron Sawdey <acsawdey@linux.ibm.com>
PR target/94622
* config/rs6000/sync.md (load_quadpti): Add attr "prefixed"
if TARGET_PREFIXED.
(store_quadpti): Ditto.
(atomic_load<mode>): Do not swap doublewords if TARGET_PREFIXED as
plq will be used and doesn't need it.
(atomic_store<mode>): Ditto, for pstq.
Diffstat (limited to 'gcc/cp/constraint.cc')
0 files changed, 0 insertions, 0 deletions