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.
Jeff