[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