diff options
author | Richard Guenther <rguenther@suse.de> | 2010-07-07 12:06:57 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2010-07-07 12:06:57 +0000 |
commit | 523968bfbb7ea90fd33b50cef7df0bf8732385b0 (patch) | |
tree | c58a9f0704189719510e62faa499e804da793b0b /gcc/tree-cfg.c | |
parent | b0d9e66374cae4f996a4a2f8f2a58b9f70819ad1 (diff) | |
download | gcc-523968bfbb7ea90fd33b50cef7df0bf8732385b0.zip gcc-523968bfbb7ea90fd33b50cef7df0bf8732385b0.tar.gz gcc-523968bfbb7ea90fd33b50cef7df0bf8732385b0.tar.bz2 |
tree-ssa-propagate.h (valid_gimple_call_p): Remove.
2010-07-07 Richard Guenther <rguenther@suse.de>
* tree-ssa-propagate.h (valid_gimple_call_p): Remove.
* tree-ssa-propagate.c (valid_gimple_call_p): Make static. Fix.
* gimple.h (is_gimple_operand): Remove.
* gimple.c (is_gimple_operand): Likewise.
(walk_gimple_op): Fix wi->val_only setting for calls.
* tree-cfg.c (verify_gimple_call): Fix argument validation.
* tree-profile.c (tree_gen_ic_func_profiler): Do not create
invalid gimple calls.
From-SVN: r161905
Diffstat (limited to 'gcc/tree-cfg.c')
-rw-r--r-- | gcc/tree-cfg.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c index 87603e7..e55a60b 100644 --- a/gcc/tree-cfg.c +++ b/gcc/tree-cfg.c @@ -3114,7 +3114,10 @@ verify_gimple_call (gimple stmt) for (i = 0; i < gimple_call_num_args (stmt); ++i) { tree arg = gimple_call_arg (stmt, i); - if (!is_gimple_operand (arg)) + if ((is_gimple_reg_type (TREE_TYPE (arg)) + && !is_gimple_val (arg)) + || (!is_gimple_reg_type (TREE_TYPE (arg)) + && !is_gimple_lvalue (arg))) { error ("invalid argument to gimple call"); debug_generic_expr (arg); |