https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61142
--- Comment #2 from Oleg Endo <olegendo at gcc dot gnu.org> --- I've tried the above test case with LRA on (sh-lra branch, not fully working yet) and it produces the following code: mov r5,r0 mov.b @(r0,r4),r0 cmp/eq #92,r0 bt .L3 mov r7,r0 rts nop .align 1 .L3: rts mov r6,r0 i.e. the problem is gone.