This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Fix omp declare simd cloning (PR tree-optimization/60823)
- From: Jakub Jelinek <jakub at redhat dot com>
- To: Rainer Orth <ro at CeBiTec dot Uni-Bielefeld dot DE>
- Cc: Richard Biener <rguenther at suse dot de>, gcc-patches at gcc dot gnu dot org
- Date: Thu, 15 May 2014 14:42:17 +0200
- Subject: Re: [PATCH] Fix omp declare simd cloning (PR tree-optimization/60823)
- Authentication-results: sourceware.org; auth=none
- References: <20140418133047 dot GD1817 at tucnak dot redhat dot com> <ydd61la3vys dot fsf at lokon dot CeBiTec dot Uni-Bielefeld dot DE> <ydd4n0t1sur dot fsf at CeBiTec dot Uni-Bielefeld dot DE> <20140513175050 dot GB10386 at tucnak dot redhat dot com> <yddd2ffrzea dot fsf at lokon dot CeBiTec dot Uni-Bielefeld dot DE>
- Reply-to: Jakub Jelinek <jakub at redhat dot com>
On Thu, May 15, 2014 at 02:37:33PM +0200, Rainer Orth wrote:
> > If OpenMP declare simd doesn't work on Solaris/x86 (due to the bogus hw cap
> > stuff), then supposedly vect_simd_clones effective target should fail there.
>
> I don't think it's bogus: it guards against a similar kind of problems
> as symbol versioning. There, programs that depend on a missing
> interface don't start to run instead of crashing in the middle of
> execution when a function is missing. With hwcap, programs depending on
> insns not supported by the host don't even start running instead of
> crashing later on.
Runtime selection of code is very common though, which is why I think that
whole idea of hw cap flags checking is bogus.
> > OpenMP declare simd results in cloning of the functions for SSE2, AVX and
> > AVX2.
>
> Ok, that's what I was missing. ISTM that on Solaris with as/ld,
> -fopenmp should trigger linking with a mapfile like the one currently
> used in some places in the testsuite. I envision turning this into a
> general facility (-mclear-hwcap; -m is for target-specific options,
> right?) which is automatically turned on by -fopenmp on Solaris.
Perhaps.
Jakub