This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: alphaev6-unknown-linux-gnu bootstrap fails RTL checking
- To: Toon Moene <toon at moene dot indiv dot nluug dot nl>
- Subject: Re: alphaev6-unknown-linux-gnu bootstrap fails RTL checking
- From: Clinton Popetz <cpopetz at cygnus dot com>
- Date: Tue, 11 Jul 2000 15:33:30 -0500
- Cc: gcc at gcc dot gnu dot org, gcc-patches at gcc dot gnu dot org
- References: <396B5F03.6B6C51B9@moene.indiv.nluug.nl>
On Tue, Jul 11, 2000 at 07:53:08PM +0200, Toon Moene wrote:
> And quite quickly too (I had settled for an overnight build, but within
> a minute I got the following):
>
> gcc -DIN_GCC -g -W -Wall -Wtraditional -Wwrite-strings
> -Wstrict-prototypes -Wmissing-prototypes -pedantic -Wno-long-long
> -DHAVE_CONFIG_H -o genattr \
> genattr.o rtl.o bitmap.o ggc-none.o gensupport.o print-rtl.o errors.o `
> case "obstack.o" in ?*) echo obstack.o ;; esac ` ` case "" in ?*) echo
> ;; esac ` ` case "" in ?*) echo ;; esac ` ` case "" in ?*) echo ;;
> esac ` ` case "" in ?*) echo ;; esac `
> ./genattr ../../egcs/gcc/config/alpha/alpha.md > tmp-attr.h
> genattr: RTL check: access of elt 7 of `define_insn' with last elt 4
> genattr: Internal compiler error in `process_rtx', at gensupport.c:212
> Please submit a full bug report.
> See <URL:http://www.gnu.org/software/gcc/bugs.html> for instructions.
Hmm, evidently rtl checking has never been enabled when someone did a
define_insn_and_split. The insn in question is ze_and_ne, which has
been in the tree for over a month.
-Clint
Tue Jul 11 15:28:21 CDT 2000 Clinton Popetz <cpopetz@cygnus.com>
* gensupport.c (process_rtx): Make rtl checking stop
complaining about the define_insn while it is being
converted from a define_insn_and_split.
Index: gensupport.c
===================================================================
RCS file: /cvs/gcc/egcs/gcc/gensupport.c,v
retrieving revision 1.9
diff -c -2 -p -r1.9 gensupport.c
*** gensupport.c 2000/05/27 20:03:31 1.9
--- gensupport.c 2000/07/11 20:25:29
*************** process_rtx (desc, lineno)
*** 174,178 ****
{
const char *split_cond;
! rtx split;
int i;
--- 174,178 ----
{
const char *split_cond;
! rtx split, attr;
int i;
*************** process_rtx (desc, lineno)
*** 209,214 ****
/* Fix up the DEFINE_INSN. */
PUT_CODE (desc, DEFINE_INSN);
! XVEC (desc, 4) = XVEC (desc, 7);
/* Queue them. */
--- 209,215 ----
/* Fix up the DEFINE_INSN. */
+ attr = XVEC (desc, 7);
PUT_CODE (desc, DEFINE_INSN);
! XVEC (desc, 4) = attr;
/* Queue them. */