]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
rs6000: Write output to the builtin definition include file
authorBill Schmidt <wschmidt@linux.ibm.com>
Wed, 21 Jul 2021 12:47:49 +0000 (08:47 -0400)
committerBill Schmidt <wschmidt@linux.ibm.com>
Wed, 21 Jul 2021 17:50:01 +0000 (13:50 -0400)
2021-06-07  Bill Schmidt  <wschmidt@linux.ibm.com>

gcc/
* config/rs6000/rs6000-gen-builtins.c (write_defines_file):
Implement.

gcc/config/rs6000/rs6000-gen-builtins.c

index 2ddebcbf9ee448135e3be72bbd3c2e8ae30ebde0..0f6fd0cb2cba5a3e60a8a1d6fb2026f7f1b72ace 100644 (file)
@@ -2019,6 +2019,23 @@ write_init_file (void)
 static int
 write_defines_file (void)
 {
+  fprintf (defines_file, "#ifndef _RS6000_VECDEFINES_H\n");
+  fprintf (defines_file, "#define _RS6000_VECDEFINES_H 1\n\n");
+  fprintf (defines_file, "#if defined(_ARCH_PPC64) && defined (_ARCH_PWR9)\n");
+  fprintf (defines_file, "  #define _ARCH_PPC64_PWR9 1\n");
+  fprintf (defines_file, "#endif\n\n");
+  for (int i = 0; i < num_ovld_stanzas; i++)
+    if (strcmp (ovld_stanzas[i].extern_name, "SKIP"))
+      {
+       if (ovld_stanzas[i].ifdef)
+         fprintf (defines_file, "#ifdef %s\n", ovld_stanzas[i].ifdef);
+       fprintf (defines_file, "#define %s %s\n",
+                ovld_stanzas[i].extern_name,
+                ovld_stanzas[i].intern_name);
+       if (ovld_stanzas[i].ifdef)
+         fprintf (defines_file, "#endif\n");
+      }
+  fprintf (defines_file, "\n#endif\n");
   return 1;
 }