LLVM  8.0.1
Macros | Enumerations | Functions | Variables
AMDGPUAtomicOptimizer.cpp File Reference

This pass optimizes atomic operations by using a single lane of a wavefront to perform the atomic operation, thus reducing contention on that memory location. More...

#include "AMDGPU.h"
#include "AMDGPUSubtarget.h"
#include "llvm/Analysis/LegacyDivergenceAnalysis.h"
#include "llvm/CodeGen/TargetPassConfig.h"
#include "llvm/IR/IRBuilder.h"
#include "llvm/IR/InstVisitor.h"
#include "llvm/Transforms/Utils/BasicBlockUtils.h"
Include dependency graph for AMDGPUAtomicOptimizer.cpp:

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "amdgpu-atomic-optimizer"
 

Enumerations

enum  DPP_CTRL
 

Functions

 INITIALIZE_PASS_BEGIN (AMDGPUAtomicOptimizer, DEBUG_TYPE, "AMDGPU atomic optimizations", false, false) INITIALIZE_PASS_END(AMDGPUAtomicOptimizer
 

Variables

 DEBUG_TYPE
 
AMDGPU atomic optimizations
 
AMDGPU atomic false
 

Detailed Description

This pass optimizes atomic operations by using a single lane of a wavefront to perform the atomic operation, thus reducing contention on that memory location.

Definition in file AMDGPUAtomicOptimizer.cpp.

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "amdgpu-atomic-optimizer"

Definition at line 25 of file AMDGPUAtomicOptimizer.cpp.

Enumeration Type Documentation

◆ DPP_CTRL

enum DPP_CTRL

Definition at line 31 of file AMDGPUAtomicOptimizer.cpp.

Function Documentation

◆ INITIALIZE_PASS_BEGIN()

INITIALIZE_PASS_BEGIN ( AMDGPUAtomicOptimizer  ,
DEBUG_TYPE  ,
"AMDGPU atomic optimizations ,
false  ,
false   
)

Variable Documentation

◆ DEBUG_TYPE

DEBUG_TYPE

Definition at line 453 of file AMDGPUAtomicOptimizer.cpp.

◆ false

AMDGPU atomic false

Definition at line 453 of file AMDGPUAtomicOptimizer.cpp.

◆ optimizations

AMDGPU atomic optimizations

Definition at line 453 of file AMDGPUAtomicOptimizer.cpp.