diff options
author | Alex Coplan <alex.coplan@arm.com> | 2024-09-26 16:36:48 +0100 |
---|---|---|
committer | Alex Coplan <alex.coplan@arm.com> | 2024-10-07 10:39:06 +0100 |
commit | 7faadb1f261c6b8ef988c400c39ec7df09839dbe (patch) | |
tree | 743b190bcf60ec2a52beb82419a6b4fd0f5580c0 /gcc/tree-vectorizer.cc | |
parent | 37554bacfd38b1466278b529d9e70a44d7b1b909 (diff) | |
download | gcc-7faadb1f261c6b8ef988c400c39ec7df09839dbe.zip gcc-7faadb1f261c6b8ef988c400c39ec7df09839dbe.tar.gz gcc-7faadb1f261c6b8ef988c400c39ec7df09839dbe.tar.bz2 |
testsuite: Prevent unrolling of main in LTO test [PR116683]
In r15-3585-g9759f6299d9633cabac540e5c893341c708093ac I added a test which
started failing on PowerPC. The test checks that we unroll exactly one loop
three times with the following:
// { dg-final { scan-ltrans-rtl-dump-times "Unrolled loop 3 times" 1 "loop2_unroll" } }
which passes on most targets. However, on PowerPC, the loop in main
gets unrolled too, causing the scan-ltrans-rtl-dump-times check to fail
as the statement now appears twice in the dump. I think the extra
unrolling is due to different unrolling heuristics in the rs6000 port.
This patch therefore explicitly tries to block the unrolling in main with an
appropriate #pragma.
gcc/testsuite/ChangeLog:
PR testsuite/116683
* g++.dg/ext/pragma-unroll-lambda-lto.C (main): Add #pragma to
prevent unrolling of the setup loop.
Diffstat (limited to 'gcc/tree-vectorizer.cc')
0 files changed, 0 insertions, 0 deletions