LLVM: lib/CodeGen/TargetInstrInfo.cpp File Reference (original) (raw)
Go to the source code of this file.
Functions | |
---|---|
static bool | isAsmComment (const char *Str, const MCAsmInfo &MAI) |
static const TargetRegisterClass * | canFoldCopy (const MachineInstr &MI, const TargetInstrInfo &TII, unsigned FoldIdx) |
static MachineInstr * | foldPatchpoint (MachineFunction &MF, MachineInstr &MI, ArrayRef< unsigned > Ops, int FrameIndex, const TargetInstrInfo &TII) |
static void | foldInlineAsmMemOperand (MachineInstr *MI, unsigned OpNo, int FI, const TargetInstrInfo &TII) |
static MachineInstr * | foldInlineAsmMemOperand (MachineInstr &MI, ArrayRef< unsigned > Ops, int FI, const TargetInstrInfo &TII) |
static void | transferImplicitOperands (MachineInstr *MI, const TargetRegisterInfo *TRI) |
transferImplicitOperands - MI is a pseudo-instruction, and the lowered replacement instructions immediately precede it. | |
static std::pair< bool, bool > | mustSwapOperands (unsigned Pattern) |
◆ canFoldCopy()
◆ foldInlineAsmMemOperand() [1/2]
Definition at line 594 of file TargetInstrInfo.cpp.
References llvm::MachineInstr::addMemOperand(), llvm::AnalyzeVirtRegInBundle(), assert(), llvm::InlineAsm::Extra_MayLoad, llvm::InlineAsm::Extra_MayStore, foldInlineAsmMemOperand(), llvm::MachinePointerInfo::getFixedStack(), llvm::MachineFunction::getFrameInfo(), llvm::MachineOperand::getImm(), llvm::MachineFunction::getMachineMemOperand(), llvm::MachineInstr::getMF(), llvm::MachineFrameInfo::getObjectAlign(), llvm::MachineFrameInfo::getObjectSize(), llvm::MachineInstr::getOperand(), MI, llvm::InlineAsm::MIOp_ExtraInfo, llvm::MachineMemOperand::MOLoad, llvm::MachineMemOperand::MONone, llvm::MachineMemOperand::MOStore, llvm::VirtRegInfo::Reads, llvm::MachineOperand::setImm(), llvm::ArrayRef< T >::size(), TII, and llvm::VirtRegInfo::Writes.
◆ foldInlineAsmMemOperand() [2/2]
Definition at line 568 of file TargetInstrInfo.cpp.
References assert(), llvm::SmallVectorBase< Size_T >::empty(), F, foldInlineAsmMemOperand(), llvm::InlineAsm::m, llvm::InlineAsm::Mem, MI, llvm::MachineOperand::setImm(), llvm::SmallVectorBase< Size_T >::size(), and TII.
Referenced by foldInlineAsmMemOperand(), and llvm::TargetInstrInfo::foldMemoryOperand().
◆ foldPatchpoint()
Definition at line 503 of file TargetInstrInfo.cpp.
References llvm::MachineInstrBuilder::add(), llvm::MachineInstrBuilder::addFrameIndex(), llvm::MachineInstrBuilder::addImm(), assert(), llvm::MachineFunction::CreateMachineInstr(), llvm::MachineInstr::getNumOperands(), llvm::MachineOperand::getReg(), llvm::MachineRegisterInfo::getRegClass(), llvm::MachineFunction::getRegInfo(), llvm::MachineOperand::getSubReg(), llvm::is_contained(), MI, llvm::report_fatal_error(), llvm::MachineInstr::tieOperands(), and TII.
Referenced by llvm::TargetInstrInfo::foldMemoryOperand().
◆ isAsmComment()
◆ mustSwapOperands()
◆ transferImplicitOperands()
transferImplicitOperands - MI is a pseudo-instruction, and the lowered replacement instructions immediately precede it.
Copy any implicit operands from MI to the replacement instruction.
Definition at line 782 of file TargetInstrInfo.cpp.
Referenced by llvm::TargetInstrInfo::lowerCopy().
◆ DisableHazardRecognizer
cl::opt< bool > DisableHazardRecognizer("disable-sched-hazard", cl::Hidden, cl::init(false), cl::desc("Disable hazard detection during preRA scheduling")) ( "disable-sched-hazard" , cl::Hidden , cl::init(false) , cl::desc("Disable hazard detection during preRA scheduling") ) | static |
---|