https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105160
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Priority|P3 |P1 Target Milestone|--- |12.0 Last reconfirmed| |2022-04-05 Ever confirmed|0 |1 Status|UNCONFIRMED |NEW --- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> --- Agreed, 'volatile' is documented as @item volatile The typical use of extended @code{asm} statements is to manipulate input values to produce output values. However, your @code{asm} statements may also produce side effects. If so, you may need to use the @code{volatile} qualifier to disable certain optimizations. @xref{Volatile}. so for the side-effects the asms should make the functions non-pure/const.