This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug rtl-optimization/82388] [8 Regression] wrong code at -O1 and above on x86_64-linux-gnu in 32-bit mode
- From: "marxin at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Mon, 02 Oct 2017 08:25:24 +0000
- Subject: [Bug rtl-optimization/82388] [8 Regression] wrong code at -O1 and above on x86_64-linux-gnu in 32-bit mode
- Auto-submitted: auto-generated
- References: <bug-82388-4@http.gcc.gnu.org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82388
Martin Liška <marxin at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |wrong-code
Status|UNCONFIRMED |NEW
Last reconfirmed| |2017-10-02
CC| |law at gcc dot gnu.org,
| |marxin at gcc dot gnu.org
Target Milestone|--- |8.0
Summary|wrong code at -O1 and above |[8 Regression] wrong code
|on x86_64-linux-gnu in |at -O1 and above on
|32-bit mode |x86_64-linux-gnu in 32-bit
| |mode
Ever confirmed|0 |1
--- Comment #2 from Martin Liška <marxin at gcc dot gnu.org> ---
It's related to PR82387, as:
==12691== Invalid read of size 8
==12691== at 0x1B70E40: bitmap_bit_in_range_p(simple_bitmap_def const*,
unsigned int, unsigned int) (sbitmap.c:348)
==12691== by 0x10FBD44: live_bytes_read(ao_ref, ao_ref*, simple_bitmap_def*)
(tree-ssa-dse.c:496)
==12691== by 0x10FC09D: dse_classify_store(ao_ref*, gimple*, gimple**, bool,
simple_bitmap_def*) (tree-ssa-dse.c:594)
==12691== by 0x10FC7AC:
dse_dom_walker::dse_optimize_stmt(gimple_stmt_iterator*) (tree-ssa-dse.c:820)
==12691== by 0x10FC8B2:
dse_dom_walker::before_dom_children(basic_block_def*) (tree-ssa-dse.c:852)
==12691== by 0x19D8C93: dom_walker::walk(basic_block_def*) (domwalk.c:308)
==12691== by 0x10FC9FD: (anonymous namespace)::pass_dse::execute(function*)
(tree-ssa-dse.c:906)
==12691== by 0xE33C6C: execute_one_pass(opt_pass*) (passes.c:2495)
==12691== by 0xE33FBD: execute_pass_list_1(opt_pass*) (passes.c:2584)
==12691== by 0xE33FEE: execute_pass_list_1(opt_pass*) (passes.c:2585)
==12691== by 0xE34046: execute_pass_list(function*, opt_pass*)
(passes.c:2595)
==12691== by 0xE32136: do_per_function_toporder(void (*)(function*, void*),
void*) (passes.c:1737)
==12691== Address 0x65794e0 is 8 bytes after a block of size 40 alloc'd
==12691== at 0x4C2E08F: malloc (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==12691== by 0x1BECD44: xmalloc (xmalloc.c:147)
==12691== by 0x1B705EC: sbitmap_alloc(unsigned int) (sbitmap.c:50)
==12691== by 0x990C5A: auto_sbitmap::auto_sbitmap(unsigned int)
(sbitmap.h:270)
==12691== by 0x10FCC97: dse_dom_walker::dse_dom_walker(cdi_direction)
(tree-ssa-dse.c:661)
==12691== by 0x10FC9E2: (anonymous namespace)::pass_dse::execute(function*)
(tree-ssa-dse.c:906)
==12691== by 0xE33C6C: execute_one_pass(opt_pass*) (passes.c:2495)
==12691== by 0xE33FBD: execute_pass_list_1(opt_pass*) (passes.c:2584)
==12691== by 0xE33FEE: execute_pass_list_1(opt_pass*) (passes.c:2585)
==12691== by 0xE34046: execute_pass_list(function*, opt_pass*)
(passes.c:2595)
==12691== by 0xE32136: do_per_function_toporder(void (*)(function*, void*),
void*) (passes.c:1737)
==12691== by 0xE34C2F: execute_ipa_pass_list(opt_pass*) (passes.c:2935)