LLVM API Documentation
#include <IA64ISelLowering.h>
Public Member Functions | |
| IA64TargetLowering (TargetMachine &TM) | |
| const char * | getTargetNodeName (unsigned Opcode) const |
| virtual MVT | getSetCCResultType (MVT VT) const |
| getSetCCResultType: return ISD::SETCC's result type. | |
| virtual void | LowerArguments (Function &F, SelectionDAG &DAG, SmallVectorImpl< SDValue > &ArgValues, DebugLoc dl) |
| virtual std::pair< SDValue, SDValue > | LowerCallTo (SDValue Chain, const Type *RetTy, bool RetSExt, bool RetZExt, bool isVarArg, bool isInreg, unsigned CC, bool isTailCall, SDValue Callee, ArgListTy &Args, SelectionDAG &DAG, DebugLoc dl) |
| virtual SDValue | LowerOperation (SDValue Op, SelectionDAG &DAG) |
Public Attributes | |
| unsigned | VirtGPR |
Definition at line 40 of file IA64ISelLowering.h.
| IA64TargetLowering::IA64TargetLowering | ( | TargetMachine & | TM | ) | [explicit] |
Definition at line 26 of file IA64ISelLowering.cpp.
References llvm::TargetLowering::addLegalFPImmediate(), llvm::TargetLowering::addRegisterClass(), llvm::lltok::APFloat, llvm::ISD::BR_CC, llvm::ISD::BR_JT, llvm::ISD::BRIND, llvm::ISD::BSWAP, llvm::TargetLowering::computeRegisterProperties(), llvm::ISD::CTLZ, llvm::ISD::CTTZ, llvm::TargetLowering::Custom, llvm::ISD::DBG_LABEL, llvm::ISD::DBG_STOPPOINT, llvm::ISD::DEBUG_LOC, llvm::ISD::DYNAMIC_STACKALLOC, llvm::ISD::EH_LABEL, llvm::TargetLowering::Expand, llvm::ISD::EXTLOAD, llvm::MVT::f32, llvm::MVT::f64, llvm::ISD::FCOPYSIGN, llvm::ISD::FCOS, llvm::ISD::FP_ROUND_INREG, llvm::ISD::FPOW, llvm::ISD::FREM, llvm::ISD::FSIN, llvm::ISD::FSQRT, llvm::ISD::GlobalTLSAddress, llvm::MVT::i1, llvm::MVT::i16, llvm::MVT::i32, llvm::MVT::i64, llvm::MVT::i8, llvm::ISD::MEMBARRIER, llvm::MVT::Other, llvm::TargetLowering::Promote, llvm::ISD::RET, llvm::ISD::ROTL, llvm::ISD::ROTR, llvm::ISD::SELECT_CC, llvm::TargetLowering::setJumpBufAlignment(), llvm::TargetLowering::setJumpBufSize(), llvm::TargetLowering::setLoadExtAction(), llvm::TargetLowering::setOperationAction(), llvm::TargetLowering::setShiftAmountType(), llvm::TargetLowering::setStackPointerRegisterToSaveRestore(), llvm::ISD::SEXTLOAD, llvm::ISD::SIGN_EXTEND_INREG, llvm::ISD::SINT_TO_FP, llvm::ISD::STACKRESTORE, llvm::ISD::STACKSAVE, llvm::ISD::UINT_TO_FP, llvm::ISD::UREM, llvm::ISD::VAARG, llvm::ISD::VACOPY, llvm::ISD::VAEND, llvm::ISD::VASTART, and llvm::ISD::ZEXTLOAD.
| const char * IA64TargetLowering::getTargetNodeName | ( | unsigned | Opcode | ) | const [virtual] |
getTargetNodeName() - This method returns the name of a target specific DAG node.
Reimplemented from llvm::TargetLowering.
Definition at line 134 of file IA64ISelLowering.cpp.
References llvm::IA64ISD::BRCALL, llvm::IA64ISD::GETFD, and llvm::IA64ISD::RET_FLAG.
getSetCCResultType: return ISD::SETCC's result type.
Reimplemented from llvm::TargetLowering.
Definition at line 143 of file IA64ISelLowering.cpp.
References llvm::MVT::i1.
| void IA64TargetLowering::LowerArguments | ( | Function & | F, | |
| SelectionDAG & | DAG, | |||
| SmallVectorImpl< SDValue > & | ArgValues, | |||
| DebugLoc | dl | |||
| ) | [virtual] |
LowerArguments - This hook must be implemented to indicate how we should lower the arguments for the specified function, into the specified DAG.
Reimplemented from llvm::TargetLowering.
Definition at line 147 of file IA64ISelLowering.cpp.
References llvm::MachineRegisterInfo::addLiveIn(), llvm::MachineRegisterInfo::addLiveOut(), llvm::Function::arg_begin(), llvm::Function::arg_end(), BB, llvm::BuildMI(), llvm::MachineFrameInfo::CreateFixedObject(), llvm::MachineRegisterInfo::createVirtualRegister(), E, llvm::MVT::f32, llvm::MVT::f64, FI, llvm::Type::FloatTy, llvm::ISD::FP_ROUND, llvm::MachineFunction::front(), llvm::TargetInstrInfo::get(), llvm::SelectionDAG::getCopyFromReg(), llvm::SelectionDAG::getEntryNode(), llvm::SelectionDAG::getFrameIndex(), llvm::MachineFunction::getFrameInfo(), llvm::TargetMachine::getInstrInfo(), llvm::SelectionDAG::getIntPtrConstant(), llvm::SelectionDAG::getLoad(), llvm::SelectionDAG::getMachineFunction(), llvm::SelectionDAG::getNode(), llvm::TargetLowering::getRegClassFor(), llvm::MachineFunction::getRegInfo(), llvm::Function::getReturnType(), llvm::SelectionDAG::getRoot(), llvm::TargetLowering::getTargetMachine(), llvm::SDValue::getValue(), llvm::TargetLowering::getValueType(), llvm::MVT::i1, llvm::MVT::i16, llvm::MVT::i32, llvm::MVT::i64, llvm::MVT::i8, llvm::Function::isVarArg(), llvm::MVT::isVoid, MF, MFI, llvm::SmallVectorImpl< T >::push_back(), llvm::SelectionDAG::setRoot(), TII, llvm::ISD::TRUNCATE, and VirtGPR.
| std::pair< SDValue, SDValue > IA64TargetLowering::LowerCallTo | ( | SDValue | Chain, | |
| const Type * | RetTy, | |||
| bool | RetSExt, | |||
| bool | RetZExt, | |||
| bool | isVarArg, | |||
| bool | isInreg, | |||
| unsigned | CC, | |||
| bool | isTailCall, | |||
| SDValue | Callee, | |||
| ArgListTy & | Args, | |||
| SelectionDAG & | DAG, | |||
| DebugLoc | dl | |||
| ) | [virtual] |
LowerCallTo - This hook lowers an abstract call to a function into an actual call.
Definition at line 307 of file IA64ISelLowering.cpp.
References llvm::ISD::ADD, llvm::ISD::ANY_EXTEND, llvm::IA64ISD::BRCALL, llvm::MVT::f32, llvm::MVT::f64, llvm::MVT::Flag, llvm::ISD::FP_EXTEND, llvm::ISD::FP_ROUND, llvm::SelectionDAG::getCALLSEQ_END(), llvm::SelectionDAG::getCALLSEQ_START(), llvm::SelectionDAG::getConstant(), llvm::SelectionDAG::getCopyFromReg(), llvm::SelectionDAG::getCopyToReg(), llvm::IA64ISD::GETFD, llvm::MachineFunction::getInfo(), llvm::SelectionDAG::getIntPtrConstant(), llvm::SelectionDAG::getMachineFunction(), llvm::SDValue::getNode(), llvm::SelectionDAG::getNode(), llvm::TargetLowering::getPointerTy(), llvm::SelectionDAG::getRegister(), llvm::SelectionDAG::getSetCC(), llvm::MVT::getSimpleVT(), llvm::SelectionDAG::getStore(), llvm::SDValue::getValue(), llvm::TargetLowering::getValueType(), llvm::SDValue::getValueType(), llvm::MVT::i1, llvm::MVT::i16, llvm::MVT::i32, llvm::MVT::i64, llvm::MVT::i8, llvm::MVT::isFloatingPoint(), llvm::MVT::isVoid, MF, llvm::MVT::Other, llvm::ISD::SETNE, llvm::ISD::SIGN_EXTEND, llvm::ISD::TokenFactor, llvm::ISD::TRUNCATE, Val, and llvm::ISD::ZERO_EXTEND.
| SDValue IA64TargetLowering::LowerOperation | ( | SDValue | Op, | |
| SelectionDAG & | DAG | |||
| ) | [virtual] |
LowerOperation - for custom lowering specific ops (currently, only "ret void")
Reimplemented from llvm::TargetLowering.
Definition at line 556 of file IA64ISelLowering.cpp.
References llvm::ISD::ADD, llvm::ISD::FRAMEADDR, llvm::SelectionDAG::getConstant(), llvm::SelectionDAG::getCopyFromReg(), llvm::SelectionDAG::getCopyToReg(), llvm::SelectionDAG::getFrameIndex(), llvm::SelectionDAG::getLoad(), llvm::SelectionDAG::getNode(), llvm::SDValue::getNumOperands(), llvm::SDValue::getOpcode(), llvm::SDValue::getOperand(), llvm::TargetLowering::getPointerTy(), llvm::MVT::getSizeInBits(), llvm::SelectionDAG::getStore(), llvm::SDValue::getValue(), llvm::SDValue::getValueType(), llvm::ISD::GlobalTLSAddress, llvm::MVT::i64, llvm::MVT::isInteger(), llvm::MVT::Other, llvm::ISD::RET, llvm::IA64ISD::RET_FLAG, llvm::ISD::RETURNADDR, llvm::ISD::VAARG, llvm::ISD::VASTART, VirtGPR, and VT.
Definition at line 47 of file IA64ISelLowering.h.
Referenced by LowerArguments(), and LowerOperation().