pub enum Instruction {
Nop,
Undef {
result_type: TypeId,
result_id: ResultId,
},
SourceContinued {
src: String,
},
Source {
src_lang: SrcLang,
version: u32,
file: ValueId,
src: Option<String>,
},
SourceExtension {
extension: String,
},
Name {
id: Id,
name: String,
},
MemberName {
type_id: TypeId,
member: u32,
name: String,
},
String {
result_id: ResultId,
string: String,
},
Line {
file: ValueId,
line: u32,
col: u32,
},
NoLine,
Decorate {
target: Id,
decoration: Decoration,
},
MemberDecorate {
target: TypeId,
member: u32,
decoration: Decoration,
},
DecorationGroup {
result_id: ResultId,
},
GroupDecorate {
grp: ValueId,
targets: Box<[Id]>,
},
GroupMemberDecorate {
grp: ValueId,
targets: Box<[(TypeId, u32)]>,
},
Extension {
name: String,
},
ExtInstImport {
result_id: ResultId,
name: String,
},
ExtInst {
result_type: TypeId,
result_id: ResultId,
set: ValueId,
instruction: u32,
operands: Box<[Id]>,
},
MemoryModel {
addressing_model: AddressingModel,
memory_model: MemoryModel,
},
EntryPoint {
execution_model: ExecutionModel,
func: ValueId,
name: String,
interface: Box<[Id]>,
},
ExecutionMode {
execution_mode: ExecutionMode,
},
Capability {
capability: Capability,
},
TypeVoid {
result_type: TypeId,
},
TypeBool {
result_type: TypeId,
},
TypeInt {
result_type: TypeId,
width: u32,
signed: bool,
},
TypeFloat {
result_type: TypeId,
width: u32,
},
TypeVector {
result_type: TypeId,
type_id: TypeId,
len: u32,
},
TypeMatrix {
result_type: TypeId,
type_id: TypeId,
cols: u32,
},
TypeImage {
result_type: TypeId,
type_id: TypeId,
dim: Dim,
depth: u32,
arrayed: bool,
multisampled: bool,
sampled: u32,
image_format: ImageFormat,
access_qualifier: Option<AccessQualifier>,
},
TypeSampler {
result_type: TypeId,
},
TypeSampledImage {
result_type: TypeId,
image: TypeId,
},
TypeArray {
result_type: TypeId,
element: TypeId,
len: ValueId,
},
TypeRuntimeArray {
result_type: TypeId,
element: TypeId,
},
TypeStruct {
result_type: TypeId,
fields: Box<[TypeId]>,
},
TypeOpaque {
result_type: TypeId,
name: String,
},
TypePointer {
result_type: TypeId,
storage_class: StorageClass,
pointee: TypeId,
},
TypeFunction {
result_type: TypeId,
return_ty: TypeId,
params: Box<[TypeId]>,
},
TypeEvent {
result_type: TypeId,
},
TypeDeviceEvent {
result_type: TypeId,
},
TypeReserveId {
result_type: TypeId,
},
TypeQueue {
result_type: TypeId,
},
TypePipe {
result_type: TypeId,
},
TypeForwardPointer {
type_id: TypeId,
storage_class: StorageClass,
},
ConstantTrue {
result_type: TypeId,
result_id: ResultId,
},
ConstantFalse {
result_type: TypeId,
result_id: ResultId,
},
Constant {
result_type: TypeId,
result_id: ResultId,
val: Box<[u32]>,
},
ConstantComposite {
result_type: TypeId,
result_id: ResultId,
flds: Box<[ValueId]>,
},
ConstantSampler {
result_type: TypeId,
result_id: ResultId,
sampler_addressing_mode: SamplerAddressingMode,
normalized: bool,
sampler_filter_mode: SamplerFilterMode,
},
ConstantNull {
result_type: TypeId,
result_id: ResultId,
},
SpecConstantTrue {
result_type: TypeId,
result_id: ResultId,
},
SpecConstantFalse {
result_type: TypeId,
result_id: ResultId,
},
SpecConstant {
result_type: TypeId,
result_id: ResultId,
val: Box<[u32]>,
},
SpecConstantComposite {
result_type: TypeId,
result_id: ResultId,
flds: Box<[ValueId]>,
},
SpecConstantOp {
result_type: TypeId,
result_id: ResultId,
num: u32,
operands: Box<[ValueId]>,
},
Variable {
result_type: TypeId,
result_id: ResultId,
storage_class: StorageClass,
init: ValueId,
},
ImageTexelPointer {
result_type: TypeId,
result_id: ResultId,
image: ValueId,
coord: ValueId,
sample: ValueId,
},
Load {
result_type: TypeId,
result_id: ResultId,
value_id: ValueId,
memory_access: MemoryAccess,
},
Store {
ptr: ValueId,
obj: ValueId,
memory_access: MemoryAccess,
},
CopyMemory {
target: ValueId,
src: ValueId,
memory_access: MemoryAccess,
},
CopyMemorySized {
target: ValueId,
src: ValueId,
size: ValueId,
memory_access: MemoryAccess,
},
AccessChain {
result_type: TypeId,
result_id: ResultId,
base: ValueId,
indices: Box<[ValueId]>,
},
InBoundsAccessChain {
result_type: TypeId,
result_id: ResultId,
base: ValueId,
indices: Box<[ValueId]>,
},
PtrAccessChain {
result_type: TypeId,
result_id: ResultId,
base: ValueId,
element: ValueId,
indices: Box<[ValueId]>,
},
ArrayLength {
result_type: TypeId,
result_id: ResultId,
obj: ValueId,
member: u32,
},
GenericPtrMemSemantics {
result_type: TypeId,
result_id: ResultId,
ptr: ValueId,
},
InBoundsPtrAccessChain {
result_type: TypeId,
result_id: ResultId,
base: ValueId,
element: ValueId,
indices: Box<[ValueId]>,
},
Function {
result_type: TypeId,
result_id: ResultId,
function_control: FunctionControl,
fn_ty: TypeId,
},
FunctionParameter {
result_type: TypeId,
result_id: ResultId,
},
FunctionEnd,
FunctionCall {
result_type: TypeId,
result_id: ResultId,
func: ValueId,
args: Box<[ValueId]>,
},
SampledImage {
result_type: TypeId,
result_id: ResultId,
image: ValueId,
sampler: ValueId,
},
ImageSampleImplicitLod {
result_type: TypeId,
result_id: ResultId,
image: ValueId,
coord: ValueId,
image_operands: ImageOperands,
},
ImageSampleExplicitLod {
result_type: TypeId,
result_id: ResultId,
image: ValueId,
coord: ValueId,
image_operands: ImageOperands,
},
ImageSampleDrefImplicitLod {
result_type: TypeId,
result_id: ResultId,
image: ValueId,
coord: ValueId,
d_ref: ValueId,
image_operands: ImageOperands,
},
ImageSampleDrefExplicitLod {
result_type: TypeId,
result_id: ResultId,
image: ValueId,
coord: ValueId,
d_ref: ValueId,
image_operands: ImageOperands,
},
ImageSampleProjImplicitLod {
result_type: TypeId,
result_id: ResultId,
image: ValueId,
coord: ValueId,
image_operands: ImageOperands,
},
ImageSampleProjExplicitLod {
result_type: TypeId,
result_id: ResultId,
image: ValueId,
coord: ValueId,
image_operands: ImageOperands,
},
ImageSampleProjDrefImplicitLod {
result_type: TypeId,
result_id: ResultId,
image: ValueId,
coord: ValueId,
d_ref: ValueId,
image_operands: ImageOperands,
},
ImageSampleProjDrefExplicitLod {
result_type: TypeId,
result_id: ResultId,
image: ValueId,
coord: ValueId,
d_ref: ValueId,
image_operands: ImageOperands,
},
ImageFetch {
result_type: TypeId,
result_id: ResultId,
image: ValueId,
coord: ValueId,
image_operands: ImageOperands,
},
ImageGather {
result_type: TypeId,
result_id: ResultId,
image: ValueId,
coord: ValueId,
component: ValueId,
image_operands: ImageOperands,
},
ImageDrefGather {
result_type: TypeId,
result_id: ResultId,
image: ValueId,
coord: ValueId,
d_ref: ValueId,
image_operands: ImageOperands,
},
ImageRead {
result_type: TypeId,
result_id: ResultId,
image: ValueId,
coord: ValueId,
image_operands: ImageOperands,
},
ImageWrite {
image: ValueId,
coord: ValueId,
texel: ValueId,
image_operands: ImageOperands,
},
Image {
result_type: TypeId,
result_id: ResultId,
image: ValueId,
},
ImageQueryFormat {
result_type: TypeId,
result_id: ResultId,
image: ValueId,
},
ImageQueryOrder {
result_type: TypeId,
result_id: ResultId,
image: ValueId,
},
ImageQuerySizeLod {
result_type: TypeId,
result_id: ResultId,
image: ValueId,
lod: ValueId,
},
ImageQuerySize {
result_type: TypeId,
result_id: ResultId,
image: ValueId,
},
ImageQueryLod {
result_type: TypeId,
result_id: ResultId,
image: ValueId,
coord: ValueId,
},
ImageQueryLevels {
result_type: TypeId,
result_id: ResultId,
image: ValueId,
},
ImageQuerySamples {
result_type: TypeId,
result_id: ResultId,
image: ValueId,
},
ImageSparseSampleImplicitLod {
result_type: TypeId,
result_id: ResultId,
image: ValueId,
coord: ValueId,
image_operands: ImageOperands,
},
ImageSparseSampleExplicitLod {
result_type: TypeId,
result_id: ResultId,
image: ValueId,
coord: ValueId,
image_operands: ImageOperands,
},
ImageSparseSampleDrefImplicitLod {
result_type: TypeId,
result_id: ResultId,
image: ValueId,
coord: ValueId,
d_ref: ValueId,
image_operands: ImageOperands,
},
ImageSparseSampleDrefExplicitLod {
result_type: TypeId,
result_id: ResultId,
image: ValueId,
coord: ValueId,
d_ref: ValueId,
image_operands: ImageOperands,
},
ImageSparseFetch {
result_type: TypeId,
result_id: ResultId,
image: ValueId,
coord: ValueId,
image_operands: ImageOperands,
},
ImageSparseGather {
result_type: TypeId,
result_id: ResultId,
image: ValueId,
coord: ValueId,
component: ValueId,
image_operands: ImageOperands,
},
ImageSparseDrefGather {
result_type: TypeId,
result_id: ResultId,
image: ValueId,
coord: ValueId,
d_ref: ValueId,
image_operands: ImageOperands,
},
ImageSparseTexelsResident {
result_type: TypeId,
result_id: ResultId,
resident_code: ValueId,
},
ImageSparseRead {
result_type: TypeId,
result_id: ResultId,
image: ValueId,
coord: ValueId,
image_operands: ImageOperands,
},
ConvertFToU {
result_type: TypeId,
result_id: ResultId,
value_id: ValueId,
},
ConvertFToS {
result_type: TypeId,
result_id: ResultId,
value_id: ValueId,
},
ConvertSToF {
result_type: TypeId,
result_id: ResultId,
value_id: ValueId,
},
ConvertUToF {
result_type: TypeId,
result_id: ResultId,
value_id: ValueId,
},
UConvert {
result_type: TypeId,
result_id: ResultId,
value_id: ValueId,
},
SConvert {
result_type: TypeId,
result_id: ResultId,
value_id: ValueId,
},
FConvert {
result_type: TypeId,
result_id: ResultId,
value_id: ValueId,
},
QuantizeToF16 {
result_type: TypeId,
result_id: ResultId,
value_id: ValueId,
},
ConvertPtrToU {
result_type: TypeId,
result_id: ResultId,
value_id: ValueId,
},
SatConvertSToU {
result_type: TypeId,
result_id: ResultId,
value_id: ValueId,
},
SatConvertUToS {
result_type: TypeId,
result_id: ResultId,
value_id: ValueId,
},
ConvertUToPtr {
result_type: TypeId,
result_id: ResultId,
value_id: ValueId,
},
PtrCastToGeneric {
result_type: TypeId,
result_id: ResultId,
value_id: ValueId,
},
GenericCastToPtr {
result_type: TypeId,
result_id: ResultId,
value_id: ValueId,
},
GenericCastToPtrExplicit {
result_type: TypeId,
result_id: ResultId,
value_id: ValueId,
storage_class: StorageClass,
},
Bitcast {
result_type: TypeId,
result_id: ResultId,
value_id: ValueId,
},
VectorExtractDynamic {
result_type: TypeId,
result_id: ResultId,
vector: ValueId,
index: ValueId,
},
VectorInsertDynamic {
result_type: TypeId,
result_id: ResultId,
vector: ValueId,
component: ValueId,
index: ValueId,
},
VectorShuffle {
result_type: TypeId,
result_id: ResultId,
vector_1: ValueId,
vector_2: ValueId,
components: Box<[u32]>,
},
CompositeConstruct {
result_type: TypeId,
result_id: ResultId,
fields: Box<[ValueId]>,
},
CompositeExtract {
result_type: TypeId,
result_id: ResultId,
obj: ValueId,
indices: Box<[u32]>,
},
CompositeInsert {
result_type: TypeId,
result_id: ResultId,
obj: ValueId,
composite: ValueId,
indices: Box<[u32]>,
},
CopyObject {
result_type: TypeId,
result_id: ResultId,
value_id: ValueId,
},
Transpose {
result_type: TypeId,
result_id: ResultId,
value_id: ValueId,
},
SNegate {
result_type: TypeId,
result_id: ResultId,
value_id: ValueId,
},
FNegate {
result_type: TypeId,
result_id: ResultId,
value_id: ValueId,
},
IAdd {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
FAdd {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
ISub {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
FSub {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
IMul {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
FMul {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
UDiv {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
SDiv {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
FDiv {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
UMod {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
SRem {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
SMod {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
FRem {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
FMod {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
VectorTimesScalar {
result_type: TypeId,
result_id: ResultId,
vector: ValueId,
scalar: ValueId,
},
MatrixTimesScalar {
result_type: TypeId,
result_id: ResultId,
matrix: ValueId,
scalar: ValueId,
},
VectorTimesMatrix {
result_type: TypeId,
result_id: ResultId,
vector: ValueId,
matrix: ValueId,
},
MatrixTimesVector {
result_type: TypeId,
result_id: ResultId,
matrix: ValueId,
vector: ValueId,
},
MatrixTimesMatrix {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
OuterProduct {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
Dot {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
IAddCarry {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
ISubBorrow {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
UMulExtended {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
SMulExtended {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
ShiftRightLogical {
result_type: TypeId,
result_id: ResultId,
base: ValueId,
shift: ValueId,
},
ShiftRightArithmetic {
result_type: TypeId,
result_id: ResultId,
base: ValueId,
shift: ValueId,
},
ShiftLeftLogical {
result_type: TypeId,
result_id: ResultId,
base: ValueId,
shift: ValueId,
},
BitwiseOr {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
BitwiseXor {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
BitwiseAnd {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
Not {
result_type: TypeId,
result_id: ResultId,
value_id: ValueId,
},
BitFieldInsert {
result_type: TypeId,
result_id: ResultId,
base: ValueId,
insert: ValueId,
offset: ValueId,
count: ValueId,
},
BitFieldSExtract {
result_type: TypeId,
result_id: ResultId,
base: ValueId,
offset: ValueId,
count: ValueId,
},
BitFieldUExtract {
result_type: TypeId,
result_id: ResultId,
base: ValueId,
offset: ValueId,
count: ValueId,
},
BitReverse {
result_type: TypeId,
result_id: ResultId,
base: ValueId,
},
BitCount {
result_type: TypeId,
result_id: ResultId,
base: ValueId,
},
Any {
result_type: TypeId,
result_id: ResultId,
value_id: ValueId,
},
All {
result_type: TypeId,
result_id: ResultId,
value_id: ValueId,
},
IsNan {
result_type: TypeId,
result_id: ResultId,
value_id: ValueId,
},
IsInf {
result_type: TypeId,
result_id: ResultId,
value_id: ValueId,
},
IsFinite {
result_type: TypeId,
result_id: ResultId,
value_id: ValueId,
},
IsNormal {
result_type: TypeId,
result_id: ResultId,
value_id: ValueId,
},
SignBitSet {
result_type: TypeId,
result_id: ResultId,
value_id: ValueId,
},
LessOrGreater {
result_type: TypeId,
result_id: ResultId,
x: ValueId,
y: ValueId,
},
Ordered {
result_type: TypeId,
result_id: ResultId,
x: ValueId,
y: ValueId,
},
Unordered {
result_type: TypeId,
result_id: ResultId,
x: ValueId,
y: ValueId,
},
LogicalEqual {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
LogicalNotEqual {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
LogicalOr {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
LogicalAnd {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
LogicalNot {
result_type: TypeId,
result_id: ResultId,
value_id: ValueId,
},
Select {
result_type: TypeId,
result_id: ResultId,
condition: ValueId,
obj_1: ValueId,
obj_2: ValueId,
},
IEqual {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
INotEqual {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
UGreaterThan {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
SGreaterThan {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
UGreaterThanEqual {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
SGreaterThanEqual {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
ULessThan {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
SLessThan {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
ULessThanEqual {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
SLessThanEqual {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
FOrdEqual {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
FUnordEqual {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
FOrdNotEqual {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
FUnordNotEqual {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
FOrdLessThan {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
FUnordLessThan {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
FOrdGreaterThan {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
FUnordGreaterThan {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
FOrdLessThanEqual {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
FUnordLessThanEqual {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
FOrdGreaterThanEqual {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
FUnordGreaterThanEqual {
result_type: TypeId,
result_id: ResultId,
lhs: ValueId,
rhs: ValueId,
},
DPdx {
result_type: TypeId,
result_id: ResultId,
p: ValueId,
},
DPdy {
result_type: TypeId,
result_id: ResultId,
p: ValueId,
},
Fwidth {
result_type: TypeId,
result_id: ResultId,
p: ValueId,
},
DPdxFine {
result_type: TypeId,
result_id: ResultId,
p: ValueId,
},
DPdyFine {
result_type: TypeId,
result_id: ResultId,
p: ValueId,
},
FwidthFine {
result_type: TypeId,
result_id: ResultId,
p: ValueId,
},
DPdxCoarse {
result_type: TypeId,
result_id: ResultId,
p: ValueId,
},
DPdyCoarse {
result_type: TypeId,
result_id: ResultId,
p: ValueId,
},
FwidthCoarse {
result_type: TypeId,
result_id: ResultId,
p: ValueId,
},
Phi {
result_type: TypeId,
result_id: ResultId,
values: Box<[(ValueId, ValueId)]>,
},
LoopMerge {
merge: ValueId,
cont: ValueId,
loop_control: LoopControl,
},
SelectionMerge {
merge: ValueId,
selection_control: SelectionControl,
},
Label {
result_id: ResultId,
},
Branch {
target: ValueId,
},
BranchConditional {
cond: ValueId,
then: ValueId,
els: ValueId,
true_weight: Option<u32>,
false_weight: Option<u32>,
},
Switch {
selector: ValueId,
default: ValueId,
targets: Box<[u32]>,
},
Kill,
Return,
ReturnValue {
value_id: ValueId,
},
Unreachable,
LifetimeStart {
ptr: ValueId,
size: u32,
},
LifetimeStop {
ptr: ValueId,
size: u32,
},
AtomicLoad {
result_type: TypeId,
result_id: ResultId,
ptr: ValueId,
scope: ValueId,
semantics: ValueId,
},
AtomicStore {
ptr: ValueId,
scope: ValueId,
semantics: ValueId,
value_id: ValueId,
},
AtomicExchange {
result_type: TypeId,
result_id: ResultId,
ptr: ValueId,
scope: ValueId,
semantics: ValueId,
value_id: ValueId,
},
AtomicCompareExchange {
result_type: TypeId,
result_id: ResultId,
ptr: ValueId,
scope: ValueId,
eq_semantics: ValueId,
not_eq_semantics: ValueId,
value_id: ValueId,
comparator: ValueId,
},
AtomicCompareExchangeWeak {
result_type: TypeId,
result_id: ResultId,
ptr: ValueId,
scope: ValueId,
eq_semantics: ValueId,
not_eq_semantics: ValueId,
value_id: ValueId,
comparator: ValueId,
},
AtomicIIncrement {
result_type: TypeId,
result_id: ResultId,
ptr: ValueId,
scope: ValueId,
semantics: ValueId,
},
AtomicIDecrement {
result_type: TypeId,
result_id: ResultId,
ptr: ValueId,
scope: ValueId,
semantics: ValueId,
},
AtomicIAdd {
result_type: TypeId,
result_id: ResultId,
ptr: ValueId,
scope: ValueId,
semantics: ValueId,
value_id: ValueId,
},
AtomicISub {
result_type: TypeId,
result_id: ResultId,
ptr: ValueId,
scope: ValueId,
semantics: ValueId,
value_id: ValueId,
},
AtomicSMin {
result_type: TypeId,
result_id: ResultId,
ptr: ValueId,
scope: ValueId,
semantics: ValueId,
value_id: ValueId,
},
AtomicUMin {
result_type: TypeId,
result_id: ResultId,
ptr: ValueId,
scope: ValueId,
semantics: ValueId,
value_id: ValueId,
},
AtomicSMax {
result_type: TypeId,
result_id: ResultId,
ptr: ValueId,
scope: ValueId,
semantics: ValueId,
value_id: ValueId,
},
AtomicUMax {
result_type: TypeId,
result_id: ResultId,
ptr: ValueId,
scope: ValueId,
semantics: ValueId,
value_id: ValueId,
},
AtomicAnd {
result_type: TypeId,
result_id: ResultId,
ptr: ValueId,
scope: ValueId,
semantics: ValueId,
value_id: ValueId,
},
AtomicOr {
result_type: TypeId,
result_id: ResultId,
ptr: ValueId,
scope: ValueId,
semantics: ValueId,
value_id: ValueId,
},
AtomicXor {
result_type: TypeId,
result_id: ResultId,
ptr: ValueId,
scope: ValueId,
semantics: ValueId,
value_id: ValueId,
},
AtomicFlagTestAndSet {
result_type: TypeId,
result_id: ResultId,
ptr: ValueId,
scope: ValueId,
semantics: ValueId,
},
AtomicFlagClear {
ptr: ValueId,
scope: ValueId,
semantics: ValueId,
},
EmitVertex,
EndPrimitive,
EmitStreamVertex {
stream: ValueId,
},
EndStreamPrimitive {
stream: ValueId,
},
ControlBarrier {
execution: ValueId,
memory: ValueId,
semantics: ValueId,
},
MemoryBarrier {
memory: ValueId,
semantics: ValueId,
},
GroupAsyncCopy {
result_type: TypeId,
result_id: ResultId,
execution: ValueId,
dest: ValueId,
src: ValueId,
num_elements: ValueId,
stride: ValueId,
event: ValueId,
},
GroupWaitEvents {
execution: ValueId,
num_events: ValueId,
events: ValueId,
},
GroupAll {
result_type: TypeId,
result_id: ResultId,
execution: ValueId,
predicate: ValueId,
},
GroupAny {
result_type: TypeId,
result_id: ResultId,
execution: ValueId,
predicate: ValueId,
},
GroupBroadcast {
result_type: TypeId,
result_id: ResultId,
execution: ValueId,
value: ValueId,
local_id: ValueId,
},
GroupIAdd {
result_type: TypeId,
result_id: ResultId,
execution: ValueId,
group_operation: GroupOperation,
x: ValueId,
},
GroupFAdd {
result_type: TypeId,
result_id: ResultId,
execution: ValueId,
group_operation: GroupOperation,
x: ValueId,
},
GroupFMin {
result_type: TypeId,
result_id: ResultId,
execution: ValueId,
group_operation: GroupOperation,
x: ValueId,
},
GroupUMin {
result_type: TypeId,
result_id: ResultId,
execution: ValueId,
group_operation: GroupOperation,
x: ValueId,
},
GroupSMin {
result_type: TypeId,
result_id: ResultId,
execution: ValueId,
group_operation: GroupOperation,
x: ValueId,
},
GroupFMax {
result_type: TypeId,
result_id: ResultId,
execution: ValueId,
group_operation: GroupOperation,
x: ValueId,
},
GroupUMax {
result_type: TypeId,
result_id: ResultId,
execution: ValueId,
group_operation: GroupOperation,
x: ValueId,
},
GroupSMax {
result_type: TypeId,
result_id: ResultId,
execution: ValueId,
group_operation: GroupOperation,
x: ValueId,
},
EnqueueMarker {
result_type: TypeId,
result_id: ResultId,
queue: ValueId,
num_events: ValueId,
wait_events: ValueId,
ret_event: ValueId,
},
EnqueueKernel {
result_type: TypeId,
result_id: ResultId,
queue: ValueId,
flags: ValueId,
range: ValueId,
num_events: ValueId,
wait_event: ValueId,
ret_event: ValueId,
invoke: ValueId,
param: ValueId,
param_size: ValueId,
param_align: ValueId,
local_size: Box<[ValueId]>,
},
GetKernelNDrangeSubGroupCount {
result_type: TypeId,
result_id: ResultId,
range: ValueId,
invoke: ValueId,
param: ValueId,
param_size: ValueId,
param_align: ValueId,
},
GetKernelNDrangeMaxSubGroupSize {
result_type: TypeId,
result_id: ResultId,
range: ValueId,
invoke: ValueId,
param: ValueId,
param_size: ValueId,
param_align: ValueId,
},
GetKernelWorkGroupSize {
result_type: TypeId,
result_id: ResultId,
invoke: ValueId,
param: ValueId,
param_size: ValueId,
param_align: ValueId,
},
GetKernelPreferredWorkGroupSizeMultiple {
result_type: TypeId,
result_id: ResultId,
invoke: ValueId,
param: ValueId,
param_size: ValueId,
param_align: ValueId,
},
RetainEvent {
event: ValueId,
},
ReleaseEvent {
event: ValueId,
},
CreateUserEvent {
result_type: TypeId,
result_id: ResultId,
},
IsValidEvent {
result_type: TypeId,
result_id: ResultId,
event: ValueId,
},
SetUserEventStatus {
event: ValueId,
status: ValueId,
},
CaptureEventProfilingInfo {
event: ValueId,
profiling_info: ValueId,
value: ValueId,
},
GetDefaultQueue {
result_type: TypeId,
result_id: ResultId,
},
BuildNDRange {
result_type: TypeId,
result_id: ResultId,
global_work_size: ValueId,
local_work_size: ValueId,
global_work_offset: ValueId,
},
ReadPipe {
result_type: TypeId,
result_id: ResultId,
pipe: ValueId,
ptr: ValueId,
packet_size: ValueId,
packet_alignment: ValueId,
},
WritePipe {
result_type: TypeId,
result_id: ResultId,
pipe: ValueId,
ptr: ValueId,
packet_size: ValueId,
packet_alignment: ValueId,
},
ReservedReadPipe {
result_type: TypeId,
result_id: ResultId,
pipe: ValueId,
reserve_id: ValueId,
index: ValueId,
ptr: ValueId,
packet_size: ValueId,
packet_alignment: ValueId,
},
ReservedWritePipe {
result_type: TypeId,
result_id: ResultId,
pipe: ValueId,
reserve_id: ValueId,
index: ValueId,
ptr: ValueId,
packet_size: ValueId,
packet_alignment: ValueId,
},
ReserveReadPipePackets {
result_type: TypeId,
result_id: ResultId,
pipe: ValueId,
num_packets: ValueId,
packet_size: ValueId,
packet_alignment: ValueId,
},
ReserveWritePipePackets {
result_type: TypeId,
result_id: ResultId,
pipe: ValueId,
num_packets: ValueId,
packet_size: ValueId,
packet_alignment: ValueId,
},
CommitReadPipe {
pipe: ValueId,
reserve_id: ValueId,
packet_size: ValueId,
packet_alignment: ValueId,
},
CommitWritePipe {
pipe: ValueId,
reserve_id: ValueId,
packet_size: ValueId,
packet_alignment: ValueId,
},
IsValidReserveId {
result_type: TypeId,
result_id: ResultId,
reserve_id: ValueId,
},
GetNumPipePackets {
result_type: TypeId,
result_id: ResultId,
pipe: ValueId,
packet_size: ValueId,
packet_alignment: ValueId,
},
GetMaxPipePackets {
result_type: TypeId,
result_id: ResultId,
pipe: ValueId,
packet_size: ValueId,
packet_alignment: ValueId,
},
GroupReserveReadPipePackets {
result_type: TypeId,
result_id: ResultId,
execution: ValueId,
pipe: ValueId,
num_packets: ValueId,
packet_size: ValueId,
packet_alignment: ValueId,
},
GroupReserveWritePipePackets {
result_type: TypeId,
result_id: ResultId,
execution: ValueId,
pipe: ValueId,
num_packets: ValueId,
packet_size: ValueId,
packet_alignment: ValueId,
},
GroupCommitReadPipe {
execution: ValueId,
pipe: ValueId,
reserve_id: ValueId,
packet_size: ValueId,
packet_alignment: ValueId,
},
GroupCommitWritePipe {
execution: ValueId,
pipe: ValueId,
reserve_id: ValueId,
packet_size: ValueId,
packet_alignment: ValueId,
},
Unknown(u16, Box<[u32]>),
}
Variants
Nop | |
Undef | Fields
|
SourceContinued | Fields
|
Source | Fields
|
SourceExtension | Fields
|
Name | Fields
|
MemberName | Fields
|
String | Fields
|
Line | Fields
|
NoLine | |
Decorate | Fields
|
MemberDecorate | Fields
|
DecorationGroup | Fields
|
GroupDecorate | Fields
|
GroupMemberDecorate | Fields
|
Extension | Fields
|
ExtInstImport | Fields
|
ExtInst | Fields
result_type | | result_id | | set | | instruction | | operands | |
|
MemoryModel | Fields
addressing_model | | memory_model | |
|
EntryPoint | Fields
execution_model | | func | | name | | interface | |
|
ExecutionMode | Fields
|
Capability | Fields
|
TypeVoid | Fields
|
TypeBool | Fields
|
TypeInt | Fields
|
TypeFloat | Fields
|
TypeVector | Fields
|
TypeMatrix | Fields
|
TypeImage | Fields
result_type | | type_id | | dim | | depth | | arrayed | | multisampled | | sampled | | image_format | | access_qualifier | |
|
TypeSampler | Fields
|
TypeSampledImage | Fields
|
TypeArray | Fields
|
TypeRuntimeArray | Fields
|
TypeStruct | Fields
|
TypeOpaque | Fields
|
TypePointer | Fields
result_type | | storage_class | | pointee | |
|
TypeFunction | Fields
result_type | | return_ty | | params | |
|
TypeEvent | Fields
|
TypeDeviceEvent | Fields
|
TypeReserveId | Fields
|
TypeQueue | Fields
|
TypePipe | Fields
|
TypeForwardPointer | Fields
|
ConstantTrue | Fields
|
ConstantFalse | Fields
|
Constant | Fields
|
ConstantComposite | Fields
|
ConstantSampler | Fields
result_type | | result_id | | sampler_addressing_mode | | normalized | | sampler_filter_mode | |
|
ConstantNull | Fields
|
SpecConstantTrue | Fields
|
SpecConstantFalse | Fields
|
SpecConstant | Fields
|
SpecConstantComposite | Fields
|
SpecConstantOp | Fields
result_type | | result_id | | num | | operands | |
|
Variable | Fields
result_type | | result_id | | storage_class | | init | |
|
ImageTexelPointer | Fields
result_type | | result_id | | image | | coord | | sample | |
|
Load | Fields
result_type | | result_id | | value_id | | memory_access | |
|
Store | Fields
|
CopyMemory | Fields
|
CopyMemorySized | Fields
target | | src | | size | | memory_access | |
|
AccessChain | Fields
result_type | | result_id | | base | | indices | |
|
InBoundsAccessChain | Fields
result_type | | result_id | | base | | indices | |
|
PtrAccessChain | Fields
result_type | | result_id | | base | | element | | indices | |
|
ArrayLength | Fields
result_type | | result_id | | obj | | member | |
|
GenericPtrMemSemantics | Fields
|
InBoundsPtrAccessChain | Fields
result_type | | result_id | | base | | element | | indices | |
|
Function | Fields
result_type | | result_id | | function_control | | fn_ty | |
|
FunctionParameter | Fields
|
FunctionEnd | |
FunctionCall | Fields
result_type | | result_id | | func | | args | |
|
SampledImage | Fields
result_type | | result_id | | image | | sampler | |
|
ImageSampleImplicitLod | Fields
result_type | | result_id | | image | | coord | | image_operands | |
|
ImageSampleExplicitLod | Fields
result_type | | result_id | | image | | coord | | image_operands | |
|
ImageSampleDrefImplicitLod | Fields
result_type | | result_id | | image | | coord | | d_ref | | image_operands | |
|
ImageSampleDrefExplicitLod | Fields
result_type | | result_id | | image | | coord | | d_ref | | image_operands | |
|
ImageSampleProjImplicitLod | Fields
result_type | | result_id | | image | | coord | | image_operands | |
|
ImageSampleProjExplicitLod | Fields
result_type | | result_id | | image | | coord | | image_operands | |
|
ImageSampleProjDrefImplicitLod | Fields
result_type | | result_id | | image | | coord | | d_ref | | image_operands | |
|
ImageSampleProjDrefExplicitLod | Fields
result_type | | result_id | | image | | coord | | d_ref | | image_operands | |
|
ImageFetch | Fields
result_type | | result_id | | image | | coord | | image_operands | |
|
ImageGather | Fields
result_type | | result_id | | image | | coord | | component | | image_operands | |
|
ImageDrefGather | Fields
result_type | | result_id | | image | | coord | | d_ref | | image_operands | |
|
ImageRead | Fields
result_type | | result_id | | image | | coord | | image_operands | |
|
ImageWrite | Fields
image | | coord | | texel | | image_operands | |
|
Image | Fields
result_type | | result_id | | image | |
|
ImageQueryFormat | Fields
result_type | | result_id | | image | |
|
ImageQueryOrder | Fields
result_type | | result_id | | image | |
|
ImageQuerySizeLod | Fields
result_type | | result_id | | image | | lod | |
|
ImageQuerySize | Fields
result_type | | result_id | | image | |
|
ImageQueryLod | Fields
result_type | | result_id | | image | | coord | |
|
ImageQueryLevels | Fields
result_type | | result_id | | image | |
|
ImageQuerySamples | Fields
result_type | | result_id | | image | |
|
ImageSparseSampleImplicitLod | Fields
result_type | | result_id | | image | | coord | | image_operands | |
|
ImageSparseSampleExplicitLod | Fields
result_type | | result_id | | image | | coord | | image_operands | |
|
ImageSparseSampleDrefImplicitLod | Fields
result_type | | result_id | | image | | coord | | d_ref | | image_operands | |
|
ImageSparseSampleDrefExplicitLod | Fields
result_type | | result_id | | image | | coord | | d_ref | | image_operands | |
|
ImageSparseFetch | Fields
result_type | | result_id | | image | | coord | | image_operands | |
|
ImageSparseGather | Fields
result_type | | result_id | | image | | coord | | component | | image_operands | |
|
ImageSparseDrefGather | Fields
result_type | | result_id | | image | | coord | | d_ref | | image_operands | |
|
ImageSparseTexelsResident | Fields
result_type | | result_id | | resident_code | |
|
ImageSparseRead | Fields
result_type | | result_id | | image | | coord | | image_operands | |
|
ConvertFToU | Fields
result_type | | result_id | | value_id | |
|
ConvertFToS | Fields
result_type | | result_id | | value_id | |
|
ConvertSToF | Fields
result_type | | result_id | | value_id | |
|
ConvertUToF | Fields
result_type | | result_id | | value_id | |
|
UConvert | Fields
result_type | | result_id | | value_id | |
|
SConvert | Fields
result_type | | result_id | | value_id | |
|
FConvert | Fields
result_type | | result_id | | value_id | |
|
QuantizeToF16 | Fields
result_type | | result_id | | value_id | |
|
ConvertPtrToU | Fields
result_type | | result_id | | value_id | |
|
SatConvertSToU | Fields
result_type | | result_id | | value_id | |
|
SatConvertUToS | Fields
result_type | | result_id | | value_id | |
|
ConvertUToPtr | Fields
result_type | | result_id | | value_id | |
|
PtrCastToGeneric | Fields
result_type | | result_id | | value_id | |
|
GenericCastToPtr | Fields
result_type | | result_id | | value_id | |
|
GenericCastToPtrExplicit | Fields
result_type | | result_id | | value_id | | storage_class | |
|
Bitcast | Fields
result_type | | result_id | | value_id | |
|
Fields
|
VectorInsertDynamic | Fields
result_type | | result_id | | vector | | component | | index | |
|
VectorShuffle | Fields
result_type | | result_id | | vector_1 | | vector_2 | | components | |
|
CompositeConstruct | Fields
result_type | | result_id | | fields | |
|
Fields
|
CompositeInsert | Fields
result_type | | result_id | | obj | | composite | | indices | |
|
CopyObject | Fields
result_type | | result_id | | value_id | |
|
Transpose | Fields
result_type | | result_id | | value_id | |
|
SNegate | Fields
result_type | | result_id | | value_id | |
|
FNegate | Fields
result_type | | result_id | | value_id | |
|
IAdd | Fields
result_type | | result_id | | lhs | | rhs | |
|
FAdd | Fields
result_type | | result_id | | lhs | | rhs | |
|
ISub | Fields
result_type | | result_id | | lhs | | rhs | |
|
FSub | Fields
result_type | | result_id | | lhs | | rhs | |
|
IMul | Fields
result_type | | result_id | | lhs | | rhs | |
|
FMul | Fields
result_type | | result_id | | lhs | | rhs | |
|
UDiv | Fields
result_type | | result_id | | lhs | | rhs | |
|
SDiv | Fields
result_type | | result_id | | lhs | | rhs | |
|
FDiv | Fields
result_type | | result_id | | lhs | | rhs | |
|
UMod | Fields
result_type | | result_id | | lhs | | rhs | |
|
SRem | Fields
result_type | | result_id | | lhs | | rhs | |
|
SMod | Fields
result_type | | result_id | | lhs | | rhs | |
|
FRem | Fields
result_type | | result_id | | lhs | | rhs | |
|
FMod | Fields
result_type | | result_id | | lhs | | rhs | |
|
VectorTimesScalar | Fields
result_type | | result_id | | vector | | scalar | |
|
MatrixTimesScalar | Fields
result_type | | result_id | | matrix | | scalar | |
|
VectorTimesMatrix | Fields
result_type | | result_id | | vector | | matrix | |
|
MatrixTimesVector | Fields
result_type | | result_id | | matrix | | vector | |
|
MatrixTimesMatrix | Fields
result_type | | result_id | | lhs | | rhs | |
|
OuterProduct | Fields
result_type | | result_id | | lhs | | rhs | |
|
Dot | Fields
result_type | | result_id | | lhs | | rhs | |
|
IAddCarry | Fields
result_type | | result_id | | lhs | | rhs | |
|
ISubBorrow | Fields
result_type | | result_id | | lhs | | rhs | |
|
UMulExtended | Fields
result_type | | result_id | | lhs | | rhs | |
|
SMulExtended | Fields
result_type | | result_id | | lhs | | rhs | |
|
ShiftRightLogical | Fields
result_type | | result_id | | base | | shift | |
|
ShiftRightArithmetic | Fields
result_type | | result_id | | base | | shift | |
|
ShiftLeftLogical | Fields
result_type | | result_id | | base | | shift | |
|
BitwiseOr | Fields
result_type | | result_id | | lhs | | rhs | |
|
BitwiseXor | Fields
result_type | | result_id | | lhs | | rhs | |
|
BitwiseAnd | Fields
result_type | | result_id | | lhs | | rhs | |
|
Not | Fields
result_type | | result_id | | value_id | |
|
BitFieldInsert | Fields
result_type | | result_id | | base | | insert | | offset | | count | |
|
Fields
|
Fields
|
BitReverse | Fields
|
BitCount | Fields
|
Any | Fields
result_type | | result_id | | value_id | |
|
All | Fields
result_type | | result_id | | value_id | |
|
IsNan | Fields
result_type | | result_id | | value_id | |
|
IsInf | Fields
result_type | | result_id | | value_id | |
|
IsFinite | Fields
result_type | | result_id | | value_id | |
|
IsNormal | Fields
result_type | | result_id | | value_id | |
|
SignBitSet | Fields
result_type | | result_id | | value_id | |
|
LessOrGreater | Fields
|
Ordered | Fields
|
Unordered | Fields
|
LogicalEqual | Fields
result_type | | result_id | | lhs | | rhs | |
|
LogicalNotEqual | Fields
result_type | | result_id | | lhs | | rhs | |
|
LogicalOr | Fields
result_type | | result_id | | lhs | | rhs | |
|
LogicalAnd | Fields
result_type | | result_id | | lhs | | rhs | |
|
LogicalNot | Fields
result_type | | result_id | | value_id | |
|
Select | Fields
result_type | | result_id | | condition | | obj_1 | | obj_2 | |
|
IEqual | Fields
result_type | | result_id | | lhs | | rhs | |
|
INotEqual | Fields
result_type | | result_id | | lhs | | rhs | |
|
UGreaterThan | Fields
result_type | | result_id | | lhs | | rhs | |
|
SGreaterThan | Fields
result_type | | result_id | | lhs | | rhs | |
|
UGreaterThanEqual | Fields
result_type | | result_id | | lhs | | rhs | |
|
SGreaterThanEqual | Fields
result_type | | result_id | | lhs | | rhs | |
|
ULessThan | Fields
result_type | | result_id | | lhs | | rhs | |
|
SLessThan | Fields
result_type | | result_id | | lhs | | rhs | |
|
ULessThanEqual | Fields
result_type | | result_id | | lhs | | rhs | |
|
SLessThanEqual | Fields
result_type | | result_id | | lhs | | rhs | |
|
FOrdEqual | Fields
result_type | | result_id | | lhs | | rhs | |
|
FUnordEqual | Fields
result_type | | result_id | | lhs | | rhs | |
|
FOrdNotEqual | Fields
result_type | | result_id | | lhs | | rhs | |
|
FUnordNotEqual | Fields
result_type | | result_id | | lhs | | rhs | |
|
FOrdLessThan | Fields
result_type | | result_id | | lhs | | rhs | |
|
FUnordLessThan | Fields
result_type | | result_id | | lhs | | rhs | |
|
FOrdGreaterThan | Fields
result_type | | result_id | | lhs | | rhs | |
|
FUnordGreaterThan | Fields
result_type | | result_id | | lhs | | rhs | |
|
FOrdLessThanEqual | Fields
result_type | | result_id | | lhs | | rhs | |
|
FUnordLessThanEqual | Fields
result_type | | result_id | | lhs | | rhs | |
|
FOrdGreaterThanEqual | Fields
result_type | | result_id | | lhs | | rhs | |
|
FUnordGreaterThanEqual | Fields
result_type | | result_id | | lhs | | rhs | |
|
DPdx | Fields
|
DPdy | Fields
|
Fwidth | Fields
|
DPdxFine | Fields
|
DPdyFine | Fields
|
FwidthFine | Fields
|
DPdxCoarse | Fields
|
DPdyCoarse | Fields
|
FwidthCoarse | Fields
|
Phi | Fields
result_type | | result_id | | values | |
|
LoopMerge | Fields
|
SelectionMerge | Fields
|
Label | Fields
|
Branch | Fields
|
BranchConditional | Fields
cond | | then | | els | | true_weight | | false_weight | |
|
Switch | Fields
|
Kill | |
Return | |
ReturnValue | Fields
|
Unreachable | |
LifetimeStart | Fields
|
LifetimeStop | Fields
|
AtomicLoad | Fields
result_type | | result_id | | ptr | | scope | | semantics | |
|
AtomicStore | Fields
ptr | | scope | | semantics | | value_id | |
|
AtomicExchange | Fields
result_type | | result_id | | ptr | | scope | | semantics | | value_id | |
|
AtomicCompareExchange | Fields
result_type | | result_id | | ptr | | scope | | eq_semantics | | not_eq_semantics | | value_id | | comparator | |
|
AtomicCompareExchangeWeak | Fields
result_type | | result_id | | ptr | | scope | | eq_semantics | | not_eq_semantics | | value_id | | comparator | |
|
AtomicIIncrement | Fields
result_type | | result_id | | ptr | | scope | | semantics | |
|
AtomicIDecrement | Fields
result_type | | result_id | | ptr | | scope | | semantics | |
|
AtomicIAdd | Fields
result_type | | result_id | | ptr | | scope | | semantics | | value_id | |
|
AtomicISub | Fields
result_type | | result_id | | ptr | | scope | | semantics | | value_id | |
|
AtomicSMin | Fields
result_type | | result_id | | ptr | | scope | | semantics | | value_id | |
|
AtomicUMin | Fields
result_type | | result_id | | ptr | | scope | | semantics | | value_id | |
|
AtomicSMax | Fields
result_type | | result_id | | ptr | | scope | | semantics | | value_id | |
|
AtomicUMax | Fields
result_type | | result_id | | ptr | | scope | | semantics | | value_id | |
|
AtomicAnd | Fields
result_type | | result_id | | ptr | | scope | | semantics | | value_id | |
|
AtomicOr | Fields
result_type | | result_id | | ptr | | scope | | semantics | | value_id | |
|
AtomicXor | Fields
result_type | | result_id | | ptr | | scope | | semantics | | value_id | |
|
AtomicFlagTestAndSet | Fields
result_type | | result_id | | ptr | | scope | | semantics | |
|
AtomicFlagClear | Fields
|
EmitVertex | |
EndPrimitive | |
EmitStreamVertex | Fields
|
EndStreamPrimitive | Fields
|
ControlBarrier | Fields
|
MemoryBarrier | Fields
|
GroupAsyncCopy | Fields
result_type | | result_id | | execution | | dest | | src | | num_elements | | stride | | event | |
|
GroupWaitEvents | Fields
execution | | num_events | | events | |
|
GroupAll | Fields
result_type | | result_id | | execution | | predicate | |
|
GroupAny | Fields
result_type | | result_id | | execution | | predicate | |
|
GroupBroadcast | Fields
result_type | | result_id | | execution | | value | | local_id | |
|
GroupIAdd | Fields
result_type | | result_id | | execution | | group_operation | | x | |
|
GroupFAdd | Fields
result_type | | result_id | | execution | | group_operation | | x | |
|
GroupFMin | Fields
result_type | | result_id | | execution | | group_operation | | x | |
|
GroupUMin | Fields
result_type | | result_id | | execution | | group_operation | | x | |
|
GroupSMin | Fields
result_type | | result_id | | execution | | group_operation | | x | |
|
GroupFMax | Fields
result_type | | result_id | | execution | | group_operation | | x | |
|
GroupUMax | Fields
result_type | | result_id | | execution | | group_operation | | x | |
|
GroupSMax | Fields
result_type | | result_id | | execution | | group_operation | | x | |
|
EnqueueMarker | Fields
result_type | | result_id | | queue | | num_events | | wait_events | | ret_event | |
|
EnqueueKernel | Fields
result_type | | result_id | | queue | | flags | | range | | num_events | | wait_event | | ret_event | | invoke | | param | | param_size | | param_align | | local_size | |
|
GetKernelNDrangeSubGroupCount | Fields
result_type | | result_id | | range | | invoke | | param | | param_size | | param_align | |
|
GetKernelNDrangeMaxSubGroupSize | Fields
result_type | | result_id | | range | | invoke | | param | | param_size | | param_align | |
|
GetKernelWorkGroupSize | Fields
result_type | | result_id | | invoke | | param | | param_size | | param_align | |
|
GetKernelPreferredWorkGroupSizeMultiple | Fields
result_type | | result_id | | invoke | | param | | param_size | | param_align | |
|
RetainEvent | Fields
|
ReleaseEvent | Fields
|
CreateUserEvent | Fields
|
IsValidEvent | Fields
result_type | | result_id | | event | |
|
SetUserEventStatus | Fields
|
CaptureEventProfilingInfo | Fields
|
GetDefaultQueue | Fields
|
BuildNDRange | Fields
result_type | | result_id | | global_work_size | | local_work_size | | global_work_offset | |
|
ReadPipe | Fields
result_type | | result_id | | pipe | | ptr | | packet_size | | packet_alignment | |
|
WritePipe | Fields
result_type | | result_id | | pipe | | ptr | | packet_size | | packet_alignment | |
|
ReservedReadPipe | Fields
result_type | | result_id | | pipe | | reserve_id | | index | | ptr | | packet_size | | packet_alignment | |
|
ReservedWritePipe | Fields
result_type | | result_id | | pipe | | reserve_id | | index | | ptr | | packet_size | | packet_alignment | |
|
ReserveReadPipePackets | Fields
result_type | | result_id | | pipe | | num_packets | | packet_size | | packet_alignment | |
|
ReserveWritePipePackets | Fields
result_type | | result_id | | pipe | | num_packets | | packet_size | | packet_alignment | |
|
CommitReadPipe | Fields
pipe | | reserve_id | | packet_size | | packet_alignment | |
|
CommitWritePipe | Fields
pipe | | reserve_id | | packet_size | | packet_alignment | |
|
IsValidReserveId | Fields
result_type | | result_id | | reserve_id | |
|
GetNumPipePackets | Fields
result_type | | result_id | | pipe | | packet_size | | packet_alignment | |
|
GetMaxPipePackets | Fields
result_type | | result_id | | pipe | | packet_size | | packet_alignment | |
|
GroupReserveReadPipePackets | Fields
result_type | | result_id | | execution | | pipe | | num_packets | | packet_size | | packet_alignment | |
|
GroupReserveWritePipePackets | Fields
result_type | | result_id | | execution | | pipe | | num_packets | | packet_size | | packet_alignment | |
|
GroupCommitReadPipe | Fields
execution | | pipe | | reserve_id | | packet_size | | packet_alignment | |
|
GroupCommitWritePipe | Fields
execution | | pipe | | reserve_id | | packet_size | | packet_alignment | |
|
Unknown | |
Methods
Trait Implementations
Derived Implementations