[gcc/ARM/heads/arm-perf-staging] (10 commits) cselim: Extend to check non-trapping for more references [P
Tamar Christina
tnfchris@gcc.gnu.org
Thu Jul 23 08:57:55 GMT 2020
The branch 'ARM/heads/arm-perf-staging' was updated to point to:
d9eb9cb2c14... cselim: Extend to check non-trapping for more references [P
It previously pointed to:
e4fc3bd27bf... cselim: Extend to check non-trapping for more references [P
Diff:
!!! WARNING: THE FOLLOWING COMMITS ARE NO LONGER ACCESSIBLE (LOST):
-------------------------------------------------------------------
e4fc3bd... cselim: Extend to check non-trapping for more references [P
commit e4fc3bd27bffb2f61abe0ec98055ba9a418f99d2
Author: Hao Liu <hliu@os.amperecomputing.com>
Date: Thu Jun 4 16:28:37 2020 +0800
cselim: Extend to check non-trapping for more references [PR89430]
If there is a dominating store, a store to the same reference can not be
trapped. But previously, it only supports such check on MEM_REFs.
So this patch extends it to support ARRAY_REFs and COMPONENT_REFs.
This patch also supports a special case: if there is a dominating load of
local variable without address escape, a store is not trapped, as local
stack is always writable. Other loads are ignored for simplicity, as they
don't help to check if a store can be trapped (the memory may be read-only).
gcc/ChangeLog:
PR tree-optimization/89430
* tree-ssa-phiopt.c
(struct name_to_bb): Rename to ref_to_bb; add a new field exp;
remove ssa_name_ver, store, offset fields.
(struct ssa_names_hasher): Rename to refs_hasher; update functions.
(class nontrapping_dom_walker): Rename m_seen_ssa_names to m_seen_refs.
(nontrapping_dom_walker::add_or_mark_expr): Extend to support ARRAY_REFs
and COMPONENT_REFs.
gcc/testsuite/ChangeLog:
PR tree-optimization/89430
* gcc.dg/tree-ssa/pr89430-1.c: Remove xfail.
* gcc.dg/tree-ssa/pr89430-2.c: Remove xfail.
* gcc.dg/tree-ssa/pr89430-5.c: Remove xfail.
* gcc.dg/tree-ssa/pr89430-6.c: Remove xfail.
* gcc.dg/tree-ssa/pr89430-7-comp-ref.c: New test.
* gcc.dg/tree-ssa/pr89430-8-mem-ref-size.c: New test.
* gcc.dg/tree-ssa/ssa-pre-17.c: Add -fno-tree-cselim.
Summary of changes (added commits):
-----------------------------------
d9eb9cb... cselim: Extend to check non-trapping for more references [P
ee5c3db... Update ChangeLog and version files for release
08e0682... Daily bump.
a298c55... Daily bump.
4083981... i386: Rename TARGET_USE_XCHG_FOR_ATOMIC_STORE to TARGET_AVO
3d4f68d... Daily bump.
10d74b9... Regenerate gcc.pot.
124402d... Daily bump.
5c76a50... Daily bump.
2186c30... Daily bump.
commit d9eb9cb2c14d1548959fad37815973bf88a69cd7
Author: Hao Liu <hliu@os.amperecomputing.com>
Date: Thu Jun 4 16:28:37 2020 +0800
cselim: Extend to check non-trapping for more references [PR89430]
If there is a dominating store, a store to the same reference can not be
trapped. But previously, it only supports such check on MEM_REFs.
So this patch extends it to support ARRAY_REFs and COMPONENT_REFs.
This patch also supports a special case: if there is a dominating load of
local variable without address escape, a store is not trapped, as local
stack is always writable. Other loads are ignored for simplicity, as they
don't help to check if a store can be trapped (the memory may be read-only).
gcc/ChangeLog:
PR tree-optimization/89430
* tree-ssa-phiopt.c
(struct name_to_bb): Rename to ref_to_bb; add a new field exp;
remove ssa_name_ver, store, offset fields.
(struct ssa_names_hasher): Rename to refs_hasher; update functions.
(class nontrapping_dom_walker): Rename m_seen_ssa_names to m_seen_refs.
(nontrapping_dom_walker::add_or_mark_expr): Extend to support ARRAY_REFs
and COMPONENT_REFs.
gcc/testsuite/ChangeLog:
PR tree-optimization/89430
* gcc.dg/tree-ssa/pr89430-1.c: Remove xfail.
* gcc.dg/tree-ssa/pr89430-2.c: Remove xfail.
* gcc.dg/tree-ssa/pr89430-5.c: Remove xfail.
* gcc.dg/tree-ssa/pr89430-6.c: Remove xfail.
* gcc.dg/tree-ssa/pr89430-7-comp-ref.c: New test.
* gcc.dg/tree-ssa/pr89430-8-mem-ref-size.c: New test.
* gcc.dg/tree-ssa/ssa-pre-17.c: Add -fno-tree-cselim.
commit ee5c3db6c5b2c3332912fb4c9cfa2864569ebd9a
Author: Richard Biener <rguenther@suse.de>
Date: Thu Jul 23 06:35:38 2020 +0000
Update ChangeLog and version files for release
commit 08e068265e463ff5ee4263bec9f4cb207ef9716b
Author: GCC Administrator <gccadmin@gcc.gnu.org>
Date: Thu Jul 23 00:16:58 2020 +0000
Daily bump.
commit a298c55d4414ce02489aedf69ff522956c193e5a
Author: GCC Administrator <gccadmin@gcc.gnu.org>
Date: Wed Jul 22 00:16:59 2020 +0000
Daily bump.
commit 4083981ebd9feb03c6ab8e7415429d4c4692da22
Author: Uros Bizjak <ubizjak@gmail.com>
Date: Tue Jul 21 20:30:15 2020 +0200
i386: Rename TARGET_USE_XCHG_FOR_ATOMIC_STORE to TARGET_AVOID_MFENCE.
2020-07-21 Uroš Bizjak <ubizjak@gmail.com>
gcc/ChangeLog:
* config/i386/i386.h (TARGET_AVOID_MFENCE):
Rename from TARGET_USE_XCHG_FOR_ATOMIC_STORE.
* config/i386/sync.md (atomic_store<mode>): Update for rename.
* config/i386/x86-tune.def (X86_TUNE_AVOID_MFENCE):
Rename from X86_TUNE_USE_XCHG_FOR_ATOMIC_STORE.
commit 3d4f68dcab750b7dd05c951cfc79bdcd944874a5
Author: GCC Administrator <gccadmin@gcc.gnu.org>
Date: Tue Jul 21 00:17:01 2020 +0000
Daily bump.
commit 10d74b9be6123ea207ae499735d76fc0cef724da
Author: Joseph Myers <joseph@codesourcery.com>
Date: Mon Jul 20 18:08:57 2020 +0000
Regenerate gcc.pot.
* gcc.pot: Regenerate.
commit 124402d2c67f21f5af67ed793dc0dff7b3d1f921
Author: GCC Administrator <gccadmin@gcc.gnu.org>
Date: Mon Jul 20 00:16:55 2020 +0000
Daily bump.
commit 5c76a5074e439a9857a6212cbf1086b47c191f88
Author: GCC Administrator <gccadmin@gcc.gnu.org>
Date: Sun Jul 19 00:16:55 2020 +0000
Daily bump.
commit 2186c30980f8882a60367fced6843daf4c8227bf
Author: GCC Administrator <gccadmin@gcc.gnu.org>
Date: Sat Jul 18 00:16:56 2020 +0000
Daily bump.
More information about the Gcc-cvs
mailing list