[PATCH] [GVN] Eliminate redundant loads whose addresses are dependent on the result of a select instruction.

Daniel Berlin dberlin at dberlin.org
Wed Mar 25 07:25:10 PDT 2015


Out of curiosity, at what phase do you see these redundancies?
GCC used to canonicalize on the CFG version and do select formation late
specifically to address some of these issues.

On Wed, Mar 25, 2015 at 7:20 AM, Chad Rosier <mcrosier at codeaurora.org>
wrote:

> I've abandoned this patch (originally abandoned on March 16th).  Overall,
> I saw no significant performance improvements across SPEC2K/SPEC2K6 and
> after further testing there was one significant regression (i.e., 6% on
> spec2000/vpr), which was the workload I was targeting.  While the patch
> does remove the redundant load, that redundancy was replaced by another set
> of redundant instructions, fcmp/csel.  IIRC, csel instructions are bad for
> A57 devices in general.
>
> I agree that a more general solution should be considered and if the new
> PRE pass can enable that solution, I'm in no rush to push this patch
> forward.
>
> Regardless, I do appreciate everyones feedback!
>
>
> http://reviews.llvm.org/D8120
>
> EMAIL PREFERENCES
>   http://reviews.llvm.org/settings/panel/emailpreferences/
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150325/aafbb26b/attachment.html>


More information about the llvm-commits mailing list