This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/33680] [4.3 Regression] ICE when compilling elbg.c from ffmpeg (vectorizer)
- From: "irar at il dot ibm dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 10 Oct 2007 13:23:53 -0000
- Subject: [Bug tree-optimization/33680] [4.3 Regression] ICE when compilling elbg.c from ffmpeg (vectorizer)
- References: <bug-33680-10490@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #11 from irar at il dot ibm dot com 2007-10-10 13:23 -------
I understand that those symbols have to be renamed, I am just saying that maybe
it should be done in the gimplifier and not in the vectorizer. But since
force_gimple_operand_bsi also goes through the statements list, I guess it is
reasonable to do the same thing in the vectorizer. Or we can add a new API like
force_gimple_operand_and_mark_for_renaming.
Anyway, I tried your patch. Now we get a different ICE:
internal compiler error: in referenced_var_lookup, at tree-dfa.c:642
D.1556 is marked for renaming but then during update_ssa it cannot find it -
htab_find_with_hash (tree-dfa.c:641) returns NULL.
#0 referenced_var_lookup (uid=1556) at ../../gcc/gcc/tree-dfa.c:642
#1 0x00000000006f9308 in update_ssa (update_flags=2048) at
../../gcc/gcc/tree-into-ssa.c:3207
#2 0x0000000000aac184 in vect_transform_loop (loop_vinfo=0xe94410) at
../../gcc/gcc/tree-vect-transform.c:7431
#3 0x00000000007fae09 in vectorize_loops () at
../../gcc/gcc/tree-vectorizer.c:2507
#4 0x0000000000631726 in execute_one_pass (pass=0xdfc0c0) at
../../gcc/gcc/passes.c:1116
#5 0x00000000006318ec in execute_pass_list (pass=0xdfc0c0) at
../../gcc/gcc/passes.c:1169
#6 0x00000000006318fe in execute_pass_list (pass=0xdfbee0) at
../../gcc/gcc/passes.c:1170
#7 0x00000000006318fe in execute_pass_list (pass=0xdfb2e0) at
../../gcc/gcc/passes.c:1170
#8 0x00000000007086ce in tree_rest_of_compilation (fndecl=0x2ba807b05800) at
../../gcc/gcc/tree-optimize.c:404
#9 0x000000000088a054 in cgraph_expand_function (node=0x2ba807b05900) at
../../gcc/gcc/cgraphunit.c:1070
#10 0x000000000088bbe7 in cgraph_optimize () at ../../gcc/gcc/cgraphunit.c:1139
#11 0x00000000004144fe in c_write_global_declarations () at
../../gcc/gcc/c-decl.c:8077
#12 0x00000000006ad2e7 in toplev_main (argc=<value optimized out>, argv=<value
optimized out>) at ../../gcc/gcc/toplev.c:1052
#13 0x00002ba8077d5154 in __libc_start_main () from /lib64/libc.so.6
#14 0x0000000000403cf9 in _start ()
Thanks,
Ira
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33680