https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109578
--- Comment #5 from Andrew Pinski <pinskia at gcc dot gnu.org> --- (In reply to Andrew Pinski from comment #3) > Anyways maybe the issue with PR 29968 was a scheduling issue which was fixed > later on that GCC didn't realize divide could trap. I was right on that, it was a dup of bug 41239 which was fixed in GCC 4.5.0. The problem was exactly what I thought it was, a trapping instruction being scheduled before the call. And yes it has been fixed for a long time, 13 years in fact.