aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2014-05-08 10:57:53 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2014-05-08 10:57:53 +0000
commita96c6a62ae8113fb63edf971b67a161f0cbad11b (patch)
tree83995237be067fcdd45370beca18c67f50b5b8ab /gcc
parentfb42e303b41221c86c78c38d89c05b13e98beec7 (diff)
downloadgcc-a96c6a62ae8113fb63edf971b67a161f0cbad11b.zip
gcc-a96c6a62ae8113fb63edf971b67a161f0cbad11b.tar.gz
gcc-a96c6a62ae8113fb63edf971b67a161f0cbad11b.tar.bz2
gimplify.c (gimplify_call_expr): Use saved fnptrtype for looking at TYPE_ARG_TYPES.
2014-05-08 Richard Biener <rguenther@suse.de> * gimplify.c (gimplify_call_expr): Use saved fnptrtype for looking at TYPE_ARG_TYPES. From-SVN: r210209
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/gimplify.c4
2 files changed, 7 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 3521329..34ccf5f 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,10 @@
2014-05-08 Richard Biener <rguenther@suse.de>
+ * gimplify.c (gimplify_call_expr): Use saved fnptrtype for
+ looking at TYPE_ARG_TYPES.
+
+2014-05-08 Richard Biener <rguenther@suse.de>
+
* gimple-fold.c (gimple_fold_stmt_to_constant_1): Remove
pointer propagation special-case.
diff --git a/gcc/gimplify.c b/gcc/gimplify.c
index 37c3778..be4d719 100644
--- a/gcc/gimplify.c
+++ b/gcc/gimplify.c
@@ -2329,8 +2329,8 @@ gimplify_call_expr (tree *expr_p, gimple_seq *pre_p, bool want_value)
parms = NULL_TREE;
if (fndecl)
parms = TYPE_ARG_TYPES (TREE_TYPE (fndecl));
- else if (POINTER_TYPE_P (TREE_TYPE (CALL_EXPR_FN (*expr_p))))
- parms = TYPE_ARG_TYPES (TREE_TYPE (TREE_TYPE (CALL_EXPR_FN (*expr_p))));
+ else
+ parms = TYPE_ARG_TYPES (TREE_TYPE (fnptrtype));
if (fndecl && DECL_ARGUMENTS (fndecl))
p = DECL_ARGUMENTS (fndecl);