S/390: Define vectorization_cost hook
commit292e369f7394336a2fc35f39c2823eb3df6c4360
authorkrebbel <krebbel@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 2 Dec 2016 08:25:27 +0000 (2 08:25 +0000)
committerkrebbel <krebbel@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 2 Dec 2016 08:25:27 +0000 (2 08:25 +0000)
tree0622db93e3d416b514fe9512047a44cc2859f782
parentc4a77d65543a2bb87dd9d1bfa7da5b8c0640b8bb
S/390: Define vectorization_cost hook

Define the vectorization_cost hook.  The only change right now
compared to the default implementation is the reduced costs for
unaligned loads/stores.  This is supposed to prevent unnecessary loop
peeling performed to reach better alignments.

Further tuning of this hook is required.

-Andreas-

gcc/ChangeLog:

2016-12-02  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

* gcc/config/s390/s390.c (s390_builtin_vectorization_cost): New
function.
(TARGET_VECTORIZE_BUILTIN_VECTORIZATION_COST): Define target
macro.

gcc/testsuite/ChangeLog:

2016-12-02  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

* gcc.target/s390/vector/vec-nopeel-1.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@243158 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/config/s390/s390.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/s390/vector/vec-nopeel-1.c [new file with mode: 0644]