Message ID | 4E930BF4.1050008@mentor.com |
---|---|
State | New |
Headers | show |
> So, the patch for build_constant_desc does not have the desired effect.
OK, too bad that we need to play this back-and-forth game with MEMs. So the
original patch is OK (with TREE_READONLY (base) on the next line to mimic what
is done just above and without the gcc/ prefix in the ChangeLog). If you have
some available cycles, you can test and install the build_constant_desc change
in the same commit, otherwise I'll do it myself.
On 10/10/2011 05:50 PM, Eric Botcazou wrote: >> So, the patch for build_constant_desc does not have the desired effect. > > OK, too bad that we need to play this back-and-forth game with MEMs. So the > original patch is OK (with TREE_READONLY (base) on the next line to mimic what > is done just above and without the gcc/ prefix in the ChangeLog). If you have > some available cycles, you can test and install the build_constant_desc change > in the same commit, otherwise I'll do it myself. > I'll include the build_constant_desc change in a bootstrap/reg-test on x86_64. Thanks, - Tom
Index: gcc/varasm.c =================================================================== --- gcc/varasm.c (revision 179662) +++ gcc/varasm.c (working copy) @@ -3119,7 +3119,7 @@ build_constant_desc (tree exp) SET_SYMBOL_REF_DECL (symbol, decl); TREE_CONSTANT_POOL_ADDRESS_P (symbol) = 1; - rtl = gen_rtx_MEM (TYPE_MODE (TREE_TYPE (exp)), symbol); + rtl = gen_const_mem (TYPE_MODE (TREE_TYPE (exp)), symbol); set_mem_attributes (rtl, exp, 1); set_mem_alias_set (rtl, 0); set_mem_alias_set (rtl, const_alias_set);