LLVM 19.0.0git
Functions
GlobalStatus.cpp File Reference
#include "llvm/Transforms/Utils/GlobalStatus.h"
#include "llvm/ADT/SmallPtrSet.h"
#include "llvm/IR/BasicBlock.h"
#include "llvm/IR/Constant.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/GlobalValue.h"
#include "llvm/IR/GlobalVariable.h"
#include "llvm/IR/InstrTypes.h"
#include "llvm/IR/Instruction.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/IntrinsicInst.h"
#include "llvm/IR/Use.h"
#include "llvm/IR/User.h"
#include "llvm/IR/Value.h"
#include "llvm/Support/AtomicOrdering.h"
#include "llvm/Support/Casting.h"
#include <algorithm>
#include <cassert>

Go to the source code of this file.

Functions

static AtomicOrdering strongerOrdering (AtomicOrdering X, AtomicOrdering Y)
 Return the stronger of the two ordering.
 
static bool analyzeGlobalAux (const Value *V, GlobalStatus &GS, SmallPtrSetImpl< const Value * > &VisitedUsers)
 

Function Documentation

◆ analyzeGlobalAux()

static bool analyzeGlobalAux ( const Value V,
GlobalStatus GS,
SmallPtrSetImpl< const Value * > &  VisitedUsers 
)
static

◆ strongerOrdering()

static AtomicOrdering strongerOrdering ( AtomicOrdering  X,
AtomicOrdering  Y 
)
static

Return the stronger of the two ordering.

If the two orderings are acquire and release, then return AcquireRelease.

Definition at line 33 of file GlobalStatus.cpp.

References X, and Y.

Referenced by analyzeGlobalAux().