[PATCH] Add XINSN macro and use it within NEXT_INSN/PREV_INSN (was Re: [PATCH] Force rtl templates to be inlined)

Jeff Law law@redhat.com
Fri Sep 5 18:41:00 GMT 2014

On 09/04/14 15:19, David Malcolm wrote:
> I suppose so, but I don't see an easy way of locating such XEXP users
> beyond building with ENABLE_RTL_CHECKING, and checking on every
> configuration, and trying to exercise all code paths.  Can we consider
> that a *long-term* followup?
Well, XEXP isn't supposed to be used to access integer fields (we have 
XINT for that).  Any code doing so is already broken, IMHO.  And 
anything doing so is going to have some ugly cast from an rtx to some 
integer type -- a strong hint that the original author any any reviewer 
missed something :-)

So I'd be comfortable with a more limited set of testing (say bootstrap 
x86_64 and perhaps one or two other platforms).  Evaluate anything 
found, and assuming we're not finding anything terribly unexpected, go 
for it.

> Use of XINSN does introduce a hole in the rtx-classes type-safety
> scheme, in that it's only checked with ENABLE_RTL_CHECKING.
I see XINSN as a relatively short term wart.  Our goal ought to be to 
make it go away, but I can see how we need it in the immediate term.


More information about the Gcc-patches mailing list