[llvm] a9b3303 - Revert "[NFC] [TargetRegisterInfo] add one use check to lookThruCopyLike."

Chen Zheng via llvm-commits llvm-commits at lists.llvm.org
Mon Jan 18 18:34:14 PST 2021


Author: Chen Zheng
Date: 2021-01-18T21:33:31-05:00
New Revision: a9b3303a8847e100ae23fa711f9b5b8963ebdaf9

URL: https://github.com/llvm/llvm-project/commit/a9b3303a8847e100ae23fa711f9b5b8963ebdaf9
DIFF: https://github.com/llvm/llvm-project/commit/a9b3303a8847e100ae23fa711f9b5b8963ebdaf9.diff

LOG: Revert "[NFC] [TargetRegisterInfo] add one use check to lookThruCopyLike."

This reverts commit 3bdf4507b66348ad78df4655a8e4f36c3fc10f3c.

Post commit comments need to be addressed first.

Added: 
    

Modified: 
    llvm/include/llvm/CodeGen/TargetRegisterInfo.h
    llvm/lib/CodeGen/TargetRegisterInfo.cpp

Removed: 
    


################################################################################
diff  --git a/llvm/include/llvm/CodeGen/TargetRegisterInfo.h b/llvm/include/llvm/CodeGen/TargetRegisterInfo.h
index e07779e04b7b..6f32729a1e83 100644
--- a/llvm/include/llvm/CodeGen/TargetRegisterInfo.h
+++ b/llvm/include/llvm/CodeGen/TargetRegisterInfo.h
@@ -410,13 +410,10 @@ class TargetRegisterInfo : public MCRegisterInfo {
 
   /// Returns the original SrcReg unless it is the target of a copy-like
   /// operation, in which case we chain backwards through all such operations
-  /// to the ultimate source register. If a physical register is encountered,
+  /// to the ultimate source register.  If a physical register is encountered,
   /// we stop the search.
-  /// If one definition in the copy chain has multiple uses, set \p
-  /// AllDefHaveOneUser to false, otherwise set it to true.
   virtual Register lookThruCopyLike(Register SrcReg,
-                                    const MachineRegisterInfo *MRI,
-                                    bool *AllDefHaveOneUser = nullptr) const;
+                                    const MachineRegisterInfo *MRI) const;
 
   /// Return a null-terminated list of all of the callee-saved registers on
   /// this target. The register should be in the order of desired callee-save

diff  --git a/llvm/lib/CodeGen/TargetRegisterInfo.cpp b/llvm/lib/CodeGen/TargetRegisterInfo.cpp
index 09c7383a291b..4a190c9f50af 100644
--- a/llvm/lib/CodeGen/TargetRegisterInfo.cpp
+++ b/llvm/lib/CodeGen/TargetRegisterInfo.cpp
@@ -510,19 +510,13 @@ TargetRegisterInfo::getRegSizeInBits(Register Reg,
   return getRegSizeInBits(*RC);
 }
 
-Register TargetRegisterInfo::lookThruCopyLike(Register SrcReg,
-                                              const MachineRegisterInfo *MRI,
-                                              bool *AllDefHaveOneUser) const {
-  if (AllDefHaveOneUser)
-    *AllDefHaveOneUser = true;
-
+Register
+TargetRegisterInfo::lookThruCopyLike(Register SrcReg,
+                                     const MachineRegisterInfo *MRI) const {
   while (true) {
     const MachineInstr *MI = MRI->getVRegDef(SrcReg);
-    if (!MI->isCopyLike()) {
-      if (AllDefHaveOneUser && !MRI->hasOneNonDBGUse(SrcReg))
-        *AllDefHaveOneUser = false;
+    if (!MI->isCopyLike())
       return SrcReg;
-    }
 
     Register CopySrcReg;
     if (MI->isCopy())
@@ -532,11 +526,8 @@ Register TargetRegisterInfo::lookThruCopyLike(Register SrcReg,
       CopySrcReg = MI->getOperand(2).getReg();
     }
 
-    if (!CopySrcReg.isVirtual()) {
-      if (AllDefHaveOneUser)
-        *AllDefHaveOneUser = false;
+    if (!CopySrcReg.isVirtual())
       return CopySrcReg;
-    }
 
     SrcReg = CopySrcReg;
   }


        


More information about the llvm-commits mailing list