[PATCH] D36224: [TwoAddressInstructionPass] Replace subregister uses when processing tied operands
Bjorn Pettersson via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Oct 3 08:55:57 PDT 2018
bjope added a comment.
In https://reviews.llvm.org/D36224#1248159, @MatzeB wrote:
> Note that embarassingly there are still a few passes where we skip machine verification in the default pass pipeline, `TwoAddressInstruction` being one of them. However if this is a new failure triggered by this particular patch then please fix it!
My first fix was to avoid replacing untied operands if the untied operands did not use the same subreg as the tied operands.
The thing I originally missed was that when not replacing all uses, it was incorrect to add a kill flag on the use in the inserted COPY. That problem is solved in the latest update of this patch (from September 28), by only adding the `kill` if we `ReplacedAllUntiedUses`.
Repository:
rL LLVM
https://reviews.llvm.org/D36224
More information about the llvm-commits
mailing list