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

--- Comment #2 from Vineet Gupta <vineetg at gcc dot gnu.org> ---
(In reply to Andrew Pinski from comment #1)
> How is this different from PR 120263?

PR120263 posited, incorrectly that inline asm need to save/restore around them.
That was just a misunderstadning because currently thats the only way to
globally set FRM (for enabling fesetround () and friends). I closed it as
INVALID.

Save/restore frm around standalone inline asm behavior we have today is
correct.

This is pointing out incorrect behavior when inline asm setting frm is followed
by an intrinsic needing to change the RM. Current behavior is to
ignore/override the set from inline asm when restoring the static mode set by
intrinsic which is wrong. the inline asm set should be treated as last global
set and should be the one restored upon function return, not the prior global
mode on function entry.

Reply via email to