LLVM  8.0.1
Macros | Functions
LowerAtomic.cpp File Reference
#include "llvm/Transforms/Scalar/LowerAtomic.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/IRBuilder.h"
#include "llvm/Pass.h"
#include "llvm/Transforms/Scalar.h"
Include dependency graph for LowerAtomic.cpp:

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "loweratomic"
 

Functions

static bool LowerAtomicCmpXchgInst (AtomicCmpXchgInst *CXI)
 
static bool LowerAtomicRMWInst (AtomicRMWInst *RMWI)
 
static bool LowerFenceInst (FenceInst *FI)
 
static bool LowerLoadInst (LoadInst *LI)
 
static bool LowerStoreInst (StoreInst *SI)
 
static bool runOnBasicBlock (BasicBlock &BB)
 
static bool lowerAtomics (Function &F)
 
 INITIALIZE_PASS (LowerAtomicLegacyPass, "loweratomic", "Lower atomic intrinsics to non-atomic form", false, false) Pass *llvm
 

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "loweratomic"

Definition at line 22 of file LowerAtomic.cpp.

Function Documentation

◆ INITIALIZE_PASS()

INITIALIZE_PASS ( LowerAtomicLegacyPass  ,
"loweratomic"  ,
"Lower atomic intrinsics to non-atomic form"  ,
false  ,
false   
)

Definition at line 169 of file LowerAtomic.cpp.

◆ LowerAtomicCmpXchgInst()

static bool LowerAtomicCmpXchgInst ( AtomicCmpXchgInst CXI)
static

◆ LowerAtomicRMWInst()

static bool LowerAtomicRMWInst ( AtomicRMWInst RMWI)
static

◆ lowerAtomics()

static bool lowerAtomics ( Function F)
static

Definition at line 133 of file LowerAtomic.cpp.

References runOnBasicBlock().

Referenced by llvm::LowerAtomicPass::run().

◆ LowerFenceInst()

static bool LowerFenceInst ( FenceInst FI)
static

Definition at line 97 of file LowerAtomic.cpp.

References llvm::Instruction::eraseFromParent().

Referenced by runOnBasicBlock().

◆ LowerLoadInst()

static bool LowerLoadInst ( LoadInst LI)
static

Definition at line 102 of file LowerAtomic.cpp.

References llvm::NotAtomic, and llvm::LoadInst::setAtomic().

Referenced by runOnBasicBlock().

◆ LowerStoreInst()

static bool LowerStoreInst ( StoreInst SI)
static

Definition at line 107 of file LowerAtomic.cpp.

References llvm::NotAtomic, and llvm::StoreInst::setAtomic().

Referenced by runOnBasicBlock().

◆ runOnBasicBlock()

static bool runOnBasicBlock ( BasicBlock BB)
static