LLVM  7.0.0svn
Namespaces | Macros | Functions | Variables
AMDILCFGStructurizer.cpp File Reference
#include "AMDGPU.h"
#include "AMDGPUSubtarget.h"
#include "R600InstrInfo.h"
#include "R600RegisterInfo.h"
#include "MCTargetDesc/AMDGPUMCTargetDesc.h"
#include "llvm/ADT/DepthFirstIterator.h"
#include "llvm/ADT/SCCIterator.h"
#include "llvm/ADT/SmallPtrSet.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/CodeGen/MachineBasicBlock.h"
#include "llvm/CodeGen/MachineDominators.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/MachineFunctionPass.h"
#include "llvm/CodeGen/MachineInstr.h"
#include "llvm/CodeGen/MachineInstrBuilder.h"
#include "llvm/CodeGen/MachineJumpTableInfo.h"
#include "llvm/CodeGen/MachineLoopInfo.h"
#include "llvm/CodeGen/MachineOperand.h"
#include "llvm/CodeGen/MachinePostDominators.h"
#include "llvm/CodeGen/MachineRegisterInfo.h"
#include "llvm/IR/DebugLoc.h"
#include "llvm/IR/LLVMContext.h"
#include "llvm/Pass.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/MachineValueType.h"
#include "llvm/Support/raw_ostream.h"
#include <cassert>
#include <cstddef>
#include <deque>
#include <iterator>
#include <map>
#include <utility>
#include <vector>
Include dependency graph for AMDILCFGStructurizer.cpp:

Go to the source code of this file.

Namespaces

 llvm
 Compute iterated dominance frontiers using a linear time algorithm.
 

Macros

#define DEBUG_TYPE   "structcfg"
 
#define DEFAULT_VEC_SLOTS   8
 
#define SHOWNEWINSTR(i)   LLVM_DEBUG(dbgs() << "New instr: " << *i << "\n");
 
#define SHOWNEWBLK(b, msg)
 
#define SHOWBLK_DETAIL(b, msg)
 
#define INVALIDSCCNUM   -1
 

Functions

 STATISTIC (numSerialPatternMatch, "CFGStructurizer number of serial pattern " "matched")
 
 STATISTIC (numIfPatternMatch, "CFGStructurizer number of if pattern " "matched")
 
 STATISTIC (numClonedBlock, "CFGStructurizer cloned blocks")
 
 STATISTIC (numClonedInstr, "CFGStructurizer cloned instructions")
 
void llvm::initializeAMDGPUCFGStructurizerPass (PassRegistry &)
 
 INITIALIZE_PASS_BEGIN (AMDGPUCFGStructurizer, "amdgpustructurizer", "AMDGPU CFG Structurizer", false, false) INITIALIZE_PASS_END(AMDGPUCFGStructurizer
 

Variables

 amdgpustructurizer
 
AMDGPU CFG Structurizer
 
AMDGPU CFG false
 

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "structcfg"

Definition at line 49 of file AMDILCFGStructurizer.cpp.

◆ DEFAULT_VEC_SLOTS

#define DEFAULT_VEC_SLOTS   8

Definition at line 51 of file AMDILCFGStructurizer.cpp.

◆ INVALIDSCCNUM

#define INVALIDSCCNUM   -1

Definition at line 95 of file AMDILCFGStructurizer.cpp.

◆ SHOWBLK_DETAIL

#define SHOWBLK_DETAIL (   b,
  msg 
)
Value:
LLVM_DEBUG(if (b) { \
dbgs() << msg << "BB" << b->getNumber() << "size " << b->size(); \
b->print(dbgs()); \
dbgs() << "\n"; \
});
raw_ostream & dbgs()
dbgs() - This returns a reference to a raw_ostream for debugging messages.
Definition: Debug.cpp:133
#define LLVM_DEBUG(X)
Definition: Debug.h:119

Definition at line 88 of file AMDILCFGStructurizer.cpp.

◆ SHOWNEWBLK

#define SHOWNEWBLK (   b,
  msg 
)
Value:
LLVM_DEBUG(dbgs() << msg << "BB" << b->getNumber() << "size " << b->size(); \
dbgs() << "\n";);
raw_ostream & dbgs()
dbgs() - This returns a reference to a raw_ostream for debugging messages.
Definition: Debug.cpp:133
#define LLVM_DEBUG(X)
Definition: Debug.h:119

Definition at line 84 of file AMDILCFGStructurizer.cpp.

◆ SHOWNEWINSTR

#define SHOWNEWINSTR (   i)    LLVM_DEBUG(dbgs() << "New instr: " << *i << "\n");

Definition at line 82 of file AMDILCFGStructurizer.cpp.

Function Documentation

◆ INITIALIZE_PASS_BEGIN()

INITIALIZE_PASS_BEGIN ( AMDGPUCFGStructurizer  ,
"amdgpustructurizer"  ,
"AMDGPU CFG Structurizer ,
false  ,
false   
)

◆ STATISTIC() [1/4]

STATISTIC ( numSerialPatternMatch  ,
"CFGStructurizer number of serial pattern " "matched"   
)

◆ STATISTIC() [2/4]

STATISTIC ( numIfPatternMatch  ,
"CFGStructurizer number of if pattern " "matched"   
)

◆ STATISTIC() [3/4]

STATISTIC ( numClonedBlock  ,
"CFGStructurizer cloned blocks"   
)

◆ STATISTIC() [4/4]

STATISTIC ( numClonedInstr  ,
"CFGStructurizer cloned instructions  
)

Variable Documentation

◆ amdgpustructurizer

amdgpustructurizer

Definition at line 1676 of file AMDILCFGStructurizer.cpp.

◆ false

AMDGPU CFG false

Definition at line 1676 of file AMDILCFGStructurizer.cpp.

◆ Structurizer

AMDGPU CFG Structurizer

Definition at line 1676 of file AMDILCFGStructurizer.cpp.