diff options
author | Sergei Trofimovich <slyfox@gentoo.org> | 2019-06-01 09:07:17 +0100 |
---|---|---|
committer | Sergei Trofimovich <slyfox@gentoo.org> | 2019-06-01 09:07:17 +0100 |
commit | b6c8ba65d3aeccf17fc8010370c22baf908da339 (patch) | |
tree | 3ddb98579abddbd0e5f3ab4061deaede13b2e65f /7.4.0 | |
parent | 9.1.0: cut 1.1 patchset (diff) | |
download | gcc-patches-b6c8ba65d3aeccf17fc8010370c22baf908da339.tar.gz gcc-patches-b6c8ba65d3aeccf17fc8010370c22baf908da339.tar.bz2 gcc-patches-b6c8ba65d3aeccf17fc8010370c22baf908da339.zip |
7.4.0: backport PGO fix
Bug: https://bugs.gentoo.org/677724
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
Diffstat (limited to '7.4.0')
-rw-r--r-- | 7.4.0/gentoo/23_all-pgo.patch | 59 | ||||
-rw-r--r-- | 7.4.0/gentoo/README.history | 3 |
2 files changed, 62 insertions, 0 deletions
diff --git a/7.4.0/gentoo/23_all-pgo.patch b/7.4.0/gentoo/23_all-pgo.patch new file mode 100644 index 0000000..b11c72f --- /dev/null +++ b/7.4.0/gentoo/23_all-pgo.patch @@ -0,0 +1,59 @@ +https://bugs.gentoo.org/677724 + +From 332446ac24e5b37f441f7c9cb0b97fc36f9f0aa3 Mon Sep 17 00:00:00 2001 +From: hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> +Date: Sat, 15 Dec 2018 10:31:37 +0000 +Subject: [PATCH] * ipa.c (cgraph_build_static_cdtor_1): Add + OPTIMIZATION and TARGET parameters. (cgraph_build_static_cdtor): + Update. (build_cdtor): Use OPTIMIZATION and TARGET of the first real + cdtor callsed. + +git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267168 138bc75d-0d04-0410-961f-82ee72b054a4 +--- + gcc/ipa.c | 12 +++++++++--- + +--- a/gcc/ipa.c ++++ b/gcc/ipa.c +@@ -831,7 +831,9 @@ ipa_discover_variable_flags (void) + be produced. */ + + static void +-cgraph_build_static_cdtor_1 (char which, tree body, int priority, bool final) ++cgraph_build_static_cdtor_1 (char which, tree body, int priority, bool final, ++ tree optimization, ++ tree target) + { + static int counter = 0; + char which_buf[16]; +@@ -862,6 +864,8 @@ cgraph_build_static_cdtor_1 (char which, tree body, int priority, bool final) + + TREE_STATIC (decl) = 1; + TREE_USED (decl) = 1; ++ DECL_FUNCTION_SPECIFIC_OPTIMIZATION (decl) = optimization; ++ DECL_FUNCTION_SPECIFIC_TARGET (decl) = target; + DECL_ARTIFICIAL (decl) = 1; + DECL_IGNORED_P (decl) = 1; + DECL_NO_INSTRUMENT_FUNCTION_ENTRY_EXIT (decl) = 1; +@@ -911,7 +915,7 @@ cgraph_build_static_cdtor_1 (char which, tree body, int priority, bool final) + void + cgraph_build_static_cdtor (char which, tree body, int priority) + { +- cgraph_build_static_cdtor_1 (which, body, priority, false); ++ cgraph_build_static_cdtor_1 (which, body, priority, false, NULL, NULL); + } + + /* When target does not have ctors and dtors, we call all constructor +@@ -993,7 +997,9 @@ build_cdtor (bool ctor_p, const vec<tree> &cdtors) + gcc_assert (body != NULL_TREE); + /* Generate a function to call all the function of like + priority. */ +- cgraph_build_static_cdtor_1 (ctor_p ? 'I' : 'D', body, priority, true); ++ cgraph_build_static_cdtor_1 (ctor_p ? 'I' : 'D', body, priority, true, ++ DECL_FUNCTION_SPECIFIC_OPTIMIZATION (cdtors[0]), ++ DECL_FUNCTION_SPECIFIC_TARGET (cdtors[0])); + } + } + +-- +2.20.1 + diff --git a/7.4.0/gentoo/README.history b/7.4.0/gentoo/README.history index 54c6d3d..05000ee 100644 --- a/7.4.0/gentoo/README.history +++ b/7.4.0/gentoo/README.history @@ -1,3 +1,6 @@ +1.3 1 Jun 2019 + + 23_all-pgo.patch + 1.2 2 Feb 2019 U 01_all_default-fortify-source.patch + 21_all_kr-decl-PR88214.patch |