diff options
Diffstat (limited to 'llvm/lib/CodeGen/MachineInstr.cpp')
-rw-r--r-- | llvm/lib/CodeGen/MachineInstr.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/llvm/lib/CodeGen/MachineInstr.cpp b/llvm/lib/CodeGen/MachineInstr.cpp index a704175..2eba41c 100644 --- a/llvm/lib/CodeGen/MachineInstr.cpp +++ b/llvm/lib/CodeGen/MachineInstr.cpp @@ -697,8 +697,8 @@ void MachineInstr::eraseFromBundle() { getParent()->erase_instr(this); } -bool MachineInstr::isCandidateForCallSiteEntry() const { - if (!isCall(MachineInstr::IgnoreBundle)) +bool MachineInstr::isCandidateForCallSiteEntry(QueryType Type) const { + if (!isCall(Type)) return false; switch (getOpcode()) { case TargetOpcode::PATCHABLE_EVENT_CALL: @@ -711,6 +711,12 @@ bool MachineInstr::isCandidateForCallSiteEntry() const { return true; } +bool MachineInstr::shouldUpdateCallSiteInfo() const { + if (isBundle()) + return isCandidateForCallSiteEntry(MachineInstr::AnyInBundle); + return isCandidateForCallSiteEntry(); +} + unsigned MachineInstr::getNumExplicitOperands() const { unsigned NumOperands = MCID->getNumOperands(); if (!MCID->isVariadic()) |