http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48542
--- Comment #5 from Hans-Peter Nilsson <hp at gcc dot gnu.org> 2011-06-14 07:02:02 UTC --- (In reply to comment #4) > on trunk: the > initial-value machinery should have handled the register with the > return-address being clobbered. It does partially; note the store of that > register at the function prologue (with an unpatched gcc). Yep, it's (brr) reload. I'll attach a patch momentarily. I'll have to finish my analysis and do a mmix regtest and a hosted regtest before posting.