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

            Bug ID: 89802
           Summary: [9 Regresssion] ICE: verify_gimple failed (error: dead
                    STMT in EH table)
           Product: gcc
           Version: 9.0
            Status: UNCONFIRMED
          Keywords: ice-checking, ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: tree-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: asolokha at gmx dot com
  Target Milestone: ---

g++-9.0.0-alpha20190317 snapshot (r269746) ICEs when compiling the following
testcase w/ -mfma -O2 (-O3, -Os) -fnon-call-exceptions:

struct ef {
  ef (double xy) : m6 (xy)
  {
  }

  ~ef ()
  {
  }

  double m6;
};

ef
operator- (ef &db, ef oa)
{
  return db.m6 - oa.m6;
}

ef
vu (ef &db)
{
  return db - ef (db.m6 * 1.1);
}

% x86_64-unknown-linux-gnu-g++-9.0.0-alpha20190317 -mfma -O2
-fnon-call-exceptions -c xct1znkp.cc
xct1znkp.cc: In function 'ef vu(ef&)':
xct1znkp.cc:20:1: error: dead STMT in EH table
   20 | vu (ef &db)
      | ^~
_6 = .FMA (_7, 1.100000000000000088817841970012523233890533447265625e+0, _3);
during GIMPLE pass: widening_mul
xct1znkp.cc:20:1: internal compiler error: verify_gimple failed
0xfe2271 verify_gimple_in_cfg(function*, bool)
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190317/work/gcc-9-20190317/gcc/tree-cfg.c:5386
0xeb7dff execute_function_todo
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190317/work/gcc-9-20190317/gcc/passes.c:1977
0xeb8d3e execute_todo
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190317/work/gcc-9-20190317/gcc/passes.c:2031

Reply via email to