[PATCH] D45842: [Reassociate] swap binop operands to increase factoring potential
Sanjay Patel via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Apr 27 15:15:42 PDT 2018
spatel added a comment.
In https://reviews.llvm.org/D45842#1081077, @bjope wrote:
> As far as I can see this is another case of reusing existing Instructions/Values, while changing the actual value that the Instruction produce, right?
>
> Take a look at the debug-info fixes I made here for a similar problem in RewriteExprTree: https://reviews.llvm.org/D45975
> I suspect that you may need to discard debug-info in a similar way as in https://reviews.llvm.org/D45975, somewhere inside your new function swapOperandsToMatchBinops.
Thanks! You're correct that we're recycling instructions here (not sure why we don't just create new instructions with a Builder?). The funny thing about all the examples here is that after we swap operands in swapOperandsToMatchBinops(), we end up going through the main reassociation loop again and make more changes which triggers your code https://reviews.llvm.org/D45975, so I already see 'undef' in the right places.
Nevertheless, it's a small change to extract and call that code, so let me do that to be safe.
https://reviews.llvm.org/D45842
More information about the llvm-commits
mailing list