LLVM  8.0.0svn
Namespaces | Macros | Functions | Variables
HexagonSplitDouble.cpp File Reference
#include "HexagonInstrInfo.h"
#include "HexagonRegisterInfo.h"
#include "HexagonSubtarget.h"
#include "llvm/ADT/BitVector.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/CodeGen/MachineBasicBlock.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/MachineFunctionPass.h"
#include "llvm/CodeGen/MachineInstr.h"
#include "llvm/CodeGen/MachineInstrBuilder.h"
#include "llvm/CodeGen/MachineLoopInfo.h"
#include "llvm/CodeGen/MachineMemOperand.h"
#include "llvm/CodeGen/MachineOperand.h"
#include "llvm/CodeGen/MachineRegisterInfo.h"
#include "llvm/CodeGen/TargetRegisterInfo.h"
#include "llvm/Config/llvm-config.h"
#include "llvm/IR/DebugLoc.h"
#include "llvm/Pass.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Compiler.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/raw_ostream.h"
#include <algorithm>
#include <cassert>
#include <cstdint>
#include <limits>
#include <map>
#include <set>
#include <utility>
#include <vector>
Include dependency graph for HexagonSplitDouble.cpp:

Go to the source code of this file.

Namespaces

 llvm
 Compute iterated dominance frontiers using a linear time algorithm.
 

Macros

#define DEBUG_TYPE   "hsdr"
 

Functions

FunctionPassllvm::createHexagonSplitDoubleRegs ()
 
void llvm::initializeHexagonSplitDoubleRegsPass (PassRegistry &)
 
 INITIALIZE_PASS (HexagonSplitDoubleRegs, "hexagon-split-double", "Hexagon Split Double Registers", false, false) LLVM_DUMP_METHOD void HexagonSplitDoubleRegs
 
static int32_t profitImm (unsigned Imm)
 

Variables

static cl::opt< int > MaxHSDR ("max-hsdr", cl::Hidden, cl::init(-1), cl::desc("Maximum number of split partitions"))
 
static cl::opt< boolMemRefsFixed ("hsdr-no-mem", cl::Hidden, cl::init(true), cl::desc("Do not split loads or stores"))
 
static cl::opt< boolSplitAll ("hsdr-split-all", cl::Hidden, cl::init(false), cl::desc("Split all partitions"))
 

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "hsdr"

Definition at line 10 of file HexagonSplitDouble.cpp.

Function Documentation

◆ INITIALIZE_PASS()

INITIALIZE_PASS ( HexagonSplitDoubleRegs  ,
"hexagon-split-double"  ,
"Hexagon Split Double Registers"  ,
false  ,
false   
)

◆ profitImm()

static int32_t profitImm ( unsigned  Imm)
inlinestatic

Variable Documentation

◆ MaxHSDR

cl::opt<int> MaxHSDR("max-hsdr", cl::Hidden, cl::init(-1), cl::desc("Maximum number of split partitions"))
static

◆ MemRefsFixed

cl::opt<bool> MemRefsFixed("hsdr-no-mem", cl::Hidden, cl::init(true), cl::desc("Do not split loads or stores"))
static

◆ SplitAll

cl::opt<bool> SplitAll("hsdr-split-all", cl::Hidden, cl::init(false), cl::desc("Split all partitions"))
static