]> git.ipfire.org Git - thirdparty/gcc.git/blobdiff - gcc/config/rs6000/linux64.h
Update copyright years.
[thirdparty/gcc.git] / gcc / config / rs6000 / linux64.h
index 29e9afa7f3d9e198186a68af49f956180ff10bd0..11911c4966a3e2ece1765e7159ed199824815820 100644 (file)
@@ -1,6 +1,6 @@
 /* Definitions of target machine for GNU compiler,
    for 64 bit PowerPC linux.
-   Copyright (C) 2000-2019 Free Software Foundation, Inc.
+   Copyright (C) 2000-2020 Free Software Foundation, Inc.
 
    This file is part of GCC.
 
@@ -112,7 +112,7 @@ extern int dot_symbols;
            {                                                   \
              rs6000_current_abi = ABI_ELFv2;                   \
              if (dot_symbols)                                  \
-               error ("-mcall-aixdesc incompatible with -mabi=elfv2"); \
+               error ("%<-mcall-aixdesc%> incompatible with %<-mabi=elfv2%>"); \
            }                                                   \
          if (rs6000_isa_flags & OPTION_MASK_RELOCATABLE)       \
            {                                                   \
@@ -132,14 +132,14 @@ extern int dot_symbols;
          if ((rs6000_isa_flags & OPTION_MASK_POWERPC64) == 0)  \
            {                                                   \
              rs6000_isa_flags |= OPTION_MASK_POWERPC64;        \
-             error ("-m64 requires a PowerPC64 cpu");          \
+             error ("%<-m64%> requires a PowerPC64 cpu");              \
            }                                                   \
          if ((rs6000_isa_flags_explicit                        \
               & OPTION_MASK_MINIMAL_TOC) != 0)                 \
            {                                                   \
              if (global_options_set.x_rs6000_current_cmodel    \
                  && rs6000_current_cmodel != CMODEL_SMALL)     \
-               error ("-mcmodel incompatible with other toc options"); \
+               error ("%<-mcmodel incompatible with other toc options%>"); \
              SET_CMODEL (CMODEL_SMALL);                        \
            }                                                   \
          else                                                  \
@@ -155,6 +155,13 @@ extern int dot_symbols;
                    TARGET_NO_SUM_IN_TOC = 0;                   \
                }                                               \
            }                                                   \
+         if (TARGET_PLTSEQ && DEFAULT_ABI != ABI_ELFv2)        \
+           {                                                   \
+             if (global_options_set.x_rs6000_pltseq)           \
+               warning (0, "%qs unsupported for this ABI",     \
+                        "-mpltseq");                           \
+             rs6000_pltseq = false;                            \
+           }                                                   \
        }                                                       \
       else                                                     \
        {                                                       \
@@ -174,24 +181,20 @@ extern int dot_symbols;
     }                                                          \
   while (0)
 
-#undef ASM_DEFAULT_SPEC
 #undef ASM_SPEC
 #undef LINK_OS_LINUX_SPEC
 #undef LINK_SECURE_PLT_SPEC
 
 #ifndef        RS6000_BI_ARCH
-#define        ASM_DEFAULT_SPEC "-mppc64"
 #define        ASM_SPEC         "%(asm_spec64) %(asm_spec_common)"
 #define        LINK_OS_LINUX_SPEC "%(link_os_linux_spec64)"
 #define        LINK_SECURE_PLT_SPEC ""
 #else
 #if DEFAULT_ARCH64_P
-#define        ASM_DEFAULT_SPEC "-mppc%{!m32:64}"
 #define        ASM_SPEC         "%{m32:%(asm_spec32)}%{!m32:%(asm_spec64)} %(asm_spec_common)"
 #define        LINK_OS_LINUX_SPEC "%{m32:%(link_os_linux_spec32)}%{!m32:%(link_os_linux_spec64)}"
 #define        LINK_SECURE_PLT_SPEC "%{m32: " LINK_SECURE_PLT_DEFAULT_SPEC "}"
 #else
-#define        ASM_DEFAULT_SPEC "-mppc%{m64:64}"
 #define        ASM_SPEC         "%{!m64:%(asm_spec32)}%{m64:%(asm_spec64)} %(asm_spec_common)"
 #define        LINK_OS_LINUX_SPEC "%{!m64:%(link_os_linux_spec32)}%{m64:%(link_os_linux_spec64)}"
 #define        LINK_SECURE_PLT_SPEC "%{!m64: " LINK_SECURE_PLT_DEFAULT_SPEC "}"
@@ -270,8 +273,8 @@ extern int dot_symbols;
 #ifndef RS6000_BI_ARCH
 
 /* 64-bit PowerPC Linux always has a TOC.  */
-#undef  TARGET_TOC
-#define        TARGET_TOC              1
+#undef  TARGET_HAS_TOC
+#define TARGET_HAS_TOC         1
 
 /* Some things from sysv4.h we don't do when 64 bit.  */
 #undef OPTION_RELOCATABLE
@@ -369,7 +372,8 @@ extern int dot_symbols;
 #define TARGET_OS_CPP_BUILTINS()                       \
   do                                                   \
     {                                                  \
-      if (strcmp (rs6000_abi_name, "linux") == 0)      \
+      if (strcmp (rs6000_abi_name, "linux") == 0       \
+         || strcmp (rs6000_abi_name, "aixdesc") == 0)  \
        GNU_USER_TARGET_OS_CPP_BUILTINS();              \
       if (TARGET_64BIT)                                        \
        {                                               \
@@ -393,19 +397,6 @@ extern int dot_symbols;
     }                                                  \
   while (0)
 
-#define GNU_USER_TARGET_D_OS_VERSIONS()                \
-    do {                                       \
-       builtin_version ("linux");              \
-       if (OPTION_GLIBC)                       \
-         builtin_version ("CRuntime_Glibc");   \
-       else if (OPTION_UCLIBC)                 \
-         builtin_version ("CRuntime_UClibc");  \
-       else if (OPTION_BIONIC)                 \
-         builtin_version ("CRuntime_Bionic");  \
-       else if (OPTION_MUSL)                   \
-         builtin_version ("CRuntime_Musl");    \
-    } while (0)
-
 #undef  CPP_OS_DEFAULT_SPEC
 #define CPP_OS_DEFAULT_SPEC "%(cpp_os_linux) %(include_extra)"