From ab47ff34f9ea6b48aeb7ae86a73ffb9c3557f6e5 Mon Sep 17 00:00:00 2001 From: sayle Date: Fri, 5 Jan 2007 21:23:05 +0000 Subject: [PATCH] * trans-array.c (gfc_trans_array_constructor_value): Make the static const "data" array as TREE_READONLY. * trans-stmt.c (gfc_trans_character_select): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@120501 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/fortran/ChangeLog | 6 ++++++ gcc/fortran/trans-array.c | 1 + gcc/fortran/trans-stmt.c | 1 + 3 files changed, 8 insertions(+) diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 73dcf0e..a6d2223 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,5 +1,11 @@ 2007-01-05 Roger Sayle + * trans-array.c (gfc_trans_array_constructor_value): Make the + static const "data" array as TREE_READONLY. + * trans-stmt.c (gfc_trans_character_select): Likewise. + +2007-01-05 Roger Sayle + * trans-array.c (gfc_conv_loop_setup): Test whether the loop stride is one, to avoid fold_build2 introducing a useless NON_LVALUE_EXPR node. diff --git a/gcc/fortran/trans-array.c b/gcc/fortran/trans-array.c index d6d3ff7..86e5657 100644 --- a/gcc/fortran/trans-array.c +++ b/gcc/fortran/trans-array.c @@ -1224,6 +1224,7 @@ gfc_trans_array_constructor_value (stmtblock_t * pblock, tree type, TREE_STATIC (tmp) = 1; TREE_CONSTANT (tmp) = 1; TREE_INVARIANT (tmp) = 1; + TREE_READONLY (tmp) = 1; DECL_INITIAL (tmp) = init; init = tmp; diff --git a/gcc/fortran/trans-stmt.c b/gcc/fortran/trans-stmt.c index 8a2a2b3..3c14d02 100644 --- a/gcc/fortran/trans-stmt.c +++ b/gcc/fortran/trans-stmt.c @@ -1445,6 +1445,7 @@ gfc_trans_character_select (gfc_code *code) TREE_CONSTANT (tmp) = 1; TREE_INVARIANT (tmp) = 1; TREE_STATIC (tmp) = 1; + TREE_READONLY (tmp) = 1; DECL_INITIAL (tmp) = init; init = tmp; -- 2.7.4