[PATCH] D29850: [AArch64] Fix bug in AArch64RedundantCopyElimination removing COPYs it shouldn't.

Matthias Braun via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Feb 10 15:05:50 PST 2017


MatzeB added a comment.

In https://reviews.llvm.org/D29850#674079, @t.p.northover wrote:

> Where do copies like that come from? It seems like a pretty sketchy target-specific extension to a shared instruction, and we should probably be representing that in some better way.


Indeed a COPY instruction does not necessarily clear the upper bits of a register, even if the targets move instruction to implement it does. This mostly comes from the fact that we are allowed to eliminate NOP copies when the source and target are the same, with the rule to clear the upper bits we would not longer be allowed to do so.


https://reviews.llvm.org/D29850





More information about the llvm-commits mailing list