diff options
author | Richard Biener <rguenther@suse.de> | 2013-03-06 08:38:46 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2013-03-06 08:38:46 +0000 |
commit | 010403d180a49644c9786a55d51d677aafa86402 (patch) | |
tree | 0c0d6fed824666c1b5d24f35a6c17f5c48e0c057 /gcc/tree-vect-data-refs.c | |
parent | 34d3a672a85c8ef6ee773b311381154533d54310 (diff) | |
download | gcc-010403d180a49644c9786a55d51d677aafa86402.zip gcc-010403d180a49644c9786a55d51d677aafa86402.tar.gz gcc-010403d180a49644c9786a55d51d677aafa86402.tar.bz2 |
re PR lto/50494 (gcc.dg/vect/vect-reduc-2char.c fails spuriously on ppc with -flto)
2013-03-06 Richard Biener <rguenther@suse.de>
PR middle-end/50494
* tree-vect-data-refs.c (vect_can_force_dr_alignment_p):
Do not adjust alignment of DECL_IN_CONSTANT_POOL decls.
Revert
2013-02-13 Richard Biener <rguenther@suse.de>
PR lto/50494
* varasm.c (output_constant_def_1): Get the decl representing
the constant as argument.
(output_constant_def): Wrap output_constant_def_1.
(make_decl_rtl): Use output_constant_def_1 with the decl
representing the constant.
(build_constant_desc): Optionally re-use a decl already
representing the constant.
(tree_output_constant_def): Adjust.
From-SVN: r196487
Diffstat (limited to 'gcc/tree-vect-data-refs.c')
-rw-r--r-- | gcc/tree-vect-data-refs.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/gcc/tree-vect-data-refs.c b/gcc/tree-vect-data-refs.c index fe009ac..fdb73c3 100644 --- a/gcc/tree-vect-data-refs.c +++ b/gcc/tree-vect-data-refs.c @@ -4829,9 +4829,12 @@ vect_can_force_dr_alignment_p (const_tree decl, unsigned int alignment) /* We cannot change alignment of common or external symbols as another translation unit may contain a definition with lower alignment. The rules of common symbol linking mean that the definition - will override the common symbol. */ + will override the common symbol. The same is true for constant + pool entries which may be shared and are not properly merged + by LTO. */ if (DECL_EXTERNAL (decl) - || DECL_COMMON (decl)) + || DECL_COMMON (decl) + || DECL_IN_CONSTANT_POOL (decl)) return false; if (TREE_ASM_WRITTEN (decl)) |