LLVM  9.0.0svn
Classes | Namespaces | Functions
Utils.h File Reference
#include "llvm/ADT/StringRef.h"
Include dependency graph for Utils.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  llvm::ValueAndVReg
 Simple struct used to hold a constant integer value and a virtual register. More...
 

Namespaces

 llvm
 This class represents lattice values for constants.
 

Functions

unsigned llvm::constrainRegToClass (MachineRegisterInfo &MRI, const TargetInstrInfo &TII, const RegisterBankInfo &RBI, MachineInstr &InsertPt, unsigned Reg, const TargetRegisterClass &RegClass)
 Try to constrain Reg to the specified register class. More...
 
unsigned llvm::constrainOperandRegClass (const MachineFunction &MF, const TargetRegisterInfo &TRI, MachineRegisterInfo &MRI, const TargetInstrInfo &TII, const RegisterBankInfo &RBI, MachineInstr &InsertPt, const MCInstrDesc &II, const MachineOperand &RegMO, unsigned OpIdx)
 Try to constrain Reg so that it is usable by argument OpIdx of the provided MCInstrDesc II. More...
 
bool llvm::constrainSelectedInstRegOperands (MachineInstr &I, const TargetInstrInfo &TII, const TargetRegisterInfo &TRI, const RegisterBankInfo &RBI)
 Mutate the newly-selected instruction I to constrain its (possibly generic) virtual register operands to the instruction's register class. More...
 
bool llvm::isTriviallyDead (const MachineInstr &MI, const MachineRegisterInfo &MRI)
 Check whether an instruction MI is dead: it only defines dead virtual registers, and doesn't have other side effects. More...
 
void llvm::reportGISelFailure (MachineFunction &MF, const TargetPassConfig &TPC, MachineOptimizationRemarkEmitter &MORE, MachineOptimizationRemarkMissed &R)
 Report an ISel error as a missed optimization remark to the LLVMContext's diagnostic stream. More...
 
void llvm::reportGISelFailure (MachineFunction &MF, const TargetPassConfig &TPC, MachineOptimizationRemarkEmitter &MORE, const char *PassName, StringRef Msg, const MachineInstr &MI)
 
Optional< int64_t > llvm::getConstantVRegVal (unsigned VReg, const MachineRegisterInfo &MRI)
 If VReg is defined by a G_CONSTANT fits in int64_t returns it. More...
 
Optional< ValueAndVRegllvm::getConstantVRegValWithLookThrough (unsigned VReg, const MachineRegisterInfo &MRI, bool LookThroughInstrs=true)
 If VReg is defined by a statically evaluable chain of instructions rooted on a G_CONSTANT (LookThroughInstrs == true) and that constant fits in int64_t, returns its value as well as the virtual register defined by this G_CONSTANT. More...
 
const ConstantFPllvm::getConstantFPVRegVal (unsigned VReg, const MachineRegisterInfo &MRI)
 
MachineInstrllvm::getOpcodeDef (unsigned Opcode, unsigned Reg, const MachineRegisterInfo &MRI)
 See if Reg is defined by an single def instruction that is Opcode. More...
 
APFloat llvm::getAPFloatFromSize (double Val, unsigned Size)
 Returns an APFloat from Val converted to the appropriate size. More...
 
void llvm::getSelectionDAGFallbackAnalysisUsage (AnalysisUsage &AU)
 Modify analysis usage so it preserves passes required for the SelectionDAG fallback. More...
 
Optional< APIntllvm::ConstantFoldBinOp (unsigned Opcode, const unsigned Op1, const unsigned Op2, const MachineRegisterInfo &MRI)