diff options
author | ZhaoQi <zhaoqi01@loongson.cn> | 2025-09-26 10:45:29 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-09-26 10:45:29 +0800 |
commit | 4321d4fe8039a745796726dfe145e5e699b928b3 (patch) | |
tree | 589d406b275c99425ea9c7ee22776e9920d7de4f /llvm/lib/CodeGen/MachineInstr.cpp | |
parent | d516d07c268f260e245690f89ab0f3e727389cb5 (diff) | |
parent | ef876268b97d664a90dc0d9a044f518557270e3d (diff) | |
download | llvm-users/zhaoqi5/override-isxxxcheap-hooks.zip llvm-users/zhaoqi5/override-isxxxcheap-hooks.tar.gz llvm-users/zhaoqi5/override-isxxxcheap-hooks.tar.bz2 |
Merge branch 'users/zhaoqi5/test-isxxxcheap' into users/zhaoqi5/override-isxxxcheap-hooksusers/zhaoqi5/override-isxxxcheap-hooks
Diffstat (limited to 'llvm/lib/CodeGen/MachineInstr.cpp')
-rw-r--r-- | llvm/lib/CodeGen/MachineInstr.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/llvm/lib/CodeGen/MachineInstr.cpp b/llvm/lib/CodeGen/MachineInstr.cpp index 2c06c5a..8ad9245 100644 --- a/llvm/lib/CodeGen/MachineInstr.cpp +++ b/llvm/lib/CodeGen/MachineInstr.cpp @@ -2747,3 +2747,18 @@ bool MachineInstr::mayFoldInlineAsmRegOp(unsigned OpId) const { return F.getRegMayBeFolded(); return false; } + +unsigned MachineInstr::removePHIIncomingValueFor(const MachineBasicBlock &MBB) { + assert(isPHI()); + + // Phi might have multiple entries for MBB. Need to remove them all. + unsigned RemovedCount = 0; + for (unsigned N = getNumOperands(); N > 2; N -= 2) { + if (getOperand(N - 1).getMBB() == &MBB) { + removeOperand(N - 1); + removeOperand(N - 2); + RemovedCount += 2; + } + } + return RemovedCount; +} |