------- Comment #12 from pinskia at gcc dot gnu dot org 2010-01-03 07:07 ------- (In reply to comment #11) > My naive assumption was that the read-modify-write pattern is handled late by > the RTL backend when generating instructions while SRA is somewhere early in > the tree oriented middle end.
Well the other issue is that only post-reload-cse deletes the load/stores without SRA doing what needs to be done. And since the deletion happens so late, combine does not combine the three instruction which does the read-modify-write. :). -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42586