#include "Mips16ISelDAGToDAG.h"
#include "MCTargetDesc/MipsBaseInfo.h"
#include "Mips.h"
#include "MipsMachineFunction.h"
#include "MipsRegisterInfo.h"
#include "llvm/CodeGen/MachineConstantPool.h"
#include "llvm/CodeGen/MachineFrameInfo.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/MachineInstrBuilder.h"
#include "llvm/CodeGen/MachineRegisterInfo.h"
#include "llvm/CodeGen/SelectionDAGNodes.h"
#include "llvm/IR/CFG.h"
#include "llvm/IR/GlobalValue.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/Intrinsics.h"
#include "llvm/IR/Type.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Target/TargetMachine.h"
usingnamespacellvm;
#define DEBUG_TYPE …
bool Mips16DAGToDAGISel::runOnMachineFunction(MachineFunction &MF) { … }
std::pair<SDNode *, SDNode *>
Mips16DAGToDAGISel::selectMULT(SDNode *N, unsigned Opc, const SDLoc &DL, EVT Ty,
bool HasLo, bool HasHi) { … }
void Mips16DAGToDAGISel::initGlobalBaseReg(MachineFunction &MF) { … }
void Mips16DAGToDAGISel::processFunctionAfterISel(MachineFunction &MF) { … }
bool Mips16DAGToDAGISel::selectAddr(bool SPAllowed, SDValue Addr, SDValue &Base,
SDValue &Offset) { … }
bool Mips16DAGToDAGISel::selectAddr16(SDValue Addr, SDValue &Base,
SDValue &Offset) { … }
bool Mips16DAGToDAGISel::selectAddr16SP(SDValue Addr, SDValue &Base,
SDValue &Offset) { … }
bool Mips16DAGToDAGISel::trySelect(SDNode *Node) { … }
Mips16DAGToDAGISelLegacy::Mips16DAGToDAGISelLegacy(MipsTargetMachine &TM,
CodeGenOptLevel OL)
: … { … }
FunctionPass *llvm::createMips16ISelDag(MipsTargetMachine &TM,
CodeGenOptLevel OptLevel) { … }