rs6000: Set param_vect_partial_vector_usage as 1 for P10
authorKewen Lin <linkw@linux.ibm.com>
Thu, 26 Nov 2020 09:20:40 +0000 (03:20 -0600)
committerKewen Lin <linkw@linux.ibm.com>
Thu, 26 Nov 2020 11:05:43 +0000 (05:05 -0600)
commitf6702584aa372de7790b3f2be9e4b5a5423eb9fa
tree63b600c7a23b318fa0d585340e6e64e24b5690f9
parenta386566118054e08bb733f1248649fb6847c407e
rs6000: Set param_vect_partial_vector_usage as 1 for P10

Due to the unexpected performance on Power9 of those vector
with length instructions, we didn't enable vectorization with
partial vectors before.

Some recent testings show that they perform expectedly on
Power10 now.  This patch is to set
param_vect_partial_vector_usage as 1 for P10 or later.

The performance evaluation on the whole SPEC2017 with option
set power10/Ofast/unroll shows it can speed up 525.x264_r by
10.80% and 554.roms_r by 1.94%.

Bootstrapped/regtested on powerpc64le-linux-gnu P10.

gcc/ChangeLog:

* config/rs6000/rs6000.c (rs6000_option_override_internal):
Set param_vect_partial_vector_usage as 1 for Power10 and up
by default.
gcc/config/rs6000/rs6000.c