[PATCH] D88663: [AArch64] Use TargetRegisterClass::hasSubClassEq in tryToFindRegisterToRename

Eli Friedman via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jul 8 11:06:55 PDT 2021


efriedma added inline comments.


================
Comment at: llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp:839
+                  if (MI.getOpcode() == AArch64::ORRWrs ||
+                      MI.getOpcode() == AArch64::ADDWri)
+                    MatchingReg = MI.getOperand(0).getReg();
----------------
We don't want to repeat this list of opcodes in multiple places.


================
Comment at: llvm/test/CodeGen/AArch64/stp-opt-with-renaming.mir:258
 # CHECK:         renamable $x8 = MRS 58880
-# CHECK-NEXT:    $w9 = ORRWrs $wzr, killed renamable $w8, 0, implicit-def $x9
+# CHECK-NEXT:    $w2 = ORRWrs $wzr, killed renamable $w8, 0, implicit-def $w2
 # CHECK-NEXT:    renamable $x8 = MRS 55840
----------------
Somehow the implicit-def is getting rewritten from an x register to a w register?

If the implicit-def is dead, we can just drop it from the operand list.  If it's not, rewriting like this is going to mess with liveness computation.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D88663/new/

https://reviews.llvm.org/D88663



More information about the llvm-commits mailing list