https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106447
Roger Sayle <roger at nextmovesoftware dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |roger at nextmovesoftware dot com --- Comment #1 from Roger Sayle <roger at nextmovesoftware dot com> --- It looks like the problem is caused by the way QImode isn't a first class citizen on nvptx, so QImode values are typically promoted internally to SImode. The problem will be in cfgexpand.cc's expand_value_return, which is the next function up in the call stack, which has called emit_move_insn with mismatched RTX modes. It would be good to know what mode and old_mode are in this function, and therefore why the call to convert_modes isn't doing what its supposed to.