diff options
author | H.J. Lu <hongjiu.lu@intel.com> | 2008-03-10 18:20:23 +0000 |
---|---|---|
committer | H.J. Lu <hjl@gcc.gnu.org> | 2008-03-10 11:20:23 -0700 |
commit | 725c2d321c429ef8f09b8474e0f3d693c6a5d1d8 (patch) | |
tree | 21d2365cfdaddec31b9d1307cf28d9ef6a64d907 /gcc/tree-ssa-ccp.c | |
parent | 3ba404dfe117ce42810220a8a89d8f14435895f9 (diff) | |
download | gcc-725c2d321c429ef8f09b8474e0f3d693c6a5d1d8.zip gcc-725c2d321c429ef8f09b8474e0f3d693c6a5d1d8.tar.gz gcc-725c2d321c429ef8f09b8474e0f3d693c6a5d1d8.tar.bz2 |
re PR tree-optimization/35494 (Revision 132991 breaks C++ static member)
gcc/
2008-03-10 H.J. Lu <hongjiu.lu@intel.com>
PR tree-optimization/35494
* tree-ssa-ccp.c (get_symbol_constant_value): Check if value
may be overriden at link and run time.
gcc/testsuite/
2008-03-10 H.J. Lu <hongjiu.lu@intel.com>
PR tree-optimization/35494
* g++.dg/tree-ssa/ssa-store-ccp-1.C: New.
* gcc.dg/tree-ssa/ssa-store-ccp-2.c: Likewise.
* gcc.dg/tree-ssa/ssa-store-ccp-3.c: Likewise.
* gcc.dg/tree-ssa/ssa-store-ccp-4.c: Likewise.
From-SVN: r133082
Diffstat (limited to 'gcc/tree-ssa-ccp.c')
-rw-r--r-- | gcc/tree-ssa-ccp.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/tree-ssa-ccp.c b/gcc/tree-ssa-ccp.c index b9211a5..7cefbf8 100644 --- a/gcc/tree-ssa-ccp.c +++ b/gcc/tree-ssa-ccp.c @@ -300,7 +300,10 @@ get_symbol_constant_value (tree sym) { if (TREE_STATIC (sym) && TREE_READONLY (sym) - && !MTAG_P (sym)) + && !MTAG_P (sym) + /* Check if a read-only definition may be overridden at + link and run time. */ + && targetm.binds_local_p (sym)) { tree val = DECL_INITIAL (sym); if (val |