(extract_bit_field): For multi-word bitfield, clobber target before
authorJim Wilson <wilson@gcc.gnu.org>
Wed, 17 Jan 1996 23:56:06 +0000 (15:56 -0800)
committerJim Wilson <wilson@gcc.gnu.org>
Wed, 17 Jan 1996 23:56:06 +0000 (15:56 -0800)
storing to it.

From-SVN: r11059

gcc/expmed.c

index e79a8e2a49b5d3dc2dd58f99a29bea2adcc5135e..dbd7eb2bb4f9da3776214b8c135cfe04c581295c 100644 (file)
@@ -965,6 +965,9 @@ extract_bit_field (str_rtx, bitsize, bitnum, unsignedp,
       if (target == 0 || GET_CODE (target) != REG)
        target = gen_reg_rtx (mode);
 
+      /* Indicate for flow that the entire target reg is being set.  */
+      emit_insn (gen_rtx (CLOBBER, VOIDmode, target));
+
       for (i = 0; i < nwords; i++)
        {
          /* If I is 0, use the low-order word in both field and target;