diff options
author | Hao Liu <hliu@os.amperecomputing.com> | 2023-07-31 20:53:37 +0800 |
---|---|---|
committer | Hao Liu <hliu@os.amperecomputing.com> | 2023-07-31 20:55:14 +0800 |
commit | bf67bf4880ce5be0b6e48c7c35828528b7be12ed (patch) | |
tree | ce2523654309d3278a3a4144bf6d1e2cebaaa185 /gcc/combine.cc | |
parent | 05986af232bca2f0a9219f8bd420a1d1f9068aa8 (diff) | |
download | gcc-bf67bf4880ce5be0b6e48c7c35828528b7be12ed.zip gcc-bf67bf4880ce5be0b6e48c7c35828528b7be12ed.tar.gz gcc-bf67bf4880ce5be0b6e48c7c35828528b7be12ed.tar.bz2 |
AArch64: Do not increase the vect reduction latency by multiplying count [PR110625]
The new costs should only count reduction latency by multiplying count for
single_defuse_cycle. For other situations, this will increase the reduction
latency a lot and miss vectorization opportunities.
Tested on aarch64-linux-gnu.
gcc/ChangeLog:
PR target/110625
* config/aarch64/aarch64.cc (count_ops): Only '* count' for
single_defuse_cycle while counting reduction_latency.
gcc/testsuite/ChangeLog:
* gcc.target/aarch64/pr110625_1.c: New testcase.
* gcc.target/aarch64/pr110625_2.c: New testcase.
Diffstat (limited to 'gcc/combine.cc')
0 files changed, 0 insertions, 0 deletions