https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78660
--- Comment #12 from Eric Botcazou <ebotcazou at gcc dot gnu.org> --- > Maybe the load sign-extends instead of zero-extending as specified initially. But I'm not sure that this matters here, since: (insn 58 57 59 3 (set (subreg:SI (reg:DI 316 [ iftmp.3_114 ]) 0) (ne:SI (reg/f:DI 469 [ current_scope.1_1->bindings ]) (const_int 0 [0]))) "/althome/mips/v6/src/gcc/gcc/c/c-decl.me.c":915 501 {*sne_zero_disi} (expr_list:REG_DEAD (reg/f:DI 469 [ current_scope.1_1->bindings ]) (nil))) can put only 0 or 1 in the SUBREG, can't it?