This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: RTL type checking and '0' format codes
- To: Zack Weinberg <zack at bitmover dot com>
- Subject: Re: RTL type checking and '0' format codes
- From: Jeffrey A Law <law at cygnus dot com>
- Date: Tue, 24 Aug 1999 00:37:34 -0600
- cc: gcc at gcc dot gnu dot org
- Reply-To: law at cygnus dot com
In message <199908162310.QAA09148@zack.bitmover.com>you write:
>
> I have been looking into implementing type checking for RTL, much like
> the type checking for trees we already have. The various XFOO
> macros would check the slot against the format, and abort if it was
> invalid.
Excellent! We actually had someone working on this earlier, but we could never
get a copyright assignment for the work, so it never got integrated.
> '0' format codes cause problems. '0' is documented to mean that the
> slot is only valid in a specific pass, and should be ignored
> otherwise. They aren't initialized in gen_rtx_FOO, and they're
> ignored in generic copy-or-examine-RTL code.
Right.
> Most '0' slots are always addressed with a specific type, but the
> information on their type isn't in the format. LABEL_NUSES,
> JUMP_LABEL, LABEL_REFS, LABEL_NEXTREF, and CONTAINING_INSN are like
> this. We would like to type check them.
I'd punt initially and get the basic checking code installed. Then return
to this issue.
jeff