|
LLVM
4.0.0
|
This pass inserts branches on the 0 exec mask over divergent branches branches when it's expected that jumping over the untaken control flow will be cheaper than having every workitem no-op through it. More...
#include "AMDGPU.h"#include "AMDGPUSubtarget.h"#include "SIInstrInfo.h"#include "SIMachineFunctionInfo.h"#include "llvm/CodeGen/MachineFrameInfo.h"#include "llvm/CodeGen/MachineFunction.h"#include "llvm/CodeGen/MachineFunctionPass.h"#include "llvm/CodeGen/MachineInstrBuilder.h"#include "llvm/MC/MCAsmInfo.h"Go to the source code of this file.
Macros | |
| #define | DEBUG_TYPE "si-insert-skips" |
Functions | |
| static INITIALIZE_PASS(SIInsertSkips, DEBUG_TYPE,"SI insert s_cbranch_execz instructions", false, false) char &llvm bool | opcodeEmitsNoInsts (unsigned Opc) |
This pass inserts branches on the 0 exec mask over divergent branches branches when it's expected that jumping over the untaken control flow will be cheaper than having every workitem no-op through it.
Definition in file SIInsertSkips.cpp.
| #define DEBUG_TYPE "si-insert-skips" |
Definition at line 28 of file SIInsertSkips.cpp.
|
static |
Definition at line 81 of file SIInsertSkips.cpp.
References llvm::ISD::EH_LABEL, and llvm::AMDGPUISD::KILL.
1.8.6