This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[Patch] PR target/19528: missing ra.h
- From: Ralf Corsepius <ralf dot corsepius at rtems dot org>
- To: GCC Patches <gcc-patches at gcc dot gnu dot org>
- Date: Wed, 19 Jan 2005 22:57:13 +0100
- Subject: [Patch] PR target/19528: missing ra.h
Hi,
The patch below had been proposed by Steven Bosscher to fix
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19528
Could somebody please commit it or approve me to commit it?
TIA
Ralf
Index: hard-reg-set.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/hard-reg-set.h,v
retrieving revision 1.25
diff -u -r1.25 hard-reg-set.h
--- hard-reg-set.h 15 Jan 2005 16:06:14 -0000 1.25
+++ hard-reg-set.h 19 Jan 2005 21:28:38 -0000
@@ -499,4 +499,19 @@
#define REG_CANNOT_CHANGE_MODE_P(REGN, FROM, TO) \
CANNOT_CHANGE_MODE_CLASS (FROM, TO, REGNO_REG_CLASS (REGN))
+/* Determine if two hard register sets intersect.
+ Return 1 if they do. */
+
+static inline bool
+hard_regs_intersect_p (HARD_REG_SET *a, HARD_REG_SET *b)
+{
+ HARD_REG_SET c;
+ COPY_HARD_REG_SET (c, *a);
+ AND_HARD_REG_SET (c, *b);
+ GO_IF_HARD_REG_SUBSET (c, reg_class_contents[(int) NO_REGS], lose);
+ return 1;
+lose:
+ return 0;
+}
+
#endif /* ! GCC_HARD_REG_SET_H */
Index: config/sh/sh.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/sh/sh.c,v
retrieving revision 1.315
diff -u -r1.315 sh.c
--- config/sh/sh.c 30 Dec 2004 03:08:06 -0000 1.315
+++ config/sh/sh.c 19 Jan 2005 21:28:46 -0000
@@ -47,7 +47,6 @@
#include "real.h"
#include "langhooks.h"
#include "basic-block.h"
-#include "ra.h"
#include "cfglayout.h"
#include "intl.h"
#include "sched-int.h"