LLVM API Documentation

MachineLICM.cpp File Reference

#include "llvm/CodeGen/Passes.h"
#include "llvm/CodeGen/MachineDominators.h"
#include "llvm/CodeGen/MachineLoopInfo.h"
#include "llvm/CodeGen/MachineRegisterInfo.h"
#include "llvm/Target/TargetRegisterInfo.h"
#include "llvm/Target/TargetInstrInfo.h"
#include "llvm/Target/TargetMachine.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Compiler.h"
#include "llvm/Support/Debug.h"

Include dependency graph for MachineLICM.cpp:

Go to the source code of this file.

Defines

#define DEBUG_TYPE   "machine-licm"

Functions

 STATISTIC (NumHoisted,"Number of machine instructions hoisted out of loops")
FunctionPass * llvm::createMachineLICMPass ()
static bool LoopIsOuterMostWithPreheader (MachineLoop *CurLoop)

Variables

static RegisterPass< MachineLICM > X ("machinelicm","Machine Loop Invariant Code Motion")


Define Documentation

#define DEBUG_TYPE   "machine-licm"

Definition at line 23 of file MachineLICM.cpp.


Function Documentation

static bool LoopIsOuterMostWithPreheader ( MachineLoop *  CurLoop  )  [static]

LoopIsOuterMostWithPreheader - Test if the given loop is the outer-most loop that has a preheader.

Definition at line 102 of file MachineLICM.cpp.

References llvm::LoopBase< BlockT >::getLoopPreheader(), llvm::LoopBase< BlockT >::getParentLoop(), and L.

STATISTIC ( NumHoisted  ,
"Number of machine instructions hoisted out of loops"   
)


Variable Documentation

bool Changed

Definition at line 52 of file MachineLICM.cpp.

Referenced by llvm::LoopBase< BlockT >::getLoopDepth().

Definition at line 53 of file MachineLICM.cpp.

char ID [static]

Definition at line 55 of file MachineLICM.cpp.

Definition at line 46 of file MachineLICM.cpp.

Definition at line 48 of file MachineLICM.cpp.

Definition at line 43 of file MachineLICM.cpp.

const TargetMachine* TM

Definition at line 42 of file MachineLICM.cpp.

RegisterPass<MachineLICM> X("machinelicm","Machine Loop Invariant Code Motion") [static]