LLVM: llvm::PPCSelectionDAGInfo Class Reference (original) (raw)

#include "[Target/PowerPC/PPCSelectionDAGInfo.h](PPCSelectionDAGInfo%5F8h%5Fsource.html)"

Public Member Functions
PPCSelectionDAGInfo ()
~PPCSelectionDAGInfo () override
const char * getTargetNodeName (unsigned Opcode) const override
Returns the name of the given target-specific opcode, suitable for debug printing.
void verifyTargetNode (const SelectionDAG &DAG, const SDNode *N) const override
Checks that the given target-specific node is valid. Aborts if it is not.
std::pair< SDValue, SDValue > EmitTargetCodeForMemcmp (SelectionDAG &DAG, const SDLoc &dl, SDValue Chain, SDValue Op1, SDValue Op2, SDValue Op3, const CallInst *CI) const override
Emit target-specific code that performs a memcmp/bcmp, in cases where that is faster than a libcall.
std::pair< SDValue, SDValue > EmitTargetCodeForStrlen (SelectionDAG &DAG, const SDLoc &DL, SDValue Chain, SDValue Src, const CallInst *CI) const override
Public Member Functions inherited from llvm::SelectionDAGGenTargetInfo
~SelectionDAGGenTargetInfo () override
const char * getTargetNodeName (unsigned Opcode) const override
Returns the name of the given target-specific opcode, suitable for debug printing.
bool isTargetMemoryOpcode (unsigned Opcode) const override
Returns true if a node with the given target-specific opcode has a memory operand.
bool isTargetStrictFPOpcode (unsigned Opcode) const override
Returns true if a node with the given target-specific opcode has strict floating-point semantics.
void verifyTargetNode (const SelectionDAG &DAG, const SDNode *N) const override
Checks that the given target-specific node is valid. Aborts if it is not.
Public Member Functions inherited from llvm::SelectionDAGTargetInfo
SelectionDAGTargetInfo ()=default
SelectionDAGTargetInfo (const SelectionDAGTargetInfo &)=delete
SelectionDAGTargetInfo & operator= (const SelectionDAGTargetInfo &)=delete
virtual ~SelectionDAGTargetInfo ()
virtual bool mayRaiseFPException (unsigned Opcode) const
Returns true if a node with the given target-specific opcode may raise a floating-point exception.
virtual SDValue EmitTargetCodeForMemcpy (SelectionDAG &DAG, const SDLoc &dl, SDValue Chain, SDValue Op1, SDValue Op2, SDValue Op3, Align Alignment, bool isVolatile, bool AlwaysInline, MachinePointerInfo DstPtrInfo, MachinePointerInfo SrcPtrInfo) const
Emit target-specific code that performs a memcpy.
virtual SDValue EmitTargetCodeForMemmove (SelectionDAG &DAG, const SDLoc &dl, SDValue Chain, SDValue Op1, SDValue Op2, SDValue Op3, Align Alignment, bool isVolatile, MachinePointerInfo DstPtrInfo, MachinePointerInfo SrcPtrInfo) const
Emit target-specific code that performs a memmove.
virtual SDValue EmitTargetCodeForMemset (SelectionDAG &DAG, const SDLoc &dl, SDValue Chain, SDValue Op1, SDValue Op2, SDValue Op3, Align Alignment, bool isVolatile, bool AlwaysInline, MachinePointerInfo DstPtrInfo) const
Emit target-specific code that performs a memset.
virtual std::pair< SDValue, SDValue > EmitTargetCodeForMemchr (SelectionDAG &DAG, const SDLoc &dl, SDValue Chain, SDValue Src, SDValue Char, SDValue Length, MachinePointerInfo SrcPtrInfo) const
Emit target-specific code that performs a memchr, in cases where that is faster than a libcall.
virtual std::pair< SDValue, SDValue > EmitTargetCodeForStrcpy (SelectionDAG &DAG, const SDLoc &DL, SDValue Chain, SDValue Dest, SDValue Src, MachinePointerInfo DestPtrInfo, MachinePointerInfo SrcPtrInfo, bool isStpcpy) const
Emit target-specific code that performs a strcpy or stpcpy, in cases where that is faster than a libcall.
virtual std::pair< SDValue, SDValue > EmitTargetCodeForStrcmp (SelectionDAG &DAG, const SDLoc &dl, SDValue Chain, SDValue Op1, SDValue Op2, MachinePointerInfo Op1PtrInfo, MachinePointerInfo Op2PtrInfo) const
Emit target-specific code that performs a strcmp, in cases where that is faster than a libcall.
virtual std::pair< SDValue, SDValue > EmitTargetCodeForStrnlen (SelectionDAG &DAG, const SDLoc &DL, SDValue Chain, SDValue Src, SDValue MaxLength, MachinePointerInfo SrcPtrInfo) const
virtual SDValue EmitTargetCodeForSetTag (SelectionDAG &DAG, const SDLoc &dl, SDValue Chain, SDValue Addr, SDValue Size, MachinePointerInfo DstPtrInfo, bool ZeroData) const
virtual bool disableGenericCombines (CodeGenOptLevel OptLevel) const

Definition at line 64 of file PPCSelectionDAGInfo.h.

PPCSelectionDAGInfo::PPCSelectionDAGInfo ( )

~PPCSelectionDAGInfo()

PPCSelectionDAGInfo::~PPCSelectionDAGInfo ( ) overridedefault

References DL, and N.

EmitTargetCodeForMemcmp()

EmitTargetCodeForStrlen()

getTargetNodeName()

const char * PPCSelectionDAGInfo::getTargetNodeName ( unsigned Opcode) const overridevirtual

Returns the name of the given target-specific opcode, suitable for debug printing.

Reimplemented from llvm::SelectionDAGTargetInfo.

Definition at line 22 of file PPCSelectionDAGInfo.cpp.

References llvm::PPCISD::ANDI_rec_1_EQ_BIT, llvm::PPCISD::ANDI_rec_1_GT_BIT, llvm::PPCISD::BDNZ, llvm::PPCISD::BDZ, llvm::SelectionDAGGenTargetInfo::getTargetNodeName(), llvm::PPCISD::GlobalBaseReg, llvm::PPCISD::MFOCRF, llvm::PPCISD::PPC32_PICGOT, llvm::PPCISD::READ_TIME_BASE, llvm::PPCISD::SRA_ADDZE, and llvm::PPCISD::VADD_SPLAT.

verifyTargetNode()


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