http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50781
Bug #: 50781 Summary: ICE: in expand_vec_perm_broadcast_1, at config/i386/i386.c:35998 with -mavx and __builtin_shuffle() Classification: Unclassified Product: gcc Version: 4.7.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization AssignedTo: unassig...@gcc.gnu.org ReportedBy: zso...@seznam.cz Host: x86_64-pc-linux-gnu Target: x86_64-pc-linux-gnu Created attachment 25549 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=25549 reduced testcase (from gcc.dg/torture/vshuf-v4di.c) Compiler output: $ gcc -O -mavx testcase.c testcase.c: In function 'foo': testcase.c:4:6: internal compiler error: in expand_vec_perm_broadcast_1, at config/i386/i386.c:35998 Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions. (gdb) bt #0 fancy_abort (file=0x12c9de0 "/mnt/svn/gcc-trunk/gcc/config/i386/i386.c", line=35998, function=0x12c6700 "expand_vec_perm_broadcast_1") at /mnt/svn/gcc-trunk/gcc/diagnostic.c:898 #1 0x0000000000c064dd in expand_vec_perm_broadcast_1 (d=0x7fffffffd740) at /mnt/svn/gcc-trunk/gcc/config/i386/i386.c:35998 #2 0x0000000000c0c6aa in expand_vec_perm_broadcast (d=0x7fffffffd740) at /mnt/svn/gcc-trunk/gcc/config/i386/i386.c:36018 #3 ix86_expand_vec_perm_builtin_1 (d=0x7fffffffd740) at /mnt/svn/gcc-trunk/gcc/config/i386/i386.c:36043 #4 0x0000000000c0ca6d in ix86_vectorize_builtin_vec_perm_ok (vec_type=Unhandled dwarf expression opcode 0xf3 ) at /mnt/svn/gcc-trunk/gcc/config/i386/i386.c:36323 #5 0x00000000008d0d8c in can_vec_perm_expr_p (type=0x7ffff56b25e8, sel=0x7ffff56bc3c0) at /mnt/svn/gcc-trunk/gcc/optabs.c:6705 #6 0x0000000000b50fdd in lower_vec_perm () at /mnt/svn/gcc-trunk/gcc/tree-vect-generic.c:644 #7 expand_vector_operations_1 () at /mnt/svn/gcc-trunk/gcc/tree-vect-generic.c:743 #8 expand_vector_operations () at /mnt/svn/gcc-trunk/gcc/tree-vect-generic.c:903 #9 0x00000000008e57f8 in execute_one_pass (pass=0x17a1a60) at /mnt/svn/gcc-trunk/gcc/passes.c:2064 #10 0x00000000008e5b65 in execute_pass_list (pass=0x17a1a60) at /mnt/svn/gcc-trunk/gcc/passes.c:2119 #11 0x00000000008e5b77 in execute_pass_list (pass=0x17a03e0) at /mnt/svn/gcc-trunk/gcc/passes.c:2120 #12 0x0000000000a3cc9e in tree_rest_of_compilation (fndecl=0x7ffff56b1f00) at /mnt/svn/gcc-trunk/gcc/tree-optimize.c:420 #13 0x000000000069430a in cgraph_expand_function (node=0x7ffff55886c0) at /mnt/svn/gcc-trunk/gcc/cgraphunit.c:1804 #14 0x000000000069625c in cgraph_expand_all_functions () at /mnt/svn/gcc-trunk/gcc/cgraphunit.c:1871 #15 cgraph_optimize () at /mnt/svn/gcc-trunk/gcc/cgraphunit.c:2148 #16 0x000000000069664a in cgraph_finalize_compilation_unit () at /mnt/svn/gcc-trunk/gcc/cgraphunit.c:1312 #17 0x000000000057911b in c_write_global_declarations () at /mnt/svn/gcc-trunk/gcc/c-decl.c:9940 #18 0x00000000009dabb4 in compile_file (argc=14, argv=0x7fffffffdaf8) at /mnt/svn/gcc-trunk/gcc/toplev.c:581 #19 do_compile (argc=14, argv=0x7fffffffdaf8) at /mnt/svn/gcc-trunk/gcc/toplev.c:1930 #20 toplev_main (argc=14, argv=0x7fffffffdaf8) at /mnt/svn/gcc-trunk/gcc/toplev.c:2006 #21 0x00007ffff6178d2d in __libc_start_main () from /lib64/libc.so.6 #22 0x000000000055cc99 in _start () Tested revisions: r180121 - crash