LLVM  4.0.0
Macros | Functions | Variables
HexagonMachineScheduler.cpp File Reference
#include "HexagonMachineScheduler.h"
#include "HexagonSubtarget.h"
#include "llvm/CodeGen/MachineLoopInfo.h"
#include "llvm/CodeGen/ScheduleDAGMutation.h"
#include "llvm/IR/Function.h"
#include <iomanip>
#include <sstream>
Include dependency graph for HexagonMachineScheduler.cpp:

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "misched"
 

Functions

static SUnitgetSingleUnscheduledPred (SUnit *SU)
 getSingleUnscheduledPred - If there is exactly one unscheduled predecessor of SU, return it, otherwise return null. More...
 
static SUnitgetSingleUnscheduledSucc (SUnit *SU)
 getSingleUnscheduledSucc - If there is exactly one unscheduled successor of SU, return it, otherwise return null. More...
 

Variables

static cl::opt< boolIgnoreBBRegPressure ("ignore-bb-reg-pressure", cl::Hidden, cl::ZeroOrMore, cl::init(false))
 
static cl::opt< boolSchedPredsCloser ("sched-preds-closer", cl::Hidden, cl::ZeroOrMore, cl::init(true))
 
static cl::opt< unsignedSchedDebugVerboseLevel ("misched-verbose-level", cl::Hidden, cl::ZeroOrMore, cl::init(1))
 
static cl::opt< boolTopUseShorterTie ("top-use-shorter-tie", cl::Hidden, cl::ZeroOrMore, cl::init(false))
 
static cl::opt< boolBotUseShorterTie ("bot-use-shorter-tie", cl::Hidden, cl::ZeroOrMore, cl::init(false))
 
static cl::opt< boolDisableTCTie ("disable-tc-tie", cl::Hidden, cl::ZeroOrMore, cl::init(false))
 
static cl::opt< boolSchedRetvalOptimization ("sched-retval-optimization", cl::Hidden, cl::ZeroOrMore, cl::init(true))
 
static cl::opt< boolCheckEarlyAvail ("check-early-avail", cl::Hidden, cl::ZeroOrMore, cl::init(true))
 
static const unsigned PriorityOne = 200
 
static const unsigned PriorityTwo = 50
 
static const unsigned PriorityThree = 75
 
static const unsigned ScaleTwo = 10
 
static const unsigned FactorOne = 2
 

Macro Definition Documentation

#define DEBUG_TYPE   "misched"

Definition at line 52 of file HexagonMachineScheduler.cpp.

Function Documentation

static SUnit* getSingleUnscheduledPred ( SUnit SU)
static

getSingleUnscheduledPred - If there is exactly one unscheduled predecessor of SU, return it, otherwise return null.

Definition at line 566 of file HexagonMachineScheduler.cpp.

References E, I, llvm::SUnit::isScheduled, and llvm::SUnit::Preds.

Referenced by llvm::ConvergingVLIWScheduler::SchedulingCost().

static SUnit* getSingleUnscheduledSucc ( SUnit SU)
static

getSingleUnscheduledSucc - If there is exactly one unscheduled successor of SU, return it, otherwise return null.

Definition at line 584 of file HexagonMachineScheduler.cpp.

References E, I, llvm::SUnit::isScheduled, and llvm::SUnit::Succs.

Referenced by llvm::ConvergingVLIWScheduler::SchedulingCost().

Variable Documentation

cl::opt<bool> BotUseShorterTie("bot-use-shorter-tie", cl::Hidden, cl::ZeroOrMore, cl::init(false))
static
cl::opt<bool> CheckEarlyAvail("check-early-avail", cl::Hidden, cl::ZeroOrMore, cl::init(true))
static
cl::opt<bool> DisableTCTie("disable-tc-tie", cl::Hidden, cl::ZeroOrMore, cl::init(false))
static
const unsigned FactorOne = 2
static
cl::opt<bool> IgnoreBBRegPressure("ignore-bb-reg-pressure", cl::Hidden, cl::ZeroOrMore, cl::init(false))
static
const unsigned PriorityOne = 200
static
const unsigned PriorityThree = 75
static
const unsigned PriorityTwo = 50
static
const unsigned ScaleTwo = 10
static
cl::opt<unsigned> SchedDebugVerboseLevel("misched-verbose-level", cl::Hidden, cl::ZeroOrMore, cl::init(1))
static
cl::opt<bool> SchedPredsCloser("sched-preds-closer", cl::Hidden, cl::ZeroOrMore, cl::init(true))
static
cl::opt<bool> SchedRetvalOptimization("sched-retval-optimization", cl::Hidden, cl::ZeroOrMore, cl::init(true))
static
cl::opt<bool> TopUseShorterTie("top-use-shorter-tie", cl::Hidden, cl::ZeroOrMore, cl::init(false))
static