LLVM  15.0.0git
Namespaces | Macros | Functions | Variables
R600MachineCFGStructurizer.cpp File Reference
#include "MCTargetDesc/R600MCTargetDesc.h"
#include "R600.h"
#include "R600RegisterInfo.h"
#include "R600Subtarget.h"
#include "llvm/ADT/DepthFirstIterator.h"
#include "llvm/ADT/SCCIterator.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/MachineFunctionPass.h"
#include "llvm/CodeGen/MachineJumpTableInfo.h"
#include "llvm/CodeGen/MachineLoopInfo.h"
#include "llvm/CodeGen/MachinePostDominators.h"
#include "llvm/InitializePasses.h"
Include dependency graph for R600MachineCFGStructurizer.cpp:

Go to the source code of this file.

Namespaces

 llvm
 This is an optimization pass for GlobalISel generic memory operations.
 

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::initializeR600MachineCFGStructurizerPass (PassRegistry &)
 
 INITIALIZE_PASS_BEGIN (R600MachineCFGStructurizer, "amdgpustructurizer", "AMDGPU CFG Structurizer", false, false) INITIALIZE_PASS_END(R600MachineCFGStructurizer
 

Variables

 amdgpustructurizer
 
AMDGPU CFG Structurizer
 
AMDGPU CFG false
 

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "structcfg"

Definition at line 25 of file R600MachineCFGStructurizer.cpp.

◆ DEFAULT_VEC_SLOTS

#define DEFAULT_VEC_SLOTS   8

Definition at line 27 of file R600MachineCFGStructurizer.cpp.

◆ INVALIDSCCNUM

#define INVALIDSCCNUM   -1

Definition at line 71 of file R600MachineCFGStructurizer.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"; \
});

Definition at line 64 of file R600MachineCFGStructurizer.cpp.

◆ SHOWNEWBLK

#define SHOWNEWBLK (   b,
  msg 
)
Value:
LLVM_DEBUG(dbgs() << msg << "BB" << b->getNumber() << "size " << b->size(); \
dbgs() << "\n";);

Definition at line 60 of file R600MachineCFGStructurizer.cpp.

◆ SHOWNEWINSTR

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

Definition at line 58 of file R600MachineCFGStructurizer.cpp.

Function Documentation

◆ INITIALIZE_PASS_BEGIN()

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

◆ STATISTIC() [1/4]

STATISTIC ( numClonedBlock  ,
"CFGStructurizer cloned blocks"   
)

◆ STATISTIC() [2/4]

STATISTIC ( numClonedInstr  ,
"CFGStructurizer cloned instructions  
)

◆ STATISTIC() [3/4]

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

◆ STATISTIC() [4/4]

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

Variable Documentation

◆ amdgpustructurizer

amdgpustructurizer

Definition at line 1635 of file R600MachineCFGStructurizer.cpp.

◆ false

AMDGPU CFG false

Definition at line 1636 of file R600MachineCFGStructurizer.cpp.

◆ Structurizer

AMDGPU CFG Structurizer

Definition at line 1636 of file R600MachineCFGStructurizer.cpp.

LLVM_DEBUG
#define LLVM_DEBUG(X)
Definition: Debug.h:101
llvm::dbgs
raw_ostream & dbgs()
dbgs() - This returns a reference to a raw_ostream for debugging messages.
Definition: Debug.cpp:163
b
the resulting code requires compare and branches when and if the revised code is with conditional branches instead of More there is a byte word extend before each where there should be only and the condition codes are not remembered when the same two values are compared twice More LSR enhancements i8 and i32 load store addressing modes are identical int b
Definition: README.txt:418