LLVM  14.0.0git
Functions
CodeGenCommonISel.cpp File Reference
#include "llvm/CodeGen/CodeGenCommonISel.h"
#include "llvm/Analysis/BranchProbabilityInfo.h"
#include "llvm/CodeGen/MachineBasicBlock.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/TargetInstrInfo.h"
#include "llvm/CodeGen/TargetOpcodes.h"
Include dependency graph for CodeGenCommonISel.cpp:

Go to the source code of this file.

Functions

static bool MIIsInTerminatorSequence (const MachineInstr &MI)
 Given that the input MI is before a partial terminator sequence TSeq, return true if M + TSeq also a partial terminator sequence. More...
 

Function Documentation

◆ MIIsInTerminatorSequence()

static bool MIIsInTerminatorSequence ( const MachineInstr MI)
static

Given that the input MI is before a partial terminator sequence TSeq, return true if M + TSeq also a partial terminator sequence.

A Terminator sequence is a sequence of MachineInstrs which at this point in lowering copy vregs into physical registers, which are then passed into terminator instructors so we can satisfy ABI constraints. A partial terminator sequence is an improper subset of a terminator sequence (i.e. it may be the whole terminator sequence).

Definition at line 50 of file CodeGenCommonISel.cpp.

References assert(), llvm::MachineOperand::getReg(), llvm::MachineOperand::isDef(), llvm::Register::isPhysicalRegister(), llvm::MachineOperand::isReg(), and MI.