[PATCH] D35075: [AArch64] Redundant copy elimination - remove more zero copies.

Chad Rosier via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jul 18 12:55:21 PDT 2017


mcrosier added inline comments.


================
Comment at: lib/Target/AArch64/AArch64RedundantCopyElimination.cpp:231
+      MCPhysReg DstReg = PredI.getOperand(0).getReg();
+      if (DstReg == AArch64::WZR && DstReg == AArch64::XZR)
+        return false;
----------------
I just caught this little hiccup here..  This should be:

  if (DstReg == AArch64::WZR || DstReg == AArch64::XZR)
    return false;

The current code can't possibly evaluate to true.  The result is that we push {AArch64::WZR, 0} and {AArch64::XZR, 0} pairs onto the KnownRegs vector.  While this is actually very true, this has no effect other then to increase compile-time.

I'll fix this now and rerun correctness just to be safe.


https://reviews.llvm.org/D35075





More information about the llvm-commits mailing list