[Bug tree-optimization/60891] New: [4.9/4.10 Regression] ICE: SIGSEGV (Invalid write/read) in pre_and_rev_post_order_compute_fn with -O -fno-tree-ch -fno-tree-cselim -fno-tree-dominator-opts
zsojka at seznam dot cz
gcc-bugzilla@gcc.gnu.org
Fri Apr 18 19:01:00 GMT 2014
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60891
Bug ID: 60891
Summary: [4.9/4.10 Regression] ICE: SIGSEGV (Invalid
write/read) in pre_and_rev_post_order_compute_fn with
-O -fno-tree-ch -fno-tree-cselim
-fno-tree-dominator-opts
Product: gcc
Version: 4.10.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: tree-optimization
Assignee: unassigned at gcc dot gnu.org
Reporter: zsojka at seznam dot cz
Created attachment 32633
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=32633&action=edit
reduced testcase
Compiler output (under valgrind):
$ gcc -O -fno-tree-ch -fno-tree-cselim -fno-tree-dominator-opts testcase.c
==2497== Invalid write of size 4
==2497== at 0x7464DF: pre_and_rev_post_order_compute_fn(function*, int*,
int*, bool) (cfganal.c:981)
==2497== by 0x7465F7: pre_and_rev_post_order_compute(int*, int*, bool)
(cfganal.c:1014)
==2497== by 0xC9FBE7: (anonymous namespace)::pass_reassoc::execute()
(tree-ssa-reassoc.c:4632)
==2497== by 0xA49D49: execute_one_pass(opt_pass*) (passes.c:2229)
==2497== by 0xA49FE5: execute_pass_list(opt_pass*) (passes.c:2282)
==2497== by 0xA49FF7: execute_pass_list(opt_pass*) (passes.c:2283)
==2497== by 0x786448: expand_function(cgraph_node*) (cgraphunit.c:1774)
==2497== by 0x78842B: compile() (cgraphunit.c:1908)
==2497== by 0x788B94: finalize_compilation_unit() (cgraphunit.c:2329)
==2497== by 0x63C8B3: c_write_global_declarations() (c-decl.c:10401)
==2497== by 0xB3E69C: compile_file() (toplev.c:562)
==2497== by 0xB4066F: toplev_main(int, char**) (toplev.c:1914)
==2497== by 0x5A46BF4: (below main) (in /lib64/libc-2.17.so)
==2497== Address 0x610ecb8 is 0 bytes after a block of size 40 alloc'd
==2497== at 0x4C2C820: malloc (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==2497== by 0x143DA37: xmalloc (xmalloc.c:147)
==2497== by 0xC9FB88: (anonymous namespace)::pass_reassoc::execute()
(tree-ssa-reassoc.c:4618)
==2497== by 0xA49D49: execute_one_pass(opt_pass*) (passes.c:2229)
==2497== by 0xA49FE5: execute_pass_list(opt_pass*) (passes.c:2282)
==2497== by 0xA49FF7: execute_pass_list(opt_pass*) (passes.c:2283)
==2497== by 0x786448: expand_function(cgraph_node*) (cgraphunit.c:1774)
==2497== by 0x78842B: compile() (cgraphunit.c:1908)
==2497== by 0x788B94: finalize_compilation_unit() (cgraphunit.c:2329)
==2497== by 0x63C8B3: c_write_global_declarations() (c-decl.c:10401)
==2497== by 0xB3E69C: compile_file() (toplev.c:562)
==2497== by 0xB4066F: toplev_main(int, char**) (toplev.c:1914)
==2497== by 0x5A46BF4: (below main) (in /lib64/libc-2.17.so)
==2497==
==2497== Invalid read of size 4
==2497== at 0xC9FCE6: (anonymous namespace)::pass_reassoc::execute()
(tree-ssa-reassoc.c:4648)
==2497== by 0xA49D49: execute_one_pass(opt_pass*) (passes.c:2229)
==2497== by 0xA49FE5: execute_pass_list(opt_pass*) (passes.c:2282)
==2497== by 0xA49FF7: execute_pass_list(opt_pass*) (passes.c:2283)
==2497== by 0x786448: expand_function(cgraph_node*) (cgraphunit.c:1774)
==2497== by 0x78842B: compile() (cgraphunit.c:1908)
==2497== by 0x788B94: finalize_compilation_unit() (cgraphunit.c:2329)
==2497== by 0x63C8B3: c_write_global_declarations() (c-decl.c:10401)
==2497== by 0xB3E69C: compile_file() (toplev.c:562)
==2497== by 0xB4066F: toplev_main(int, char**) (toplev.c:1914)
==2497== by 0x5A46BF4: (below main) (in /lib64/libc-2.17.so)
==2497== Address 0x610ecb8 is 0 bytes after a block of size 40 alloc'd
==2497== at 0x4C2C820: malloc (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==2497== by 0x143DA37: xmalloc (xmalloc.c:147)
==2497== by 0xC9FB88: (anonymous namespace)::pass_reassoc::execute()
(tree-ssa-reassoc.c:4618)
==2497== by 0xA49D49: execute_one_pass(opt_pass*) (passes.c:2229)
==2497== by 0xA49FE5: execute_pass_list(opt_pass*) (passes.c:2282)
==2497== by 0xA49FF7: execute_pass_list(opt_pass*) (passes.c:2283)
==2497== by 0x786448: expand_function(cgraph_node*) (cgraphunit.c:1774)
==2497== by 0x78842B: compile() (cgraphunit.c:1908)
==2497== by 0x788B94: finalize_compilation_unit() (cgraphunit.c:2329)
==2497== by 0x63C8B3: c_write_global_declarations() (c-decl.c:10401)
==2497== by 0xB3E69C: compile_file() (toplev.c:562)
==2497== by 0xB4066F: toplev_main(int, char**) (toplev.c:1914)
==2497== by 0x5A46BF4: (below main) (in /lib64/libc-2.17.so)
==2497==
More information about the Gcc-bugs
mailing list