diff options
author | Jakub Jelinek <jakub@redhat.com> | 2012-01-05 16:10:26 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2012-01-05 16:10:26 +0100 |
commit | 32be32afefa07a6a060568da4200421f03d4fb39 (patch) | |
tree | ee21d182e30d8ac396d80fa9bce2b45bf034ef8e /gcc/gimple.h | |
parent | 5720c0dc9cb064618394177a290c3669d9728b06 (diff) | |
download | gcc-32be32afefa07a6a060568da4200421f03d4fb39.zip gcc-32be32afefa07a6a060568da4200421f03d4fb39.tar.gz gcc-32be32afefa07a6a060568da4200421f03d4fb39.tar.bz2 |
re PR middle-end/51761 (ICE in verify_gimple_stmt, at tree-cfg.c:4241)
PR middle-end/51761
* gimple.h (struct gimplify_ctx): Add in_cleanup_point_expr
field.
* gimplify.c (gimplify_cleanup_point_expr): Save and set
in_cleanup_point_expr before gimplify_stmt call and restore it
afterwards.
(gimplify_target_expr): Don't add {CLOBBER} cleanup if
in_cleanup_point_expr is false.
* gcc.c-torture/compile/pr51761.c: New test.
From-SVN: r182914
Diffstat (limited to 'gcc/gimple.h')
-rw-r--r-- | gcc/gimple.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/gimple.h b/gcc/gimple.h index 9ac8f26..484d1a0 100644 --- a/gcc/gimple.h +++ b/gcc/gimple.h @@ -1,6 +1,6 @@ /* Gimple IR definitions. - Copyright 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc. + Copyright 2007, 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc. Contributed by Aldy Hernandez <aldyh@redhat.com> This file is part of GCC. @@ -1092,6 +1092,7 @@ struct gimplify_ctx bool save_stack; bool into_ssa; bool allow_rhs_cond_expr; + bool in_cleanup_point_expr; }; extern enum gimplify_status gimplify_expr (tree *, gimple_seq *, gimple_seq *, |