https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70676
--- Comment #7 from Georg-Johann Lay <gjl at gcc dot gnu.org> --- Sorry, but guessing around has proben to be extremely unefficient and error prone, in particular if the information is available on the other end of the wire. If -mrelax leads to wrong code, then you shoulr report this to the Binutils project, because avr-gcc just passes through -mrelax to Binutils.