diff gcc/tree-nrv.c @ 145:1830386684a0

gcc-9.2.0
author anatofuz
date Thu, 13 Feb 2020 11:34:05 +0900
parents 84e7813d76e9
children
line wrap: on
line diff
--- a/gcc/tree-nrv.c	Thu Oct 25 07:37:49 2018 +0900
+++ b/gcc/tree-nrv.c	Thu Feb 13 11:34:05 2020 +0900
@@ -1,5 +1,5 @@
 /* Language independent return value optimizations
-   Copyright (C) 2004-2018 Free Software Foundation, Inc.
+   Copyright (C) 2004-2020 Free Software Foundation, Inc.
 
 This file is part of GCC.
 
@@ -193,7 +193,7 @@
 	      if (found != NULL)
 		{
 		  /* If we found a return statement using a different variable
-		     than previous return statements, then we can not perform
+		     than previous return statements, then we cannot perform
 		     NRV optimizations.  */
 		  if (found != rhs)
 		    return 0;
@@ -378,12 +378,10 @@
 	  if (stmt
 	      && gimple_call_lhs (stmt)
 	      && !gimple_call_return_slot_opt_p (stmt)
-	      /* Ignore internal functions without direct optabs,
-		 those are expanded specially and aggregate_value_p
-		 on their result might result in undesirable warnings
-		 with some backends.  */
-	      && (!gimple_call_internal_p (stmt)
-		  || direct_internal_fn_p (gimple_call_internal_fn (stmt)))
+	      /* Ignore internal functions, those are expanded specially
+		 and aggregate_value_p on their result might result in
+		 undesirable warnings with some backends.  */
+	      && !gimple_call_internal_p (stmt)
 	      && aggregate_value_p (TREE_TYPE (gimple_call_lhs (stmt)),
 				    gimple_call_fndecl (stmt)))
 	    {