re PR target/68273 (Wrong code on mips/mipsel due to (invalid?) peeking at alignments...
authorRichard Biener <rguenther@suse.de>
Tue, 9 Aug 2016 07:38:13 +0000 (07:38 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Tue, 9 Aug 2016 07:38:13 +0000 (07:38 +0000)
2016-08-09  Richard Biener  <rguenther@suse.de>

PR ipa/68273
* ipa-prop.c (ipa_modify_formal_parameters): Build
parameter types with natural alignment also for the
over-aligned case.

From-SVN: r239273

gcc/ChangeLog
gcc/ipa-prop.c

index 5dbbb05823e8b1e78cda49231c533df847871270..eb0dc1d014e8ce6e85541ebeb88941bcefe621ee 100644 (file)
@@ -1,3 +1,10 @@
+2016-08-09  Richard Biener  <rguenther@suse.de>
+
+       PR ipa/68273
+       * ipa-prop.c (ipa_modify_formal_parameters): Build
+       parameter types with natural alignment also for the
+       over-aligned case.
+
 2016-08-08  Andi Kleen  <ak@linux.intel.com>
 
        * tree-vrp.c (get_single_symbol): Always initialize inv and neg.
index 132b622639c0fa01d649ebce76f715167d9309c9..4385614e330b585e0d8f31069942a7b8b71add22 100644 (file)
@@ -3910,7 +3910,7 @@ ipa_modify_formal_parameters (tree fndecl, ipa_parm_adjustment_vec adjustments)
              if (is_gimple_reg_type (ptype))
                {
                  unsigned malign = GET_MODE_ALIGNMENT (TYPE_MODE (ptype));
-                 if (TYPE_ALIGN (ptype) < malign)
+                 if (TYPE_ALIGN (ptype) != malign)
                    ptype = build_aligned_type (ptype, malign);
                }
            }