On 11/28/13 16:00, Jakub Jelinek wrote:
Hi!

And here is second part of the fixes.  Still, the vect-simd-clone-12.c
testcase fails with -flto -flto-partition=1to1, so there is further work to
do, but at least all current test succeed and actually use SIMD elementals
when they should.  Bootstrapped/regtested on x86_64-linux and i686-linux,
ok for trunk?

2013-11-28  Jakub Jelinek  <ja...@redhat.com>
            Richard Biener  <rguent...@suse.de>

        PR lto/59326
        * omp-low.c (simd_clone_create): Return NULL if for definition
        !cgraph_function_with_gimple_body_p (old_node).  Call cgraph_get_body
        before calling cgraph_function_versioning.
        (expand_simd_clones): Look for "omp declare simd" attribute first.
        Don't check targetm.simd_clone.compute_vecsize_and_simdlen here.
        Punt if node->global.inlined_to.
        (pass_omp_simd_clone::gate): Also enable if flag_ltrans.  Disable
        pass if targetm.simd_clone.compute_vecsize_and_simdlen is NULL.
        * lto-streamer-out.c (hash_tree): Handle OMP_CLAUSE.
lto/
        * lto.c (compare_tree_sccs_1): Handle OMP_CLAUSE.
testsuite/
        * gcc.dg/vect/vect-simd-clone-12.c: New test.
        * gcc.dg/vect/vect-simd-clone-12a.c: New test.
        * gcc.dg/vect/vect-simd-clone-10a.c: Remove extern keywords.
OK.

Jeff

Reply via email to