https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88640
Bug ID: 88640 Summary: ICE in mark_reachable_handlers, at tree-eh.c:3926 Product: gcc Version: 9.0 Status: UNCONFIRMED Keywords: ice-on-valid-code, needs-bisection Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: marxin at gcc dot gnu.org CC: segher at gcc dot gnu.org Target Milestone: --- Host: x86_64-pc-linux-gnu Target: ppc64le-linux-gnu Following is causing ICE: $ cat ppc64.ii double a, b; void c() try { a = 1.0 / __builtin_sqrt(b) * a; } catch (...) { } $ ppc64le-linux-gnu-g++ ppc64.ii -fnon-call-exceptions -fno-tree-dce -fsignaling-nans -Ofast -mrecip -c cc1plus: warning: -fassociative-math disabled; other options take precedence during GIMPLE pass: ehcleanup ppc64.ii: In function ‘void c()’: ppc64.ii:2:6: internal compiler error: in mark_reachable_handlers, at tree-eh.c:3926 2 | void c() try { a = 1.0 / __builtin_sqrt(b) * a; } catch (...) { | ^ 0x5a3239 mark_reachable_handlers /home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-ppc64le/build/gcc/tree-eh.c:3926 0xb99732 remove_unreachable_handlers /home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-ppc64le/build/gcc/tree-eh.c:3973 0xb9c5a8 execute_cleanup_eh_1 /home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-ppc64le/build/gcc/tree-eh.c:4644 0xb9c5a8 execute /home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-ppc64le/build/gcc/tree-eh.c:4711