diff options
author | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2009-04-27 11:18:38 +0000 |
---|---|---|
committer | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2009-04-27 11:18:38 +0000 |
commit | ae2a9b00047ceffe62164b4e4f7d53f5a643afef (patch) | |
tree | 311268027d8b08e109c2a84ccb88ed8b40680011 /gcc/tree-cfg.c | |
parent | 3cac7f65c33debaa85e1da6358affae4c0989dff (diff) | |
download | gcc-ae2a9b00047ceffe62164b4e4f7d53f5a643afef.tar.gz |
2009-04-27 Richard Guenther <rguenther@suse.de>
* tree-cfg.c (remove_useless_stmts): Verify stmts afterwards.
(verify_stmts): Dispatch to gimple/type verification code.
* tree-inline.c (remap_gimple_op_r): Work around C++ FE
issue with call argument types.
java/
PR java/38374
* constants.c (build_constants_constructor): Retain the old
pointer type as valid TYPE_POINTER_TO after patching the
type of the constant pool decl.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146831 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-cfg.c')
-rw-r--r-- | gcc/tree-cfg.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c index 329932dd314..78f82a279bc 100644 --- a/gcc/tree-cfg.c +++ b/gcc/tree-cfg.c @@ -2084,6 +2084,11 @@ remove_useless_stmts (void) remove_useless_stmts_1 (&gsi, &data); } while (data.repeat); + +#ifdef ENABLE_TYPES_CHECKING + verify_types_in_gimple_seq (gimple_body (current_function_decl)); +#endif + return 0; } @@ -4313,6 +4318,14 @@ verify_stmts (void) err |= true; } } + +#ifdef ENABLE_TYPES_CHECKING + if (verify_gimple_phi (phi)) + { + debug_gimple_stmt (phi); + err |= true; + } +#endif } for (gsi = gsi_start_bb (bb); !gsi_end_p (gsi); ) @@ -4349,6 +4362,14 @@ verify_stmts (void) } err |= verify_stmt (&gsi); + +#ifdef ENABLE_TYPES_CHECKING + if (verify_types_in_gimple_stmt (gsi_stmt (gsi))) + { + debug_gimple_stmt (stmt); + err |= true; + } +#endif addr = walk_gimple_op (gsi_stmt (gsi), verify_node_sharing, &wi); if (addr) { |