This is the mail archive of the gcc-patches@gcc.gnu.org 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: Performance regression


On 25 Sep 2002, Jim Wilson wrote:
> This has been discussed many times before.  The only way to avoid performance
> loss from changing the semantics of LOAD_EXTEND_OP is to add new optimizer
> support for sign/zero extend operations.
>
> Since we went ahead with the LOAD_EXTEND_OP change to fix optimizer bugs,
> it would be useful if someone was looking into the new optimization support
> we need.  Maybe it can go on the projects list?  Add support for optimizing
> sign/zero extend operations.  Some problems can be fixed by being careful
> in the md file, but some problems can be solved only with an optimization
> pass that is designed to optimize away redundant sign/zero extend operations.

I'm more than happy to work on adding some sign/zero extend optimizations
to the GCC's RTL optimizers.  I just didn't want to clash with Dale, if
Apple wanted to start work on it straight away.  Just to be clear, which
new optimizations did you have in mind?

My list includes simplify_unary_operation support for replacing zero
and sign extension of memory oprands with subregs, and tweaking some
of my constant-folding of AND_EXPRs to use SUBREGs instead of zero or
sign extension when its known the top bits will be masked/ignored.
Anything else that I'm obviously missing?

Roger
--
Roger Sayle,                         E-mail: roger@eyesopen.com
OpenEye Scientific Software,         WWW: http://www.eyesopen.com/
Suite 1107, 3600 Cerrillos Road,     Tel: (+1) 505-473-7385
Santa Fe, New Mexico, 87507.         Fax: (+1) 505-473-0833


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