LLVM  6.0.0svn
Classes | Namespaces | Enumerations | Functions
ARMISelLowering.h File Reference
#include "MCTargetDesc/ARMBaseInfo.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/CodeGen/CallingConvLower.h"
#include "llvm/CodeGen/ISDOpcodes.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/MachineValueType.h"
#include "llvm/CodeGen/SelectionDAGNodes.h"
#include "llvm/CodeGen/ValueTypes.h"
#include "llvm/IR/Attributes.h"
#include "llvm/IR/CallingConv.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/IRBuilder.h"
#include "llvm/IR/InlineAsm.h"
#include "llvm/Support/CodeGen.h"
#include "llvm/Target/TargetLowering.h"
#include <utility>
Include dependency graph for ARMISelLowering.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  llvm::ARMTargetLowering
 

Namespaces

 llvm
 Compute iterated dominance frontiers using a linear time algorithm.
 
 llvm::ARMISD
 
 llvm::ARM
 Define some predicates that are used for node matching.
 

Enumerations

enum  llvm::ARMISD::NodeType : unsigned {
  llvm::ARMISD::FIRST_NUMBER = ISD::BUILTIN_OP_END, llvm::ARMISD::Wrapper, llvm::ARMISD::WrapperPIC, llvm::ARMISD::WrapperJT,
  llvm::ARMISD::COPY_STRUCT_BYVAL, llvm::ARMISD::CALL, llvm::ARMISD::CALL_PRED, llvm::ARMISD::CALL_NOLINK,
  llvm::ARMISD::BRCOND, llvm::ARMISD::BR_JT, llvm::ARMISD::BR2_JT, llvm::ARMISD::RET_FLAG,
  llvm::ARMISD::INTRET_FLAG, llvm::ARMISD::PIC_ADD, llvm::ARMISD::CMP, llvm::ARMISD::CMN,
  llvm::ARMISD::CMPZ, llvm::ARMISD::CMPFP, llvm::ARMISD::CMPFPw0, llvm::ARMISD::FMSTAT,
  llvm::ARMISD::CMOV, llvm::ARMISD::SSAT, llvm::ARMISD::BCC_i64, llvm::ARMISD::SRL_FLAG,
  llvm::ARMISD::SRA_FLAG, llvm::ARMISD::RRX, llvm::ARMISD::ADDC, llvm::ARMISD::ADDE,
  llvm::ARMISD::SUBC, llvm::ARMISD::SUBE, llvm::ARMISD::VMOVRRD, llvm::ARMISD::VMOVDRR,
  llvm::ARMISD::EH_SJLJ_SETJMP, llvm::ARMISD::EH_SJLJ_LONGJMP, llvm::ARMISD::EH_SJLJ_SETUP_DISPATCH, llvm::ARMISD::TC_RETURN,
  llvm::ARMISD::THREAD_POINTER, llvm::ARMISD::DYN_ALLOC, llvm::ARMISD::MEMBARRIER_MCR, llvm::ARMISD::PRELOAD,
  llvm::ARMISD::WIN__CHKSTK, llvm::ARMISD::WIN__DBZCHK, llvm::ARMISD::VCEQ, llvm::ARMISD::VCEQZ,
  llvm::ARMISD::VCGE, llvm::ARMISD::VCGEZ, llvm::ARMISD::VCLEZ, llvm::ARMISD::VCGEU,
  llvm::ARMISD::VCGT, llvm::ARMISD::VCGTZ, llvm::ARMISD::VCLTZ, llvm::ARMISD::VCGTU,
  llvm::ARMISD::VTST, llvm::ARMISD::VSHL, llvm::ARMISD::VSHRs, llvm::ARMISD::VSHRu,
  llvm::ARMISD::VRSHRs, llvm::ARMISD::VRSHRu, llvm::ARMISD::VRSHRN, llvm::ARMISD::VQSHLs,
  llvm::ARMISD::VQSHLu, llvm::ARMISD::VQSHLsu, llvm::ARMISD::VQSHRNs, llvm::ARMISD::VQSHRNu,
  llvm::ARMISD::VQSHRNsu, llvm::ARMISD::VQRSHRNs, llvm::ARMISD::VQRSHRNu, llvm::ARMISD::VQRSHRNsu,
  llvm::ARMISD::VSLI, llvm::ARMISD::VSRI, llvm::ARMISD::VGETLANEu, llvm::ARMISD::VGETLANEs,
  llvm::ARMISD::VMOVIMM, llvm::ARMISD::VMVNIMM, llvm::ARMISD::VMOVFPIMM, llvm::ARMISD::VDUP,
  llvm::ARMISD::VDUPLANE, llvm::ARMISD::VEXT, llvm::ARMISD::VREV64, llvm::ARMISD::VREV32,
  llvm::ARMISD::VREV16, llvm::ARMISD::VZIP, llvm::ARMISD::VUZP, llvm::ARMISD::VTRN,
  llvm::ARMISD::VTBL1, llvm::ARMISD::VTBL2, llvm::ARMISD::VMULLs, llvm::ARMISD::VMULLu,
  llvm::ARMISD::SMULWB, llvm::ARMISD::SMULWT, llvm::ARMISD::UMLAL, llvm::ARMISD::SMLAL,
  llvm::ARMISD::UMAAL, llvm::ARMISD::SMLALBB, llvm::ARMISD::SMLALBT, llvm::ARMISD::SMLALTB,
  llvm::ARMISD::SMLALTT, llvm::ARMISD::SMLALD, llvm::ARMISD::SMLALDX, llvm::ARMISD::SMLSLD,
  llvm::ARMISD::SMLSLDX, llvm::ARMISD::BUILD_VECTOR, llvm::ARMISD::BFI, llvm::ARMISD::VORRIMM,
  llvm::ARMISD::VBICIMM, llvm::ARMISD::VBSL, llvm::ARMISD::MEMCPY, llvm::ARMISD::VLD1DUP = ISD::FIRST_TARGET_MEMORY_OPCODE,
  llvm::ARMISD::VLD2DUP, llvm::ARMISD::VLD3DUP, llvm::ARMISD::VLD4DUP, llvm::ARMISD::VLD1_UPD,
  llvm::ARMISD::VLD2_UPD, llvm::ARMISD::VLD3_UPD, llvm::ARMISD::VLD4_UPD, llvm::ARMISD::VLD2LN_UPD,
  llvm::ARMISD::VLD3LN_UPD, llvm::ARMISD::VLD4LN_UPD, llvm::ARMISD::VLD1DUP_UPD, llvm::ARMISD::VLD2DUP_UPD,
  llvm::ARMISD::VLD3DUP_UPD, llvm::ARMISD::VLD4DUP_UPD, llvm::ARMISD::VST1_UPD, llvm::ARMISD::VST2_UPD,
  llvm::ARMISD::VST3_UPD, llvm::ARMISD::VST4_UPD, llvm::ARMISD::VST2LN_UPD, llvm::ARMISD::VST3LN_UPD,
  llvm::ARMISD::VST4LN_UPD
}
 
enum  llvm::NEONModImmType { llvm::VMOVModImm, llvm::VMVNModImm, llvm::OtherModImm }
 

Functions

bool llvm::ARM::isBitFieldInvertedMask (unsigned v)
 
FastISelllvm::ARM::createFastISel (FunctionLoweringInfo &funcInfo, const TargetLibraryInfo *libInfo)