This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[trunk][patch committed] New default_def_flag in tree_base
- From: "Oleg Ryjkov" <olegr at google dot com>
- To: gcc-patches at gcc dot gnu dot org
- Cc: "Diego Novillo" <dnovillo at google dot com>
- Date: Thu, 10 Apr 2008 22:29:50 -0700
- Subject: [trunk][patch committed] New default_def_flag in tree_base
Hello.
This patch introduces a new default_def_flag, to tree_base. This
is needed because I've run into a flag collision, when volatile_flag
is used for indicating a default definition. Thus some variables end
up being marked as volatile, when in fact they should not be.
Tested on i686-linux, no new regressions.
Approved by dnovillo.
Oleg
Index: tree.h
===================================================================
--- tree.h (revision 134191)
+++ tree.h (working copy)
@@ -389,6 +389,7 @@ struct tree_base GTY(())
unsigned deprecated_flag : 1;
unsigned invariant_flag : 1;
unsigned saturating_flag : 1;
+ unsigned default_def_flag : 1;
unsigned lang_flag_0 : 1;
unsigned lang_flag_1 : 1;
@@ -399,7 +400,7 @@ struct tree_base GTY(())
unsigned lang_flag_6 : 1;
unsigned visited : 1;
- unsigned spare : 23;
+ unsigned spare : 22;
/* FIXME tuples: Eventually, we need to move this somewhere external to
the trees. */
@@ -1881,7 +1882,7 @@ struct tree_exp GTY(())
Default definitions are always created by an empty statement and
belong to no basic block. */
#define SSA_NAME_IS_DEFAULT_DEF(NODE) \
- SSA_NAME_CHECK (NODE)->base.volatile_flag
+ SSA_NAME_CHECK (NODE)->base.default_def_flag
/* Attributes for SSA_NAMEs for pointer-type variables. */
#define SSA_NAME_PTR_INFO(N) \
Index: ChangeLog
===================================================================
--- ChangeLog (revision 134191)
+++ ChangeLog (working copy)
@@ -1,3 +1,8 @@
+2008-04-10 Oleg Ryjkov <olegr@google.com>
+
+ * tree.h (struct tree_base): Added a new flag default_def_flag.
+ (SSA_NAME_IS_DEFAULT_DEF): Changed to use the new flag.
+
2008-04-11 Kaz Kojima <kkojima@gcc.gnu.org>
* config.gcc (need_64bit_hwint): Need 64bit hwint for sh-*-*.