LLVM API Documentation
#include "Hexagon.h"
#include "HexagonISelLowering.h"
#include "HexagonTargetMachine.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/CodeGen/SelectionDAGISel.h"
#include "llvm/IR/Intrinsics.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 | |
namespace | llvm |
List of target independent CodeGen pass IDs. | |
Defines | |
#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 25 of file HexagonISelDAGToDAG.cpp.
static unsigned doesIntrinsicContainPredicate | ( | unsigned | ID | ) | [static] |
Definition at line 317 of file HexagonISelDAGToDAG.cpp.
static unsigned doesIntrinsicReturnPredicate | ( | unsigned | ID | ) | [static] |
Definition at line 270 of file HexagonISelDAGToDAG.cpp.
static void initializePassOnce | ( | PassRegistry & | Registry | ) | [static] |
Definition at line 187 of file HexagonISelDAGToDAG.cpp.
References llvm::SelectionDAGISel::ID, Name, and llvm::PassRegistry::registerPass().
Referenced by llvm::initializeHexagonDAGToDAGISelPass().
static bool IsS11_0_Offset | ( | SDNode * | S | ) | [static] |
Definition at line 199 of file HexagonISelDAGToDAG.cpp.
References llvm::ConstantSDNode::getSExtValue(), and N.
static bool IsS11_1_Offset | ( | SDNode * | S | ) | [static] |
Definition at line 209 of file HexagonISelDAGToDAG.cpp.
References llvm::ConstantSDNode::getSExtValue(), and N.
static bool IsS11_2_Offset | ( | SDNode * | S | ) | [static] |
Definition at line 219 of file HexagonISelDAGToDAG.cpp.
References llvm::ConstantSDNode::getSExtValue(), and N.
static bool IsS11_3_Offset | ( | SDNode * | S | ) | [static] |
Definition at line 229 of file HexagonISelDAGToDAG.cpp.
References llvm::ConstantSDNode::getSExtValue(), and N.
static bool IsU6_0_Offset | ( | SDNode * | S | ) | [static] |
Definition at line 239 of file HexagonISelDAGToDAG.cpp.
References llvm::ConstantSDNode::getSExtValue(), and N.
static bool IsU6_1_Offset | ( | SDNode * | S | ) | [static] |
Definition at line 249 of file HexagonISelDAGToDAG.cpp.
References llvm::ConstantSDNode::getSExtValue(), and N.
static bool IsU6_2_Offset | ( | SDNode * | S | ) | [static] |
Definition at line 259 of file HexagonISelDAGToDAG.cpp.
References llvm::ConstantSDNode::getSExtValue(), and N.
static bool OffsetFitsS11 | ( | EVT | MemType, |
int64_t | Offset | ||
) | [static] |
Definition at line 365 of file HexagonISelDAGToDAG.cpp.
References llvm::MVT::i16, llvm::MVT::i32, llvm::MVT::i64, and llvm::MVT::i8.
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")) [static] |