simplify-rtx.c (simplify_immed_subreg): Fix construction of floating-point constants.
authorRichard Sandiford <rsandifo@redhat.com>
Thu, 8 Jan 2004 08:21:15 +0000 (08:21 +0000)
committerRichard Sandiford <rsandifo@gcc.gnu.org>
Thu, 8 Jan 2004 08:21:15 +0000 (08:21 +0000)
* simplify-rtx.c (simplify_immed_subreg): Fix construction of
floating-point constants.

From-SVN: r75540

gcc/ChangeLog
gcc/simplify-rtx.c

index b729f9b50edd68542b2debf71f374e521ae4fa44..aa0010d379d3b2d631c3ba05b2b1047213c0c0f1 100644 (file)
@@ -1,3 +1,8 @@
+2004-01-08  Richard Sandiford  <rsandifo@redhat.com>
+
+       * simplify-rtx.c (simplify_immed_subreg): Fix construction of
+       floating-point constants.
+
 2004-01-08  J. Brobecker  <brobecker@gnat.com>
 
        * dwarf2out.c (subrange_type_die): Add context_die parameter.
index d5beb2eb5fc4f217b083f46256f5b2510486769f..ddf732bdbd8437538b14c8152704c6653a500a8f 100644 (file)
@@ -3201,7 +3201,7 @@ simplify_immed_subreg (enum machine_mode outermode, rtx op,
                  ibase = elem_bitsize - 1 - i;
                else
                  ibase = i;
-               tmp[ibase / 32] = (*vp++ & value_mask) << i % 32;
+               tmp[ibase / 32] |= (*vp++ & value_mask) << i % 32;
              }
 
            real_from_target (&r, tmp, outer_submode);