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: [PATCH], PR 68404 patch #4 (fix earlyclobber problem on power8 fusion)


On Thu, Feb 18, 2016 at 11:45 AM, Michael Meissner
<meissner@linux.vnet.ibm.com> wrote:
> This patch to rs6000.md (which is essentially the same as #3) fixes the problem
> by removing the early clobber.  The patches to predicates.md, and the fusion
> tests revert my changes on February 9th that originally 'solved' the problem by
> not allowing fusion of ADDI values.  We have tested the fix using a combine
> profiled and LTO bootstrap build and it does not cause any regressions.
> Because machine independent changes can mask the bug at times, we also did a
> profiled/LTO build on the subversion revision that showed up the problem.  Is
> this ok to install in the trunk?
>
> Since gcc 5 contains the exact same early clobber, I would like to also back
> port the change to GCC 5.
>
> [gcc]
> 2016-02-18  Michael Meissner  <meissner@linux.vnet.ibm.com>
>
>         PR target/68404
>         * config/rs6000/predicates.md (fusion_gpr_addis): Revert
>         2016-02-09 change.
>
>         * config/rs6000/rs6000.md (fusion_gpr_load_<mode>): Remove
>         earlyclobber from target.  Use wF constraint for fused memory
>         address.
>         (fusion_gpr_<P:mode>_<GPR_FUSION:mode>_load): Likewise.
>
> [gcc/testsuites]
> 2016-02-18  Michael Meissner  <meissner@linux.vnet.ibm.com>
>
>         PR target/68404
>         * gcc.target/powerpc/fusion.c: Revert the 2016-02-09 change.
>         * gcc.target/powerpc/fusion3.c: Likewise.

This is okay for trunk and GCC 5 branch.

Thanks, David


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