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]

*ping* [patch, fortran] Fix PR 85544


Ping?

the PR pointed out an old regression because the front-end optimization
pass was substituting 2**n with ishift(1,n), where n was an array.

Simply removing the optimization for that case would have been easy,
but also introduced a performance regression.

So, for this, I moved the optimization to trans-*, where it makes more
sense.

Regression-tested.  This turned up that one of our tests, mvbits_1.f90,
depends on the behavior that 2**32 is zero.  This is certainly not
guaranteed by the standard, but I chose to keep the behavior as not
to introduce any changes in behavior.

This fixes a regression, so I would like to backport to all active
branches if this if possible.

Oh yes, if anybody feels strongly that we should also optimize 32**n
and powers of other powers to two, now is the time to speak up :-)

OK for affected branches?


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