summaryrefslogtreecommitdiff
path: root/0091-IPA-Bugfix-Fix-fails-in-IPA-prefetch-src-openEuler-g.patch
blob: 5ed724848a08eb6bed05e860483cf88639a43ba5 (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
27
28
29
30
31
32
33
34
From b84a896e2df214b08d6519a097cc410d3e582add Mon Sep 17 00:00:00 2001
From: Diachkov Ilia <diachkov.ilia1@huawei-partners.com>
Date: Wed, 8 May 2024 21:28:32 +0800
Subject: [PATCH 2/4] [IPA][Bugfix] Fix fails in IPA prefetch
 (src-openEuler/gcc: I9J6N6)

---
 gcc/ipa-prefetch.cc | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/gcc/ipa-prefetch.cc b/gcc/ipa-prefetch.cc
index 1ceb5137f..94290ea9c 100644
--- a/gcc/ipa-prefetch.cc
+++ b/gcc/ipa-prefetch.cc
@@ -1432,8 +1432,14 @@ remap_gimple_op_r (tree *tp, int *walk_subtrees, void *data)
 	  TREE_THIS_VOLATILE (*tp) = TREE_THIS_VOLATILE (old);
 	  TREE_SIDE_EFFECTS (*tp) = TREE_SIDE_EFFECTS (old);
 	  TREE_NO_WARNING (*tp) = TREE_NO_WARNING (old);
-	  /* TODO: maybe support this case.  */
-	  gcc_assert (MR_DEPENDENCE_CLIQUE (old) == 0);
+	  if (MR_DEPENDENCE_CLIQUE (old) != 0)
+	    {
+	      MR_DEPENDENCE_CLIQUE (*tp) = MR_DEPENDENCE_CLIQUE (old);
+	      MR_DEPENDENCE_BASE (*tp) = MR_DEPENDENCE_BASE (old);
+	      if (dump_file)
+		fprintf (dump_file, "Copy clique=%d base=%d info.\n",
+			 MR_DEPENDENCE_CLIQUE (old), MR_DEPENDENCE_BASE (old));
+	    }
 	  /* We cannot propagate the TREE_THIS_NOTRAP flag if we have
 	     remapped a parameter as the property might be valid only
 	     for the parameter itself.  */
-- 
2.33.0