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

--- Comment #2 from Iain Buclaw <ibuclaw at gdcproject dot org> ---
(In reply to Richard Biener from comment #1)
> Well, there's no dependence visible to the compiler between the control word
> stores and loads so it's obvious the asms cannot be pure.  Is 'asm' a D
> feature or a GCC extension?  How does D model dependences between asms?

It should be considered a feature, though the spec is ignored for the sake of
both convenience and portability.

As far as the semantic analyzer treats them, they are just black holes assumed
to do anything.

The reference compiler (DMD) even goes as far as refusing to inline functions
with that contain any asm statements.  That could be another solution, but
allow overriding with pragma(inline).

Reply via email to