]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
backport: i386.c (ix86_local_alignment): Align most aggregates of 16 bytes and more...
authorUros Bizjak <ubizjak@gmail.com>
Tue, 7 Mar 2017 18:43:15 +0000 (19:43 +0100)
committerUros Bizjak <uros@gcc.gnu.org>
Tue, 7 Mar 2017 18:43:15 +0000 (19:43 +0100)
Backport from mainline
2017-03-07  Segher Boessenkool  <segher@kernel.crashing.org>

* config/i386/i386.c (ix86_local_alignment): Align most aggregates
of 16 bytes and more to 16 bytes, not those of 16 bits and more.

From-SVN: r245958

gcc/ChangeLog
gcc/config/i386/i386.c

index 2f421791a07377d6487b49140f7cf9632b1603c6..820965b6f68653ec98f9387b001d51ca792c2d52 100644 (file)
@@ -1,3 +1,11 @@
+2017-03-07  Uros Bizjak  <ubizjak@gmail.com>
+
+       Backport from mainline
+       2017-03-07  Segher Boessenkool  <segher@kernel.crashing.org>
+
+       * config/i386/i386.c (ix86_local_alignment): Align most aggregates
+       of 16 bytes and more to 16 bytes, not those of 16 bits and more.
+
 2017-03-06  John David Anglin  <danglin@gcc.gnu.org>
 
        PR target/77850
index 3adceffb81ea1671c1176cca173bb2c187a94385..cee8a00767c1491f500bbb0c28443ba1a9dd0aae 100644 (file)
@@ -27686,7 +27686,7 @@ ix86_local_alignment (tree exp, machine_mode mode,
                  != TYPE_MAIN_VARIANT (va_list_type_node)))
          && TYPE_SIZE (type)
          && TREE_CODE (TYPE_SIZE (type)) == INTEGER_CST
-         && wi::geu_p (TYPE_SIZE (type), 16)
+         && wi::geu_p (TYPE_SIZE (type), 128)
          && align < 128)
        return 128;
     }