LLVM 23.0.0git
MachineInstrBundle.cpp File Reference

Go to the source code of this file.

Functions

static bool unpackBundles (MachineFunction &MF, std::function< bool(const MachineFunction &)> Ftor)
 INITIALIZE_PASS (UnpackMachineBundlesLegacy, "unpack-mi-bundles", "Unpack machine instruction bundles", false, false) bool UnpackMachineBundlesLegacy
static DebugLoc getDebugLoc (MachineBasicBlock::instr_iterator FirstMI, MachineBasicBlock::instr_iterator LastMI)
 Return the first DebugLoc that has line number information, given a range of instructions.
static bool containsReg (SmallSetVector< Register, 32 > LocalDefsV, const BitVector &LocalDefsP, Register Reg, const TargetRegisterInfo *TRI)
 Check if target reg is contained in given lists, which are: LocalDefsV as given list for virtual regs LocalDefsP as given list for physical regs, in BitVector[RegUnit] form.

Function Documentation

◆ containsReg()

bool containsReg ( SmallSetVector< Register, 32 > LocalDefsV,
const BitVector & LocalDefsP,
Register Reg,
const TargetRegisterInfo * TRI )
static

Check if target reg is contained in given lists, which are: LocalDefsV as given list for virtual regs LocalDefsP as given list for physical regs, in BitVector[RegUnit] form.

Definition at line 120 of file MachineInstrBundle.cpp.

References llvm::SetVector< T, Vector, Set, N >::contains(), Reg, and TRI.

Referenced by checkLowRegisterList(), and llvm::finalizeBundle().

◆ getDebugLoc()

◆ INITIALIZE_PASS()

INITIALIZE_PASS ( UnpackMachineBundlesLegacy ,
"unpack-mi-bundles" ,
"Unpack machine instruction bundles" ,
false ,
false  )

Definition at line 88 of file MachineInstrBundle.cpp.

References unpackBundles().

◆ unpackBundles()

bool unpackBundles ( MachineFunction & MF,
std::function< bool(const MachineFunction &)> Ftor )
static

Definition at line 28 of file MachineInstrBundle.cpp.

References Changed, MBB, and MI.

Referenced by INITIALIZE_PASS(), and llvm::UnpackMachineBundlesPass::run().