This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Do not refer directly to gen_lowpart_xxx

> bonzini <> writes:
> > This patch is necessary for a series of patches to move some algebraic
> > simplifications in combine and CSE to simplify-rtx.c.  Most of the
> > changes are mechanical search & replaces.
> This looks like a good change, however, could you say where you plan
> to go with the 'series of patches ...'?  That will make it easier to
> evaluate the change.
> Also, your changelog is inaccurate - "GEN_LOWPART" (in capitals) does
> not appear in the patch.  And I would like there to be some sort of
> defense against accidentally calling gen_lowpart in a context that
> hasn't specified which one it should be.

I also think that it is highly confusing that a gen_lowpart call then
means something different in the combiner than it does anywhere else,
yet it's identical in the source code.  You might set a breakpoint
on gen_lowpart and be baffled that it isn't hit.

It's much clearer what is going on when you say something like:

  x = (*gen_lowpart_vec) (mode, x);

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]