* [PATCH] tree-optimization/102949 - fix base object alignment
@ 2021-10-28 9:02 Richard Biener
0 siblings, 0 replies; only message in thread
From: Richard Biener @ 2021-10-28 9:02 UTC (permalink / raw)
To: gcc-patches
This fixes fallout of g:4703182a06b831a9 where we now silently fail
to force alignment of a base object. The fix is to look at the
dr_info of the group leader to be consistent with alignment analysis.
Bootstrapped and tested on x86_64-unknown-linux-gnu, pushed.
2021-10-28 Richard Biener <rguenther@suse.de>
PR tree-optimization/102949
* tree-vect-stmts.c (ensure_base_align): Look at the
dr_info of a group leader and assert we are looking at
one with analyzed alignment.
---
gcc/tree-vect-stmts.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/gcc/tree-vect-stmts.c b/gcc/tree-vect-stmts.c
index bf07e7a9495..03cc7267cf8 100644
--- a/gcc/tree-vect-stmts.c
+++ b/gcc/tree-vect-stmts.c
@@ -6338,8 +6338,12 @@ vectorizable_operation (vec_info *vinfo,
static void
ensure_base_align (dr_vec_info *dr_info)
{
- if (dr_info->misalignment == DR_MISALIGNMENT_UNINITIALIZED)
- return;
+ /* Alignment is only analyzed for the first element of a DR group,
+ use that to look at base alignment we need to enforce. */
+ if (STMT_VINFO_GROUPED_ACCESS (dr_info->stmt))
+ dr_info = STMT_VINFO_DR_INFO (DR_GROUP_FIRST_ELEMENT (dr_info->stmt));
+
+ gcc_assert (dr_info->misalignment != DR_MISALIGNMENT_UNINITIALIZED);
if (dr_info->base_misaligned)
{
--
2.31.1
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2021-10-28 9:02 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-10-28 9:02 [PATCH] tree-optimization/102949 - fix base object alignment Richard Biener
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).