------- Comment #29 from ebotcazou at gcc dot gnu dot org 2009-04-16 07:57
-------
Richard,
the removal of
/* If the RHS of the MODIFY_EXPR may throw or make a nonlocal goto
and the LHS is a user variable, then we need to introduce a formal
temporary. This way the optimizers can determine that the user
variable is only modified if evaluation of the RHS does not throw. */
from is_gimple_reg_or_call_rhs breaks __builtin_setjmp / __builtin_longjmp (and
probably nonlocal gotos).
--
ebotcazou at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |rguenth at gcc dot gnu dot
| |org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39625