[gcc(refs/users/wschmidt/heads/builtins10)] rs6000: Update rs6000_builtin_decl

William Schmidt wschmidt@gcc.gnu.org
Tue Jun 15 17:20:18 GMT 2021


https://gcc.gnu.org/g:512b0169509b9e8465390b93aedd0654f2da25aa

commit 512b0169509b9e8465390b93aedd0654f2da25aa
Author: Bill Schmidt <wschmidt@linux.ibm.com>
Date:   Fri Mar 5 16:05:50 2021 -0600

    rs6000: Update rs6000_builtin_decl
    
    2021-03-05  Bill Schmidt  <wschmidt@linux.ibm.com>
    
    gcc/
            * config/rs6000/rs6000-call.c (rs6000_new_builtin_decl): New
            function.
            (rs6000_builtin_decl): Call it.

Diff:
---
 gcc/config/rs6000/rs6000-call.c | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/gcc/config/rs6000/rs6000-call.c b/gcc/config/rs6000/rs6000-call.c
index 7ae099bbe9c..6c73920b165 100644
--- a/gcc/config/rs6000/rs6000-call.c
+++ b/gcc/config/rs6000/rs6000-call.c
@@ -16235,11 +16235,31 @@ rs6000_init_builtins (void)
     }
 }
 
+static tree
+rs6000_new_builtin_decl (unsigned code, bool initialize_p ATTRIBUTE_UNUSED)
+{
+  rs6000_gen_builtins fcode = (rs6000_gen_builtins) code;
+
+  if (fcode >= RS6000_OVLD_MAX)
+    return error_mark_node;
+
+  if (!rs6000_new_builtin_is_supported_p (fcode))
+    {
+      rs6000_invalid_new_builtin (fcode);
+      return error_mark_node;
+    }
+
+  return rs6000_builtin_decls_x[code];
+}
+
 /* Returns the rs6000 builtin decl for CODE.  */
 
 tree
 rs6000_builtin_decl (unsigned code, bool initialize_p ATTRIBUTE_UNUSED)
 {
+  if (new_builtins_are_live)
+    return rs6000_new_builtin_decl (code, initialize_p);
+
   HOST_WIDE_INT fnmask;
 
   if (code >= RS6000_BUILTIN_COUNT)


More information about the Gcc-cvs mailing list