From: Jeff Law Date: Tue, 29 Nov 1994 05:44:47 +0000 (-0700) Subject: integrate.c (function_cannot_inline_p): Do not inline functions which return a BLKmod... X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=203436d9aa8c88b05d173c0584a3f51c83a6f7b6;p=gcc.git integrate.c (function_cannot_inline_p): Do not inline functions which return a BLKmode value in registers. * integrate.c (function_cannot_inline_p): Do not inline functions which return a BLKmode value in registers. From-SVN: r8576 --- diff --git a/gcc/integrate.c b/gcc/integrate.c index 2355508f6e5..6af0cf6293f 100644 --- a/gcc/integrate.c +++ b/gcc/integrate.c @@ -130,6 +130,11 @@ function_cannot_inline_p (fndecl) if (current_function_returns_pcc_struct) return "inline functions not supported for this return value type"; + /* We can't inline functions that return BLKmode structures in registers. */ + if (TYPE_MODE (TREE_TYPE (TREE_TYPE (fndecl))) == BLKmode + && ! aggregate_value_p (TREE_TYPE (TREE_TYPE (fndecl)))) + return "inline functions not supported for this return value type"; + /* We can't inline functions that return structures of varying size. */ if (int_size_in_bytes (TREE_TYPE (TREE_TYPE (fndecl))) < 0) return "function with varying-size return value cannot be inline";