LLVM API Documentation

Public Member Functions
llvm::XCoreTargetLowering Class Reference

#include <XCoreISelLowering.h>

Inheritance diagram for llvm::XCoreTargetLowering:
Inheritance graph
[legend]
Collaboration diagram for llvm::XCoreTargetLowering:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 XCoreTargetLowering (XCoreTargetMachine &TM)
virtual unsigned getJumpTableEncoding () const
virtual MVT getScalarShiftAmountTy (EVT LHSTy) const
virtual SDValue LowerOperation (SDValue Op, SelectionDAG &DAG) const
 LowerOperation - Provide custom lowering hooks for some operations.
virtual void ReplaceNodeResults (SDNode *N, SmallVectorImpl< SDValue > &Results, SelectionDAG &DAG) const
virtual const char * getTargetNodeName (unsigned Opcode) const
 getTargetNodeName - This method returns the name of a target specific
virtual MachineBasicBlockEmitInstrWithCustomInserter (MachineInstr *MI, MachineBasicBlock *MBB) const
virtual bool isLegalAddressingMode (const AddrMode &AM, Type *Ty) const

Detailed Description

Definition at line 80 of file XCoreISelLowering.h.


Constructor & Destructor Documentation

XCoreTargetLowering::XCoreTargetLowering ( XCoreTargetMachine TM) [explicit]

Definition at line 66 of file XCoreISelLowering.cpp.

References llvm::ISD::ADD, llvm::ISD::ADDC, llvm::ISD::ADDE, llvm::TargetLoweringBase::addRegisterClass(), llvm::ISD::ADJUST_TRAMPOLINE, llvm::ISD::BlockAddress, llvm::ISD::BR_CC, llvm::ISD::BR_JT, llvm::TargetLoweringBase::computeRegisterProperties(), llvm::ISD::ConstantPool, llvm::ISD::CTLZ_ZERO_UNDEF, llvm::ISD::CTPOP, llvm::ISD::CTTZ_ZERO_UNDEF, llvm::TargetLoweringBase::Custom, llvm::ISD::DYNAMIC_STACKALLOC, llvm::TargetLoweringBase::Expand, llvm::ISD::EXTLOAD, llvm::ISD::GlobalAddress, llvm::MVT::i1, llvm::MVT::i16, llvm::MVT::i32, llvm::MVT::i64, llvm::MVT::i8, llvm::ISD::INIT_TRAMPOLINE, llvm::ISD::INTRINSIC_WO_CHAIN, llvm::TargetLoweringBase::Legal, llvm::ISD::LOAD, llvm::TargetLoweringBase::MaxStoresPerMemcpy, llvm::TargetLoweringBase::MaxStoresPerMemcpyOptSize, llvm::TargetLoweringBase::MaxStoresPerMemmove, llvm::TargetLoweringBase::MaxStoresPerMemmoveOptSize, llvm::TargetLoweringBase::MaxStoresPerMemset, llvm::TargetLoweringBase::MaxStoresPerMemsetOptSize, llvm::ISD::MULHS, llvm::ISD::MULHU, llvm::MVT::Other, llvm::TargetLoweringBase::Promote, llvm::Sched::RegPressure, llvm::ISD::ROTL, llvm::ISD::ROTR, llvm::ISD::SELECT_CC, llvm::TargetLoweringBase::setBooleanContents(), llvm::TargetLoweringBase::setBooleanVectorContents(), llvm::TargetLoweringBase::setIntDivIsCheap(), llvm::TargetLoweringBase::setLoadExtAction(), llvm::TargetLoweringBase::setMinFunctionAlignment(), llvm::TargetLoweringBase::setOperationAction(), llvm::TargetLoweringBase::setSchedulingPreference(), llvm::TargetLoweringBase::setStackPointerRegisterToSaveRestore(), llvm::TargetLoweringBase::setTargetDAGCombine(), llvm::ISD::SEXTLOAD, llvm::ISD::SHL_PARTS, llvm::ISD::SMUL_LOHI, llvm::ISD::SRA_PARTS, llvm::ISD::SRL_PARTS, llvm::ISD::STACKRESTORE, llvm::ISD::STACKSAVE, llvm::ISD::STORE, llvm::ISD::SUB, llvm::ISD::SUBC, llvm::ISD::SUBE, llvm::ISD::TRAP, llvm::ISD::UMUL_LOHI, llvm::ISD::VAARG, llvm::ISD::VACOPY, llvm::ISD::VAEND, llvm::ISD::VASTART, llvm::TargetLoweringBase::ZeroOrOneBooleanContent, and llvm::ISD::ZEXTLOAD.


Member Function Documentation

MachineBasicBlock * XCoreTargetLowering::EmitInstrWithCustomInserter ( MachineInstr MI,
MachineBasicBlock MBB 
) const [virtual]
unsigned XCoreTargetLowering::getJumpTableEncoding ( ) const [virtual]

getJumpTableEncoding - Return the entry encoding for a jump table in the current function. The returned value is a member of the MachineJumpTableInfo::JTEntryKind enum.

Reimplemented from llvm::TargetLowering.

Definition at line 296 of file XCoreISelLowering.cpp.

References llvm::MachineJumpTableInfo::EK_Inline.

virtual MVT llvm::XCoreTargetLowering::getScalarShiftAmountTy ( EVT  LHSTy) const [inline, virtual]

Reimplemented from llvm::TargetLoweringBase.

Definition at line 87 of file XCoreISelLowering.h.

References llvm::MVT::i32.

const char * XCoreTargetLowering::getTargetNodeName ( unsigned  Opcode) const [virtual]
bool XCoreTargetLowering::isLegalAddressingMode ( const AddrMode AM,
Type Ty 
) const [virtual]
SDValue XCoreTargetLowering::LowerOperation ( SDValue  Op,
SelectionDAG DAG 
) const [virtual]
void XCoreTargetLowering::ReplaceNodeResults ( SDNode N,
SmallVectorImpl< SDValue > &  Results,
SelectionDAG DAG 
) const [virtual]

ReplaceNodeResults - Replace the results of node with an illegal result type with new values built out of custom code.

Reimplemented from llvm::TargetLowering.

Definition at line 198 of file XCoreISelLowering.cpp.

References llvm::ISD::ADD, llvm::SDNode::getOpcode(), llvm_unreachable, llvm::SmallVectorTemplateBase< T, isPodLike >::push_back(), and llvm::ISD::SUB.


The documentation for this class was generated from the following files: