https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63504

--- Comment #1 from Markus Trippelsdorf <trippels at gcc dot gnu.org> ---
Two more variations of issue 3)

==47649== Invalid read of size 4
==47649==    at 0x10B00978: reg_num_sign_bit_copies_for_combine(rtx_def const*,
machine_mode, rtx_def const*, machine_mode, unsigned int, unsigned int*)
(combine.c:9581)
==47649==    by 0x105E3CC3: num_sign_bit_copies1(rtx_def const*, machine_mode,
rtx_def const*, machine_mode, unsigned int) (rtlanal.c:4661)
==47649==    by 0x10B0493B: if_then_else_cond(rtx_def*, rtx_def**, rtx_def**)
(combine.c:8785)
==47649==    by 0x10B047D7: if_then_else_cond(rtx_def*, rtx_def**, rtx_def**)
(combine.c:8640)
==47649==    by 0x10B12D67: combine_simplify_rtx(rtx_def*, machine_mode, int,
int) (combine.c:5270)
==47649==    by 0x10B14C7B: subst(rtx_def*, rtx_def*, rtx_def*, int, int, int)
(combine.c:5207)
==47649==    by 0x10B14DF7: subst(rtx_def*, rtx_def*, rtx_def*, int, int, int)
(combine.c:5152)
==47649==    by 0x10B1694B: try_combine(rtx_insn*, rtx_insn*, rtx_insn*,
rtx_insn*, int*, rtx_insn*) (combine.c:3093)
==47649==    by 0x10B1BA47: combine_instructions (combine.c:1261)
==47649==    by 0x10B1BA47: rest_of_handle_combine (combine.c:13902)
==47649==    by 0x10B1BA47: (anonymous
namespace)::pass_combine::execute(function*) (combine.c:13945)
==47649==    by 0x10573E27: execute_one_pass(opt_pass*) (passes.c:2151)
==47649==    by 0x105744C3: execute_pass_list_1(opt_pass*) (passes.c:2203)
==47649==    by 0x105744DB: execute_pass_list_1(opt_pass*) (passes.c:2204)
==47649==  Address 0x69d38a8 is 0 bytes after a block of size 1,720 alloc'd
==47649==    at 0x402924C: malloc (vg_replace_malloc.c:296)
==47649==    by 0x10C6DE73: xmalloc (xmalloc.c:147)
==47649==    by 0x105B2883: regstat_init_n_sets_and_refs() (regstat.c:60)
==47649==    by 0x10B1AEE3: rest_of_handle_combine (combine.c:13899)
==47649==    by 0x10B1AEE3: (anonymous
namespace)::pass_combine::execute(function*) (combine.c:13945)
==47649==    by 0x10573E27: execute_one_pass(opt_pass*) (passes.c:2151)
==47649==    by 0x105744C3: execute_pass_list_1(opt_pass*) (passes.c:2203)
==47649==    by 0x105744DB: execute_pass_list_1(opt_pass*) (passes.c:2204)
==47649==    by 0x1057455B: execute_pass_list(function*, opt_pass*)
(passes.c:2214)
==47649==    by 0x102E2157: cgraph_node::expand() (cgraphunit.c:1735)
==47649==    by 0x102E3727: expand_all_functions (cgraphunit.c:1871)
==47649==    by 0x102E3727: symbol_table::compile() (cgraphunit.c:2206)
==47649==    by 0x102E4F93: symbol_table::finalize_compilation_unit()
(cgraphunit.c:2283)
==47649==    by 0x104DF877: write_global_declarations() (langhooks.c:328)
==47649==
==47649== Invalid read of size 4
==47649==    at 0x10B00C68: reg_nonzero_bits_for_combine(rtx_def const*,
machine_mode, rtx_def const*, machine_mode, unsigned long, unsigned long*)
(combine.c:9504)
==47649==    by 0x105DAEF3: nonzero_bits1(rtx_def const*, machine_mode, rtx_def
const*, machine_mode, unsigned long) (rtlanal.c:4175)
==47649==    by 0x10B04C23: if_then_else_cond(rtx_def*, rtx_def**, rtx_def**)
(combine.c:8792)
==47649==    by 0x10B047D7: if_then_else_cond(rtx_def*, rtx_def**, rtx_def**)
(combine.c:8640)
==47649==    by 0x10B12D67: combine_simplify_rtx(rtx_def*, machine_mode, int,
int) (combine.c:5270)
==47649==    by 0x10B14C7B: subst(rtx_def*, rtx_def*, rtx_def*, int, int, int)
(combine.c:5207)
==47649==    by 0x10B14DF7: subst(rtx_def*, rtx_def*, rtx_def*, int, int, int)
(combine.c:5152)
==47649==    by 0x10B1694B: try_combine(rtx_insn*, rtx_insn*, rtx_insn*,
rtx_insn*, int*, rtx_insn*) (combine.c:3093)
==47649==    by 0x10B1BA47: combine_instructions (combine.c:1261)
==47649==    by 0x10B1BA47: rest_of_handle_combine (combine.c:13902)
==47649==    by 0x10B1BA47: (anonymous
namespace)::pass_combine::execute(function*) (combine.c:13945)
==47649==    by 0x10573E27: execute_one_pass(opt_pass*) (passes.c:2151)
==47649==    by 0x105744C3: execute_pass_list_1(opt_pass*) (passes.c:2203)
==47649==    by 0x105744DB: execute_pass_list_1(opt_pass*) (passes.c:2204)
==47649==  Address 0x69d38a8 is 0 bytes after a block of size 1,720 alloc'd
==47649==    at 0x402924C: malloc (vg_replace_malloc.c:296)
==47649==    by 0x10C6DE73: xmalloc (xmalloc.c:147)
==47649==    by 0x105B2883: regstat_init_n_sets_and_refs() (regstat.c:60)
==47649==    by 0x10B1AEE3: rest_of_handle_combine (combine.c:13899)
==47649==    by 0x10B1AEE3: (anonymous
namespace)::pass_combine::execute(function*) (combine.c:13945)
==47649==    by 0x10573E27: execute_one_pass(opt_pass*) (passes.c:2151)
==47649==    by 0x105744C3: execute_pass_list_1(opt_pass*) (passes.c:2203)
==47649==    by 0x105744DB: execute_pass_list_1(opt_pass*) (passes.c:2204)
==47649==    by 0x1057455B: execute_pass_list(function*, opt_pass*)
(passes.c:2214)
==47649==    by 0x102E2157: cgraph_node::expand() (cgraphunit.c:1735)
==47649==    by 0x102E3727: expand_all_functions (cgraphunit.c:1871)
==47649==    by 0x102E3727: symbol_table::compile() (cgraphunit.c:2206)
==47649==    by 0x102E4F93: symbol_table::finalize_compilation_unit()
(cgraphunit.c:2283)
==47649==    by 0x104DF877: write_global_declarations() (langhooks.c:328)

Reply via email to