LLVM 20.0.0git
Classes | Namespaces | Functions
IntrinsicInst.h File Reference
#include "llvm/IR/Constants.h"
#include "llvm/IR/DebugInfoMetadata.h"
#include "llvm/IR/DerivedTypes.h"
#include "llvm/IR/FPEnv.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/GlobalVariable.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/Intrinsics.h"
#include "llvm/IR/Value.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/MathExtras.h"
#include <cassert>
#include <cstdint>
#include <optional>

Go to the source code of this file.

Classes

class  llvm::IntrinsicInst
 A wrapper class for inspecting calls to intrinsic functions. More...
 
class  llvm::LifetimeIntrinsic
 This is the common base class for lifetime intrinsics. More...
 
class  llvm::DbgInfoIntrinsic
 This is the common base class for debug info intrinsics. More...
 
class  llvm::location_op_iterator
 
class  llvm::RawLocationWrapper
 Lightweight class that wraps the location operand metadata of a debug intrinsic. More...
 
class  llvm::DbgVariableIntrinsic
 This is the common base class for debug info intrinsics for variables. More...
 
class  llvm::DbgDeclareInst
 This represents the llvm.dbg.declare instruction. More...
 
class  llvm::DbgValueInst
 This represents the llvm.dbg.value instruction. More...
 
class  llvm::DbgAssignIntrinsic
 This represents the llvm.dbg.assign instruction. More...
 
class  llvm::DbgLabelInst
 This represents the llvm.dbg.label instruction. More...
 
class  llvm::VPIntrinsic
 This is the common base class for vector predication intrinsics. More...
 
class  llvm::VPReductionIntrinsic
 This represents vector predication reduction intrinsics. More...
 
class  llvm::VPCastIntrinsic
 
class  llvm::VPCmpIntrinsic
 
class  llvm::VPBinOpIntrinsic
 
class  llvm::ConstrainedFPIntrinsic
 This is the common base class for constrained floating point intrinsics. More...
 
class  llvm::ConstrainedFPCmpIntrinsic
 Constrained floating point compare intrinsics. More...
 
class  llvm::MinMaxIntrinsic
 This class represents min/max intrinsics. More...
 
class  llvm::CmpIntrinsic
 This class represents a ucmp/scmp intrinsic. More...
 
class  llvm::BinaryOpIntrinsic
 This class represents an intrinsic that is based on a binary operation. More...
 
class  llvm::WithOverflowInst
 Represents an op.with.overflow intrinsic. More...
 
class  llvm::SaturatingInst
 Represents a saturating add/sub intrinsic. More...
 
class  llvm::MemIntrinsicBase< Derived >
 Common base class for all memory intrinsics. More...
 
class  llvm::MemTransferBase< BaseCL >
 Common base class for all memory transfer intrinsics. More...
 
class  llvm::MemSetBase< BaseCL >
 Common base class for all memset intrinsics. More...
 
class  llvm::AtomicMemIntrinsic
 
class  llvm::AtomicMemSetInst
 This class represents atomic memset intrinsic. More...
 
class  llvm::AtomicMemTransferInst
 
class  llvm::AtomicMemCpyInst
 This class represents the atomic memcpy intrinsic i.e. More...
 
class  llvm::AtomicMemMoveInst
 This class represents the atomic memmove intrinsic i.e. More...
 
class  llvm::MemIntrinsic
 This is the common base class for memset/memcpy/memmove. More...
 
class  llvm::MemSetInst
 This class wraps the llvm.memset and llvm.memset.inline intrinsics. More...
 
class  llvm::MemSetInlineInst
 This class wraps the llvm.memset.inline intrinsic. More...
 
class  llvm::MemSetPatternIntrinsic
 This is the base class for llvm.experimental.memset.pattern. More...
 
class  llvm::MemSetPatternInst
 This class wraps the llvm.experimental.memset.pattern intrinsic. More...
 
class  llvm::MemTransferInst
 This class wraps the llvm.memcpy/memmove intrinsics. More...
 
class  llvm::MemCpyInst
 This class wraps the llvm.memcpy intrinsic. More...
 
class  llvm::MemMoveInst
 This class wraps the llvm.memmove intrinsic. More...
 
class  llvm::MemCpyInlineInst
 This class wraps the llvm.memcpy.inline intrinsic. More...
 
class  llvm::AnyMemIntrinsic
 
class  llvm::AnyMemSetInst
 This class represents any memset intrinsic. More...
 
class  llvm::AnyMemTransferInst
 
class  llvm::AnyMemCpyInst
 This class represents any memcpy intrinsic i.e. More...
 
class  llvm::AnyMemMoveInst
 This class represents any memmove intrinsic i.e. More...
 
class  llvm::VAStartInst
 This represents the llvm.va_start intrinsic. More...
 
class  llvm::VAEndInst
 This represents the llvm.va_end intrinsic. More...
 
class  llvm::VACopyInst
 This represents the llvm.va_copy intrinsic. More...
 
class  llvm::InstrProfInstBase
 A base class for all instrprof intrinsics. More...
 
class  llvm::InstrProfCntrInstBase
 A base class for all instrprof counter intrinsics. More...
 
class  llvm::InstrProfCoverInst
 This represents the llvm.instrprof.cover intrinsic. More...
 
class  llvm::InstrProfIncrementInst
 This represents the llvm.instrprof.increment intrinsic. More...
 
class  llvm::InstrProfIncrementInstStep
 This represents the llvm.instrprof.increment.step intrinsic. More...
 
class  llvm::InstrProfCallsite
 This represents the llvm.instrprof.callsite intrinsic. More...
 
class  llvm::InstrProfTimestampInst
 This represents the llvm.instrprof.timestamp intrinsic. More...
 
class  llvm::InstrProfValueProfileInst
 This represents the llvm.instrprof.value.profile intrinsic. More...
 
class  llvm::InstrProfMCDCBitmapInstBase
 A base class for instrprof mcdc intrinsics that require global bitmap bytes. More...
 
class  llvm::InstrProfMCDCBitmapParameters
 This represents the llvm.instrprof.mcdc.parameters intrinsic. More...
 
class  llvm::InstrProfMCDCTVBitmapUpdate
 This represents the llvm.instrprof.mcdc.tvbitmap.update intrinsic. More...
 
class  llvm::PseudoProbeInst
 
class  llvm::NoAliasScopeDeclInst
 
class  llvm::GCProjectionInst
 Common base class for representing values projected from a statepoint. More...
 
class  llvm::GCRelocateInst
 Represents calls to the gc.relocate intrinsic. More...
 
class  llvm::GCResultInst
 Represents calls to the gc.result intrinsic. More...
 
class  llvm::AssumeInst
 This represents the llvm.assume intrinsic. More...
 
class  llvm::ConvergenceControlInst
 Represents calls to the llvm.experimintal.convergence.* intrinsics. More...
 

Namespaces

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

Functions

static bool llvm::isLifetimeIntrinsic (Intrinsic::ID ID)
 Check if ID corresponds to a lifetime intrinsic.
 
static bool llvm::isDbgInfoIntrinsic (Intrinsic::ID ID)
 Check if ID corresponds to a debug info intrinsic.
 
static bool llvm::isConvergenceControlIntrinsic (unsigned IntrinsicID)
 Check if ID corresponds to a convergence control intrinsic.