Module llvm_ir::instruction[][src]

Modules

groups

Structs

AShr

Arithmetic shift right. See LLVM 12 docs on the 'ashr' instruction

Add

Integer add. See LLVM 12 docs on the 'add' instruction

AddrSpaceCast

Convert a pointer to a different address space. See LLVM 12 docs on the 'addrspacecast' instruction

Alloca

Allocate memory on the stack. See LLVM 12 docs on the 'alloca' instruction

And

Bitwise logical and. See LLVM 12 docs on the 'and' instruction

AtomicRMW

Atomic read-modify-write. See LLVM 12 docs on the 'atomicrmw' instruction

Atomicity

See LLVM 12 docs on Atomic Memory Ordering Constraints

BitCast

Convert between types without changing any bits. See LLVM 12 docs on the 'bitcast' instruction

Call

Function call. See LLVM 12 docs on the 'call' instruction

CatchPad

Used for exception handling. See LLVM 12 docs on the 'catchpad' instruction

CleanupPad

Used for exception handling. See LLVM 12 docs on the 'cleanuppad' instruction

CmpXchg

Atomic compare and exchange. See LLVM 12 docs on the 'cmpxchg' instruction

ExtractElement

Get an element from a vector at a specified index. See LLVM 12 docs on the 'extractelement' instruction

ExtractValue

Extract the value of a member field from an aggregate (struct or array) type. See LLVM 12 docs on the 'extractvalue' instruction

FAdd

Floating-point add. See LLVM 12 docs on the 'fadd' instruction

FCmp

Compare floating-point values or vectors of floating-point values. See LLVM 12 docs on the 'fcmp' instruction

FDiv

Floating-point divide. See LLVM 12 docs on the 'fdiv' instruction

FMul

Floating-point multiply. See LLVM 12 docs on the 'fmul' instruction

FNeg

Floating-point unary negation. See LLVM 12 docs on the 'fneg' instruction

FPExt

Extend a floating-point value. See LLVM 12 docs on the 'fpext' instruction

FPToSI

Convert floating-point to signed integer. See LLVM 12 docs on the 'fptosi' instruction

FPToUI

Convert floating-point to unsigned integer. See LLVM 12 docs on the 'fptoui' instruction

FPTrunc

Truncate a floating-point value. See LLVM 12 docs on the 'fptrunc' instruction

FRem

Floating-point remainder. See LLVM 12 docs on the 'frem' instruction

FSub

Floating-point subtract. See LLVM 12 docs on the 'fsub' instruction

FastMathFlags

See LLVM 12 docs on Fast-Math Flags

Fence

Memory-ordering fence. See LLVM 12 docs on the 'fence' instruction

Freeze

Stop the propagation of undef or poison values. See LLVM 12 docs on the 'freeze' instruction

GetElementPtr

Get the address of a subelement of an aggregate data structure. Only performs address calculation, does not actually access memory. See LLVM 12 docs on the 'getelementptr' instruction

ICmp

Compare integers, pointers, or vectors of integers or pointers. See LLVM 12 docs on the 'icmp' instruction

InlineAssembly

See LLVM 12 docs on Inline Assembler Expressions

InsertElement

Insert an element into a vector at a specified index. See LLVM 12 docs on the 'insertelement' instruction

InsertValue

Insert a value into a member field of an aggregate (struct or array) type. See LLVM 12 docs on the 'insertvalue' instruction

IntToPtr

Convert integer to pointer. See LLVM 12 docs on the 'inttoptr' instruction

LShr

Logical shift right. See LLVM 12 docs on the 'lshr' instruction

LandingPad

Used for exception handling. See LLVM 12 docs on the 'landingpad' instruction

LandingPadClause

See LLVM 12 docs on the 'landingpad' instruction

Load

Load a value from memory. See LLVM 12 docs on the 'load' instruction

Mul

Integer multiply. See LLVM 12 docs on the 'mul' instruction

Or

Bitwise logical inclusive or. See LLVM 12 docs on the 'or' instruction

Phi

See LLVM 12 docs on the 'phi' instruction

PtrToInt

Convert pointer to integer. See LLVM 12 docs on the 'ptrtoint' instruction

SDiv

Signed integer divide. See LLVM 12 docs on the 'sdiv' instruction

SExt

Sign-extend. See LLVM 12 docs on the 'sext' instruction

SIToFP

Convert signed integer to floating-point. See LLVM 12 docs on the 'sitofp' instruction

SRem

Signed integer remainder. See LLVM 12 docs on the 'srem' instruction

Select

Choose between two values depending on a condition. See LLVM 12 docs on the 'select' instruction

Shl

Shift left. See LLVM 12 docs on the 'shl' instruction

ShuffleVector

Permute elements from two input vectors into a single output vector. See LLVM 12 docs on the 'shufflevector' instruction

Store

Store a value to memory. See LLVM 12 docs on the 'store' instruction

Sub

Integer subtract. See LLVM 12 docs on the 'sub' instruction

Trunc

Truncate. See LLVM 12 docs on the 'trunc' instruction

UDiv

Unsigned integer divide. See LLVM 12 docs on the 'udiv' instruction

UIToFP

Convert unsigned integer to floating-point. See LLVM 12 docs on the 'uitofp' instruction

URem

Unsigned integer remainder. See LLVM 12 docs on the 'urem' instruction

VAArg

Used to access variadic arguments passed to a function. See LLVM 12 docs on the 'va_arg' instruction

Xor

Bitwise logical exclusive or. See LLVM 12 docs on the 'xor' instruction

ZExt

Zero-extend. See LLVM 12 docs on the 'zext' instruction

Enums

Instruction

Non-terminator instructions.

MemoryOrdering

See LLVM 12 docs on Atomic Memory Ordering Constraints

RMWBinOp

See LLVM 12 docs on the 'atomicrmw' instruction

SynchronizationScope

See LLVM 12 docs on Atomic Memory Ordering Constraints

TailCallKind

Traits

BinaryOp
HasResult
UnaryOp