class StoreInst

Declaration

class StoreInst : public Instruction { /* full declaration omitted */ };

Declared at: llvm/include/llvm/IR/Instructions.h:331

Inherits from: Instruction

Member Variables

Inherited from Value:

protected SubclassOptionalData
protected NumUserOperands
protected IsUsedByMD
protected HasName
protected HasHungOffUses
protected HasDescriptor
public static MaxAlignmentExponent = 29
public static MaximumAlignment = 1U << MaxAlignmentExponent

Method Overview

  • public StoreInst(llvm::Value * Val, llvm::Value * Ptr, llvm::Instruction * InsertBefore)
  • public StoreInst(llvm::Value * Val, llvm::Value * Ptr, llvm::BasicBlock * InsertAtEnd)
  • public StoreInst(llvm::Value * Val, llvm::Value * Ptr, bool isVolatile = false, llvm::Instruction * InsertBefore = nullptr)
  • public StoreInst(llvm::Value * Val, llvm::Value * Ptr, bool isVolatile, llvm::BasicBlock * InsertAtEnd)
  • public StoreInst(llvm::Value * Val, llvm::Value * Ptr, bool isVolatile, llvm::MaybeAlign Align, llvm::Instruction * InsertBefore = nullptr)
  • public StoreInst(llvm::Value * Val, llvm::Value * Ptr, bool isVolatile, llvm::MaybeAlign Align, llvm::BasicBlock * InsertAtEnd)
  • public StoreInst(llvm::Value * Val, llvm::Value * Ptr, bool isVolatile, llvm::MaybeAlign Align, llvm::AtomicOrdering Order, SyncScope::ID SSID = SyncScope::System, llvm::Instruction * InsertBefore = nullptr)
  • public StoreInst(llvm::Value * Val, llvm::Value * Ptr, bool isVolatile, llvm::MaybeAlign Align, llvm::AtomicOrdering Order, SyncScope::ID SSID, llvm::BasicBlock * InsertAtEnd)
  • public static bool classof(const llvm::Value * V)
  • public static bool classof(const llvm::Instruction * I)
  • protected llvm::StoreInst * cloneImpl() const
  • public llvm::MaybeAlign getAlign() const
  • public unsigned int getAlignment() const
  • public llvm::AtomicOrdering getOrdering() const
  • public unsigned int getPointerAddressSpace() const
  • public const llvm::Value * getPointerOperand() const
  • public llvm::Value * getPointerOperand()
  • public static unsigned int getPointerOperandIndex()
  • public llvm::Type * getPointerOperandType() const
  • public SyncScope::ID getSyncScopeID() const
  • public llvm::Value * getValueOperand()
  • public const llvm::Value * getValueOperand() const
  • public bool isSimple() const
  • public bool isUnordered() const
  • public bool isVolatile() const
  • public void setAlignment(llvm::MaybeAlign Alignment)
  • public void setAtomic(llvm::AtomicOrdering Ordering, SyncScope::ID SSID = SyncScope::System)
  • public void setOrdering(llvm::AtomicOrdering Ordering)
  • public void setSyncScopeID(SyncScope::ID SSID)
  • public void setVolatile(bool V)

Inherited from Instruction:

Inherited from User:

Inherited from Value:

Methods

StoreInst(llvm::Value* Val,
          llvm::Value* Ptr,
          llvm::Instruction* InsertBefore)

Declared at: llvm/include/llvm/IR/Instructions.h:341

Parameters

llvm::Value* Val
llvm::Value* Ptr
llvm::Instruction* InsertBefore

StoreInst(llvm::Value* Val,
          llvm::Value* Ptr,
          llvm::BasicBlock* InsertAtEnd)

Declared at: llvm/include/llvm/IR/Instructions.h:342

Parameters

llvm::Value* Val
llvm::Value* Ptr
llvm::BasicBlock* InsertAtEnd

StoreInst(
    llvm::Value* Val,
    llvm::Value* Ptr,
    bool isVolatile = false,
    llvm::Instruction* InsertBefore = nullptr)

Declared at: llvm/include/llvm/IR/Instructions.h:343

Parameters

llvm::Value* Val
llvm::Value* Ptr
bool isVolatile = false
llvm::Instruction* InsertBefore = nullptr

StoreInst(llvm::Value* Val,
          llvm::Value* Ptr,
          bool isVolatile,
          llvm::BasicBlock* InsertAtEnd)

Declared at: llvm/include/llvm/IR/Instructions.h:345

Parameters

llvm::Value* Val
llvm::Value* Ptr
bool isVolatile
llvm::BasicBlock* InsertAtEnd

StoreInst(
    llvm::Value* Val,
    llvm::Value* Ptr,
    bool isVolatile,
    llvm::MaybeAlign Align,
    llvm::Instruction* InsertBefore = nullptr)

Declared at: llvm/include/llvm/IR/Instructions.h:346

Parameters

llvm::Value* Val
llvm::Value* Ptr
bool isVolatile
llvm::MaybeAlign Align
llvm::Instruction* InsertBefore = nullptr

