------- Comment #12 from matz at gcc dot gnu dot org 2007-05-21 09:03 ------- Exactly. If during expansion or at some other time before reload, doesn't matter that much. Of course there's a remote possibility that some RTL passes between expand and reload would do the copy propagation to counter that transformation. As inout_2 would have two writes this would require some data flow analysis in the RTL phase to determine that this copy-prop is valid. There's hope that this isn't done, so that nobody would destroy that work-around again :)
-- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32004