|
LLVM 22.0.0git
|
GlobalISel pass that selects divergent i1 phis as lane mask phis. More...
#include "AMDGPU.h"#include "AMDGPUGlobalISelUtils.h"#include "SILowerI1Copies.h"#include "llvm/CodeGen/GlobalISel/MachineIRBuilder.h"#include "llvm/CodeGen/MachineFunctionPass.h"#include "llvm/CodeGen/MachineUniformityAnalysis.h"#include "llvm/InitializePasses.h"Go to the source code of this file.
Macros | |
| #define | DEBUG_TYPE "amdgpu-global-isel-divergence-lowering" |
Functions | |
| INITIALIZE_PASS_BEGIN (AMDGPUGlobalISelDivergenceLowering, DEBUG_TYPE, "AMDGPU GlobalISel divergence lowering", false, false) INITIALIZE_PASS_END(AMDGPUGlobalISelDivergenceLowering | |
Variables | |
| DEBUG_TYPE | |
| AMDGPU GlobalISel divergence | lowering |
| AMDGPU GlobalISel divergence | false |
GlobalISel pass that selects divergent i1 phis as lane mask phis.
Lane mask merging uses same algorithm as SDAG in SILowerI1Copies. Handles all cases of temporal divergence. For divergent non-phi i1 and uniform i1 uses outside of the cycle this pass currently depends on LCSSA to insert phis with one incoming.
Definition in file AMDGPUGlobalISelDivergenceLowering.cpp.
| #define DEBUG_TYPE "amdgpu-global-isel-divergence-lowering" |
Definition at line 26 of file AMDGPUGlobalISelDivergenceLowering.cpp.
| INITIALIZE_PASS_BEGIN | ( | AMDGPUGlobalISelDivergenceLowering | , |
| DEBUG_TYPE | , | ||
| "AMDGPU GlobalISel divergence lowering" | , | ||
| false | , | ||
| false | ) |
References DEBUG_TYPE, and INITIALIZE_PASS_DEPENDENCY.
| DEBUG_TYPE |
Definition at line 293 of file AMDGPUGlobalISelDivergenceLowering.cpp.
| AMDGPU GlobalISel divergence false |
Definition at line 294 of file AMDGPUGlobalISelDivergenceLowering.cpp.
| AMDGPU GlobalISel divergence lowering |
Definition at line 294 of file AMDGPUGlobalISelDivergenceLowering.cpp.