(convert_move): When extending to multi-word register
authorRichard Stallman <rms@gnu.org>
Sun, 31 Oct 1993 03:04:16 +0000 (03:04 +0000)
committerRichard Stallman <rms@gnu.org>
Sun, 31 Oct 1993 03:04:16 +0000 (03:04 +0000)
via its low word, clobber the whole thing.

From-SVN: r5953

gcc/expr.c

index 0b1eb55f71c4d4c028b13d5946330a869c700930..7bf47682cd58b09860fafe75e1e85ad8cfff24a5 100644 (file)
@@ -874,6 +874,8 @@ convert_move (to, from, unsignedp)
               && ((code = can_extend_p (to_mode, word_mode, unsignedp))
                   != CODE_FOR_nothing))
        {
+         if (GET_CODE (to) == REG)
+           emit_insn (gen_rtx (CLOBBER, VOIDmode, to));
          convert_move (gen_lowpart (word_mode, to), from, unsignedp);
          emit_unop_insn (code, to,
                          gen_lowpart (word_mode, to), equiv_code);