[simplify-rtx] Zero-initialise local array in simplify_immed_subreg
authorKyrylo Tkachov <kyrylo.tkachov@arm.com>
Fri, 7 Oct 2016 14:47:55 +0000 (14:47 +0000)
committerKyrylo Tkachov <ktkachov@gcc.gnu.org>
Fri, 7 Oct 2016 14:47:55 +0000 (14:47 +0000)
* simplify-rtx.c (simplify_immed_subreg): Zero-initialize tmp array
before merging in bytes to pass down to real_from_target.

From-SVN: r240866

gcc/ChangeLog
gcc/simplify-rtx.c

index ad50ab9dcf74a7bc852ff431c7752fa6f0be77ad..fe68253b37a92c3b446e8a932668d7fe8cc10fb4 100644 (file)
@@ -1,3 +1,8 @@
+2016-10-07  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
+
+       * simplify-rtx.c (simplify_immed_subreg): Zero-initialize tmp array
+       before merging in bytes to pass down to real_from_target.
+
 2016-10-07  Richard Biener  <rguenther@suse.de>
 
        * tree-ssa-propagate.c (replace_phi_args_in): Remove no longer
index 67902792cdf96d341173aa2404ce8e4f0fafd8b3..3cce25a0bf46a73ee5ca2f3606c5974960ef684e 100644 (file)
@@ -5893,14 +5893,12 @@ simplify_immed_subreg (machine_mode outermode, rtx op,
        case MODE_DECIMAL_FLOAT:
          {
            REAL_VALUE_TYPE r;
-           long tmp[MAX_BITSIZE_MODE_ANY_MODE / 32];
+           long tmp[MAX_BITSIZE_MODE_ANY_MODE / 32] = { 0 };
 
            /* real_from_target wants its input in words affected by
               FLOAT_WORDS_BIG_ENDIAN.  However, we ignore this,
               and use WORDS_BIG_ENDIAN instead; see the documentation
               of SUBREG in rtl.texi.  */
-           for (i = 0; i < max_bitsize / 32; i++)
-             tmp[i] = 0;
            for (i = 0; i < elem_bitsize; i += value_bit)
              {
                int ibase;