This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug ipa/81877] [7/8 Regression] Incorrect results with lto and -fipa-cp and -fipa-cp-clone
- From: "amonakov at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Fri, 18 Aug 2017 14:15:04 +0000
- Subject: [Bug ipa/81877] [7/8 Regression] Incorrect results with lto and -fipa-cp and -fipa-cp-clone
- Auto-submitted: auto-generated
- References: <bug-81877-4@http.gcc.gnu.org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81877
--- Comment #13 from Alexander Monakov <amonakov at gcc dot gnu.org> ---
> More rigorously defining the semantic of loop->safelen (the
> middle-end term) is necessary nevertheless. I believe omp ordered
> doesn't have any middle-end representation?
Except on nvptx, 'omp ordered' in omp-simd context becomes a stmt sequence
bracketed with IFN_GOMP_SIMD_ORDERED_{START,END}, which completely disables
cross-iteration vectorization aiui. So your example doesn't get vectorized (not
even with SLP).
(on omp/ptx the approach is different)