public inbox for gcc-cvs@sourceware.org
help / color / mirror / Atom feed
* [gcc(refs/users/segher/heads/cc0)] reorg fixxo
@ 2020-12-15 16:47 Segher Boessenkool
0 siblings, 0 replies; 2+ messages in thread
From: Segher Boessenkool @ 2020-12-15 16:47 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:63d3f4c5628daf1ec31694410fdd96d0764b1b03
commit 63d3f4c5628daf1ec31694410fdd96d0764b1b03
Author: Segher Boessenkool <segher@kernel.crashing.org>
Date: Tue Dec 15 16:41:46 2020 +0000
reorg fixxo
Diff:
---
gcc/reorg.c | 11 +++--------
1 file changed, 3 insertions(+), 8 deletions(-)
diff --git a/gcc/reorg.c b/gcc/reorg.c
index 9c7c2549f85..2f782f67336 100644
--- a/gcc/reorg.c
+++ b/gcc/reorg.c
@@ -1152,8 +1152,6 @@ steal_delay_list_from_fallthrough (rtx_insn *insn, rtx condition,
rtx_insn *trial = seq->insn (i);
rtx_insn *prior_insn;
- /* If TRIAL sets CC0, stealing it will move it too far from the use
- of CC0. */
if (insn_references_resource_p (trial, sets, false)
|| insn_sets_resource_p (trial, needed, false)
|| insn_sets_resource_p (trial, sets, false))
@@ -1245,7 +1243,6 @@ try_merge_delay_insns (rtx_insn *insn, rtx_insn *thread)
continue;
if (GET_CODE (next_to_match) == GET_CODE (trial)
- /* We can't share an insn that sets cc0. */
&& ! insn_references_resource_p (trial, &set, true)
&& ! insn_sets_resource_p (trial, &set, true)
&& ! insn_sets_resource_p (trial, &needed, true)
@@ -1478,8 +1475,8 @@ redundant_insn (rtx insn, rtx_insn *target, const vec<rtx_insn *> &delay_list)
if (trial == 0)
return 0;
- /* See what resources this insn sets and needs. If they overlap, or
- if this insn references CC0, it can't be redundant. */
+ /* See what resources this insn sets and needs. If they overlap, it
+ can't be redundant. */
CLEAR_RESOURCE (&needed);
CLEAR_RESOURCE (&set);
@@ -1979,7 +1976,6 @@ fill_simple_delay_slots (int non_jumps_p)
filter_flags ? &fset : &set,
true)
&& ! insn_sets_resource_p (trial, &needed, true)
- /* Can't separate set of cc0 from its use. */
&& ! can_throw_internal (trial))
{
trial = try_split (pat, trial, 1);
@@ -2375,8 +2371,7 @@ fill_slots_from_thread (rtx_jump_insn *insn, rtx condition,
if (GET_CODE (trial) == DEBUG_INSN)
continue;
- /* If TRIAL conflicts with the insns ahead of it, we lose. Also,
- don't separate or copy insns that set and use CC0. */
+ /* If TRIAL conflicts with the insns ahead of it, we lose. */
if (! insn_references_resource_p (trial, &set, true)
&& ! insn_sets_resource_p (trial, filter_flags ? &fset : &set, true)
&& ! insn_sets_resource_p (trial, &needed, true)
^ permalink raw reply [flat|nested] 2+ messages in thread
* [gcc(refs/users/segher/heads/cc0)] reorg fixxo
@ 2020-12-15 17:05 Segher Boessenkool
0 siblings, 0 replies; 2+ messages in thread
From: Segher Boessenkool @ 2020-12-15 17:05 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:cad599197f3ae426883413f40165a7e3ce1109ae
commit cad599197f3ae426883413f40165a7e3ce1109ae
Author: Segher Boessenkool <segher@kernel.crashing.org>
Date: Tue Dec 15 16:41:46 2020 +0000
reorg fixxo
Diff:
---
gcc/reorg.c | 11 +++--------
1 file changed, 3 insertions(+), 8 deletions(-)
diff --git a/gcc/reorg.c b/gcc/reorg.c
index 9c7c2549f85..2f782f67336 100644
--- a/gcc/reorg.c
+++ b/gcc/reorg.c
@@ -1152,8 +1152,6 @@ steal_delay_list_from_fallthrough (rtx_insn *insn, rtx condition,
rtx_insn *trial = seq->insn (i);
rtx_insn *prior_insn;
- /* If TRIAL sets CC0, stealing it will move it too far from the use
- of CC0. */
if (insn_references_resource_p (trial, sets, false)
|| insn_sets_resource_p (trial, needed, false)
|| insn_sets_resource_p (trial, sets, false))
@@ -1245,7 +1243,6 @@ try_merge_delay_insns (rtx_insn *insn, rtx_insn *thread)
continue;
if (GET_CODE (next_to_match) == GET_CODE (trial)
- /* We can't share an insn that sets cc0. */
&& ! insn_references_resource_p (trial, &set, true)
&& ! insn_sets_resource_p (trial, &set, true)
&& ! insn_sets_resource_p (trial, &needed, true)
@@ -1478,8 +1475,8 @@ redundant_insn (rtx insn, rtx_insn *target, const vec<rtx_insn *> &delay_list)
if (trial == 0)
return 0;
- /* See what resources this insn sets and needs. If they overlap, or
- if this insn references CC0, it can't be redundant. */
+ /* See what resources this insn sets and needs. If they overlap, it
+ can't be redundant. */
CLEAR_RESOURCE (&needed);
CLEAR_RESOURCE (&set);
@@ -1979,7 +1976,6 @@ fill_simple_delay_slots (int non_jumps_p)
filter_flags ? &fset : &set,
true)
&& ! insn_sets_resource_p (trial, &needed, true)
- /* Can't separate set of cc0 from its use. */
&& ! can_throw_internal (trial))
{
trial = try_split (pat, trial, 1);
@@ -2375,8 +2371,7 @@ fill_slots_from_thread (rtx_jump_insn *insn, rtx condition,
if (GET_CODE (trial) == DEBUG_INSN)
continue;
- /* If TRIAL conflicts with the insns ahead of it, we lose. Also,
- don't separate or copy insns that set and use CC0. */
+ /* If TRIAL conflicts with the insns ahead of it, we lose. */
if (! insn_references_resource_p (trial, &set, true)
&& ! insn_sets_resource_p (trial, filter_flags ? &fset : &set, true)
&& ! insn_sets_resource_p (trial, &needed, true)
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2020-12-15 17:05 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-12-15 16:47 [gcc(refs/users/segher/heads/cc0)] reorg fixxo Segher Boessenkool
2020-12-15 17:05 Segher Boessenkool
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).