https://gcc.gnu.org/bugzilla/show_bug.cgi?id=124760
--- Comment #5 from Jeffrey A. Law <law at gcc dot gnu.org> --- For that code sh1add would be wrong on rv64. Think about bits 32..63. Those must be a copy of bit 31 for ABI semantics -- which won't be the case if we used shNadd. Try it with a "long" rather than an "int" :-)
