http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59326
--- Comment #7 from Jakub Jelinek <jakub at gcc dot gnu.org> --- Author: jakub Date: Fri Nov 29 10:41:12 2013 New Revision: 205514 URL: http://gcc.gnu.org/viewcvs?rev=205514&root=gcc&view=rev Log: 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 in_lto_p && !flag_wpa. 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. Added: trunk/gcc/testsuite/gcc.dg/vect/vect-simd-clone-12.c trunk/gcc/testsuite/gcc.dg/vect/vect-simd-clone-12a.c Modified: trunk/gcc/ChangeLog trunk/gcc/lto-streamer-out.c trunk/gcc/lto/ChangeLog trunk/gcc/lto/lto.c trunk/gcc/omp-low.c trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gcc.dg/vect/vect-simd-clone-10a.c