|
LLVM
4.0.0
|
#include "AMDGPU.h"#include "AMDGPUSubtarget.h"#include "SIInstrInfo.h"#include "llvm/CodeGen/LiveIntervalAnalysis.h"#include "llvm/CodeGen/MachineFunctionPass.h"#include "llvm/CodeGen/MachineInstrBuilder.h"#include "llvm/CodeGen/MachineRegisterInfo.h"#include "llvm/Support/Debug.h"Go to the source code of this file.
Macros | |
| #define | DEBUG_TYPE "si-optimize-exec-masking" |
Functions | |
| INITIALIZE_PASS_BEGIN (SIOptimizeExecMasking, DEBUG_TYPE,"SI optimize exec mask operations", false, false) INITIALIZE_PASS_END(SIOptimizeExecMasking | |
| static unsigned | isCopyFromExec (const MachineInstr &MI) |
If MI is a copy from exec, return the register copied to. More... | |
| static unsigned | isCopyToExec (const MachineInstr &MI) |
If MI is a copy to exec, return the register copied from. More... | |
| static unsigned | getSaveExecOp (unsigned Opc) |
| static bool | removeTerminatorBit (const SIInstrInfo &TII, MachineInstr &MI) |
| static MachineBasicBlock::reverse_iterator | fixTerminators (const SIInstrInfo &TII, MachineBasicBlock &MBB) |
| static MachineBasicBlock::reverse_iterator | findExecCopy (const SIInstrInfo &TII, MachineBasicBlock &MBB, MachineBasicBlock::reverse_iterator I, unsigned CopyToExec) |
| static bool | isLiveOut (const MachineBasicBlock &MBB, unsigned Reg) |
Variables | |
| DEBUG_TYPE | |
| SI optimize exec mask | operations |
| SI optimize exec mask | false |
| #define DEBUG_TYPE "si-optimize-exec-masking" |
Definition at line 21 of file SIOptimizeExecMasking.cpp.
|
static |
Definition at line 154 of file SIOptimizeExecMasking.cpp.
References E, I, isCopyFromExec(), N, and llvm::MachineBasicBlock::rend().
|
static |
Definition at line 139 of file SIOptimizeExecMasking.cpp.
References E, I, llvm::MachineBasicBlock::rbegin(), removeTerminatorBit(), and llvm::MachineBasicBlock::rend().
Definition at line 90 of file SIOptimizeExecMasking.cpp.
| INITIALIZE_PASS_BEGIN | ( | SIOptimizeExecMasking | , |
| DEBUG_TYPE | , | ||
| "SI optimize exec mask operations" | , | ||
| false | , | ||
| false | |||
| ) |
|
static |
If MI is a copy from exec, return the register copied to.
Definition at line 59 of file SIOptimizeExecMasking.cpp.
References llvm::MachineOperand::getReg(), and llvm::MachineOperand::isReg().
Referenced by findExecCopy().
|
static |
If MI is a copy to exec, return the register copied from.
Definition at line 74 of file SIOptimizeExecMasking.cpp.
References llvm::MachineInstr::getOpcode(), llvm::MachineInstr::getOperand(), llvm::MachineOperand::getReg(), llvm::MachineOperand::isReg(), and llvm_unreachable.
|
static |
Definition at line 174 of file SIOptimizeExecMasking.cpp.
References llvm::MachineBasicBlock::successors().
Referenced by llvm::MachineBasicBlock::SplitCriticalEdge().
|
static |
Definition at line 116 of file SIOptimizeExecMasking.cpp.
References llvm::MachineInstr::getOpcode(), and llvm::MachineInstr::setDesc().
Referenced by fixTerminators().
| DEBUG_TYPE |
Definition at line 51 of file SIOptimizeExecMasking.cpp.
| SI optimize exec mask false |
Definition at line 51 of file SIOptimizeExecMasking.cpp.
| SI optimize exec mask operations |
Definition at line 51 of file SIOptimizeExecMasking.cpp.
1.8.6