summaryrefslogtreecommitdiff
path: root/0297-Fix-grouped-load-merging-error-in-SLP-transpose-vectorization.patch
blob: 21a24c0f4bcaa8f6dce6f75c5be868871a9c1ea0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
From 8b30d71f881e15bfbc514f9b65fee178610e1536 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E9=83=91=E6=99=A8=E5=8D=89?= <zhengchenhui1@huawei.com>
Date: Wed, 18 Sep 2024 10:48:55 +0800
Subject: [PATCH] Fix error in slp-transpose-vectorize (for IARHFM)

---
 gcc/tree-vect-slp.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/gcc/tree-vect-slp.cc b/gcc/tree-vect-slp.cc
index d7e198dff..fbd638333 100644
--- a/gcc/tree-vect-slp.cc
+++ b/gcc/tree-vect-slp.cc
@@ -3814,7 +3814,8 @@ vect_slp_grouped_load_find (bb_vec_info bb_vinfo, vec<bool> &visited,
       if (opa == opb
 	  && grp_size_a == grp_size_b
 	  && diff >= 0
-	  && check_same_bb (first_element, merge_first_element))
+	  && check_same_bb (first_element, merge_first_element)
+	  && DR_PTR_INFO (first_element->dr_aux.dr) != DR_PTR_INFO (merge_first_element->dr_aux.dr))
 	{
 	  res.safe_push (first_element);
 	  visited[i] = true;
-- 
2.33.0