LLVM API Documentation

Classes | Namespaces | Enumerations | Functions
PPCISelLowering.h File Reference
#include "PPC.h"
#include "PPCInstrInfo.h"
#include "PPCRegisterInfo.h"
#include "llvm/CodeGen/CallingConvLower.h"
#include "llvm/CodeGen/SelectionDAG.h"
#include "llvm/Target/TargetLowering.h"
Include dependency graph for PPCISelLowering.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  llvm::PPCTargetLowering

Namespaces

namespace  llvm
 

List of target independent CodeGen pass IDs.


namespace  llvm::PPCISD
namespace  llvm::PPC
 

Define some predicates that are used for node matching.


Enumerations

enum  llvm::PPCISD::NodeType {
  llvm::PPCISD::FIRST_NUMBER = ISD::BUILTIN_OP_END, llvm::PPCISD::FSEL, llvm::PPCISD::FCFID, llvm::PPCISD::FCFIDU,
  llvm::PPCISD::FCFIDS, llvm::PPCISD::FCFIDUS, llvm::PPCISD::FCTIDZ, llvm::PPCISD::FCTIWZ,
  llvm::PPCISD::FCTIDUZ, llvm::PPCISD::FCTIWUZ, llvm::PPCISD::FRE, llvm::PPCISD::FRSQRTE,
  llvm::PPCISD::VMADDFP, llvm::PPCISD::VNMSUBFP, llvm::PPCISD::VPERM, llvm::PPCISD::Hi,
  llvm::PPCISD::Lo, llvm::PPCISD::TOC_ENTRY, llvm::PPCISD::LOAD, llvm::PPCISD::LOAD_TOC,
  llvm::PPCISD::DYNALLOC, llvm::PPCISD::GlobalBaseReg, llvm::PPCISD::SRL, llvm::PPCISD::SRA,
  llvm::PPCISD::SHL, llvm::PPCISD::CALL, llvm::PPCISD::CALL_NOP, llvm::PPCISD::MTCTR,
  llvm::PPCISD::BCTRL, llvm::PPCISD::RET_FLAG, llvm::PPCISD::MFOCRF, llvm::PPCISD::ANDIo_1_EQ_BIT,
  llvm::PPCISD::ANDIo_1_GT_BIT, llvm::PPCISD::EH_SJLJ_SETJMP, llvm::PPCISD::EH_SJLJ_LONGJMP, llvm::PPCISD::VCMP,
  llvm::PPCISD::VCMPo, llvm::PPCISD::COND_BRANCH, llvm::PPCISD::BDNZ, llvm::PPCISD::BDZ,
  llvm::PPCISD::FADDRTZ, llvm::PPCISD::MFFS, llvm::PPCISD::LARX, llvm::PPCISD::STCX,
  llvm::PPCISD::TC_RETURN, llvm::PPCISD::CR6SET, llvm::PPCISD::CR6UNSET, llvm::PPCISD::PPC32_GOT,
  llvm::PPCISD::PPC32_PICGOT, llvm::PPCISD::ADDIS_GOT_TPREL_HA, llvm::PPCISD::LD_GOT_TPREL_L, llvm::PPCISD::ADD_TLS,
  llvm::PPCISD::ADDIS_TLSGD_HA, llvm::PPCISD::ADDI_TLSGD_L, llvm::PPCISD::GET_TLS_ADDR, llvm::PPCISD::ADDIS_TLSLD_HA,
  llvm::PPCISD::ADDI_TLSLD_L, llvm::PPCISD::GET_TLSLD_ADDR, llvm::PPCISD::ADDIS_DTPREL_HA, llvm::PPCISD::ADDI_DTPREL_L,
  llvm::PPCISD::VADD_SPLAT, llvm::PPCISD::SC, llvm::PPCISD::STBRX = ISD::FIRST_TARGET_MEMORY_OPCODE, llvm::PPCISD::LBRX,
  llvm::PPCISD::STFIWX, llvm::PPCISD::LFIWAX, llvm::PPCISD::LFIWZX, llvm::PPCISD::ADDIS_TOC_HA,
  llvm::PPCISD::LD_TOC_L, llvm::PPCISD::ADDI_TOC_L
}

Functions

bool llvm::PPC::isVPKUHUMShuffleMask (ShuffleVectorSDNode *N, unsigned ShuffleKind, SelectionDAG &DAG)
bool llvm::PPC::isVPKUWUMShuffleMask (ShuffleVectorSDNode *N, unsigned ShuffleKind, SelectionDAG &DAG)
bool llvm::PPC::isVMRGLShuffleMask (ShuffleVectorSDNode *N, unsigned UnitSize, unsigned ShuffleKind, SelectionDAG &DAG)
bool llvm::PPC::isVMRGHShuffleMask (ShuffleVectorSDNode *N, unsigned UnitSize, unsigned ShuffleKind, SelectionDAG &DAG)
int llvm::PPC::isVSLDOIShuffleMask (SDNode *N, unsigned ShuffleKind, SelectionDAG &DAG)
bool llvm::PPC::isSplatShuffleMask (ShuffleVectorSDNode *N, unsigned EltSize)
bool llvm::PPC::isAllNegativeZeroVector (SDNode *N)
unsigned llvm::PPC::getVSPLTImmediate (SDNode *N, unsigned EltSize, SelectionDAG &DAG)
SDValue llvm::PPC::get_VSPLTI_elt (SDNode *N, unsigned ByteSize, SelectionDAG &DAG)
FastISelllvm::PPC::createFastISel (FunctionLoweringInfo &FuncInfo, const TargetLibraryInfo *LibInfo)
bool llvm::CC_PPC32_SVR4_Custom_Dummy (unsigned &ValNo, MVT &ValVT, MVT &LocVT, CCValAssign::LocInfo &LocInfo, ISD::ArgFlagsTy &ArgFlags, CCState &State)
bool llvm::CC_PPC32_SVR4_Custom_AlignArgRegs (unsigned &ValNo, MVT &ValVT, MVT &LocVT, CCValAssign::LocInfo &LocInfo, ISD::ArgFlagsTy &ArgFlags, CCState &State)
bool llvm::CC_PPC32_SVR4_Custom_AlignFPArgRegs (unsigned &ValNo, MVT &ValVT, MVT &LocVT, CCValAssign::LocInfo &LocInfo, ISD::ArgFlagsTy &ArgFlags, CCState &State)