[Bug target/56027] ldmxcsr permuted with asm

glisse at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Fri Jan 18 12:09:00 GMT 2013


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56027

--- Comment #4 from Marc Glisse <glisse at gcc dot gnu.org> 2013-01-18 12:08:52 UTC ---
(In reply to comment #3)
> > I am mostly wondering what guarantees I have there won't be re-ordering. *mxcsr
> > are unspec_volatile and thus can commute with asm (register) but not asm
> > volatile or asm (memory in V1)? And function calls (fesetenv in V2) can't
> > commute with regular asm, volatile isn't required there?
> 
> You always need volatile here, even if in practice it seems that it is
> not required for a function call.  volatile tells it that the asm is
> a scheduling barrier for other volatile instructions.

Thanks, I'll do that.

> So - it works for you then and we can close this bug?

Give me a few hours, I'll close it this afternoon or tomorrow unless I come up
with a reason not to. I probably should have asked on gcc-help instead of
opening a PR.



More information about the Gcc-bugs mailing list