Wyvern.Instruction (wyvern v1.0.3)

Copy Markdown

The modules in this namespace represent the LLVM instruction set.

Summary

Types

Functions

add(dest, op1, op2)

alloca(dest, type, count \\ 1)

ashr(dest, op1, op2)

bit_and(dest, op1, op2)

bit_or(dest, op1, op2)

bit_xor(dest, op1, op2)

br(label)

br(cond, if_true)

br(cond, if_true, if_false)

call(dest, fn_type, fn_ref, args)

extract_value(dest, aggregate, index_list)

fadd(dest, op1, op2)

fcmp(dest, operation, op1, op2)

fdiv(dest, op1, op2)

fmul(dest, op1, op2)

fneg(dest, src)

fpext(dest, src, to_type)

fptosi(dest, src, to_type)

fptoui(dest, src, to_type)

fptrunc(dest, src, to_type)

freeze(dest, src)

frem(dest, op1, op2)

fsub(dest, op1, op2)

get_element_ptr(dest, type, source, indices, opts \\ [])

icmp(dest, operation, op1, op2)

indirect_br(address, destinations)

insert_value(dest, aggregate, value, index_list)

int_to_ptr(dest, src)

load(dest, type, src)

lshr(dest, op1, op2)

mul(dest, op1, op2)

phi(dest, type, incoming)

ptr_to_int(dest, src, to_type)

ret(value)

sdiv(dest, op1, op2)

select(dest, cond, if_true, if_false)

sext(dest, src, to_type)

shl(dest, op1, op2)

sitofp(dest, src, to_type)

srem(dest, op1, op2)

store(value, dest)

sub(dest, op1, op2)

switch(value, default_label, cases)

terminator?(arg1)

Returns true if this instruction is a "terminator" that legally ends an LLVM block.

trunc(dest, src, to_type)

udiv(dest, op1, op2)

uitofp(dest, src, to_type)

unreachable()

urem(dest, op1, op2)

zext(dest, src, to_type)