StoreInst(llvm::Value* Val,
          llvm::Value* Ptr,
          bool isVolatile,
          llvm::MaybeAlign Align,
          llvm::BasicBlock* InsertAtEnd)

Declared at: llvm/include/llvm/IR/Instructions.h:348

Parameters

llvm::Value* Val
llvm::Value* Ptr
bool isVolatile
llvm::MaybeAlign Align
llvm::BasicBlock* InsertAtEnd

StoreInst(
    llvm::Value* Val,
    llvm::Value* Ptr,
    bool isVolatile,
    llvm::MaybeAlign Align,
    llvm::AtomicOrdering Order,
    SyncScope::ID SSID = SyncScope::System,
    llvm::Instruction* InsertBefore = nullptr)

Declared at: llvm/include/llvm/IR/Instructions.h:350

Parameters

llvm::Value* Val
llvm::Value* Ptr
bool isVolatile
llvm::MaybeAlign Align
llvm::AtomicOrdering Order
SyncScope::ID SSID = SyncScope::System
llvm::Instruction* InsertBefore = nullptr

StoreInst(llvm::Value* Val,
          llvm::Value* Ptr,
          bool isVolatile,
          llvm::MaybeAlign Align,
          llvm::AtomicOrdering Order,
          SyncScope::ID SSID,
          llvm::BasicBlock* InsertAtEnd)

Declared at: llvm/include/llvm/IR/Instructions.h:353

Parameters

llvm::Value* Val
llvm::Value* Ptr
bool isVolatile
llvm::MaybeAlign Align
llvm::AtomicOrdering Order
SyncScope::ID SSID
llvm::BasicBlock* InsertAtEnd

static bool classof(const llvm::Value* V)

Declared at: llvm/include/llvm/IR/Instructions.h:443

Parameters

const llvm::Value* V

static bool classof(const llvm::Instruction* I)

Declared at: llvm/include/llvm/IR/Instructions.h:440

Parameters

const llvm::Instruction* I

llvm::StoreInst* cloneImpl() const

Declared at: llvm/include/llvm/IR/Instructions.h:338

llvm::MaybeAlign getAlign() const

Declared at: llvm/include/llvm/IR/Instructions.h:382

unsigned int getAlignment() const

Description

Return the alignment of the access that is being performed FIXME: Remove this function once transition to Align is over. Use getAlign() instead.

Declared at: llvm/include/llvm/IR/Instructions.h:376

llvm::AtomicOrdering getOrdering() const

Description

Returns the ordering constraint of this store instruction.

Declared at: llvm/include/llvm/IR/Instructions.h:389

unsigned int getPointerAddressSpace() const

Description

Returns the address space of the pointer operand.

Declared at: llvm/include/llvm/IR/Instructions.h:435

const llvm::Value* getPointerOperand() const

Declared at: llvm/include/llvm/IR/Instructions.h:430

llvm::Value* getPointerOperand()

Declared at: llvm/include/llvm/IR/Instructions.h:429

static unsigned int getPointerOperandIndex()

Declared at: llvm/include/llvm/IR/Instructions.h:431

llvm::Type* getPointerOperandType() const

Declared at: llvm/include/llvm/IR/Instructions.h:432

SyncScope::ID getSyncScopeID() const

Description

Returns the synchronization scope ID of this store instruction.

Declared at: llvm/include/llvm/IR/Instructions.h:401

llvm::Value* getValueOperand()

Declared at: llvm/include/llvm/IR/Instructions.h:426

const llvm::Value* getValueOperand() const

Declared at: llvm/include/llvm/IR/Instructions.h:427

bool isSimple() const

Declared at: llvm/include/llvm/IR/Instructions.h:418

bool isUnordered() const

Declared at: llvm/include/llvm/IR/Instructions.h:420

bool isVolatile() const

Description

Return true if this is a store to a volatile memory location.

Declared at: llvm/include/llvm/IR/Instructions.h:362

void setAlignment(llvm::MaybeAlign Alignment)

Declared at: llvm/include/llvm/IR/Instructions.h:386

Parameters

llvm::MaybeAlign Alignment

void setAtomic(
    llvm::AtomicOrdering Ordering,
    SyncScope::ID SSID = SyncScope::System)

Description

Sets the ordering constraint and the synchronization scope ID of this store instruction.

Declared at: llvm/include/llvm/IR/Instructions.h:412

Parameters

llvm::AtomicOrdering Ordering
SyncScope::ID SSID = SyncScope::System

void setOrdering(llvm::AtomicOrdering Ordering)

Description

Sets the ordering constraint of this store instruction. May not be Acquire or AcquireRelease.

Declared at: llvm/include/llvm/IR/Instructions.h:395

Parameters

llvm::AtomicOrdering Ordering

void setSyncScopeID(SyncScope::ID SSID)

Description

Sets the synchronization scope ID of this store instruction.

Declared at: llvm/include/llvm/IR/Instructions.h:406

Parameters

SyncScope::ID SSID

void setVolatile(bool V)

Description

Specify whether this is a volatile store or not.

Declared at: llvm/include/llvm/IR/Instructions.h:365

Parameters

bool V