LLVM 19.0.0git
Macros | Functions
LowerAtomicPass.cpp File Reference
#include "llvm/Transforms/Scalar/LowerAtomicPass.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/IRBuilder.h"
#include "llvm/InitializePasses.h"
#include "llvm/Pass.h"
#include "llvm/Transforms/Scalar.h"
#include "llvm/Transforms/Utils/LowerAtomic.h"

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "lower-atomic"
 

Functions

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   "lower-atomic"

Definition at line 23 of file LowerAtomicPass.cpp.

Function Documentation

◆ INITIALIZE_PASS()

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

Definition at line 96 of file LowerAtomicPass.cpp.

◆ lowerAtomics()

static bool lowerAtomics ( Function F)
static

Definition at line 60 of file LowerAtomicPass.cpp.

References F, and runOnBasicBlock().

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

◆ LowerFenceInst()

static bool LowerFenceInst ( FenceInst FI)
static

Definition at line 25 of file LowerAtomicPass.cpp.

References llvm::Instruction::eraseFromParent().

Referenced by runOnBasicBlock().

◆ LowerLoadInst()

static bool LowerLoadInst ( LoadInst LI)
static

Definition at line 30 of file LowerAtomicPass.cpp.

References llvm::LoadInst::setAtomic().

Referenced by runOnBasicBlock().

◆ LowerStoreInst()

static bool LowerStoreInst ( StoreInst SI)
static

Definition at line 35 of file LowerAtomicPass.cpp.

Referenced by runOnBasicBlock().

◆ runOnBasicBlock()

static bool runOnBasicBlock ( BasicBlock BB)
static