diff --git a/Backport-re-PR-tree-optimization-84552-Compile-time-.patch b/Backport-re-PR-tree-optimization-84552-Compile-time-.patch new file mode 100644 index 0000000000000000000000000000000000000000..7f6ab505ba326454d8baf96c3962e47a427939d5 --- /dev/null +++ b/Backport-re-PR-tree-optimization-84552-Compile-time-.patch @@ -0,0 +1,70 @@ +From e0e3ff695ab4f56d3a69e42303a9af13a23fcc15 Mon Sep 17 00:00:00 2001 +From: xiezhiheng +Date: Tue, 5 Dec 2023 14:25:14 +0800 +Subject: [PATCH] [Backport] re PR tree-optimization/84552 (Compile time hog w/ + -O2 -floop-nest-optimize -fno-tree-copy-prop -fno-tree-fre + -fno-tree-loop-ivcanon) + +Reference: https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=24545562ca5ece2615f8178ad6c6eb0be4fe6b3f +--- + gcc/testsuite/gcc.dg/graphite/pr84552.c | 23 +++++++++++++++++++++++ + gcc/tree-scalar-evolution.c | 6 +++++- + 2 files changed, 28 insertions(+), 1 deletion(-) + create mode 100644 gcc/testsuite/gcc.dg/graphite/pr84552.c + +diff --git a/gcc/testsuite/gcc.dg/graphite/pr84552.c b/gcc/testsuite/gcc.dg/graphite/pr84552.c +new file mode 100644 +index 000000000..15cbb0848 +--- /dev/null ++++ b/gcc/testsuite/gcc.dg/graphite/pr84552.c +@@ -0,0 +1,23 @@ ++/* { dg-do compile } */ ++/* { dg-options "-O2 -floop-nest-optimize -fno-tree-copy-prop -fno-tree-fre -fno-tree-loop-ivcanon" } */ ++ ++int cx; ++ ++int ++e6 (int pj, int xe) ++{ ++ for (cx = 0; cx < 2; ++cx) ++ while (xe < 1) ++ { ++ for (cx = 0; cx < 2; ++cx) ++ pj *= 2; ++ ++ if (cx != 0) ++ goto o3; ++ ++ ++xe; ++ } ++ ++o3: ++ return pj; ++} +diff --git a/gcc/tree-scalar-evolution.c b/gcc/tree-scalar-evolution.c +index cbd17e864..790050a20 100644 +--- a/gcc/tree-scalar-evolution.c ++++ b/gcc/tree-scalar-evolution.c +@@ -280,6 +280,7 @@ along with GCC; see the file COPYING3. If not see + #include "params.h" + #include "tree-ssa-propagate.h" + #include "gimple-fold.h" ++#include "tree-into-ssa.h" + + static tree analyze_scalar_evolution_1 (struct loop *, tree, tree); + static tree analyze_scalar_evolution_for_address_of (struct loop *loop, +@@ -1532,7 +1533,10 @@ static tree + follow_copies_to_constant (tree var) + { + tree res = var; +- while (TREE_CODE (res) == SSA_NAME) ++ while (TREE_CODE (res) == SSA_NAME ++ /* We face not updated SSA form in multiple places and this walk ++ may end up in sibling loops so we have to guard it. */ ++ && !name_registered_for_update_p (res)) + { + gimple *def = SSA_NAME_DEF_STMT (res); + if (gphi *phi = dyn_cast (def)) +-- +2.19.1 + diff --git a/gcc.spec b/gcc.spec index 46cea26bdb21f66dfa5ccf39838205102086ee27..e0547c7102b32bb93660799efafc01889d413158 100644 --- a/gcc.spec +++ b/gcc.spec @@ -41,7 +41,7 @@ Version: 7.3.0 # number 2020033101 meaning the openEuler 20.03 release date plus 01 to # replace DATE and will never change it in the future. %global openEulerDATE 2020033101 -Release: %{openEulerDATE}.56 +Release: %{openEulerDATE}.57 License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ with exceptions and LGPLv2+ and BSD Group: Development/Languages #Source0: hcc-aarch64-linux-release.tar.bz2 @@ -104,6 +104,7 @@ Patch54: Backport-AArch64-Add-tsv110-pipeline-scheduling.patch Patch55: Backport-Rework-cold-and-hot-label-attributes-in-pre.patch Patch56: Backport-Learn-GIMPLE-pretty-printer-to-produce-nice.patch Patch57: Backport-AArch64-Fix-longbranch-test.patch +Patch58: Backport-re-PR-tree-optimization-84552-Compile-time-.patch #AutoReqProv: off AutoReq: true @@ -3336,6 +3337,9 @@ fi %changelog +* Tue Dec 05 2023 eastb233 - 7.3.0-2020033101.57 +- Fix efl compilation issue. + * Mon Nov 27 2023 eastb233 - 7.3.0-2020033101.56 - Fix incorrect port of tsv110 pipeline.