LLVM API Documentation

llvm::LSBaseSDNode Class Reference

#include <SelectionDAGNodes.h>

Inheritance diagram for llvm::LSBaseSDNode:
[legend]
Collaboration diagram for llvm::LSBaseSDNode:
[legend]

List of all members.

Public Member Functions

 LSBaseSDNode (ISD::NodeType NodeTy, SDValue *Operands, unsigned numOperands, SDVTList VTs, ISD::MemIndexedMode AM, MVT VT, const Value *SV, int SVO, unsigned Align, bool Vol)
 LSBaseSDNode (ISD::NodeType NodeTy, DebugLoc dl, SDValue *Operands, unsigned numOperands, SDVTList VTs, ISD::MemIndexedMode AM, MVT VT, const Value *SV, int SVO, unsigned Align, bool Vol)
const SDValue & getOffset () const
ISD::MemIndexedMode getAddressingMode () const
bool isIndexed () const
 isIndexed - Return true if this is a pre/post inc/dec load/store.
bool isUnindexed () const
 isUnindexed - Return true if this is NOT a pre/post inc/dec load/store.

Static Public Member Functions

static bool classof (const LSBaseSDNode *)
static bool classof (const SDNode *N)

Protected Attributes

SDUse Ops [4]
 Operand array for load and store.


Detailed Description

LSBaseSDNode - Base class for LoadSDNode and StoreSDNode

Definition at line 2343 of file SelectionDAGNodes.h.


Constructor & Destructor Documentation

llvm::LSBaseSDNode::LSBaseSDNode ( ISD::NodeType  NodeTy,
SDValue *  Operands,
unsigned  numOperands,
SDVTList  VTs,
ISD::MemIndexedMode  AM,
MVT  VT,
const Value *  SV,
int  SVO,
unsigned  Align,
bool  Vol 
) [inline]

Definition at line 2353 of file SelectionDAGNodes.h.

References llvm::SDValue::getOpcode(), and llvm::ISD::UNDEF.

llvm::LSBaseSDNode::LSBaseSDNode ( ISD::NodeType  NodeTy,
DebugLoc  dl,
SDValue *  Operands,
unsigned  numOperands,
SDVTList  VTs,
ISD::MemIndexedMode  AM,
MVT  VT,
const Value *  SV,
int  SVO,
unsigned  Align,
bool  Vol 
) [inline]

Definition at line 2364 of file SelectionDAGNodes.h.

References llvm::SDValue::getOpcode(), and llvm::ISD::UNDEF.


Member Function Documentation

const SDValue& llvm::LSBaseSDNode::getOffset (  )  const [inline]

ISD::MemIndexedMode llvm::LSBaseSDNode::getAddressingMode (  )  const [inline]

getAddressingMode - Return the addressing mode for this load or store: unindexed, pre-inc, pre-dec, post-inc, or post-dec.

Definition at line 2382 of file SelectionDAGNodes.h.

Referenced by isCalleeLoad(), llvm::ISD::isNormalLoad(), llvm::ISD::isNormalStore(), isRMWLoad(), LowerLOAD(), and LowerSTORE().

bool llvm::LSBaseSDNode::isIndexed (  )  const [inline]

isIndexed - Return true if this is a pre/post inc/dec load/store.

Definition at line 2387 of file SelectionDAGNodes.h.

References llvm::ISD::UNINDEXED.

bool llvm::LSBaseSDNode::isUnindexed (  )  const [inline]

isUnindexed - Return true if this is NOT a pre/post inc/dec load/store.

Definition at line 2390 of file SelectionDAGNodes.h.

References llvm::ISD::UNINDEXED.

Referenced by llvm::TargetLowering::SimplifySetCC().

static bool llvm::LSBaseSDNode::classof ( const LSBaseSDNode *   )  [inline, static]

Definition at line 2392 of file SelectionDAGNodes.h.

static bool llvm::LSBaseSDNode::classof ( const SDNode *  N  )  [inline, static]

Reimplemented from llvm::MemSDNode.

Reimplemented in llvm::LoadSDNode, and llvm::StoreSDNode.

Definition at line 2393 of file SelectionDAGNodes.h.

References llvm::SDNode::getOpcode(), llvm::ISD::LOAD, and llvm::ISD::STORE.


Member Data Documentation

Operand array for load and store.

Note:
Moving this array to the base class captures more common functionality shared between LoadSDNode and StoreSDNode

Definition at line 2351 of file SelectionDAGNodes.h.


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