Patch for jump optimization
Weiwen Liu
weiwen.liu@yale.edu
Mon Feb 2 21:49:00 GMT 1998
On alpha-dec-osf4.0, the current egcs in the cvs tree fails to build
libgcc2.a, because the jump optimization (modified_in_p) fails to
process the following insn.
(jump_insn 52 51 54 (set (pc)
(if_then_else (eq (reg:DI 102)
(const_int 0))
(label_ref 56)
(pc))) 178 {umindi3+2} (nil)
(nil))
I use the following patch to get the bootstrap going.
Mon Feb 2 1998 11:00:20 Weiwen Liu <weiwen.liu@yale.edu>
* rtlanal.c (modified_in_p): Do not check modified_in_p if
XEXP (x, i) is NULL.
Index: rtlanal.c
===================================================================
RCS file: /egcs/carton/cvsfiles/egcs/gcc/rtlanal.c,v
retrieving revision 1.6
diff -u -p -r1.6 rtlanal.c
--- rtlanal.c 1998/01/28 19:21:48 1.6
+++ rtlanal.c 1998/02/03 03:46:30
@@ -594,7 +594,7 @@ modified_in_p (x, insn)
fmt = GET_RTX_FORMAT (code);
for (i = GET_RTX_LENGTH (code) - 1; i >= 0; i--)
{
- if (fmt[i] == 'e' && modified_in_p (XEXP (x, i), insn))
+ if (fmt[i] == 'e' && XEXP (x, i) && modified_in_p (XEXP (x, i), insn))
return 1;
if (fmt[i] == 'E')
More information about the Gcc
mailing list