https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107836
--- Comment #3 from Zixuan Chen <czx211355007 at gmail dot com> --- I think there is a data dependency between the second asm statement and the third, a read-after-write one. If the third one is moved to the top then we can't get the correct value of mm5(mm0). Also, could you explain why the result using -O1 to compile is correct as expected where the asm statements remain in the same order as they should be? [email protected] <[email protected]> 于2022年11月23日周三 23:48写道: > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107836 > > Andreas Schwab <[email protected]> changed: > > What |Removed |Added > > ---------------------------------------------------------------------------- > Resolution|--- |INVALID > Status|UNCONFIRMED |RESOLVED > > --- Comment #2 from Andreas Schwab <[email protected]> --- > There is no dependency whatsoever between the asm statements, thus they > can be > moved around freely. Especially the third one is producing a constant > output as > seen by the compiler, thus moving it to the top of the function is > perfectly > valid. > > -- > You are receiving this mail because: > You reported the bug.
