]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
rs6000: Add sanity to V2DI_type_node definitions
authorBill Schmidt <wschmidt@linux.ibm.com>
Mon, 30 Aug 2021 19:55:11 +0000 (14:55 -0500)
committerBill Schmidt <wschmidt@linux.ibm.com>
Mon, 30 Aug 2021 19:58:27 +0000 (14:58 -0500)
2021-08-30  Bill Schmidt  <wschmidt@linux.ibm.com>

gcc/
* config/rs6000/rs6000-call.c (rs6000_init_builtins): Change
initialization of V2DI_type_node and unsigned_V2DI_type_node.

gcc/config/rs6000/rs6000-call.c

index 87f97098ea4900fa9c9f854e18be3195d32399e9..df405e1b8c724c0c4725e3279ab3a41f6f9bed9f 100644 (file)
@@ -13297,15 +13297,23 @@ rs6000_init_builtins (void)
   tree ftype;
   tree t;
   machine_mode mode;
+  const char *str;
 
   if (TARGET_DEBUG_BUILTIN)
     fprintf (stderr, "rs6000_init_builtins%s%s\n",
             (TARGET_ALTIVEC)      ? ", altivec" : "",
             (TARGET_VSX)          ? ", vsx"     : "");
 
-  V2DI_type_node = rs6000_vector_type (TARGET_POWERPC64 ? "__vector long"
-                                      : "__vector long long",
-                                      long_long_integer_type_node, 2);
+  if (new_builtins_are_live)
+    V2DI_type_node = rs6000_vector_type ("__vector long long",
+                                        long_long_integer_type_node, 2);
+  else
+    {
+      str = TARGET_POWERPC64 ? "__vector long" : "__vector long long";
+      V2DI_type_node = rs6000_vector_type (str,
+                                          long_long_integer_type_node,
+                                          2);
+    }
   ptr_V2DI_type_node
     = build_pointer_type (build_qualified_type (V2DI_type_node,
                                                TYPE_QUAL_CONST));
@@ -13356,10 +13364,19 @@ rs6000_init_builtins (void)
     = build_pointer_type (build_qualified_type (unsigned_V4SI_type_node,
                                                TYPE_QUAL_CONST));
 
-  unsigned_V2DI_type_node = rs6000_vector_type (TARGET_POWERPC64
-                                      ? "__vector unsigned long"
-                                      : "__vector unsigned long long",
-                                      long_long_unsigned_type_node, 2);
+  if (new_builtins_are_live)
+    unsigned_V2DI_type_node
+      = rs6000_vector_type ("__vector unsigned long long",
+                           long_long_unsigned_type_node, 2);
+  else
+    {
+      str = TARGET_POWERPC64
+       ? "__vector unsigned long"
+       : "__vector unsigned long long";
+      unsigned_V2DI_type_node
+       = rs6000_vector_type (str, long_long_unsigned_type_node, 2);
+    }
+
   ptr_unsigned_V2DI_type_node
     = build_pointer_type (build_qualified_type (unsigned_V2DI_type_node,
                                                TYPE_QUAL_CONST));