LLVM API Documentation

Namespaces | Defines | Functions | Variables
HexagonISelDAGToDAG.cpp File Reference
#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"
Include dependency graph for HexagonISelDAGToDAG.cpp:

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< unsignedMaxNumOfUsesForConstExtenders ("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 Documentation

#define DEBUG_TYPE   "hexagon-isel"

Definition at line 25 of file HexagonISelDAGToDAG.cpp.


Function Documentation

Definition at line 317 of file HexagonISelDAGToDAG.cpp.

Definition at line 270 of file HexagonISelDAGToDAG.cpp.

static void initializePassOnce ( PassRegistry Registry) [static]
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.


Variable Documentation

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]