LLVM  8.0.0svn
Classes | Namespaces | Functions | Variables
MIRPrinter.cpp File Reference
#include "llvm/CodeGen/MIRPrinter.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/None.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SmallBitVector.h"
#include "llvm/ADT/SmallPtrSet.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/ADT/Twine.h"
#include "llvm/CodeGen/GlobalISel/RegisterBank.h"
#include "llvm/CodeGen/MIRYamlMapping.h"
#include "llvm/CodeGen/MachineBasicBlock.h"
#include "llvm/CodeGen/MachineConstantPool.h"
#include "llvm/CodeGen/MachineFrameInfo.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/MachineInstr.h"
#include "llvm/CodeGen/MachineJumpTableInfo.h"
#include "llvm/CodeGen/MachineMemOperand.h"
#include "llvm/CodeGen/MachineOperand.h"
#include "llvm/CodeGen/MachineRegisterInfo.h"
#include "llvm/CodeGen/PseudoSourceValue.h"
#include "llvm/CodeGen/TargetInstrInfo.h"
#include "llvm/CodeGen/TargetRegisterInfo.h"
#include "llvm/CodeGen/TargetSubtargetInfo.h"
#include "llvm/IR/BasicBlock.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/DebugInfo.h"
#include "llvm/IR/DebugLoc.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/GlobalValue.h"
#include "llvm/IR/IRPrintingPasses.h"
#include "llvm/IR/InstrTypes.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/Intrinsics.h"
#include "llvm/IR/Module.h"
#include "llvm/IR/ModuleSlotTracker.h"
#include "llvm/IR/Value.h"
#include "llvm/MC/LaneBitmask.h"
#include "llvm/MC/MCContext.h"
#include "llvm/MC/MCDwarf.h"
#include "llvm/MC/MCSymbol.h"
#include "llvm/Support/AtomicOrdering.h"
#include "llvm/Support/BranchProbability.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/Format.h"
#include "llvm/Support/LowLevelTypeImpl.h"
#include "llvm/Support/YAMLTraits.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Target/TargetIntrinsicInfo.h"
#include "llvm/Target/TargetMachine.h"
#include <algorithm>
#include <cassert>
#include <cinttypes>
#include <cstdint>
#include <iterator>
#include <string>
#include <utility>
#include <vector>

Go to the source code of this file.

Classes

class  llvm::MIRPrinter
 This class prints out the machine functions using the MIR serialization format. More...
 
class  llvm::MIPrinter
 This class prints out the machine instructions using the MIR serialization format. More...
 
struct  llvm::yaml::BlockScalarTraits< Module >
 This struct serializes the LLVM IR module. More...
 

Namespaces

 llvm
 Compute iterated dominance frontiers using a linear time algorithm.
 
 llvm::yaml
 

Functions

static void printRegMIR (unsigned Reg, yaml::StringValue &Dest, const TargetRegisterInfo *TRI)
 
static void printCustomRegMask (const uint32_t *RegMask, raw_ostream &OS, const TargetRegisterInfo *TRI)
 
static void printRegClassOrBank (unsigned Reg, yaml::StringValue &Dest, const MachineRegisterInfo &RegInfo, const TargetRegisterInfo *TRI)
 
template<typename T >
static void printStackObjectDbgInfo (const MachineFunction::VariableDbgInfo &DebugVar, T &Object, ModuleSlotTracker &MST)
 

Variables

static cl::opt< boolSimplifyMIR ("simplify-mir", cl::Hidden, cl::desc("Leave out unnecessary information when printing MIR"))
 

Function Documentation

◆ printCustomRegMask()

static void printCustomRegMask ( const uint32_t RegMask,
raw_ostream OS,
const TargetRegisterInfo TRI 
)
static

Definition at line 234 of file MIRPrinter.cpp.

References assert(), E, llvm::MCRegisterInfo::getNumRegs(), I, and llvm::printReg().

Referenced by llvm::MIPrinter::print().

◆ printRegClassOrBank()

static void printRegClassOrBank ( unsigned  Reg,
yaml::StringValue Dest,
const MachineRegisterInfo RegInfo,
const TargetRegisterInfo TRI 
)
static

Definition at line 253 of file MIRPrinter.cpp.

References llvm::printRegClassOrBank(), and llvm::yaml::StringValue::Value.

◆ printRegMIR()

static void printRegMIR ( unsigned  Reg,
yaml::StringValue Dest,
const TargetRegisterInfo TRI 
)
static

◆ printStackObjectDbgInfo()

template<typename T >
static void printStackObjectDbgInfo ( const MachineFunction::VariableDbgInfo DebugVar,
T Object,
ModuleSlotTracker MST 
)
static

Variable Documentation

◆ SimplifyMIR

cl::opt<bool> SimplifyMIR("simplify-mir", cl::Hidden, cl::desc("Leave out unnecessary information when printing MIR"))
static