From 96fd03a4d5c51d70222b2a2470699dfc52ee8d10 Mon Sep 17 00:00:00 2001 From: Nathan Sidwell Date: Thu, 1 Dec 2005 15:03:23 +0000 Subject: [PATCH] * config/ms1/ms1.c (ms1_reorg_hazard): Don't count noop moves. From-SVN: r107821 --- gcc/ChangeLog | 2 ++ gcc/config/ms1/ms1.c | 11 ++++++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 17808f0f738..28a1856011c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,7 @@ 2005-12-01 Nathan Sidwell + * config/ms1/ms1.c (ms1_reorg_hazard): Don't count noop moves. + * vec.h (VEC_block_remove): New. 2005-12-01 Gabriel Dos Reis diff --git a/gcc/config/ms1/ms1.c b/gcc/config/ms1/ms1.c index 19f02a1c746..9bc5138d4c3 100644 --- a/gcc/config/ms1/ms1.c +++ b/gcc/config/ms1/ms1.c @@ -1915,7 +1915,16 @@ ms1_reorg_hazard (void) break; } } - count -= INSN_CODE (prev) >= 0; + + if (INSN_CODE (prev) >= 0) + { + rtx set = single_set (prev); + + /* A noop set will get deleted in a later split pass, + so we can't count on it for hazard avoidance. */ + if (!set || !set_noop_p (set)) + count--; + } } if (rescan) -- 2.30.2