diff options
author | Aldy Hernandez <aldyh@redhat.com> | 2004-11-24 16:37:02 +0000 |
---|---|---|
committer | Aldy Hernandez <aldyh@gcc.gnu.org> | 2004-11-24 16:37:02 +0000 |
commit | 4033a1f238593d85ca3bef569214ffcbd51b26ec (patch) | |
tree | 6fe3199ef3320bb14c0b7aecd17114216aefd972 /gcc | |
parent | 39123624ff2ab0c737d88382b350937a2ed9bc24 (diff) | |
download | gcc-4033a1f238593d85ca3bef569214ffcbd51b26ec.zip gcc-4033a1f238593d85ca3bef569214ffcbd51b26ec.tar.gz gcc-4033a1f238593d85ca3bef569214ffcbd51b26ec.tar.bz2 |
tree.c (recompute_tree_invarant_for_addr_expr): The address of a thread-local variable is invariant.
* tree.c (recompute_tree_invarant_for_addr_expr): The address of a
thread-local variable is invariant.
From-SVN: r91174
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/tree.c | 4 |
2 files changed, 8 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 9d94234..7d5bae2 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2004-11-24 Aldy Hernandez <aldyh@redhat.com> + + * tree.c (recompute_tree_invarant_for_addr_expr): The address of a + thread-local variable is invariant. + 2004-11-24 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> * tree-pretty-print.c (dump_generic_node, case POINTER_TYPE): @@ -2421,7 +2421,9 @@ do { tree _node = (NODE); \ { if (staticp (node)) ; - else if (decl_function_context (node) == current_function_decl) + else if (decl_function_context (node) == current_function_decl + /* Addresses of thread-local variables are invariant. */ + || (TREE_CODE (node) == VAR_DECL && DECL_THREAD_LOCAL (node))) tc = false; else ti = tc = false; |