From 3d053ea5c19cfe989d10c3d847d0bbe1c73a7386 Mon Sep 17 00:00:00 2001 From: jakub Date: Sat, 10 Nov 2007 07:46:31 +0000 Subject: PR middle-end/34018 * tree-inline.h (copy_body_data): Add regimplify field. * tree-inline.c (copy_body_r): Set id->regimplify to true if an TREE_INVARIANT ADDR_EXPR is no longer invariant after substitutions. (copy_bb): Clear id->regimplify before walk_tree, if it is set afterwards, regimplify the whole statement. * g++.dg/opt/inline14.C: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@130068 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/tree-inline.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'gcc/tree-inline.h') diff --git a/gcc/tree-inline.h b/gcc/tree-inline.h index 895a0afcbbd..33eb908b7cd 100644 --- a/gcc/tree-inline.h +++ b/gcc/tree-inline.h @@ -92,6 +92,9 @@ typedef struct copy_body_data duplicating BLOCK nodes. */ bool transform_lang_insert_block; + /* True if this statement will need to be regimplified. */ + bool regimplify; + /* Statements that might be possibly folded. */ struct pointer_set_t *statements_to_fold; } copy_body_data; -- cgit v1.2.1