LLVM API Documentation
#include "Hexagon.h"
#include "HexagonISelLowering.h"
#include "HexagonTargetMachine.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/IR/Intrinsics.h"
#include "llvm/CodeGen/SelectionDAGISel.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Compiler.h"
#include "llvm/Support/Debug.h"
#include "HexagonGenDAGISel.inc"
Go to the source code of this file.
Namespaces | |
llvm | |
List of target independent CodeGen pass IDs. | |
Macros | |
#define | DEBUG_TYPE "hexagon-isel" |
Functions | |
void | llvm::initializeHexagonDAGToDAGISelPass (PassRegistry &) |
static void | initializePassOnce (PassRegistry &Registry) |
static bool | IsS11_0_Offset (SDNode *S) |
static bool | IsS11_1_Offset (SDNode *S) |
static bool | IsS11_2_Offset (SDNode *S) |
static bool | IsS11_3_Offset (SDNode *S) |
static bool | IsU6_0_Offset (SDNode *S) |
static bool | IsU6_1_Offset (SDNode *S) |
static bool | IsU6_2_Offset (SDNode *S) |
static unsigned | doesIntrinsicReturnPredicate (unsigned ID) |
static unsigned | doesIntrinsicContainPredicate (unsigned ID) |
static bool | OffsetFitsS11 (EVT MemType, int64_t Offset) |
Variables | |
static cl::opt< unsigned > | MaxNumOfUsesForConstExtenders ("ga-max-num-uses-for-constant-extenders", cl::Hidden, cl::init(2), cl::desc("Maximum number of uses of a global address such that we still us a""constant extended instruction")) |
#define DEBUG_TYPE "hexagon-isel" |
Definition at line 14 of file HexagonISelDAGToDAG.cpp.
Definition at line 316 of file HexagonISelDAGToDAG.cpp.
References llvm::Intrinsic::hexagon_C2_all8, llvm::Intrinsic::hexagon_C2_and, llvm::Intrinsic::hexagon_C2_any8, llvm::Intrinsic::hexagon_C2_mask, llvm::Intrinsic::hexagon_C2_mux, llvm::Intrinsic::hexagon_C2_muxii, llvm::Intrinsic::hexagon_C2_muxir, llvm::Intrinsic::hexagon_C2_muxri, llvm::Intrinsic::hexagon_C2_not, llvm::Intrinsic::hexagon_C2_or, llvm::Intrinsic::hexagon_C2_tfrpr, llvm::Intrinsic::hexagon_C2_vitpack, llvm::Intrinsic::hexagon_C2_vmux, llvm::Intrinsic::hexagon_C2_xor, llvm::Intrinsic::hexagon_S2_valignrb, and llvm::Intrinsic::hexagon_S2_vsplicerb.
Definition at line 269 of file HexagonISelDAGToDAG.cpp.
References llvm::Intrinsic::hexagon_A2_vcmpbeq, llvm::Intrinsic::hexagon_A2_vcmpbgtu, llvm::Intrinsic::hexagon_A2_vcmpheq, llvm::Intrinsic::hexagon_A2_vcmphgt, llvm::Intrinsic::hexagon_A2_vcmphgtu, llvm::Intrinsic::hexagon_A2_vcmpweq, llvm::Intrinsic::hexagon_A2_vcmpwgt, llvm::Intrinsic::hexagon_A2_vcmpwgtu, llvm::Intrinsic::hexagon_C2_all8, llvm::Intrinsic::hexagon_C2_and, llvm::Intrinsic::hexagon_C2_andn, llvm::Intrinsic::hexagon_C2_any8, llvm::Intrinsic::hexagon_C2_bitsclr, llvm::Intrinsic::hexagon_C2_bitsclri, llvm::Intrinsic::hexagon_C2_bitsset, llvm::Intrinsic::hexagon_C2_cmpeq, llvm::Intrinsic::hexagon_C2_cmpeqi, llvm::Intrinsic::hexagon_C2_cmpeqp, llvm::Intrinsic::hexagon_C2_cmpgei, llvm::Intrinsic::hexagon_C2_cmpgeui, llvm::Intrinsic::hexagon_C2_cmpgt, llvm::Intrinsic::hexagon_C2_cmpgti, llvm::Intrinsic::hexagon_C2_cmpgtp, llvm::Intrinsic::hexagon_C2_cmpgtu, llvm::Intrinsic::hexagon_C2_cmpgtui, llvm::Intrinsic::hexagon_C2_cmpgtup, llvm::Intrinsic::hexagon_C2_cmplt, llvm::Intrinsic::hexagon_C2_cmpltu, llvm::Intrinsic::hexagon_C2_not, llvm::Intrinsic::hexagon_C2_or, llvm::Intrinsic::hexagon_C2_orn, llvm::Intrinsic::hexagon_C2_pxfer_map, llvm::Intrinsic::hexagon_C2_tfrrp, llvm::Intrinsic::hexagon_C2_xor, llvm::Intrinsic::hexagon_S2_tstbit_i, and llvm::Intrinsic::hexagon_S2_tstbit_r.
|
static |
Definition at line 186 of file HexagonISelDAGToDAG.cpp.
References llvm::SelectionDAGISel::ID, and llvm::PassRegistry::registerPass().
Referenced by llvm::initializeHexagonDAGToDAGISelPass().
Definition at line 198 of file HexagonISelDAGToDAG.cpp.
References llvm::ConstantSDNode::getSExtValue(), and N.
Definition at line 208 of file HexagonISelDAGToDAG.cpp.
References llvm::ConstantSDNode::getSExtValue(), and N.
Definition at line 218 of file HexagonISelDAGToDAG.cpp.
References llvm::ConstantSDNode::getSExtValue(), and N.
Definition at line 228 of file HexagonISelDAGToDAG.cpp.
References llvm::ConstantSDNode::getSExtValue(), and N.
Definition at line 238 of file HexagonISelDAGToDAG.cpp.
References llvm::ConstantSDNode::getSExtValue(), and N.
Definition at line 248 of file HexagonISelDAGToDAG.cpp.
References llvm::ConstantSDNode::getSExtValue(), and N.
Definition at line 258 of file HexagonISelDAGToDAG.cpp.
References llvm::ConstantSDNode::getSExtValue(), and N.
Definition at line 364 of file HexagonISelDAGToDAG.cpp.
References llvm::MVT::i16, llvm::MVT::i32, llvm::MVT::i64, and llvm::MVT::i8.