From 203436d9aa8c88b05d173c0584a3f51c83a6f7b6 Mon Sep 17 00:00:00 2001 From: Jeff Law Date: Mon, 28 Nov 1994 22:44:47 -0700 Subject: [PATCH] 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 --- gcc/integrate.c | 5 +++++ 1 file changed, 5 insertions(+) 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"; -- 2.30.2