diff options
author | Dimitry Andric <dim@FreeBSD.org> | 2020-07-31 21:22:58 +0000 |
---|---|---|
committer | Dimitry Andric <dim@FreeBSD.org> | 2020-07-31 21:22:58 +0000 |
commit | 5ffd83dbcc34f10e07f6d3e968ae6365869615f4 (patch) | |
tree | 0e9f5cf729dde39f949698fddef45a34e2bc7f44 /contrib/llvm-project/llvm/lib/CodeGen/MachineInstrBundle.cpp | |
parent | 1799696096df87b52968b8996d00c91e0a5de8d9 (diff) | |
parent | cfca06d7963fa0909f90483b42a6d7d194d01e08 (diff) | |
download | src-5ffd83dbcc34f10e07f6d3e968ae6365869615f4.tar.gz src-5ffd83dbcc34f10e07f6d3e968ae6365869615f4.zip |
Merge llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp
master 2e10b7a39b9, the last commit before the llvmorg-12-init tag, from
which release/11.x was branched.
Note that for now, I rolled back all our local changes to make merging
easier, and I will reapply the still-relevant ones after updating to
11.0.0-rc1.
Notes
Notes:
svn path=/projects/clang1100-import/; revision=363742
Diffstat (limited to 'contrib/llvm-project/llvm/lib/CodeGen/MachineInstrBundle.cpp')
-rw-r--r-- | contrib/llvm-project/llvm/lib/CodeGen/MachineInstrBundle.cpp | 29 |
1 files changed, 14 insertions, 15 deletions
diff --git a/contrib/llvm-project/llvm/lib/CodeGen/MachineInstrBundle.cpp b/contrib/llvm-project/llvm/lib/CodeGen/MachineInstrBundle.cpp index 94865b0e9031..50456e489ea1 100644 --- a/contrib/llvm-project/llvm/lib/CodeGen/MachineInstrBundle.cpp +++ b/contrib/llvm-project/llvm/lib/CodeGen/MachineInstrBundle.cpp @@ -136,14 +136,14 @@ void llvm::finalizeBundle(MachineBasicBlock &MBB, BuildMI(MF, getDebugLoc(FirstMI, LastMI), TII->get(TargetOpcode::BUNDLE)); Bundle.prepend(MIB); - SmallVector<unsigned, 32> LocalDefs; - SmallSet<unsigned, 32> LocalDefSet; - SmallSet<unsigned, 8> DeadDefSet; - SmallSet<unsigned, 16> KilledDefSet; - SmallVector<unsigned, 8> ExternUses; - SmallSet<unsigned, 8> ExternUseSet; - SmallSet<unsigned, 8> KilledUseSet; - SmallSet<unsigned, 8> UndefUseSet; + SmallVector<Register, 32> LocalDefs; + SmallSet<Register, 32> LocalDefSet; + SmallSet<Register, 8> DeadDefSet; + SmallSet<Register, 16> KilledDefSet; + SmallVector<Register, 8> ExternUses; + SmallSet<Register, 8> ExternUseSet; + SmallSet<Register, 8> KilledUseSet; + SmallSet<Register, 8> UndefUseSet; SmallVector<MachineOperand*, 4> Defs; for (auto MII = FirstMI; MII != LastMI; ++MII) { for (unsigned i = 0, e = MII->getNumOperands(); i != e; ++i) { @@ -207,9 +207,9 @@ void llvm::finalizeBundle(MachineBasicBlock &MBB, Defs.clear(); } - SmallSet<unsigned, 32> Added; + SmallSet<Register, 32> Added; for (unsigned i = 0, e = LocalDefs.size(); i != e; ++i) { - unsigned Reg = LocalDefs[i]; + Register Reg = LocalDefs[i]; if (Added.insert(Reg).second) { // If it's not live beyond end of the bundle, mark it dead. bool isDead = DeadDefSet.count(Reg) || KilledDefSet.count(Reg); @@ -219,7 +219,7 @@ void llvm::finalizeBundle(MachineBasicBlock &MBB, } for (unsigned i = 0, e = ExternUses.size(); i != e; ++i) { - unsigned Reg = ExternUses[i]; + Register Reg = ExternUses[i]; bool isKill = KilledUseSet.count(Reg); bool isUndef = UndefUseSet.count(Reg); MIB.addReg(Reg, getKillRegState(isKill) | getUndefRegState(isUndef) | @@ -279,7 +279,7 @@ bool llvm::finalizeBundles(MachineFunction &MF) { } VirtRegInfo llvm::AnalyzeVirtRegInBundle( - MachineInstr &MI, unsigned Reg, + MachineInstr &MI, Register Reg, SmallVectorImpl<std::pair<MachineInstr *, unsigned>> *Ops) { VirtRegInfo RI = {false, false, false}; for (MIBundleOperands O(MI); O.isValid(); ++O) { @@ -308,13 +308,12 @@ VirtRegInfo llvm::AnalyzeVirtRegInBundle( return RI; } -PhysRegInfo llvm::AnalyzePhysRegInBundle(const MachineInstr &MI, unsigned Reg, +PhysRegInfo llvm::AnalyzePhysRegInBundle(const MachineInstr &MI, Register Reg, const TargetRegisterInfo *TRI) { bool AllDefsDead = true; PhysRegInfo PRI = {false, false, false, false, false, false, false, false}; - assert(Register::isPhysicalRegister(Reg) && - "analyzePhysReg not given a physical register!"); + assert(Reg.isPhysical() && "analyzePhysReg not given a physical register!"); for (ConstMIBundleOperands O(MI); O.isValid(); ++O) { const MachineOperand &MO = *O; |