LLVM  4.0.0
Functions | Variables
MachineInstr.cpp File Reference
#include "llvm/CodeGen/MachineInstr.h"
#include "llvm/ADT/FoldingSet.h"
#include "llvm/ADT/Hashing.h"
#include "llvm/Analysis/AliasAnalysis.h"
#include "llvm/CodeGen/MachineConstantPool.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/MachineInstrBuilder.h"
#include "llvm/CodeGen/MachineMemOperand.h"
#include "llvm/CodeGen/MachineModuleInfo.h"
#include "llvm/CodeGen/MachineRegisterInfo.h"
#include "llvm/CodeGen/PseudoSourceValue.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/DebugInfo.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/InlineAsm.h"
#include "llvm/IR/Intrinsics.h"
#include "llvm/IR/LLVMContext.h"
#include "llvm/IR/Metadata.h"
#include "llvm/IR/Module.h"
#include "llvm/IR/ModuleSlotTracker.h"
#include "llvm/IR/Type.h"
#include "llvm/IR/Value.h"
#include "llvm/MC/MCInstrDesc.h"
#include "llvm/MC/MCSymbol.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/MathExtras.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Target/TargetInstrInfo.h"
#include "llvm/Target/TargetIntrinsicInfo.h"
#include "llvm/Target/TargetMachine.h"
#include "llvm/Target/TargetRegisterInfo.h"
#include "llvm/Target/TargetSubtargetInfo.h"
Include dependency graph for MachineInstr.cpp:

Go to the source code of this file.

Functions

static void moveOperands (MachineOperand *Dst, MachineOperand *Src, unsigned NumOps, MachineRegisterInfo *MRI)
 Move NumOps MachineOperands from Src to Dst, with support for overlapping ranges. More...
 
static bool hasIdenticalMMOs (const MachineInstr &MI1, const MachineInstr &MI2)
 Check to see if the MMOs pointed to by the two MemRefs arrays are identical. More...
 

Variables

static cl::opt< boolPrintWholeRegMask ("print-whole-regmask", cl::desc("Print the full contents of regmask operands in IR dumps"), cl::init(true), cl::Hidden)
 
const unsigned TiedMax = 15
 

Function Documentation

static bool hasIdenticalMMOs ( const MachineInstr MI1,
const MachineInstr MI2 
)
static

Check to see if the MMOs pointed to by the two MemRefs arrays are identical.

Definition at line 929 of file MachineInstr.cpp.

References llvm::MachineInstr::memoperands_begin(), and llvm::MachineInstr::memoperands_end().

Referenced by llvm::MachineInstr::mergeMemRefsWith().

static void moveOperands ( MachineOperand Dst,
MachineOperand Src,
unsigned  NumOps,
MachineRegisterInfo MRI 
)
static

Move NumOps MachineOperands from Src to Dst, with support for overlapping ranges.

If MRI is non-null also update use-def chains.

Definition at line 779 of file MachineInstr.cpp.

Referenced by llvm::MachineInstr::RemoveOperand().

Variable Documentation

cl::opt<bool> PrintWholeRegMask("print-whole-regmask", cl::desc("Print the full contents of regmask operands in IR dumps"), cl::init(true), cl::Hidden)
static
const unsigned TiedMax = 15

Definition at line 1418 of file MachineInstr.cpp.

Referenced by llvm::MachineInstr::tieOperands().