LLVM API Documentation

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

Go to the source code of this file.

Defines

#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)
 INITIALIZE_PASS (LowerAtomic,"loweratomic","Lower atomic intrinsics to non-atomic form", false, false) Pass *llvm

Define Documentation

#define DEBUG_TYPE   "loweratomic"

Definition at line 22 of file LowerAtomic.cpp.


Function Documentation

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

Definition at line 144 of file LowerAtomic.cpp.

static bool LowerAtomicCmpXchgInst ( AtomicCmpXchgInst CXI) [static]
static bool LowerAtomicRMWInst ( AtomicRMWInst RMWI) [static]
static bool LowerFenceInst ( FenceInst FI) [static]

Definition at line 97 of file LowerAtomic.cpp.

References llvm::Instruction::eraseFromParent().

static bool LowerLoadInst ( LoadInst LI) [static]

Definition at line 102 of file LowerAtomic.cpp.

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

static bool LowerStoreInst ( StoreInst SI) [static]

Definition at line 107 of file LowerAtomic.cpp.

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