Commit d6682315 by Richard Guenther Committed by Richard Biener

re PR middle-end/52603 (Test failures in gcc.dg/vect: vectorizing unaligned access)

2012-03-16  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/52603
	* tree-vect-data-refs.c (vect_can_force_dr_alignment_p): Clarify
	comment.

	Revert
	2012-03-14  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/52571
	* tree-vect-data-refs.c (vect_compute_data_ref_alignment): Move
	flag_section_anchors check ...
	(vect_can_force_dr_alignment_p): ... here.

From-SVN: r185474
parent 0a1c20dc
2012-03-16 Richard Guenther <rguenther@suse.de>
PR tree-optimization/52603
* tree-vect-data-refs.c (vect_can_force_dr_alignment_p): Clarify
comment.
Revert
2012-03-14 Richard Guenther <rguenther@suse.de>
PR tree-optimization/52571
* tree-vect-data-refs.c (vect_compute_data_ref_alignment): Move
flag_section_anchors check ...
(vect_can_force_dr_alignment_p): ... here.
2012-03-16 Martin Jambor <mjambor@suse.cz> 2012-03-16 Martin Jambor <mjambor@suse.cz>
* expr.c (expand_expr_real_1): handle misaligned scalar reads from * expr.c (expand_expr_real_1): handle misaligned scalar reads from
......
...@@ -872,7 +872,12 @@ vect_compute_data_ref_alignment (struct data_reference *dr) ...@@ -872,7 +872,12 @@ vect_compute_data_ref_alignment (struct data_reference *dr)
if (!base_aligned) if (!base_aligned)
{ {
if (!vect_can_force_dr_alignment_p (base, TYPE_ALIGN (vectype))) /* Do not change the alignment of global variables here if
flag_section_anchors is enabled as we already generated
RTL for other functions. Most global variables should
have been aligned during the IPA increase_alignment pass. */
if (!vect_can_force_dr_alignment_p (base, TYPE_ALIGN (vectype))
|| (TREE_STATIC (base) && flag_section_anchors))
{ {
if (vect_print_dump_info (REPORT_DETAILS)) if (vect_print_dump_info (REPORT_DETAILS))
{ {
...@@ -4554,11 +4559,6 @@ vect_can_force_dr_alignment_p (const_tree decl, unsigned int alignment) ...@@ -4554,11 +4559,6 @@ vect_can_force_dr_alignment_p (const_tree decl, unsigned int alignment)
if (TREE_ASM_WRITTEN (decl)) if (TREE_ASM_WRITTEN (decl))
return false; return false;
/* Do not change the alignment of global variables if flag_section_anchors
is enabled. */
if (TREE_STATIC (decl) && flag_section_anchors)
return false;
if (TREE_STATIC (decl)) if (TREE_STATIC (decl))
return (alignment <= MAX_OFILE_ALIGNMENT); return (alignment <= MAX_OFILE_ALIGNMENT);
else else
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment