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

Public Member Functions

VESelectionDAGInfo ()

~VESelectionDAGInfo () 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.

Public Member Functions inherited from llvm::SelectionDAGGenTargetInfo

~SelectionDAGGenTargetInfo () override

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.

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 >

EmitTargetCodeForMemcmp (SelectionDAG &DAG, const SDLoc &dl, SDValue Chain, SDValue Op1, SDValue Op2, SDValue Op3, const CallInst *CI) const

Emit target-specific code that performs a memcmp/bcmp, in cases where that is faster than a libcall.

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 >

EmitTargetCodeForStrlen (SelectionDAG &DAG, const SDLoc &DL, SDValue Chain, SDValue Src, const CallInst *CI) const

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 31 of file VESelectionDAGInfo.h.