https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86816
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |ASSIGNED
Last reconfirmed| |2018-08-02
Version|tree-ssa |8.2.0
Assignee|unassigned at gcc dot gnu.org |rguenth at gcc dot
gnu.org
Target Milestone|--- |8.3
Summary|[8 Regression] ICE: SIGSEGV |[8/9 Regression] ICE:
|in tree-ssa-pre / |SIGSEGV in tree-ssa-pre /
|tail_merge_optimize |tail_merge_optimize
Ever confirmed|0 |1
Known to fail| |9.0
--- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> ---
Confirmed.
#1 0x00000000014e9e2a in VN_INFO (name=<ssa_name 0x7ffff6a07120>)
at /tmp/trunk/gcc/tree-ssa-sccvn.c:376
376 gcc_checking_assert (res);
so we are asking for the value-number of sth that didn't get a VN_INFO
comparing
(gdb) p debug_gimple_stmt (s1)
if (pretmp_13 == 1)
$1 = void
(gdb) p debug_gimple_stmt (s2)
if (_16 <= 1)
with _16 being the culprit here. This SSA name is generated via the
CFG cleanup done between PRE and tail-merging.
#0 make_ssa_name_fn (fn=0x7ffff69f8000, var=<integer_type 0x7ffff69e4540>,
stmt=<gimple 0x0>, version=0) at /tmp/trunk/gcc/tree-ssanames.c:325
#1 0x00000000012e7739 in make_ssa_name (var=<integer_type 0x7ffff69e4540>,
stmt=<gimple 0x0>) at /tmp/trunk/gcc/tree-ssanames.h:115
#2 0x000000000130397a in generate_range_test (
bb=<basic_block 0x7ffff68987b8 (6)>, index=<ssa_name 0x7ffff6a07000>,
low=<integer_cst 0x7ffff68ae228>, high=<integer_cst 0x7ffff68ae588>,
lhs=0x7fffffffd520, rhs=0x7fffffffd518) at /tmp/trunk/gcc/tree-cfg.c:9141
#3 0x000000000130b17a in convert_single_case_switch (swtch=0x7ffff68a9a00,
gsi=...) at /tmp/trunk/gcc/tree-cfgcleanup.c:102
#4 0x000000000130b2f0 in cleanup_control_expr_graph (
bb=<basic_block 0x7ffff68987b8 (6)>, gsi=...)
at /tmp/trunk/gcc/tree-cfgcleanup.c:141
#5 0x000000000130b708 in cleanup_control_flow_bb (
bb=<basic_block 0x7ffff68987b8 (6)>)
at /tmp/trunk/gcc/tree-cfgcleanup.c:248
#6 0x000000000130ce48 in cleanup_control_flow_pre ()
at /tmp/trunk/gcc/tree-cfgcleanup.c:758
#7 0x000000000130d2a9 in cleanup_tree_cfg_noloop ()
at /tmp/trunk/gcc/tree-cfgcleanup.c:882
#8 0x000000000130d52d in cleanup_tree_cfg ()
at /tmp/trunk/gcc/tree-cfgcleanup.c:990
#9 0x000000000153d81f in tail_merge_optimize (todo=32)
at /tmp/trunk/gcc/tree-ssa-tail-merge.c:1732
#10 0x00000000014c3e22 in (anonymous namespace)::pass_pre::execute (
this=0x2f26300, fun=0x7ffff69f8000) at /tmp/trunk/gcc/tree-ssa-pre.c:4208