http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56513
--- Comment #5 from Mikael Pettersson <mikpe at it dot uu.se> 2013-03-03 23:26:49 UTC --- The wrong-code stopped for 4.8 with r188526, the introduction and enabling of -ftree-coalesce-vars. At that point the wrong-code reappears with -O3 -fno-tree-coalesce-vars, however with current trunk those options give correct code. I'll investigate some more tomorrow.