summaryrefslogtreecommitdiff
path: root/gcc/global.c
diff options
context:
space:
mode:
authorJ"orn Rennecke <amylaar@cygnus.co.uk>1999-11-08 23:17:51 +0000
committerJoern Rennecke <amylaar@gcc.gnu.org>1999-11-08 23:17:51 +0000
commit312618c7d082170511d341cf08918e543490361b (patch)
tree0d8b558bc375ac03fa28bfe8332be0712143438d /gcc/global.c
parent04299876827cd93058d21b3a03a48f68decd0831 (diff)
downloadgcc-312618c7d082170511d341cf08918e543490361b.tar.gz
global.c (EXECUTE_IF_CONFLICT): Don't define.
* global.c (EXECUTE_IF_CONFLICT): Don't define. (prune_preferences): Use EXECUTE_IF_SET_IN_ALLOCNO_SET instead. (find_reg): Likewise. From-SVN: r30455
Diffstat (limited to 'gcc/global.c')
-rw-r--r--gcc/global.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/gcc/global.c b/gcc/global.c
index 4edacf83a01..de3b57161e3 100644
--- a/gcc/global.c
+++ b/gcc/global.c
@@ -154,12 +154,15 @@ do { \
} \
} while (0)
+/* This doesn't work for non-GNU C due to the way CODE is macro expanded. */
+#if 0
/* For any allocno that conflicts with IN_ALLOCNO, set OUT_ALLOCNO to
the conflicting allocno, and execute CODE. This macro assumes that
mirror_conflicts has been run. */
#define EXECUTE_IF_CONFLICT(IN_ALLOCNO, OUT_ALLOCNO, CODE)\
EXECUTE_IF_SET_IN_ALLOCNO_SET (conflicts + (IN_ALLOCNO) * allocno_row_words,\
OUT_ALLOCNO, (CODE))
+#endif
/* Set of hard regs currently live (during scan of all insns). */
@@ -931,7 +934,8 @@ prune_preferences ()
CLEAR_HARD_REG_SET (temp);
CLEAR_HARD_REG_SET (temp2);
- EXECUTE_IF_CONFLICT (allocno, allocno2,
+ EXECUTE_IF_SET_IN_ALLOCNO_SET (conflicts + allocno * allocno_row_words,
+ allocno2,
{
if (allocno_to_order[allocno2] > i)
{
@@ -1261,7 +1265,7 @@ find_reg (allocno, losers, alt_regs_p, accept_call_clobbered, retrying)
/* For each other pseudo-reg conflicting with this one,
mark it as conflicting with the hard regs this one occupies. */
lim = allocno;
- EXECUTE_IF_CONFLICT (lim, j,
+ EXECUTE_IF_SET_IN_ALLOCNO_SET (conflicts + lim * allocno_row_words, j,
{
IOR_HARD_REG_SET (hard_reg_conflicts[j], this_reg);
});