]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
Only assume 4-byte stack alignment on Solaris/x86 (PR target/62281)
authorRainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Mon, 14 Mar 2016 10:03:12 +0000 (10:03 +0000)
committerRainer Orth <ro@gcc.gnu.org>
Mon, 14 Mar 2016 10:03:12 +0000 (10:03 +0000)
Backport from mainline:
2016-03-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

PR target/62281
* config/i386/sol2.h (STACK_REALIGN_DEFAULT): Define.

Revert:
2014-02-11  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

PR libgomp/60107
* config/i386/sol2-9.h: New file.
* config.gcc (i[34567]86-*-solaris2* | x86_64-*-solaris2.1[0-9]*,
*-*-solaris2.9*): Use it.

From-SVN: r234180

gcc/ChangeLog
gcc/config.gcc
gcc/config/i386/sol2-9.h [deleted file]
gcc/config/i386/sol2.h

index 04aed87129619d008f6c0592fd8408ab10e71b70..c626a6f9d526c759491a05515827a2bce3b27a43 100644 (file)
@@ -1,3 +1,19 @@
+2016-03-14  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       Backport from mainline:
+       2016-03-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       PR target/62281
+       * config/i386/sol2.h (STACK_REALIGN_DEFAULT): Define.
+
+       Revert:
+       2014-02-11  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       PR libgomp/60107
+       * config/i386/sol2-9.h: New file.
+       * config.gcc (i[34567]86-*-solaris2* | x86_64-*-solaris2.1[0-9]*,
+       *-*-solaris2.9*): Use it.
+
 2016-03-10  Alan Modra  <amodra@gmail.com>
 
        PR rtl-optimization/69195
index 7ade8e5d5f69d9572cef558949339a4d518bd9b9..f02ddbd51b4f9acbe8a731cf64cb839c0a2a4946 100644 (file)
@@ -1542,9 +1542,6 @@ i[34567]86-*-solaris2* | x86_64-*-solaris2.1[0-9]*)
        esac
        with_tune_32=${with_tune_32:-generic}
        case ${target} in
-       *-*-solaris2.9*)
-               tm_file="${tm_file} i386/sol2-9.h"
-               ;;
        *-*-solaris2.1[0-9]*)
                tm_file="${tm_file} i386/x86-64.h i386/sol2-bi.h sol2-bi.h"
                tm_defines="${tm_defines} TARGET_BI_ARCH=1"
diff --git a/gcc/config/i386/sol2-9.h b/gcc/config/i386/sol2-9.h
deleted file mode 100644 (file)
index 9ae88aa..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-/* Target definitions for GCC for Intel 80386 running Solaris 9
-   Copyright (C) 2014 Free Software Foundation, Inc.
-
-This file is part of GCC.
-
-GCC is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 3, or (at your option)
-any later version.
-
-GCC is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GCC; see the file COPYING3.  If not see
-<http://www.gnu.org/licenses/>.  */
-
-/* Solaris 9 only guarantees 4-byte stack alignment as required by the i386
-   psABI, so realign it as necessary for SSE instructions.  */
-#undef STACK_REALIGN_DEFAULT
-#define STACK_REALIGN_DEFAULT 1
index 8a21a59109db5f15660b7037a539c63eb82c2b42..2ce7a401848ee27dc9233cd178cf3a8db80d4301 100644 (file)
@@ -25,6 +25,11 @@ along with GCC; see the file COPYING3.  If not see
 #define TARGET_SUBTARGET_DEFAULT \
        (MASK_80387 | MASK_IEEE_FP | MASK_FLOAT_RETURNS | MASK_VECT8_RETURNS)
 
+/* 32-bit Solaris/x86 only guarantees 4-byte stack alignment as required by
+   the i386 psABI, so realign it as necessary for SSE instructions.  */
+#undef STACK_REALIGN_DEFAULT
+#define STACK_REALIGN_DEFAULT (TARGET_64BIT ? 0 : 1)
+
 /* Old versions of the Solaris assembler can not handle the difference of
    labels in different sections, so force DW_EH_PE_datarel.  */
 #undef ASM_PREFERRED_EH_DATA_FORMAT