LLVM 19.0.0git
Classes | Namespaces | Typedefs | Enumerations | Functions
ModRef.h File Reference
#include "llvm/ADT/BitmaskEnum.h"
#include "llvm/ADT/Sequence.h"
#include "llvm/Support/raw_ostream.h"

Go to the source code of this file.

Classes

class  llvm::MemoryEffectsBase< LocationEnum >
 

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.
 

Typedefs

using llvm::MemoryEffects = MemoryEffectsBase< IRMemLocation >
 Summary of how a function affects memory in the program.
 
using llvm::FunctionModRefBehavior = MemoryEffects
 

Enumerations

enum class  llvm::ModRefInfo : uint8_t {
  llvm::NoModRef = 0 , llvm::Ref = 1 , llvm::Mod = 2 , llvm::ModRef = Ref | Mod ,
  llvm::LLVM_MARK_AS_BITMASK_ENUM =(ModRef)
}
 Flags indicating whether a memory access modifies or references memory. More...
 
enum class  llvm::IRMemLocation {
  llvm::ArgMem = 0 , llvm::InaccessibleMem = 1 , llvm::Other = 2 , llvm::First = ArgMem ,
  llvm::Last = Other
}
 The locations at which a function might access memory. More...
 

Functions

bool llvm::isNoModRef (const ModRefInfo MRI)
 
bool llvm::isModOrRefSet (const ModRefInfo MRI)
 
bool llvm::isModAndRefSet (const ModRefInfo MRI)
 
bool llvm::isModSet (const ModRefInfo MRI)
 
bool llvm::isRefSet (const ModRefInfo MRI)
 
raw_ostreamllvm::operator<< (raw_ostream &OS, ModRefInfo MR)
 Debug print ModRefInfo.
 
raw_ostreamllvm::operator<< (raw_ostream &OS, MemoryEffects RMRB)
 Debug print MemoryEffects.