From mboxrd@z Thu Jan 1 00:00:00 1970 From: mrs@wrs.com (Mike Stump) To: egcs@cygnus.com, rth@cygnus.com Subject: Re: missing eh regions? Date: Mon, 06 Oct 1997 13:00:00 -0000 Message-id: <199710061959.MAA28119@kankakee.wrs.com> X-SW-Source: 1997-10/msg00238.html Just a guess, but... There is an optimization pass that removed unneeded EH regions. Since you didn't compile with -fasync-exceptions (sp?), they were eliminated as there were no calls... If people really want it, we could smarten the compiler about math exception stuff as it relates to EH. It already has most of the smarts (in two different places) but they don't know about eachother. Also, we need to add support for EH sync points (to make the chip flush pending insns that might trap) to make this really work as one might expect. That requires a new md insn type, and support for it in the alpha.md file. > Date: Mon, 6 Oct 1997 00:00:49 -0700 > From: Richard Henderson > To: egcs@cygnus.com > I was looking to teach the alpha trap shadow processing about > exception regions, so that FP exceptions could be properly > caught, etc. > But it appears that, in the appended program, the exception > region notes were eliminated. What gives? > r~ > double foo(double x, double y) > { > double result = 0.0; > if (x < y) { > try { > result = x / y; > } > catch (...) { > } > } > else { > try { > result = x * y; > } > catch(...) { > } > } > return result; > }